Auto-manages Skills (how to do things) and Scars (failure patterns already learned) for AI coding agents. One MCP install across all your projects, zero per-project config, opt-in privacy-respecting telemetry that improves the catalog over time.
Kira has well-structured tool definitions with clear naming (verb_noun pattern) and comprehensive descriptions that guide agent behavior. All 10 tools have input schemas with type definitions and parameter descriptions. However, output schemas are not documented in the visible code, and several tools lack parameter constraints (enums, ranges). Error handling guidance is minimal, tools do not describe recovery paths or categorize errors. The kira_lookup description is exceptionally detailed (300+ chars) and includes explicit agent instructions, which is excellent. However, most other tools have descriptions in the 100-200 char range without actionable error guidance. Parameter descriptions are present but sometimes generic (e.g., 'Optional sanitized snippet' for context). No evidence of pagination support, rate limiting, or per-item success/failure reporting in batch operations.
Set or query the telemetry consent level (off | basic | full). Persisted to ~/.kira/consent.json.
Get the full instructions for a specific skill or scar by ID. Call this AFTER kira_lookup to retrieve the step-by-step instructions for the skill you've chosen. lookup returns summaries (no instructions) to save tokens — use this tool to get the full details.
Look up skills (how to do it) AND scars (what to avoid) for a given keyword. Returns matching skills (community first, then vendor) and scars (critical first; your own recorded failures before shared ones, then by frequency). Personal scars recorded by kira_record_failure on this machine fire here too. The agent MUST: 1. Read ALL returned scars first — these are past failures. Avoid repeating them. 2. Read returned skills and choose the best fit for the project context. 3. ANNOUNCE the chosen skill's 'declaration' field to the user BEFORE executing. 4. Follow the skill's instructions step by step, watching for scar patterns.
Retrieve recent personal scars recorded on this machine.
Identify known failure patterns that match a goal before execution begins.
Output schemas not documented. Tools return results but LLMs cannot see expected fields, forcing them to guess structure and plan downstream calls blindly.
Error handling lacks recovery guidance. Tools do not describe what to do on failure (retry, ask user, fatal). Agents cannot self-correct.
No pagination support visible. kira_lookup and kira_route may return large result sets without limit/offset parameters or total counts.
Parameter constraints missing. 'status' enum in kira_report is present, but other tools lack enums (e.g., kira_consent 'level' param, kira_premortem 'goal' free-form). Enums prevent hallucinated values.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | <=2025-11-25 | v2 |
Record a personal failure pattern on this machine for future reference.
Report the outcome of applying a Kira skill. ALWAYS call this after completing (or failing) a task guided by a Kira skill. Statuses: 'success' = worked first try, 'retry' = needed extra attempts, 'failure' = gave up. For 'retry' and 'failure', include a note describing what went wrong — this feeds the scar system so other agents don't repeat the same mistake.
Plan a complete route for a goal. Instead of looking up individual skills, describe what you want to achieve (e.g., 'build a web app', 'add payments') and Kira returns an ordered sequence of steps, each with its Skill and Scars. Use this FIRST when the user describes a broad goal rather than a specific task. Then execute each step in order, calling kira_report after each one.
Share a scar with the community.
Report kira version, tier, consent state, and counts of loaded skills/scars/routes.
kira_consent and kira_personal_brief descriptions are vague (60-65 chars). Agents cannot determine when to call them vs alternatives.