Commit Graph

8 Commits

Author SHA1 Message Date
Alex Newman
e5fa404640 feat(memory-claudemem): add workerPath config for manual installs
- Add workerPath config option to specify custom worker-service.cjs location
- Check custom path first, then fall back to Claude plugin cache auto-discovery
- Update docs with simpler manual install instructions (no need to copy to cache)
- Update manifest with workerPath schema and UI hints
2026-01-28 23:45:27 -05:00
Alex Newman
d9859fff81 fix(memory-claudemem): pass last_assistant_message to summarize hook
The summarize hook needs the last assistant message to generate proper
session summaries. Extract it from agent_end event.messages array.
2026-01-28 23:31:08 -05:00
Alex Newman
436656058f refactor(memory-claudemem): switch to hook CLI implementation
- Replace HTTP client approach with direct hook CLI spawning
- Auto-discover worker-service.cjs from Claude plugin cache
- Sync MEMORY.md on session and gateway start
- Handle custom project names via temp directories
- Fire-and-forget observation recording for performance
- Remove unused client.ts, config.ts, types.ts
2026-01-28 23:29:08 -05:00
Alex Newman
f07fa66019 feat(memory-claudemem): implement CLI commands
Add clawdbot claude-mem CLI commands:
- status: check if worker is responding
- search <query>: search memories with optional --limit

Part of claude-mem integration (Phase 6/7).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 14:11:14 -05:00
Alex Newman
0cefba22fe feat(memory-claudemem): implement progressive disclosure tools
Add two memory tools following claude-mem's 3-layer pattern:
- memory_search: Layer 1, compact results (~50-100 tokens)
  Returns [#id] title for filtering
- memory_observations: Layer 3, full details (~500-1000 tokens)
  Returns narrative with files_modified

Both use @sinclair/typebox for schema definition.

Part of claude-mem integration (Phase 5/7).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 14:10:09 -05:00
Alex Newman
d9f23cb000 feat(memory-claudemem): implement lifecycle hooks
Add two hooks:
- after_tool_call: fire-and-forget observation to claude-mem
  (skips memory_* tools to prevent recursion)
- before_agent_start: context injection from memory search
  (wraps in <claude-mem-context> tags)

Both hooks have error handling and graceful degradation.

Part of claude-mem integration (Phase 4/7).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 14:08:18 -05:00
Alex Newman
967800c7e3 feat(memory-claudemem): implement HTTP client
Add ClaudeMemClient with methods:
- ping(): health check at /api/health
- observe(): fire-and-forget to /api/sessions/observations
- search(): query /api/search with index format
- getObservations(): batch fetch from /api/observations/batch

All methods use AbortSignal.timeout for request timeouts
and handle errors gracefully (worker may be offline).

Part of claude-mem integration (Phase 3/7).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 14:05:23 -05:00
Alex Newman
346cef2488 feat(memory-claudemem): scaffold plugin structure
Create extensions/memory-claudemem with:
- package.json with workspace references
- clawdbot.plugin.json manifest
- types.ts, config.ts, client.ts (stubs), index.ts

Part of claude-mem integration (Phase 2/7).

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 14:04:28 -05:00