Skip to content

Compose-MDOne fragment pool. Many harness layouts.

md
Prefer tests that fail for the right reason.
Prefer visual snapshots for UI regressions.
Keep architecture decisions near the code they constrain.

Should this be a CLAUDE.md? An AGENTS.md? A SKILL.md? πŸ€”

Claude doesn't support .agents/skills/*/SKILL.md.

And Codex doesn't support .claude/skills/*/SKILL.md.

But what if you want to use multiple harnesses?

The solution: compose-md ​

Create your instructions in a docs root folder:

projectDocs/
  testing/
    tdd.md
    visual-tests.md
  architecture/
    core-concepts.md

Declare your approaches β€” same fragments, different layouts:

yaml
name: agents
description: Everything in a root AGENTS.md
outputs:
  AGENTS.md:
    - "@tdd"
    - "@visual-tests"
    - "@core-concepts"
yaml
name: skills
description: Domain guidance as skills, light root file
outputs:
  CLAUDE.md:
    - "Load a skill when the task matches its domain."
  .claude/skills/testing/SKILL.md:
    - "@tdd"
    - "@visual-tests"
  .claude/skills/architecture/SKILL.md:
    - "@core-concepts"

Then apply the approach:

sh
compose apply skills

Switch harnesses β€” or experiment with placement β€” by editing YAML, not rewriting content.