mishkan-harness 0.1.0 → 0.2.3
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 +121 -134
- package/bin/mishkan.js +810 -26
- package/docs/design/MISHKAN_decisions.md +842 -0
- package/docs/design/MISHKAN_harness_design.md +1 -33
- package/docs/design/MISHKAN_observability.md +1027 -0
- package/docs/research/graphify-token-saving-poc.md +108 -0
- package/docs/usage/01-installation.md +40 -12
- package/docs/usage/09-workflows.md +74 -4
- package/docs/usage/10-observability.md +173 -0
- package/docs/usage/11-graphify.md +264 -0
- package/docs/usage/12-skill-discovery.md +294 -0
- package/docs/usage/README.md +5 -2
- package/package.json +1 -1
- package/payload/install/settings.hooks.json +33 -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-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/model-route.py +32 -0
- package/payload/mishkan/hooks/post-tool-observe.sh +222 -14
- package/payload/mishkan/hooks/pre-tool-knowledge-route.sh +231 -0
- package/payload/mishkan/hooks/pre-tool-security.sh +16 -0
- package/payload/mishkan/hooks/pre-tool-task-skill-route.sh +122 -0
- package/payload/mishkan/hooks/pre-tool-trace.sh +43 -0
- package/payload/mishkan/hooks/session-start-skill-index.sh +35 -0
- package/payload/mishkan/observability/README.md +100 -0
- package/payload/mishkan/observability/bus.py +89 -0
- package/payload/mishkan/observability/bus.sh +117 -0
- package/payload/mishkan/observability/schema.json +209 -0
- package/payload/mishkan/observability/usage_parser.py +211 -0
- package/payload/mishkan/observability/watch/README.md +62 -0
- package/payload/mishkan/observability/watch/pyproject.toml +22 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/__init__.py +3 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/__main__.py +111 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/app.py +296 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/client.py +134 -0
- 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/__init__.py +1 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/activity.py +100 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/agents.py +310 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/knowledge.py +297 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/live.py +407 -0
- 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 +361 -0
- package/payload/mishkan/observability/watch/src/mishkan_watch/theme.tcss +328 -0
- package/payload/mishkan/observability/watchd/README.md +59 -0
- package/payload/mishkan/observability/watchd/pyproject.toml +23 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/__init__.py +3 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/__main__.py +260 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/lifecycle.py +68 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/server.py +134 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/__init__.py +6 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/bus_tail.py +110 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/cognee_poll.py +228 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/graphify_tail.py +220 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/mcp_probe.py +230 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/session_discover.py +74 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/session_tail.py +161 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/subagent_tail.py +195 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/worktree_poll.py +118 -0
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/state.py +442 -0
- package/payload/mishkan/observability/watchd/tests/test_state.py +81 -0
- 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,54 +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
|
-
> The agent fleet, rules, hooks, and installer are complete; the Cognee knowledge
|
|
27
|
-
> graph is opt-in (bring up a local container) and some integration points are
|
|
28
|
-
> marked as such below.
|
|
17
|
+
> **v0.2.1** — 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
|
-
##
|
|
21
|
+
## Install
|
|
22
|
+
|
|
23
|
+
Requires Claude Code + Node ≥ 18.
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npx mishkan-harness install
|
|
27
|
+
mishkan status
|
|
28
|
+
mishkan observability # optional: daemon + TUI (needs uv)
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Full guide: [`docs/usage/01-installation.md`](docs/usage/01-installation.md).
|
|
33
32
|
|
|
34
|
-
|
|
35
|
-
judging its own output, skipping the spec, drifting scope. MISHKAN refuses that:
|
|
33
|
+
## First session
|
|
36
34
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
(Cognee) that grows through use.
|
|
35
|
+
```bash
|
|
36
|
+
cd <project>
|
|
37
|
+
claude # starts in exploration mode — Nehemiah + Bezalel
|
|
38
|
+
/mishkan-init # scaffold: spec chain → docs/ → Cognee → Sprint S0
|
|
39
|
+
```
|
|
40
|
+
|
|
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).
|
|
42
|
+
|
|
43
|
+
---
|
|
47
44
|
|
|
48
45
|
## The teams
|
|
49
46
|
|
|
50
|
-
|
|
51
|
-
state) and **Bezalel** (CTO — architecture, standards, quality bar). Beneath them,
|
|
52
|
-
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`:
|
|
53
48
|
|
|
54
49
|
| Team | Hebrew | Domain |
|
|
55
50
|
|------|--------|--------|
|
|
@@ -60,146 +55,138 @@ six teams, each `Lead → Specialists → QA → Reporter`:
|
|
|
60
55
|
| **Migdal** | *tower* | Infrastructure & ops |
|
|
61
56
|
| **Sefer** | *scroll* | Documentation (pull-based) |
|
|
62
57
|
|
|
63
|
-
A shared
|
|
64
|
-
Baruch) is invokable by any agent that hits an unknown — clarify, formulate,
|
|
65
|
-
research, summarise, evaluate, report — and every call is logged. Names and their
|
|
66
|
-
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).
|
|
67
59
|
|
|
68
|
-
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Knowledge stack
|
|
63
|
+
|
|
64
|
+
Wired by `/mishkan-init` into each project's `.mcp.json`:
|
|
69
65
|
|
|
70
|
-
|
|
66
|
+
**Cognee** — semantic knowledge graph. Per-project work store (`:7777`) + cross-project curated reference library (`:7730`). Docker-based, pinned, SOPS-managed secrets.
|
|
71
67
|
|
|
72
68
|
```bash
|
|
73
|
-
|
|
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
|
|
74
73
|
```
|
|
75
74
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
without touching your existing hooks. Paths resolve from your home directory at
|
|
80
|
-
install time — nothing machine-specific is baked in.
|
|
75
|
+
Guide: [`payload/mishkan/cognee/README.md`](payload/mishkan/cognee/README.md) · [`docs/usage/04-memory-layer.md`](docs/usage/04-memory-layer.md).
|
|
76
|
+
|
|
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`.
|
|
81
78
|
|
|
82
79
|
```bash
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
npx mishkan-harness uninstall --purge # also remove the user-level rule
|
|
80
|
+
mishkan code-graph scan # build/refresh for the current project
|
|
81
|
+
mishkan code-graph status # node/edge count, last scan time
|
|
86
82
|
```
|
|
87
83
|
|
|
88
|
-
##
|
|
84
|
+
## Observability
|
|
89
85
|
|
|
90
|
-
|
|
91
|
-
*exploration mode* — free conversation, no ceremony.
|
|
92
|
-
2. Think out loud. When intent is clear, run **`/mishkan-init`** to scaffold the
|
|
93
|
-
project: the spec chain, `docs/`, a seeded knowledge graph, and Sprint S0.
|
|
94
|
-
3. Work the sprint. Every write is security-scanned; QA evaluates; reporters collect.
|
|
95
|
-
4. **`/sprint-close`** at a milestone. **`/mishkan-resume`** next session restores
|
|
96
|
-
state and open blockers.
|
|
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.
|
|
97
87
|
|
|
98
|
-
|
|
88
|
+
```bash
|
|
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
|
|
92
|
+
```
|
|
99
93
|
|
|
100
|
-
|
|
101
|
-
|---|---|
|
|
102
|
-
| `/mishkan-init` | Scaffold a project; begin Sprint S0 |
|
|
103
|
-
| `/mishkan-resume` | Restore sprint state + blockers |
|
|
104
|
-
| `/sprint-close` | Reporters → aggregate → docs pull → graph promote |
|
|
105
|
-
| `/dep-audit` | Cross-project dependency & supply-chain audit |
|
|
106
|
-
| `/promote` | Promote knowledge by blast radius |
|
|
107
|
-
| `/sefer-pull` | Trigger a documentation pull |
|
|
94
|
+
Guide + event schema: [`docs/design/MISHKAN_observability.md`](docs/design/MISHKAN_observability.md).
|
|
108
95
|
|
|
109
|
-
##
|
|
96
|
+
## Workflows
|
|
110
97
|
|
|
111
|
-
|
|
112
|
-
[`docs/engineer/profile.md`](docs/engineer/profile.md) — the single, replaceable
|
|
113
|
-
source of truth. Swap in your own (keep the section structure), then:
|
|
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.
|
|
114
99
|
|
|
115
|
-
|
|
116
|
-
~/.claude/mishkan/scripts/sync-profile.sh
|
|
117
|
-
```
|
|
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`.
|
|
118
101
|
|
|
119
|
-
|
|
120
|
-
org-layer agent) owns re-deriving anything drawn from it. See
|
|
121
|
-
[`docs/engineer/README.md`](docs/engineer/README.md).
|
|
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`.
|
|
122
103
|
|
|
123
|
-
|
|
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).
|
|
124
105
|
|
|
125
|
-
|
|
126
|
-
research pipeline through OSV/NVD CVEs, maintenance health, typosquatting, and
|
|
127
|
-
provenance, then gives a go/no-go.
|
|
128
|
-
- **Across every project you own** — `/dep-audit` inventories all repos under your
|
|
129
|
-
workspace (discovery-based, no hardcoded paths), aggregates shared CVEs and
|
|
130
|
-
version drift, and produces a coordinated, vetted update plan.
|
|
106
|
+
---
|
|
131
107
|
|
|
132
|
-
##
|
|
108
|
+
## Slash commands (inside a Claude Code session)
|
|
133
109
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
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)
|
|
140
126
|
|
|
141
127
|
```bash
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
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
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Customisation
|
|
145
|
+
|
|
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:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
~/.claude/mishkan/scripts/sync-profile.sh
|
|
147
150
|
```
|
|
148
151
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
pinned `Dockerfile` (no `:latest`), SOPS secrets, hardening overlay on every
|
|
153
|
-
recreate, `127.0.0.1`-bound. Pin `COGNEE_MCP_REF` to a release and confirm details
|
|
154
|
-
against [Cognee's docs](https://docs.cognee.ai/cognee-mcp/mcp-local-setup).
|
|
155
|
-
Full guide: [`payload/mishkan/cognee/README.md`](payload/mishkan/cognee/README.md).
|
|
156
|
-
|
|
157
|
-
## Token & context management
|
|
158
|
-
|
|
159
|
-
MISHKAN doesn't replace Claude's context handling — it **shapes the inputs** so
|
|
160
|
-
the model's native behaviour works in your favour. Five mechanisms, each riding a
|
|
161
|
-
Claude/Claude Code primitive:
|
|
162
|
-
|
|
163
|
-
- **Prompt caching** — agents are ordered *static role/standards/rules first,
|
|
164
|
-
dynamic task last*, so the stable prefix caches and you pay full price only for
|
|
165
|
-
what changes.
|
|
166
|
-
- **Subagent isolation** — heavy work runs in disposable child windows; only
|
|
167
|
-
summaries return, so the main thread stays lean (and disabling auto-compaction
|
|
168
|
-
stays low-risk).
|
|
169
|
-
- **Tight tool grants** & **path-scoped rules** — agents carry only the tool
|
|
170
|
-
schemas and rules relevant to the file in hand.
|
|
171
|
-
- **Cognee offloading** — full artifacts live in the graph; context holds
|
|
172
|
-
summaries.
|
|
173
|
-
|
|
174
|
-
Model tiering is the complementary cost axis (`config/model-routing.yaml`): Opus
|
|
175
|
-
for orchestration/leads, Sonnet for anything that writes code, Haiku for
|
|
176
|
-
evaluate/collect/advise.
|
|
177
|
-
|
|
178
|
-
→ Full operational detail, the cost model, and honest gaps:
|
|
179
|
-
[`docs/design/MISHKAN_token_optimisation.md`](docs/design/MISHKAN_token_optimisation.md).
|
|
152
|
+
Refreshes the runtime copy and audits references. Nothing else hardcodes the author. See [`docs/engineer/README.md`](docs/engineer/README.md).
|
|
153
|
+
|
|
154
|
+
---
|
|
180
155
|
|
|
181
156
|
## Repository layout
|
|
182
157
|
|
|
183
158
|
```
|
|
184
159
|
bin/mishkan.js installer (dependency-free)
|
|
185
|
-
payload/
|
|
160
|
+
payload/
|
|
186
161
|
mishkan/ agents, skills, rules, hooks, commands, templates, config, scripts, ontology
|
|
187
162
|
user/ user-level CLAUDE.md + standards rule (placed if absent)
|
|
188
163
|
install/ hook fragment merged into settings.json
|
|
189
164
|
docs/
|
|
190
|
-
engineer/
|
|
191
|
-
design/
|
|
192
|
-
|
|
193
|
-
MISHKAN_agent_aliases.md the 45 agents and their sources
|
|
194
|
-
MISHKAN_decisions.md locked build decisions
|
|
195
|
-
MISHKAN_ontology.md Cognee graph schema
|
|
196
|
-
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
|
|
197
168
|
```
|
|
198
169
|
|
|
199
|
-
|
|
170
|
+
---
|
|
200
171
|
|
|
201
|
-
|
|
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/).
|
|
202
185
|
|
|
203
186
|
---
|
|
204
187
|
|
|
188
|
+
## License
|
|
189
|
+
|
|
190
|
+
MIT — use it, fork it, make it serve your own engineering.
|
|
191
|
+
|
|
205
192
|
Built by **`>_theY4NN`** · [github.com/Y4NN777](https://github.com/Y4NN777)
|