Back to Discover

Kira

connector

aibenyclaude-coder

Skills and Scars for AI agents - your agent records its failures and never repeats them.

View on GitHub
0 starsSynced Aug 5, 2026

Install to Claude Code

/plugin marketplace add aibenyclaude-coder/Kira

README

Kira

CI npm npm downloads scars absorbed License: MIT

Your agent stops repeating its own mistakes.

Every failed retry, every exception, every "wait — we hit this exact wall last week" is knowledge your agent throws away when the session ends. Kira keeps it. One MCP install and your agent records what burned it (a scar), sees its scars before it works again, and stops paying for the same mistake twice.

Privacy by design. Personal scars and the lookup-miss log are local-only — never uploaded, on any tier. Community telemetry is opt-in and redacts secrets, paths, and identifiers locally before write AND server-side before storage. Run npm run demo:privacy to see exactly what leaves your machine. Full wire format and opt-out in PRIVACY.md.


Install (10 seconds)

Add this snippet to your MCP host config:

{
  "mcpServers": {
    "kira": {
      "command": "npx",
      "args": ["-y", "kira-mcp@latest"]
    }
  }
}

That's it. Your agent now has Kira.

Per-client paths (click)
ClientConfig file
Claude Code~/.claude/settings.json (global) or .claude/settings.json (per-project)
Claude DesktopmacOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json
Cursor~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project)
Cline / Continueextension settings → MCP servers
Windsurf~/.codeium/windsurf/mcp_config.json
VS Code (MCP preview).vscode/mcp.json
Goose~/.config/goose/profiles.yaml (under extensions:)
Zed~/.config/zed/settings.json (context_servers)

The snippet above works as-is in every one of them — just paste it under mcpServers (or the equivalent key for your client).


The loop, in 30 seconds

Monday    agent gates a merge on:  npm run build 2>&1 | tail -1
          exit code comes from tail, not the compiler → broken code reaches main
          └─ kira_record_failure(
               title:   "build gate bypassed: exit code swallowed by pipe to tail",
               instead: "never gate on a piped command without pipefail")

Tuesday   new session, same machine
          └─ session brief: "⚠ You have been burned by this before:
             never gate on a piped command without set -o pipefail"
          agent writes the gate correctly. Zero repeats. Zero wasted tokens.

Not a hypothetical — this is the actual first scar in the database, recorded by the agent that built this feature, about a mistake it made while building it. The next three scars came the same day. The loop works on day one, for a single user, with zero network effects required. FLYWHEEL.md documents the full improvement loop.


Tools (10)

ToolWhat it does
Personal memorykira_record_failureCapture a retry/exception as a personal scar (local-only)
kira_personal_briefSession-start brief of your latest scars — start work already knowing where you got burned
kira_premortemFailure heat-map for a goal before starting — "here's where this kind of task has burned you"
Catalogkira_lookupKeyword → proven instructions + failure warnings. On a miss, returns scored near_skills / near_scars instead of a shrug
kira_getFetch full step-by-step instructions by ID
kira_routeGoal → ordered plan with a skill per step
Communitykira_share_scarPromote a personal scar into a community submission (sanitized; nothing uploads without your click) — earns contributor status
Feedbackkira_reportReport success/retry/failure → feeds the quality loop
kira_consent / kira_statusTelemetry consent + one-call introspection

Auto-firing: you don't call Kira — Kira's MCP instructions tell your agent when to. Japanese queries are first-class (CJK bigram matching).

When nothing matches

A lookup miss is not a dead end — it's demand data. Kira returns the closest scored matches, records the miss locally (with what almost matched), and the weekly flywheel digest turns repeated misses into alias fixes and new-skill candidates. The catalog learns what people actually ask for.


The catalog layer (community skills & scars)

Kira Demo

38 community skills across deploy / database / auth / payments / UI / testing / CI / infra / mobile / CMS, and 45 community scars — real failure patterns like "Vercel deploy succeeds but the app crashes: missing env vars" or "Auth.js v5 signIn imported from the wrong side". kira_route turns a goal ("build a web app") into an ordered plan with the right skill and scars per step.

Community scars are where personal scars graduate to — and the flow is live. Ask your agent to run kira_share_scar(scar_id): it re-sanitizes your personal scar, generalizes it, and hands you a prefilled submission link (nothing uploads until you click). An intake bot validates the JSON; a human reviews the content; on merge it ships to every Kira user. Prefer forms? Submit a scar directly.

