Harness 0.1

Capabilities

Everything an agent needs but the model

6 capability groups and an honest status table. The details live in the docs next to the code.

Operation

The agent lives on its own and remembers what it did.

  • A 24/7 daemon

    harnessd on a server or laptop: systemd, launchd, start from the app, restart from the UI.

  • Projects

    A folder, a default agent and chats inside. Deleting a project keeps the history.

  • Agent profiles

    Persona, tool allow-list, step, token and time limits, own model and working directory.

  • Scheduler

    Cron, a fresh session per run, delivery to file, stdout or webhook, dry-run for checks.

Context

Memory is files; search is derived.

  • File memory

    Facts about the user and the project in Markdown, the memory tool, a block in the system prompt.

  • Skills

    Instructions with frontmatter, a catalog in the prompt, creation and audit. A skill is text, not a plugin.

  • Session search

    FTS5 and vector search over embeddings, including hosted /v1/embeddings.

  • Compression

    Old turns are dropped while a context.compacted event stays in the journal.

Tools

Power and limits in the same place.

  • Files and shell

    read, write, edit, glob, grep and shell with output limits and a timeout.

  • MCP

    The client attaches other servers; the built-in MCP server exposes Harness to other agents.

  • Sandboxes

    local or docker without network, with memory and CPU limits.

  • Approvals

    A request appears in the chat feed: allow or deny. A denial does not break the turn.

Models

A provider is a setting, not a dependency.

  • Providers

    Anthropic, OpenAI, Ollama, Ollama Cloud and local OpenAI-compatible servers.

  • Fallback

    A model chain with cooldown: if a provider fails, the next one finishes the turn.

  • Model choice

    The provider's model list, a model per chat, the last model for new chats.

  • Budgets

    Tokens, money and time per turn; usage and cost in the inspector.

Surfaces

One logic, thin clients.

  • Web client

    Rail, sessions, tool cards, approvals, inspector, knowledge, settings, two themes.

  • Desktop

    Tauri 2, a universal macOS bundle, tokens in Keychain, the local daemon starts itself.

  • CLI

    One-shot and REPL, approvals, dataset export, doctor, connection profiles.

  • Voice

    A browser microphone, whisper.cpp on the server, speech through say or espeak-ng.

Quality

Verified, not promised.

  • Events

    An append-only journal, rebuilt projections, orphaned turns closed at startup.

  • Evals

    YAML scenarios, a fake provider, behaviour checks rather than source checks.

  • Backups

    Config, memory, skills, agents and a VACUUM INTO SQLite snapshot. No .env or tokens.

  • Observability

    OTLP traces and metrics, audit of sensitive RPCs, healthz for proxies.

Reality check

Status

A short account of what works and where work remains.

AreaStatusNote
Core and providers ready turns, limits, cancellation, fallback, usage
Memory, skills, search ready FTS5, embeddings, compression
Scheduler and subagents ready cron, delivery, task, batch
MCP, voice, OTel ready client and server, whisper, OTLP
Web and desktop ready same assets, universal .app
Linux server ready musl x86_64 and aarch64, installer
Windows in progress build passes, runtime untested
macOS signing in progress needs a Developer ID
Auto-update planned needs a key and release hosting