teveus docs
Everything teveus can do, on one page. Press ? inside the app for the short version.
Install
On macOS and Linux, paste this into a terminal.
- Go:
go install github.com/stawan15/teveus@latest - Windows or by hand: download an archive from Releases.
- Installer options: set
TEVEUS_INSTALL_DIR=/usr/local/binorTEVEUS_VERSION=v0.1.1beforesh. The installer checks the download against the release's SHA-256 checksums.
teveus checks GitHub for a new version at most once a day and asks before updating, showing what's new. Choose "Later", skip that version, or turn checks off in /settings. /update checks right away and updates the way you installed (the installer or go install). Running the install line again also updates.
To uninstall, delete the program and, if you want, your settings and saved keys:
rm ~/.local/bin/teveus
rm -rf ~/.config/teveus
Get started
- Open a terminal in your project folder and run
teveus. - Connect an AI with
/login. Nothing is connected until you choose. - Type what you want in plain words, like "find the bug in the login page and fix it", and press enter.
teveus shows every change as a coloured diff before it happens. Press y to allow it, a to always allow it in this project, or n to say no.
The first time, a three-question setup picks how much guidance you want (guided, standard or pro), a colour theme, and how to connect. Run /setup to do it again.
Connect an AI
teveus has two engines behind one interface. Switch with /engine.
Claude Code
For Claude models on your Claude Pro or Max plan. Install Claude Code from Anthropic and sign in to it; teveus runs it as it is. You sign in through Anthropic's own login, and teveus never sees your Claude credentials. The first time, teveus asks you to confirm that it should run your Claude Code under Anthropic's terms.
Direct API
Your own keys, billed by the provider per token. Run /login and pick one:
| OpenRouter | Log in with your browser, no key to copy. Hundreds of models; type free in /model to find free ones. |
|---|---|
| OpenAI, Anthropic, Google Gemini, Groq, DeepSeek, xAI, Mistral | Paste an API key. It's checked before it's saved. |
| Ollama, LM Studio | Run on your own machine. Nothing to set up if the app is running. |
| Custom | Any OpenAI-compatible API: give its base URL (e.g. https://api.together.xyz/v1) and a key. |
Keys are stored only on your computer, in ~/.config/teveus/auth.json, readable only by you. Undo, web tools, MCP, sub-agents and saved permission rules work on this engine; Claude Code brings its own.
Modes
The mode decides how much teveus asks before acting. It's always shown on screen; press shift+tab to cycle through them.
| Mode | -mode | What it does |
|---|---|---|
| ask first | default | Asks before every edit, command, web request and MCP tool. Start here. |
| auto-edit | acceptEdits | Edits files inside the project without asking. Commands and anything outside the project still ask. |
| plan only | plan | Reads and plans, changes nothing. Asks before using the web. |
| autopilot | auto | Approves everything except your deny rules. Use it only in projects you trust. |
Keys
| enter | Send your message |
|---|---|
| shift+enter | New line (or ctrl+j, or \ then enter) |
| ctrl+k | Command palette: find any action |
| / | Slash commands |
| @ | Attach a file by name |
| ctrl+v | Paste an image from the clipboard |
| ↑ ↓ | Prompt history |
| shift+tab | Switch mode |
| esc esc | Stop the current task |
| ctrl+o | Expand or collapse tool output |
| ctrl+b | Show or hide the sidebar |
| ctrl+y | Copy the last reply |
| drag | Select text; it's copied when you let go. Double-click a word, triple-click a line. |
| pgup pgdn | Scroll the conversation |
| ? | Show every shortcut |
| ctrl+c ctrl+c | Quit |
When a change is waiting for you: y allow · a always allow · n deny.
Drop a screenshot on the terminal or press ctrl+v to attach it as [Image #1]. Long pastes fold into [Pasted text #1 +40 lines].
Commands
Type / to see them all, or find them in the ctrl+k palette. On the Claude Code engine, Claude Code's own commands are listed too.
/login |
Connect Claude Code or a provider; /login brave or /login tavily adds a web search key |
|---|---|
/logout |
Remove a saved provider key |
/engine |
Switch engine: claude (Claude Code) or api (your own keys) |
/model |
Switch model; search by name, or type free also /m |
/mode |
Choose the permission mode (same as shift+tab) |
/effort |
How hard the model thinks: auto, low, medium, high, xhigh, max |
/clear |
Start a new conversation also /new /reset |
/resume |
Reopen an earlier conversation in this folder also /r /continue /sessions |
/undo |
Put back the files the last turn changed (Direct API) also /u |
/diff |
Show what changed in the working tree (git) |
/init |
Write AGENTS.md / CLAUDE.md describing this project |
/export |
Save this conversation as Markdown |
/copy |
Copy the last response |
/concise |
Short, direct answers on or off |
/lean |
Send fewer tool definitions (about 2.2k tokens less per request) |
/minimal |
How much code the model may write: off, lite, full, strict |
/trim |
Review uncommitted changes for code you don't need; /trim all checks the whole project |
/permissions |
List, add and remove saved allow/deny rules |
/mcp |
List MCP servers and approve a project's .mcp.json |
/purge |
Delete saved conversations and prompt history |
/update |
Check for a new version of teveus and install it |
/theme |
Change the colour theme |
/sidebar |
Show or hide the sidebar |
/details |
Expand or collapse tool output |
/mouse |
Hand the mouse back to your terminal for its own selection |
/settings |
All preferences in one place also /prefs /config |
/setup |
Run the first-time setup again |
/help |
Keyboard shortcuts and commands also /? /h |
/exit |
Quit also /q /quit |
!command |
Run a shell command, e.g. !npm test |
Effort and savers
/effort sets how hard the model thinks, on a slider you move with ← →:
- auto: the model's own default
- low: quickest and cheapest, for questions and small edits
- medium: everyday coding
- high: tricky bugs and design decisions
- xhigh: deep reasoning, the sweet spot on the newest models
- max: the hardest problems; costs the most
Models that don't support effort simply run at their default.
Three savers cut usage. They're off until you turn them on, and -full turns them off for one run:
/concise: short, direct answers./lean: leaves rarely used tools out of each request./minimal: off, lite, full or strict. The model reuses what exists and writes only what the task needs.
/trim reviews your uncommitted changes for code you don't need; /trim all checks the whole project.
Web, MCP and helpers
On the Direct API engine, the model can also:
- Read web pages (WebFetch), after you approve each one.
- Search the web (WebSearch) with a Brave Search or Tavily key:
/login brave,/login tavily, or theBRAVE_API_KEY/TAVILY_API_KEYenvironment variables. - Send research to sub-agents that read in parallel and can't change anything.
- Use MCP servers from a project's
.mcp.jsonor your own~/.config/teveus/mcp.json.
MCP files use the same format as Claude Code. Servers run as a local program (stdio) or at an address ("type": "http"):
{
"mcpServers": {
"tracker": {
"type": "http",
"url": "https://mcp.example.com/mcp",
"headers": { "Authorization": "Bearer ${TRACKER_TOKEN}" }
},
"files": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "."] }
}
}
${NAME} in a URL or header is read from your environment, so tokens stay out of the file.
A project's .mcp.json can start programs, so its servers stay off until you approve that exact file with /mcp. Editing the file withdraws the approval.
Long conversations are compacted automatically before they outgrow the model.
Permission rules
Answering a (always allow) saves a rule for this project. Manage rules with /permissions, add one with /permissions allow … or /permissions deny …. They use Claude Code's syntax:
Bash | Any command |
|---|---|
Bash(npm test) | Exactly this command |
Bash(go test:*) | Simple commands starting with go test |
WebFetch(domain:go.dev) | Fetching pages from one site |
mcp__github | Every tool of an MCP server; mcp__github__create_issue for one tool |
Edit, Write, WebSearch | A whole tool |
Deny wins over allow and applies in every mode, even autopilot. Allow skips the question but never lifts plan mode. An allowed command prefix never covers a command chained with &&, ;, |, $( ) or redirections. Rules live in ~/.config/teveus/permissions.json, never in your repository. On the Claude Code engine, Claude Code's own rules apply.
Scripts and flags
Run one prompt without the interface and print the reply:
teveus -p "summarise what changed on this branch"
teveus -p "fix the failing test" -mode acceptEdits -json
Tools that need approval are refused unless -mode allows them. -json adds the cost and token counts.
-p "prompt" | Run one prompt without the UI and print the reply |
|---|---|
-json | With -p: print the reply, cost and token counts as JSON |
-mode | default, acceptEdits, plan or auto |
-engine | claude or api |
-model | Model alias or ID, e.g. sonnet or google/gemini-3.5-flash |
-c | Continue the most recent conversation in this folder |
-resume ID | Resume a conversation by ID |
-theme | claude, tokyo-night, catppuccin, gruvbox, high-contrast, light |
-full | Turn the usage savers off for this run |
-claude PATH | Path to the claude program |
-version | Print the version and exit |
Settings and files
Change preferences with /settings. Everything is kept in ~/.config/teveus/ (%AppData%\teveus\ on Windows; set TEVEUS_CONFIG to move it), readable only by you.
| File | Contents | Kept |
|---|---|---|
auth.json | API keys you saved with /login | Until you /logout |
settings.json | Your preferences, and when the last update check ran | Always |
history.json | Your last 500 prompts, for the ↑ key | Until /purge |
sessions/ | Direct API conversations, for /resume | 30 days (keepSessionsDays; -1 keeps them) |
permissions.json | Allow/deny rules you saved | Until you remove them |
mcp-approved.json | Which projects' MCP servers you approved | Always |
mcp.json | Your own MCP servers, for every project | Always |
/purge deletes the saved conversations and prompt history at once. Claude Code keeps its own history in ~/.claude/.
Six themes: claude, tokyo-night, catppuccin, gruvbox, high-contrast and light. /settings also has the guidance level, reduce motion, sidebar and mouse options.
Privacy and security
teveus has no servers, no accounts and no telemetry. What you send goes only to the AI provider you picked, under their terms, and local models stay on your machine. The only request it makes on its own is the daily update check: the latest version number from GitHub, which you can turn off in /settings.
- In the default mode, edits, commands, web requests and MCP tools all ask first.
- The project folder is the boundary: reading or searching outside it asks first in every mode but autopilot.
- teveus's file tools never touch credentials, in any mode: its own keys, Claude Code's login, SSH and GPG keys, and token files like
.aws,.netrcand.npmrc. - Commands you approve run with your permissions. Keep your work in version control and use autopilot only in projects you trust.
The full details are in PRIVACY.md and SECURITY.md. Report vulnerabilities privately through GitHub.