# claude-subconscious | Letta | Knowledge Base | Instagit

Give Claude Code a subconscious

GitHub Stars: 1.7k

Repository: https://github.com/letta-ai/claude-subconscious

---

## Articles

### [How the Claude Subconscious Plugin Handles Agent ID Changes and Conversation Format Migrations](/letta-ai/claude-subconscious/plugin-handle-agent-id-changes-migration)

Discover how the Claude Subconscious plugin seamlessly handles agent ID changes and conversation format migrations using a persistent JSON mapping. It automatically detects switches and upgrades data without user intervention.

- Tags: internals
- Published: 2026-03-26

### [SDK_TOOLS_BLOCKED in Letta SDK Sessions: Why Interactive Tools Are Restricted](/letta-ai/claude-subconscious/sdk-tools-blocked-restrictions-sdk-sessions)

Understand SDK_TOOLS_BLOCKED in Letta SDK sessions. Learn why interactive tools like AskUserQuestion are restricted to ensure deterministic, non-interactive execution and prevent hangs.

- Tags: how-to-guide
- Published: 2026-03-26

### [How the SDK Worker Processes Transcripts in the Background in letta-ai/claude-subconscious](/letta-ai/claude-subconscious/sdk-worker-process-transcripts-background)

Discover how the letta-ai/claude-subconscious SDK worker in send_worker_sdk.ts efficiently processes transcripts in the background. Learn about its non-blocking approach to sending messages and updating sync states.

- Tags: internals
- Published: 2026-03-26

### [Claude‑Code Transcript Processing Flow: Extracting Messages, Thinking Blocks, and Tool Usage](/letta-ai/claude-subconscious/transcript-processing-flow-extract-data)

Discover the Claude-Code transcript processing flow. Extract user messages, thinking blocks, and tool usage from JSONL files. Format data into XML payloads for agent consumption with letta-ai/claude-subconscious.

- Tags: how-to-guide
- Published: 2026-03-26

### [How to Configure a Different Agent Per Project Using LETTA_AGENT_ID with direnv](/letta-ai/claude-subconscious/configure-agent-per-project-letta-agent-id-direnv)

Easily configure a different Letta agent per project using LETTA_AGENT_ID and direnv. Automatically set environment variables by loading .envrc files to manage multiple agents in your projects.

- Tags: how-to-guide
- Published: 2026-03-26

### [Session State Caching Mechanism and lastProcessedIndex in Claude Subconscious](/letta-ai/claude-subconscious/session-state-caching-lastprocessedindex)

Discover how Claude Subconscious uses session state caching with a durable JSON file to store lastProcessedIndex, preventing duplicate transcript messages across restarts.

- Tags: internals
- Published: 2026-03-26

### [How the Claude-Subconscious Plugin Handles Cleaning Up Legacy <letta> Content from CLAUDE.md](/letta-ai/claude-subconscious/plugin-handle-legacy-letta-content-cleanup)

Learn how the Claude-Subconscious plugin automatically cleans legacy <letta> content from CLAUDE.md. Prevent duplicate data with the cleanLettaFromClaudeMd utility. Explore the script for details.

- Tags: how-to-guide
- Published: 2026-03-26

### [How to Debug Hook Failures Using Log Files in $TMPDIR/letta-claude-sync-$UID](/letta-ai/claude-subconscious/debug-hook-failures-letta-claude-sync-logs)

Debug hook failures in letta-claude-sync-$UID log files. Discover specific error details for each hook in dedicated session and message log files to quickly resolve issues.

- Tags: how-to-guide
- Published: 2026-03-26

### [Letta REST API vs Letta Code SDK: 8 Key Differences in the Claude-Subconscious Plugin](/letta-ai/claude-subconscious/letta-rest-api-vs-code-sdk-plugin-usage)

Compare Letta REST API vs SDK for Claude-Subconscious plugin. Discover differences in manual HTTP handling versus high-level session abstraction with real-time streaming and automatic auth.

- Tags: comparison
- Published: 2026-03-26

### [How Claude Subconscious Achieves Two-Way Communication with Claude Code](/letta-ai/claude-subconscious/claude-subconscious-two-way-communication-claude-code)

Discover how Claude Subconscious achieves two-way communication with Claude Code using three hook scripts for persistent conversations, XML transcript updates, and agent response injection.

- Tags: deep-dive
- Published: 2026-03-26

### [Windows SilentLauncher in Claude Subconscious: How It Spawns Background Workers Without Console Flash](/letta-ai/claude-subconscious/windows-silentlauncher-background-worker-spawning)

Discover the Windows SilentLauncher in Claude Subconscious. Learn how this C# executable spawns Node.js background workers invisibly, avoiding the console flash on Windows 11. Optimize your workflows now.

- Tags: how-to-guide
- Published: 2026-03-26

