Reference
.sinatrarc
Per-repo configuration file schema and examples.
Full schema reference is being written. Source of truth: packages/shared/src/lib/sinatrarc/schema.ts.
Shape
{
"$schema": "https://sinatra.dev/sinatrarc/schema",
"engine": "claude-code",
"agent": {
"model": "sonnet",
"model_provider": "anthropic",
"effort": "high",
"timeout_minutes": 15,
"max_turns": 20
},
"hooks": {
"before_run": "pnpm install",
"after_run": "pnpm typecheck",
"test_command": "pnpm test"
},
"sandbox": {
"snapshot_name": "sinatra-agent",
"env": { "FOO": "bar" },
"setup_commands": {
"pre_clone": [],
"post_clone": ["pnpm install"]
}
},
"ci": {
"max_rework": 2
},
"planning": {
"enabled": false
}
}The schema endpoint at https://sinatra.dev/sinatrarc/schema is the canonical JSON Schema (will be published when the docs site goes live).
Will cover
- Each field's meaning, default, and valid values.
- Engine selection (
claude-codevsopencode). - Model selection: bare names → Anthropic, slugs → OpenRouter,
model_provider: 'openrouter'overrides. - Hook ordering and failure semantics.
- Three example configs: Node project, Python project, complex monorepo.