Kira

io.github.aibenyclaude-coderPublished by GitHub account aibenyclaude-coderv0.11.0Updated Oct 24, 2026

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

VerifiedSTDIODesktop onlyKnowledge & MemoryDeveloper Tools

Overview

AI-generated overview

Local MCP server that lets an AI agent record its failures as 'scars' and recall them before working, so it stops repeating the same mistakes.

What you can do
  • Record failures and retries as personal scars, kept locally
  • Get a session-start brief of recent scars and a pre-task failure heat-map for a goal
  • Look up skills and failure warnings by keyword, fetch full instructions by ID, and turn a goal into an ordered plan
  • Promote a personal scar into a sanitized community submission
  • Report success, retry or failure outcomes, and set telemetry consent or check status
When to use it
Useful when an agent works repeatedly on the same machine or codebase and keeps hitting the same walls, and you want that failure knowledge carried across sessions without hand-writing rules files. Also relevant if you want pre-task warnings about where similar work has failed before.
Requirements
Runs locally over stdio via npx, so Node.js is needed. No account or authentication is required; the free tier works without a key. Optional environment variables: KIRA_HOME for local state, KIRA_PRO_KEY for the Pro tier, KIRA_TELEMETRY and KIRA_TELEMETRY_URL for telemetry. Desktop MCP clients only.
Before you install
Telemetry is on by default at the basic level and sends anonymous usage data to a remote endpoint; set KIRA_TELEMETRY to off to disable it, and note that full mode includes sanitized notes. Personal scars and the miss log are described as local-only. Sharing a scar prepares a submission that is not uploaded until you confirm it. KIRA_PRO_KEY is a signed token for the paid tier.

Installation

In SourceWeft

  1. Open Kira in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

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:

json
{  "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

text
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 flywheelnever 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: mistake → instead, 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.

Source: README.md at commit 822fb1d

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.11.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts