OpenTerminal

By SkynetBuild

The coding agent CLI that isn’t locked to one model.

A real agent loop in your terminal — it reads, edits, and runs commands in your project. Point it at Claude, GPT, Gemini, Grok, or something fully local. Same tools, same permissions, same sessions, whichever one is answering.

Python package · or git clone github.com/skynetbuild/openterminal

openterminal
OpenTerminal — anthropic/claude-sonnet-4-5 · ~/pagination-fix
AnthropicOpenAIGoogle GeminixAI GrokOllamaOllama CloudLM StudiovLLM+ any OpenAI-compatible endpoint

Why

Every agentic coding CLI today locks you into one vendor. This one doesn’t.

A real agent loop

Not a chat wrapper. It reads, searches, edits, and runs commands in your project — proposing tool calls, executing them, and feeding results back until the task is done.

Every provider, one CLI

Anthropic, OpenAI, Gemini, and Grok get native tool-calling adapters. Anything OpenAI-compatible — Ollama, LM Studio, vLLM, a provider we've never heard of — rides the same adapter for free.

You approve what touches disk

Reads are free. Writes and shell commands stop for your review first — once, for the session, or never — with the diff right there before you decide.

Automatic fallback

Configure a backup model. If the primary errors out before answering — a bad key, an outage, a rate limit — OpenTerminal retries on the next one and tells you it did.

Sessions that survive closing the terminal

Every conversation is saved to disk. --continue picks up where you left off in this project; --resume <id> for anything older.

Add your own provider, zero code

Any OpenAI-compatible endpoint — a self-hosted vLLM box, your employer's internal gateway, a brand-new provider — is a few lines in a config file, not a pull request.

How it works

Three steps, and the third one is the one that actually changes your code.

01

Point it at a project

Run openterminal in any repo. It reads your project's git state and an OPENTERMINAL.md/AGENTS.md if you have one, and folds that into every session.

02

Say what you need, in plain language

It reads and searches the codebase, proposes edits as reviewable diffs, and runs shell commands — asking first for anything that touches disk.

03

Approve, and it's done

Once for a change, for the whole session, or never — your call, every time. The result lands in your project, not in a chat window you have to copy out of.

Product philosophy

“Every coding agent CLI today ships as a wrapper around one company’s model. We think the terminal, the tools, and the permission model are the product — the model behind it should be a setting, not a lock-in.”

Bring your own model

Config, not code.

Anthropic and Gemini get native adapters for the best tool-calling fidelity. Everything else — OpenAI, Grok, Ollama, LM Studio, vLLM, or an endpoint we’ve never heard of — speaks the same OpenAI-compatible wire format, so pointing OpenTerminal at it is a few lines in a TOML file. Set a fallback chain and it switches automatically if the primary model errors out before answering.

# ~/.config/openterminal/config.toml
model = "anthropic/claude-sonnet-4-5"
fallback_models = ["openai/gpt-5.2", "ollama/qwen2.5-coder:32b"]

[custom_providers.myprovider]
display_name = "My Provider"
base_url = "https://api.myprovider.com/v1"
api_key = "..."
default_model = "my-model"

By SkynetBuild

SkynetBuild is an independent lab building agentic developer tools — OpenTerminal is the first one out the door. No VC-mandated model lock-in, no walled garden: pick the tools you already build with.

Visit skynet.build →

Your terminal, your model.

Read the docs on GitHub →