@ludecker/aaac 1.1.2 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/README.md +5 -3
  2. package/package.json +1 -1
  3. package/src/cli.mjs +10 -9
  4. package/templates/cursor/aaac/graph.project.yaml +2 -0
  5. package/templates/cursor/aaac/scripts/run-engine/verify-website-build.mjs +1 -1
  6. package/templates/cursor/agents/fix-runtime-evidence.md +1 -1
  7. package/templates/cursor/policies/implementation.md +3 -0
  8. package/templates/cursor/policies/mcp-and-deploy.md +14 -0
  9. package/templates/cursor/policies/minimal-complexity.md +2 -2
  10. package/templates/cursor/policies/project-context.md +5 -0
  11. package/templates/cursor/policies/ui-design.md +5 -0
  12. package/templates/cursor/rules/aaac-enforcement.mdc +2 -2
  13. package/templates/cursor/skills/shared/architecture/refactor-analysis.md +7 -7
  14. package/templates/cursor/skills/shared/execution/SKILL.md +2 -3
  15. package/templates/cursor/skills/shared/governance/implementation/SKILL.md +9 -6
  16. package/templates/cursor/skills/shared/integration/SKILL.md +2 -2
  17. package/templates/cursor/skills/shared/platform-release/SKILL.md +4 -6
  18. package/templates/cursor/skills/shared/platform-release/orchestrator/SKILL.md +4 -4
  19. package/templates/cursor/skills/shared/platform-release/ship-procedure.md +14 -15
  20. package/templates/cursor/skills/shared/schema/SKILL.md +1 -1
  21. package/templates/cursor/skills/shared/verbs/_dispatch-utils.md +5 -3
  22. package/templates/cursor/skills/shared/verbs/check/orchestrator/SKILL.md +1 -1
  23. package/templates/cursor/skills/shared/verbs/update/orchestrator/contract.yaml +3 -1
  24. package/templates/docs/agentic_architecture.md +11 -6
  25. package/templates/docs/architecture.md +44 -2
  26. package/templates/docs/master_rules.md +680 -3
  27. package/templates/docs/project_context.md +40 -0
  28. package/templates/docs/ui_design.md +206 -0
package/README.md CHANGED
@@ -24,14 +24,16 @@ npx @ludecker/aaac@latest init --yes --dir /path/to/your/repo
24
24
 
25
25
  ## What you get
26
26
 
27
- - `.cursor/hooks.json` — runtime enforcement (enable in Cursor Settings Hooks)
27
+ Works **out of the box** after `init`open in Cursor and run commands. No post-install setup.
28
+
29
+ - `.cursor/hooks.json` — Run lifecycle and edit enforcement (installed with the project)
28
30
  - `.cursor/aaac/` — ontology, graph, lifecycle, run model, enforcement
29
31
  - `.cursor/skills/shared/` — full pipeline (discovery → execute → verify → report)
30
32
  - `.cursor/agents/` — 13 generic subagent specs
31
33
  - `.cursor/commands/` — ~130 generated slash commands
32
- - `docs/agentic_architecture.md` user + maintainer guide
34
+ - `docs/` — ready-to-use `master_rules.md`, `ui_design.md`, `project_context.md`, `architecture.md`, and `agentic_architecture.md`
33
35
 
34
- Add project-specific **domains** under `.cursor/domains/<slug>/` (see maintainer appendix).
36
+ Optional later: add **domains** under `.cursor/domains/<slug>/` (see maintainer appendix in `agentic_architecture.md`).
35
37
 
36
38
  ## Regenerate
37
39
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ludecker/aaac",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "Agentic Architecture as Code (AAAC) — installable Cursor agent framework",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/src/cli.mjs CHANGED
@@ -86,20 +86,21 @@ async function cmdInit(args) {
86
86
  });
87
87
 
