Install project-state in five minutes
project-state is a typed filesystem that turns any project into a system where routine reporting is a byproduct of normal work. It ships as a Claude Code plugin with 30 skills and 7 compliance packs. This is how you install it.
Option A โ Plugin marketplace (recommended)
Two commands in your terminal. Not inside Claude โ this is the claude CLI itself:
claude plugin marketplace add github:atomic47/project-state
claude plugin install project-state@project-state
That's it. All 30 skills register as slash commands immediately.
Option B โ Local install from a zip or checkout
If you have the repo as a directory (cloned or unzipped):
claude plugin marketplace add /path/to/project-state
claude plugin install project-state@project-state
Same two commands, just pointing at a local path instead of the marketplace.
Option C โ Manual symlinks (contributor workflow)
For contributors working directly in the repo, or teams on shared drives that pre-date plugin support:
cd ~/.claude/skills
for skill in \
project-state project-scaffolder project-onboarding project-inbox \
project-phase-gate project-document-curator \
project-milestone-manager project-status-reporter \
project-orchestrator project-notifier \
project-review-meeting project-funder-reporting \
project-change-register project-blog-publisher \
project-website-publisher project-kanban \
project-doc-suite project-doc-suite-generator \
project-sred-tracker project-sred-reviewer \
project-onboarder project-ip-tracker \
project-external-comms project-lessons project-archive \
project-git project-harvester \
grant-state grant-scaffolder grant-ingestor
do
ln -sf "/path/to/project-state/skills/$skill" .
done
Replace /path/to/project-state with the actual path to the repo.
Verify it worked
Open Claude Code in any directory and try these natural-language queries. Each one routes to a specific skill:
You: "What phase are we in?"
Claude: โ runs /project-phase-gate โ reads state.json โ tells you the current lifecycle phase
You: "Show me the milestones"
Claude: โ runs /project-milestone-manager โ lists all milestones with percent_complete
You: "What should I do this week?"
Claude: โ runs /project-orchestrator โ returns a prioritized brief with urgent/this-week/on-deck items
You: "Open the kanban"
Claude: โ runs /project-kanban โ starts the local dashboard at localhost:3355
You: "Harvest signals from Slack and Gmail"
Claude: โ runs /project-harvester โ pulls relevant messages into documents/inbox/
If any of these respond with "I don't have that skill," the plugin didn't register. Re-run the install commands.
What you get
30 slash commands organized into four tiers:
| Tier | Skills | Purpose |
|---|---|---|
| P0 Foundation | project-state, project-scaffolder, project-onboarding | Memory layer, init, guided setup |
| P1 Core | project-phase-gate, project-document-curator, project-milestone-manager, project-status-reporter, project-inbox | Working state and reports |
| P2 Surfaces | project-orchestrator, project-notifier, project-review-meeting, project-funder-reporting, project-change-register, project-blog-publisher, project-website-publisher, project-kanban, project-doc-suite | Automation, routing, dashboards |
| P3 Polish | project-onboarder, project-ip-tracker, project-external-comms, project-lessons, project-archive, project-git, project-harvester | Lifecycle completion |
| Grant | grant-state, grant-scaffolder, grant-ingestor | Pre-award grant submissions |
Seven compliance packs configure how these skills behave for different project types:
| Pack | Use when |
|---|---|
agile-default | Engineering team, Scrum/Kanban, no external funder |
board-investor | Startup with board reporting obligations |
client-services | Client-facing engagement, QBR cadence |
open-source-community | Community-governed open-source project |
sred-canada | Canadian project claiming SR&ED tax credits |
grant-canada | Pursuing a Canadian grant (NSERC, IRAP, SIF, PIC, CFI, Mitacs, and 13 more) |
pic-pcais | Protein Industries Canada PCAIS consortium (execution phase) |
Packs compose. grant-canada + sred-canada covers both grant submissions and SR&ED claims. grant-canada + pic-pcais gives you the full PIC lifecycle from submission through execution.
Updating
claude plugin update project-state@project-state
Next step
With the plugin installed, the next thing to do is scaffold your first project. Your first scaffold walks through the 6-step wizard that creates a working project-state/ substrate from an empty directory.