trailmem 0.1.9 — full multi-host welcome + tool-context transport
What's new
This release completes the multi-host welcome + attribution arc: every host Amit uses now has a proven, codified welcome mechanism and full attribution.
Antigravity (agy) — full transport
- PreToolUse tool-context transport: every agy MCP call goes through one dispatcher (
call_mcp_tool,{ServerName, ToolName, Arguments}). A PreToolUse hook echoes the fullArgumentsback with canonicalsession_contextadded — for trailmem calls only; foreign servers get a bare{}no-op (never a permission decision for tools that aren't ours). - Welcome flipped to session-aware: the PreInvocation welcome now uses
sessions.welcome()(not the stateless fallback). Live-proven: a real agy conversation stored a memory that landed withsession_id antigravity:<conversationId>andwrite_countincremented, so "saved N" statusline tracking now completes. ephemeralMessage→userMessage: the injected briefing persists as a conversation step across all turns (ephemeral was one-invocation-only and evaporated by turn 2).
Kiro — workspace-scoped hook (live-fixed)
- Kiro executes only
<workspace>/.kiro/hooks/; user-level~/.kiro/hooks/is dead. The SessionStart hook is now a per-workspace artifact (re-runtrailmem integratein each Kiro workspace). .kiro/gitignored (hook file carries a machine-local absolute path).
Claude Code — hooks artifact codified
integratenow manages SessionStart + SessionEnd hook groups in~/.claude/settings.json. SessionStart carries matcherstartup|clear(a matcherless group re-injects the briefing on every resume/compaction). Install/remove touch only groups whose command runstrailmem hook; foreign groups survive; a legacy matcherless trailmem group is upgraded in place.
Codex — hooks repointed to global python
hooks.jsonSessionStart command now uses the canonical global-tool interpreter (was a dev-venv path).
Other
trailmem edit --project <abs|global>: a memory's project scope is now editable in place (no new MCP tool — per-session token cost stays flat).- New test suites:
test_agy_hook.py,test_claude_hook.py. All 10 suites pass.
Upgrade
uv tool install trailmem@latest --force
trailmem integrate # re-run to install the Kiro workspace hook + Claude hooks artifactThen restart every agent so running MCP servers pick up the new code (trailmem doctor flags stale servers).
Full diff: v0.1.8...v0.1.9