Show HN: RoadRaven – a project plan your coding agents keep up to date Shuffzord released RoadRaven v0.8.9, an alpha local-first desktop tool that stores a project plan as a plain roadmap.json in a repository and updates node status live over a local WebSocket as Claude Code or other MCP hosts complete work. The bundled MCP server exposes 21 tools so agents can create, edit, move and delete nodes and push status, with installers available for Windows x64 and Linux x86_64 and macOS planned next. The alpha ships unsigned, requires Node.js >= 24 for the Claude Code plugin, and its data format, APIs and packaging may change before v1.0. The plan that watches itself. A local desktop tree of your project's plan where every node can be wired to something real a Claude Code task, a CI job, a script and flips status by itself as the work happens. You plan in a doc. The work happens in terminals, CI, and AI agents. Within a day the doc is fiction. RoadRaven keeps the plan and the work in one place: a plain roadmap.json in your repo, rendered as a tree, updated live over a local WebSocket by whatever is actually doing the work. No cloud, no accounts, no sprints, no story points. Just a file you own. The headline use case: give Claude Code or any MCP host the roadmap, and watch it plan, work, and tick nodes green while you supervise. Alpha v0.8.9 . Core editing and the live Event API work today. The data format, APIs, and packaging may still change before v1.0. Bug reports and feature requests are very welcome via Issues https://github.com/Shuffzord/RoadRaven/issues . 1. Install Windows and Linux today; macOS is next status . Windows x64, PowerShell. Downloads the latest release, verifies it against the release's SHA256SUMS , runs the installer: irm https://raw.githubusercontent.com/Shuffzord/RoadRaven/master/install.ps1 | iex Linux x86 64: curl -fsSL https://raw.githubusercontent.com/Shuffzord/RoadRaven/master/install.sh | sh Windows SmartScreen will say "Windows protected your PC" because the alpha ships unsigned. Click More info , then Run anyway . Manual downloads, version pinning, and checksum steps: Install details install . 2. Connect Claude Code. Launch RoadRaven. The first-run Setup Wizard detects Claude Code and OpenCode and registers the bundled MCP server with one click. No commands, works offline. Restart your MCP host and the tools are live. 3. Try it. Open a sample from the Welcome screen, then tell Claude Code: Read the open RoadRaven roadmap, pick the first todo node, do the work, and set its status as you go. Nodes change colour on the canvas as the agent works. That is the whole idea. roadraven-showreel.mp4 - Plan-as-file. The roadmap is plain JSON in your repo. Diffable, reviewable, yours. No database, no proprietary format. - Live status from anything. Any process that can open a WebSocket updates a node. A GitHub Action finishes, the node turns green. Claude Code completes a task, the node updates. - Built for agent supervision. The MCP server exposes 21 tools so an agent can create, edit, move, delete nodes and push status as it works. You watch; it keeps the plan current. - Local-first. Binds to 127.0.0.1 , works air-gapped. Nothing leaves your machine. - Keyboard-first. Navigate and edit the whole tree without the mouse. - Zero-opinion schema. You define the statuses, types, and hierarchy. The app stays dumb; your tools do the talking. Three ways, easiest first. Every path needs the desktop app running: tools talk to it over the local Event API and return app not running otherwise. Setup Wizard recommended . Described in 60-second start 60-second-start . Re-open it any time from the ⚙ button in the top bar. It writes to ~/.claude.json Claude Code and ~/.config/opencode/opencode.json OpenCode without touching other servers you have configured. If the Claude Code plugin below is already installed, the wizard defers to it. Claude Code plugin. Requires Node.js = 24 . From inside Claude Code: /plugin marketplace add Shuffzord/RoadRaven /plugin install roadraven@roadraven Claude Code doesn't refresh third-party marketplaces on its own: turn on auto-update for roadraven in /plugin → Marketplaces, or run /plugin marketplace update roadraven before /plugin update roadraven@roadraven when the app tells you the plugin is out of date. Any other MCP host. Requires Node.js = 24 . Pin the version that matches your installed app the app warns when the versions differ : claude mcp add -s user roadraven -- npx -y @roadraven/mcp@0.8.9 Tell Claude to use it. Tools alone give Claude no reason to plan in the roadmap. This adds a short RoadRaven section to a CLAUDE.md , asking first whether to put it in the current project or in ~/.claude/CLAUDE.md for every project. Safe to re-run; it updates its own block and touches nothing else: npx -y @roadraven/mcp@0.8.9 init Cursor, Codex, Copilot, Gemini, OpenCode, version-mismatch handling, and a build-from-source path: MCP install guide https://github.com/Shuffzord/RoadRaven/blob/master/docs/mcp-install.md . Writing your own producer a CI job, a script, a bot ? The Event API contract is in the plugin authoring guide https://github.com/Shuffzord/RoadRaven/blob/master/docs/plugin-authoring.md . @roadraven/core Zod schemas and types is not on npm yet; build it from source. The Claude Code plugin install also brings two skills the Setup Wizard and npx paths give the tools only . roadraven:orchestrate plans a piece of work as a roadmap tree and runs it phase by phase with sub-agents; roadraven:work-node is how each task claims a node, checkpoints into it and reports. Details in the plugin README https://github.com/Shuffzord/RoadRaven/blob/master/plugins/claude-code/README.md . Try: Plan the CSV export feature as a roadmap in RoadRaven and run it phase by phase. A mod for Claude Code: a brand-new kind of extension that changes Claude Code's own interface, here a live RoadRaven pane inside your terminal session. - Live agents per node, with model, effort and current action - UAT checks you pass or fail in a batch, which wakes the orchestrator - Backlog Run / Next buttons - Follows the app theme Ships with the plugin: /plugin install roadraven@roadraven . Details → https://github.com/Shuffzord/RoadRaven/blob/master/plugins/roadraven-hud/README.md Download from GitHub Releases https://github.com/Shuffzord/RoadRaven/releases/latest . Every release since v0.8.0 ships a SHA256SUMS file. Windows x64. The one-liner above, or by hand: 1. Download win-x64-RoadRaven-Setup.zip and SHA256SUMS . Check the download prints True when it matches : Get-FileHash win-x64-RoadRaven-Setup.zip .Hash -eq Select-String -SimpleMatch ' win-x64-RoadRaven-Setup.zip' SHA256SUMS .Line.Split ' ' 0 2. Extract the zip and run RoadRaven-Setup.exe . 3. SmartScreen: More info , then Run anyway . RoadRaven is unsigned in the alpha. RoadRaven renders through the system WebView2 runtime on Windows, so the download carries no bundled browser engine. Pin a version with $env:ROADRAVEN VERSION = 'v0.8.9' before the one-liner. Linux x86 64. The one-liner above, or by hand: sha256sum -c SHA256SUMS --ignore-missing tar -xzf linux-x64-RoadRaven-Setup.tar.gz chmod +x ./installer ./installer The installer puts the app under ~/.local/share/ and creates a desktop shortcut. Chromium CEF ships bundled, so no system browser dependency. Pin a version with ROADRAVEN VERSION=v0.8.9 in front of sh . Once installed, RoadRaven checks GitHub Releases for updates and asks before downloading one. | Shipped as of v0.8.9 | Next | |---|---| | Tree canvas, keyboard editor, side-panel markdown notes and metadata | macOS installer | | Atomic autosave, $ref split files, File menu, Outline navigator | Code signing | | Event API over WebSocket, agent-safe writes optimistic locking, batch updates | Drag-and-drop reparenting | | MCP server on npm, Setup Wizard, Claude Code plugin with orchestrate and work-node skills and the HUD mod | @roadraven/core and @roadraven/react on npm | | 8 themes with WCAG contrast gates, user theme files, in-app theme editor | | | In-app updates: checks on launch, asks before downloading, restart to install | | | Windows and Linux installers with verified checksums | .deb packaging | | Undo / redo, status ribbons, per-file layout knobs, draggable custom layout, persistent collapse | | Full feature list and keyboard reference: docs/features.md https://github.com/Shuffzord/RoadRaven/blob/master/docs/features.md . Release history: CHANGELOG.md https://github.com/Shuffzord/RoadRaven/blob/master/CHANGELOG.md . - Features and keyboard reference https://github.com/Shuffzord/RoadRaven/blob/master/docs/features.md - MCP install guide https://github.com/Shuffzord/RoadRaven/blob/master/docs/mcp-install.md - Plugin authoring guide https://github.com/Shuffzord/RoadRaven/blob/master/docs/plugin-authoring.md write your own Event Producer - Architecture overview https://github.com/Shuffzord/RoadRaven/blob/master/docs/architecture-overview.md - Development guide https://github.com/Shuffzord/RoadRaven/blob/master/docs/development-guide.md - Design system https://github.com/Shuffzord/RoadRaven/blob/master/docs/design-system.md - Logging https://github.com/Shuffzord/RoadRaven/blob/master/docs/logging.md RoadRaven is built on Electrobun https://blackboard.sh/electrobun/ not Electron with Bun as the runtime. Local setup, test commands, code style, and project conventions are in CONTRIBUTING.md https://github.com/Shuffzord/RoadRaven/blob/master/CONTRIBUTING.md . bun install bun run dev:hmr Vite HMR + Electrobun bun run verify tests + typecheck + build + lint I built RoadRaven to scratch my own itch. When you're working on something with a lot of moving parts, your plan and your actual work drift apart fast. The plan lives in a doc or in your head, while the real state is scattered across terminals, CI, and AI agents. The doc is out of date the moment you write it, and slowly turns into fiction. It started as a personal study- and project-tracker. The moment it clicked was watching nodes flip status on their own as Claude Code worked through tasks. I hadn't touched anything, I just opened the app and the current state was right there. That's the whole idea: your plan, watching itself. If you have ideas, hit rough edges, or want a node to watch something I haven't thought of yet, please open an issue https://github.com/Shuffzord/RoadRaven/issues or a PR. Functional Source License 1.1, MIT future license https://github.com/Shuffzord/RoadRaven/blob/master/LICENSE FSL-1.1-MIT , the same license Sentry uses. In plain words: - You can use it for anything , at home or at work, free, including inside a company. Modify it, fork it, ship it with your own tools. - The one thing you can't do is sell or host RoadRaven itself or a thin fork of it as a competing product. - Every release turns into plain MIT two years after it ships , automatically. Nothing is locked away forever. Not OSI "open source", but close: source-available, free to use, MIT in time.