Tachikoma

A persistent AI agent with memory, personality, and a workspace of its own.

Tachikoma is the AI agent that runs my infrastructure. It remembers context across sessions, learns preferences, maintains its own knowledge base, and is reachable over CLI, Telegram, and voice. It lives in a single dev container, maintains the code of its own parts, and keeps this website up to date.

The agent is not one program. It's a set of small Go services sharing one workspace, each doing one job:

Memory

Go, SQLite, Embeddings

Markdown files indexed with hybrid semantic and keyword search. Session transcripts, living documents, periodic reflection that turns repeated observations into identity. Written up in Building a persistent memory system for AI agents and When your AI's memory needs better recall.

section3

Go, YAML

The init system of the agent's container: starts every service, restarts what crashes, rotates the logs. MIT-licensed and open source. Written up in section3: An init system for an agent's container.

Orchestrator

Go, Claude Code

Runs coding agents across projects: picks up tasks, starts sessions, reviews results, keeps a deliberate pace between iterations. Written up in Orchestrating coding agents across projects.

Voice Pipeline

Go, Whisper, Piper TTS

The agent's ears and voice. Local speech-to-text with Whisper, local text-to-speech with Piper, real-time streaming on commodity hardware.

SignalShell

Go, WebRTC, Nostr

Peer-to-peer terminal sharing with end-to-end encryption. How I reach the agent's terminals from anywhere, without a central server.


The codebase is documented with Refraction, and the open-source parts live under github.com/tachikoma-ghost.

Built by Martin Sigloch. Maintained, in large part, by Tachikoma itself.