88
88
  console.log(`
89
- AAAC installed.
89
+ Agentic OS is ready.
90
90
 
91
91
  .cursor/ → ${cursorDest}
92
92
  docs/ → ${docsDest}
93
93
 
94
- Next steps:
95
- 1. Enable Cursor Hooks (Settings → Hooks) and restart Cursor
96
- 2. Open the project in Cursor
97
- 3. Create ${options.docsRoot}/master_rules.md and ${options.docsRoot}/architecture.md if missing
98
- 4. Try /review-architecture or /check-architecture
99
- 5. Read ${options.docsRoot}/agentic_architecture.md — Part 2 for adding domains
94
+ Open this project in Cursor and use any command, for example:
100
95
 
101
- Regenerate after ontology changes:
102
- pnpm dlx @ludecker/aaac@latest generate
96
+ /create-module api "Add health check endpoint"
97
+ /fix-module auth "Session expires too soon"
98
+ /review-architecture system "Check structure"
99
+
100
+ No setup required after install. Rules and architecture docs are already in place.
101
+ To go deeper later, read ${options.docsRoot}/agentic_architecture.md (Part 2 — optional).
102
+
103
+ Regenerate commands after ontology edits:
103
104
  npx @ludecker/aaac@latest generate
104
105
  `);
105
106
  }
@@ -189,5 +189,7 @@ agents:
189
189
 
190
190
  policies:
191
191
  - policies/master-rules.md
192
+ - policies/project-context.md
193
+ - policies/ui-design.md
192
194
  - policies/implementation.md
193
195
  - policies/mcp-and-deploy.md