### [How to Use LETTA_HOME to Consolidate Claude-Subconscious State Across Multiple Projects](/letta-ai/claude-subconscious/use-letta-home-consolidate-state-projects)

Consolidate Claude-Subconscious state across projects using LETTA_HOME. This environment variable enables memory sharing and a unified agent ID, simplifying multi-project agent management.

- Tags: how-to-guide
- Published: 2026-03-26

### [How the Letta Code SDK Grants the Subconscious Agent Access to Read, Grep, and Glob Tools](/letta-ai/claude-subconscious/letta-code-sdk-tool-access-read-grep-glob)

Discover how the Letta Code SDK empowers your Subconscious agent with Read, Grep, and Glob tools. Learn to configure access via sessionOptions and environment variables for enhanced functionality.

- Tags: deep-dive
- Published: 2026-03-26

### [How the PreToolUse Hook Injects Mid-Workflow Updates Using additionalContext](/letta-ai/claude-subconscious/pretooluse-hook-inject-mid-workflow-updates)

Learn how the PreToolUse hook injects mid-workflow updates using additionalContext in letta-ai/claude-subconscious. Get real-time agent updates and synchronize state seamlessly.

- Tags: internals
- Published: 2026-03-26

### [How to Set Up a Custom Letta Agent with a Different Memory Block Architecture](/letta-ai/claude-subconscious/setup-custom-agent-different-memory-architecture)

Learn to set up a custom Letta agent with a unique memory block architecture. Define new block labels and import them easily without modifying hooks.

- Tags: how-to-guide
- Published: 2026-03-26

### [Conversation Bookkeeping System in `.letta/claude/`: How Session Mapping Works in Claude Subconscious](/letta-ai/claude-subconscious/conversation-bookkeeping-system-letta-claude)

Learn how the conversation bookkeeping system in .letta/claude/ maps session IDs to conversation and agent IDs for persistent conversation resumption. Understand durable JSON map functionality.

- Tags: internals
- Published: 2026-03-26

### [How the Claude Subconscious Auto-Import Process Works Without LETTA_AGENT_ID](/letta-ai/claude-subconscious/auto-import-process-no-letta-agent-id)

Discover how the Claude Subconscious auto import process functions without LETTA_AGENT_ID. Learn how it automatically provisions the Subconscious.af agent for Letta.

- Tags: internals
- Published: 2026-03-26

### [How Claude Subconscious Manages State Across Multiple Projects with a Single Agent Brain](/letta-ai/claude-subconscious/manage-state-multiple-projects-single-agent-brain)

Discover how Claude Subconscious manages state across projects using a single agent brain. Learn about durable JSON state storage and central conversation mapping via LETTA_HOME.

- Tags: how-to-guide
- Published: 2026-03-26

### [Async Hook Pattern in Claude Code Stop Hooks: How It Prevents Blocking](/letta-ai/claude-subconscious/async-hook-pattern-stop-hook-non-blocking)

Discover the async hook pattern in Claude Code's Stop hook. Learn how it prevents UI freezing by handling I/O asynchronously in background processes, ensuring responsiveness.

- Tags: deep-dive
- Published: 2026-03-26

### [How to Configure LETTA_SDK_TOOLS for Client-Side Tool Access in the Background Agent](/letta-ai/claude-subconscious/configure-letta-sdk-tools-background-agent)

Configure LETTA_SDK_TOOLS for background agent access to Letta SDK tools. Set the environment variable to read-only, full, or off to control tool invocation.

- Tags: how-to-guide
- Published: 2026-03-26

### [Whisper Mode vs Full Mode in Claude Subconscious: Context Injection Differences](/letta-ai/claude-subconscious/whisper-mode-vs-full-mode-context-injection)

Discover the key differences between Claude Subconscious whisper mode and full mode. Understand context injection for agent messages and memory blocks to enhance your AI's state synchronization.

- Tags: comparison
- Published: 2026-03-26

### [The Eight Memory Blocks in the Default Subconscious Agent Explained](/letta-ai/claude-subconscious/subconscious-agent-memory-blocks-explained)

Explore the eight memory blocks in the default Subconscious agent: core directives, guidance, pending items, project context, self improvement, session patterns, tool guidelines, and user preferences. Understand their functions...

- Tags: deep-dive
- Published: 2026-03-26

### [How Claude Subconscious Integrates with Claude Code Hooks: SessionStart, PreToolUse, UserPromptSubmit, and Stop](/letta-ai/claude-subconscious/claude-subconscious-claude-code-hooks-integration)

Discover how Claude Subconscious integrates with Claude Code hooks like SessionStart, PreToolUse, UserPromptSubmit, and Stop. Learn to synchronize Claude Code sessions and Letta agent conversations via TypeScript scripts.

- Tags: internals
- Published: 2026-03-26

