memorix 1.1.12 → 1.1.13

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/dist/index.js CHANGED
@@ -21884,7 +21884,7 @@ The path should point to a directory containing a .git folder.`
21884
21884
  };
21885
21885
  const server = existingServer ?? new McpServer({
21886
21886
  name: "memorix",
21887
- version: true ? "1.1.12" : "1.0.1"
21887
+ version: true ? "1.1.13" : "1.0.1"
21888
21888
  });
21889
21889
  const originalRegisterTool = server.registerTool.bind(server);
21890
21890
  server.registerTool = ((name, ...args) => {
@@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [1.1.13] - 2026-07-17
8
+
9
+ ### Added
10
+ - **Codex installation proof** -- `memorix doctor agents --agent codex --scope global` now checks the local plugin bundle, Personal marketplace entry, five declared and trusted lifecycle hooks, and the installed/enabled state reported by `codex plugin list`.
11
+
12
+ ### Fixed
13
+ - **Codex plugin version drift** -- Global setup now stamps the copied Codex plugin manifest with the installed Memorix version, so Codex no longer reports the old template version after an upgrade. The source template is covered by a release regression test as well.
14
+ - **Workspace package publish trap** -- `@memorix/ai`, `@memorix/agent-core`, `@memorix/tui`, and `@memorix/memcode` are now explicitly internal workspaces. The root `memorix` package ships their bundled runtime, and the release workflow publishes only that supported public package.
15
+
7
16
  ## [1.1.12] - 2026-07-17
8
17
 
9
18
  ### Added
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@memorix/memcode",
3
3
  "version": "1.1.12",
4
+ "private": true,
4
5
  "description": "Memorix-native coding agent CLI with terminal chat, project memory, hooks, and session management",
5
6
  "type": "module",
6
7
  "piConfig": {
package/dist/sdk.js CHANGED
@@ -21799,7 +21799,7 @@ The path should point to a directory containing a .git folder.`
21799
21799
  };
21800
21800
  const server = existingServer ?? new McpServer({
21801
21801
  name: "memorix",
21802
- version: true ? "1.1.12" : "1.0.1"
21802
+ version: true ? "1.1.13" : "1.0.1"
21803
21803
  });
21804
21804
  const originalRegisterTool = server.registerTool.bind(server);
