wtf
This commit is contained in:
@@ -1,100 +0,0 @@
|
|||||||
---
|
|
||||||
name: tier1-orchestrator
|
|
||||||
description: Tier 1 Orchestrator for product alignment and high-level planning.
|
|
||||||
model: gemini-3.1-pro-preview
|
|
||||||
tools:
|
|
||||||
- read_file
|
|
||||||
- list_directory
|
|
||||||
- discovered_tool_search_files
|
|
||||||
- grep_search
|
|
||||||
- discovered_tool_get_file_summary
|
|
||||||
- discovered_tool_get_python_skeleton
|
|
||||||
- discovered_tool_get_code_outline
|
|
||||||
- discovered_tool_get_git_diff
|
|
||||||
- discovered_tool_web_search
|
|
||||||
- discovered_tool_fetch_url
|
|
||||||
- activate_skill
|
|
||||||
- discovered_tool_run_powershell
|
|
||||||
- discovered_tool_py_find_usages
|
|
||||||
- discovered_tool_py_get_imports
|
|
||||||
- discovered_tool_py_check_syntax
|
|
||||||
- discovered_tool_py_get_hierarchy
|
|
||||||
- discovered_tool_py_get_docstring
|
|
||||||
- discovered_tool_get_tree
|
|
||||||
- discovered_tool_py_get_definition
|
|
||||||
---
|
|
||||||
STRICT SYSTEM DIRECTIVE: You are a Tier 1 Orchestrator.
|
|
||||||
Focused on product alignment, high-level planning, and track initialization.
|
|
||||||
ONLY output the requested text. No pleasantries.
|
|
||||||
|
|
||||||
## Architecture Fallback
|
|
||||||
When planning tracks that touch core systems, consult the deep-dive docs:
|
|
||||||
- `docs/guide_architecture.md`: Thread domains, event system, AI client, HITL mechanism, frame-sync action catalog
|
|
||||||
- `docs/guide_tools.md`: MCP Bridge security, 26-tool inventory, Hook API endpoints, ApiHookClient
|
|
||||||
- `docs/guide_mma.md`: Ticket/Track data structures, DAG engine, ConductorEngine, worker lifecycle
|
|
||||||
- `docs/guide_simulations.md`: live_gui fixture, Puppeteer pattern, mock provider, verification patterns
|
|
||||||
|
|
||||||
## The Surgical Methodology
|
|
||||||
|
|
||||||
When creating or refining tracks, you MUST follow this protocol:
|
|
||||||
|
|
||||||
### 1. MANDATORY: Audit Before Specifying
|
|
||||||
NEVER write a spec without first reading the actual code using your tools.
|
|
||||||
Use `get_code_outline`, `py_get_definition`, `grep_search`, and `get_git_diff`
|
|
||||||
to build a map of what exists. Document existing implementations with file:line
|
|
||||||
references in a "Current State Audit" section in the spec.
|
|
||||||
|
|
||||||
**WHY**: Previous track specs asked to implement features that already existed
|
|
||||||
(Track Browser, DAG tree, approval dialogs) because no code audit was done first.
|
|
||||||
This wastes entire implementation phases.
|
|
||||||
|
|
||||||
### 2. Identify Gaps, Not Features
|
|
||||||
Frame requirements around what's MISSING relative to what exists:
|
|
||||||
GOOD: "The existing `_render_mma_dashboard` (gui_2.py:2633-2724) has a token
|
|
||||||
usage table but no cost estimation column."
|
|
||||||
BAD: "Build a metrics dashboard with token and cost tracking."
|
|
||||||
|
|
||||||
### 3. Write Worker-Ready Tasks
|
|
||||||
Each plan task must be executable by a Tier 3 worker on gemini-2.5-flash-lite
|
|
||||||
without understanding the overall architecture. Every task specifies:
|
|
||||||
- **WHERE**: Exact file and line range (`gui_2.py:2700-2701`)
|
|
||||||
- **WHAT**: The specific change (add function, modify dict, extend table)
|
|
||||||
- **HOW**: Which API calls or patterns (`imgui.progress_bar(...)`, `imgui.collapsing_header(...)`)
|
|
||||||
- **SAFETY**: Thread-safety constraints if cross-thread data is involved
|
|
||||||
|
|
||||||
### 4. For Bug Fix Tracks: Root Cause Analysis
|
|
||||||
Don't write "investigate and fix." Read the code, trace the data flow, list
|
|
||||||
specific root cause candidates with code-level reasoning.
|
|
||||||
|
|
||||||
### 5. Reference Architecture Docs
|
|
||||||
Link to relevant `docs/guide_*.md` sections in every spec so implementing
|
|
||||||
agents have a fallback for threading, data flow, or module interactions.
|
|
||||||
|
|
||||||
### 6. Map Dependencies Between Tracks
|
|
||||||
State execution order and blockers explicitly in metadata.json and spec.
|
|
||||||
|
|
||||||
## Spec Template (REQUIRED sections)
|
|
||||||
```
|
|
||||||
# Track Specification: {Title}
|
|
||||||
|
|
||||||
## Overview
|
|
||||||
## Current State Audit (as of {commit_sha})
|
|
||||||
### Already Implemented (DO NOT re-implement)
|
|
||||||
### Gaps to Fill (This Track's Scope)
|
|
||||||
## Goals
|
|
||||||
## Functional Requirements
|
|
||||||
## Non-Functional Requirements
|
|
||||||
## Architecture Reference
|
|
||||||
## Out of Scope
|
|
||||||
```
|
|
||||||
|
|
||||||
## Plan Template (REQUIRED format)
|
|
||||||
```
|
|
||||||
## Phase N: {Name}
|
|
||||||
Focus: {One-sentence scope}
|
|
||||||
|
|
||||||
- [ ] Task N.1: {Surgical description with file:line refs and API calls}
|
|
||||||
- [ ] Task N.2: ...
|
|
||||||
- [ ] Task N.N: Write tests for Phase N changes
|
|
||||||
- [ ] Task N.X: Conductor - User Manual Verification (Protocol in workflow.md)
|
|
||||||
```
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
---
|
|
||||||
name: tier2-tech-lead
|
|
||||||
description: Tier 2 Tech Lead for architectural design and execution.
|
|
||||||
model: gemini-3-flash-preview
|
|
||||||
tools:
|
|
||||||
- read_file
|
|
||||||
- write_file
|
|
||||||
- replace
|
|
||||||
- list_directory
|
|
||||||
- discovered_tool_search_files
|
|
||||||
- grep_search
|
|
||||||
- discovered_tool_get_file_summary
|
|
||||||
- discovered_tool_get_python_skeleton
|
|
||||||
- discovered_tool_get_code_outline
|
|
||||||
- discovered_tool_get_git_diff
|
|
||||||
- discovered_tool_web_search
|
|
||||||
- discovered_tool_fetch_url
|
|
||||||
- activate_skill
|
|
||||||
- discovered_tool_run_powershell
|
|
||||||
- discovered_tool_py_find_usages
|
|
||||||
- discovered_tool_py_get_imports
|
|
||||||
- discovered_tool_py_check_syntax
|
|
||||||
- discovered_tool_py_get_hierarchy
|
|
||||||
- discovered_tool_py_get_docstring
|
|
||||||
- discovered_tool_get_tree
|
|
||||||
---
|
|
||||||
STRICT SYSTEM DIRECTIVE: You are a Tier 2 Tech Lead.
|
|
||||||
Focused on architectural design and track execution.
|
|
||||||
ONLY output the requested text. No pleasantries.
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
---
|
|
||||||
name: tier3-worker
|
|
||||||
description: Stateless Tier 3 Worker for code implementation and TDD.
|
|
||||||
model: gemini-3-flash-preview
|
|
||||||
tools:
|
|
||||||
- read_file
|
|
||||||
- write_file
|
|
||||||
- replace
|
|
||||||
- list_directory
|
|
||||||
- discovered_tool_search_files
|
|
||||||
- grep_search
|
|
||||||
- discovered_tool_get_file_summary
|
|
||||||
- discovered_tool_get_python_skeleton
|
|
||||||
- discovered_tool_get_code_outline
|
|
||||||
- discovered_tool_get_git_diff
|
|
||||||
- discovered_tool_web_search
|
|
||||||
- discovered_tool_fetch_url
|
|
||||||
- activate_skill
|
|
||||||
- discovered_tool_run_powershell
|
|
||||||
- discovered_tool_py_find_usages
|
|
||||||
- discovered_tool_py_get_imports
|
|
||||||
- discovered_tool_py_check_syntax
|
|
||||||
- discovered_tool_py_get_hierarchy
|
|
||||||
- discovered_tool_py_get_docstring
|
|
||||||
- discovered_tool_get_tree
|
|
||||||
---
|
|
||||||
STRICT SYSTEM DIRECTIVE: You are a stateless Tier 3 Worker (Contributor).
|
|
||||||
Your goal is to implement specific code changes or tests based on the provided task.
|
|
||||||
You have access to tools for reading and writing files, codebase investigation, and web tools.
|
|
||||||
You CAN execute PowerShell scripts or run shell commands via discovered_tool_run_powershell for verification and testing.
|
|
||||||
Follow TDD and return success status or code changes. No pleasantries, no conversational filler.
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
---
|
|
||||||
name: tier4-qa
|
|
||||||
description: Stateless Tier 4 QA Agent for log analysis and diagnostics.
|
|
||||||
model: gemini-2.5-flash-lite
|
|
||||||
tools:
|
|
||||||
- read_file
|
|
||||||
- list_directory
|
|
||||||
- discovered_tool_search_files
|
|
||||||
- grep_search
|
|
||||||
- discovered_tool_get_file_summary
|
|
||||||
- discovered_tool_get_python_skeleton
|
|
||||||
- discovered_tool_get_code_outline
|
|
||||||
- discovered_tool_get_git_diff
|
|
||||||
- discovered_tool_web_search
|
|
||||||
- discovered_tool_fetch_url
|
|
||||||
- activate_skill
|
|
||||||
- discovered_tool_run_powershell
|
|
||||||
- discovered_tool_py_find_usages
|
|
||||||
- discovered_tool_py_get_imports
|
|
||||||
- discovered_tool_py_check_syntax
|
|
||||||
- discovered_tool_py_get_hierarchy
|
|
||||||
- discovered_tool_py_get_docstring
|
|
||||||
- discovered_tool_get_tree
|
|
||||||
---
|
|
||||||
STRICT SYSTEM DIRECTIVE: You are a stateless Tier 4 QA Agent.
|
|
||||||
Your goal is to analyze errors, summarize logs, or verify tests.
|
|
||||||
You have access to tools for reading files, exploring the codebase, and web tools.
|
|
||||||
You CAN execute PowerShell scripts or run shell commands via discovered_tool_run_powershell for diagnostics.
|
|
||||||
ONLY output the requested analysis. No pleasantries.
|
|
||||||
@@ -1,269 +0,0 @@
|
|||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_fetch_url"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered fetch_url tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_get_file_slice"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered get_file_slice tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_get_file_summary"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered get_file_summary tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_get_git_diff"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered get_git_diff tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_get_tree"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered get_tree tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_get_ui_performance"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered get_ui_performance tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_list_directory"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered list_directory tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_check_syntax"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_check_syntax tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_find_usages"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_find_usages tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_class_summary"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_class_summary tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_code_outline"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_code_outline tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_definition"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_definition tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_docstring"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_docstring tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_hierarchy"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_hierarchy tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_imports"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_imports tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_signature"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_signature tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_skeleton"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_skeleton tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_get_var_declaration"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_get_var_declaration tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_set_signature"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_set_signature tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_set_var_declaration"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_set_var_declaration tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_py_update_definition"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered py_update_definition tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_read_file"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered read_file tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_run_powershell"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered run_powershell tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_search_files"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered search_files tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_set_file_slice"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered set_file_slice tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "discovered_tool_web_search"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow discovered web_search tool."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "run_powershell"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 100
|
|
||||||
description = "Allow the base run_powershell tool with maximum priority."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "activate_skill"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow activate_skill."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "ask_user"
|
|
||||||
decision = "ask_user"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow ask_user."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "cli_help"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow cli_help."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "codebase_investigator"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow codebase_investigator."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "replace"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow replace."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "glob"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow glob."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "google_web_search"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow google_web_search."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "read_file"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow read_file."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "list_directory"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow list_directory."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "save_memory"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow save_memory."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "grep_search"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow grep_search."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "run_shell_command"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow run_shell_command."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "tier1-orchestrator"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow tier1-orchestrator."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "tier2-tech-lead"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow tier2-tech-lead."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "tier3-worker"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow tier3-worker."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "tier4-qa"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow tier4-qa."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "web_fetch"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow web_fetch."
|
|
||||||
|
|
||||||
[[rule]]
|
|
||||||
toolName = "write_file"
|
|
||||||
decision = "allow"
|
|
||||||
priority = 990
|
|
||||||
description = "Allow write_file."
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
"workspace_folders": [
|
|
||||||
"C:/projects/manual_slop",
|
|
||||||
"C:/projects/gencpp",
|
|
||||||
"C:/projects/VEFontCache-Odin"
|
|
||||||
],
|
|
||||||
"experimental": {
|
|
||||||
"enableAgents": true
|
|
||||||
},
|
|
||||||
"tools": {
|
|
||||||
"whitelist": [
|
|
||||||
"*"
|
|
||||||
],
|
|
||||||
"discoveryCommand": "powershell.exe -NoProfile -Command \"Get-Content .gemini/tools.json -Raw\"",
|
|
||||||
"callCommand": "scripts\\tool_call.exe"
|
|
||||||
},
|
|
||||||
"hooks": {
|
|
||||||
"BeforeTool": [
|
|
||||||
{
|
|
||||||
"matcher": "*",
|
|
||||||
"hooks": [
|
|
||||||
{
|
|
||||||
"name": "manual-slop-bridge",
|
|
||||||
"type": "command",
|
|
||||||
"command": "python C:/projects/manual_slop/scripts/cli_tool_bridge.py"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"hooksConfig": {
|
|
||||||
"enabled": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
C:/projects/manual_slop/mma-orchestrator
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
---
|
|
||||||
name: mma-tier1-orchestrator
|
|
||||||
description: Focused on product alignment, high-level planning, and track initialization.
|
|
||||||
---
|
|
||||||
|
|
||||||
# MMA Tier 1: Orchestrator
|
|
||||||
|
|
||||||
You are the Tier 1 Orchestrator. Your role is to oversee the product direction and manage project/track initialization within the Conductor framework.
|
|
||||||
|
|
||||||
## Primary Context Documents
|
|
||||||
Read at session start: `conductor/product.md`, `conductor/product-guidelines.md`
|
|
||||||
|
|
||||||
## Architecture Fallback
|
|
||||||
When planning tracks that touch core systems, consult:
|
|
||||||
- `docs/guide_architecture.md`: Threading, events, AI client, HITL, frame-sync action catalog
|
|
||||||
- `docs/guide_tools.md`: MCP Bridge, Hook API endpoints, ApiHookClient methods
|
|
||||||
- `docs/guide_mma.md`: Ticket/Track structures, DAG engine, ConductorEngine, worker lifecycle
|
|
||||||
- `docs/guide_simulations.md`: live_gui fixture, Puppeteer pattern, mock provider
|
|
||||||
|
|
||||||
## Responsibilities
|
|
||||||
- Maintain alignment with the product guidelines and definition.
|
|
||||||
- Define track boundaries and initialize new tracks (`/conductor:newTrack`).
|
|
||||||
- Set up the project environment (`/conductor:setup`).
|
|
||||||
- Delegate track execution to the Tier 2 Tech Lead.
|
|
||||||
|
|
||||||
## Surgical Spec Protocol (MANDATORY)
|
|
||||||
When creating or refining tracks, you MUST:
|
|
||||||
1. **Audit** the codebase with `get_code_outline`, `py_get_definition`, `grep_search` before writing any spec. Document what exists with file:line refs.
|
|
||||||
2. **Spec gaps, not features** — frame requirements relative to what already exists.
|
|
||||||
3. **Write worker-ready tasks** — each specifies WHERE (file:line), WHAT (change), HOW (API call), SAFETY (thread constraints).
|
|
||||||
4. **For fix tracks** — list root cause candidates with code-level reasoning.
|
|
||||||
5. **Reference architecture docs** — link to relevant `docs/guide_*.md` sections.
|
|
||||||
6. **Map dependencies** — state execution order and blockers between tracks.
|
|
||||||
|
|
||||||
See `activate_skill mma-orchestrator` for the full protocol and examples.
|
|
||||||
|
|
||||||
## Limitations
|
|
||||||
- Do not execute tracks or implement features.
|
|
||||||
- Do not write code or perform low-level bug fixing.
|
|
||||||
- Keep context strictly focused on product definitions and high-level strategy.
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
---
|
|
||||||
name: mma-tier2-tech-lead
|
|
||||||
description: Focused on track execution, architectural design, and implementation oversight.
|
|
||||||
---
|
|
||||||
|
|
||||||
# MMA Tier 2: Tech Lead
|
|
||||||
|
|
||||||
You are the Tier 2 Tech Lead. Your role is to manage the implementation of tracks (`/conductor:implement`), ensure architectural integrity, and oversee the work of Tier 3 and 4 sub-agents.
|
|
||||||
|
|
||||||
## Architecture Fallback
|
|
||||||
When implementing tracks, consult these docs for threading, data flow, and module interactions:
|
|
||||||
- `docs/guide_architecture.md`: Thread domains, `_process_pending_gui_tasks` action catalog, AI client architecture, HITL blocking flow
|
|
||||||
- `docs/guide_tools.md`: MCP tools, Hook API endpoints, session logging
|
|
||||||
- `docs/guide_mma.md`: Ticket/Track structures, DAG engine, worker lifecycle
|
|
||||||
- `docs/guide_simulations.md`: Testing patterns, mock provider
|
|
||||||
|
|
||||||
## Responsibilities
|
|
||||||
- Manage the execution of implementation tracks.
|
|
||||||
- Ensure alignment with `tech-stack.md` and project architecture.
|
|
||||||
- Break down tasks into specific technical steps for Tier 3 Workers.
|
|
||||||
- Maintain persistent context throughout a track's implementation phase (No Context Amnesia).
|
|
||||||
- Review implementations and coordinate bug fixes via Tier 4 QA.
|
|
||||||
|
|
||||||
## Surgical Delegation Protocol
|
|
||||||
When delegating to Tier 3 workers, construct prompts that specify:
|
|
||||||
- **WHERE**: Exact file and line range to modify
|
|
||||||
- **WHAT**: The specific change (add function, modify dict, extend table)
|
|
||||||
- **HOW**: Which API calls, data structures, or patterns to use
|
|
||||||
- **SAFETY**: Thread-safety constraints (e.g., "push via `_pending_gui_tasks` with lock")
|
|
||||||
|
|
||||||
Example prompt: `"In gui_2.py, modify _render_mma_dashboard (lines 2685-2699). Extend the token usage table from 3 to 5 columns by adding 'Model' and 'Est. Cost'. Use imgui.table_setup_column(). Import cost_tracker. Use 1-space indentation."`
|
|
||||||
|
|
||||||
## Limitations
|
|
||||||
- Do not perform heavy implementation work directly; delegate to Tier 3.
|
|
||||||
- Delegate implementation tasks to Tier 3 Workers using `uv run python scripts/mma_exec.py --role tier3-worker "[PROMPT]"`.
|
|
||||||
- For error analysis of large logs, use `uv run python scripts/mma_exec.py --role tier4-qa "[PROMPT]"`.
|
|
||||||
- Minimize full file reads for large modules; rely on "Skeleton Views" and git diffs.
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
---
|
|
||||||
name: mma-tier3-worker
|
|
||||||
description: Focused on TDD implementation, surgical code changes, and following specific specs.
|
|
||||||
---
|
|
||||||
|
|
||||||
# MMA Tier 3: Worker
|
|
||||||
|
|
||||||
You are the Tier 3 Worker. Your role is to implement specific, scoped technical requirements, follow Test-Driven Development (TDD), and make surgical code modifications. You operate in a stateless manner (Context Amnesia).
|
|
||||||
|
|
||||||
## Responsibilities
|
|
||||||
- Implement code strictly according to the provided prompt and specifications.
|
|
||||||
- Write failing tests first, then implement the code to pass them.
|
|
||||||
- Ensure all changes are minimal, functional, and conform to the requested standards.
|
|
||||||
- Utilize provided tool access (read_file, write_file, etc.) to perform implementation and verification.
|
|
||||||
|
|
||||||
## Limitations
|
|
||||||
- Do not make architectural decisions.
|
|
||||||
- Do not modify unrelated files beyond the immediate task scope.
|
|
||||||
- Always operate statelessly; assume each task starts with a clean context.
|
|
||||||
- Rely on "Skeleton Views" provided by Tier 2/Orchestrator for understanding dependencies.
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
---
|
|
||||||
name: mma-tier4-qa
|
|
||||||
description: Focused on test analysis, error summarization, and bug reproduction.
|
|
||||||
---
|
|
||||||
|
|
||||||
# MMA Tier 4: QA Agent
|
|
||||||
|
|
||||||
You are the Tier 4 QA Agent. Your role is to analyze error logs, summarize tracebacks, and help diagnose issues efficiently. You operate in a stateless manner (Context Amnesia).
|
|
||||||
|
|
||||||
## Responsibilities
|
|
||||||
- Compress large stack traces or log files into concise, actionable summaries.
|
|
||||||
- Identify the root cause of test failures or runtime errors.
|
|
||||||
- Provide a brief, technical description of the required fix.
|
|
||||||
- Utilize provided diagnostic and exploration tools to verify failures.
|
|
||||||
|
|
||||||
## Limitations
|
|
||||||
- Do not implement the fix directly.
|
|
||||||
- Ensure your output is extremely brief and focused.
|
|
||||||
- Always operate statelessly; assume each analysis starts with a clean context.
|
|
||||||
Binary file not shown.
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "fetch_url",
|
|
||||||
"description": "Fetch the full text content of a URL (stripped of HTML tags).",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"url": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "The full URL to fetch."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"url"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py fetch_url"
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "get_file_summary",
|
|
||||||
"description": "Get a compact heuristic summary of a file without reading its full content. For Python: imports, classes, methods, functions, constants. For TOML: table keys. For Markdown: headings. Others: line count + preview. Use this before read_file to decide if you need the full content.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"path": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Absolute or relative path to the file to summarise."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"path"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py get_file_summary"
|
|
||||||
}
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "get_git_diff",
|
|
||||||
"description": "Returns the git diff for a file or directory. Use this to review changes efficiently without reading entire files.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"path": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Path to the file or directory."
|
|
||||||
},
|
|
||||||
"base_rev": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Base revision (e.g. 'HEAD', 'HEAD~1', or a commit hash). Defaults to 'HEAD'."
|
|
||||||
},
|
|
||||||
"head_rev": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Head revision (optional)."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"path"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py get_git_diff"
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "py_get_code_outline",
|
|
||||||
"description": "Get a hierarchical outline of a code file. This returns classes, functions, and methods with their line ranges and brief docstrings. Use this to quickly map out a file's structure before reading specific sections.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"path": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Path to the code file (currently supports .py)."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"path"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py py_get_code_outline"
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "py_get_skeleton",
|
|
||||||
"description": "Get a skeleton view of a Python file. This returns all classes and function signatures with their docstrings, but replaces function bodies with '...'. Use this to understand module interfaces without reading the full implementation.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"path": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Path to the .py file."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"path"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py py_get_skeleton"
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "run_powershell",
|
|
||||||
"description": "Run a PowerShell script within the project base_dir. Use this to create, edit, rename, or delete files and directories. stdout and stderr are returned to you as the result.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"script": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "The PowerShell script to execute."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"script"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py run_powershell"
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "search_files",
|
|
||||||
"description": "Search for files matching a glob pattern within an allowed directory. Supports recursive patterns like '**/*.py'. Use this to find files by extension or name pattern.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"path": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Absolute path to the directory to search within."
|
|
||||||
},
|
|
||||||
"pattern": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "Glob pattern, e.g. '*.py', '**/*.toml', 'src/**/*.rs'."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"path",
|
|
||||||
"pattern"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py search_files"
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "web_search",
|
|
||||||
"description": "Search the web using DuckDuckGo. Returns the top 5 search results with titles, URLs, and snippets.",
|
|
||||||
"parameters": {
|
|
||||||
"type": "object",
|
|
||||||
"properties": {
|
|
||||||
"query": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "The search query."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"query"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"command": "python scripts/tool_call.py web_search"
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user