art-voice-agent-accelerator
Copilot instructions74 starsChanged 9 months agoMITView on GitHub
IMPORTANT: Before making any changes, review these documents to understand the system and coding standards: These documents ensure you understand WHAT the system is and HOW to write quality code for it. A misunderstanding of the system architecture leads to thousands of bad lines of code. A bad plan leads to hundreds of bad lines of code. A bad line of code is just a bad line of code. Focus your attention on the TOP of the pyramid first. Before…
We split this copilot-instructions.md into the rules it gives an agent
12 rules. About 0 are common, 7 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 45
Before writing ANY code:
- Distinctive: line 50
Check the Change Impact Matrix — what else might break?
- Distinctive: line 59
Check if existing modules already solve your problem
- Distinctive: line 60
Consider how your change affects both orchestrators (Cascade + VoiceLive)
- Distinctive: line 70
Use skills/ for common tasks (create-agent, add-tool, add-endpoint)
- Distinctive: line 72
Run tests and formatters before committing
- Very specific: line 79
Reuse Before Create: Check src/, utils/, config/ before writing new code.
- Very specific: line 80
Async Everything: All HTTP/WebSocket handlers must be async.
- Very specific: line 81
No Wrappers: Do not create adapter/facade/manager classes around existing services.
- Distinctive: line 82
No New Dependencies: Do not add pip packages without explicit approval.
- Very specific: line 112
Always commit .beads/issues.jsonl with code changes
- Very specific: line 113
Run bd sync at end of work sessions
≈ “Common” is an estimate: at least 1 in 5 of the 3,669 Copilot instructions files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Copilot Guide: Real-Time Voice Apps (Python 3.11, FastAPI, Azure)
📖 Required Reading Before Any Task
IMPORTANT: Before making any changes, review these documents to understand the system and coding standards:
- System Architecture — Understand the system, data flows, and impact of changes
- Coding Standards — Quality guidelines and best practices
These documents ensure you understand WHAT the system is and HOW to write quality code for it.
🚨 The Leverage Pyramid — Why Order Matters
┌─────────────────────┐
│ UNDERSTAND │ ← Mistakes here = 1000s of bad lines
│ (Architecture) │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ PLAN │ ← Mistakes here = 100s of bad lines
│ (Impact Analysis) │
└──────────┬──────────┘
│
┌──────────▼──────────┐
│ IMPLEMENT │ ← Mistakes here = 1 bad line
│ (Coding Standards) │
└─────────────────────┘A misunderstanding of the system architecture leads to thousands of bad lines of code. A bad plan leads to hundreds of bad lines of code. A bad line of code is just a bad line of code.
Focus your attention on the TOP of the pyramid first.
✅ Workflow: Understand → Plan → Implement
Step 1: UNDERSTAND (Highest Leverage)
Before writing ANY code:
- Read system-architecture.instructions.md
- Identify which layer you're modifying (app, src, infra)
- Understand the data flow for your change
- Check the Change Impact Matrix — what else might break?
Ask yourself: Do I understand WHY the system is structured this way?
Step 2: PLAN (High Leverage)
Before implementing:
- List the files you'll need to modify
- Check if existing modules already solve your problem
- Consider how your change affects both orchestrators (Cascade + VoiceLive)
- Identify test cases for verification
Ask yourself: If this plan is wrong, how many files will I need to undo?
Step 3: IMPLEMENT (Execute)
Now write the code:
- Follow coding-standards.instructions.md
- Use skills/ for common tasks (create-agent, add-tool, add-endpoint)
- Respect the design decisions (YAML agents, scenario handoffs, pooled clients)
- Run tests and formatters before committing
🎯 Core Principles
- Simplicity First: Choose the simplest working solution. No over-engineering.
- Reuse Before Create: Check
src/,utils/,config/before writing new code. - Async Everything: All HTTP/WebSocket handlers must be
async. - No Wrappers: Do not create adapter/facade/manager classes around existing services.
- No New Dependencies: Do not add pip packages without explicit approval.
🎫 Issue Tracking with bd
CRITICAL: This project uses bd (beads) for ALL task tracking. Do NOT create markdown TODO lists.
Essential Commands
# Find work
bd ready --json # Unblocked issues
bd stale --days 30 --json # Forgotten issues
# Create and manage (ALWAYS include --description)
bd create "Title" --description="Detailed context" -t bug|feature|task -p 0-4 --json
bd update <id> --status in_progress --json
bd close <id> --reason "Done" --json
# Search
bd list --status open --priority 1 --json
bd show <id> --json
# Sync (CRITICAL at end of session!)
bd sync # Force immediate export/commit/pushGit Workflow
- Always commit
.beads/issues.jsonlwith code changes - Run
bd syncat end of work sessions - Install git hooks:
bd hooks install(ensures DB ↔ JSONL consistency)
📚 Quick Reference
For detailed guidance, see the instruction files:
| Document | Purpose |
| system-architecture.instructions.md | System overview, modules, data flows, impact matrix |
| coding-standards.instructions.md | Code style, patterns, anti-patterns, testing |
| api-endpoints.instructions.md | API-specific conventions |
For task-specific guidance, see skills/:
| Skill | When to Use |
create-agent | Creating a new YAML-based agent |
add-tool | Adding a tool to the registry |
add-endpoint | Adding a FastAPI endpoint |
add-voice-handler | Adding voice processing logic |
Where files are headingNew Copilot instructions files have more rules about branches and pull requests, and fewer about code style.
Of the Copilot instructions files we read, the 2,297 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository13 other files it gives its agents.
- add-componentSkill
- add-endpointSkill
- add-evaluationSkill
- add-mcp-serverSkill
- add-message-handlerSkill
- add-toolSkill
- add-voice-handlerSkill
- create-agentSkill
- deployment-guideSkill
- observability-insightsSkill
- service-catalogSkill
- test-and-documentSkill
- troubleshootSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

