memorix 1.1.13 → 1.2.1

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 (97) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/README.md +6 -3
  3. package/README.zh-CN.md +6 -3
  4. package/dist/cli/index.js +36639 -31279
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/dashboard/static/app.js +50 -30
  7. package/dist/index.js +6636 -1778
  8. package/dist/index.js.map +1 -1
  9. package/dist/maintenance-runner.d.ts +1 -1
  10. package/dist/maintenance-runner.js +3775 -302
  11. package/dist/maintenance-runner.js.map +1 -1
  12. package/dist/memcode-runtime/CHANGELOG.md +33 -1
  13. package/dist/sdk.d.ts +1 -1
  14. package/dist/sdk.js +6634 -1776
  15. package/dist/sdk.js.map +1 -1
  16. package/docs/1.2.0-CLAIM-LEDGER.md +72 -0
  17. package/docs/1.2.0-CODE-STATE.md +61 -0
  18. package/docs/1.2.0-DEVELOPMENT-CHARTER.md +255 -0
  19. package/docs/1.2.0-DYNAMIC-LIFECYCLE.md +71 -0
  20. package/docs/1.2.0-EVALUATION-HARNESS.md +51 -0
  21. package/docs/1.2.0-IMPLEMENTATION-PLAN.md +554 -0
  22. package/docs/1.2.0-KNOWLEDGE-WORKFLOW-RESEARCH.md +205 -0
  23. package/docs/1.2.0-KNOWLEDGE-WORKSPACE.md +68 -0
  24. package/docs/1.2.0-PRODUCT-STORY.md +234 -0
  25. package/docs/1.2.0-PROVIDER-QUALITY.md +189 -0
  26. package/docs/1.2.0-WORKFLOW-INHERITANCE.md +101 -0
  27. package/docs/1.2.0-WORKSET-RETRIEVAL.md +80 -0
  28. package/docs/AGENT_OPERATOR_PLAYBOOK.md +6 -3
  29. package/docs/API_REFERENCE.md +27 -6
  30. package/docs/CONFIGURATION.md +21 -3
  31. package/docs/DEVELOPMENT.md +4 -0
  32. package/docs/README.md +17 -2
  33. package/docs/SETUP.md +7 -1
  34. package/docs/dev-log/progress.txt +120 -40
  35. package/docs/knowledge/workflows/memorix-release.md +57 -0
  36. package/llms-full.txt +16 -2
  37. package/llms.txt +9 -4
  38. package/package.json +3 -2
  39. package/plugins/codex/memorix/.codex-plugin/plugin.json +1 -1
  40. package/src/cli/capability-map.ts +1 -0
  41. package/src/cli/commands/codegraph.ts +111 -9
  42. package/src/cli/commands/context.ts +2 -0
  43. package/src/cli/commands/doctor.ts +73 -4
  44. package/src/cli/commands/knowledge.ts +322 -0
  45. package/src/cli/commands/serve-http.ts +26 -42
  46. package/src/cli/commands/setup.ts +9 -3
  47. package/src/cli/index.ts +3 -1
  48. package/src/cli/tui/App.tsx +1 -1
  49. package/src/cli/tui/Panels.tsx +8 -8
  50. package/src/cli/tui/theme.ts +1 -1
  51. package/src/cli/tui/views/GraphView.tsx +8 -7
  52. package/src/cli/tui/views/KnowledgeView.tsx +9 -9
  53. package/src/codegraph/auto-context.ts +169 -19
  54. package/src/codegraph/code-state.ts +95 -0
  55. package/src/codegraph/context-pack.ts +82 -1
  56. package/src/codegraph/current-facts.ts +19 -1
  57. package/src/codegraph/external-provider.ts +581 -0
  58. package/src/codegraph/lite-provider.ts +64 -19
  59. package/src/codegraph/project-context.ts +9 -1
  60. package/src/codegraph/store.ts +154 -6
  61. package/src/codegraph/task-lens.ts +49 -5
  62. package/src/codegraph/types.ts +117 -0
  63. package/src/config/resolved-config.ts +28 -0
  64. package/src/config/toml-loader.ts +3 -0
  65. package/src/config/yaml-loader.ts +6 -0
  66. package/src/dashboard/server.ts +30 -47
  67. package/src/evaluation/workset-evaluation.ts +120 -0
  68. package/src/hooks/handler.ts +48 -6
  69. package/src/knowledge/claim-store.ts +267 -0
  70. package/src/knowledge/claims.ts +587 -0
  71. package/src/knowledge/markdown.ts +129 -0
  72. package/src/knowledge/types.ts +158 -0
  73. package/src/knowledge/wiki.ts +524 -0
  74. package/src/knowledge/workflow-store.ts +168 -0
  75. package/src/knowledge/workflow-types.ts +95 -0
  76. package/src/knowledge/workflows.ts +774 -0
  77. package/src/knowledge/workset.ts +515 -0
  78. package/src/knowledge/workspace-store.ts +220 -0
  79. package/src/knowledge/workspace-types.ts +106 -0
  80. package/src/knowledge/workspace.ts +220 -0
  81. package/src/memory/auto-relations.ts +21 -0
  82. package/src/memory/graph-scope.ts +46 -0
  83. package/src/memory/observations.ts +19 -0
  84. package/src/orchestrate/verify-gate.ts +33 -10
  85. package/src/runtime/control-plane-maintenance.ts +5 -0
  86. package/src/runtime/isolated-maintenance.ts +5 -0
  87. package/src/runtime/lifecycle-status.ts +102 -0
  88. package/src/runtime/lifecycle.ts +107 -0
  89. package/src/runtime/maintenance-jobs.ts +5 -0
  90. package/src/runtime/project-maintenance.ts +190 -0
  91. package/src/server/tool-profile.ts +3 -2
  92. package/src/server.ts +424 -22
  93. package/src/store/file-lock.ts +24 -4
  94. package/src/store/sqlite-db.ts +307 -0
  95. package/src/wiki/generator.ts +4 -2
  96. package/src/wiki/knowledge-graph.ts +7 -4
  97. package/src/wiki/types.ts +16 -4
