Skip to content

v0.8.63: Make documented config keys editable and persistable from the TUI #3303

@Hmbown

Description

@Hmbown

Problem

Several documented configuration knobs are loadable from config.toml, but users cannot reliably discover, edit, validate, and persist them from the TUI. This makes important runtime behavior feel fixed even when the underlying config model already supports it.

Recent example: sub-agent controls exist in config, but there is no obvious editable surface for recursion depth, concurrency, launch throttling, or disabling sub-agents.

Current state / evidence

  • docs/CONFIGURATION.md documents max_subagents and [subagents] keys.
  • crates/tui/src/config.rs resolves [subagents] max_concurrent, max_depth, launch_concurrency, api_timeout_secs, and heartbeat_timeout_secs.
  • /config supports some settings, but it does not provide a complete editable map for these documented runtime controls.
  • Users reasonably expect /config, settings UI, or command palette flows to change these without manually editing TOML and restarting.

Scope

Add a config editability audit and first implementation slice for high-impact runtime controls.

This issue is the umbrella for config editability parity. Sub-agent-specific controls can be tracked in narrower linked issues.

Acceptance criteria

  • Add an audited list of documented config keys and whether each is editable at runtime, persisted, CLI-only, or file-only.
  • /config or an equivalent TUI settings surface can show current values for high-impact runtime controls.
  • Editable values are validated with the same clamps/defaults used by Config.
  • Persisted edits update the active CodeWhale config file, not a legacy .deepseek path.
  • Non-editable settings explain why they are file-only/restart-only.
  • Tests cover at least one numeric setting, one enum/string setting, and one boolean setting round-tripping through the edit path.

Release note target

For v0.8.63, frame this as configuration control-plane hardening: users should not need to read Rust source to change documented runtime behavior.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingenhancementNew feature or requestreliabilityReliability, flaky behavior, retries, fallbacks, and robustnesstuiTerminal UI behavior, rendering, or interactionv0.8.63Targeting v0.8.63

    Projects

    Status
    Backlog

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions