v0.7.1 — Fix Claude/Codex agent misdetection
Bugfix
Claude Code recalls were being logged — and shown on the dashboard — as Codex, even when Codex was never used.
Root cause: detect_agent() treated the presence of permission_mode as a Codex signal. Per the Claude Code hooks reference, permission_mode is a base field on every Claude Code hook input (default | plan | acceptEdits | dontAsk | bypassPermissions), so it can't discriminate between agents.
Fix: Per the OpenAI Codex hooks docs, Codex input carries model and a Codex-specific turn_id extension that Claude Code never sends. Detection now keys on those.
Changes
detect_agent: droppermission_mode, matchturn_id/model- Regression tests for both directions (Claude+
permission_mode→ claude;turn_id→ codex) - 287 tests passing
Upgrade: pipx upgrade memor-cli (or pip install -U memor-cli)
Full diff: v0.7.0...v0.7.1