Terminal coding agent

Veyyon

A terminal coding agent. Install and start working.

$ curl -fsSL https://get.veyyon.dev | sh
then veyyon or vey in a repository
Veyyon stores a release key as a protected placeholder, writes a phased todo list, fans refactors out to parallel workers, verifies the build, and signs the result through the placeholder after an explicit approval
Implementation

Stack and loop

Architecture and core loop.

Loop

AgentSession tool loop

Model stream → tools (read, bash, edit, …) → results → next turn. Plan/goal/vibe modes change tools and prompts in the engine. /review and advisor are separate surfaces.

Stack

Bun/TypeScript + Rust natives

CLI, TUI, providers, and session loop are TypeScript on Bun. Grep, PTY/shell, hashline apply, and related hot paths use @veyyon/natives.

Extension points

MCP, skills, hooks

User/project MCP JSON, filesystem skills, TypeScript hooks, plugins. Non-interactive: veyyon --print.

Models

Providers and config

Catalog providers (Anthropic, OpenAI, Google, Groq, OpenRouter, …) and local discovery (Ollama, LM Studio, llama.cpp). Credentials stay on the host for BYOK paths.

  • Interactive: /model, --model; stored as modelRoles.default.
  • Roles: smol, slow, plan, task, advisor, … via modelRoles.
  • Overrides: subagent.model, compaction.model.
  • Cycle: cycleOrder (default smol, slow).
Model selection, roles, and compaction
Quickstart

Install and run

Install

curl -fsSL https://get.veyyon.dev | sh on Linux or macOS, irm https://veyyon.dev/install.ps1 | iex on Windows. Binary: veyyon / vey.

Auth

/login <provider> or set the provider API key env var. Local Ollama/LM Studio/llama.cpp discovery when the daemon is running.

Run

veyyon in a repo; /model selects the interactive model. Config default: ~/.veyyon/profiles/default/agent/.

Get started

Install, auth, run

One-line installer, then a provider key or a local daemon. Then vey in a repository.