simplify-attended-pi-setup

Separate simple Pi chat setup from unattended automation

Metadata

Statusdone
Assignedagent-940
Modelpi:openai-codex:gpt-5.6-sol
Created2026-07-30T21:38:01.457433782+00:00
Started2026-07-31T05:05:34.657303292+00:00
Completed2026-07-31T05:23:38.067742490+00:00
Tagsconcierge, pi, chat, ux
Tokens18214897 in / 33090 out

Description

WorksGood currently makes a user who only wants an attended Pi chat configure repository-wide strong/weak model routes, reasoning, profiles, and a supervised LLM service. This conflates two distinct products and produced the reported confusing flow: complex pi:provider:model setup, service identity/IPC failures, and route-less historical evaluator noise before the user could simply talk to Pi. The product decision is user-controlled simplicity.

Create a first-class simple attended-chat path: WorksGood verifies the Pi executable, ensures the compatible WG plugin, and launches/creates a bare attended Pi session with no WG --model override. Pi owns authentication, provider/model selection, and model switching through its own UI. This path must not require a named profile, worker/evaluator route, reasoning tier, running dispatcher, agency readiness, or repository-wide service identity. It must not silently select a model or mutate unattended automation routes. Opening a graph without AI remains available.

Move repository-wide automation configuration behind an explicit separate choice such as “Enable/configure unattended workers and evaluation (advanced).” Only that choice requires exact worker/chat and agency/eval routes plus effective reasoning and service reconciliation. Clearly explain that those settings govern unattended dispatch, not the model the human may choose in an attended Pi session. Preserve fail-closed route/reasoning invariants for daemon workers/evaluation and preserve explicit per-chat model pinning as an optional advanced action.

The default attended journey should be conceptually: worksgood → New Pi chat → Pi login/model picker. Avoid profile terminology, strong/weak labels, endpoints, or service startup unless the user explicitly chooses automation. Reuse the accepted TUI bare-Pi/IPC/input fix rather than creating another chat transport.

Validation

  • Fresh graph with Pi installed and no profile/config/service can open a usable bare Pi chat; argv contains no model override and Pi receives keyboard input.
  • Missing Pi gives one concise install/auth action without writing model/profile/service state.
  • Attended chat model changes do not rewrite project worker/evaluator routes.
  • Choosing unattended automation still requires exact routes and reasoning and starts only the authenticated paired service.
  • Existing explicit worksgood setup --model and advanced two-model flows remain available but are not presented as prerequisites for chat.
  • Add credential-free PTY concierge/TUI smokes and run focused tests, cargo fmt --check, and cargo clippy.

Depends on

Required by

Log