Privacy
Last updated: 2026-07-23
In short: Plans collects nothing. There are no accounts, no telemetry, and no analytics. Your plan files stay in your repository on your machine. Nothing you write is transmitted to the maintainer or to any third party.
This policy covers the Plans convention, its Claude Code plugin, its /plans skill, and its command line scripts. Plans is an open source project released under the MIT licence. The source is at github.com/yrangana/Plans, so every claim below can be verified by reading it.
Plans creates a plans/ directory inside your own project. It holds markdown plan files, a STATUS.md, a plans.json, and a roadmap.html dashboard. These are ordinary files on your filesystem, under your control, and they are yours.
By default the bootstrap step adds plans/ to your repository's local git exclude list, so plan files are not committed unless you choose to track them.
The Claude Code plugin writes only inside your project directory. The command line scripts additionally write to two locations in your home directory when you install them: a copy of this project at ~/.local/share/plans, and symlinks named plans-init and plans-update in ~/.local/bin. Both paths are configurable, and both contain only this project's own files, never yours.
This differs between the three ways Plans can be installed, so each is described precisely.
Claude Code plugin. The plugin makes no network requests while running. Its init and update modes copy files from the plugin's own bundled template. Its sync mode compares your plan files against your local git history and deliberately does not contact any server. Installing and updating the plugin itself is handled by Claude Code, not by Plans.
Community skills CLI. Installing with npx skills add uses Vercel's skills CLI, a third-party tool with its own anonymous install telemetry, governed by Vercel's privacy policy. The skill it installs is this same project: at runtime it makes no network requests, and every mode works entirely from files bundled with the skill.
Command line scripts. The installer clones this project's public GitHub repository, and plans-update runs git pull against it. Those git operations are the only network activity on this path, and they are subject to GitHub's privacy statement.
The plugin ships two hooks: a SessionStart hook and a Stop guard. Because a hook runs automatically, their behaviour is worth stating exactly:
plans/active/. It reads the contents of none of your files. To decide whether your project uses the convention, it reads the CLAUDE_PROJECT_DIR environment variable if it is set, and asks git for the repository root by running git rev-parse --show-toplevel. It then tests whether a plans/ directory exists there. That is the full extent of what it inspects. If no plans/ directory is found, it outputs nothing at all and exits. When it does run, it emits a fixed block of text that is byte for byte identical for every user. It is written as a quoted shell heredoc, so no value from your project, environment, or filesystem can be substituted into it.plans/ was touched. To make that check it reads your plan files, specifically whether any file under plans/active/ has an in_flight: frontmatter line set to true, and it asks git for the paths that changed, by running git diff --name-only, git status --porcelain, and git ls-files --others. Unlike the SessionStart hook, its output is not fixed: when it blocks the session from ending, the reason text it returns names the changed file paths and the in-flight plan filenames it found, so those values do reach your assistant's context for that turn.Both hooks are short POSIX shell scripts, readable in full: SessionStart and Stop guard.
The roadmap.html dashboard runs entirely in your browser from your own filesystem or local server. It reads only ./STATUS.md and ./plans.json from the same directory. It loads no external fonts, scripts, or images, contains no analytics or tracking of any kind, and sends your plan data nowhere.
Plans is a file convention. When you use it with Claude Code, Cursor, or a similar tool, that assistant reads your plan files in the same way it reads any other file in your project, and its own privacy policy governs what it does with them. Plans neither adds to nor changes that relationship, and has no visibility into it.
These pages are served by GitHub Pages. They set no cookies and run no analytics. GitHub may log requests as part of operating its service, which is covered by GitHub's privacy statement rather than by this project.
Plans is a developer tool and is not directed at children. It collects no personal information from anyone, including children.
If this policy changes, the date at the top of this page changes with it, and the revision is visible in this project's public git history.
Questions about this policy, or about anything Plans does with your data, can be raised as an issue at github.com/yrangana/Plans/issues.