21805
21805
  server.registerTool = ((name, ...args) => {
@@ -661,7 +661,7 @@ If it reports stale MCP command paths, missing `memorix` MCP entries, missing Cl
661
661
  memorix repair agents --agent <agent>
662
662
  ```
663
663
 
664
- Repair only rewrites Memorix-owned MCP entries and Memorix-owned guidance blocks. It should not edit unrelated user config.
664
+ Repair only rewrites Memorix-owned MCP entries, Memorix-owned guidance blocks, and an explicitly targeted Codex Memorix plugin bundle. It does not edit unrelated user config or turn on a user-disabled Codex plugin; enable that one from `/plugins`.
665
665
 
666
666
  ### 1. Is the workspace a Git repo?
667
667
 
@@ -300,32 +300,25 @@ is intentional after reviewing the diff, rerun with
300
300
  - dashboard
301
301
  - Git Memory
302
302
  - config diagnostics
303
+ - `memorix setup --agent codex --global` followed by `memorix doctor agents --agent codex --scope global --json` in an isolated home, when changing the Codex integration
303
304
 
304
305
  4. inspect package contents:
305
306
 
306
307
  ```bash
307
308
  npm pack --dry-run --json
308
- npm pack --workspace @memorix/ai --dry-run --json
309
- npm pack --workspace @memorix/agent-core --dry-run --json
310
- npm pack --workspace @memorix/tui --dry-run --json
311
- npm pack --workspace @memorix/memcode --dry-run --json
312
309
  ```
313
310
 
314
311
  5. commit and push
315
- 6. publish manually when ready, in dependency order:
312
+ 6. publish the supported public package manually when ready:
316
313
 
317
314
  ```bash
318
- npm publish --workspace @memorix/ai --access public
319
- npm publish --workspace @memorix/agent-core --access public
320
- npm publish --workspace @memorix/tui --access public
321
- npm publish --workspace @memorix/memcode --access public
322
315
  npm publish --access public
323
316
  ```
324
317
 
325
318
  Notes:
326
319
 
327
320
  - `prepublishOnly` runs build + test, but does not contact live model catalog APIs
328
- - `memorix` depends on `@memorix/memcode`; `@memorix/memcode` depends on `@memorix/ai`, `@memorix/agent-core`, and `@memorix/tui`, so publish workspaces before the root package
321
+ - `@memorix/ai`, `@memorix/agent-core`, `@memorix/tui`, and `@memorix/memcode` are internal workspaces. Their code is bundled into the root `memorix` distribution and they must stay `private` unless the project deliberately establishes an owned npm scope and a separate package-support contract.
329
322
  - npm publish is usually manual, especially when 2FA is enabled
330
323
  - GitHub release automation should not be treated as a substitute for manual runtime validation
331
324
 
@@ -49,7 +49,7 @@ Generated guidance also has scope:
49
49
  | Agent | Recommended install | Official entry | What gets installed | Notes |
50
50
  | --- | --- | --- | --- | --- |
51
51
  | Claude Code | `memorix setup --agent claude --global` | Claude Code plugin marketplace | Local `memorix-local` marketplace, plugin-bundled stdio MCP, skills, hooks, plus `CLAUDE.md` guidance | Setup attempts `claude plugin marketplace add` and `claude plugin install memorix@memorix-local`. |
52
- | Codex | `memorix setup --agent codex --global` | Codex Personal marketplace plugin | Local plugin under `~/.codex/plugins/memorix`, Personal marketplace entry, plugin-bundled stdio MCP, skills, hooks, plus `AGENTS.md` guidance | Setup attempts `codex plugin add memorix@personal`. The plugin uses Codex `SessionStart`, `UserPromptSubmit`, `PostToolUse`, `PreCompact`, and `Stop` hooks; review it once in `/hooks` when Codex requests trust. |
52
+ | Codex | `memorix setup --agent codex --global` | Codex Personal marketplace plugin | Local plugin under `~/.codex/plugins/memorix`, Personal marketplace entry, plugin-bundled stdio MCP, skills, hooks, plus `AGENTS.md` guidance | Setup attempts `codex plugin add memorix@personal`. Run `memorix doctor agents --agent codex --scope global` to verify the bundle, marketplace, enabled state, and five declared/trusted hooks; start a new thread after setup. |
53
53
  | GitHub Copilot CLI | `memorix setup --agent copilot --global` | Copilot CLI plugin package | Local plugin under `~/.copilot/plugins/local/memorix` with MCP, skills, and hooks | Setup attempts `copilot plugin install <local-path>` when Copilot CLI is available. |
54
54
  | Cursor | `memorix setup --agent cursor --global` | Cursor MCP and rules config | Cursor MCP config, `.cursor/rules/memorix.mdc`, skills, and hook guidance | Reload Cursor after setup so it can pick up project config changes. |
55
55
  | Gemini CLI | `memorix setup --agent gemini-cli --global` | Gemini CLI extension | Extension under `~/.gemini/extensions/memorix` with MCP, `GEMINI.md` context, hooks, commands, and skills | Antigravity CLI has an official Gemini CLI migration path, but Gemini CLI remains an active standalone Google CLI target. |
package/docs/SETUP.md CHANGED
@@ -132,7 +132,9 @@ memorix doctor agents --agent <agent>
132
132
  memorix repair agents --agent <agent>
133
133
  ```
134
134
 
135
- The doctor checks Memorix-owned MCP entries and guidance files for stale command paths, missing `memorix` MCP servers, missing Claude `alwaysLoad`, and outdated Memory Autopilot rules.
135
+ The doctor checks Memorix-owned MCP entries and guidance files for stale command paths, missing `memorix` MCP servers, missing Claude `alwaysLoad`, and outdated Memory Autopilot rules. For `codex --scope global`, it also checks the local plugin bundle, Personal marketplace entry, five declared lifecycle hooks, Codex's trusted hook state, and the installed/enabled state reported by `codex plugin list`.
136
+
137
+ After Codex setup, start a new thread so enabled plugins can load. Codex does not expose a command that proves hooks are already active inside the current thread. If doctor reports `codex-plugin-disabled`, open `/plugins` and turn Memorix on there; repair does not toggle a user-disabled plugin.
136
138
 
137
139
  ### Option B: manual stdio MCP
138
140
 
@@ -4,71 +4,43 @@
4
4
  > older notes when they conflict.
5
5
 
6
6
  ## Current State
7
- - Phase: 1.1.12 ready to publish
8
- - Branch: `codex/1.1.12-runtime-hygiene`
7
+ - Phase: 1.1.13 ready to publish
8
+ - Branch: `codex/1.1.13-release-contract`
9
9
  - Last updated: 2026-07-17
10
- - Goal: ship the verified Codex lifecycle hooks, repair OpenCode Windows hook
11
- delivery, and preserve semantic vector recall without blocking MCP startup.
10
+ - Goal: make Codex global setup diagnosable end to end, remove the accidental
11
+ workspace publish lane, restore the Star History chart, then publish a clean
12
+ 1.1.13 before beginning 1.2 work.
12
13
 
13
14
  ## Completed Recently
14
- - Released `memorix@1.1.11`, tagged `v1.1.11`, with durable maintenance,
15
- bounded lifecycle work, incremental Code Memory, and first-turn SQLite
16
- readiness.
17
- - Added Codex plugin lifecycle hooks for `SessionStart`, `UserPromptSubmit`,
18
- `PostToolUse`, `PreCompact`, and `Stop`, including native SessionStart
19
- context injection, quiet capture events, Windows command overrides, and
20
- compact-session startup coverage.
21
- - Confirmed issue #124's project-context timeout fix with the reporter.
22
- - Triaged issue #125 as an OpenCode Windows PATH resolution failure and
23
- reviewed PR #126's semantic vector-recall diagnosis.
24
-
25
- ## Completed In This Release Candidate
26
- - OpenCode's generated Windows plugin now embeds the npm `memorix.cmd` shim
27
- resolved during setup. It no longer assumes OpenCode inherits the user's
28
- npm path, and delivery diagnostics are opt-in through `MEMORIX_HOOK_DEBUG=1`.
29
- - Project setup no longer writes Claude, Codex, or Copilot plugin bundles into
30
- the user home; those bundles require an explicit `--global` installation.
31
- - API embedding hydration restores compatible local cache entries after lexical
32
- readiness. Startup never makes a remote embedding request; cache misses stay
33
- in the bounded background lane, and the first successful vector upgrades a
34
- cache-less lexical index in the same process. Namespace-scoped cache metadata
35
- provides a recovery path when the separate dimensions cache is missing.
36
- - TUI health, chat, and quick-search paths now use the same lexical-ready
37
- initializer, so a first TUI render or search never probes the embedding API.
38
- - Orama initialization is serialized across cache-only startup and normal
39
- callers, preventing a late vector-schema instance from replacing a hydrated
40
- lexical index. Resetting the store also invalidates any obsolete in-flight
41
- initializer.
42
- - Cache-only API initialization now avoids parsing the large vector-cache file
43
- unless local dimensions metadata proves that cached vectors can be attached.
44
- - Added regressions for cache hits, cache misses, invalid vectors, stale index
45
- changes, delayed cache I/O, concurrent index initialization, schema upgrade
46
- after a first vector, and setup scope isolation.
15
+ - Released `memorix@1.1.12`, tagged `v1.1.12`, with native Codex lifecycle
16
+ hooks, Windows-safe OpenCode hook resolution, scope-isolated setup, and
17
+ cache-first semantic-vector hydration.
18
+ - `memorix setup --agent codex --global` now stamps the copied plugin manifest
19
+ with the running Memorix version instead of leaving the template version.
20
+ - `memorix doctor agents --agent codex --scope global` now reports four
21
+ independently useful facts: the local bundle and declared hook contract, the
22
+ Personal marketplace entry, Codex's installed/enabled plugin state, and the
23
+ trusted state for each Codex lifecycle hook.
24
+ - Repair only refreshes Memorix-owned files. A disabled plugin or untrusted
25
+ hook remains an explicit user action in Codex's plugin/hook UI.
26
+ - `@memorix/ai`, `@memorix/agent-core`, `@memorix/tui`, and
27
+ `@memorix/memcode` are explicitly internal workspaces. The public release
28
+ contract is the bundled root `memorix` package.
29
+ - Restored the AVIDS2/memorix Star History chart at the bottom of both READMEs.
47
30
 
48
31
  ## Verification Snapshot
49
- - Focused hook/vector tests pass, including a Windows child-process smoke with
50
- the npm bin directory removed from the child `PATH`.
51
- - Full `npm test` passes, along with `npm run lint` and `npm run build` after
52
- the final initialization-race and lazy-cache regressions were added.
53
- - Real stdio MCP smoke with an unreachable API endpoint confirms that an empty
54
- cache does not issue a startup embedding probe. A second local API smoke
55
- confirms first-vector schema upgrade reaches hybrid search without restart.
56
- - A cross-process cache smoke deletes the dimensions cache after populating
57
- vectors, then verifies offline hybrid retrieval restores from the redundant
58
- namespace metadata without another API request.
59
- - An isolated Windows home smoke confirms project setup leaves the user Codex
60
- plugin untouched and `--global` installs the native SessionStart hook.
61
- - `npm pack --dry-run` succeeds. A clean normal installation of the generated
62
- `memorix-1.1.12.tgz` loaded the `better-sqlite3` native binding, completed
63
- MCP `initialize` and `tools/list`, and exposed the expected 7-tool micro
64
- profile with `memorix_project_context` present.
65
-
66
- ## Known Boundary
67
- - Orama remains process-local. Search and stateful write/session tools still
68
- wait for full runtime hydration; bootstrap-safe context tools do not.
69
- - CodeGraph Lite is an incremental local structural map, not a replacement for
70
- an AST/language-server intelligence product.
32
+ - Focused Codex setup, hook, doctor, and release-contract regressions pass.
33
+ - `npm run lint`, `npm run build`, and the full serial `npm test` suite pass.
34
+ - `npm pack --dry-run` includes the root runtime, plugin templates, hooks,
35
+ READMEs, and docs at `memorix@1.1.13`.
36
+ - A clean normal npm installation of the tarball completed a real stdio MCP
37
+ store/search call against an isolated Git repository and exposed the expected
38
+ seven-tool micro profile.
39
+ - An isolated real Codex CLI setup installed and enabled `memorix@personal`,
40
+ stamped the manifest at `1.1.13`, and let doctor verify the bundle,
41
+ marketplace, runtime state, and pending first-use hook trust separately.
42
+ - The Star History embed uses Star History's current `/image` README endpoint.
71
43
 
72
44
  ## Next Steps
73
- - Commit and publish `1.1.12`, then update issue #124, issue #125, and PR #126
74
- with the release evidence and credit.
45
+ - Push/merge/tag/publish `v1.1.13`, then create the 1.2 development baseline
46
+ from the released main branch.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memorix",
3
- "version": "1.1.12",
3
+ "version": "1.1.13",
4
4
  "description": "Local-first shared memory layer for AI coding agents across MCP clients, Git history, reasoning context, and project sessions.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "memorix",
3
- "version": "1.1.0",
3
+ "version": "1.1.13",
4
4
  "description": "Shared workspace memory for Codex and other AI coding agents.",
5
5
  "author": {
6
6
  "name": "AVIDS2",