| 1 | import type { DocsConfigurationDict } from "../types"; |
| 2 | |
| 3 | /** |
| 4 | * English reference dictionary for `app/[locale]/docs/configuration/page.tsx` |
| 5 | * ("Change settings"). Checked against `ConfigCommand` and the `--set` |
| 6 | * runtime overrides in crates/cli/src/lib.rs, and docs/CONFIGURATION.md |
| 7 | * (config path, `/config audit`, per-project overlay, legacy paths). |
| 8 | */ |
| 9 | export const docsConfiguration: DocsConfigurationDict = { |
| 10 | metaTitle: "Change settings · Codewhale Docs", |
| 11 | metaDescription: |
| 12 | "Find Codewhale's config file, change a setting from the session or the shell, try one for a single run, and see what a repository is allowed to override.", |
| 13 | bodyClassName: "text-ink-soft leading-relaxed", |
| 14 | title: "Change settings", |
| 15 | lede: |
| 16 | "Most settings can be changed without opening a file: from the session with `/config`, or from the shell with `codewhale config`. This page shows where settings live, how to change them, and what a repository can and cannot change for you.", |
| 17 | sections: [ |
| 18 | { |
| 19 | id: "file", |
| 20 | title: "Find the config file", |
| 21 | blocks: [ |
| 22 | { |
| 23 | p: "Your settings live in `~/.codewhale/config.toml`. Print the exact path, or open the file in your editor:", |
| 24 | }, |
| 25 | { code: "codewhale config path\ncodewhale config edit", lang: "Terminal" }, |
| 26 | { |
| 27 | p: "To use a different file, pass `--config <path>` or set `CODEWHALE_CONFIG_PATH`; the flag wins when both are set. Codewhale was once called DeepSeek-TUI: if only an old `~/.deepseek/` folder exists, it is still read, and new settings are always written to `~/.codewhale/`.", |
| 28 | }, |
| 29 | ], |
| 30 | }, |
| 31 | { |
| 32 | id: "change", |
| 33 | title: "Change a setting", |
| 34 | blocks: [ |
| 35 | { |
| 36 | p: "Inside a session, `/config` opens the settings editor and `/settings` opens the settings screen. `/config audit` lists which settings can change in this session, which can be saved, and which only take effect after a restart — check it before editing by hand.", |
| 37 | }, |
| 38 | { p: "From the shell:" }, |
| 39 | { |
| 40 | code: `codewhale config get tools |
| 41 | codewhale config set telemetry false |
| 42 | codewhale config unset telemetry |
| 43 | codewhale config dump # the settings in effect, secrets redacted |
| 44 | codewhale config doctor # unknown keys, empty secrets, malformed URLs`, |
| 45 | lang: "Terminal", |
| 46 | }, |
| 47 | { |
| 48 | p: "`config set` handles its named keys; for anything else it tells you which TOML table to edit instead of guessing.", |
| 49 | }, |
| 50 | ], |
| 51 | }, |
| 52 | { |
| 53 | id: "one-run", |
| 54 | title: "Try a setting for one run", |
| 55 | blocks: [ |
| 56 | { |
| 57 | p: "`--set KEY=VALUE` changes a setting for one launch and saves nothing. It accepts `provider`, `model`, `verbosity`, `approval_policy`, `sandbox_mode`, and `telemetry`, and can be repeated.", |
| 58 | }, |
| 59 | { |
| 60 | code: 'codewhale --set model=deepseek-v4-pro --set sandbox_mode=read-only', |
| 61 | lang: "Terminal", |
| 62 | }, |
| 63 | ], |
| 64 | }, |
| 65 | { |
| 66 | id: "project", |
| 67 | title: "Share settings with a repository", |
| 68 | blocks: [ |
| 69 | { |
| 70 | p: "A repository can include `.codewhale/config.toml` to suggest settings to everyone who works in it. Only a few keys are honored, and safety settings can only get stricter:", |
| 71 | }, |
| 72 | { |
| 73 | rows: [ |
| 74 | ["model", "The default model for this repository."], |
| 75 | ["reasoning_effort", "For example `\"high\"` for a complex codebase."], |
| 76 | ["approval_policy, sandbox_mode", "Only values stricter than yours."], |
| 77 | ["allow_shell", "`false` turns shell commands off; `true` is ignored."], |
| 78 | ["max_subagents", "Fewer parallel sub-agents, from 1 to 128."], |
| 79 | ["notes_path", "Keep notes in the repository."], |
| 80 | ], |
| 81 | codeTerms: true, |
| 82 | }, |
| 83 | { |
| 84 | p: "Keys, endpoints, provider choice, MCP servers, hooks, skills, and extra instruction files always come from your own config, so a cloned repository cannot point Codewhale at its own server or files. Start with `--no-project-config` to ignore a repository's file for one launch.", |
| 85 | }, |
| 86 | { |
| 87 | p: "Project instructions — how an agent should work in this repository — belong in `AGENTS.md` instead. Run `/init` to create one.", |
| 88 | }, |
| 89 | ], |
| 90 | }, |
| 91 | ], |
| 92 | next: [ |
| 93 | { |
| 94 | href: "/docs/auth", |
| 95 | label: "Connect a provider", |
| 96 | note: "Save a key and see which one Codewhale is using.", |
| 97 | }, |
| 98 | { |
| 99 | href: "/docs/modes", |
| 100 | label: "Set modes and approvals", |
| 101 | note: "The settings most people change first.", |
| 102 | }, |
| 103 | { |
| 104 | href: "/docs/hooks", |
| 105 | label: "Run commands on events", |
| 106 | note: "Add your own scripts to the `[hooks]` table.", |
| 107 | }, |
| 108 | ], |
| 109 | sourceNote: |
| 110 | "Source documents: docs/CONFIGURATION.md, docs/LEGACY_PATHS.md · Update docs-map.ts when changing.", |
| 111 | }; |
| 112 |