Modules

Context Pilot is built as a Cargo workspace with 14+ independent crates. Each module owns its tools, panels, and state. Activate only what you need.

ℹ️ Module management Use module_toggle to activate/deactivate modules at runtime. Some modules depend on others — you can't deactivate a dependency while its dependent is active. Core modules cannot be deactivated.

🏗 Core (built-in)

Overview, Conversation, Questions

Always Active

The core modules provide the foundation: the conversation panel (chat history + streaming), the overview panel (context elements, statistics, configuration), and the questions module (interactive multi-choice forms). These cannot be deactivated.

📁 Files

cp-mod-files

Default Active

File management: Open, Edit, Write tools. Creates file panels in the sidebar with syntax-highlighted content. Tracks file modifications and provides diff output for edits. File panels auto-suicide when the file is deleted from disk.

🌳 Tree

cp-mod-tree

Default Active

Interactive directory tree view: tree_filter, tree_toggle, tree_describe tools. Gitignore-style filtering, folder open/close, file/folder descriptions with change markers. Also provides file path listing for the @ autocomplete feature.

🔀 Git

cp-mod-git

Default Active

Git integration: git_execute tool. Read-only commands (log, diff, show, status, blame) create auto-refreshing dynamic panels. Mutating commands (commit, push, merge) execute directly and return output. Shell operators blocked for security.

🐙 GitHub

cp-mod-github

Conditional

GitHub CLI integration: gh_execute tool. Requires GITHUB_TOKEN environment variable. Read-only commands create auto-refreshing panels (120s refresh interval). Supports PR management, issue tracking, and repository operations.

💻 Console

cp-mod-console

Default Active

Process management: console_create, console_send_keys, console_wait, console_watch, console_easy_bash. Spawns background processes that survive TUI reloads. Console panels auto-suicide when sessions are lost or stale siblings detected (callback dedup).

🧠 Memory

cp-mod-memory

Default Active

Persistent memory: memory_create, memory_update. Memories survive across sessions and TUI restarts. Each memory has importance level (low/medium/high/critical), labels for categorization, and optional rich body text. Stored in .context-pilot/memory.json.

📋 Logs

cp-mod-logs

Default Active

Timestamped logging: log_create, log_summarize, log_toggle. Logs are medium-lifecycle — they bridge conversation reloads and maintain context across sessions. Summaries collapse multiple entries under a parent. Stored in .context-pilot/logs.json.

✅ Todo

cp-mod-todo

Default Active

Task management: todo_create, todo_update, todo_move. Supports nested tasks via parent_id. Statuses: pending, in_progress, done, deleted. Integrates with the Spine module for autonomous workflows — when continue_until_todos_done is enabled, the AI auto-continues until all todos are done.

📝 Scratchpad

cp-mod-scratchpad

Default Active

Temporary storage: scratchpad_create_cell, scratchpad_edit_cell, scratchpad_wipe. Cells store notes, code snippets, or intermediate data during the conversation. Lighter than memories — intended for within-session use.

📚 Prompt (Library)

cp-mod-prompt

Default Active

Agent, skill, and command management. The Library panel shows all available agents (system prompts), skills (loadable knowledge), and slash commands. Tools: agent_create, agent_load, agent_delete, skill_create, skill_load, skill_unload, command_create, command_delete, Edit_prompt, and the Library editor tools.

🔔 Callback

cp-mod-callback

Default Active

File edit callbacks: Callback_upsert, Callback_toggle, Callback_open_editor, Callback_close_editor. Define bash scripts that auto-fire when the AI edits files matching glob patterns. Supports blocking mode (AI waits for result), one-at-a-time execution, timeouts, and custom success messages. Exit code 7 silently suppresses output.

🌐 Brave Search

cp-mod-brave

Conditional

Web search via Brave: brave_search, brave_llm_context. Requires BRAVE_API_KEY environment variable. Search with operators, Brave Goggles for domain re-ranking, and LLM-optimized content extraction. Includes a built-in "Brave Goggles" skill with curated goggle recommendations.

🔍 Firecrawl

cp-mod-firecrawl

Conditional

Web scraping via Firecrawl: firecrawl_scrape, firecrawl_search, firecrawl_map. Requires FIRECRAWL_API_KEY environment variable. Full-page extraction via headless Chromium, combined search+scrape, and domain URL discovery.

📄 Typst (PDF)

cp-mod-typst

Default Active

PDF generation via embedded Typst compiler: typst_execute. Compile .typ documents to PDF, init templates from Typst Universe (@preview/ packages), watch documents for auto-recompile on dependency changes, list fonts, query metadata. Templates stored in .context-pilot/shared/typst-templates/.

🦴 Spine

cp-mod-spine

Default Active

Auto-continuation and notifications: spine_configure, notification_mark_processed, coucou. Guard rails (max cost, max messages, max tokens, max duration) prevent runaway AI. TodoWatcher fires notifications when todos need attention. Coucou schedules timed reminders.

💾 Preset

cp-mod-preset

Default Active

Configuration snapshots: preset_snapshot_myself, preset_load. Save and restore: active agent, active modules, disabled tools, worker data (todos, scratchpad), and dynamic panels. Built-in presets: admin, context-builder, context-cleaner, planner, worker.