Architecture
In plain English: ApexYard stores the rules, tools, and history for each product you manage. The diagram below shows the five layers that make that work — useful if you want the technical detail; you do not need it to start. If you'd rather see a day with it, read how it works.
What ApexYard is ApexYard governs a portfolio of repos as one organisation: 5 layers (governance, capability, framework defaults, customisation overlay, per-project data) plus an optional split-portfolio private-sibling repo. What ApexYard does One ops fork holds the registry, hooks, rules, skills, agents, templates, and handbooks; managed projects clone in as gitignored workspace dirs. What you need to start Fork apexyard, register your projects, and read this page if you are deciding how to lay out the fork for your team. The diagram below is the canonical mental model.
What is the ApexYard architecture?
The 5-layer model
Governance defines the registry and the controls that must run. Capability defines the skills and agents that perform the work. Framework defaults provide reusable templates and handbooks. Customisation adds adopter-specific rules and workflows. Per-project data records the projects governed by the fork.
Customisation overlay
The framework ships defaults. custom-templates/, custom-skills/, and custom-handbooks/ let you adapt the workflow without editing the framework files.
Path mirroring is the convention. Put an override at the same relative path as the framework default and the custom version takes precedence.
How does the portfolio model work?
One fork, every project
Fork ApexYard once and use the fork as your operations repository. Each governed
project gets a row in apexyard.projects.yaml and a folder under
projects/<name>/. Skills like /inbox,
/status, and /tasks aggregate across the registry — one
command surveys the whole portfolio.
Live working copies (workspace/<name>/) are gitignored from the fork.
Each is a real clone of the managed repository with its own branches, pull requests, and CI.
Optional private sibling repo
The dashed box on the right is optional. Put the registry, onboarding,
projects/, workspace/, and custom-* trees in a private
sibling repository when portfolio names must stay private. Skills resolve these paths via
the portfolio.* keys in .claude/project-config.json.
Full setup walkthrough lives in
docs/multi-project.md ↗.
Convinced this is the shape your fork needs?
Three steps and you are configured — under five minutes.