1.2 KiB
1.2 KiB
Onboarding + Config Protocol
Purpose: shared onboarding + config surfaces across CLI, macOS app, and Web UI.
Components
- Wizard engine:
src/wizard(session + prompts + onboarding state). - CLI:
src/commands/onboard-*.tsuses the wizard with the CLI prompter. - Gateway RPC: wizard + config schema endpoints serve UI clients.
- macOS: SwiftUI onboarding uses the wizard step model.
- Web UI: config form renders from JSON Schema + hints.
Gateway RPC
wizard.startparams:{ mode?: "local"|"remote", workspace?: string }wizard.nextparams:{ sessionId, answer?: { stepId, value? } }wizard.cancelparams:{ sessionId }wizard.statusparams:{ sessionId }config.schemaparams:{}
Responses (shape)
- Wizard:
{ sessionId, done, step?, status?, error? } - Config schema:
{ schema, uiHints, version, generatedAt }
UI Hints
uiHintskeyed by path; optional metadata (label/help/group/order/advanced/sensitive/placeholder).- Sensitive fields render as password inputs; no redaction layer.
- Unsupported schema nodes fall back to the raw JSON editor.
Notes
- This doc is the single place to track protocol refactors for onboarding/config.