SKILL.md
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.
2. 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.
3. 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