feat(v2): add permission mode passthrough and fix agent stop-on-close
- Add permission_mode field to AgentQueryOptions (Rust, sidecar, bridge) flowing from controller through sidecar to SDK; defaults to bypassPermissions, supports default mode - Fix AgentPane onDestroy bug: remove stopAgent() from onDestroy (fires on layout remounts), move stop-on-close to TilingGrid onClose handler - Bundle SDK into sidecar via esbuild (remove --external flag)
This commit is contained in:
parent
af0eb362e6
commit
d5eb08ed42
7 changed files with 26 additions and 14 deletions
|
|
@ -27,6 +27,7 @@ interface QueryMessage {
|
|||
maxTurns?: number;
|
||||
maxBudgetUsd?: number;
|
||||
resumeSessionId?: string;
|
||||
permissionMode?: string;
|
||||
}
|
||||
|
||||
interface StopMessage {
|
||||
|
|
@ -51,7 +52,7 @@ function handleMessage(msg: Record<string, unknown>) {
|
|||
}
|
||||
|
||||
async function handleQuery(msg: QueryMessage) {
|
||||
const { sessionId, prompt, cwd, maxTurns, maxBudgetUsd, resumeSessionId } = msg;
|
||||
const { sessionId, prompt, cwd, maxTurns, maxBudgetUsd, resumeSessionId, permissionMode } = msg;
|
||||
|
||||
if (sessions.has(sessionId)) {
|
||||
send({ type: "error", sessionId, message: "Session already running" });
|
||||
|
|
@ -84,8 +85,8 @@ async function handleQuery(msg: QueryMessage) {
|
|||
"Bash", "Read", "Write", "Edit", "Glob", "Grep",
|
||||
"WebSearch", "WebFetch", "TodoWrite", "NotebookEdit",
|
||||
],
|
||||
permissionMode: "bypassPermissions",
|
||||
allowDangerouslySkipPermissions: true,
|
||||
permissionMode: (permissionMode ?? "bypassPermissions") as "bypassPermissions" | "default",
|
||||
allowDangerouslySkipPermissions: (permissionMode ?? "bypassPermissions") === "bypassPermissions",
|
||||
},
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue