feat(coding-agent): complete steer()/followUp() migration

- Update settings-manager with steeringMode/followUpMode (migrates old queueMode)
- Update sdk.ts to use new mode options
- Update settings-selector UI to show both modes
- Add Alt+Enter keybind for follow-up messages
- Update RPC API: steer/follow_up commands, set_steering_mode/set_follow_up_mode
- Update rpc-client with new methods
- Delete dead code: queue-mode-selector.ts
- Update tests for new API
- Update mom/context.ts stubs
- Update web-ui example
This commit is contained in:
Mario Zechner 2026-01-02 23:47:53 +01:00
parent 58c423ba36
commit 3ae02a6849
12 changed files with 173 additions and 106 deletions

View file

@ -173,10 +173,17 @@ export class RpcClient {
}
/**
* Queue a message while agent is streaming.
* Queue a steering message to interrupt the agent mid-run.
*/
async queueMessage(message: string): Promise<void> {
await this.send({ type: "queue_message", message });
async steer(message: string): Promise<void> {
await this.send({ type: "steer", message });
}
/**
* Queue a follow-up message to be processed after the agent finishes.
*/
async followUp(message: string): Promise<void> {
await this.send({ type: "follow_up", message });
}
/**
@ -248,10 +255,17 @@ export class RpcClient {
}
/**
* Set queue mode.
* Set steering mode.
*/
async setQueueMode(mode: "all" | "one-at-a-time"): Promise<void> {
await this.send({ type: "set_queue_mode", mode });
async setSteeringMode(mode: "all" | "one-at-a-time"): Promise<void> {
await this.send({ type: "set_steering_mode", mode });
}
/**
* Set follow-up mode.
*/
async setFollowUpMode(mode: "all" | "one-at-a-time"): Promise<void> {
await this.send({ type: "set_follow_up_mode", mode });
}
/**