Every accepted scar earns contributor status — sharing is how you get the fresh feed for free (see Contributing below).


How it works

Your agent hits a wall            Your agent gets a task
    ↓                                 ↓
kira_record_failure()             kira_premortem(goal) / kira_lookup(keyword)
    ↓                                 ↓
~/.kira/personal-scars/           scars first, then instructions
    ↓                                 ↓
next session: brief surfaces      agent announces → executes → kira_report()
your scars before work starts         ↓
    ↓                             misses + failure notes feed the flywheel
never the same mistake twice      → digest → catalog improvements

Skills are natural language Markdown — no executable code, no injection risk.


Why not just CLAUDE.md?

CLAUDE.md / .cursorrulesKira
SetupCopy per projectInstall once
Failure memoryYou write it by hand, if you rememberkira_record_failure — captured at the moment it happens
RecallYou re-read it, if you rememberSurfaced automatically at session start / task start
SelectionYou chooseAgent chooses, scored
UpdatesManualAutomatic (flywheel)
Works across AI toolsTool-specificAny MCP client

Not another "memory MCP"?

There are excellent memory servers (knowledge graphs, session recall, context handoff). Kira is deliberately narrower:

  • Failure-first, not everything-first. General memory stores what happened; Kira stores what must never happen again, in a shape built for avoidance: mistakeinstead, severity, recurrence count. A pre-task heat-map (kira_premortem) exists only because the data is failures.
  • Recurrence is measured, not assumed. Re-recording a similar failure folds into the same scar and bumps hit_count — the corpus learns which walls actually get hit, and honest counts are enforced by review.
  • The commons compounds. Your scar, sanitized and human-reviewed, ships to every install — and earns you the fresh feed (RECIPROCITY.md). Memory servers make one agent smarter; a scar corpus makes every agent immune.
  • Trust is engineered, not implied. Corpus text is injected into agents' contexts, so every entry passes a sanitizer-stability gate in CI, natural-language-only rules, and human review (SECURITY.md).

If you need general episodic memory, run one of those servers alongside Kira — they don't compete for the same job.


Telemetry

Personal scars (~/.kira/personal-scars/) and the miss log (~/.kira/misses.log) are local-only and never uploaded. Community telemetry is separate and consent-gated:

Mode (KIRA_TELEMETRY env, or kira_consent MCP tool)What leaves your machine
offNothing. Local log only.
basic (default)Anonymous core: skill ID, status, anonymous UUID, kira version, OS family, Node major version, free/pro tier. No free text.
fullSame as basic plus sanitized note / context (secrets, paths, identifiers redacted).

Full schema, redaction rules, retention, and opt-out instructions: PRIVACY.md.

Env varDefaultPurpose
KIRA_TELEMETRY(unset → basic)Override consent level for this process: off, basic, full.
KIRA_TELEMETRY_URLhttps://kira-telemetry.workers.dev/v1/reportsEndpoint for batch upload.
KIRA_HOME~/.kiraWhere consent state, personal scars, miss log, and flywheel output live.
KIRA_KEY(unset → free tier)Contributor / supporter key — unlocks the fresh community feed.
KIRA_REMOTE_URL(unset → no network)Opt-in corpus feed URL for the free tier (90-day-delayed commons).

Share a scar, or subscribe, or wait

The corpus is MIT and everything in it eventually becomes free. Freshness is the only premium — failure knowledge decays as models retrain, so the newest scars carry the value:

Fresh community feedHow
Contributor✅ freeOne accepted scar = 12 months (kira_share_scar → merge → key). First 1,000 contributors: permanent.
Supporter✅ paidSponsor the project → supporter key. Funds human review of every submission.
Free90 days laterBase corpus ships with npm; delayed commons feed available opt-in. Local features + privacy guarantees are free forever, on every tier.

Currently in grace mode: the fresh feed is open to everyone until the corpus reaches 100 community scars. Full policy: RECIPROCITY.md.


Contributing

The first 1,000 contributors get permanent free access to all Kira features (fresh feed included) — see the reciprocity table above.

See CONTRIBUTING.md for how to add Skills and Scars.


Links


Where agents shine — by remembering where they got burned.

A B Button Corporation project.

Rendered live from aibenyclaude-coder/Kira's GitHub README — not stored, always reflects the source repo.

1 Install Method

NameDescriptionCategorySource
npm packageInstall via npm (stdio transport)mcp-serverkira-mcp

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.