Parallel Agent Type Contracts
When launching parallel agents for code implementation, prevent type duplication.
Required in Every Agent Prompt 1. Verification Command (MANDATORY)
Before Marking Complete
Run verification: ```bash npx tsc --noEmit 2>&1 | head -20 ``` If ANY type errors exist, fix them before completing.
- Grep-Before-Create
Before Creating Any Type/Interface
First check if it exists: ```bash grep -r "interface YourTypeName|type YourTypeName" src/ ``` If found, import it. NEVER duplicate existing types.
- Canonical Type Map
Include relevant entries from this map in agent prompts:
Type Owner File Import From NormalizedTool src/sdk/agent.ts './agent' ToolCall src/sdk/agent.ts './agent' ToolResult src/sdk/agent.ts './agent' ToolDefinition src/sdk/agent.ts './agent' Message src/sdk/types.ts './types' ContentBlock src/sdk/types.ts './types' TokenUsage src/sdk/types.ts './types' ProviderAdapter src/sdk/providers/index.ts './providers' RiggClient src/sdk/client.ts './client' Prompt Template
When spawning implementation agents:
Task: [Description]
Type Ownership (DO NOT recreate)
- [List relevant types from canonical map]
Before Creating New Types
Run: grep -r "interface TypeName" src/ - if exists, import it.
Before Marking Complete
Run: npx tsc --noEmit 2>&1 | head -20
Fix all type errors before completing.
Your Implementation
[Actual task description]
Why This Works Type checker is the contract - tsc catches conflicts automatically Grep is fast - 1 second to check if type exists Explicit ownership - No ambiguity about where types live Fail fast - Agent can't claim "done" with broken types