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.
- package/README.md +108 -172
- package/bin/mishkan.js +677 -16
- package/docs/design/MISHKAN_decisions.md +450 -8
- package/docs/design/MISHKAN_harness_design.md +1 -33
- package/docs/design/MISHKAN_observability.md +13 -9
- package/docs/engineer/profile-readable.md +201 -0
- package/docs/engineer/profile.md +754 -0
- package/docs/research/graphify-token-saving-poc.md +108 -0
- package/docs/usage/09-workflows.md +74 -4
- package/docs/usage/10-observability.md +37 -13
- package/docs/usage/11-graphify.md +264 -0
- package/docs/usage/12-skill-discovery.md +294 -0
- package/docs/usage/README.md +5 -3
- package/package.json +1 -1
- package/payload/install/settings.hooks.json +24 -0
- package/payload/mishkan/AGENT_SPEC.md +25 -7
- package/payload/mishkan/agents/ahikam.md +4 -2
- package/payload/mishkan/agents/aholiab.md +4 -2
- package/payload/mishkan/agents/asaph.md +5 -2
- package/payload/mishkan/agents/baruch.md +19 -2
- package/payload/mishkan/agents/benaiah.md +4 -2
- package/payload/mishkan/agents/bezalel.md +4 -2
- package/payload/mishkan/agents/caleb.md +4 -2
- package/payload/mishkan/agents/deborah.md +4 -2
- package/payload/mishkan/agents/elasah.md +4 -2
- package/payload/mishkan/agents/eliashib.md +4 -2
- package/payload/mishkan/agents/ezra.md +4 -2
- package/payload/mishkan/agents/hanun.md +5 -2
- package/payload/mishkan/agents/hiram.md +5 -2
- package/payload/mishkan/agents/hizkiah.md +5 -2
- package/payload/mishkan/agents/huldah.md +4 -2
- package/payload/mishkan/agents/huram.md +4 -2
- package/payload/mishkan/agents/hushai.md +5 -2
- package/payload/mishkan/agents/igal.md +4 -2
- package/payload/mishkan/agents/ira.md +5 -2
- package/payload/mishkan/agents/jahaziel.md +5 -2
- package/payload/mishkan/agents/jakin.md +4 -2
- package/payload/mishkan/agents/jehonathan.md +5 -2
- package/payload/mishkan/agents/jehoshaphat.md +4 -2
- package/payload/mishkan/agents/joab.md +5 -2
- package/payload/mishkan/agents/joah.md +5 -2
- package/payload/mishkan/agents/maaseiah.md +4 -2
- package/payload/mishkan/agents/meremoth.md +5 -2
- package/payload/mishkan/agents/meshullam.md +5 -2
- package/payload/mishkan/agents/nathan.md +5 -2
- package/payload/mishkan/agents/nehemiah.md +4 -2
- package/payload/mishkan/agents/obed.md +4 -2
- package/payload/mishkan/agents/oholiab.md +5 -2
- package/payload/mishkan/agents/palal.md +5 -2
- package/payload/mishkan/agents/phinehas.md +4 -2
- package/payload/mishkan/agents/rehum.md +4 -2
- package/payload/mishkan/agents/salma.md +5 -2
- package/payload/mishkan/agents/seraiah.md +4 -2
- package/payload/mishkan/agents/shallum.md +5 -2
- package/payload/mishkan/agents/shaphan.md +4 -2
- package/payload/mishkan/agents/shemaiah.md +4 -2
- package/payload/mishkan/agents/shevna.md +5 -2
- package/payload/mishkan/agents/uriah.md +5 -2
- package/payload/mishkan/agents/zaccur.md +4 -2
- package/payload/mishkan/agents/zadok.md +5 -2
- package/payload/mishkan/agents/zerubbabel.md +4 -2
- package/payload/mishkan/commands/code-graph.md +35 -0
- package/payload/mishkan/commands/eval-baruch.md +57 -0
- package/payload/mishkan/commands/mishkan-org-reference.md +58 -0
- package/payload/mishkan/commands/mishkan-resume.md +19 -5
- package/payload/mishkan/commands/mishkan-skills-misses.md +47 -0
- package/payload/mishkan/commands/mishkan-skills-reindex.md +33 -0
- package/payload/mishkan/commands/skills.md +35 -0
- package/payload/mishkan/commands/sprint-close.md +3 -1
- package/payload/mishkan/hooks/pre-tool-knowledge-route.sh +231 -0
- package/payload/mishkan/hooks/pre-tool-task-skill-route.sh +122 -0
- package/payload/mishkan/hooks/session-start-skill-index.sh +35 -0
- package/payload/mishkan/observability/schema.json +1 -1
- package/payload/mishkan/observability/watch/src/mishkan_watch/__main__.py +84 -2
- package/payload/mishkan/observability/watch/src/mishkan_watch/app.py +64 -3
- package/payload/mishkan/observability/watch/src/mishkan_watch/org_data.py +79 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/skills_data.py +267 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/agents.py +33 -1
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/knowledge.py +118 -9
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/live.py +102 -2
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/org.py +139 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/skills.py +187 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/usage.py +377 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/workflows.py +199 -27
- package/payload/mishkan/observability/watch/src/mishkan_watch/theme.tcss +78 -4
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/__main__.py +36 -6
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/bus_tail.py +16 -3
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/graphify_tail.py +220 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/worktree_poll.py +13 -2
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/state.py +157 -3
- package/payload/mishkan/observability/watchd/tests/test_state.py +6 -2
- package/payload/mishkan/org/org.json +141 -0
- package/payload/mishkan/scripts/pre-commit-eval-gate.sh +50 -0
- package/payload/mishkan/scripts/skill-discovery-indexer.py +462 -0
- package/payload/mishkan/scripts/skill-discovery-misses.py +173 -0
- package/payload/mishkan/scripts/skill-discovery-router.py +457 -0
- package/payload/mishkan/scripts/skill-discovery-smoke.sh +156 -0
- package/payload/mishkan/skills/graphify-query-craft/SKILL.md +162 -0
- package/payload/mishkan/skills/mishkan-init/SKILL.md +15 -0
- package/payload/mishkan/skills/skill-discovery/SKILL.md +120 -0
- package/payload/mishkan/templates/case-node.schema.json +1 -0
- package/payload/mishkan/templates/observability-log.schema.json +1 -0
- package/payload/mishkan/workflows/README.md +78 -13
- package/payload/mishkan/workflows/chosheb-feature-ship.js +75 -0
- package/payload/mishkan/workflows/migdal-dr-drill.js +94 -0
- package/payload/mishkan/workflows/migdal-infra-change.js +67 -0
- package/payload/mishkan/workflows/mishkan-blast-radius.js +144 -0
- package/payload/mishkan/workflows/mishkan-init.js +58 -0
- package/payload/mishkan/workflows/mishkan-knowledge-gap-discovery.js +121 -0
- package/payload/mishkan/workflows/mishkan-standards-rollout.js +153 -0
- package/payload/mishkan/workflows/mishmar-security-gate.js +83 -0
- package/payload/mishkan/workflows/panim-ds-rollout.js +83 -0
- package/payload/mishkan/workflows/sefer-release-notes.js +85 -0
- package/payload/mishkan/workflows/yasad-data-migration-wave.js +78 -0
- package/payload/mishkan/workflows/yasad-schema-evolution.js +76 -0
- 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
|
|
5
|
+
**A personal SWE R&D harness that lives inside Claude Code.**
|
|
6
6
|
|
|
7
|
-
|
|
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
|
|
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
|
-
> **
|
|
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
|
-
##
|
|
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
|
-
|
|
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
|
-
|
|
25
|
+
```bash
|
|
26
|
+
npx mishkan-harness install
|
|
27
|
+
mishkan status
|
|
28
|
+
mishkan observability # optional: daemon + TUI (needs uv)
|
|
29
|
+
```
|
|
49
30
|
|
|
50
|
-
|
|
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
|
-
|
|
33
|
+
## First session
|
|
57
34
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
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
|
-
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
60
|
+
---
|
|
98
61
|
|
|
99
|
-
|
|
62
|
+
## Knowledge stack
|
|
100
63
|
|
|
101
|
-
|
|
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
|
-
|
|
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
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
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
|
-
##
|
|
84
|
+
## Observability
|
|
144
85
|
|
|
145
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
##
|
|
96
|
+
## Workflows
|
|
158
97
|
|
|
159
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
##
|
|
108
|
+
## Slash commands (inside a Claude Code session)
|
|
190
109
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
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
|
-
#
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
mishkan-
|
|
202
|
-
mishkan
|
|
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
|
-
|
|
206
|
-
Design and event schema: [`docs/design/MISHKAN_observability.md`](docs/design/MISHKAN_observability.md).
|
|
142
|
+
---
|
|
207
143
|
|
|
208
|
-
##
|
|
144
|
+
## Customisation
|
|
209
145
|
|
|
210
|
-
|
|
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
|
-
|
|
215
|
-
|
|
216
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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/
|
|
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/
|
|
242
|
-
design/
|
|
243
|
-
|
|
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
|
-
|
|
170
|
+
---
|
|
251
171
|
|
|
252
|
-
|
|
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)
|