-
Notifications
You must be signed in to change notification settings - Fork 7
Add support for multi-repository awareness/context #77
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR implements Phase 3: Cross-Repository Integration, enabling AWOS commands to automatically leverage multi-repository context for intelligent cross-project awareness. The implementation follows a document-centric approach where commands read the registry file and delegate deep scanning to a shared Repository Scanner subagent.
Key Changes
- Repository Scanner Subagent: New shared utility agent (
subagents/repo-scanner.md) that handles scanning both local and GitHub repositories, answering questions about their contents - Registry Command Updates: Modified
/awos:registryto delegate scanning operations to the repo-scanner subagent - Cross-Repo Context Loading: All workflow commands (
/awos:product,/awos:roadmap,/awos:architecture,/awos:spec,/awos:tech,/awos:tasks,/awos:implement) now include a new Step 1 that loads registry context and optionally delegates to repo-scanner for deeper analysis - Supporting Infrastructure: New agent metadata, templates, and example registry data demonstrating the multi-repo integration
Reviewed changes
Copilot reviewed 25 out of 26 changed files in this pull request and generated 24 comments.
Show a summary per file
| File | Description |
|---|---|
subagents/repo-scanner.md |
New shared subagent for scanning repositories and answering questions; supports local and GitHub repos |
commands/registry.md |
New registry management command that delegates scanning to repo-scanner subagent |
commands/product.md |
Added Step 1 for cross-repo context loading to inform product definition decisions |
commands/roadmap.md |
Added Step 1 for cross-repo context loading to understand dependencies and phase sequencing |
commands/architecture.md |
Added Step 1 for cross-repo context loading to align tech stack and infrastructure decisions |
commands/spec.md |
Added Step 1 for cross-repo context loading to identify related specs and integration points |
commands/tech.md |
Added Step 1 for cross-repo context loading to understand implementation patterns and APIs |
commands/tasks.md |
Added Step 1 for cross-repo context loading to identify task dependencies and reusable components |
commands/implement.md |
Added Step 1 for cross-repo context loading to provide API contracts and shared types to subagents |
templates/registry-template.md |
Template defining the structure for repository registry entries with comprehensive metadata |
context/registry.md |
Example registry with two repositories demonstrating the data structure and relationships |
context/spec/002-cross-repo-integration/functional-spec.md |
Functional requirements for cross-repository integration feature |
context/spec/002-cross-repo-integration/technical-considerations.md |
Technical implementation approach and architecture decisions |
context/spec/002-cross-repo-integration/tasks.md |
Task breakdown for implementing cross-repo integration |
context/spec/001-registry-command/functional-spec.md |
Functional spec for the registry command (Phase 2 foundation) |
context/spec/001-registry-command/technical-considerations.md |
Technical spec for the registry command implementation |
context/spec/001-registry-command/tasks.md |
Completed task list for registry command |
context/product/product-definition.md |
Product definition document for AWOS |
context/product/product-definition-lite.md |
Condensed product summary |
context/product/roadmap.md |
Product roadmap showing Phase 3 as current work |
context/product/architecture.md |
System architecture overview including registry integration |
claude/commands/registry.md |
User customization wrapper for registry command |
claude/agents/domain-experts/repo-scanner.md |
Agent metadata for Task tool integration |
CLAUDE.md |
Developer guidance for working with AWOS codebase |
.gitignore |
Excludes .awos and .claude directories from version control |
src/migrations/runner.js |
Minor formatting cleanup (no functional change) |
| - `repo_path`: filesystem path or `owner/repo` (from registry entry) | ||
| - `question`: clarifying questions or necessary information | ||
|
|
||
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sentence fragment "Iterate with scanner until you get all necessary information.This step can be repeated throughout implementation" has misplaced bold formatting markers. The period should come before the bold text starts, and the sentence should be properly separated: "Iterate with scanner until you get all necessary information. This step can be repeated throughout implementation whenever..."
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. | |
| Iterate with scanner until you get all necessary information. **This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
| - `repo_path`: filesystem path or `owner/repo` (from registry entry) | ||
| - `question`: clarifying questions or necessary information | ||
|
|
||
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sentence fragment "Iterate with scanner until you get all necessary information.This step can be repeated throughout implementation" has misplaced bold formatting markers. The period should come before the bold text starts.
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. | |
| Iterate with scanner until you get all necessary information. **This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
| - `repo_path`: filesystem path or `owner/repo` (from registry entry) | ||
| - `question`: clarifying questions or necessary information | ||
|
|
||
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sentence fragment "Iterate with scanner until you get all necessary information.This step can be repeated throughout implementation" has misplaced bold formatting markers. The period should come before the bold text starts.
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. | |
| Iterate with scanner until you get all necessary information. **This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
|
|
||
| # ROLE | ||
|
|
||
| You are a Repository Scanner. Your job is to list, read and analyze files from local or GitHub repositories and answer questions or deliver information requested. Based on questions or needed information you might scan different files in repos, if needed you are allowed to scan repository completely. Your answers should be detailed and comprehensive with references. You should always make sure that user gets comprehensive and complete answers, if clarification needed you need to scan again and answer clarifying questions until user gets all information needed. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The phrase "if needed you are allowed to scan repository completely" is awkward. It should be "if needed, you are allowed to scan the repository completely" (add comma after "needed" and article "the" before "repository").
| You are a Repository Scanner. Your job is to list, read and analyze files from local or GitHub repositories and answer questions or deliver information requested. Based on questions or needed information you might scan different files in repos, if needed you are allowed to scan repository completely. Your answers should be detailed and comprehensive with references. You should always make sure that user gets comprehensive and complete answers, if clarification needed you need to scan again and answer clarifying questions until user gets all information needed. | |
| You are a Repository Scanner. Your job is to list, read and analyze files from local or GitHub repositories and answer questions or deliver information requested. Based on questions or needed information you might scan different files in repos; if needed, you are allowed to scan the repository completely. Your answers should be detailed and comprehensive with references. You should always make sure that user gets comprehensive and complete answers; if clarification is needed, you need to scan again and answer clarifying questions until the user gets all information needed. |
|
|
||
| ### Relationships | ||
|
|
||
| - **Relation to current project:** AWOS integrates with Claude Code as its execution environment. AWOS commands and prompts are designed to run within Claude Code, leveraging its slash command system, MCP servers, and agent capabilities. When implementing new AWOS features or troubleshooting command behavior, scanning this repo provides insight into Claude Code's plugin architecture, hook system, available tools, and permission model. The plugin ecosystem (particularly plugin-dev) offers reference implementations for extending Claude Code functionality. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The GitHub path "anthropics/claude-code" in the relationship description is inconsistent with the actual repository which should be "anthropic/claude-code" (without the 's').
|
|
||
| - **Relation to current project:** AWOS integrates with Claude Code as its execution environment. AWOS commands and prompts are designed to run within Claude Code, leveraging its slash command system, MCP servers, and agent capabilities. When implementing new AWOS features or troubleshooting command behavior, scanning this repo provides insight into Claude Code's plugin architecture, hook system, available tools, and permission model. The plugin ecosystem (particularly plugin-dev) offers reference implementations for extending Claude Code functionality. | ||
| - **Depends on:** Anthropic Claude API (model access), AWS Bedrock (optional), Google Vertex AI (optional), ripgrep (code search) | ||
| - **Used by:** `anthropics/claude-plugins-official` (plugin marketplace depends on Claude Code runtime) |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The GitHub path "anthropics/claude-plugins-official" in the used by field is inconsistent with the actual repository which should be "anthropic/claude-plugins-official" (without the 's').
| - **Used by:** `anthropics/claude-plugins-official` (plugin marketplace depends on Claude Code runtime) | |
| - **Used by:** `anthropic/claude-plugins-official` (plugin marketplace depends on Claude Code runtime) |
| - `repo_path`: filesystem path or `owner/repo` (from registry entry) | ||
| - `question`: clarifying questions or necessary information | ||
|
|
||
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The note says "This step can be repeated throughout implementation" but the context here is about the /awos:product command which is about product definition, not implementation. The wording should be "This step can be repeated throughout the process" or "This step can be repeated as needed" to match the actual command's purpose.
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. | |
| Iterate with scanner until you get all necessary information. **This step can be repeated throughout the process** whenever the subagent needs additional context about related repos. |
| - `repo_path`: filesystem path or `owner/repo` (from registry entry) | ||
| - `question`: clarifying questions or necessary information | ||
|
|
||
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The note says "This step can be repeated throughout implementation" but the context here is about the /awos:roadmap command which is about roadmap planning, not implementation. The wording should be "This step can be repeated throughout the process" or "This step can be repeated as needed" to match the actual command's purpose.
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. | |
| Iterate with scanner until you get all necessary information. **This step can be repeated throughout the process** whenever the subagent needs additional context about related repos. |
| - `repo_path`: filesystem path or `owner/repo` (from registry entry) | ||
| - `question`: clarifying questions or necessary information | ||
|
|
||
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The note says "This step can be repeated throughout implementation" but the context here is about the /awos:tasks command which is about task breakdown, not the actual implementation phase. While this is closer to implementation, the wording should be "This step can be repeated throughout the process" or "This step can be repeated as needed" for consistency with the command's purpose.
| Iterate with scanner until you get all necessary information.**This step can be repeated throughout implementation** whenever the subagent needs additional context about related repos. | |
| Iterate with scanner until you get all necessary information. **This step can be repeated throughout the process** whenever the subagent needs additional context about related repos. |
|
|
||
| **Note:** Only scan repos that are both AWOS-enabled AND relevant to architecture decisions. Skip repos that are informational only. | ||
|
|
||
| 4. **Fetch Additional Context (if needed):** If needed more context or clarifying questions: |
Copilot
AI
Dec 10, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The wording "if needed more context" is grammatically incorrect. It should be "if more context is needed" or "if you need more context".
| 4. **Fetch Additional Context (if needed):** If needed more context or clarifying questions: | |
| 4. **Fetch Additional Context (if needed):** If more context is needed or clarifying questions arise: |
No description provided.