mirror of
https://github.com/andrewyng/openworker.git
synced 2026-11-04 13:27:11 +00:00
Network allow list holds only the machine's ticked sites, none by default; strict/standard removed. The app no longer installs OpenShell; setup is two checks and one step with progress. DMG build requires grpcio so the sidecar can use OpenShell.
67 lines
3.3 KiB
TOML
67 lines
3.3 KiB
TOML
# coworker config — copy to one of:
|
|
# ~/.config/coworker/config.toml (global)
|
|
# <your-project>/.coworker/config.toml (per-workspace, overrides global)
|
|
#
|
|
# All keys are optional; unset keys fall back to built-in defaults.
|
|
|
|
model = "gpt-5.5" # default model id (override per session in the UI/CLI)
|
|
mode = "interactive" # plan | interactive | auto | custom
|
|
max_iterations = 12 # max model<->tool iterations per turn before stopping
|
|
# max_output_tokens = 64000 # per-reply output cap sent as max_tokens (thinking + text +
|
|
# tool arguments). Unset = provider default (32000; Bedrock
|
|
# 4096). Env override: COWORKER_MAX_OUTPUT_TOKENS.
|
|
# reasoning_effort = "high" # low | medium | high | xhigh | max — how hard the model thinks
|
|
# per reply, translated per provider (Anthropic output_config
|
|
# .effort; Together/Moonshot reasoning_effort). Unset = provider
|
|
# default (Anthropic high, Kimi K3 max). Env override:
|
|
# COWORKER_REASONING_EFFORT.
|
|
|
|
# Commands auto-allowed without an approval prompt (prefix match).
|
|
allowed_commands = [
|
|
"ls", "cat", "pwd", "grep", "find",
|
|
"git status", "git diff", "git log",
|
|
"python3", "pytest", "node", "npm",
|
|
]
|
|
|
|
# In "custom" permission mode, these tools are auto-approved (everything else still
|
|
# asks). e.g. auto-accept file edits but keep asking before running shell commands.
|
|
auto_allow = ["write_file", "replace_in_file", "apply_patch", "apply_unified_diff"]
|
|
|
|
# Server (openworker-server) bind address.
|
|
host = "127.0.0.1"
|
|
port = 8765
|
|
|
|
# --- Sandbox (machine-level; a project's config cannot change it) ---------------------
|
|
# Where a session's commands and file tools run: "direct" (in the OpenWorker process,
|
|
# the default), "openshell" (one NVIDIA OpenShell container per agent) or "seatbelt"
|
|
# (the sandbox built into macOS). See docs/openshell.md and docs/macos-sandbox.md.
|
|
# sandbox_provider = "openshell"
|
|
# Network inside a sandbox: "allowlist" (only the sites listed below) or "open" (any
|
|
# site; the files are still confined). The default is "allowlist", or "open" on Windows.
|
|
# sandbox_network_profile = "allowlist"
|
|
# The sites an allow list lets through (host:port; a bare host means 443). None by default.
|
|
# sandbox_network_hosts = ["github.com:443", "pypi.org:443"]
|
|
# Config and keys exposed to agents, copied into the sandbox for the session and deleted
|
|
# with it. Only the entries named here are listed in Settings ▸ Sandbox; the shipped ones
|
|
# (ssh, gh, aws, aws-credentials, kube, npm, docker, gcloud, terraform) are added by name.
|
|
# An entry is a single file or a whole folder (the path decides), labelled "credential"
|
|
# or "configuration".
|
|
# [[sandbox_credentials]]
|
|
# name = "ssh"
|
|
# enabled = true
|
|
# [[sandbox_credentials]]
|
|
# name = "acme-token"
|
|
# path = "~/.config/acme/token"
|
|
# label = "credential"
|
|
# hosts = ["api.acme.dev:443"]
|
|
# enabled = true
|
|
# Developer tool folders under your home folder a sandbox may read (never write). The
|
|
# shipped list per platform is in Settings ▸ Sandbox; an entry here switches one off or
|
|
# adds one by name.
|
|
# [[sandbox_toolchains]]
|
|
# name = "nvm"
|
|
# enabled = false
|
|
# [[sandbox_toolchains]]
|
|
# name = "mytools"
|
|
# path = "~/tools"
|