mishkan-harness 0.2.0 → 0.2.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 (116) hide show
  1. package/README.md +108 -172
  2. package/bin/mishkan.js +677 -16
  3. package/docs/design/MISHKAN_decisions.md +450 -8
  4. package/docs/design/MISHKAN_harness_design.md +1 -33
  5. package/docs/design/MISHKAN_observability.md +13 -9
  6. package/docs/engineer/profile-readable.md +201 -0
  7. package/docs/engineer/profile.md +754 -0
  8. package/docs/research/graphify-token-saving-poc.md +108 -0
  9. package/docs/usage/09-workflows.md +74 -4
  10. package/docs/usage/10-observability.md +37 -13
  11. package/docs/usage/11-graphify.md +264 -0
  12. package/docs/usage/12-skill-discovery.md +294 -0
  13. package/docs/usage/README.md +5 -3
  14. package/package.json +1 -1
  15. package/payload/install/settings.hooks.json +24 -0
  16. package/payload/mishkan/AGENT_SPEC.md +25 -7
  17. package/payload/mishkan/agents/ahikam.md +4 -2
  18. package/payload/mishkan/agents/aholiab.md +4 -2
  19. package/payload/mishkan/agents/asaph.md +5 -2
  20. package/payload/mishkan/agents/baruch.md +19 -2
  21. package/payload/mishkan/agents/benaiah.md +4 -2
  22. package/payload/mishkan/agents/bezalel.md +4 -2
  23. package/payload/mishkan/agents/caleb.md +4 -2
  24. package/payload/mishkan/agents/deborah.md +4 -2
  25. package/payload/mishkan/agents/elasah.md +4 -2
  26. package/payload/mishkan/agents/eliashib.md +4 -2
  27. package/payload/mishkan/agents/ezra.md +4 -2
  28. package/payload/mishkan/agents/hanun.md +5 -2
  29. package/payload/mishkan/agents/hiram.md +5 -2
  30. package/payload/mishkan/agents/hizkiah.md +5 -2
  31. package/payload/mishkan/agents/huldah.md +4 -2
  32. package/payload/mishkan/agents/huram.md +4 -2
  33. package/payload/mishkan/agents/hushai.md +5 -2
  34. package/payload/mishkan/agents/igal.md +4 -2
  35. package/payload/mishkan/agents/ira.md +5 -2
  36. package/payload/mishkan/agents/jahaziel.md +5 -2
  37. package/payload/mishkan/agents/jakin.md +4 -2
  38. package/payload/mishkan/agents/jehonathan.md +5 -2
  39. package/payload/mishkan/agents/jehoshaphat.md +4 -2
  40. package/payload/mishkan/agents/joab.md +5 -2
  41. package/payload/mishkan/agents/joah.md +5 -2
  42. package/payload/mishkan/agents/maaseiah.md +4 -2
  43. package/payload/mishkan/agents/meremoth.md +5 -2
  44. package/payload/mishkan/agents/meshullam.md +5 -2
  45. package/payload/mishkan/agents/nathan.md +5 -2
  46. package/payload/mishkan/agents/nehemiah.md +4 -2
  47. package/payload/mishkan/agents/obed.md +4 -2
  48. package/payload/mishkan/agents/oholiab.md +5 -2
  49. package/payload/mishkan/agents/palal.md +5 -2
  50. package/payload/mishkan/agents/phinehas.md +4 -2
  51. package/payload/mishkan/agents/rehum.md +4 -2
  52. package/payload/mishkan/agents/salma.md +5 -2
  53. package/payload/mishkan/agents/seraiah.md +4 -2
  54. package/payload/mishkan/agents/shallum.md +5 -2
  55. package/payload/mishkan/agents/shaphan.md +4 -2
  56. package/payload/mishkan/agents/shemaiah.md +4 -2
  57. package/payload/mishkan/agents/shevna.md +5 -2
  58. package/payload/mishkan/agents/uriah.md +5 -2
  59. package/payload/mishkan/agents/zaccur.md +4 -2
  60. package/payload/mishkan/agents/zadok.md +5 -2
  61. package/payload/mishkan/agents/zerubbabel.md +4 -2
  62. package/payload/mishkan/commands/code-graph.md +35 -0
  63. package/payload/mishkan/commands/eval-baruch.md +57 -0
  64. package/payload/mishkan/commands/mishkan-org-reference.md +58 -0
  65. package/payload/mishkan/commands/mishkan-resume.md +19 -5
  66. package/payload/mishkan/commands/mishkan-skills-misses.md +47 -0
  67. package/payload/mishkan/commands/mishkan-skills-reindex.md +33 -0
  68. package/payload/mishkan/commands/skills.md +35 -0
  69. package/payload/mishkan/commands/sprint-close.md +3 -1
  70. package/payload/mishkan/hooks/pre-tool-knowledge-route.sh +231 -0
  71. package/payload/mishkan/hooks/pre-tool-task-skill-route.sh +122 -0
  72. package/payload/mishkan/hooks/session-start-skill-index.sh +35 -0
  73. package/payload/mishkan/observability/schema.json +1 -1
  74. package/payload/mishkan/observability/watch/src/mishkan_watch/__main__.py +84 -2
  75. package/payload/mishkan/observability/watch/src/mishkan_watch/app.py +64 -3
  76. package/payload/mishkan/observability/watch/src/mishkan_watch/org_data.py +79 -0
  77. package/payload/mishkan/observability/watch/src/mishkan_watch/skills_data.py +267 -0
  78. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/agents.py +33 -1
  79. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/knowledge.py +118 -9
  80. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/live.py +102 -2
  81. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/org.py +139 -0
  82. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/skills.py +187 -0
  83. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/usage.py +377 -0
  84. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/workflows.py +199 -27
  85. package/payload/mishkan/observability/watch/src/mishkan_watch/theme.tcss +78 -4
  86. package/payload/mishkan/observability/watchd/src/mishkan_watchd/__main__.py +36 -6
  87. package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/bus_tail.py +16 -3
  88. package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/graphify_tail.py +220 -0
  89. package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/worktree_poll.py +13 -2
  90. package/payload/mishkan/observability/watchd/src/mishkan_watchd/state.py +157 -3
  91. package/payload/mishkan/observability/watchd/tests/test_state.py +6 -2
  92. package/payload/mishkan/org/org.json +141 -0
  93. package/payload/mishkan/scripts/pre-commit-eval-gate.sh +50 -0
  94. package/payload/mishkan/scripts/skill-discovery-indexer.py +462 -0
  95. package/payload/mishkan/scripts/skill-discovery-misses.py +173 -0
  96. package/payload/mishkan/scripts/skill-discovery-router.py +457 -0
  97. package/payload/mishkan/scripts/skill-discovery-smoke.sh +156 -0
  98. package/payload/mishkan/skills/graphify-query-craft/SKILL.md +162 -0
  99. package/payload/mishkan/skills/mishkan-init/SKILL.md +15 -0
  100. package/payload/mishkan/skills/skill-discovery/SKILL.md +120 -0
  101. package/payload/mishkan/templates/case-node.schema.json +1 -0
  102. package/payload/mishkan/templates/observability-log.schema.json +1 -0
  103. package/payload/mishkan/workflows/README.md +78 -13
  104. package/payload/mishkan/workflows/chosheb-feature-ship.js +75 -0
  105. package/payload/mishkan/workflows/migdal-dr-drill.js +94 -0
  106. package/payload/mishkan/workflows/migdal-infra-change.js +67 -0
  107. package/payload/mishkan/workflows/mishkan-blast-radius.js +144 -0
  108. package/payload/mishkan/workflows/mishkan-init.js +58 -0
  109. package/payload/mishkan/workflows/mishkan-knowledge-gap-discovery.js +121 -0
  110. package/payload/mishkan/workflows/mishkan-standards-rollout.js +153 -0
  111. package/payload/mishkan/workflows/mishmar-security-gate.js +83 -0
  112. package/payload/mishkan/workflows/panim-ds-rollout.js +83 -0
  113. package/payload/mishkan/workflows/sefer-release-notes.js +85 -0
  114. package/payload/mishkan/workflows/yasad-data-migration-wave.js +78 -0
  115. package/payload/mishkan/workflows/yasad-schema-evolution.js +76 -0
  116. package/payload/mishkan/templates/user-CLAUDE.md +0 -62
