146 lines
3.2 KiB
Markdown
146 lines
3.2 KiB
Markdown
# LLM HARNESS MANIFEST
|
|
|
|
**Universal task router for all LLM tools and models.**
|
|
|
|
---
|
|
|
|
## Model/Agent Assignment Matrix
|
|
|
|
```json
|
|
{
|
|
"tasks": {
|
|
"architecture": {
|
|
"model": "opus",
|
|
"agent": "claude-code",
|
|
"use_case": "System design, planning, long-context analysis",
|
|
"token_budget": 100000
|
|
},
|
|
"implementation": {
|
|
"model": "sonnet",
|
|
"agent": "claude-code",
|
|
"use_case": "Code generation, feature building",
|
|
"token_budget": 50000
|
|
},
|
|
"code-review": {
|
|
"model": "opus",
|
|
"agent": "cursor",
|
|
"use_case": "Critical code review, quality gates",
|
|
"token_budget": 50000
|
|
},
|
|
"testing": {
|
|
"model": "sonnet",
|
|
"agent": "claude-code",
|
|
"use_case": "Test generation, validation",
|
|
"token_budget": 30000
|
|
},
|
|
"research": {
|
|
"model": "sonnet",
|
|
"agent": "gemini",
|
|
"use_case": "Topic research, knowledge synthesis",
|
|
"token_budget": 40000
|
|
},
|
|
"documentation": {
|
|
"model": "sonnet",
|
|
"agent": "claude-code",
|
|
"use_case": "Writing docs, guides, specifications",
|
|
"token_budget": 30000
|
|
},
|
|
"analysis": {
|
|
"model": "opus",
|
|
"agent": "claude-code",
|
|
"use_case": "Deep analysis, trade-off evaluation",
|
|
"token_budget": 60000
|
|
}
|
|
},
|
|
|
|
"agents": {
|
|
"claude-code": {
|
|
"entry_point": "CLAUDE.md",
|
|
"cli": "claude-code",
|
|
"models": ["opus", "sonnet", "haiku"],
|
|
"strengths": ["architecture", "implementation", "detailed code work"]
|
|
},
|
|
"cursor": {
|
|
"entry_point": "CURSOR.md",
|
|
"cli": "cursor",
|
|
"models": ["opus", "sonnet"],
|
|
"strengths": ["code review", "refactoring", "IDE integration"]
|
|
},
|
|
"gemini": {
|
|
"entry_point": "GEMINI.md",
|
|
"cli": "gemini",
|
|
"models": ["gemini-3-pro", "gemini-3-flash"],
|
|
"strengths": ["research", "multimodal", "web search"]
|
|
}
|
|
},
|
|
|
|
"fallback": {
|
|
"if_agent_unavailable": "use_next_best_agent",
|
|
"if_model_unavailable": "downgrade_to_sonnet"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
# Load manifest
|
|
source LOADER.sh
|
|
|
|
# Get task assignment
|
|
get_agent_for_task "architecture"
|
|
# Output: opus + claude-code
|
|
|
|
# Get module path for project
|
|
get_module_path "gravl" "design"
|
|
# Output: ~/workspace/gravl/modules/design
|
|
```
|
|
|
|
---
|
|
|
|
## Project Harness Structure
|
|
|
|
Each project (gravl, job-portal, etc) should have:
|
|
|
|
```
|
|
~/workspace/[project]/
|
|
├── HARNESS.md ← Project-specific structure
|
|
├── modules/
|
|
│ ├── design/
|
|
│ │ ├── APPROACH.md
|
|
│ │ └── specs/
|
|
│ ├── implementation/
|
|
│ ├── testing/
|
|
│ └── docs/
|
|
└── [project files]
|
|
```
|
|
|
|
---
|
|
|
|
## Minimal Data Feeding Principle
|
|
|
|
When instructing an agent:
|
|
1. Load MANIFEST.md (which model/agent)
|
|
2. Load PROJECT/HARNESS.md (project structure)
|
|
3. Load ONLY relevant modules (task-specific data)
|
|
4. DON'T load:
|
|
- Other projects
|
|
- Unrelated modules
|
|
- Implementation details if doing architecture
|
|
- Full specs if doing design only
|
|
|
|
---
|
|
|
|
## RAPL Loop Integration
|
|
|
|
When task fails validation:
|
|
1. Capture error
|
|
2. Replan (fetch failing data)
|
|
3. Adjust approach
|
|
4. Log learning (store in `learnings/`)
|
|
5. Retry with new strategy
|
|
|
|
Document: `~/workspace/learnings/YYYY-MM-DD.md`
|