Configure octo's global settings through guided conversation — set up AI model endpoints (providers, API keys, models), adjust agent defaults (reasoning effort, permission mode, coauthor, workspace…
MITAuto-check passed
Install Config Setup
skills CLI
$ npx skills add open-octo/octo-agent --skill config-setup -a claude-code
Project install by default; add -g for ~/.claude/skills/.
Install the "config-setup" agent skill from https://github.com/open-octo/octo-agent/tree/main/internal/skills/defaults/config-setup into .claude/skills/config-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "config-setup", then confirm the skill loads.
Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Type this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
skills CLI
$ npx skills add open-octo/octo-agent --skill config-setup -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "config-setup" agent skill from https://github.com/open-octo/octo-agent/tree/main/internal/skills/defaults/config-setup into .agents/skills/config-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "config-setup", then confirm the skill loads.
Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add open-octo/octo-agent --skill config-setup -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "config-setup" agent skill from https://github.com/open-octo/octo-agent/tree/main/internal/skills/defaults/config-setup into .cursor/skills/config-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "config-setup", then confirm the skill loads.
Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add open-octo/octo-agent --skill config-setup -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "config-setup" agent skill from https://github.com/open-octo/octo-agent/tree/main/internal/skills/defaults/config-setup into .gemini/skills/config-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "config-setup", then confirm the skill loads.
Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
skills CLI
$ npx skills add open-octo/octo-agent --skill config-setup -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "config-setup" agent skill from https://github.com/open-octo/octo-agent/tree/main/internal/skills/defaults/config-setup into .github/skills/config-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "config-setup", then confirm the skill loads.
GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add open-octo/octo-agent --skill config-setup -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "config-setup" agent skill from https://github.com/open-octo/octo-agent/tree/main/internal/skills/defaults/config-setup into .opencode/skills/config-setup/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "config-setup", then confirm the skill loads.
OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Facts
Skill name
config-setup
GitHub stars
125
Token cost
~3.3k tokens
SKILL.md length
1,493 words
Files
1
Skills in repo
40
Repo updated
First seen
Licence
MIT
At a glance
Configure octo's global settings through guided conversation — set up AI model endpoints (providers, API keys, models), adjust agent defaults (reasoning effort, permission mode, coauthor, workspace…
Works in 3 steps: Try the default first: curl -s… → Connection refused? The server may be on… → No server running at all? Don't stop —…
: configure model
SKILL.md covers Two categories of configuration, Reaching the server, Agent Defaults and Endpoints & Models, plus 2 more sections
Calls curl
What it does
Config Setup is an agent skill from open-octo/octo-agent. Configure octo's global settings through guided conversation — set up AI model endpoints (providers, API keys, models), adjust agent defaults (reasoning effort, permission mode, coauthor, workspace directory), and manage the default/lite model assignments. Trigger on: "configure model", "add provider", "setup endpoint", "add API key", "change default model", "switch model", "set reasoning", "change permission mode", "config setup", "配置模型", "添加模型", "配置 API", "切换模型", "修改设置".
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Open-source, single-binary, self-hosted AI agent — your models and data stay on your machine. A coding agent on par with Claude Code and a personal assistant lighter than… The licence is MIT.
When your agent uses it
: configure model
Change default model
Change permission mode
Example prompts
“configure model”
“add provider”
“setup endpoint”
“/config-setup”
Workflow steps
3 steps, taken from the first numbered list in SKILL.md.
1Try the default first: curl -s http://127.0.0.1:8088/api/config.
2Connection refused? The server may be on a custom port
3No server running at all? Don't stop — fall back to editing
What it can do on your machine
Read from SKILL.md and the folder at commit fc1385f. It shows what the files ask for, not the result of running them.
Tool permissions
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Runs code
Shell commands in SKILL.md call:
curl
From the folder's file list and the shell code blocks in SKILL.md.
Network
No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Credentials
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Context cost
Config Setup loads about 3.3k tokens when it runs. Until then it costs about 123 tokens; SKILL.md has 1,493 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~123
When it runs· the whole SKILL.md, loaded when a task matches
~3.3k
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
Safety
Auto-check passed
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
Download SKILL.mdSave it as .claude/skills/config-setup/SKILL.md (or your agent's skills folder).
name
config-setup
description
Configure octo's global settings through guided conversation — set up AI model endpoints
(providers, API keys, models), adjust agent defaults (reasoning effort, permission mode,
coauthor, workspace directory), and manage the default/lite model assignments.
Trigger on: "configure model", "add provider", "setup endpoint", "add API key",
"change default model", "switch model", "set reasoning", "change permission mode",
"config setup", "配置模型", "添加模型", "配置 API", "切换模型", "修改设置".
system
true
Configure octo
Your job is to turn "I need my agent to use model X" or "change setting Y" into a
working configuration through octo's REST API. Not every user knows where
settings live — briefly explain when needed.
Two categories of configuration
Agent Defaults Endpoints & Models
───────────────── ───────────────────
reasoning_effort provider selection
permission_mode API key
show_reasoning base URL (advanced)
coauthor model names
workspace_dir default / lite model
All of these live in ~/.octo/config.yml and are editable through the REST API
on the running octo server at http://localhost:<port> (use curl via the terminal tool — do NOT use web_fetch, localhost is blocked by SSRF).
Reaching the server
The server listens on 127.0.0.1:8088 by default (the desktop app's built-in
server uses the same port). Loopback requests need no access key.
A session running inside the server (Web UI, desktop, IM) has an Octo server:
line in its Environment section. When it's there, use that address in place of
127.0.0.1:8088 in every command in this skill and skip the steps below.
Try the default first: curl -s http://127.0.0.1:8088/api/config.
JSON back = you're connected; skip the rest of this section.
Connection refused? The server may be on a custom port:
Started as a daemon (octo serve -d): cat ~/.octo/serve.pid for the PID,
then find its listen port — macOS/Linux:
lsof -iTCP -sTCP:LISTEN -P -n -a -p <PID>; Windows (PowerShell):
Get-NetTCPConnection -State Listen -OwningProcess <PID>.
A foreground octo serve writes no pid file — ask the user which port they
started it on (it's also in the web UI's address bar).
No server running at all? Don't stop — fall back to editing
~/.octo/config.yml directly (it is the same file every API call below
mutates). Read the file first, apply the smallest edit that matches the
structure you see, then validate with octo doctor. Changes are picked up
by new CLI sessions and by the server next time it starts.
Agent Defaults
These are global settings that govern how the Default Agent behaves.
All are individual PUT endpoints returning 200 on success, 400 on invalid input.
Reasoning Effort
PUT /api/config/reasoning_effort
{"reasoning_effort": "off"|"low"|"medium"|"high"|"xhigh"|"max"}
Value
Effect
off
No extended thinking (server default)
low
Fast, surface-level thinking
medium
Balanced
high
Deeper reasoning, slower
xhigh
Very thorough
max
Maximum depth
Permission Mode
PUT /api/config/permission_mode
{"permission_mode": "interactive"|"auto"|"strict"}
Value
Effect
interactive
Ask before dangerous operations (default)
auto
Auto-approve all tools
strict
Deny all potentially dangerous tools
Show Reasoning
PUT /api/config/show_reasoning
{"show_reasoning": true|false}
When enabled, the agent's thinking process is visible in the chat.
Coauthor
PUT /api/config/coauthor
{"coauthor": true|false}
When enabled, appends a Co-authored-by: octo-agent trailer to git commits.
Workspace Directory
PUT /api/config/workspace_dir
{"workspace_dir": "/absolute/path"|"auto"}
Sets the default working directory for new sessions. Use "auto" to let octo
detect the project directory automatically. Only absolute paths are accepted
(no ~ — expand it to the full path first).
Read Current Defaults
GET /api/config
Returns the full current config including all defaults. Use this to show the
user their current settings before making changes.
Endpoints & Models
An "endpoint" groups a provider with its API key, then lists the models available
through it. The two-level structure:
Two top-level composite ids pick across endpoints: default (e.g.
anthropic::claude-sonnet-5) is what the agent uses for normal turns, and lite
(e.g. anthropic::claude-haiku-4-5) is used for lightweight tasks (title
generation, compaction summaries). An empty lite means those run on the
primary model — nothing cheaper is inferred.
List Endpoints
GET /api/config/endpoints
Returns all configured endpoints with their models, including which is default/lite.
List Available Providers
GET /api/providers
Returns the built-in provider registry — each entry has a name, base_url,
and models (suggested model names). Use this to help the user pick a provider.
All fields are optional — only include what's changing. To rename, set new_id.
Delete an Endpoint
DELETE /api/config/endpoints/{id}
Returns 204. Destructive — deletes the endpoint and all its models.
Confirm with the user before calling.
Add a Model to an Endpoint
POST /api/config/endpoints/{id}/models
{"model": "gpt-4o", "vision": true}
vision (optional, default false): whether this model supports image input.
Delete a Model from an Endpoint
DELETE /api/config/endpoints/{id}/models/{model}
The model name must be URL-encoded when it contains special characters — this
matters for slash-style names like deepseek/deepseek-chat, which becomes
deepseek%2Fdeepseek-chat in the path.
Set Default / Lite Model
POST /api/config/endpoints/{id}/default?model=gpt-4o
POST /api/config/endpoints/{id}/lite?model=claude-haiku
DELETE /api/config/endpoints/{id}/lite // clear lite designation
The model is passed as a query parameter (?model=…), not in the request body.
Omit ?model to use the endpoint's first model as a fallback.
Important: This changes the server-wide default that seeds new sessions.
It does not switch the model of any session that is already running or already
bound to a specific model. For those, see Switching the Current Session's Model.
Switching the Current Session's Model
A session is bound to the global default model only at creation time. Once it has
a turn, it keeps that model until you explicitly switch it. This applies to
Web, TUI, CLI one-shot, and IM sessions.
Web UI: Click the model chip in the Composer status bar (the row showing the
current model name, e.g. K3), then pick the desired model from the dropdown.
IM (Weixin/Feishu/DingTalk/WeCom/Discord/Telegram): Send /model to list
configured models and see the current one, then /model <endpoint>::<model> to
bind the session to that endpoint's model, or /model default to make it follow
the server-wide default again. You cannot switch while a turn is running.
Use default as the model_id to unbind the session from a specific endpoint
and make it follow the global default on subsequent turns. Unknown or bare model
strings are treated as raw model names on the default sender.
Restart behavior: You do not need to restart octo serve after changing
the global default or a session's model. Both take effect on the next turn. The
only exception is a session that was already bound to a model before the change —
it will not switch unless you use one of the methods above.
Show full SKILL.md (506 more words)Show less
Workflow
Configuring Agent Defaults
Read current state via GET /api/config.
Ask what they want to change. Show current values and let the user pick.
Call the PUT endpoint for the changed setting.
Confirm the change — re-read the setting and report back.
Keep it brief: one question at a time, one change per response.
Adding a new endpoint
Understand the goal. "I want to use GPT-4o" → OpenAI provider. "I have a
relay at company.com" → custom provider. If the user names a specific
provider, skip to step 3.
Check existing endpoints via GET /api/config/endpoints. If an endpoint
for this provider already exists, ask if they want to add models to it instead.
Collect the API key. Ask for it once, never echo it back. If the user
doesn't have one, point them to the provider's website (use the website_url
from GET /api/providers).
Pick models. Named providers have a suggested model list (from
GET /api/providers). For custom providers, ask what model names the relay
accepts. Suggest sensible defaults — one powerful model for main turns,
one fast/cheap model for lite tasks.
Confirm and create via POST /api/config/endpoints. Show a summary
(provider, models, which is default/lite) before calling.
Verify via GET /api/config/endpoints — confirm the new endpoint
appears with the right models.
Tell the user the endpoint is ready. New sessions will use it immediately.
Existing sessions keep their current model binding unless manually switched.
Editing an existing endpoint
Fetch current state via GET /api/config/endpoints.
Show the user the endpoint's current config.
Apply the smallest change via PATCH /api/config/endpoints/{id}.
Verify the change took effect.
Point out that updating an endpoint (key, URL, provider, protocol) does not
automatically switch any bound session to a different model; it only changes
how the already-bound model is reached. If the user wants a running session to
use a different model, use the per-session switch.
Setting default / lite model
List endpoints to show the user what's available.
Confirm which model should be default (normal turns) and which lite
(lightweight tasks).
CallPOST /api/config/endpoints/{id}/default etc.
Confirm the assignment.
Clarify the scope: this only affects new sessions and any session that
is currently unbound. Sessions already in progress or already switched to a
specific model continue on that model. Tell the user how to switch the current
session if they expected it to change immediately (Web UI model chip, IM /model,
or PATCH /api/sessions/{id}/model).
Rules
Never echo API keys back to the user after they're saved.
Always confirm before destructive operations (delete endpoint, delete model).
Show current state before modifying — never guess the user's setup.
One change at a time — don't batch unrelated config changes.
Provider names must match the registry from GET /api/providers. An
invalid provider returns 400; list the available ones for the user.
Model names are free-form for custom endpoints — don't validate them,
just pass through what the user gives you.
workspace_dir must be absolute — expand ~ to the full home path before
calling the API.
Config Setup next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
Guides agents through a 6-step discovery process to design and deploy Google Cloud global external Application Load Balancers with Cloud CDN, Cloud Armor, and Service Extensions, mapping workload…
Any explicit Muse Code setting question or change (model, reasoning effort, /settings) requires a silent readskill call for bundled:manage-settings as FIRST ACTION—no assistant text or other tool…
Build reusable conversion models — funnel/step conversion rates, drop-off, and time-to-convert — on either PostHog data-warehouse views (HogQL) or an external dbt project.
Acquire images as files — generate them with an AI image model (14 providers: OpenAI/gpt-image, Gemini, Qwen, Zhipu, Volcengine, Stability, FLUX, Ideogram, MiniMax, and more), search openly-licensed…
审阅合同条款、识别风险点、给出修改建议。Use when 用户贴出或上传合同文本要求审查, 或提到"合同审查""帮我看看这份合同""这条款有没有问题""重大不利条款""合同风险" "review this contract"等。覆盖服务协议、劳动合同、保密协议(NDA)、采购合同、 租赁合同等常见合同类型,风险条款库为中英双语。仅做通俗的条款风险提示,…
125 GitHub stars~666 tokensUpdated today
Auto-check passed
Questions about Config Setup
What does Config Setup do?
Configure octo's global settings through guided conversation — set up AI model endpoints (providers, API keys, models), adjust agent defaults (reasoning effort, permission mode, coauthor, workspace…. Config Setup is an agent skill from open-octo/octo-agent. Configure octo's global settings through guided conversation — set up AI model endpoints (providers, API keys, models), adjust agent defaults (reasoning effort, permission mode, coauthor, workspace directory), and manage the default/lite model assignments.
Run `npx skills add open-octo/octo-agent --skill config-setup -a claude-code`. Or copy the skill folder (internal/skills/defaults/config-setup in open-octo/octo-agent) into .claude/skills/config-setup in your project. Claude Code loads it when a task matches its description.
How do I install Config Setup in Codex?
Run `npx skills add open-octo/octo-agent --skill config-setup -a codex`. Or copy the skill folder (internal/skills/defaults/config-setup in open-octo/octo-agent) into .agents/skills/config-setup in your project. Codex loads it when a task matches its description.
Can I use Config Setup in Cursor, Gemini CLI or GitHub Copilot?
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add open-octo/octo-agent --skill config-setup -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/config-setup, .gemini/skills/config-setup, .github/skills/config-setup and .opencode/skills/config-setup in your project.
What does Config Setup need to run?
Going by SKILL.md and its folder, Config Setup needs the command-line tools its instructions call (curl).
Does Config Setup access the network?
SKILL.md contains no URLs. Its commands use curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Is Config Setup safe to install?
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
What licence does Config Setup use?
Config Setup is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Config Setup use?
About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
What are the alternatives to Config Setup?
Skills that share tags, products or a category with Config Setup: Configuring Windows Defender Advanced Settings (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Google Cloud Global Frontend Configuration (google/skills, 21k stars), Configure Channel (openclaw/openclaw, 392k stars) and Manage Settings (asgeirtj/system_prompts_leaks, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Config Setup?
open-octo (a GitHub organization) maintains it in open-octo/octo-agent, which has 125 GitHub stars. The repository holds 40 skills in this directory. The repository was last updated on October 8, 2026.
Source: open-octo/octo-agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.