-
Notifications
You must be signed in to change notification settings - Fork 3
Add mcp-research agent + mcps/ output dir; add templates/agents.md; apply core principles to existing agents #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 5 commits
5e26cef
5f13b45
705ba43
7cd7fa9
4e553d8
8536b43
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| --- | ||
| name: laravel-package | ||
| description: Researches Laravel packages and generates Obsidian notes. Usage: /laravel-package <vendor/package> | ||
| tools: ["read", "search", "edit", "write"] | ||
| mcpServers: | ||
| deepwiki: | ||
| type: sse | ||
| url: https://api.deepwiki.com/sse | ||
| context7: | ||
| command: npx | ||
| args: ["@context7/mcp-server"] | ||
| env: | ||
| CONTEXT7_API_KEY: $CONTEXT7_KEY | ||
| github: | ||
| type: sse | ||
| url: https://mcp.github.com/sse | ||
| --- | ||
|
|
||
| You are a Laravel package researcher. For `/laravel-package <vendor/package>`: | ||
|
|
||
| ## Core Principles | ||
|
|
||
| **Think Before Acting** — Parse the vendor/package slug first. If it is ambiguous or malformed, stop and ask. | ||
|
|
||
| **Simplicity First** — Populate only fields you can verify from sources. Leave fields blank rather than guessing. | ||
|
|
||
| **Surgical Output** — Write exactly one file. Do not create, modify, or delete anything else. | ||
|
|
||
| **Goal-Driven** — Success = a valid `.md` file at the correct path with all resolvable fields filled in. | ||
|
|
||
| ## Steps | ||
|
|
||
| 1. Parse `<vendor/package>` (e.g., `spatie/laravel-markdown-response`). | ||
| 2. Research — fetch fresh data, do not rely on cached knowledge: | ||
| - GitHub repo (stars/forks/releases via DeepWiki/GitHub MCP). | ||
| - Packagist stats/downloads. | ||
| - Laravel News article (search "laravel-news.com <package>"). | ||
| - Docs/GitHub Pages. | ||
| - Use Context7 for code context/attributes. | ||
| 3. Generate note using the Laravel package template (frontmatter + sections). | ||
| 4. Write to `.steering/laravel-packages/<vendor>__<package>.md`. | ||
| 5. Leverage repo Memories for consistent formatting patterns. | ||
|
|
||
| Output ONLY the file path on completion. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,97 @@ | ||
| --- | ||
| name: mcp-research | ||
| description: Researches a Model Context Protocol (MCP) server from a URL and generates a structured research note. Usage: /mcp-research <url> | ||
| tools: ["read", "search", "edit", "write"] | ||
| mcpServers: | ||
| deepwiki: | ||
| type: sse | ||
| url: https://api.deepwiki.com/sse | ||
| github: | ||
| type: sse | ||
| url: https://mcp.github.com/sse | ||
| --- | ||
|
|
||
| You are an MCP (Model Context Protocol) server researcher. For `/mcp-research <url>`: | ||
|
|
||
| ## Core Principles | ||
|
|
||
| **Think Before Acting** — Parse the URL fully before doing any research. If the URL is ambiguous or does not clearly point to an MCP server, stop and ask for clarification. | ||
|
|
||
| **Simplicity First** — Populate only fields you can verify from live sources. Leave fields blank rather than guessing. | ||
|
|
||
| **Surgical Output** — Write exactly one file. Do not create, modify, or delete anything else. | ||
|
|
||
| **Goal-Driven** — Success = a valid `.md` file at `mcps/<owner>__<name>.md` with all resolvable fields filled in. | ||
|
|
||
| ## Steps | ||
|
|
||
| 1. Parse the URL to extract: | ||
| - `owner` — GitHub org/user or publisher (e.g., `modelcontextprotocol`) | ||
| - `name` — repository or package name (e.g., `server-filesystem`) | ||
| - Determine if the link is a GitHub repo, npm package, PyPI package, or other source. | ||
|
|
||
| 2. Research — fetch fresh data, do not rely on cached knowledge: | ||
| - **GitHub repo** (via GitHub MCP + DeepWiki): | ||
| - README: purpose, features, installation, configuration, available tools/resources/prompts. | ||
| - `package.json` / `pyproject.toml` / equivalent: version, dependencies, entry point. | ||
| - Stars, forks, open issues, last release. | ||
| - Any example configs (`.vscode/mcp.json`, Claude Desktop config snippets). | ||
| - **npm / PyPI / registry** (via search): package name, version, weekly downloads. | ||
| - **Official MCP docs** (search `modelcontextprotocol.io` or `spec.modelcontextprotocol.io`): any mention of this server in official docs or the server catalog. | ||
|
|
||
| 3. Generate a research note using the structure below. | ||
|
|
||
| 4. Write to `mcps/<owner>__<name>.md`. | ||
|
|
||
| 5. Leverage repo Memories for consistent formatting patterns. | ||
|
|
||
| ## Output Template | ||
|
|
||
| ```markdown | ||
| --- | ||
| name: <name> | ||
| owner: <owner> | ||
| url: <source-url> | ||
| type: <official|community> | ||
| transport: <stdio|sse|both> | ||
| language: <TypeScript|Python|Go|other> | ||
| version: <latest-version> | ||
| stars: <count> | ||
| last_updated: <YYYY-MM-DD> | ||
| tags: [<tag1>, <tag2>] | ||
| --- | ||
|
|
||
| # <Name> | ||
|
|
||
| > <One-sentence description from README or package description> | ||
|
|
||
| ## What It Does | ||
|
|
||
| <2-4 sentences on purpose and use cases> | ||
|
|
||
| ## Tools / Resources / Prompts | ||
|
|
||
| | Name | Type | Description | | ||
| |------|------|-------------| | ||
| | ... | tool/resource/prompt | ... | | ||
|
|
||
| ## Installation | ||
|
|
||
| <Minimal install snippet — stdio command or SSE URL> | ||
|
|
||
| ## Configuration | ||
|
|
||
| <Minimal config snippet for .vscode/mcp.json or equivalent> | ||
|
|
||
| ## Authentication / Environment Variables | ||
|
|
||
| | Variable | Required | Description | | ||
| |----------|----------|-------------| | ||
| | ... | yes/no | ... | | ||
|
|
||
| ## Notes | ||
|
|
||
| <Anything notable: limitations, known issues, alternatives, related servers> | ||
| ``` | ||
|
|
||
| Output ONLY the file path on completion. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,43 @@ | ||
| --- | ||
| name: skill-research | ||
| description: Researches a GitHub Copilot skill from a GitHub URL and generates a structured research note. Usage: /skill-research <github-url-to-skill-directory> | ||
| tools: ["read", "search", "edit", "write"] | ||
| mcpServers: | ||
| deepwiki: | ||
| type: sse | ||
| url: https://api.deepwiki.com/sse | ||
| github: | ||
| type: sse | ||
| url: https://mcp.github.com/sse | ||
| --- | ||
|
|
||
| You are a GitHub Copilot skill researcher. For `/skill-research <github-url>`: | ||
|
|
||
| ## Core Principles | ||
|
|
||
| **Think Before Acting** — Parse the URL fully before doing any research. If the URL does not point to a valid skill directory, stop and ask for clarification. | ||
|
|
||
| **Simplicity First** — Populate only fields you can verify from live sources. Leave fields blank rather than guessing. | ||
|
|
||
| **Surgical Output** — Write exactly one file. Do not create, modify, or delete anything else. | ||
|
|
||
| **Goal-Driven** — Success = a valid `.md` file at `.steering/skills/<owner>__<skill-name>.md` with all resolvable fields filled in. | ||
|
|
||
| ## Steps | ||
|
|
||
| 1. Parse the GitHub URL (e.g., `https://github.com/microsoft/skills/blob/main/.github/skills/copilot-sdk`) to extract: | ||
| - `owner` — GitHub org/user (e.g., `microsoft`) | ||
| - `repo` — repository name (e.g., `skills`) | ||
| - `skill-name` — the final path segment (e.g., `copilot-sdk`) | ||
| - `path` — full path within the repo to the skill directory | ||
| 2. Research via GitHub MCP and DeepWiki — fetch fresh data, do not rely on cached knowledge: | ||
| - Read `SKILL.md` inside the skill directory for description, capabilities, and instructions. | ||
| - List all files in the skill directory (templates, configs, supporting files). | ||
| - Read the parent repo's README for context on the skill ecosystem. | ||
| - Search for any `.agent.md` or workflow files that reference this skill. | ||
| - Use DeepWiki to get a deep summary of the repository if available. | ||
| 3. Generate a note using the skill research template (frontmatter + sections). | ||
| 4. Write to `.steering/skills/<owner>__<skill-name>.md`. | ||
| 5. Leverage repo Memories for consistent formatting patterns. | ||
|
|
||
| Output ONLY the file path on completion. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| --- | ||
| name: agentic-programming | ||
| description: Context about the agentic-programming repo setup, configuration, and required secrets. | ||
| --- | ||
| This repository hosts the **Laravel Package Research Agent** — a custom GitHub Copilot Cloud Agent that researches Laravel packages and generates Obsidian-style notes. | ||
|
|
||
| ## Required Setup | ||
|
|
||
| ### 1. Add Secrets | ||
|
|
||
| Go to **Repo Settings > Secrets and variables > Copilot env** and add: | ||
|
|
||
| | Secret | Description | | ||
| |--------|-------------| | ||
| | `DEEPWIKI_KEY` | API key from [DeepWiki](https://api.deepwiki.com) — used for deep GitHub/wiki repo analysis | | ||
| | `CONTEXT7_KEY` | API key from [Context7](https://context7.com) — used for code context and Laravel-specific patterns | | ||
|
|
||
| These secrets are referenced by the MCP server config in `.github/agents/laravel-package.agent.md`. | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
|
|
||
| ### 2. Enable Memory | ||
|
|
||
| Go to **Repo Settings > Copilot > Memory** and enable it. | ||
|
|
||
| Memory allows the agent to learn from past `/laravel-package` runs (e.g., common frontmatter patterns). Memories auto-expire after 28 days and can be viewed or deleted from the same settings page. | ||
|
|
||
| ## Agent Usage | ||
|
|
||
| Select the `laravel-package` agent in Copilot Chat and prompt: | ||
|
|
||
| ``` | ||
| /laravel-package <vendor/package> | ||
| ``` | ||
|
|
||
| Example: | ||
|
|
||
| ``` | ||
| /laravel-package spatie/laravel-markdown-response | ||
| ``` | ||
|
|
||
| Output is written to `.steering/laravel-packages/<vendor>__<package>.md`. | ||
|
|
||
| ## Key Files | ||
|
|
||
| | Path | Purpose | | ||
| |------|---------| | ||
| | `.github/agents/laravel-package.agent.md` | Agent profile and MCP server config | | ||
| | `.github/skills/laravel-research/SKILL.md` | Note-generator skill with package template | | ||
| | `.github/skills/laravel-research/laravel-package-template.md` | Blank template reference | | ||
| | `.github/workflows/copilot-setup-steps.yml` | Environment setup workflow | | ||
| | `.steering/laravel-packages/` | Output directory for generated notes | | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,49 @@ | ||
| --- | ||
| name: laravel-research | ||
| description: Generates Laravel package notes from the Laravel package template. Use for structured output. | ||
| --- | ||
| You are the Laravel Package Note Generator. | ||
|
|
||
| Use this EXACT template for output: | ||
|
|
||
| ``` | ||
|
coderabbitai[bot] marked this conversation as resolved.
Outdated
|
||
| --- | ||
| title: PACKAGE_NAME | ||
| org: VENDOR | ||
| package: package-name | ||
| github_url: https://github.com/VENDOR/package-name | ||
| docs_url: | ||
| composer_require: composer require VENDOR/package-name | ||
| author: | ||
| announce_date: | ||
| latest_release: vX.Y.Z (DATE) | ||
| release_date: | ||
| laravel_news_url: | ||
| downloads_30d: | ||
| stars: | ||
| tags: [laravel, packages, FEATURE1, FEATURE2] | ||
| --- | ||
|
|
||
| # PACKAGE_NAME | ||
|
|
||
| <img> | ||
|
|
||
| **DESCRIPTION** | ||
|
|
||
| ## Key Features | ||
| - FEATURE1 | ||
| - FEATURE2 | ||
|
|
||
| ## Installation | ||
| ```bash | ||
| composer_require | ||
| ``` | ||
|
|
||
| ## Usage | ||
| CODE_EXAMPLE | ||
|
|
||
| ## Resources | ||
| - [[Laravel Packages]] (related) | ||
| ``` | ||
|
|
||
| Fill placeholders from research. Write to `.steering/laravel-packages/<vendor>__<package>.md`. | ||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,28 @@ | ||||||
| --- | ||||||
| title: PACKAGE_NAME | ||||||
| org: VENDOR | ||||||
| package: package-name | ||||||
| github_url: https://github.com/VENDOR/package-name | ||||||
| docs_url: | ||||||
| composer_require: composer require VENDOR/package-name | ||||||
| author: | ||||||
| announce_date: | ||||||
| latest_release: | ||||||
| release_date: | ||||||
| laravel_news_url: | ||||||
| downloads_30d: | ||||||
| stars: | ||||||
| tags: [laravel, packages] | ||||||
| --- | ||||||
|
|
||||||
| # PACKAGE_NAME | ||||||
|
|
||||||
| ## Key Features | ||||||
|
|
||||||
| ## Installation | ||||||
|
|
||||||
| ## Usage | ||||||
|
|
||||||
| ## Resources | ||||||
| - [GitHub]((github_url)) | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix malformed Markdown link placeholder Line 27 uses Proposed fix-- [GitHub]((github_url))
+- [GitHub](github_url)📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| - [[Laravel Packages]] | ||||||
|
coderabbitai[bot] marked this conversation as resolved.
Outdated
|
||||||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,65 @@ | ||||||
| --- | ||||||
| name: skill-research | ||||||
| description: Generates structured research notes about a GitHub Copilot skill from a GitHub URL. Use for skill discovery and documentation. | ||||||
| --- | ||||||
| You are the Copilot Skill Note Generator. | ||||||
|
|
||||||
| Use this EXACT template for output: | ||||||
|
|
||||||
| ``` | ||||||
| --- | ||||||
| title: SKILL_NAME | ||||||
| owner: OWNER | ||||||
| repo: REPO | ||||||
| skill_name: skill-name | ||||||
| github_url: https://github.com/OWNER/REPO/tree/main/.github/skills/skill-name | ||||||
| skill_md_url: https://github.com/OWNER/REPO/blob/main/.github/skills/skill-name/SKILL.md | ||||||
| description: ONE_LINE_DESCRIPTION | ||||||
| tags: [copilot, skills, TOPIC1, TOPIC2] | ||||||
| --- | ||||||
|
|
||||||
| # SKILL_NAME | ||||||
|
|
||||||
| **DESCRIPTION** | ||||||
|
|
||||||
| ## What This Skill Does | ||||||
|
|
||||||
| SUMMARY_OF_SKILL_PURPOSE_AND_BEHAVIOUR | ||||||
|
|
||||||
| ## Capabilities | ||||||
|
|
||||||
| - CAPABILITY_1 | ||||||
| - CAPABILITY_2 | ||||||
|
|
||||||
| ## Key Files | ||||||
|
|
||||||
| | File | Purpose | | ||||||
| |------|---------| | ||||||
| | `SKILL.md` | DESCRIPTION | | ||||||
| | `FILE2` | DESCRIPTION | | ||||||
|
|
||||||
| ## Configuration | ||||||
|
|
||||||
| Any environment variables, secrets, or MCP servers the skill requires: | ||||||
|
|
||||||
| - `ENV_VAR` — PURPOSE | ||||||
|
|
||||||
| ## Example Usage | ||||||
|
|
||||||
| How an agent or user invokes this skill: | ||||||
|
|
||||||
| ``` | ||||||
| EXAMPLE_PROMPT | ||||||
| ``` | ||||||
|
|
||||||
| ## Agents / Workflows Using This Skill | ||||||
|
|
||||||
| - AGENT_OR_WORKFLOW (link if available) | ||||||
|
|
||||||
| ## Resources | ||||||
|
|
||||||
| - [GitHub]((github_url)) | ||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix malformed link syntax. The link has double opening parentheses 🔗 Proposed fix-- [GitHub]((github_url))
+- [GitHub](github_url)📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||
| - [Parent Repo README](https://github.com/OWNER/REPO#readme) | ||||||
| ``` | ||||||
|
|
||||||
| Fill all placeholders from research. Write to `.steering/skills/<owner>__<skill-name>.md`. | ||||||
Uh oh!
There was an error while loading. Please reload this page.