agentleFS
mariomilemariomile/builder-os/CLAUDE.md

builder-os

CLAUDE.md2 starsChanged 49 days agoMITView on GitHub

The shared contract is in AGENTS.md, imported above: architecture, design principles, non-negotiables, portability rules, skill contract, testing, contributing. Everything here is Claude Code specific and applies on top of it. The explicit import makes the shared repository contract available while working in this checkout. Installing BuilderOS as a plugin does not load this root file as project context; runtime rules must live in the components the plugin loads. These three are deletable. Deleting them costs slash commands and per-phase context…

The file

We split this CLAUDE.md into the rules it gives an agent

5 rules. About 0 are common, 3 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Check pipeline state before dispatching, and refuse on a failed upstream gate

    line 44
  2. Distinctive:

    Read and pass the previous phase artifact

    line 46
  3. Distinctive:

    Verify the completion marker, then re-run the phase gate on the written artifact before presenting results.

    line 47
  4. Very specific:

    Use the plugin namespace for component lookup (builder-os:problem-framer, /builder-os:bos-frame).

    line 48
  5. Very specific:

    Every lifecycle dispatch carries: operating mode and resolved capabilities, pipeline state (phase, cycle, gate mode), PRODUCT.md, the …

    line 52

≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
CLAUDE.md

@AGENTS.md

CLAUDE.md — BuilderOS on Claude Code

The shared contract is in AGENTS.md, imported above: architecture, design principles, non-negotiables, portability rules, skill contract, testing, contributing. Everything here is Claude Code specific and applies on top of it.

The explicit import makes the shared repository contract available while working in this checkout. Installing BuilderOS as a plugin does not load this root file as project context; runtime rules must live in the components the plugin loads.

Claude Code Adapters

DirectoryRole
agents/Subagent wrappers. Thin by design: role, Iron Law, context contract, reporting format
commands/Slash-command entry points and argument parsing
.claude-plugin/plugin.jsonPlugin manifest

These three are deletable. Deleting them costs slash commands and per-phase context isolation, nothing else. See docs/hosts.md.

Agent Frontmatter

---
name: agent-name
description: "Brief purpose description"
model: inherit
---

Agent Contract

Agents are adapters over skills. Every agent MUST:

  1. Name its namespaced skill (builder-os:{skill}) and instruct running that skill's procedure in the requested operating mode
  2. State its role and its Iron Law
  3. Define the context contract its dispatch prompt carries
  4. End with a completion marker (## TYPE COMPLETE)

Agents MUST NOT duplicate the procedure, the frameworks or the output contract. Those live in the skill, where every host can reach them. An agent longer than about 40 lines has almost certainly stolen something from its skill.

Command Contract

Commands are routing layers, not logic. Every command MUST:

  1. Check pipeline state before dispatching, and refuse on a failed upstream gate
  2. Resolve capabilities per references/capability-map.md and pass the derived mode
  3. Read and pass the previous phase artifact
  4. Verify the completion marker, then re-run the phase gate on the written artifact before presenting results. The marker is a claim; the gate on the file is the evidence
  5. Use the plugin namespace for component lookup (builder-os:problem-framer, /builder-os:bos-frame). Dispatch in the foreground (run_in_background: false) and await completion before dependent dispatches, artifact reads or gates. Keep this rule in the loaded command itself

Dispatch Context Package

Every lifecycle dispatch carries: operating mode and resolved capabilities, pipeline state (phase, cycle, gate mode), PRODUCT.md, the previous phase artifact, the user's request verbatim, and the instruction to write the phase artifact, update state.json, and run the gate before reporting.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.