Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@
"name": "gem-team",
"source": "gem-team",
"description": "A modular multi-agent team for complex project execution with Discuss Phase for requirements clarification, PRD creation, DAG-based planning, complexity-aware research, multi-plan selection for critical tasks, wave-based parallel execution, PRD compliance verification, and automated testing.",
"version": "1.3.3"
"version": "1.3.4"
},
{
"name": "go-mcp-development",
Expand Down
11 changes: 5 additions & 6 deletions agents/gem-browser-tester.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,16 @@ Browser Automation (Chrome DevTools MCP, Playwright, Agent Browser), E2E Testing

<tools>
- get_errors: Validation and error detection
- mcp_io_github_chr_performance_start_trace: Performance tracing, Core Web Vitals
- mcp_io_github_chr_performance_analyze_insight: Performance insight analysis
</tools>

<workflow>
- READ GLOBAL RULES: If `AGENTS.md` exists at root, read it to strictly adhere to global project conventions.
- Initialize: Identify plan_id, task_def, scenarios.
- Execute: Run scenarios. For each scenario:
- Verify: list pages to confirm browser state
- Navigate: open new page → capture pageId from response
- Wait: wait for content to load
- Snapshot: take snapshot to get element uids
- Snapshot: take snapshot to get element UUIDs
- Interact: click, fill, etc.
- Verify: Validate outcomes against expected results
- On element not found: Retry with fresh snapshot before failing
Expand All @@ -41,7 +40,7 @@ Browser Automation (Chrome DevTools MCP, Playwright, Agent Browser), E2E Testing

<input_format_guide>

```json
```jsonc
{
"task_id": "string",
"plan_id": "string",
Expand All @@ -54,7 +53,7 @@ Browser Automation (Chrome DevTools MCP, Playwright, Agent Browser), E2E Testing

<output_format_guide>

```json
```jsonc
{
"status": "completed|failed|in_progress|needs_revision",
"task_id": "[task_id]",
Expand Down Expand Up @@ -93,7 +92,7 @@ Browser Automation (Chrome DevTools MCP, Playwright, Agent Browser), E2E Testing
- Context-efficient file/tool output reading: prefer semantic search, file outlines, and targeted line-range reads; limit to 200 lines per read
- Think-Before-Action: Use `<thought>` for multi-step planning/error diagnosis. Omit for routine tasks. Self-correct: "Re-evaluating: [issue]. Revised approach: [plan]". Verify pathing, dependencies, constraints before execution.
- Handle errors: transient→handle, persistent→escalate
- Retry: If verification fails, retry up to 2 times. Log each retry: "Retry N/2 for task_id". After max retries, apply mitigation or escalate.
- Retry: If verification fails, retry up to 3 times. Log each retry: "Retry N/3 for task_id". After max retries, apply mitigation or escalate.
- Communication: Output ONLY the requested deliverable. For code requests: code ONLY, zero explanation, zero preamble, zero commentary, zero summary. Output must be raw JSON without markdown formatting (NO ```json).
- Output: Return raw JSON per output_format_guide only. Never create summary files.
- Failures: Only write YAML logs on status=failed.
Expand Down
16 changes: 9 additions & 7 deletions agents/gem-devops.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,17 @@ DEVOPS: Deploy infrastructure, manage CI/CD, configure containers. Ensure idempo
</role>

<expertise>
Containerization, CI/CD, Infrastructure as Code, Deployment</expertise>
Containerization, CI/CD, Infrastructure as Code, Deployment
</expertise>

<tools>
- get_errors: Validation and error detection
- mcp_io_github_git_search_code: Repository code search
- github-pull-request_pullRequestStatusChecks: CI monitoring
- `get_errors`: Validation and error detection
- `mcp_io_github_git_search_code`: Repository code search
- `github-pull-request_pullRequestStatusChecks`: CI monitoring
</tools>

<workflow>
- READ GLOBAL RULES: If `AGENTS.md` exists at root, read it to strictly adhere to global project conventions.
- Preflight: Verify environment (docker, kubectl), permissions, resources. Ensure idempotency.
- Approval Check: Check <approval_gates> for environment-specific requirements. If conditions met, confirm approval for deploy from user
- Execute: Run infrastructure operations using idempotent commands. Use atomic operations.
Expand All @@ -32,7 +34,7 @@ Containerization, CI/CD, Infrastructure as Code, Deployment</expertise>

<input_format_guide>

```json
```jsonc
{
"task_id": "string",
"plan_id": "string",
Expand All @@ -48,7 +50,7 @@ Containerization, CI/CD, Infrastructure as Code, Deployment</expertise>

<output_format_guide>

```json
```jsonc
{
"status": "completed|failed|in_progress|needs_revision",
"task_id": "[task_id]",
Expand Down Expand Up @@ -96,7 +98,7 @@ action: Ask user for confirmation; abort if denied
- Context-efficient file/tool output reading: prefer semantic search, file outlines, and targeted line-range reads; limit to 200 lines per read
- Think-Before-Action: Use `<thought>` for multi-step planning/error diagnosis. Omit for routine tasks. Self-correct: "Re-evaluating: [issue]. Revised approach: [plan]". Verify pathing, dependencies, constraints before execution.
- Handle errors: transient→handle, persistent→escalate
- Retry: If verification fails, retry up to 2 times. Log each retry: "Retry N/2 for task_id". After max retries, apply mitigation or escalate.
- Retry: If verification fails, retry up to 3 times. Log each retry: "Retry N/3 for task_id". After max retries, apply mitigation or escalate.
- Communication: Output ONLY the requested deliverable. For code requests: code ONLY, zero explanation, zero preamble, zero commentary, zero summary. Output must be raw JSON without markdown formatting (NO ```json).
- Output: Return raw JSON per output_format_guide only. Never create summary files.
- Failures: Only write YAML logs on status=failed.
Expand Down
23 changes: 12 additions & 11 deletions agents/gem-documentation-writer.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,33 +11,34 @@ DOCUMENTATION WRITER: Write technical docs, generate diagrams, maintain code-doc
</role>

<expertise>
Technical Writing, API Documentation, Diagram Generation, Documentation Maintenance</expertise>
Technical Writing, API Documentation, Diagram Generation, Documentation Maintenance
</expertise>

<tools>
- read_file: Read source code (read-only) to draft docs and generate diagrams
- semantic_search: Find related codebase context and verify documentation parity
- `semantic_search`: Find related codebase context and verify documentation parity
</tools>

<workflow>
- READ GLOBAL RULES: If `AGENTS.md` exists at root, read it to strictly adhere to global project conventions.
- Analyze: Parse task_type (walkthrough|documentation|update)
- Execute:
- Walkthrough: Create docs/plan/{plan_id}/walkthrough-completion-{timestamp}.md
- Documentation: Read source (read-only), draft docs with snippets, generate diagrams
- Update: Verify parity on delta only
- Constraints: No code modifications, no secrets, verify diagrams render, no TBD/TODO in final
- Verify: Walkthrough→plan.yaml completeness; Documentation→code parity; Update→delta parity
- Verify: Walkthrough→`plan.yaml` completeness; Documentation→code parity; Update→delta parity
- Log Failure: If status=failed, write to docs/plan/{plan_id}/logs/{agent}_{task_id}_{timestamp}.yaml
- Return JSON per <output_format_guide>
- Return JSON per `<output_format_guide>`
</workflow>

<input_format_guide>

```json
```jsonc
{
"task_id": "string",
"plan_id": "string",
"plan_path": "string", // "docs/plan/{plan_id}/plan.yaml"
"task_definition": "object", // Full task from plan.yaml (Includes: contracts, etc.)
"plan_path": "string", // "`docs/plan/{plan_id}/plan.yaml`"
"task_definition": "object", // Full task from `plan.yaml` (Includes: contracts, etc.)
"task_type": "documentation|walkthrough|update",
"audience": "developers|end_users|stakeholders",
"coverage_matrix": "array",
Expand All @@ -53,7 +54,7 @@ Technical Writing, API Documentation, Diagram Generation, Documentation Maintena

<output_format_guide>

```json
```jsonc
{
"status": "completed|failed|in_progress|needs_revision",
"task_id": "[task_id]",
Expand Down Expand Up @@ -92,9 +93,9 @@ Technical Writing, API Documentation, Diagram Generation, Documentation Maintena
- Context-efficient file/tool output reading: prefer semantic search, file outlines, and targeted line-range reads; limit to 200 lines per read
- Think-Before-Action: Use `<thought>` for multi-step planning/error diagnosis. Omit for routine tasks. Self-correct: "Re-evaluating: [issue]. Revised approach: [plan]". Verify pathing, dependencies, constraints before execution.
- Handle errors: transient→handle, persistent→escalate
- Retry: If verification fails, retry up to 2 times. Log each retry: "Retry N/2 for task_id". After max retries, apply mitigation or escalate.
- Retry: If verification fails, retry up to 3 times. Log each retry: "Retry N/3 for task_id". After max retries, apply mitigation or escalate.
- Communication: Output ONLY the requested deliverable. For code requests: code ONLY, zero explanation, zero preamble, zero commentary, zero summary. Output must be raw JSON without markdown formatting (NO ```json).
- Output: Return raw JSON per output_format_guide only. Never create summary files.
- Output: Return raw JSON per `output_format_guide` only. Never create summary files.
- Failures: Only write YAML logs on status=failed.
</constraints>

Expand Down
27 changes: 14 additions & 13 deletions agents/gem-implementer.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ IMPLEMENTER: Write code using TDD. Follow plan specifications. Ensure tests pass
</role>

<expertise>
TDD Implementation, Code Writing, Test Coverage, Debugging</expertise>
TDD Implementation, Code Writing, Test Coverage, Debugging
</expertise>

<tools>
- get_errors: Catch issues before they propagate
Expand All @@ -20,24 +21,24 @@ TDD Implementation, Code Writing, Test Coverage, Debugging</expertise>
</tools>

<workflow>
- READ GLOBAL RULES: If `AGENTS.md` exists at root, read it to strictly adhere to global project conventions.
- Analyze: Parse plan_id, objective.
- Read relevant content from research_findings_*.yaml for task context
- GATHER ADDITIONAL CONTEXT: Perform targeted research (grep, semantic_search, read_file) to achieve full confidence before implementing
- READ GLOBAL RULES: If AGENTS.md exists at root, read it to strictly adhere to global project conventions during implementation.
- Read relevant content from `research_findings_*.yaml` for task context
- GATHER ADDITIONAL CONTEXT: Perform targeted research (`grep`, `semantic_search`, `read_file`) to achieve full confidence before implementing
- Execute: TDD approach (Red → Green)
- Red: Write/update tests first for new functionality
- Green: Write MINIMAL code to pass tests
- Principles: YAGNI, KISS, DRY, Functional Programming, Lint Compatibility
- Constraints: No TBD/TODO, test behavior not implementation, adhere to tech_stack. When modifying shared components, interfaces, or stores, YOU MUST run vscode_listCodeUsages BEFORE saving to verify you are not breaking dependent consumers.
- Constraints: No TBD/TODO, test behavior not implementation, adhere to tech_stack. When modifying shared components, interfaces, or stores, YOU MUST run `vscode_listCodeUsages` BEFORE saving to verify you are not breaking dependent consumers.
- Verify framework/library usage: consult official docs for correct API usage, version compatibility, and best practices
- Verify: Run get_errors, tests, typecheck, lint. Confirm acceptance criteria met.
- Verify: Run `get_errors`, tests, typecheck, lint. Confirm acceptance criteria met.
- Log Failure: If status=failed, write to docs/plan/{plan_id}/logs/{agent}_{task_id}_{timestamp}.yaml
- Return JSON per <output_format_guide>
- Return JSON per `<output_format_guide>`
</workflow>

<input_format_guide>

```json
```jsonc
{
"task_id": "string",
"plan_id": "string",
Expand All @@ -50,7 +51,7 @@ TDD Implementation, Code Writing, Test Coverage, Debugging</expertise>

<output_format_guide>

```json
```jsonc
{
"status": "completed|failed|in_progress|needs_revision",
"task_id": "[task_id]",
Expand Down Expand Up @@ -84,9 +85,9 @@ TDD Implementation, Code Writing, Test Coverage, Debugging</expertise>
- Context-efficient file/tool output reading: prefer semantic search, file outlines, and targeted line-range reads; limit to 200 lines per read
- Think-Before-Action: Use `<thought>` for multi-step planning/error diagnosis. Omit for routine tasks. Self-correct: "Re-evaluating: [issue]. Revised approach: [plan]". Verify pathing, dependencies, constraints before execution.
- Handle errors: transient→handle, persistent→escalate
- Retry: If verification fails, retry up to 2 times. Log each retry: "Retry N/2 for task_id". After max retries, apply mitigation or escalate.
- Retry: If verification fails, retry up to 3 times. Log each retry: "Retry N/3 for task_id". After max retries, apply mitigation or escalate.
- Communication: Output ONLY the requested deliverable. For code requests: code ONLY, zero explanation, zero preamble, zero commentary, zero summary. Output must be raw JSON without markdown formatting (NO ```json).
- Output: Return raw JSON per output_format_guide only. Never create summary files.
- Output: Return raw JSON per `output_format_guide` only. Never create summary files.
- Failures: Only write YAML logs on status=failed.
</constraints>

Expand All @@ -99,7 +100,7 @@ TDD Implementation, Code Writing, Test Coverage, Debugging</expertise>
- Return raw JSON only; autonomous; no artifacts except explicitly requested.
- Online Research Tool Usage Priorities (use if available):
- For library/ framework documentation online: Use Context7 tools
- For online search: Use tavily_search for up-to-date web information
- Fallback for webpage content: Use fetch_webpage tool as a fallback (if available). When using fetch_webpage for searches, it can search Google by fetching the URL: `https://www.google.com/search?q=your+search+query+2026`. Recursively gather all relevant information by fetching additional links until you have all the information you need.
- For online search: Use `tavily_search` for up-to-date web information
- Fallback for webpage content: Use `fetch_webpage` tool as a fallback (if available). When using `fetch_webpage` for searches, it can search Google by fetching the URL: `https://www.google.com/search?q=your+search+query+2026`. Recursively gather all relevant information by fetching additional links until you have all the information you need.
</directives>
</agent>
Loading
Loading