Skip to content

cmd/codeaf: codeaf --model <slug> is refused, and the manual's flags table does not say the flags follow chat #1052

Description

@AbirAbbas

What happened

2026-09-15, the published build staging-20260915-4b6ec83cfbfa (dev@4b6ec83cf), linux/amd64:

$ codeaf --model deepseek/deepseek-v4-flash
error: there is no `codeaf --model`.
run `codeaf --help` for every command

codeaf chat --model deepseek/deepseek-v4-flash works. The refusal is well worded; the defect is that internal/manual/chat/starting-codeaf.md presents codeaf as the home screen and then a table titled "The flags you can start it with" (--model, --yolo, --once, …) without saying the flags belong after chat, so a reader of that page types the refused form first.

Replication

Deterministic (no model). bin/codeaf --model x prints the refusal above; bin/codeaf chat --help lists the flags. Read the manual page's flags section and note it never spells codeaf chat --model.

Field (real models). Not needed.

Where

cmd/codeaf (search there is no \codeaf) and internal/manual/chat/starting-codeaf.md(searchThe flags you can start it with`).

The fix

Either bare codeaf accepts the chat flags (it already opens the chat), or the manual page spells every example as codeaf chat --model … and says in one sentence that the flags follow chat. Pick one; the first is what a person expects from a command whose bare form is the chat.

Acceptance

  • e2e: bin/codeaf --model deepseek/deepseek-v4-flash in a workspace opens the chat with that model on the chip, exit 0 on /quit — or, if the manual road is chosen, the tmux suite's needle for the flags table quotes codeaf chat --model.
  • Unit: the manual probe "how do I pick a model when I start it" reaches the page that spells the working form.
  • The manual page quotes the new wording and the change entry's invalidates names what people believed before.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:chatThe v3 surface a person sits in front of (internal/tui3)bugSomething the code does that it should notsev:papercutA wording, a hint, a small wrongness that costs a moment

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions