System Overview
Purpose #
Internal package layering with explicit names. Same content as concepts/three-layer-architecture.md, rendered as a diagram.
Diagram #
%%{init: {
"theme": "base",
"themeVariables": {
"fontFamily": "ui-sans-serif, system-ui, -apple-system, Segoe UI, sans-serif",
"fontSize": "14px",
"primaryColor": "#eff6ff",
"primaryTextColor": "#0f172a",
"primaryBorderColor": "#2563eb",
"lineColor": "#475569",
"secondaryColor": "#f1f5f9",
"tertiaryColor": "#ffffff",
"clusterBkg": "#f8fafc",
"clusterBorder": "#cbd5e1"
}
}}%%
flowchart TB
classDef actor fill:#ede9fe,stroke:#6d28d9,color:#1e1b4b,stroke-width:1.2px;
classDef cli fill:#dbeafe,stroke:#1d4ed8,color:#0c1f4a,stroke-width:1.4px;
classDef adapter fill:#cffafe,stroke:#0e7490,color:#083344;
classDef pack fill:#dcfce7,stroke:#15803d,color:#052e16;
classDef core fill:#fef9c3,stroke:#a16207,color:#422006;
classDef artifact fill:#f1f5f9,stroke:#475569,color:#0f172a;
classDef stop fill:#fee2e2,stroke:#b91c1c,color:#7f1d1d,stroke-dasharray:4 3;
classDef ok fill:#ecfdf5,stroke:#047857,color:#064e3b;
classDef external fill:#fff7ed,stroke:#c2410c,color:#431407;
subgraph L3 [Layer 3 — CLI Shell]
cli["@aidokit/cli (binary: aidokit)
Commander + @clack/prompts
orchestrates everything below"]:::cli
end
subgraph L2 [Layer 2 — Extensions]
direction LR
subgraph adapters [Adapters]
adcc["@aidokit/adapter-claude-code
Strict"]:::adapter
adcx["@aidokit/adapter-codex
Minimum"]:::adapter
adcp["@aidokit/adapter-copilot
Minimum"]:::adapter
end
subgraph packs [Stack Packs]
sp1["@aidokit/stack-pack-node-ts"]:::pack
sp2["@aidokit/stack-pack-node-js"]:::pack
sp3["@aidokit/stack-pack-python"]:::pack
sp4["@aidokit/stack-pack-react"]:::pack
sp5["@aidokit/stack-pack-go"]:::pack
end
end
subgraph L1 [Layer 1 — Core + Utilities]
direction LR
core["@aidokit/core
contracts, types, schemas, harness
(zero @aidokit/* runtime deps)"]:::core
sd["@aidokit/shared-docs"]:::core
det["@aidokit/stack-detect"]:::core
pre["@aidokit/prereq-check"]:::core
mcp["@aidokit/mcp-catalog"]:::core
bs["@aidokit/base-skills"]:::core
end
cli --> adcc
cli --> adcx
cli --> adcp
cli --> sp1
cli --> sp2
cli --> sp3
cli --> sp4
cli --> sp5
cli --> sd
cli --> det
cli --> pre
cli --> mcp
cli --> bs
adcc --> core
adcx --> core
adcp --> core
sp1 --> core
sp2 --> core
sp3 --> core
sp4 --> core
sp5 --> core
sd --> core
det --> core
pre --> core
mcp --> core
bs --> core
Rules in one breath #
- Strict downward dependency only.
@aidokit/coredepends on nothing in@aidokit/*.- Adapters never import stack packs; stack packs never import adapters.
- Only
@aidokit/climay consume all extensions.