Files
claude-mem/docs/context/claude-code/exit-codes.md
T
basher83 97d565e3cd Replace search skill with mem-search (#91)
* feat: add mem-search skill with progressive disclosure architecture

Add comprehensive mem-search skill for accessing claude-mem's persistent
cross-session memory database. Implements progressive disclosure workflow
and token-efficient search patterns.

Features:
- 12 search operations (observations, sessions, prompts, by-type, by-concept, by-file, timelines, etc.)
- Progressive disclosure principles to minimize token usage
- Anti-patterns documentation to guide LLM behavior
- HTTP API integration for all search functionality
- Common workflows with composition examples

Structure:
- SKILL.md: Entry point with temporal trigger patterns
- principles/: Progressive disclosure + anti-patterns
- operations/: 12 search operation files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* docs: add CHANGELOG entry for mem-search skill

Document mem-search skill addition in Unreleased section with:
- 100% effectiveness compliance metrics
- Comparison to previous search skill implementation
- Progressive disclosure architecture details
- Reference to audit report documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* docs: add mem-search skill audit report

Add comprehensive audit report validating mem-search skill against
Anthropic's official skill-creator documentation.

Report includes:
- Effectiveness metrics comparison (search vs mem-search)
- Critical issues analysis for production readiness
- Compliance validation across 6 key dimensions
- Reference implementation guidance

Result: mem-search achieves 100% compliance vs search's 67%

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: Add comprehensive search architecture analysis document

- Document current state of dual search architectures (HTTP API and MCP)
- Analyze HTTP endpoints and MCP search server architectures
- Identify DRY violations across search implementations
- Evaluate the use of curl as the optimal approach for search
- Provide architectural recommendations for immediate and long-term improvements
- Outline action plan for cleanup, feature parity, DRY refactoring

* refactor: Remove deprecated search skill documentation and operations

* refactor: Reorganize documentation into public and context directories

Changes:
- Created docs/public/ for Mintlify documentation (.mdx files)
- Created docs/context/ for internal planning and implementation docs
- Moved all .mdx files and assets to docs/public/
- Moved all internal .md files to docs/context/
- Added CLAUDE.md to both directories explaining their purpose
- Updated docs.json paths to work with new structure

Benefits:
- Clear separation between user-facing and internal documentation
- Easier to maintain Mintlify docs in dedicated directory
- Internal context files organized separately

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Enhance session management and continuity in hooks

- Updated new-hook.ts to clarify session_id threading and idempotent session creation.
- Modified prompts.ts to require claudeSessionId for continuation prompts, ensuring session context is maintained.
- Improved SessionStore.ts documentation on createSDKSession to emphasize idempotent behavior and session connection.
- Refined SDKAgent.ts to detail continuation prompt logic and its reliance on session.claudeSessionId for unified session handling.

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Alex Newman <thedotmack@gmail.com>
2025-11-11 16:15:07 -05:00

2.5 KiB

Claude Code Hooks Exit Code Cheat Sheet

Exit Code Behavior (1)

  • Exit code 0: Success. stdout is shown to the user in transcript mode, except for UserPromptSubmit hook where stdout is injected as context (1)
  • Exit code 2: Blocking error. stderr is fed back to Claude to process automatically (1)
  • Other exit codes: Non-blocking error. stderr is shown to the user and execution continues (1)

Per-Hook Event Behavior (1)

Hook Event Exit Code 2 Behavior
PreToolUse Blocks the tool call, shows stderr to Claude (1)
PostToolUse Shows stderr to Claude (tool already ran) (1)
Notification N/A, shows stderr to user only (1)
UserPromptSubmit Blocks prompt processing, erases prompt, shows stderr to user only (1)
Stop Blocks stoppage, shows stderr to Claude (1)
SubagentStop Blocks stoppage, shows stderr to Claude subagent (1)
PreCompact N/A, shows stderr to user only (1)
SessionStart N/A, shows stderr to user only (1)
SessionEnd N/A, shows stderr to user only (1)

Quick Reference

  • Success: process.exit(0) - Operation completed successfully
  • Block & feedback: process.exit(2) - Block operation and give Claude feedback via stderr
  • Non-blocking error: process.exit(1) - Show error to user but continue execution

Important: Claude Code does not see stdout if the exit code is 0, except for the UserPromptSubmit hook where stdout is injected as context (1)