package/CHANGELOG.md CHANGED
@@ -2,7 +2,39 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
- ## [Unreleased]
5
+ ## [1.2.1] - 2026-07-19
6
+
7
+ ### Added
8
+ - **Review-gated Knowledge claims** -- Explicit agent observations now become source-backed candidates first. They can be inspected and deliberately approved or rejected through `memorix knowledge claims` / `memorix knowledge review` or the advanced `memorix_knowledge` MCP action before they enter knowledge compilation.
9
+ - **Versioned Memorix release workflow** -- Added `docs/knowledge/workflows/memorix-release.md`, a canonical release playbook with verification gates and an explicit maintainer approval boundary.
10
+
11
+ ### Fixed
12
+ - **Claude setup respects `--noHooks`** -- Project setup now keeps generated `CLAUDE.md` guidance without also creating Claude lifecycle-hook configuration when hook capture was explicitly disabled.
13
+ - **Claude Code manual MCP readiness** -- Manual setup examples now include Claude Code's `alwaysLoad: true` entry and point to Doctor/Repair for detecting and restoring the eager-load contract.
14
+ - **Workflow import fidelity** -- Canonical Windsurf workflows preserve their source ID, title, agents, phases, and verification gates instead of being reduced to a generated `workflow:<hash>` entry. Release workflows no longer match a non-release task merely because it says “verify” or “test”.
15
+ - **Graph surface consistency** -- Explicit `relatedEntities` now persist as graph edges, and MCP graph tools, standalone Dashboard, HTTP control plane, and exports share one project-scoping rule.
16
+ - **Intent-aware task and workflow routing** -- A safety constraint such as “do not publish” no longer routes an incident or debugging task into a release lens or release workflow. Explicit release requests still retain release verification while publication is deferred for approval.
17
+ - **Git fact consistency** -- Project Context, Context Pack, and CodeGraph CLI now report `Git: unavailable` for an invalid or unreadable repository instead of presenting it as a clean worktree.
18
+ - **Windows verification-gate timeout** -- A timed-out orchestration gate now resolves promptly while its shell process tree is terminated in the background, instead of waiting indefinitely for a descendant process to close.
19
+
20
+ ## [1.2.0] - 2026-07-18
21
+
22
+ ### Added
23
+ - **Versioned Code State** -- Added local code snapshots, source epochs, completeness metadata, and memory-to-code freshness so project memory can be requalified when the checkout changes.
24
+ - **Claim ledger and reviewable knowledge workspace** -- Added source-backed claims with confidence/conflict lifecycle, plus local or explicitly versioned Markdown workspaces that compile proposals before a reviewed page can change.
25
+ - **Canonical project workflows** -- Added import, selection, preview, safe adapter application, and run receipts for project workflows without treating an agent-specific instruction file as the source of truth.
26
+ - **Bounded task Worksets** -- Memory Autopilot and Context Pack now select task-relevant current facts, evidence, knowledge/workflow starts, cautions, and verification instead of adding a generic historical-memory dump.
27
+ - **Advanced Knowledge Workspace MCP tool** -- Added `memorix_knowledge` as one action-based management surface for workspace, proposal, and workflow operations in the explicit `team` and `full` MCP profiles.
28
+ - **Optional local semantic CodeGraph provider** -- A healthy pre-indexed local CodeGraph can add a validated, bounded semantic outline to a task Workset. The built-in Lite provider remains available with explicit capability limits.
29
+
30
+ ### Changed
31
+ - **Durable knowledge lifecycle** -- Code State refresh, claim derivation/requalification, knowledge compile/lint, and workflow indexing run through resumable maintenance jobs rather than turning interactive requests into a corpus-wide foreground scan.
32
+ - **Provider quality is visible** -- CodeGraph status, Doctor, and Project Context JSON report whether the task used Lite structural evidence or a validated external semantic outline.
33
+
34
+ ### Fixed
35
+ - **Incomplete scan truthfulness** -- Unreadable files and deferred removals now remain visible in snapshot completeness instead of being silently treated as a complete code view.
36
+ - **External CodeGraph safety boundary** -- Memorix only accepts local output for the exact healthy project root, rejects stale/malformed/oversized/path-escaping data, runs without a shell, and never persists raw external source output.
37
+ - **Node 26 SQLite runtime** -- Upgraded the optional `better-sqlite3` path to a release that supports Node 26, and added a Node 26 CI smoke that opens an in-memory database. Fixes #130; reported by @RaviTharuma.
6
38
 
