Skip to content

mait-code

A companion framework that extends Claude Code with persistent memory, a customisable identity, and reusable skills. It transforms Claude Code from a stateless coding assistant into a coding companion that remembers your projects, preferences, and patterns across sessions.

Key features

  • Persistent memory — three-tier memory system (raw observations, curated facts, hybrid FTS5 + vector search) with global, project, and branch scoping.
  • Knowledge graph — entity and relationship tracking extracted automatically from conversations.
  • Companion identity — customisable soul document and user context that shape how the companion communicates and makes decisions.
  • Reactive hooks — SessionStart injects companion context; PreCompact and SessionEnd extract observations asynchronously.
  • Observation pipeline — automatic extraction of facts, preferences, decisions, entities, and relationships via Claude Haiku.
  • CLI tools — memory, reminders, a cross-project kanban board, a quick-capture inbox, and web fetch (mc-tool-memory, mc-tool-reminders, mc-tool-board, mc-tool-inbox, mc-tool-web-fetch).
  • TUIs — full-screen Textual apps sharing one house theme: the home hub (mait-code home, or just mait-code on a terminal) with its user-authored start page of widget and shell-command tiles, the kanban board (mait-code board), the settings editor (mait-code settings), the review queue (mait-code review), and the read-only memory browser (mait-code memory), observations browser (mait-code observations), graph explorer (mait-code graph) and log viewer (mait-code logs).
  • Memory review — important-but-ageing memories resurface in a due queue; confirm, refine or retire each in place so curated memory stays true instead of quietly decaying.
  • The Bridge — an opt-in link to your phone: capture into the inbox from anywhere, and get due reminders as notifications with a Done button that round-trips back. Disabled by default, with zero network calls until switched on.
  • Skills — slash commands for memory (/recall, /remember, /reflect), reminders (/remind, /reminders), the board (/board), capture triage (/triage), web fetch (/web-fetch), and workflow (/commit, /pre-pr-review).

Quick start

curl -fsSL https://raw.githubusercontent.com/wiktordepina/mait-code/main/scripts/bootstrap.sh | bash

This installs uv if missing, clones the latest release, runs uv tool install, then sets up symlinks, settings, and data directories.

Then personalise:

$EDITOR ~/.claude/mait-code-data/soul_document.md
$EDITOR ~/.claude/mait-code-data/user_context.md

# Start Claude Code in any project — the companion loads automatically
claude

Prerequisites

See Setup for the full walkthrough, flag reference, and the from-source alternative.

Where to go next

  • Guide — step-by-step setup and the multi-machine sync workflow.
  • Concepts — the mait philosophy and how the memory system works.
  • Architecture — system design and component overview.
  • Reference — slash-command catalogue and Python API reference.
  • Contributing — development guide and documentation conventions.

Source & issues

The project is developed on GitHub at wiktordepina/mait-code. Bug reports and contributions are welcome.