hamr — relay session
~/workspace/hamr (main)⬡ qwen3.6-35b · relay
Current Relay session recording.
hamr current

Designed to help little models survive and big models breathe.

Hamr is the de-facto coding agent for local models, built on Pi as an agent toolkit.

$ npm install -g --ignore-scripts @hamr/coding-agent
hamr doctor
Probes Relay, models, skills, and memory in one command.
Relay

One GPU, many models. Switch mid-session.

Relay is the compatibility gateway between your local llama.cpp server and real agent tooling. Model lifecycle, graceful switching, prefix-cache pre-warming. Point Hamr at Relay and go.

Switch models with /model. Each family gets its own color and glyph. The conversation keeps going.

Qwen Claude Llama Mistral DeepSeek GPT
Relay makes local llama.cpp servers look like hosted APIs. OpenAI + Anthropic compatible. Graceful model switching. No dropped requests. → Relay guide

Provider setup →

hamr — agent workflow
~/workspace/hamr (main)relay session
read → find bug → edit → test → pass. Bounded loop with explicit limits.
Agent loop

think · read · edit · test · verify

A bounded model↔tool loop designed for local inference. Read cache, identical-read detection, escalating nudges, deterministic compaction, repair with verification contracts.

Up to 64 model steps and 192 tool calls. Context is a hard budget — not a suggestion. Won't burn your window. Won't loop forever.

Agent loop docs →

hamr — themes
Theme variables, hot-reload, and custom themes.
Themes

Theme variables. Hot-reload. Custom themes.

JSON themes with variables and token mappings. Edit a theme file and Hamr reloads it without restarting.

Model-adaptive coloring tints the UI to the active model family when available.

Edit a theme JSON and the TUI hot-reloads. No restart.

Theme reference →

Qwen 3
qwen3_xml
Llama 3
llama3_json
Mistral
mistral
DeepSeek
deepseek_v3
Hermes
hermes
GLM-4
glm45
g
Gemma
functiongemma
Llama 4
llama4_pythonic
Granite
granite
OLMo3
olmo3
Kimi
kimi
ƒ
xLAM
xlam
Tool-call parsing

Native parsers for messy model output.

Local models can emit malformed XML, leaked <think> tags, broken JSON, mixed final answers, and truncated tool calls.

Hamr includes native parsers and repair steps for those cases, with model-specific defaults where available.

Parser matrix →

And more

Sessions, memory, sub-agents, skills, SDK

📋

Sessions

JSONL event logs. Resume, fork, replay. Every tool call recorded.

🧠

Holographic memory

SQLite FTS5 search across all sessions. Pattern recall, not just history.

Sub-agents

Parallel orchestration via explicit delegation. Dependency-aware task splitting.

📦

Skills

SKILL.md files auto-discovered from ~/.hamr/skills/ and .hamr/skills/.

🔌

Extensions & MCP

TypeScript extensions for custom tools, commands, and events.

🔧

SDK

Embed the Session, EventBus, and tools in your own apps.

import { AuthStorage, createAgentSession, ModelRegistry, SessionManager } from '@hamr/coding-agent'

const authStorage = AuthStorage.create()
const modelRegistry = ModelRegistry.create(authStorage)
const { session } = await createAgentSession({
  sessionManager: SessionManager.inMemory(),
  authStorage,
  modelRegistry,
})

Built for local inference.

Hamr is a local coding agent for Relay and compatible backends. The runtime is evolving, but the current CLI and docs are usable now.

fork lineage preserveddocs match current package namesruntime still evolving