Manifesto
"Fuck you, AI do what I tell you."
The tools are broken
Every agentic dev tool worth its hype ships with a hidden system prompt that takes the wheel out of your hands.
oh-my-opencode
injects extra agentic loops in every scenario. The
model can't request a debug checkpoint mid-task — it
just plows ahead. When it gets stuck, it loops. When
the loop fails, it loops again with more confidence.
Adjacent operator-console products promise futuristic consoles and ship six-tile dashboards with a disk usage gauge. The marketing video has more features than the build.
The pattern repeats across the category: tools that confuse opinionation with removing your agency, that conflate helpful defaults with hidden hardcoded loops you cannot override. kaged exists because we want a different pattern.
Seven rules. No exceptions.
These are the load-bearing commitments. Every architectural decision, every spec, every line of code traces back to one of these.
[CAGED] unless the operator explicitly
grants them broader scope. Filesystem access is
allowlisted per project. Network access is
allowlisted per subagent. The model cannot
rm -rf your dotfiles unless you've
decided that's something a model should be able to
do.
[CAGED] sandbox model, the project DSL,
the primary→subagent topology. Where the choice is
load-bearing we commit; where it isn't, we document
the contract and let plugins fill it. The plugin SDK
is the steam vent for "I wanted it different."
Sharp edges, declared.
Knowing what a project refuses to be is as useful as knowing what it is.
- Not a manifesto against agentic AI. The model is useful. The harnesses around it are usually broken.
- Not a manifesto against opinionation. Opinions are how you ship. We have plenty.
- Not a manifesto against managed services. We just won't be one.
- Not a manifesto for everyone. If you want a magic AI that does your job for you with no input, this is not that. kaged is for the operator who wants the model on a leash.
You know who you are.
The self-hosted operator. The one with a homelab and a public-facing tunnel. The one who reads ADRs before installing things. The one who has been bitten by an LLM loop wiping out work in progress.
The one who, when their tool's behavior changes, wants to know which prompt to edit, not which support ticket to file.
If that's not you, this will feel slow, austere, and intentionally inconvenient. That's because it is.