How Companies & Teams
Deploy danic.ai-os
One model, four scenarios: delivery to the company, a new project, an existing project, and multiple developers working in parallel — without getting in each other's way.
The Two-Layer Model
The decisive point up front: the “danic setup” is not bound to a repo. It splits into two cleanly separated layers — a global engine per developer and a thin per-project configuration layer. Exactly this separation makes every one of the following scenarios possible.
User-Global
~/.claude/ — the danic engine
111 Agents, 95 Commands, 22 Rules, 22 Hooks, 59 Skills. Installed once via install.sh —
then active in every repo the person opens with Claude Code.
Repo-local
CLAUDE.md + project-management/ — the project context
Per project: tech stack, domain, constraints (CLAUDE.md) plus feature/bug tracking, ID registry and
metrics. Stack routing reads tech-stack.md and automatically
activates the matching specialist agents.
Two Distribution Models
This is how danic.ai-os reaches the company. What ships today is Model A (versioned ZIP, managed delivery). Model B (GitHub template) is the target picture for technical customers — currently marked “future” in the repo. Both share the same engine.
Managed ZIP Package
build-customer-package.sh [customer] exports a clean, versioned state
(without Git history, without DANIC internals), injects the customer config and produces a ZIP.
DANIC actively delivers it.
- No repo access required — handed over as a ZIP / shared folder
- Clean separation — validation blocks internal references
- Updates = new package + delivery checklist
“Use this template” → Fork
The company creates its own repo from the danic template, clones it and runs install.sh.
Updates arrive via git fetch + git checkout v1.x.
- Self-service — the company updates to tags on its own
- Version discipline — CHANGELOG + semantic versioning
- Prerequisite — customer config cleanly separated from core
New Project from Scratch
The straightforward case: the engine generates Layer 2 entirely on its own. From the idea to the delivered feature through all quality gates.
~/.claude/ — once per developer.Retrofit an Existing Project
The real question. No rewrite, no migration of the code. Because the engine sits user-global, it is immediately available in the existing repo — only Layer 2 is layered over the existing structure. Stack routing recognizes the existing tech stack and activates the right specialist agents.
install.sh ran once — it applies to the existing repo too.project-management/). From the first
/ship-feature-auto, the existing code evolves under the same quality gates as a
greenfield project — incrementally, without a big bang.Multiple Developers in Parallel
Two axes. Different apps is trivial: each person their own repo, the same global engine, zero conflict. The same app is the hard case — and danic solves it through four interlocking isolation layers.
main always stays stable.main.Worktrees
Each feature in its own folder. Parallel development without wrecking the working copy.
Branches
feature/*, fix/* isolate changes. main is always deliverable.
ID Registry
FEAT/BUG/ADR IDs are permanent and never recycled — no collision between teams.
Quality Gates
PR review + gate documentation before every merge. No feature outruns the stability of main.