7
39
  ## [1.1.13] - 2026-07-17
8
40
 
package/README.md CHANGED
@@ -59,11 +59,12 @@ Memorix is more than a memory store. It also installs agent integrations, keeps
59
59
 
60
60
  | Capability | What it does | Entry point |
61
61
  | --- | --- | --- |
62
- | Memory Autopilot | A task-shaped project brief for a new agent session, with start files, trusted memories, cautions, and verification hints | `memorix context --task "..."`, `memorix_project_context` |
62
+ | Memory Autopilot | A bounded task Workset with start files, current memory, source-backed knowledge, workflow starts, cautions, and verification | `memorix context --task "..."`, `memorix_project_context` |
63
63
  | Observation Memory | Searchable facts, fixes, gotchas, session summaries, and implementation notes scoped to the current Git project | `memorix memory`, MCP memory tools |
64
- | Code Memory | File/symbol links and freshness checks so old memories point to current code or show up as suspect/stale | `memorix codegraph`, automatic context refresh |
64
+ | Code State and Code Memory | Versioned local code snapshots, file/symbol links, and freshness checks. The built-in Lite index is always honest about its limits; an already-indexed local CodeGraph can add a bounded semantic outline | `memorix codegraph`, automatic context refresh |
65
65
  | Git Memory | Commit-derived engineering facts that answer what changed, where, and why it matters | `memorix ingest commit`, git hook |
66
66
  | Reasoning Memory | Design rationale, alternatives, trade-offs, and risks that should survive beyond one chat | `memorix reasoning`, memory formation |
67
+ | Knowledge Workspace | Review-gated source-backed claims, Markdown pages, and canonical project workflows; proposals never overwrite reviewed pages silently | `memorix knowledge`, `memorix knowledge workflow` |
67
68
  | Agent setup | One setup path for MCP, rules, hooks, skills, plugins, bundles, or extensions depending on the agent | `memorix setup --agent <agent>` |
68
69
  | Agent doctor | Checks whether agent MCP config and guidance are current, then repairs Memorix-owned entries when needed | `memorix doctor agents`, `memorix repair agents` |
69
70
  | Hooks and skills | Optional capture from supported agents, plus reusable project skills promoted from durable knowledge | `memorix hooks`, `memorix skills` |
@@ -257,7 +258,7 @@ What it installs depends on the target agent, but the goal is the same: make Mem
257
258
  - Hermes Agent: installs into Hermes home (`%LOCALAPPDATA%\hermes` on native Windows, `~/.hermes` elsewhere, or `HERMES_HOME`), enables the plugin in `config.yaml`, registers plugin hooks, slash/CLI commands, skills, and writes MCP config.
258
259
  - Oh-my-Pi: installs an `omp.extensions` package with extension hook events, a `memorix` command, official skills, and writes MCP config.
259
260
 
260
- Need a quieter install? Add `--noHooks` for targets where setup can control hook capture separately from the host's official package entry.
261
+ Need a quieter install? Add `--noHooks` for targets where setup can control hook capture separately from the host's official package entry. It keeps MCP and guidance, but skips Memorix hook capture.
261
262
 
262
263
  If you intentionally want repo-local guidance or hooks, run the same command inside that repository without `--global`.
263
264
 
@@ -274,6 +275,8 @@ If your agent only needs a manual MCP entry, use stdio:
274
275
  }