package/README.md CHANGED
@@ -2,83 +2,49 @@
2
2
 
3
3
  # מִשְׁכָּן · MISHKAN
4
4
 
5
- **A virtual software-engineering organisation that lives inside Claude Code.**
5
+ **A personal SWE R&D harness that lives inside Claude Code.**
6
6
 
7
- *Run a complex SDLC with AI as a disciplined, multi-agent team design, spec,
8
- architecture, security, build, review, and docs — instead of a single chat.*
7
+ 45 specialist agents · six teams · one research pipeline · one growing knowledge graph
9
8
 
10
9
  </div>
11
10
 
12
11
  ---
13
12
 
14
- MISHKAN (*"dwelling place"* — the place where the work resides) turns Claude Code
15
- into a standing engineering org: **45 specialist agents** across **six teams**, led
16
- by a PM and a CTO, sharing one research pipeline and one growing knowledge graph.
17
- Quality and security aren't *requested* of the model — they're **enforced by the
18
- environment**: path-scoped rules, pre-write security hooks, and generation kept
19
- structurally separate from review.
13
+ MISHKAN turns Claude Code into a standing engineering organisation. Quality and security aren't requested from the model they're enforced by the environment: path-scoped rules, pre-write security hooks, structural separation of generation from review. The knowledge graph (Cognee) persists what you learn so sessions pick up where the last one stopped. A code-structure graph (Graphify) answers "who calls X, who depends on Y" at 88× less token cost than loading source files.
20
14
 
