memorix 0.9.3 → 0.9.5

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/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [0.9.5] — 2026-02-25
6
+
7
+ ### Fixed
8
+ - **Claude Code hooks `matcher` format** — `matcher` must be a **string** (tool name pattern like `"Bash"`, `"Edit|Write"`), not an object. For hooks that should fire on ALL events, `matcher` is now omitted entirely instead of using `{}`. Fixes `matcher: Expected string, but received object` validation error on Claude Code startup.
9
+
10
+ ## [0.9.4] — 2026-02-25
11
+
12
+ ### Fixed
13
+ - **Codex/all-IDE `tools/list -> Method not found`** — Critical bug where `local/<dirname>` projects (any directory without a git remote) wrongly entered the MCP roots resolution flow. This flow connects the server *before* registering tools, so the MCP `initialize` handshake declared no `tools` capability, causing all subsequent `tools/list` calls to fail with "Method not found". Now only truly invalid projects (home dir, system dirs) enter the roots flow; `local/` projects go through the normal path (register tools first, then connect).
14
+
5
15
  ## [0.9.3] — 2026-02-25
6
16
 
7
17
  ### Fixed
package/dist/cli/index.js CHANGED
@@ -3700,23 +3700,18 @@ function resolveHookCommand() {
3700
3700
  }
3701
3701
  function generateClaudeConfig() {
3702
3702
  const cmd = `${resolveHookCommand()} hook`;
3703
- const hookGroup = {
3704
- matcher: {},
3705
- hooks: [
3706
- {
3707
- type: "command",
3708
- command: cmd,
3709
- timeout: 10
3710
- }
3711
- ]
3703
+ const hookEntry = {
3704
+ type: "command",
3705
+ command: cmd,
3706
+ timeout: 10
3712
3707
  };
3713
3708
  return {
3714
3709
  hooks: {
3715
- SessionStart: [hookGroup],
3716
- PostToolUse: [hookGroup],
3717
- UserPromptSubmit: [hookGroup],
3718
- PreCompact: [hookGroup],
3719
- Stop: [hookGroup]
3710
+ SessionStart: [{ hooks: [hookEntry] }],
3711
+ PostToolUse: [{ hooks: [hookEntry] }],
3712
+ UserPromptSubmit: [{ hooks: [hookEntry] }],
3713
+ PreCompact: [{ hooks: [hookEntry] }],
3714
+ Stop: [{ hooks: [hookEntry] }]
3720
3715
  }
3721
3716
  };
3722
3717
  }
@@ -6611,7 +6606,7 @@ var init_serve = __esm({
6611
6606
  let projectRoot = args.cwd || process.env.MEMORIX_PROJECT_ROOT || process.env.INIT_CWD || safeCwd;
6612
6607
  console.error(`[memorix] Starting with cwd: ${projectRoot}`);
6613
6608
  const earlyDetect = detectProject2(projectRoot);
6614
- const needsRoots = earlyDetect.id === "__invalid__" || earlyDetect.id.startsWith("local/");
6609
+ const needsRoots = earlyDetect.id === "__invalid__";
6615
6610
  if (needsRoots) {
6616
6611
  console.error(`[memorix] cwd is not a valid project, trying MCP roots protocol...`);
6617
6612
  const mcpServer = new McpServer2({ name: "memorix", version: "0.1.0" });