mishkan-harness 0.2.6 → 0.2.7
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 +49 -11
- package/bin/mishkan.js +562 -79
- package/docs/design/MISHKAN_decisions.md +398 -8
- package/docs/design/MISHKAN_observability.md +8 -8
- package/docs/engineer/profile-readable.md +201 -0
- package/docs/engineer/profile.md +754 -0
- package/docs/usage/01-installation.md +22 -8
- package/docs/usage/02-project-init.md +30 -13
- package/docs/usage/03-orchestration.md +46 -7
- package/docs/usage/04-memory-layer.md +135 -69
- package/docs/usage/06-llm-providers.md +2 -1
- package/docs/usage/07-troubleshooting.md +23 -0
- package/docs/usage/08-glossary.md +12 -3
- package/docs/usage/09-workflows.md +15 -3
- package/docs/usage/10-observability.md +3 -3
- package/docs/usage/11-graphify.md +38 -18
- package/docs/usage/12-cli.md +87 -0
- package/docs/usage/12-skill-discovery.md +11 -0
- package/docs/usage/README.md +35 -19
- package/package.json +1 -1
- package/payload/mishkan/AGENT_SPEC.md +3 -1
- package/payload/mishkan/agents/ahikam.md +3 -1
- package/payload/mishkan/agents/aholiab.md +3 -1
- package/payload/mishkan/agents/asaph.md +3 -1
- package/payload/mishkan/agents/baruch.md +8 -1
- package/payload/mishkan/agents/benaiah.md +3 -1
- package/payload/mishkan/agents/bezalel.md +3 -1
- package/payload/mishkan/agents/caleb.md +3 -1
- package/payload/mishkan/agents/deborah.md +3 -1
- package/payload/mishkan/agents/elasah.md +3 -1
- package/payload/mishkan/agents/eliashib.md +3 -1
- package/payload/mishkan/agents/ezra.md +3 -1
- package/payload/mishkan/agents/hanun.md +3 -1
- package/payload/mishkan/agents/hiram.md +3 -1
- package/payload/mishkan/agents/hizkiah.md +3 -1
- package/payload/mishkan/agents/huldah.md +3 -1
- package/payload/mishkan/agents/huram.md +3 -1
- package/payload/mishkan/agents/hushai.md +3 -1
- package/payload/mishkan/agents/igal.md +3 -1
- package/payload/mishkan/agents/ira.md +3 -1
- package/payload/mishkan/agents/jahaziel.md +3 -1
- package/payload/mishkan/agents/jakin.md +3 -1
- package/payload/mishkan/agents/jehonathan.md +3 -1
- package/payload/mishkan/agents/jehoshaphat.md +3 -1
- package/payload/mishkan/agents/joab.md +3 -1
- package/payload/mishkan/agents/joah.md +3 -1
- package/payload/mishkan/agents/maaseiah.md +3 -1
- package/payload/mishkan/agents/meremoth.md +3 -1
- package/payload/mishkan/agents/meshullam.md +3 -1
- package/payload/mishkan/agents/nathan.md +3 -1
- package/payload/mishkan/agents/nehemiah.md +3 -1
- package/payload/mishkan/agents/obed.md +3 -1
- package/payload/mishkan/agents/oholiab.md +3 -1
- package/payload/mishkan/agents/palal.md +3 -1
- package/payload/mishkan/agents/phinehas.md +3 -1
- package/payload/mishkan/agents/rehum.md +3 -1
- package/payload/mishkan/agents/salma.md +3 -1
- package/payload/mishkan/agents/seraiah.md +3 -1
- package/payload/mishkan/agents/shallum.md +3 -1
- package/payload/mishkan/agents/shaphan.md +3 -1
- package/payload/mishkan/agents/shemaiah.md +6 -1
- package/payload/mishkan/agents/shevna.md +3 -1
- package/payload/mishkan/agents/uriah.md +3 -1
- package/payload/mishkan/agents/zaccur.md +3 -1
- package/payload/mishkan/agents/zadok.md +3 -1
- package/payload/mishkan/agents/zerubbabel.md +3 -1
- package/payload/mishkan/cognee/.env.example +11 -0
- package/payload/mishkan/cognee/Dockerfile +20 -0
- package/payload/mishkan/cognee/README.md +34 -14
- package/payload/mishkan/cognee/docker-compose.curated.yml +33 -6
- package/payload/mishkan/cognee/docker-compose.selfhosted.yml +35 -5
- package/payload/mishkan/cognee/docker-compose.work.yml +191 -0
- package/payload/mishkan/cognee/docker-compose.yml +18 -3
- package/payload/mishkan/cognee/patches/cognee-mcp-core-align.py +72 -0
- package/payload/mishkan/cognee/patches/cognee-mcp-recall-user.py +82 -0
- package/payload/mishkan/cognee/promote-curated.py +77 -0
- package/payload/mishkan/cognee/prune-store.py +23 -0
- package/payload/mishkan/commands/mishkan-init.md +4 -1
- package/payload/mishkan/commands/mishkan-org-reference.md +2 -2
- package/payload/mishkan/config/curated-library.yaml +1 -0
- package/payload/mishkan/config/model-routing.yaml +23 -14
- package/payload/mishkan/evals/baruch/fixtures/invalid/bad-curated-candidate.json +22 -0
- package/payload/mishkan/evals/baruch/fixtures/valid/resolved-curated-candidate.json +23 -0
- package/payload/mishkan/hooks/model-route.py +14 -1
- package/payload/mishkan/observability/usage_parser.py +1 -0
- package/payload/mishkan/observability/watch/pyproject.toml +1 -1
- package/payload/mishkan/observability/watch/src/mishkan_watch/__main__.py +78 -21
- package/payload/mishkan/observability/watch/src/mishkan_watch/app.py +56 -3
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/knowledge.py +76 -5
- package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/workflows.py +22 -1
- package/payload/mishkan/observability/watchd/pyproject.toml +1 -1
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/__main__.py +35 -7
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/server.py +102 -8
- package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/cognee_poll.py +136 -49
- package/payload/mishkan/ontology.md +8 -1
- package/payload/mishkan/ontology.ttl +188 -0
- package/payload/mishkan/scripts/ensure-work-store.sh +230 -0
- package/payload/mishkan/scripts/mishkan-ingest.sh +49 -3
- package/payload/mishkan/scripts/promote-curated.sh +77 -0
- package/payload/mishkan/scripts/reset-knowledge-data.sh +70 -0
- package/payload/mishkan/scripts/validate-research-log.sh +27 -0
- package/payload/mishkan/skills/baruch-research-reporting-craft/SKILL.md +42 -8
- package/payload/mishkan/skills/cognee-promote/SKILL.md +13 -0
- package/payload/mishkan/skills/cognee-quickstart/SKILL.md +7 -1
- package/payload/mishkan/skills/ezra-research-formulation-craft/SKILL.md +9 -0
- package/payload/mishkan/skills/mishkan-ingest/SKILL.md +22 -0
- package/payload/mishkan/skills/mishkan-init/SKILL.md +31 -19
- package/payload/mishkan/skills/shemaiah-evaluation-craft/SKILL.md +33 -5
- package/payload/mishkan/skills/team-lead-craft/SKILL.md +66 -0
- package/payload/mishkan/templates/mcp.json +7 -2
- package/payload/mishkan/templates/observability-log.schema.json +1 -1
- package/payload/mishkan/templates/research-log.schema.json +15 -1
- package/payload/mishkan/workflows/README.md +19 -13
- package/payload/mishkan/workflows/chosheb-feature-ship.js +63 -18
- package/payload/mishkan/workflows/migdal-dr-drill.js +4 -0
- package/payload/mishkan/workflows/migdal-infra-change.js +48 -7
- package/payload/mishkan/workflows/mishkan-architecture-panel.js +4 -0
- package/payload/mishkan/workflows/mishkan-blast-radius.js +4 -0
- package/payload/mishkan/workflows/mishkan-codebase-audit.js +4 -0
- package/payload/mishkan/workflows/mishkan-deep-research.js +4 -0
- package/payload/mishkan/workflows/mishkan-init.js +4 -0
- package/payload/mishkan/workflows/mishkan-knowledge-gap-discovery.js +4 -0
- package/payload/mishkan/workflows/mishkan-migration-wave.js +4 -0
- package/payload/mishkan/workflows/mishkan-release-readiness.js +4 -0
- package/payload/mishkan/workflows/mishkan-sprint-close.js +4 -0
- package/payload/mishkan/workflows/mishkan-standards-rollout.js +4 -0
- package/payload/mishkan/workflows/mishmar-security-gate.js +45 -6
- package/payload/mishkan/workflows/panim-ds-rollout.js +4 -0
- package/payload/mishkan/workflows/panim-feature-ship.js +132 -0
- package/payload/mishkan/workflows/sefer-release-notes.js +4 -0
- package/payload/mishkan/workflows/yasad-data-migration-wave.js +4 -0
- package/payload/mishkan/workflows/yasad-feature-ship.js +130 -0
- package/payload/mishkan/workflows/yasad-schema-evolution.js +4 -0
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ MISHKAN turns Claude Code into a standing engineering organisation. Quality and
|
|
|
14
14
|
|
|
15
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.
|
|
16
16
|
|
|
17
|
-
> **v0.2.
|
|
17
|
+
> **v0.2.7** — agent fleet, rules, hooks, installer stable. Unified semantic `mishkan <object> <verb>` CLI (D-015) with engineer-gated curated promotion (`knowledge curate`, D-016), user-editable model-tier routing (`model`, D-017), and a confirm-gated `knowledge reset`. Cognee knowledge stack (per-project work · memory `:7777` · curated `:7730`) + Graphify code graph. Observability stack (watchd + TUI) as two `uv tool`-installable packages.
|
|
18
18
|
|
|
19
19
|
---
|
|
20
20
|
|
|
@@ -25,7 +25,7 @@ Requires Claude Code + Node ≥ 18.
|
|
|
25
25
|
```bash
|
|
26
26
|
npx mishkan-harness install
|
|
27
27
|
mishkan status
|
|
28
|
-
mishkan observability
|
|
28
|
+
mishkan observability install # optional: daemon + TUI (needs uv)
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
Full guide: [`docs/usage/01-installation.md`](docs/usage/01-installation.md).
|
|
@@ -46,6 +46,43 @@ claude # starts in exploration mode — Nehemiah + Bezalel
|
|
|
46
46
|
|
|
47
47
|
**Nehemiah** (PM — scope, delivery, sprint) and **Bezalel** (CTO — architecture, standards, quality bar) route everything. Six teams, each `Lead → Specialists → QA → Reporter`:
|
|
48
48
|
|
|
49
|
+
```mermaid
|
|
50
|
+
flowchart TD
|
|
51
|
+
You(["You · the engineer"]) -->|talk| MS[["MAIN SESSION = leadership<br/>Nehemiah · PM + Bezalel · CTO<br/>the one orchestrator — delegates one level deep, then synthesises"]]
|
|
52
|
+
|
|
53
|
+
MS -->|Task| CH["Chosheb<br/>Design / UX"]
|
|
54
|
+
MS -->|Task| PA["Panim<br/>Frontend"]
|
|
55
|
+
MS -->|Task| YA["Yasad<br/>Backend & data"]
|
|
56
|
+
MS -->|Task| MI["Migdal<br/>Infrastructure"]
|
|
57
|
+
MS -->|Task| SE["Sefer<br/>Documentation"]
|
|
58
|
+
MS -->|Task| RP["Research pipeline<br/>Jakin → Ezra → Caleb → Shaphan → Shemaiah → Baruch"]
|
|
59
|
+
|
|
60
|
+
MM["Mishmar · Security<br/>cross-cutting — gates every team"]
|
|
61
|
+
MM -. gates .-> CH
|
|
62
|
+
MM -. gates .-> PA
|
|
63
|
+
MM -. gates .-> YA
|
|
64
|
+
MM -. gates .-> MI
|
|
65
|
+
MM -. gates .-> SE
|
|
66
|
+
|
|
67
|
+
MS -. reads / writes .-> KN
|
|
68
|
+
subgraph KN["Knowledge — 4 surfaces"]
|
|
69
|
+
direction LR
|
|
70
|
+
GFY[("Graphify<br/>code structure · per-project")]
|
|
71
|
+
WORK[("cognee work<br/>per-project · isolated")]
|
|
72
|
+
MEM[("cognee-memory :7777<br/>session memory · shared")]
|
|
73
|
+
CUR[("cognee-curated :7730<br/>reference library · shared")]
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
MS -. stateful ops stay yours .-> HANDS["your hands<br/>git push · prod · schema migrations"]
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
*One leadership session (Nehemiah + Bezalel) delegates one level deep to the six teams + the
|
|
80
|
+
research pipeline, then synthesises. Within each team: `Lead → Specialists → QA → Reporter`
|
|
81
|
+
(QA & Reporter structurally separate — no agent grades its own work). Mishmar's security gate
|
|
82
|
+
crosses every team. It reads/writes four knowledge surfaces, and **stateful operations — `git
|
|
83
|
+
push`, production, schema migrations — stay in your hands** (the asymmetric AI/human boundary).
|
|
84
|
+
Diagrams render on GitHub.*
|
|
85
|
+
|
|
49
86
|
| Team | Hebrew | Domain |
|
|
50
87
|
|------|--------|--------|
|
|
51
88
|
| **Chosheb** | *cunning work* | Design & UX |
|
|
@@ -63,13 +100,11 @@ A shared research pipeline (Jakin → Ezra → Caleb → Shaphan → Shemaiah
|
|
|
63
100
|
|
|
64
101
|
Wired by `/mishkan-init` into each project's `.mcp.json`:
|
|
65
102
|
|
|
66
|
-
**Cognee** — semantic knowledge graph. Per-project work store (`:7777`) + cross-project curated reference library (`:7730`). Docker-based, pinned, SOPS-managed secrets.
|
|
103
|
+
**Cognee** — semantic knowledge graph. Per-project isolated work store (own port, Ladybug) + shared session memory (`cognee-memory`, `:7777`) + cross-project curated reference library (`cognee-curated`, `:7730`). Docker-based, pinned, SOPS-managed secrets. Three pillars wired per project by `/mishkan-init` (D-007 + D-012).
|
|
67
104
|
|
|
68
105
|
```bash
|
|
69
|
-
mishkan configure
|
|
70
|
-
|
|
71
|
-
docker compose -f docker-compose.yml -f docker-compose.hardening.yml up -d --build
|
|
72
|
-
~/.claude/mishkan/scripts/seed-curated-library.sh
|
|
106
|
+
mishkan knowledge configure # wizard: LLM provider + credentials + .env
|
|
107
|
+
mishkan knowledge-stack up # memory :7777 + curated :7730 (guided; preflights config, seeds curated)
|
|
73
108
|
```
|
|
74
109
|
|
|
75
110
|
Guide: [`payload/mishkan/cognee/README.md`](payload/mishkan/cognee/README.md) · [`docs/usage/04-memory-layer.md`](docs/usage/04-memory-layer.md).
|
|
@@ -86,7 +121,7 @@ mishkan code-graph status # node/edge count, last scan time
|
|
|
86
121
|
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.
|
|
87
122
|
|
|
88
123
|
```bash
|
|
89
|
-
mishkan observability
|
|
124
|
+
mishkan observability install # install both packages
|
|
90
125
|
mishkan-watch # opens TUI, auto-starts daemon if absent
|
|
91
126
|
mishkan-watchd start|stop|status # manual daemon control
|
|
92
127
|
```
|
|
@@ -129,10 +164,13 @@ mishkan help # full reference
|
|
|
129
164
|
mishkan install # install/refresh into ~/.claude
|
|
130
165
|
mishkan uninstall # remove harness (keeps CLAUDE.md + rules)
|
|
131
166
|
mishkan uninstall --purge # also remove y4nn-standards.md
|
|
132
|
-
mishkan configure
|
|
133
|
-
mishkan
|
|
167
|
+
mishkan knowledge configure # wizard: LLM provider + Cognee .env
|
|
168
|
+
mishkan knowledge curate # approve research-found resources into curated (D-016)
|
|
169
|
+
mishkan knowledge reset # wipe stores → re-seed curated baseline (destructive)
|
|
170
|
+
mishkan model show|set|reset # re-tier agents per-agent/team/all — survives updates (D-017)
|
|
171
|
+
mishkan observability install # install daemon + TUI only (needs uv)
|
|
134
172
|
mishkan status # install state, profile, version
|
|
135
|
-
mishkan org [--json] # print the 45-agent org
|
|
173
|
+
mishkan org show [--json] # print the 45-agent org
|
|
136
174
|
mishkan code-graph [status|open|scan] # inspect the project's Graphify graph
|
|
137
175
|
mishkan-watch # open observability TUI (auto-starts daemon)
|
|
138
176
|
mishkan-watch --no-autostart # TUI only, no daemon fork
|