21
- It's personal, opinionated infrastructure built around one engineer's standards —
22
- and shared openly for anyone who wants to try working this way. To make it yours,
23
- replace one file (your profile) and re-sync; nothing else hardcodes the author.
15
+ It's personal, opinionated infrastructure built around one engineer's standards. To make it yours, replace `docs/engineer/profile.md` and re-sync nothing else hardcodes the author.
24
16
 
25
- > **Status:** v0.2.0early and evolving. The agent fleet, rules, hooks, and
26
- > installer are complete. The Cognee knowledge stack (work + curated stores) is
27
- > ready to bring up locally. Live observability (daemon + Textual TUI) ships as
28
- > an opt-in stack of two `uv tool install`-able Python packages.
17
+ > **v0.2.4** — agent fleet, rules, hooks, installer are stable. Cognee knowledge stack ready to bring up locally. Observability stack (watchd + TUI) available as two `uv tool`-installable packages.
29
18
 
30
19
  ---
31
20
 
32
- ## Three pillars
33
-
34
- MISHKAN rests on three things that work together. They are independent — you
35
- can use each without the others — but they compound:
36
-
37
- ### 1. A disciplined multi-agent organisation
38
-
39
- Most "AI coding" is one model in one chat doing everything at once — generating,
40
- judging its own output, skipping the spec, drifting scope. MISHKAN refuses that:
21
+ ## Install
41
22
 
42
- - **Sequence before code.** PRD SRS → Contract → Architecture → Threat model →
43
- Modeling → implementation. Agents won't jump to code without the upstream artifacts.
44
- - **Generation ≠ evaluation.** The agent that writes is never the agent that reviews.
45
- QA and reporters are structurally separate roles.
46
- - **Security & dependencies are first-class**, not an afterthought audit.
23
+ Requires Claude Code + Node 18.
47
24
 