275
276
  ```
276
277
 
278
+ For a manually managed Claude Code entry, add `"alwaysLoad": true` inside the `memorix` server object. This lets Claude Code expose Memorix tools during print-mode startup; `memorix doctor agents --agent claude` can detect and repair a missing setting.
279
+
277
280
  HTTP is not required for normal setup. Use it only when you intentionally want a shared background service, dashboard, Docker, or multiple clients using the same endpoint:
278
281
 
279
282
  ```bash
package/README.zh-CN.md CHANGED
@@ -59,11 +59,12 @@ Memorix 不只是一个记忆库。它还负责安装 Agent 接入、保留有
59
59
 
60
60
  | 能力 | 作用 | 入口 |
61
61
  | --- | --- | --- |
62
- | Memory Autopilot | 给新 Agent session 一份按当前任务整理的项目 brief,包含起步文件、可信记忆、风险提示和验证建议 | `memorix context --task "..."`、`memorix_project_context` |
62
+ | Memory Autopilot | 给新 Agent session 一份有预算的任务 Workset,包含起步文件、当前记忆、来源知识、工作流首步、风险提示和验证建议 | `memorix context --task "..."`、`memorix_project_context` |
63
63
  | Observation Memory | 当前 Git 项目内可检索的事实、修复、坑点、session 摘要和实现记录 | `memorix memory`、MCP memory tools |
64
- | Code Memory | 文件 / symbol 关联和 freshness 检查;旧记忆会指向当前代码,或标记为 suspect/stale | `memorix codegraph`、自动 context refresh |
64
+ | Code State 和 Code Memory | 可版本化的本地代码快照、文件 / symbol 关联和 freshness 检查。内置 Lite 会如实说明边界;已有本地索引的 CodeGraph 可额外给出有预算的语义关系 | `memorix codegraph`、自动 context refresh |
65
65
  | Git Memory | 从 commit 中提取工程事实,回答改了什么、在哪里改、为什么重要 | `memorix ingest commit`、git hook |
66
66
  | Reasoning Memory | 保存设计原因、备选方案、trade-off 和风险,不让决策只留在一次聊天里 | `memorix reasoning`、memory formation |
67
+ | Knowledge Workspace | 有审核门槛的来源证据 Claim、Markdown 知识页和规范化项目工作流;提案不会悄悄覆盖已审阅页面 | `memorix knowledge`、`memorix knowledge workflow` |
67
68
  | Agent setup | 按目标 Agent 写入 MCP、rules、hooks、skills、plugin、bundle 或 extension | `memorix setup --agent <agent>` |
68
69
  | Agent doctor | 检查 Agent 的 MCP 配置和规则是否是当前版本,并修复 Memorix 自己管理的条目 | `memorix doctor agents`、`memorix repair agents` |
69
70
  | Hooks 和 skills | 在支持的 Agent 中可选捕获工作事件,并把稳定知识提升成可复用项目技能 | `memorix hooks`、`memorix skills` |
@@ -257,7 +258,7 @@ memorix setup --agent omp --global
257
258
  - Hermes Agent:安装到 Hermes home(Windows native 默认为 `%LOCALAPPDATA%\hermes`,其他平台默认为 `~/.hermes`,也支持 `HERMES_HOME`),在 `config.yaml` 启用插件,注册 plugin hooks、slash/CLI commands、skills,并写入 MCP 配置。
258
259
  - Oh-my-Pi:安装 `omp.extensions` package,包含 extension hook 事件、`memorix` command、官方 skills,并写入 MCP 配置。
259
260
 
260
- 如果你想要更安静一点的安装,可以对那些 setup 能独立控制 hook capture 的 target 加 `--noHooks`。
261
+ 如果你想要更安静一点的安装,可以对那些 setup 能独立控制 hook capture 的 target 加 `--noHooks`。它会保留 MCP 和使用规范,只跳过 Memorix 的 hook 自动捕获。
261
262
 
262
263
  如果你明确想要项目级指导或 hooks,就在那个仓库目录里再跑一次不带 `--global` 的 `memorix setup --agent <agent>`。
263
264
 
@@ -274,6 +275,8 @@ memorix setup --agent omp --global
274
275
  }
275
276
  ```
276
277
 
278
+ 如果是手动维护 Claude Code 的 MCP 配置,需要在 `memorix` server 对象里加上 `"alwaysLoad": true`。这样 Claude Code 在 print-mode 启动时就会暴露 Memorix tools;`memorix doctor agents --agent claude` 可以检查并修复缺失的设置。
279
+
277
280
  普通安装不需要 HTTP。只有在你明确需要共享后台服务、Dashboard、Docker,或多个客户端共用一个端点时才使用:
278
281
 
279
282
  ```bash