Skip to content

Sync the skill and hooks to memvara v0.15.0 - #50

Merged
sethigoldy merged 2 commits into
mainfrom
sync/core-v0.15.0
Sep 24, 2026
Merged

sethigoldy merged 2 commits into
mainfrom
sync/core-v0.15.0

Conversation

@sethigoldy

@sethigoldy sethigoldy commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

What this does

Updates the plugin to memvara core v0.15.0 (tag v0.15.0, commit 026be5cfd815419fa4c7eda2cb0ada109ea22cab).

  • Re-vendors the skill into skills/memvara/ and the hook tree into hooks/ with the steps in skill-sync.yml and hooks-sync.yml, run against a checkout of the tag instead of a fresh clone. Both trees match the tag byte for byte.
  • Moves skill.lock and hooks.lock to 026be5cf. Only the sha= lines change, and host=opencode stays.
  • Composes CLAUDE.md from plugin-claude.md at the tag. The local block is byte-identical before and after; the rest of the file now equals the canonical, which had been rewritten in plain English since the last sync here.

The hook tree was pinned before v0.10.0, so this brings six releases of hook changes, including agentic capture (memvara/memvara#241), the named daily recall allowance and single-send hosted recalls (memvara/memvara#245), and the Memvara-Capture-Run header (memvara/memvara#246). The host record for opencode did not change: capture keeps its 120-second limit.

What did not sync cleanly, and what was done about it

The vendored bytes synced cleanly. The repository's own guards then failed, each for a real reason, and each was fixed rather than relaxed:

  1. Eight hook files are new, so the file-set guards failed. They are listed in ALLOWED_HOOK_FILES after being read, with a comment saying what each one is: lib/agentic.py, lib/counts.py, lib/mark.py, lib/project.py, lib/project_vectors.json, lib/read_model.py, lib/settings.py and lib/state_file.py.
  2. Agentic capture is inert on this host. It runs only when the first extractor is claude -p, and here the first is opencode run. With the switch on by default, each captured turn writes a line to capture.log saying agentic capture was skipped. The README says so and how to turn the line off.

README

A new section, "What else the hooks keep and send", describes what the v0.15.0 hooks add on this host: the project cache in ~/.memvara/.hooks/projects/ and the Memvara-Project header on hosted calls, the per-session counts in ~/.memvara/.hooks/counts/, the recall mark, the three switches in ~/.memvara/settings.json that turn them off, and the capture.log line above. The OAuth grant is described the way the vendored skill describes it: until it is revoked, or ten years.

Tests

Run in this branch's worktree with MEMVARA_LIBRARY pointing at a checkout of v0.15.0 whose origin/main is the same commit, so the drift and freshness checks compared against the tag. Hook tests ran with stdin closed (</dev/null).

python3 -m unittest discover -s test -v
Ran 46 tests
OK

Review

A code review at high effort ran on this pull request. The review command could not target a pull request in this repository from the session that opened it, so the reviewer read git diff origin/main...HEAD at the same depth, and checked each claim in the files this repository owns against the vendored code and the core CHANGELOG. The vendored trees were left out because they are byte-identical to the tag.

It found nothing to fix here. The review of the same section in cursor-memvara found that the counts/ bullet credited the first number to all the hooks, when only the per-prompt recall hook adds to it. That applies here too and is fixed in 7abc3e4.

Not in this pull request

Re-vendors the skill and the hook tree from memvara/memvara v0.15.0
(026be5cf) with this repository's own sync steps, moves skill.lock and
hooks.lock to that commit, keeps this repository's host= line, and composes
CLAUDE.md from plugin-claude.md with the local block unchanged.

The hook tree was pinned before v0.10.0, so this brings six releases of hook
changes. Eight files are new and are now listed in ALLOWED_HOOK_FILES after
being read: lib/agentic.py, lib/counts.py, lib/mark.py, lib/project.py,
lib/project_vectors.json, lib/read_model.py, lib/settings.py and
lib/state_file.py. Agentic capture (#241) runs only when the first extractor
is claude -p, so it stays inert on this host. The allowance and single-send
fixes (#245) and the capture-run header (#246) are in the shared hosted
client.

The README now says what the hooks keep and send: the project cache and the
Memvara-Project header, the per-session counts, the recall mark, the
switches in ~/.memvara/settings.json, and the capture.log line agentic
capture leaves on this host. It also states the OAuth grant length the
vendored skill states.
The counts file records lines the per-prompt recall hook injected, not the
session-start block, so the README now says the recall hook.
@sethigoldy
sethigoldy merged commit 47838ba into main Sep 24, 2026
1 check passed
@sethigoldy sethigoldy mentioned this pull request Sep 24, 2026
sethigoldy added a commit that referenced this pull request Sep 24, 2026
Bumps the plugin version from 0.2.4 to 0.3.0, so that existing installs are offered the skill and hooks from memvara core v0.15.0, vendored in #50. Also corrects three places that said the hooks arrived in 0.2.5; they shipped in 0.2.4.
@sethigoldy
sethigoldy deleted the sync/core-v0.15.0 branch September 24, 2026 11:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant