Rune – persistent context for AI coding tools Rune, a software intelligence runtime from developer pypl100, provides persistent, shared, and explainable context for AI coding tools like Cursor, Codex, and Claude Code by continuously maintaining an understanding graph of a codebase. It is available as npm package @pypl100/rune and pip package north-rune, with a CLI and MCP server, and it is read-only, never writing to source code. The Software Intelligence Runtime. Cursor, Codex, Claude Code — they all read your codebase cold, every session, and forget everything when it ends. Rune is the thing that runs underneath them, continuously, so every session starts already knowing your codebase instead of re-deriving it. Without Rune: php flowchart LR A1 "New AI session" -- A2 "Reads files cold" A2 -- A3 "Reasons, answers" A3 -- A4 "Session ends" A4 -.- |"understanding lost"| A1 With Rune: php flowchart LR B1 "Code changes" -- B2 "rune watch rebuilds automatically" B2 -- B3 "Understanding always current" B3 -- B4 "New AI session" B4 -- B5 "Queries Rune over MCP" B5 -- B6 "Evidence-backed answer, cited to file + line" B6 -.- |"stays current"| B3 What it does what-rune-does · How it works how-it-works · Install install · Quickstart quickstart · See real output what-this-actually-looks-like · CLI cli · MCP tools mcp-tools-exposed · Limitations current-scope-and-honest-limitations · Security security-notes Always current — rune watch keeps the understanding graph up to date as you edit, not just when someone remembers to re-run a scan. It's a runtime, not a one-shot CLI. Persistent — understanding survives past any single session. Every AI you connect starts already knowing your software, instead of re-reading it cold. Shared — one understanding, many AI clients. Claude, GPT, Gemini, whatever you're running next month — they all ask the same Rune instance instead of maintaining separate, inconsistent mental models of your code. Explainable — nothing Rune tells an AI is a black box. Ask it to justify any claim and it shows the exact source location behind it. Read-only, suggest-only — Rune never writes to your source. That's the actual moat: everything else in this space is racing toward autonomous code-writing; Rune stays strictly on the reading, understanding, and later suggesting side of that line. It never becomes the thing you have to double-check for silently breaking your code. Two layers, and every conclusion traces back to evidence — not asserted, always inspectable: php flowchart LR F1 "Fact: import react, UserCard.jsx line 1" -- D "Derived: React component UserCard" F2 "Fact: function UserCard, UserCard.jsx line 3" -- D F3 "Fact: useState hook, UserCard.jsx line 4" -- D D -- C "AI answer: this project has a UserCard component" C -.- |"rune explain"| F1 C -.- |"rune explain"| F2 C -.- |"rune explain"| F3 Call rune explain