48
- ### 2. Deterministic guardrails
25
+ ```bash
26
+ npx mishkan-harness install
27
+ mishkan status
28
+ mishkan observability # optional: daemon + TUI (needs uv)
29
+ ```
49
30
 
50
- Quality and security aren't *requested* of the model — they're **enforced by
51
- the environment**: path-scoped rules, pre-write security hooks, structural
52
- separation of generation from review. Secrets, injection, unsafe
53
- deserialization, disabled TLS, `:latest` tags, weak hashing — blocked by a
54
- hook *before* the write lands, not flagged after.
31
+ Full guide: [`docs/usage/01-installation.md`](docs/usage/01-installation.md).
55
32
 
56
- ### 3. A knowledge stack that grows
33
+ ## First session
57
34
 
58
- MISHKAN is built around **persisting what you learn**, so future sessions
59
- start where the last one stopped instead of from zero. Three complementary
60
- layers (see [D-008](docs/design/MISHKAN_decisions.md)):
35
+ ```bash
36
+ cd <project>
37
+ claude # starts in exploration mode — Nehemiah + Bezalel
38
+ /mishkan-init # scaffold: spec chain → docs/ → Cognee → Sprint S0
39
+ ```
61
40
 
62
- - **[Cognee work](payload/mishkan/cognee/) (`:7777`)** per-project semantic
63
- graph. ADRs, runbooks, decisions, resolved research — all ingested
64
- selectively, then queryable by any agent that hits an unknown.
65
- - **[Cognee curated](payload/mishkan/cognee/) (`:7730`)** — cross-project
66
- reference library. Read-mostly, seeded once, shared across every project on
67
- the host.
68
- - **[Graphify](https://github.com/safishamsi/graphify) (planned, D-008
69
- signed)** — deterministic code-structure graph for "who calls X, who depends
70
- on Y", complementing Cognee's semantic layer.
41
+ `/sprint-close` at a milestone. `/mishkan-resume` restores state next session. Details: [`docs/usage/02-project-init.md`](docs/usage/02-project-init.md).
71
42
 
72
- Plus a **live observability TUI** ([mishkan-watch](payload/mishkan/observability/))
73
- that shows every running agent, workflow, tool call, hook fire, token spend,
74
- and MCP/Cognee status — in real time, across every session, with no overload.
75
- See [`docs/design/MISHKAN_observability.md`](docs/design/MISHKAN_observability.md).
43
+ ---
76
44
 
77
45
  ## The teams
78
46
 
79
- Two orchestrators route everything: **Nehemiah** (PM — scope, delivery, sprint
80
- state) and **Bezalel** (CTO — architecture, standards, quality bar). Beneath them,
81
- six teams, each `Lead → Specialists → QA → Reporter`:
47
+ **Nehemiah** (PM — scope, delivery, sprint) and **Bezalel** (CTO — architecture, standards, quality bar) route everything. Six teams, each `Lead → Specialists → QA → Reporter`:
82
48
 
83
49
  | Team | Hebrew | Domain |
84
50
  |------|--------|--------|
@@ -89,168 +55,138 @@ six teams, each `Lead → Specialists → QA → Reporter`:
89
55
  | **Migdal** | *tower* | Infrastructure & ops |
90
56
  | **Sefer** | *scroll* | Documentation (pull-based) |
91
57
 
92
- A shared **research pipeline** (Jakin → Ezra → Caleb → Shaphan → Shemaiah →
93
- Baruch) is invokable by any agent that hits an unknown — clarify, formulate,
94
- research, summarise, evaluate, report — and every call is logged. Names and their
95
- biblical sources: [`docs/design/MISHKAN_agent_aliases.md`](docs/design/MISHKAN_agent_aliases.md).
58
+ A shared research pipeline (Jakin → Ezra → Caleb → Shaphan → Shemaiah → Baruch) is invokable by any agent that hits an unknown. All 45 names + biblical sources: [`docs/design/MISHKAN_agent_aliases.md`](docs/design/MISHKAN_agent_aliases.md).
96
59
 
