Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [6.8.1] - 2026-09-04

### Added

- **Dynamic model catalog synchronization.** OrbCode now fetches the active model catalog dynamically from the backend (`/v1/models`) on startup and when refreshing usage (`fetchDynamicModels`), registering returned OSS models into `BUILTIN_AXON_MODELS` and `AXON_MODELS` so newly added models appear in the picker without requiring hardcoded updates. Models the backend retires are pruned after a successful fetch (empty or failed responses never wipe the offline fallback), and the catalog's `iconUrl` / `costMultiplier` fields are captured on each model.
Expand All @@ -31,6 +33,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
model selection auto-resets to the new default on next launch, and a
requested Axon id (`--model` / `MATTERAI_MODEL`) now warns and falls back
to the default.
- **Model picker visible rows doubled to 12.** The scrollable model picker now shows 12 rows instead of 6 for better catalog visibility.
- **Rebranded tagline and descriptions.** Removed "powered by Axon models by MatterAI" from the CLI description, branding tagline, and system prompt role definition; now reads "by MatterAI".

## [6.8.0] - 2026-08-28

Expand Down
104 changes: 61 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
[![github issues](https://img.shields.io/github/issues/MatterAIOrg/OrbCode?logo=github)](https://github.com/MatterAIOrg/OrbCode/issues)
[![docs](https://img.shields.io/badge/docs-docs.matterai.so-purple)](https://docs.matterai.so/orbcode-cli/overview)

Agentic coding in your terminal — powered by **Axon models by MatterAI**.
Agentic coding in your terminal — by MatterAI

> 📖 **Full documentation: <https://docs.matterai.so/orbcode-cli/overview>**

Expand Down Expand Up @@ -304,30 +304,30 @@ MatterAI gateway untouched.

## Slash commands

| command | action |
| ------------ | ----------------------------------------------------------------------------------------------------- |
| `/help` | list commands |
| `/attach` | open the native file picker and add one or more attachments |
| `/model` | scrollable model picker (`/model pro` / `/model code` / full id selects directly) |
| `/theme` | choose and persist OrbCode's dark or light theme (`/theme dark` and `/theme light` also work) |
| `/clear` | clear the screen only, like the terminal's `clear` — the conversation and context continue |
| `/new` | start a fresh conversation/session with a clean slate |
| `/resume` | pick a previous session for this directory and continue it (screen is cleared, conversation replayed) |
| `/analytics` | open the MatterAI analytics dashboard (app.matterai.so/orbital) in the browser |
| `/compact` | summarize the conversation and replace history with the summary |
| `/tasks` | print the current task list |
| `/status` | version, model, account, gateway, context usage, cost, approval modes |
| `/usage` | fetch plan usage |
| `/weekly-reset` | reset weekly usage (Pro and above, once per monthly billing cycle) |
| `/init` | analyze the codebase and create/improve `AGENTS.md` in the repo's `.orb/` directory |
| `/create-skill <description>` | create or update a repository skill under `.orb/skills/<skill-name>/` from a plain-language prompt |
| `/task` | reference a previous session as context for the current task — opens a picker if no ID is given |
| `/link` | link other repos on your machine so changes here are checked against them (enter a folder path) |
| `/mcp` | manage MCP servers — enable, disable, reconnect, view status & tool counts |
| `/login` | start the browser sign-in flow |
| `/logout` | remove the saved token |
| `/version` | print the CLI version |
| `/exit` | quit |
| command | action |
| ----------------------------- | ----------------------------------------------------------------------------------------------------- |
| `/help` | list commands |
| `/attach` | open the native file picker and add one or more attachments |
| `/model` | scrollable model picker (`/model pro` / `/model code` / full id selects directly) |
| `/theme` | choose and persist OrbCode's dark or light theme (`/theme dark` and `/theme light` also work) |
| `/clear` | clear the screen only, like the terminal's `clear` — the conversation and context continue |
| `/new` | start a fresh conversation/session with a clean slate |
| `/resume` | pick a previous session for this directory and continue it (screen is cleared, conversation replayed) |
| `/analytics` | open the MatterAI analytics dashboard (app.matterai.so/orbital) in the browser |
| `/compact` | summarize the conversation and replace history with the summary |
| `/tasks` | print the current task list |
| `/status` | version, model, account, gateway, context usage, cost, approval modes |
| `/usage` | fetch plan usage |
| `/weekly-reset` | reset weekly usage (Pro and above, once per monthly billing cycle) |
| `/init` | analyze the codebase and create/improve `AGENTS.md` in the repo's `.orb/` directory |
| `/create-skill <description>` | create or update a repository skill under `.orb/skills/<skill-name>/` from a plain-language prompt |
| `/task` | reference a previous session as context for the current task — opens a picker if no ID is given |
| `/link` | link other repos on your machine so changes here are checked against them (enter a folder path) |
| `/mcp` | manage MCP servers — enable, disable, reconnect, view status & tool counts |
| `/login` | start the browser sign-in flow |
| `/logout` | remove the saved token |
| `/version` | print the CLI version |
| `/exit` | quit |

## Keyboard shortcuts

Expand Down Expand Up @@ -411,8 +411,8 @@ settings.json > user settings.json > config.json.
Sessions are stored in `~/.orbcode/sessions/<id>.json` and power `/resume`
and `--resume <id>`.

| env var | effect |
| --------------------- | ----------------------------------------------------------------- |
| env var | effect |
| ---------------------- | ----------------------------------------------------------------- |
| `MATTERAI_TOKEN` | auth token (overrides everything) |
| `MATTERAI_API_KEY` | same as `apiKey` in settings.json |
| `MATTERAI_BASE_URL` | same as `baseUrl` in settings.json |
Expand Down Expand Up @@ -467,11 +467,24 @@ shell commands from a repo — see [Security](https://github.com/MatterAIOrg/Orb
"PreToolUse": [
{
"matcher": "execute_command",
"hooks": [{ "type": "command", "command": "~/.orbcode/hooks/guard.sh", "timeout": 30 }]
"hooks": [
{
"type": "command",
"command": "~/.orbcode/hooks/guard.sh",
"timeout": 30
}
]
}
],
"UserPromptSubmit": [
{ "hooks": [{ "type": "command", "command": "echo \"Git branch: $(git branch --show-current 2>/dev/null)\"" }] }
{
"hooks": [
{
"type": "command",
"command": "echo \"Git branch: $(git branch --show-current 2>/dev/null)\""
}
]
}
]
}
}
Expand All @@ -485,17 +498,17 @@ seconds, default 10).

### Events at a glance

| event | when it fires | matcher tests |
| ------------------ | ---------------------------------------------- | ------------- |
| `SessionStart` | first turn of a session (or after `--resume`) | `source` |
| `UserPromptSubmit` | before each prompt is sent to the model | — |
| `PreToolUse` | before a tool runs (and before its approval) | tool name |
| `PostToolUse` | after a tool returns | tool name |
| `Notification` | when OrbCode needs permission or a follow-up | — |
| `Stop` | when the model is about to finish the turn | — |
| `PreCompact` | before `/compact` summarizes the conversation | `trigger` |
| `SessionEnd` | on quit, `/logout`, or end of a `-p` run | `reason` |
| `SubagentStop` | reserved; OrbCode has no subagents yet | — |
| event | when it fires | matcher tests |
| ------------------ | --------------------------------------------- | ------------- |
| `SessionStart` | first turn of a session (or after `--resume`) | `source` |
| `UserPromptSubmit` | before each prompt is sent to the model | — |
| `PreToolUse` | before a tool runs (and before its approval) | tool name |
| `PostToolUse` | after a tool returns | tool name |
| `Notification` | when OrbCode needs permission or a follow-up | — |
| `Stop` | when the model is about to finish the turn | — |
| `PreCompact` | before `/compact` summarizes the conversation | `trigger` |
| `SessionEnd` | on quit, `/logout`, or end of a `-p` run | `reason` |
| `SubagentStop` | reserved; OrbCode has no subagents yet | — |

### How a hook talks back

Expand Down Expand Up @@ -614,7 +627,11 @@ happens automatically when they expire. For M2M grants (`client_credentials`,
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/projects"]
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/me/projects"
]
},
"github": {
"type": "http",
Expand Down Expand Up @@ -800,6 +817,7 @@ when_to_use: the task involves writing or reviewing Go code
# Go style skill

When writing Go in this project:

- Use `errors.Join` for multi-error aggregation
- Prefer table-driven tests
- ...
Expand Down Expand Up @@ -962,11 +980,11 @@ Active in the CLI (aligned with the extension's native tools, with CLI-specific
| `multi_file_edit` | batched edits grouped per file, per-edit OK/FAILED results |
| `file_write` | creates parent dirs, full-content writes |
| `list_files` | optional recursive, ignores node_modules/.git/build dirs, 800-entry cap |
| `search_files` | FFF-first Rust-regex search, compact pagination, and bundled/system ripgrep fallback |
| `search_files` | FFF-first Rust-regex search, compact pagination, and bundled/system ripgrep fallback |
| `execute_command` | user's shell, 120s timeout, 30k output cap, optional cwd |
| `web_search` / `web_fetch` | proxied through the MatterAI backend with your token |
| `update_todo_list` | drives the TUI todo panel |
| `use_skill` | loads standalone or namespaced plugin skill instructions |
| `use_skill` | loads standalone or namespaced plugin skill instructions |
| `ask_followup_question` | interactive menu in the TUI |
| `attempt_completion` | ends the turn with a completion card |
| `mcp__<server>__<tool>` | any tool exposed by a connected MCP server (see [MCP servers](#mcp-servers)) |
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@matterailab/orbcode",
"version": "6.8.0",
"description": "OrbCode CLI — agentic coding in your terminal, powered by Axon models by MatterAI",
"version": "6.8.1",
"description": "OrbCode CLI — agentic coding in your terminal, by MatterAI",
"type": "module",
"bin": {
"orbcode": "./bin/orbcode.js"
Expand Down
2 changes: 1 addition & 1 deletion src/branding.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export const VERSION = (() => {
return "0.0.0";
}
})();
export const TAGLINE = "powered by Axon models by MatterAI";
export const TAGLINE = "by MatterAI";

// Semantic color tokens. The OpenTUI primitives resolve these against the
// active OrbCode theme, so components never inherit terminal-defined colors.
Expand Down
Loading