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.
Files changed (133) hide show
  1. package/README.md +49 -11
  2. package/bin/mishkan.js +562 -79
  3. package/docs/design/MISHKAN_decisions.md +398 -8
  4. package/docs/design/MISHKAN_observability.md +8 -8
  5. package/docs/engineer/profile-readable.md +201 -0
  6. package/docs/engineer/profile.md +754 -0
  7. package/docs/usage/01-installation.md +22 -8
  8. package/docs/usage/02-project-init.md +30 -13
  9. package/docs/usage/03-orchestration.md +46 -7
  10. package/docs/usage/04-memory-layer.md +135 -69
  11. package/docs/usage/06-llm-providers.md +2 -1
  12. package/docs/usage/07-troubleshooting.md +23 -0
  13. package/docs/usage/08-glossary.md +12 -3
  14. package/docs/usage/09-workflows.md +15 -3
  15. package/docs/usage/10-observability.md +3 -3
  16. package/docs/usage/11-graphify.md +38 -18
  17. package/docs/usage/12-cli.md +87 -0
  18. package/docs/usage/12-skill-discovery.md +11 -0
  19. package/docs/usage/README.md +35 -19
  20. package/package.json +1 -1
  21. package/payload/mishkan/AGENT_SPEC.md +3 -1
  22. package/payload/mishkan/agents/ahikam.md +3 -1
  23. package/payload/mishkan/agents/aholiab.md +3 -1
  24. package/payload/mishkan/agents/asaph.md +3 -1
  25. package/payload/mishkan/agents/baruch.md +8 -1
  26. package/payload/mishkan/agents/benaiah.md +3 -1
  27. package/payload/mishkan/agents/bezalel.md +3 -1
  28. package/payload/mishkan/agents/caleb.md +3 -1
  29. package/payload/mishkan/agents/deborah.md +3 -1
  30. package/payload/mishkan/agents/elasah.md +3 -1
  31. package/payload/mishkan/agents/eliashib.md +3 -1
  32. package/payload/mishkan/agents/ezra.md +3 -1
  33. package/payload/mishkan/agents/hanun.md +3 -1
  34. package/payload/mishkan/agents/hiram.md +3 -1
  35. package/payload/mishkan/agents/hizkiah.md +3 -1
  36. package/payload/mishkan/agents/huldah.md +3 -1
  37. package/payload/mishkan/agents/huram.md +3 -1
  38. package/payload/mishkan/agents/hushai.md +3 -1
  39. package/payload/mishkan/agents/igal.md +3 -1
  40. package/payload/mishkan/agents/ira.md +3 -1
  41. package/payload/mishkan/agents/jahaziel.md +3 -1
  42. package/payload/mishkan/agents/jakin.md +3 -1
  43. package/payload/mishkan/agents/jehonathan.md +3 -1
  44. package/payload/mishkan/agents/jehoshaphat.md +3 -1
  45. package/payload/mishkan/agents/joab.md +3 -1
  46. package/payload/mishkan/agents/joah.md +3 -1
  47. package/payload/mishkan/agents/maaseiah.md +3 -1
  48. package/payload/mishkan/agents/meremoth.md +3 -1
  49. package/payload/mishkan/agents/meshullam.md +3 -1
  50. package/payload/mishkan/agents/nathan.md +3 -1
  51. package/payload/mishkan/agents/nehemiah.md +3 -1
  52. package/payload/mishkan/agents/obed.md +3 -1
  53. package/payload/mishkan/agents/oholiab.md +3 -1
  54. package/payload/mishkan/agents/palal.md +3 -1
  55. package/payload/mishkan/agents/phinehas.md +3 -1
  56. package/payload/mishkan/agents/rehum.md +3 -1
  57. package/payload/mishkan/agents/salma.md +3 -1
  58. package/payload/mishkan/agents/seraiah.md +3 -1
  59. package/payload/mishkan/agents/shallum.md +3 -1
  60. package/payload/mishkan/agents/shaphan.md +3 -1
  61. package/payload/mishkan/agents/shemaiah.md +6 -1
  62. package/payload/mishkan/agents/shevna.md +3 -1
  63. package/payload/mishkan/agents/uriah.md +3 -1
  64. package/payload/mishkan/agents/zaccur.md +3 -1
  65. package/payload/mishkan/agents/zadok.md +3 -1
  66. package/payload/mishkan/agents/zerubbabel.md +3 -1
  67. package/payload/mishkan/cognee/.env.example +11 -0
  68. package/payload/mishkan/cognee/Dockerfile +20 -0
  69. package/payload/mishkan/cognee/README.md +34 -14
  70. package/payload/mishkan/cognee/docker-compose.curated.yml +33 -6
  71. package/payload/mishkan/cognee/docker-compose.selfhosted.yml +35 -5
  72. package/payload/mishkan/cognee/docker-compose.work.yml +191 -0
  73. package/payload/mishkan/cognee/docker-compose.yml +18 -3
  74. package/payload/mishkan/cognee/patches/cognee-mcp-core-align.py +72 -0
  75. package/payload/mishkan/cognee/patches/cognee-mcp-recall-user.py +82 -0
  76. package/payload/mishkan/cognee/promote-curated.py +77 -0
  77. package/payload/mishkan/cognee/prune-store.py +23 -0
  78. package/payload/mishkan/commands/mishkan-init.md +4 -1
  79. package/payload/mishkan/commands/mishkan-org-reference.md +2 -2
  80. package/payload/mishkan/config/curated-library.yaml +1 -0
  81. package/payload/mishkan/config/model-routing.yaml +23 -14
  82. package/payload/mishkan/evals/baruch/fixtures/invalid/bad-curated-candidate.json +22 -0
  83. package/payload/mishkan/evals/baruch/fixtures/valid/resolved-curated-candidate.json +23 -0
  84. package/payload/mishkan/hooks/model-route.py +14 -1
  85. package/payload/mishkan/observability/usage_parser.py +1 -0
  86. package/payload/mishkan/observability/watch/pyproject.toml +1 -1
  87. package/payload/mishkan/observability/watch/src/mishkan_watch/__main__.py +78 -21
  88. package/payload/mishkan/observability/watch/src/mishkan_watch/app.py +56 -3
  89. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/knowledge.py +76 -5
  90. package/payload/mishkan/observability/watch/src/mishkan_watch/tabs/workflows.py +22 -1
  91. package/payload/mishkan/observability/watchd/pyproject.toml +1 -1
  92. package/payload/mishkan/observability/watchd/src/mishkan_watchd/__main__.py +35 -7
  93. package/payload/mishkan/observability/watchd/src/mishkan_watchd/server.py +102 -8
  94. package/payload/mishkan/observability/watchd/src/mishkan_watchd/sources/cognee_poll.py +136 -49
  95. package/payload/mishkan/ontology.md +8 -1
  96. package/payload/mishkan/ontology.ttl +188 -0
  97. package/payload/mishkan/scripts/ensure-work-store.sh +230 -0
  98. package/payload/mishkan/scripts/mishkan-ingest.sh +49 -3
  99. package/payload/mishkan/scripts/promote-curated.sh +77 -0
  100. package/payload/mishkan/scripts/reset-knowledge-data.sh +70 -0
  101. package/payload/mishkan/scripts/validate-research-log.sh +27 -0
  102. package/payload/mishkan/skills/baruch-research-reporting-craft/SKILL.md +42 -8
  103. package/payload/mishkan/skills/cognee-promote/SKILL.md +13 -0
  104. package/payload/mishkan/skills/cognee-quickstart/SKILL.md +7 -1
  105. package/payload/mishkan/skills/ezra-research-formulation-craft/SKILL.md +9 -0
  106. package/payload/mishkan/skills/mishkan-ingest/SKILL.md +22 -0
  107. package/payload/mishkan/skills/mishkan-init/SKILL.md +31 -19
  108. package/payload/mishkan/skills/shemaiah-evaluation-craft/SKILL.md +33 -5
  109. package/payload/mishkan/skills/team-lead-craft/SKILL.md +66 -0
  110. package/payload/mishkan/templates/mcp.json +7 -2
  111. package/payload/mishkan/templates/observability-log.schema.json +1 -1
  112. package/payload/mishkan/templates/research-log.schema.json +15 -1
  113. package/payload/mishkan/workflows/README.md +19 -13
  114. package/payload/mishkan/workflows/chosheb-feature-ship.js +63 -18
  115. package/payload/mishkan/workflows/migdal-dr-drill.js +4 -0
  116. package/payload/mishkan/workflows/migdal-infra-change.js +48 -7
  117. package/payload/mishkan/workflows/mishkan-architecture-panel.js +4 -0
  118. package/payload/mishkan/workflows/mishkan-blast-radius.js +4 -0
  119. package/payload/mishkan/workflows/mishkan-codebase-audit.js +4 -0
  120. package/payload/mishkan/workflows/mishkan-deep-research.js +4 -0
  121. package/payload/mishkan/workflows/mishkan-init.js +4 -0
  122. package/payload/mishkan/workflows/mishkan-knowledge-gap-discovery.js +4 -0
  123. package/payload/mishkan/workflows/mishkan-migration-wave.js +4 -0
  124. package/payload/mishkan/workflows/mishkan-release-readiness.js +4 -0
  125. package/payload/mishkan/workflows/mishkan-sprint-close.js +4 -0
  126. package/payload/mishkan/workflows/mishkan-standards-rollout.js +4 -0
  127. package/payload/mishkan/workflows/mishmar-security-gate.js +45 -6
  128. package/payload/mishkan/workflows/panim-ds-rollout.js +4 -0
  129. package/payload/mishkan/workflows/panim-feature-ship.js +132 -0
  130. package/payload/mishkan/workflows/sefer-release-notes.js +4 -0
  131. package/payload/mishkan/workflows/yasad-data-migration-wave.js +4 -0
  132. package/payload/mishkan/workflows/yasad-feature-ship.js +130 -0
  133. 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.6** — 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.
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 # optional: daemon + TUI (needs uv)
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-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
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 # install both packages
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-knowledge # wizard: LLM provider + Cognee .env
133
- mishkan observability # install daemon + TUI only (needs uv)
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