97
- ## Install
60
+ ---
98
61
 
99
- Requires Claude Code and Node ≥ 18. The installer has **zero npm dependencies**.
62
+ ## Knowledge stack
100
63
 
101
- ```bash
102
- npx mishkan-harness install # or: node bin/mishkan.js install (from a clone)
103
- ```
64
+ Wired by `/mishkan-init` into each project's `.mcp.json`:
104
65
 
105
- Idempotent and non-destructive: it copies the harness into `~/.claude/mishkan`,
106
- symlinks agents/skills/commands for discovery, places a user-level `CLAUDE.md` and
107
- standards rule **only if absent**, and merges its hooks into `settings.json`
108
- without touching your existing hooks. Paths resolve from your home directory at
109
- install time — nothing machine-specific is baked in.
66
+ **Cognee** semantic knowledge graph. Per-project work store (`:7777`) + cross-project curated reference library (`:7730`). Docker-based, pinned, SOPS-managed secrets.
110
67
 
111
68
  ```bash
112
- npx mishkan-harness status # what's installed
113
- npx mishkan-harness observability # install/refresh just the daemon + TUI (needs `uv`)
114
- npx mishkan-harness uninstall # remove harness; keep your CLAUDE.md & rules
115
- npx mishkan-harness uninstall --purge # also remove the user-level rule
69
+ mishkan configure-knowledge # wizard: LLM provider + credentials + .env
70
+ cd ~/.claude/mishkan/cognee
71
+ docker compose -f docker-compose.yml -f docker-compose.hardening.yml up -d --build
72
+ ~/.claude/mishkan/scripts/seed-curated-library.sh
116
73
  ```
117
74
 
118
- The installer walks 7 phases with clear progress, asks once whether to install
119
- the observability stack at the end, and skips that step cleanly if `uv` isn't
120
- installed.
121
-
122
- ## A first session
123
-
124
- 1. Run `claude` anywhere. You're talking to **Nehemiah** and **Bezalel** in
125
- *exploration mode* — free conversation, no ceremony.
126
- 2. Think out loud. When intent is clear, run **`/mishkan-init`** to scaffold the
127
- project: the spec chain, `docs/`, a seeded knowledge graph, and Sprint S0.
128
- 3. Work the sprint. Every write is security-scanned; QA evaluates; reporters collect.
129
- 4. **`/sprint-close`** at a milestone. **`/mishkan-resume`** next session restores
130
- state and open blockers.
75
+ Guide: [`payload/mishkan/cognee/README.md`](payload/mishkan/cognee/README.md) · [`docs/usage/04-memory-layer.md`](docs/usage/04-memory-layer.md).
131
76
 
132
- ### Commands
77
+ **Graphify** — deterministic code-structure graph (D-008 + D-009). Indexes a project's full AST into a queryable graph. For structural questions ("who calls X", "what depends on Y") it costs ~1.8k tokens per query — 88× cheaper than loading the source tree. Runs as a PreToolUse advisory: before every structural Read or Grep, agents see a palette of four surfaces (Graphify, Cognee work, Cognee curated, literal content) with token costs and staleness signals so they pick the cheap path first. Auto-detected and wired by `/mishkan-init`.
133
78
 
134
- | Command | Does |
135
- |---|---|
136
- | `/mishkan-init` | Scaffold a project; begin Sprint S0 |
137
- | `/mishkan-resume` | Restore sprint state + blockers |
138
- | `/sprint-close` | Reporters → aggregate → docs pull → graph promote |
139
- | `/dep-audit` | Cross-project dependency & supply-chain audit |
140
- | `/promote` | Promote knowledge by blast radius |
141
- | `/sefer-pull` | Trigger a documentation pull |
79
+ ```bash
80
+ mishkan code-graph scan # build/refresh for the current project
81
+ mishkan code-graph status # node/edge count, last scan time
82
+ ```
142
83
 
