Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ All notable changes to MeMesh are documented here.

### Fixed

- Memories about a file are shown before an edit in every session again. Once any session (or another agent on the same machine) had been shown them, every other session editing that file got nothing, and the hook record said "nothing to recall". Each session now keeps its own list (a subagent keeps one of its own), a repeat is recorded as throttled, and a list that cannot be written or cleaned up is recorded as an error instead of failing silently (#521).
- Importing with `overwrite` (MCP `import`, `POST /v1/import`, `memesh import --merge overwrite`) now keeps the memory's previous observations, tags and title in its `replaced_history`, the same way `remember` with `replace: true` does. Before, the old content was erased with no way back. Importing a file that names one memory more than once is refused before anything is written (#530).
- A message sent through the MCP `message` tool keeps every `null` in its JSON payload. Before, the MCP boundary removed each null-valued key at any depth of the payload while `send` still reported success, so the recipient got different data than the CLI or HTTP would have stored (#517). A null-valued top-level tool parameter still means "left blank", except `payload`, whose null is a value (#553).
- The MCP `message` tool accepts `payload: null` on `send`, as its schema and the HTTP API already did; it was refused with `payload: Invalid input` (#553).
Expand Down
1 change: 1 addition & 0 deletions dist/core/capture-liveness.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ export declare const SKIP_REASONS: {
readonly noFilePath: "no file_path in the tool input";
readonly noDatabaseForRecall: "no database yet — nothing to recall";
readonly nothingToRecall: "no guard matched and nothing to recall for this file";
readonly recallThrottled: "no guard matched and recall for this file is throttled: this session already looked at it";
readonly candidateWindowTruncated: "more candidates may exist than the search window examined";
readonly noPromptIntent: "the prompt carried no remember intent and no update decision";
readonly noMemoryDir: "no Claude Code memory directory for this project";
Expand Down
2 changes: 1 addition & 1 deletion dist/core/capture-liveness.d.ts.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions dist/core/capture-liveness.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/core/capture-liveness.js.map

Large diffs are not rendered by default.

20 changes: 10 additions & 10 deletions dist/skills-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,8 @@
},
{
"path": "scripts/hooks/_generated/capture-liveness.js",
"sha256": "9af56193885632eb7cd671a3178b8885a6d5404334c820dbd10759296d9e14c2",
"bytes": 19585
"sha256": "352ffbddb1264622b8fc5b698f20f60fc0c831685aa27972e8f0448d10d3b112",
"bytes": 19699
},
{
"path": "scripts/hooks/_generated/citation-rule.js",
Expand Down Expand Up @@ -158,8 +158,8 @@
},
{
"path": "scripts/hooks/_stop-notes.js",
"sha256": "c02fb84a136c73eff4990baac143e2c28f991c257b973e3a7395afd44e418c18",
"bytes": 25081
"sha256": "ffc2f834ba777dec51f5c26a50e4ad88ca922592d52aa554b1364c1d11c7b960",
"bytes": 26110
},
{
"path": "scripts/hooks/auto-update-runner.mjs",
Expand Down Expand Up @@ -188,13 +188,13 @@
},
{
"path": "scripts/hooks/pre-edit-recall.js",
"sha256": "3d7f440a591f843b7a428d7ac425fe6f247cdfc831c895334c03cf6be8ff46e7",
"bytes": 34650
"sha256": "79fb288001eab541121503f4e27d7732135abe792ad9e524ba1df6a9de889c10",
"bytes": 36602
},
{
"path": "scripts/hooks/session-start.js",
"sha256": "1380a2fdd4ad8bf4f44e9c697fc656e81dc06a6ac6e1108ae18bc91904511249",
"bytes": 110962
"sha256": "7a72e8250a0dc5b6ea13de57bea8d7add90eb2b614df1f186cd8e4abba87f51f",
"bytes": 112137
},
{
"path": "scripts/hooks/session-summary.js",
Expand All @@ -203,8 +203,8 @@
},
{
"path": "scripts/hooks/stop-message-gate.js",
"sha256": "0e7cc198e56a36f61507607c46520aec3eb9f6d64b2532ebfb014495547276e8",
"bytes": 8254
"sha256": "b0879dd8a0cb3c0a0c72bd73d82eeded188d1ab96010fdf12cdced113a4e03b1",
"bytes": 8231
},
{
"path": "scripts/hooks/user-prompt-intent.js",
Expand Down
1 change: 1 addition & 0 deletions dist/transports/cli/cli.js
Original file line number Diff line number Diff line change
Expand Up @@ -56483,6 +56483,7 @@ var init_capture_liveness = __esm({
noFilePath: "no file_path in the tool input",
noDatabaseForRecall: "no database yet \u2014 nothing to recall",
nothingToRecall: "no guard matched and nothing to recall for this file",
recallThrottled: "no guard matched and recall for this file is throttled: this session already looked at it",
candidateWindowTruncated: "more candidates may exist than the search window examined",
noPromptIntent: "the prompt carried no remember intent and no update decision",
noMemoryDir: "no Claude Code memory directory for this project",
Expand Down
Loading
Loading