Four moves from signal to sign-off.
Every signal — Slack, email, docs, repos, calendars — flows into one substrate that’s yours. Stop reconstructing the story for each audience.
Connect the channels where work actually happens. Decisions, risks and commitments are captured as they’re made, not weeks later.
Un-owed decisions, drifting milestones, missing evidence — the silent killers — surfaced the moment they appear. Oversight without overhead.
Quarterly claims, board packs, weekly status, audit responses — drafted from the same intelligence, on the cadence each audience expects. You review, you don’t author.
Record once. Report forever.
Reports don't hold facts — they render them. Fix the state, and every report regenerates correct.
The memory is a folder you can read.
Plain YAML / JSON / NDJSON on a shared drive. Anyone with drive access and Claude has the full picture.
Four settings. Five minutes.
One-time setup. Secrets live in 0600 files on your machine — not a keychain, not a cloud.
Stored in a local 0600 file. Powers the skills and the app’s agentic jobs.
A token with contents read/write so project-git can sync your substrate to a private GitHub hub. Teams can share one token; commits author with each person’s git identity.
Point the desktop app at a folder (local or shared drive). It manages one or many projects from there, reading each substrate live.
Authorize via OAuth in Claude Desktop \u2192 Integrations. The harvester reads; nothing is ever written back to your tools.
Start however you like.
Fresh, from something that already exists, or just to try it on a real thing.
A guided setup picks your compliance pack, captures identity, stakeholders, and milestones, and seeds the reporting matrix.
/project-scaffolder /project-intake
Guided wizard (~10 min) or doc-driven fast path
Already have a substrate in a repo or on a shared drive? Point at it — no re-scaffolding. Immediately queryable.
/project-admin pull <url>
Or open the folder in keep-state-app
Just want to see it work? Drop a few documents into the inbox and let intake extract structure. Real value in ten minutes.
/project-inbox
Drop files into documents/inbox/, then triage
Same substrate, two surfaces. Talk to it in Claude Cowork, or drive it in the desktop app.
In Claude Cowork
Say what you want in plain English; the orchestrator routes it to the right skill.
In keep-state-app
The desktop UI reads your substrate live on every load. No sync step, no stale view.
The orchestrator brief — urgent, this-week, on-deck. Click an item to run the skill.
Milestone burndown, Gantt, top risks, recent decisions, budget at a glance.
Milestone board; drag to update progress.
Full details with substrate-grounded chat-to-edit.
Chain of custody — inbox → working → published; chat-to-edit inline.
The agentic job queue — harvest, triage, report generation, live.
Who gets what, at what cadence, in what format, on which surface.
API key, GitHub token, workspace — secrets in 0600 files, not the keychain.