143
- ## Make it yours
84
+ ## Observability
144
85
 
145
- The harness serves the engineer described in
146
- [`docs/engineer/profile.md`](docs/engineer/profile.md) — the single, replaceable
147
- source of truth. Swap in your own (keep the section structure), then:
86
+ Two Python packages (`uv tool`-installable): a daemon (`mishkan-watchd`) that tails every session's event bus and a Textual TUI (`mishkan-watch`) with 8 tabs — Live, Agents, Workflows, Knowledge, Activity, Org-Ref, Usage, Skills. Cross-session, cross-project, near-zero overhead.
148
87
 
149
88
  ```bash
150
- ~/.claude/mishkan/scripts/sync-profile.sh
89
+ mishkan observability # install both packages
90
+ mishkan-watch # opens TUI, auto-starts daemon if absent
91
+ mishkan-watchd start|stop|status # manual daemon control
151
92
  ```
152
93
 
153
- That refreshes the runtime copy and audits references. **Seraiah** (the docs
154
- org-layer agent) owns re-deriving anything drawn from it. See
155
- [`docs/engineer/README.md`](docs/engineer/README.md).
94
+ Guide + event schema: [`docs/design/MISHKAN_observability.md`](docs/design/MISHKAN_observability.md).
156
95
 
157
- ## Dependency & supply-chain
96
+ ## Workflows
158
97
 
159
- - **Before adopting any package**the `dependency-vetting` skill drives the
160
- research pipeline through OSV/NVD CVEs, maintenance health, typosquatting, and
161
- provenance, then gives a go/no-go.
162
- - **Across every project you own** — `/dep-audit` inventories all repos under your
163
- workspace (discovery-based, no hardcoded paths), aggregates shared CVEs and
164
- version drift, and produces a coordinated, vetted update plan.
98
+ Beyond the agents, MISHKAN ships dynamic JavaScript workflows that orchestrate multiple subagents in parallel fan-out/synthesize, pipeline, judge panel, adversarial verify, loop-until-X.
165
99
 
166
- ## Knowledge stack
100
+ **Org-level (10):** `mishkan-sprint-close`, `mishkan-deep-research`, `mishkan-codebase-audit`, `mishkan-migration-wave`, `mishkan-architecture-panel`, `mishkan-release-readiness`, `mishkan-init`, `mishkan-blast-radius`, `mishkan-knowledge-gap-discovery`, `mishkan-standards-rollout`.
167
101
 
