footprint
local SLM · MLX + PyTorch LoRA

Your Claude, learned locally.

when the quota runs out, your model keeps working — in your style, on your machine, offline.

Footprint watches your Claude Code sessions, fine-tunes a small local model on how you and Claude work, and serves it OpenAI-compatible. Cursor, OpenCode, and Codex CLI keep going in the same style — fully offline.

install
$ npm install -g footprint-trace

Your GitHub is the account — we collect nothing. Signing in creates a private footprint-vault repo in your account. API keys and synced context live there; footprint runs no database and never sees your data.

trace
chat with claude
collect
train
install
/footprint

[ SYSTEM // MODULES ]

A model that already knows your project.

trained on your sessions, not the whole internet.

STYLE.LORAon

Learns your style

LoRA fine-tunes a small model on how you and Claude actually work in your projects — not a generic assistant.

SRC ~/.claude/projects · ADAPTER LoRA

PRIV.GUARDon

Private by default

Transcripts and trained weights are gitignored and never leave your machine. No upload, no telemetry.

NET TX 0 B · TELEMETRY NONE

OFFLINE.COREon

Fully offline

Once trained, everything runs locally. No network, no quota, no rate limit between you and your code.

UPLINK NONE · QUOTA ∞

API.BRIDGEon

OpenAI-compatible

Serves at http://127.0.0.1:8399/v1. Point Cursor, OpenCode, or Codex CLI at it and keep going.

PORT 0x20CF · PROTO openai/v1

MULTI.ARCHon

Cross-platform

MLX backend on Apple Silicon, PyTorch everywhere else — macOS, Linux, and Windows all supported.

MLX arm64 · TORCH cuda/cpu

ZERO.HOOKon

No tracer needed

Claude Code already logs every session. Footprint reads those transcripts — nothing to instrument.

READS *.jsonl · HOOKS 0

MODELQwen2.5-Coder-1.5BQUANT4-bitCTX6KPORT8399STATESERVING

Four commands, start to finish.

From your first traced session to a running local model.

01

Trace

Arm a marker so only sessions from now on become training data.

02

Collect

Parse transcripts into chat-format examples — prompts, replies, tool calls.

03

Train

LoRA fine-tune a small model in about ten minutes on your machine.

04

Install

An always-on local server, wired into OpenCode with a /footprint command.

Keep coding when Claude clocks out.

spin up your own model in about ten minutes.