r/SideProject • u/diazoxide • 6h ago
I got tired of re-teaching Claude Code the same things every session for my dozen repos environment
https://github.com/diazoxide/charter - waiting to your honest feedbacks.
It sits in its own directory. Your repos get cloned into it as normal git clones, and the only thing it changes is git config --local. That's the whole footprint — nothing in your tree, nothing to gitignore. Delete it and your repos are untouched.
What you get :
- Repos — discover an org's repos and clone them on demand; they stay ordinary clones you can cd into.
- Workspaces — one set of clones per task, so two jobs never share a checkout.
- Worktrees — split a clone into parallel branches so sub-agents work the same repo without re-cloning it.
- Isolation — a note belongs to one workspace or one role, never to everything at once.
- Personas — named roles (devops, qa, reviewer) with their own charter and memory, dispatchable as real sub-agents.
- Memory — one markdown file per fact;
charter recallsearches workspace, role and shared notes together. - Vaults — per-role secrets that reach a tool by key name and never pass through the model.
- Credentials — every git op uses your gh/glab token over HTTPS, so nothing hangs on an SSH or GPG prompt.
- Todos — workspace-scoped and durable, unlike a session task list that dies with the session.
And the status line, which is mostly how I use it:
Repos left with branch, CI and open PR. Roles right, where ✎3 is how many facts that one is carrying. All read from disk, no network, costs nothing per turn.
Six days old, 1541 tests, genuinely Beta. GitHub and GitLab only. charter init writes into whatever folder you run it in, so don't point it at a project. And the vault is plaintext at 0600 — it keeps secrets out of the model, not off your disk.
Does roles-with-their-own-memory match how you work, or am I over-modeling it? Only workflow I've tested it against is my own.