168
- MISHKAN uses [Cognee](https://docs.cognee.ai) as its **two-store knowledge
169
- graph** that grows as you work. Cognee core is a Python library; the harness
170
- consumes it through the **`cognee-mcp`** server. Agents can still work without
171
- it — persistence is just deferred. Run the **cognee-quickstart** skill for
172
- guided setup, or the hardened Docker deployment under
173
- `~/.claude/mishkan/cognee/`:
102
+ **Team-level (8):** `chosheb-feature-ship`, `panim-ds-rollout`, `yasad-data-migration-wave`, `yasad-schema-evolution`, `mishmar-security-gate`, `migdal-infra-change`, `migdal-dr-drill`, `sefer-release-notes`.
174
103
 
175
- ```bash
176
- cd ~/.claude/mishkan/cognee
177
- cp .env.example .env # set LLM_API_KEY + COGNEE_MCP_REF (pinned), SOPS-managed
178
- docker compose -f docker-compose.yml -f docker-compose.hardening.yml up -d --build
179
- nc -z localhost 7777 && echo up
180
- ~/.claude/mishkan/scripts/seed-curated-library.sh # 96 curated references
181
- ```
104
+ Governed by hard caps (10 org + 4 per team) and PM+CTO co-ownership per ADR D-010. Catalogue + cost expectations: [`payload/mishkan/workflows/README.md`](payload/mishkan/workflows/README.md).
182
105
 
183
- Agents reach the work store at `http://localhost:7777/mcp` and the curated
184
- store at `:7730`, both seeded by `/mishkan-init` into each project's
185
- `.mcp.json`. The deployment is pinned, SOPS-managed, hardening-overlay on
186
- every recreate, `127.0.0.1`-bound. Full guide:
187
- [`payload/mishkan/cognee/README.md`](payload/mishkan/cognee/README.md).
106
+ ---
188
107
 
189
- ## Live observability (opt-in)
108
+ ## Slash commands (inside a Claude Code session)
190
109
 
191
- See **everything** that runs across your MISHKAN sessions in a single Textual
192
- TUI: active agents, workflows-in-flight, token spend ($), file changes, hook
193
- decisions, Cognee node counts, MCP server status. Cross-session,
194
- cross-project, near-zero overhead. Two `uv tool`-installable Python packages:
110
+ | Command | Purpose |
111
+ |---|---|
112
+ | `/mishkan-init` | Scaffold a project — spec chain, docs, Cognee, Sprint S0 |
113
+ | `/mishkan-resume` | Restore sprint state + open blockers |
114
+ | `/sprint-close` | Team reporters → aggregate → docs pull → graph promote |
115
+ | `/mishkan-org-reference` | Print the 45-agent org inline |
116
+ | `/code-graph status\|open\|scan` | Inspect / open / refresh Graphify graph |
117
+ | `/skills <task>` | Skill-discovery router (3-bucket result) |
118
+ | `/mishkan-skills-reindex` | Rebuild skill index from disk |
119
+ | `/mishkan-skills-misses` | Aggregate miss-log for threshold tuning |
120
+ | `/eval-baruch` | Run Baruch contract eval |
121
+ | `/dep-audit` | Cross-project dependency + supply-chain audit |
122
+ | `/promote` | Promote a learning into Cognee by blast radius |
123
+ | `/sefer-pull` | Trigger documentation pull |
124
+
125
+ ## CLI commands (from any terminal)
195
126
 
196
127
  ```bash
197
- # the installer offers this automatically; or run it standalone any time:
198
- npx mishkan-harness observability
199
-
200
- # then, in two tmux panes (or any two terminals):
201
- mishkan-watchd start # daemon aggregates the bus
202
- mishkan-watch # TUI client 5 tabs, status bar
128
+ mishkan help # full reference
129
+ mishkan install # install/refresh into ~/.claude
130
+ mishkan uninstall # remove harness (keeps CLAUDE.md + rules)
131
+ mishkan uninstall --purge # also remove y4nn-standards.md
132
+ mishkan configure-knowledge # wizard: LLM provider + Cognee .env
133
+ mishkan observability # install daemon + TUI only (needs uv)
134
+ mishkan status # install state, profile, version
135
+ mishkan org [--json] # print the 45-agent org
136
+ mishkan code-graph [status|open|scan] # inspect the project's Graphify graph
137
+ mishkan-watch # open observability TUI (auto-starts daemon)
138
+ mishkan-watch --no-autostart # TUI only, no daemon fork
139
+ mishkan-watchd start|stop|status # manual daemon lifecycle
203
140
  ```
204
141
 
205
- Full operator guide: [`docs/usage/10-observability.md`](docs/usage/10-observability.md).
206
- Design and event schema: [`docs/design/MISHKAN_observability.md`](docs/design/MISHKAN_observability.md).
142
+ ---
207
143
 
208
- ## Token & context management
144
+ ## Customisation
209
145
 
210
- MISHKAN doesn't replace Claude's context handling it **shapes the inputs** so
211
- the model's native behaviour works in your favour. Five mechanisms, each riding a
212
- Claude/Claude Code primitive:
146
+ The harness serves the engineer described in [`docs/engineer/profile.md`](docs/engineer/profile.md). Swap in your own (keep the section structure), then:
213
147
 
214
- - **Prompt caching** — agents are ordered *static role/standards/rules first,
215
- dynamic task last*, so the stable prefix caches and you pay full price only for
216
- what changes.
217
- - **Subagent isolation** — heavy work runs in disposable child windows; only
218
- summaries return, so the main thread stays lean (and disabling auto-compaction
219
- stays low-risk).
220
- - **Tight tool grants** & **path-scoped rules** — agents carry only the tool
221
- schemas and rules relevant to the file in hand.
222
- - **Cognee offloading** — full artifacts live in the graph; context holds
223
- summaries.
148
+ ```bash
149
+ ~/.claude/mishkan/scripts/sync-profile.sh
150
+ ```
224
151
 
225
- Model tiering is the complementary cost axis (`config/model-routing.yaml`): Opus
226
- for orchestration/leads, Sonnet for anything that writes code, Haiku for
227
- evaluate/collect/advise.
152
+ Refreshes the runtime copy and audits references. Nothing else hardcodes the author. See [`docs/engineer/README.md`](docs/engineer/README.md).
228
153
 
229
- → Full operational detail, the cost model, and honest gaps:
230
- [`docs/design/MISHKAN_token_optimisation.md`](docs/design/MISHKAN_token_optimisation.md).
154
+ ---
231
155
 
232
156
  ## Repository layout
233
157
 
234
158
  ```
235
159
  bin/mishkan.js installer (dependency-free)
236
- payload/ what gets installed into ~/.claude
160
+ payload/
237
161
  mishkan/ agents, skills, rules, hooks, commands, templates, config, scripts, ontology
238
162
  user/ user-level CLAUDE.md + standards rule (placed if absent)
239
163
  install/ hook fragment merged into settings.json
240
164
  docs/
241
- engineer/ the canonical, replaceable engineer profile
242
- design/
243
- MISHKAN_harness_design.md architecture (5 layers, 6 teams, knowledge model)
244
- MISHKAN_agent_aliases.md the 45 agents and their sources
245
- MISHKAN_decisions.md locked build decisions
246
- MISHKAN_ontology.md Cognee graph schema
247
- MISHKAN_token_optimisation.md how context/token use leverages Claude primitives
165
+ engineer/ canonical engineer profile (replaceable)
166
+ design/ architecture, decisions, ontology, token model, observability
167
+ usage/ 01-install 12-skill-discovery
248
168
  ```
249
169
 
250
- ## License
170
+ ---
251
171
 
252
- MIT use it, fork it, make it serve your own engineering.
172
+ ## Key design docs
173
+
174
+ | Doc | Covers |
175
+ |---|---|
176
+ | [Architecture](docs/design/MISHKAN_harness_design.md) | 5 layers, 6 teams, knowledge model |
177
+ | [Agent aliases](docs/design/MISHKAN_agent_aliases.md) | 45 agents + biblical sources |
178
+ | [Decisions](docs/design/MISHKAN_decisions.md) | Locked build decisions |
179
+ | [Cognee ontology](docs/design/MISHKAN_ontology.md) | Knowledge graph schema |
180
+ | [Token optimisation](docs/design/MISHKAN_token_optimisation.md) | Context cost model |
181
+ | [Observability](docs/design/MISHKAN_observability.md) | Daemon + TUI event schema |
182
+ | [Workflows](payload/mishkan/workflows/README.md) | Dynamic workflow catalogue |
183
+
184
+ Usage guides: [`docs/usage/`](docs/usage/).
253
185
 
254
186
  ---
255
187
 
188
+ ## License
189
+
190
+ MIT — use it, fork it, make it serve your own engineering.
191
+
256
192
  Built by **`>_theY4NN`** · [github.com/Y4NN777](https://github.com/Y4NN777)