add_decision
Record architectural decisions, tech choices, or conventions with links to code files and symbols. Each decision includes temporal validity and can be invalidated later.
Instructions
Manually record an architectural decision, tech choice, preference, or convention. Links to code symbols/files and optionally to a specific subproject for code-aware memory. Decisions have temporal validity — they can be invalidated later when they become outdated. Mutates the decision store (creates a new record). For automated extraction from session logs use mine_sessions instead. Returns JSON: { added: { id, title, type } }.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Short summary of the decision | |
| content | Yes | Full decision text — reasoning, context, tradeoffs | |
| type | Yes | Decision type | |
| service_name | No | Subproject name this decision is about (e.g., "auth-api", "user-service") | |
| symbol_id | No | Symbol FQN this decision is about (e.g., "src/auth/provider.ts::AuthProvider#class") | |
| file_path | Yes | File path this decision is about | |
| tags | No | Tags for categorization (e.g., ["auth", "security"]) | |
| git_branch | No | Git branch this decision belongs to. Omit to auto-detect from the project root, or pass null to make the decision branch-agnostic (visible from every branch). |