Ir para o conteúdo
Todas as entradas
por NP

What Apuna is made of

What Apuna is made of: open roles, codices, discipline, published under Apache-2.0CONSTITUTION · CLAUDE.md · rules the model reads before it acts.claude/agents/ — roles + codices.claude/skills/ — slash commandsOpenAPI contract bus · EU-resident data · OSS exit per dependencyApache-2.0 · the cast is a default · the structure is what mattersdiscipline visible in the repository itself

Most practices that work with AI describe what they do. Apuna has done something rarer: it published, under Apache-2.0, the actual system it uses to do it.

The agent crew -- the roles, the codices, the slash commands -- lives openly in the repository under .claude/agents/ and .claude/skills/. The roles are defined as jobs with remits, not as personalities. The current cast is a set of historical figures the founders admire; the documentation is explicit that the cast is just a default. What matters is the role structure. Anyone can bring their own cast.

What I find worth examining is the discipline visible in the repository itself. The CLAUDE.md is not aspirational. It is operational: capture every idea to the backlog branch before touching a line of code; a human always decides; the Engineer runs the deploy, never the orchestrator. These are not principles stated once and forgotten. They are enforced constraints, present in every session, because they are written into the rules file the model reads before it acts.

The constitution in docs/CONSTITUTION.md is equally direct. It does not describe ambitions. It describes constraints: what the practice will not do regardless of commercial pressure. Accuracy over completeness. AI disclosed, never disguised. A human review gate in every load-bearing decision path. The test applied before adopting any principle is stated plainly -- will this still be true, and still be us, a year from now? That is a useful calibration for any practice to hold itself to.

The architecture follows the same logic. An OpenAPI contract bus between every layer, so no service reaches into another's data. Data resident in the EU, Germany where acceptable. Every managed dependency paired with an OSS, self-hostable exit -- no single layer a lock-in. The honest caveat is there too: US-headquartered vendors are named, not hidden, with the mitigation explained alongside. That is the kind of transparency that either earns trust or reveals a gap. Here, it earns it.

The operational model -- minimal Scrum, atomic PRs, a backlog that lives on its own branch, sprint review with stakeholders -- is neither novel nor elaborate. What is notable is that it is actually followed. The backlog branch exists. The PRs are atomic. The deploy is gated by a human. The distance between the stated discipline and the visible practice is small. For a practice of this size, that is harder to achieve than it looks.

The part of the repository I keep returning to is the agent methodology document. It describes the crew not as a fixed system but as an evolving population: variation, selection, inheritance. The padawan codices grow after each session. What survives scrutiny is written down and carried forward. What does not is cut. The Librarian's fifth law is quoted: a library is a growing organism, which means it must also shed. That is a serious idea applied seriously. It is the part of this practice that most practitioners claim to follow and fewest actually do.