@@ -25,7 +25,7 @@ function loadVerifyConfig() {
25
25
  if (!verify.enabled) {
26
26
  return { enabled: false };
27
27
  }
28
- const appRootRel = verify.app_root ?? "apps/website";
28
+ const appRootRel = verify.app_root ?? "apps/web";
29
29
  const indexRel =
30
30
  verify.index_html ?? path.join(appRootRel, "index.html").replace(/\\/g, "/");
31
31
  const appRoot = path.join(PROJECT_ROOT, appRootRel);
@@ -9,7 +9,7 @@ Gather runtime evidence — logs, CI, MCP, browser errors — for the symptom.
9
9
  ## Procedure
10
10
 
11
11
  1. If intent mentions CI or deploy → use `ci-investigator` subagent pattern or read recent workflow logs
12
- 2. If database/RLS → Supabase MCP `get_logs`, `get_advisors` (project `anseivwusnyiwopihnqu`)
12
+ 2. If database/RLS → use configured database MCP `get_logs`, `get_advisors` (see [mcp-and-deploy.md](../../policies/mcp-and-deploy.md))
13
13
  3. If Render deploy → check deployment status via Render MCP when available
14
14
  4. If error message pasted → search codebase for matching string
15
15
  5. Never log secrets or tokens
@@ -2,6 +2,9 @@
2
2
 
3
3
  **Sources:**
4
4
 
5
+ - [{{DOCS_ROOT}}/master_rules.md](../../{{DOCS_ROOT}}/master_rules.md)
6
+ - [{{DOCS_ROOT}}/ui_design.md](../../{{DOCS_ROOT}}/ui_design.md)
7
+ - [{{DOCS_ROOT}}/project_context.md](../../{{DOCS_ROOT}}/project_context.md)
5
8
  - [{{DOCS_ROOT}}/architecture.md](../../{{DOCS_ROOT}}/architecture.md)
6
9
  - [.cursor/skills/shared/governance/implementation/SKILL.md](../skills/shared/governance/implementation/SKILL.md)
7
10
 
@@ -0,0 +1,14 @@
1
+ # Policy: MCP and deploy
2
+
3
+ Optional project overlay. Add rule files under `.cursor/rules/` when you use MCP servers or a deploy platform.
4
+
5
+ | Concern | Where to configure |
6
+ |---------|-------------------|
7
+ | Database MCP | `.cursor/rules/<provider>-mcp.mdc` — migrations, project ref, RLS |
8
+ | Deploy / hosting | `.cursor/rules/deploy.mdc` — service name, blueprint, smoke URL |
9
+
10
+ **Migrations:** When you add SQL under your migrations folder, apply via your configured database MCP immediately after the change.
11
+
12
+ **Deploy checks:** Use the MCP server your team configures in Cursor settings. Put vendor project IDs and service names in `docs/project_context.md` or `.cursor/rules/` — not in shared generic skills.
13
+
14
+ Generic installs ship without provider-specific rule files. Add them when you connect Supabase, Render, or another provider.
@@ -67,9 +67,9 @@ complexity_breakdown:
67
67
  new_api_endpoint: 1
68
68
  modify: 1
69
69
  reuse:
70
- - "ExportButton pattern from packages/ui"
70
+ - "ExportButton pattern from <design-system-package>"
71
71
  modify:
72
- - "apps/website/app/api/export/route.ts (extend existing export handler)"
72
+ - "<app>/api/export/route.ts (extend existing export handler)"
73
73
  create:
74
74
  - artifact: "GET /api/export/csv"
75
75
  kind: new_api_endpoint
@@ -0,0 +1,5 @@
1
+ # Policy: Project context
2
+
3
+ **Source of truth:** [{{DOCS_ROOT}}/project_context.md](../../{{DOCS_ROOT}}/project_context.md)
4
+
5
+ Project-specific paths, SSOT anchors, and tooling. Master rules stay stack-agnostic. Domain skills cannot override master rules.
@@ -0,0 +1,5 @@
1
+ # Policy: UI design and CSS
2
+
3
+ **Source of truth:** [{{DOCS_ROOT}}/ui_design.md](../../{{DOCS_ROOT}}/ui_design.md)
4
+
5
+ Loaded for UI, component, and styling work. Agents must read before writing CSS or presentational markup. Master Rules §5 and §41 apply.
@@ -11,8 +11,8 @@ Every AAAC slash command (`/fix-module`, `/update-module`, `/write-article`, …
11
11
 
12
12
  ## Prerequisites
13
13
 
14
- 1. **Cursor Hooks enabled** — Settings → Hooks; restart Cursor after `.cursor/hooks.json` changes
15
- 2. **Registry current** — `node .cursor/aaac/generate-graph.mjs`
14
+ 1. **Project opened in Cursor** — `.cursor/hooks.json` is installed by `init`; hooks run when the project is open
15
+ 2. **Registry current** — after ontology edits: `npx @ludecker/aaac@latest generate`
16
16
 
17
17
  ## Hook behavior (automatic)
18
18
 
@@ -61,7 +61,7 @@ Also read the target with codebase tools (Grep, Read) — do not rely on shell a
61
61
  #### S - Single Responsibility
62
62
 
63
63
  Look for:
64
- - Files over budget (see Master Rules §19: routes 200, components 250, lib 300, openrouter 350)
64
+ - Files over budget (see Master Rules §19: routes 200, components 250, lib 300)
65
65
  - Functions over 80 lines (or nested callbacks over 40)
66
66
  - Classes with > 10 methods
67
67
  - Mixed concerns (data + UI + business logic)
@@ -166,7 +166,7 @@ For each issue found, assess:
166
166
  - **Effort**: Lines to change, tests needed?
167
167
  - **Master rule**: Which rule(s) does fixing this satisfy?
168
168
 
169
- Prioritize: clarity and predictability over clever abstractions (Rule 22).
169
+ Prioritize: clarity and predictability over clever abstractions (Rule 42).
170
170
 
171
171
  ## Output Format
172
172
 
@@ -196,7 +196,7 @@ Use this template exactly:
196
196
  | Area | Status | Top violations |
197
197
  |------|--------|----------------|
198
198
  | SSOT & layers | 🟡/🟢/🔴 | [e.g. UI fetching in component] |
199
- | UI discipline | 🟡/🟢/🔴 | [e.g. inline components] |
199
+ | UI discipline | 🟡/🟢/🔴 | [e.g. inline components, deep CSS selectors — see ui_design.md] |
200
200
  | Boundaries & errors | 🟡/🟢/🔴 | [e.g. unvalidated API body] |
201
201
  | Async & state | 🟡/🟢/🔴 | [e.g. ad-hoc flags vs state machine] |
202
202
  | Testing & logging | 🟡/🟢/🔴 | [e.g. no tests for changed module] |
@@ -244,7 +244,7 @@ Use this template exactly:
244
244
 
245
245
  ### ⚠️ Technical Debt Notes
246
246
 
247
- - [Items to defer — document why per Rule 21 if suggesting exceptions]
247
+ - [Items to defer — document why per Rule 34 if suggesting exceptions]
248
248
 
249
249
  ---
250
250
 
@@ -252,14 +252,14 @@ Use this template exactly:
252
252
 
253
253
  Before applying suggestions:
254
254
 
255
- - [ ] Tests exist for affected code (Rule 20)
255
+ - [ ] Tests exist for affected code (Rule 21)
256
256
  - [ ] Create feature branch
257
257
  - [ ] Commit current state (only when user asks)
258
258
  - [ ] Apply **one** refactoring at a time
259
259
  - [ ] Run tests after each change
260
260
  - [ ] Review diff before committing
261
261
  - [ ] No scope creep — minimal diff (user preference)
262
- - [ ] Document any intentional rule exception (Rule 21)
262
+ - [ ] Document any intentional rule exception (Rule 34)
263
263
 
264
264
  ## Applying Refactorings
265
265
 
@@ -270,7 +270,7 @@ When the user asks to implement (not just analyze):
270
270
  3. Centralize schemas and validation at boundaries
271
271
  4. Extract to new files (no inline components)
272
272
  5. Add/update behavioral tests, not implementation-detail tests
273
- 6. Use structured logging on new async paths (Rule 19)
273
+ 6. Use structured logging on new async paths (Rule 20)
274
274
 
275
275
  ## Usage
276
276
 
@@ -15,14 +15,13 @@ Orchestrator phase `execute` after approved plan.
15
15
  ## Mandatory
16
16
 
17
17
  1. Read [governance/implementation/SKILL.md](../governance/implementation/SKILL.md)
18
- 2. Read domain [inventory](../../../domains/) constraints
18
+ 2. Read domain inventory when present (`domains/<slug>/update/inventory/`)
19
19
  3. Read [policies/](../../../policies/)
20
20
 
21
21
  ## Actions
22
22
 
23
23
  - Edit files per plan and implementation skill
24
- - `apply_migration` for new/changed `supabase/migrations/` (project `anseivwusnyiwopihnqu` see [supabase-mcp.mdc](../../../rules/supabase-mcp.mdc))
25
- - `track()` for user-facing mutations
24
+ - Apply database migrations via configured MCP when your project uses one (see [mcp-and-deploy.md](../../../policies/mcp-and-deploy.md) and `{{DOCS_ROOT}}/project_context.md`)
26
25
  - Structured logging on server async paths
27
26
 
28
27
  ## Must not
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: implementation
3
- description: Enforces project master rules and architecture when implementing code. Read {{DOCS_ROOT}}/master_rules.md and {{DOCS_ROOT}}/architecture.md before any code change.
3
+ description: Enforces project master rules and architecture when implementing code. Read {{DOCS_ROOT}}/master_rules.md, {{DOCS_ROOT}}/ui_design.md (UI/CSS), {{DOCS_ROOT}}/project_context.md, and {{DOCS_ROOT}}/architecture.md before any code change.
4
4
  ---
5
5
 
6
6
  # Implementation
@@ -10,6 +10,8 @@ All code changes must comply with your project docs. **If implementation conflic
10
10
  | Document | Path | Governs |
11
11
  |----------|------|---------|
12
12
  | Master Rules | [{{DOCS_ROOT}}/master_rules.md](../../../../{{DOCS_ROOT}}/master_rules.md) | Architecture, layers, SSOT, testing |
13
+ | UI Design | [{{DOCS_ROOT}}/ui_design.md](../../../../{{DOCS_ROOT}}/ui_design.md) | CSS discipline, selectors, layout, a11y |
14
+ | Project Context | [{{DOCS_ROOT}}/project_context.md](../../../../{{DOCS_ROOT}}/project_context.md) | Repo paths, SSOT anchors, tooling |
13
15
  | Architecture | [{{DOCS_ROOT}}/architecture.md](../../../../{{DOCS_ROOT}}/architecture.md) | System shape, modules, data flow, deploy |
14
16
 
15
17
  Read the relevant sections **before** implementing. Add project-specific object skills under `.cursor/skills/<project>/` and wire them in `capabilities/registry.json` when you outgrow the generic defaults.
@@ -20,8 +22,9 @@ Read the relevant sections **before** implementing. Add project-specific object
20
22
 
21
23
  1. **Identify the layer** you are touching (UI, state, domain, infrastructure).
22
24
  2. **Read** the matching section in master rules and architecture docs.
23
- 3. **Check reuse**extend existing modules before adding new ones.
24
- 4. **Respect boundaries** — UI renders only; domain owns rules; infrastructure persists.
25
+ 3. **UI/CSS work:** read [ui_design.md](../../../../{{DOCS_ROOT}}/ui_design.md) shallow CSS, no premature token architecture (Rules §5, §41).
26
+ 4. **Check reuse** — extend existing modules before adding new ones.
27
+ 5. **Respect boundaries** — UI renders only; domain owns rules; infrastructure persists.
25
28
 
26
29
  ---
27
30
 
@@ -41,13 +44,13 @@ Direction: **Input → State → Logic → Output**. No circular imports across
41
44
  ## Checklist (execute phase)
42
45
 
43
46
  - [ ] Values from config/constants — no unexplained literals
44
- - [ ] Token/class-based CSS — no inline styles in UI components
47
+ - [ ] Class-based CSS per ui_design.md — no inline styles; shallow selectors
45
48
  - [ ] One component per file; named exports
46
49
  - [ ] Async ops: cancellable, logged at boundaries
47
50
  - [ ] Tests appropriate to the change (unit for domain, integration for boundaries)
48
51
 
49
52
  ---
50
53
 
51
- ## Project overlay
54
+ ## Project overlay (optional)
52
55
 
53
- After `npx @ludecker/aaac init`, replace this generic skill with project-specific rules, or add a `skills/<project>/implementation/` skill and point `execution` depends in `graph.project.yaml`.
56
+ Generic rules ship in `{{DOCS_ROOT}}/master_rules.md` and work without edits. Put repo-specific paths and SSOT anchors in `{{DOCS_ROOT}}/project_context.md`. When you outgrow defaults, extend those docs or add a `skills/<project>/implementation/` skill and wire it in `graph.project.yaml`.
@@ -9,8 +9,8 @@ disable-model-invocation: true
9
9
 
10
10
  ## Scope
11
11
 
12
- - `apps/website/app/api/`, Supabase MCP, Render deploy policies
13
- - Project rules: [deploy.mdc](../../../../rules/deploy.mdc), [supabase-mcp.mdc](../../../../rules/supabase-mcp.mdc)
12
+ - Your app's API routes, webhooks, and OAuth adapters
13
+ - Optional: [mcp-and-deploy.md](../../../policies/mcp-and-deploy.md) and `.cursor/rules/` when MCP or deploy is configured
14
14
 
15
15
  ## Execution focus
16
16
 
@@ -17,7 +17,7 @@ Wave 1: release-git ← BLOCKING
17
17
 
18
18
  Wave 1.5: conditional package publish ← OPTIONAL (project overlay; blocking when triggered)
19
19
 
20
- Wave 2: release-renderBLOCKING (poll until live or fail)
20
+ Wave 2: deploy agent OPTIONAL (project overlay; poll until live or fail)
21
21
 
22
22
  Wave 3: verification + reporting
23
23
  ```
@@ -36,13 +36,11 @@ Execute [agents/release-git.md](../../../agents/release-git.md) or spawn shell s
36
36
 
37
37
  ## Wave 1.5 — conditional publish (project overlay)
38
38
 
39
- When the project ships an npm package with the app (e.g. `@ludecker/aaac`), the project overlay supplies a conditional publish agent and detection scripts. Skip when no changes detected.
39
+ When the project ships an npm package with the app, the project overlay supplies a conditional publish agent and detection scripts. Skip when no changes detected.
40
40
 
41
- ## Wave 2 — Render (mandatory)
41
+ ## Wave 2 — Deploy (optional)
42
42
 
43
- Execute [agents/release-render.md](../../../agents/release-render.md).
44
-
45
- **Never** end ship without polled deploy status.
43
+ When configured, run the project overlay deploy agent. **Never** end ship without polled deploy status when deploy is enabled.
46
44
 
47
45
  ## Reference
48
46
 
@@ -18,7 +18,7 @@ disable-model-invocation: true
18
18
  1. [../SKILL.md](../SKILL.md) — swarm DAG
19
19
  2. [ship-procedure.md](../ship-procedure.md) — step reference
20
20
  3. [graph.yaml](../../../../aaac/graph.yaml) — `release-app`
21
- 4. [ludecker-infrastructure](../../../ludecker/infrastructure/SKILL.md)
21
+ 4. Project overlay infrastructure skill when present (`skills/<project>/infrastructure/`)
22
22
 
23
23
  ## Phases
24
24
 
@@ -32,11 +32,11 @@ Spawn subagent per [agents/release-git.md](../../../../agents/release-git.md).
32
32
 
33
33
  **Do not** start Wave 2 until `commit_sha` is returned.
34
34
 
35
- ### 2. Wave 2 — Render
35
+ ### 2. Wave 2 — Deploy (optional)
36
36
 
37
- Spawn [release-render](../../../../agents/release-render.md) with `commit_sha`, `commit_message_first_line`, `commit_message_body`.
37
+ When project overlay supplies a deploy agent, spawn it with `commit_sha`, `commit_message_first_line`, `commit_message_body`. Skip when not configured.
38
38
 
39
- If Render `build_failed`, overall status is failed.
39
+ If deploy `build_failed`, overall status is failed.
40
40
 
41
41
  ### 3. Verify + report
42
42
 
@@ -1,31 +1,30 @@
1
1
  # Release ship procedure (reference)
2
2
 
3
- Canonical steps migrated from legacy `/ship-ludecker`. Subagents in `agents/release-*.md` own each slice.
3
+ Generic git-first release. Deploy steps are **optional** enable via project overlay (`docs/project_context.md`, `.cursor/rules/deploy.mdc`). Subagents in `agents/release-*.md` own each slice.
4
4
 
5
5
  ## Git (Wave 1 — blocking)
6
6
 
7
- 1. Confirm repo: `signalbynoise/ludecker` (or local ludecker monorepo)
7
+ 1. Confirm repo root (`git rev-parse --show-toplevel`)
8
8
  2. `git status` + `git diff` + `git diff --staged` + `git log -5 --oneline`
9
- 3. Never stage `.env`, `.env.local`, credentials, or API keys
9
+ 3. Never stage `.env`, credentials, or API keys
10
10
  4. Draft 1–2 sentence commit message from diff and user intent
11
11
  5. `git add` intentional paths → `git commit` (HEREDOC message)
12
- 6. Ensure on `main`: `git checkout main` if needed; `git pull --rebase origin main`
13
- 7. `git push origin main` — on reject, rebase once more; never force-push main
12
+ 6. Ensure on default branch: checkout if needed; `git pull --rebase origin <branch>`
13
+ 7. `git push origin <branch>` — on reject, rebase once more; never force-push protected branches
14
14
  8. Output: `commit_sha`, `commit_message_first_line`, `commit_message_body`
15
15
 
16
- **Rules:** No force-push main. On pre-commit hook failure: fix and new commit — never amend unless user asked.
16
+ **Rules:** No force-push to protected branches. On pre-commit hook failure: fix and new commit — never amend unless user asked.
17
17
 
18
- ## Render (Wave 2 — after push)
18
+ ## Deploy (Wave 2 — optional, project overlay)
19
19
 
20
- MCP: `user-render` only (not `plugin-render-render`).
20
+ Skip when no deploy agent or `project.config.json` deploy section is configured.
21
21
 
22
- **Service SSOT:** `ludecker-website` (see `render.yaml`, `docs/deployment.md`).
23
-
24
- 1. `list_services` find `name === "ludecker-website"`, note `id`
25
- 2. After push: `list_deploys` (`limit: 5`) — match deploy `commit.id` to `commit_sha`
26
- 3. Poll up to **15 minutes**, every **30s**, until `status === "live"` or terminal failure
27
- 4. Smoke check: `curl -fsS -o /dev/null -w "%{http_code}" https://ludecker-website.onrender.com/` — expect **200**
22
+ 1. Read service name and smoke URL from `docs/project_context.md` or `.cursor/rules/deploy.mdc`
23
+ 2. Use your team's configured deploy MCP (see [mcp-and-deploy.md](../../../policies/mcp-and-deploy.md))
24
+ 3. After push: list deploys match `commit.id` to `commit_sha`
25
+ 4. Poll until `live` or terminal failure
26
+ 5. Smoke check production URL expect success status
28
27
 
29
28
  ## Preflight (optional, Wave 0)
30
29
 
31
- If intent includes "with tests": run `pnpm typecheck` from repo root before git work.
30
+ If intent includes "with tests": run project typecheck/test command from repo root before git work.
@@ -14,7 +14,7 @@ disable-model-invocation: true
14
14
 
15
15
  ## Execution focus
16
16
 
17
- - New migration file per change; apply via Supabase MCP (`hjadkzfemzuvhpwbixbt`)
17
+ - New migration file per change; apply via configured database MCP (see [mcp-and-deploy.md](../../../policies/mcp-and-deploy.md))
18
18
  - Backward-compatible defaults; document breaking changes in report
19
19
  - RLS and security advisors after apply
20
20
 
@@ -16,9 +16,11 @@ Orchestrators execute phases from the Run `pending` queue. Do not skip gates unl
16
16
  Read before any phase:
17
17
 
18
18
  1. [.cursor/policies/master-rules.md](../../../policies/master-rules.md)
19
- 2. [.cursor/policies/implementation.md](../../../policies/implementation.md)
20
- 3. [.cursor/policies/mcp-and-deploy.md](../../../policies/mcp-and-deploy.md)
21
- 4. [.cursor/policies/minimal-complexity.md](../../../policies/minimal-complexity.md) — **required for create / update / fix**
19
+ 2. [.cursor/policies/project-context.md](../../../policies/project-context.md)
20
+ 3. [.cursor/policies/ui-design.md](../../../policies/ui-design.md)
21
+ 4. [.cursor/policies/implementation.md](../../../policies/implementation.md)
22
+ 5. [.cursor/policies/mcp-and-deploy.md](../../../policies/mcp-and-deploy.md)
23
+ 6. [.cursor/policies/minimal-complexity.md](../../../policies/minimal-complexity.md) — **required for create / update / fix**
22
24
 
23
25
  ## Minimal complexity (create / update / fix)
24
26
 
@@ -17,7 +17,7 @@ Read [_dispatch-utils.md](../_dispatch-utils.md) first.
17
17
  3. **load_inventory** — when domain slug maps to inventory
18
18
  4. **object_skills** — from graph `object_skills.<object>`
19
19
  5. [check](../../check/SKILL.md) — swarm per check skill
20
- 6. **contract_checks** — run project test commands from domain inventory when present; for `@ludecker/aaac` package maintenance use `pnpm --filter @ludecker/aaac test` and `test:e2e`
20
+ 6. **contract_checks** — run test commands from domain inventory or `project.config.json` when present
21
21
  7. [reporting](../../reporting/SKILL.md) — **Answer** (yes/no/partial) then **How**
22
22
 
23
23
  No code changes. For test runs use `test-*`; for fixes use `fix-*`.
@@ -23,9 +23,11 @@ failure_conditions:
23
23
  - skip domain inventory when slug resolves to inventory file
24
24
  dependencies:
25
25
  skills: [discovery, planning, execution, testing, verification, reporting]
26
- policies: [master-rules, implementation, mcp-and-deploy]
26
+ policies: [master-rules, project-context, ui-design, implementation, mcp-and-deploy]
27
27
  docs:
28
28
  - docs/master_rules.md
29
+ - docs/ui_design.md
30
+ - docs/project_context.md
29
31
  - docs/architecture.md
30
32
  - docs/design_system.md
31
33
  verification:
@@ -52,16 +52,21 @@ AAAC generates ~130 commands from **8 verbs × 12 objects**:
52
52
  | `release-app` | Phased release swarm (git → deploy) |
53
53
  | `fix-module` / `fix-bug` | Full fix swarm — domain optional until you add resolvers |
54
54
 
55
- ### Fresh installwhat works day one
55
+ ### Out of the box no setup after install
56
56
 
57
- - Verb×object commands and shared pipeline (discover plan execute verify → report)
58
- - Cursor hook enforcement and Run lifecycle
57
+ Install copies everything you need. Open the project in Cursor and run commands.
58
+
59
+ - ~130 slash commands and the full shared pipeline (discover → plan → execute → verify → report)
60
+ - Generic `master_rules.md`, `ui_design.md`, `project_context.md`, and `architecture.md` in your docs folder — **already filled in**, not empty stubs
61
+ - Hook scripts and Run lifecycle under `.cursor/`
59
62
  - Generic capability registry (shared skills only)
60
- - **No** project domains, **no** hardcoded app build gate (`verify.enabled: false` in `project.config.json`)
63
+ - **No** project domains required; **no** app build gate until you opt in (`verify.enabled: false` in `project.config.json`)
64
+
65
+ You do **not** need to enable hooks manually, write rules, add domains, or configure a stack before your first command.
61
66
 
62
- ### After you customize (any stack)
67
+ ### Optional — when you want more (any stack)
63
68
 
64
- 1. Write `docs/master_rules.md` and `docs/architecture.md`
69
+ 1. Fill in `docs/project_context.md` with your repo layout and SSOT anchors; extend `docs/master_rules.md` and `docs/architecture.md` when needed
65
70
  2. Add `domains/<slug>/update/` (orchestrator + inventory) — see Part 2
66
71
  3. Extend `graph.project.yaml` with resolvers and project skills
67
72
  4. Enable verify in `project.config.json` when you have a web app to gate:
@@ -1,5 +1,47 @@
1
1
  # Architecture
2
2
 
3
- Describe your system map: layers, modules, data flow, and deployment.
3
+ This describes how your repo works with Agentic OS. It ships ready to use — edit only when you want project-specific detail.
4
4
 
5
- AAAC policies reference this file. Replace this stub with your project architecture.
5
+ ## Your project + Agentic OS
6
+
7
+ ```text
8
+ your-repo/
9
+ (your app code — any stack)
10
+ .cursor/ ← Agentic OS (commands, skills, agents, runs)
11
+ docs/ ← rules and architecture (this folder)
12
+ ```
13
+
14
+ Agentic OS does not replace your app. It sits beside your code and gives Cursor a structured way to create, update, fix, review, test, and release work.
15
+
16
+ ## How you work
17
+
18
+ You type a **command** and a short **intent**. The system runs a pipeline (discover → plan → execute → verify → report) and keeps agents on track.
19
+
20
+ ```text
21
+ /create-module billing "Add invoice export"
22
+ /fix-module api "Webhook fails on retries"
23
+ /review-architecture system "Check layer boundaries"
24
+ ```
25
+
26
+ You do not need to learn skills, agents, or orchestrators — those are internal.
27
+
28
+ ## Layers (generic)
29
+
30
+ | Layer | Does | Does not |
31
+ |-------|------|----------|
32
+ | UI | Render, user interaction | Business rules, direct database access |
33
+ | Domain | Rules, validation, invariants | UI markup, framework-specific rendering |
34
+ | Infrastructure | APIs, persistence, adapters | Business decisions |
35
+
36
+ ## What ships on install
37
+
38
+ - ~130 slash commands (create, update, fix, review, check, test, release, remove × modules, APIs, UI, etc.)
39
+ - Shared pipeline skills and subagent specs
40
+ - Run lifecycle and hook scripts under `.cursor/`
41
+ - Generic rules in this folder (ready without edits)
42
+
43
+ ## Optional later
44
+
45
+ Add domains under `.cursor/domains/<name>/` when you want deeper knowledge of a bounded area (payments, auth, CMS, etc.). Extend `.cursor/aaac/graph.project.yaml` to route commands to those domains. Enable build verification in `.cursor/aaac/project.config.json` when you have a web app to gate before release.
46
+
47
+ None of that is required to start.