downcity 1.1.255 → 1.1.256

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/bin/city/agent/AgentChat.d.ts.map +1 -1
  2. package/bin/city/agent/AgentChat.js +2 -0
  3. package/bin/city/agent/AgentChat.js.map +1 -1
  4. package/bin/city/agent/AgentChatTui.d.ts +10 -0
  5. package/bin/city/agent/AgentChatTui.d.ts.map +1 -1
  6. package/bin/city/agent/AgentChatTui.js +2 -0
  7. package/bin/city/agent/AgentChatTui.js.map +1 -1
  8. package/bin/city/agent/tui/AgentChatTuiCoordinator.d.ts +30 -0
  9. package/bin/city/agent/tui/AgentChatTuiCoordinator.d.ts.map +1 -1
  10. package/bin/city/agent/tui/AgentChatTuiCoordinator.js +100 -1
  11. package/bin/city/agent/tui/AgentChatTuiCoordinator.js.map +1 -1
  12. package/bin/city/agent/tui/PiTuiChatRenderer.d.ts +3 -1
  13. package/bin/city/agent/tui/PiTuiChatRenderer.d.ts.map +1 -1
  14. package/bin/city/agent/tui/PiTuiChatRenderer.js +13 -1
  15. package/bin/city/agent/tui/PiTuiChatRenderer.js.map +1 -1
  16. package/bin/city/agent/tui/commands/dispatch.js +6 -0
  17. package/bin/city/agent/tui/commands/dispatch.js.map +1 -1
  18. package/bin/city/agent/tui/commands/host.d.ts +12 -0
  19. package/bin/city/agent/tui/commands/host.d.ts.map +1 -1
  20. package/bin/city/agent/tui/commands/registry.d.ts.map +1 -1
  21. package/bin/city/agent/tui/commands/registry.js +12 -0
  22. package/bin/city/agent/tui/commands/registry.js.map +1 -1
  23. package/bin/city/agent/tui/dialogs/ApprovalDialog.d.ts +59 -0
  24. package/bin/city/agent/tui/dialogs/ApprovalDialog.d.ts.map +1 -0
  25. package/bin/city/agent/tui/dialogs/ApprovalDialog.js +116 -0
  26. package/bin/city/agent/tui/dialogs/ApprovalDialog.js.map +1 -0
  27. package/bin/city/types/AgentChatInteractive.d.ts +13 -0
  28. package/bin/city/types/AgentChatInteractive.d.ts.map +1 -1
  29. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChat.d.ts","sourceRoot":"","sources":["../../../src/city/agent/AgentChat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAU1E;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmG7E"}
1
+ {"version":3,"file":"AgentChat.d.ts","sourceRoot":"","sources":["../../../src/city/agent/AgentChat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAU1E;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuG7E"}
@@ -81,6 +81,8 @@ export async function chatCommand(options) {
81
81
  create_session: async () => await createRemoteChatSession({
82
82
  remote_agent: interactive.remote_agent,
83
83
  }),
84
+ approve: async (approval_id) => await interactive.remote_agent.approve({ approval_id }),
85
+ deny: async (approval_id) => await interactive.remote_agent.deny({ approval_id }),
84
86
  run_turn: async ({ session_id, message, interactive_renderer }) => {
85
87
  const outcome = await runSdkPromptTurn({
86
88
  agentId,
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChat.js","sourceRoot":"","sources":["../../../src/city/agent/AgentChat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentChat.js","sourceRoot":"","sources":["../../../src/city/agent/AgentChat.ts"],"names":[],"mappings":"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"}
@@ -34,5 +34,15 @@ export declare function run_agent_chat_tui(params: {
34
34
  emitted_visible_text: boolean;
35
35
  text?: string;
36
36
  }>;
37
+ /** 批准 unrestricted sandbox 审批请求。 */
38
+ approve: (approval_id: string) => Promise<{
39
+ success: boolean;
40
+ decision: string;
41
+ }>;
42
+ /** 拒绝 unrestricted sandbox 审批请求。 */
43
+ deny: (approval_id: string) => Promise<{
44
+ success: boolean;
45
+ decision: string;
46
+ }>;
37
47
  }): Promise<void>;
38
48
  //# sourceMappingURL=AgentChatTui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChatTui.d.ts","sourceRoot":"","sources":["../../../src/city/agent/AgentChatTui.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAC7F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAElF;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE;IAC/C,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,aAAa,EAAE,MAAM,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAC5D,mBAAmB;IACnB,cAAc,EAAE,MAAM,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,cAAc;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB,EAAE,gCAAgC,CAAC;KACxD,KAAK,OAAO,CAAC;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,OAAO,CAAC;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;CACJ,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhB"}
1
+ {"version":3,"file":"AgentChatTui.d.ts","sourceRoot":"","sources":["../../../src/city/agent/AgentChatTui.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAC7F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAElF;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE;IAC/C,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,aAAa,EAAE,MAAM,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAC5D,mBAAmB;IACnB,cAAc,EAAE,MAAM,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,cAAc;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB,EAAE,gCAAgC,CAAC;KACxD,KAAK,OAAO,CAAC;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,OAAO,CAAC;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IAEH,oCAAoC;IACpC,OAAO,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAElF,oCAAoC;IACpC,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChF,GAAG,OAAO,CAAC,IAAI,CAAC,CAYhB"}
@@ -18,6 +18,8 @@ export async function run_agent_chat_tui(params) {
18
18
  list_sessions: params.list_sessions,
19
19
  create_session: params.create_session,
20
20
  run_turn: params.run_turn,
21
+ approve: params.approve,
22
+ deny: params.deny,
21
23
  });
22
24
  await coordinator.run();
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChatTui.js","sourceRoot":"","sources":["../../../src/city/agent/AgentChatTui.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAItF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAoBxC;IACC,MAAM,WAAW,GAAG,IAAI,uBAAuB,CAAC;QAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC,CAAC;IAEH,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"AgentChatTui.js","sourceRoot":"","sources":["../../../src/city/agent/AgentChatTui.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAItF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MA0BxC;IACC,MAAM,WAAW,GAAG,IAAI,uBAAuB,CAAC;QAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CAAC;IAEH,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC;AAC1B,CAAC"}
@@ -33,6 +33,16 @@ export interface AgentChatTuiCoordinatorOptions {
33
33
  emitted_visible_text: boolean;
34
34
  text?: string;
35
35
  }>;
36
+ /** 批准 unrestricted sandbox 审批请求。 */
37
+ approve: (approval_id: string) => Promise<{
38
+ success: boolean;
39
+ decision: string;
40
+ }>;
41
+ /** 拒绝 unrestricted sandbox 审批请求。 */
42
+ deny: (approval_id: string) => Promise<{
43
+ success: boolean;
44
+ decision: string;
45
+ }>;
36
46
  }
37
47
  /**
38
48
  * Agent chat TUI 协调器。
@@ -51,6 +61,10 @@ export declare class AgentChatTuiCoordinator {
51
61
  private resolve_run;
52
62
  private overlay_handle;
53
63
  private remove_input_listener;
64
+ /**
65
+ * 当前 session 中尚未处理的 unrestricted sandbox 审批请求。
66
+ * 用于支持 /approve /deny 不带参数时默认操作最近一个。
67
+ */
54
68
  /**
55
69
  * 全局 tool output 展开状态。
56
70
  * 对齐 Kimi Code:Ctrl+O 统一切换所有 tool 卡片,
@@ -72,6 +86,22 @@ export declare class AgentChatTuiCoordinator {
72
86
  * @returns TUI 停止后 resolve。
73
87
  */
74
88
  run(): Promise<void>;
89
+ /**
90
+ * 显示 unrestricted sandbox 审批弹窗。
91
+ */
92
+ private show_approval_dialog;
93
+ /**
94
+ * 隐藏当前弹窗。
95
+ */
96
+ private hide_approval_dialog;
97
+ /**
98
+ * 批准指定审批请求。
99
+ */
100
+ private approve;
101
+ /**
102
+ * 拒绝指定审批请求。
103
+ */
104
+ private deny;
75
105
  /**
76
106
  * 停止 TUI 并清理资源。
77
107
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChatTuiCoordinator.d.ts","sourceRoot":"","sources":["../../../../src/city/agent/tui/AgentChatTuiCoordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkBH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAClF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAQ7F;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,aAAa,EAAE,MAAM,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAC5D,mBAAmB;IACnB,cAAc,EAAE,MAAM,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,cAAc;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB,EAAE,gCAAgC,CAAC;KACxD,KAAK,OAAO,CAAC;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,OAAO,CAAC;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;IAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsB;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuB;IACpD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,qBAAqB,CAA6B;IAE1D;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAS;IAErC;;OAEG;IACH,OAAO,KAAK,kBAAkB,GAyB7B;IAED;;OAEG;gBACS,OAAO,EAAE,8BAA8B;IAwCnD;;;;;OAKG;IACG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B1B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAY3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAOxC;;;;OAIG;YACW,iBAAiB;IAsC/B;;;;OAIG;YACW,QAAQ;IA8BtB;;OAEG;YACW,mBAAmB;IAuCjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;YACW,kBAAkB;IAahC;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAUtB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IASxB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IASzB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;OAIG;IACH,OAAO,CAAC,4BAA4B;CAIrC"}
1
+ {"version":3,"file":"AgentChatTuiCoordinator.d.ts","sourceRoot":"","sources":["../../../../src/city/agent/tui/AgentChatTuiCoordinator.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { Key, matchesKey, ProcessTerminal, TUI, } from "@earendil-works/pi-tui";
10
10
  import { ChatEditorComponent, StatusLineComponent, } from "./components/index.js";
11
11
  import { MessageListComponent } from "./components/MessageList.js";
12
12
  import { SessionPickerComponent } from "./dialogs/SessionPicker.js";
13
+ import { ApprovalDialogComponent } from "./dialogs/ApprovalDialog.js";
13
14
  import { PiTuiChatRenderer } from "./PiTuiChatRenderer.js";
14
15
  import { dispatchSlashCommand, resolveSlashCommandInput, } from "./commands/index.js";
15
16
  /**
@@ -29,6 +30,10 @@ export class AgentChatTuiCoordinator {
29
30
  resolve_run = null;
30
31
  overlay_handle = null;
31
32
  remove_input_listener = null;
33
+ /**
34
+ * 当前 session 中尚未处理的 unrestricted sandbox 审批请求。
35
+ * 用于支持 /approve /deny 不带参数时默认操作最近一个。
36
+ */
32
37
  /**
33
38
  * 全局 tool output 展开状态。
34
39
  * 对齐 Kimi Code:Ctrl+O 统一切换所有 tool 卡片,
@@ -59,6 +64,12 @@ export class AgentChatTuiCoordinator {
59
64
  show_session_picker: async () => {
60
65
  await this.show_session_picker();
61
66
  },
67
+ approve: async (approval_id) => {
68
+ await this.approve(approval_id);
69
+ },
70
+ deny: async (approval_id) => {
71
+ await this.deny(approval_id);
72
+ },
62
73
  stop: async () => {
63
74
  await this.stop();
64
75
  },
@@ -125,6 +136,91 @@ export class AgentChatTuiCoordinator {
125
136
  this.resolve_run = resolve;
126
137
  });
127
138
  }
139
+ /**
140
+ * 显示 unrestricted sandbox 审批弹窗。
141
+ */
142
+ show_approval_dialog(params) {
143
+ if (this.overlay_handle || this.stopped) {
144
+ return;
145
+ }
146
+ const dialog = new ApprovalDialogComponent({
147
+ approval_id: params.approval_id,
148
+ tool_name: params.tool_name,
149
+ cmd: params.cmd,
150
+ cwd: params.cwd,
151
+ reason: params.reason,
152
+ on_decide: (decision) => {
153
+ this.hide_approval_dialog();
154
+ if (decision === "approve") {
155
+ void this.approve(params.approval_id);
156
+ }
157
+ else if (decision === "deny") {
158
+ void this.deny(params.approval_id);
159
+ }
160
+ },
161
+ });
162
+ this.overlay_handle = this.tui.showOverlay(dialog, {
163
+ width: "80%",
164
+ maxHeight: "70%",
165
+ anchor: "center",
166
+ });
167
+ this.overlay_handle.focus();
168
+ this.request_render();
169
+ }
170
+ /**
171
+ * 隐藏当前弹窗。
172
+ */
173
+ hide_approval_dialog() {
174
+ if (!this.overlay_handle) {
175
+ return;
176
+ }
177
+ this.overlay_handle.hide();
178
+ this.overlay_handle = null;
179
+ this.tui.setFocus(this.editor);
180
+ this.request_render();
181
+ }
182
+ /**
183
+ * 批准指定审批请求。
184
+ */
185
+ async approve(approval_id) {
186
+ const target_id = String(approval_id || "").trim();
187
+ if (!target_id) {
188
+ this.add_error_message("Usage: /approve <approval_id>");
189
+ this.request_render();
190
+ return;
191
+ }
192
+ try {
193
+ const result = await this.options.approve(target_id);
194
+ if (!result.success) {
195
+ this.add_error_message(`Failed to approve ${target_id}`);
196
+ }
197
+ }
198
+ catch (error) {
199
+ this.add_error_message(this.format_error(error));
200
+ }
201
+ this.request_render();
202
+ }
203
+ /**
204
+ * 拒绝指定审批请求。
205
+ */
206
+ async deny(approval_id) {
207
+ const target_id = String(approval_id || "").trim();
208
+ if (!target_id) {
209
+ this.add_error_message("Usage: /deny <approval_id>");
210
+ this.request_render();
211
+ return;
212
+ }
213
+ try {
214
+ const result = await this.options.deny(target_id);
215
+ if (!result.success) {
216
+ this.add_error_message(`Failed to deny ${target_id}`);
217
+ }
218
+ }
219
+ catch (error) {
220
+ this.add_error_message(this.format_error(error));
221
+ }
222
+ this.request_render();
223
+ }
128
224
  /**
129
225
  * 停止 TUI 并清理资源。
130
226
  */
@@ -134,6 +230,7 @@ export class AgentChatTuiCoordinator {
134
230
  }
135
231
  this.stopped = true;
136
232
  this.hide_session_picker();
233
+ this.hide_approval_dialog();
137
234
  this.remove_input_listener?.();
138
235
  this.status_line.dispose();
139
236
  this.tui.stop();
@@ -204,7 +301,9 @@ export class AgentChatTuiCoordinator {
204
301
  this.message_list.scroll_to_bottom();
205
302
  this.add_user_message(message);
206
303
  this.request_render();
207
- const renderer = new PiTuiChatRenderer(this.message_list, () => this.request_render());
304
+ const renderer = new PiTuiChatRenderer(this.message_list, () => this.request_render(), (params) => {
305
+ this.show_approval_dialog(params);
306
+ });
208
307
  const outcome = await this.options.run_turn({
209
308
  session_id: this.current_session_id,
210
309
  message,
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChatTuiCoordinator.js","sourceRoot":"","sources":["../../../../src/city/agent/tui/AgentChatTuiCoordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentChatTuiCoordinator.js","sourceRoot":"","sources":["../../../../src/city/agent/tui/AgentChatTuiCoordinator.ts"],"names":[],"mappings":"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"}
@@ -14,11 +14,13 @@ import type { MessageListComponent } from "./components/MessageList.js";
14
14
  export declare class PiTuiChatRenderer implements AgentChatInteractiveRendererPort {
15
15
  private streaming_ui;
16
16
  private emitted_visible_text;
17
+ on_approval_request?: AgentChatInteractiveRendererPort["on_approval_request"];
17
18
  /**
18
19
  * @param message_list 消息流组件。
19
20
  * @param request_render 通知 TUI 重绘的回调。
21
+ * @param on_approval_request approval 弹窗回调。
20
22
  */
21
- constructor(message_list: MessageListComponent, request_render: () => void);
23
+ constructor(message_list: MessageListComponent, request_render: () => void, on_approval_request?: AgentChatInteractiveRendererPort["on_approval_request"]);
22
24
  /**
23
25
  * 启动新一轮渲染。
24
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PiTuiChatRenderer.d.ts","sourceRoot":"","sources":["../../../../src/city/agent/tui/PiTuiChatRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EACV,kCAAkC,EAClC,gCAAgC,EACjC,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAEvF;;GAEG;AACH,qBAAa,iBAAkB,YAAW,gCAAgC;IACxE,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,oBAAoB,CAAS;IAErC;;;OAGG;gBACS,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,IAAI;IAO1E;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIrC;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAO5C;;;;OAIG;IACH,WAAW,IAAI,kCAAkC;CAMlD"}
1
+ {"version":3,"file":"PiTuiChatRenderer.d.ts","sourceRoot":"","sources":["../../../../src/city/agent/tui/PiTuiChatRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EACV,kCAAkC,EAClC,gCAAgC,EACjC,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAEvF;;GAEG;AACH,qBAAa,iBAAkB,YAAW,gCAAgC;IACxE,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,oBAAoB,CAAS;IACrC,mBAAmB,CAAC,EAAE,gCAAgC,CAAC,qBAAqB,CAAC,CAAC;IAE9E;;;;OAIG;gBAED,YAAY,EAAE,oBAAoB,EAClC,cAAc,EAAE,MAAM,IAAI,EAC1B,mBAAmB,CAAC,EAAE,gCAAgC,CAAC,qBAAqB,CAAC;IAS/E;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;;;OAIG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIrC;;;;OAIG;IACH,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAgB5C;;;;OAIG;IACH,WAAW,IAAI,kCAAkC;CAMlD"}
@@ -12,15 +12,18 @@ import { StreamingUIController } from "./controllers/StreamingUI.js";
12
12
  export class PiTuiChatRenderer {
13
13
  streaming_ui;
14
14
  emitted_visible_text = false;
15
+ on_approval_request;
15
16
  /**
16
17
  * @param message_list 消息流组件。
17
18
  * @param request_render 通知 TUI 重绘的回调。
19
+ * @param on_approval_request approval 弹窗回调。
18
20
  */
19
- constructor(message_list, request_render) {
21
+ constructor(message_list, request_render, on_approval_request) {
20
22
  this.streaming_ui = new StreamingUIController({
21
23
  message_list,
22
24
  request_render,
23
25
  });
26
+ this.on_approval_request = on_approval_request;
24
27
  }
25
28
  /**
26
29
  * 启动新一轮渲染。
@@ -47,6 +50,15 @@ export class PiTuiChatRenderer {
47
50
  if (event.type === "text-delta" && (event.text || "").trim()) {
48
51
  this.emitted_visible_text = true;
49
52
  }
53
+ if (event.type === "tool-approval-request") {
54
+ this.on_approval_request?.({
55
+ approval_id: event.approvalId,
56
+ tool_name: event.toolName,
57
+ cmd: event.cmd,
58
+ cwd: event.cwd,
59
+ reason: event.reason,
60
+ });
61
+ }
50
62
  }
51
63
  /**
52
64
  * 结束当前一轮渲染。
@@ -1 +1 @@
1
- {"version":3,"file":"PiTuiChatRenderer.js","sourceRoot":"","sources":["../../../../src/city/agent/tui/PiTuiChatRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAGpF;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACpB,YAAY,CAAwB;IACpC,oBAAoB,GAAG,KAAK,CAAC;IAErC;;;OAGG;IACH,YAAY,YAAkC,EAAE,cAA0B;QACxE,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAqB,CAAC;YAC5C,YAAY;YACZ,cAAc;SACf,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,KAAwB;QACnC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO;YACL,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"PiTuiChatRenderer.js","sourceRoot":"","sources":["../../../../src/city/agent/tui/PiTuiChatRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAGpF;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACpB,YAAY,CAAwB;IACpC,oBAAoB,GAAG,KAAK,CAAC;IACrC,mBAAmB,CAA2D;IAE9E;;;;OAIG;IACH,YACE,YAAkC,EAClC,cAA0B,EAC1B,mBAA6E;QAE7E,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAqB,CAAC;YAC5C,YAAY;YACZ,cAAc;SACf,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,OAAe;QAC5B,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,KAAwB;QACnC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;YAC3C,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,WAAW,EAAE,KAAK,CAAC,UAAU;gBAC7B,SAAS,EAAE,KAAK,CAAC,QAAQ;gBACzB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO;YACL,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAC;IACJ,CAAC;CACF"}
@@ -50,6 +50,12 @@ async function handle_built_in_slash_command(host, name, _args) {
50
50
  case "sessions":
51
51
  await host.show_session_picker();
52
52
  return;
53
+ case "approve":
54
+ await host.approve(_args.trim());
55
+ return;
56
+ case "deny":
57
+ await host.deny(_args.trim());
58
+ return;
53
59
  default:
54
60
  host.show_error(`Unknown slash command: /${name}`);
55
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/dispatch.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAsB,EACtB,MAA0B;IAE1B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,aAAa,CAAC;QACnB,KAAK,SAAS;YACZ,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChD,OAAO;QACT,KAAK,SAAS;YACZ,IAAI,CAAC,UAAU,CAAC,2BAA2B,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,KAAK,SAAS;YACZ,IAAI,CAAC,UAAU,CAAC,WAAW,MAAM,CAAC,YAAY,mBAAmB,CAAC,CAAC;YACnE,OAAO;QACT,KAAK,SAAS;YACZ,MAAM,6BAA6B,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACpE,OAAO;IACX,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,6BAA6B,CAC1C,IAAsB,EACtB,IAAY,EACZ,KAAa;IAEb,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACT,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM;YACT,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO;QACT,KAAK,OAAO;YACV,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,OAAO;QACT,KAAK,KAAK;YACR,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAChC,OAAO;QACT,KAAK,SAAS,CAAC;QACf,KAAK,UAAU;YACb,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACjC,OAAO;QACT;YACE,IAAI,CAAC,UAAU,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/dispatch.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAsB,EACtB,MAA0B;IAE1B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,aAAa,CAAC;QACnB,KAAK,SAAS;YACZ,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChD,OAAO;QACT,KAAK,SAAS;YACZ,IAAI,CAAC,UAAU,CAAC,2BAA2B,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;YAClE,OAAO;QACT,KAAK,SAAS;YACZ,IAAI,CAAC,UAAU,CAAC,WAAW,MAAM,CAAC,YAAY,mBAAmB,CAAC,CAAC;YACnE,OAAO;QACT,KAAK,SAAS;YACZ,MAAM,6BAA6B,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACpE,OAAO;IACX,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,6BAA6B,CAC1C,IAAsB,EACtB,IAAY,EACZ,KAAa;IAEb,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACT,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM;YACT,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO;QACT,KAAK,OAAO;YACV,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,OAAO;QACT,KAAK,KAAK;YACR,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAChC,OAAO;QACT,KAAK,SAAS,CAAC;QACf,KAAK,UAAU;YACb,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACjC,OAAO;QACT,KAAK,SAAS;YACZ,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACjC,OAAO;QACT,KAAK,MAAM;YACT,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9B,OAAO;QACT;YACE,IAAI,CAAC,UAAU,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
@@ -30,6 +30,18 @@ export interface SlashCommandHost {
30
30
  create_new_session(): Promise<void>;
31
31
  /** 展示 session 选择器。 */
32
32
  show_session_picker(): Promise<void>;
33
+ /**
34
+ * 批准指定 unrestricted sandbox 审批请求。
35
+ *
36
+ * @param approval_id 审批 ID;为空时尝试批准最近一个 pending 请求。
37
+ */
38
+ approve(approval_id?: string): Promise<void>;
39
+ /**
40
+ * 拒绝指定 unrestricted sandbox 审批请求。
41
+ *
42
+ * @param approval_id 审批 ID;为空时尝试拒绝最近一个 pending 请求。
43
+ */
44
+ deny(approval_id?: string): Promise<void>;
33
45
  /** 停止 TUI。 */
34
46
  stop(): Promise<void>;
35
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/host.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sBAAsB;IACtB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAE/B;;;;OAIG;IACH,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,cAAc;IACd,SAAS,IAAI,IAAI,CAAC;IAElB,aAAa;IACb,gBAAgB,IAAI,IAAI,CAAC;IAEzB,mBAAmB;IACnB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC,sBAAsB;IACtB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC,cAAc;IACd,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/host.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sBAAsB;IACtB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAE/B;;;;OAIG;IACH,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,cAAc;IACd,SAAS,IAAI,IAAI,CAAC;IAElB,aAAa;IACb,gBAAgB,IAAI,IAAI,CAAC;IAEzB,mBAAmB;IACnB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC,sBAAsB;IACtB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC;;;;OAIG;IACH,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;;OAIG;IACH,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,cAAc;IACd,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,YAAY,EA+BzD,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAI9E"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,YAAY,EA2CzD,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAI9E"}
@@ -35,6 +35,18 @@ export const BUILTIN_SLASH_COMMANDS = [
35
35
  description: "Browse and switch sessions",
36
36
  availability: "idle-only",
37
37
  },
38
+ {
39
+ name: "approve",
40
+ aliases: ["a"],
41
+ description: "Approve an unrestricted sandbox request (/approve <approval_id>)",
42
+ availability: "always",
43
+ },
44
+ {
45
+ name: "deny",
46
+ aliases: ["d"],
47
+ description: "Deny an unrestricted sandbox request (/deny <approval_id>)",
48
+ availability: "always",
49
+ },
38
50
  ];
39
51
  /**
40
52
  * 根据名称查找内置 slash 命令(支持别名)。
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACnB,WAAW,EAAE,uCAAuC;QACpD,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,WAAW,EAAE,iBAAiB;QAC9B,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,sBAAsB;QACnC,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,uBAAuB;QACpC,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,WAAW,EAAE,4BAA4B;QACzC,YAAY,EAAE,WAAW;KAC1B;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,OAAO,sBAAsB,CAAC,IAAI,CAChC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CACrE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../../src/city/agent/tui/commands/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;QACnB,WAAW,EAAE,uCAAuC;QACpD,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,MAAM,CAAC;QACjB,WAAW,EAAE,iBAAiB;QAC9B,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,sBAAsB;QACnC,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,uBAAuB;QACpC,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,WAAW,EAAE,4BAA4B;QACzC,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,kEAAkE;QAC/E,YAAY,EAAE,QAAQ;KACvB;IACD;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,GAAG,CAAC;QACd,WAAW,EAAE,4DAA4D;QACzE,YAAY,EAAE,QAAQ;KACvB;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,OAAO,sBAAsB,CAAC,IAAI,CAChC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CACrE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * unrestricted sandbox 审批选择器弹窗。
3
+ *
4
+ * 关键点(中文)
5
+ * - 当模型请求 unrestricted sandbox 时自动弹出,让用户选择 Approve / Deny。
6
+ * - 上下方向键选择,Enter 确认,Esc / Ctrl+C 取消(保持 pending)。
7
+ * - 与 SessionPicker 风格一致:primary 色边框、指针、底部 hint。
8
+ */
9
+ import { type Component, type Focusable } from "@earendil-works/pi-tui";
10
+ /**
11
+ * 审批决策结果。
12
+ */
13
+ export type ApprovalDecision = "approve" | "deny" | "cancel";
14
+ /**
15
+ * 审批选择器弹窗。
16
+ */
17
+ export declare class ApprovalDialogComponent implements Component, Focusable {
18
+ private readonly approval_id;
19
+ private readonly tool_name;
20
+ private readonly cmd;
21
+ private readonly cwd;
22
+ private readonly reason;
23
+ private readonly on_decide;
24
+ private selected_index;
25
+ focused: boolean;
26
+ /**
27
+ * @param params 弹窗参数。
28
+ */
29
+ constructor(params: {
30
+ approval_id: string;
31
+ tool_name: string;
32
+ cmd: string;
33
+ cwd: string;
34
+ reason: string;
35
+ on_decide: (decision: ApprovalDecision) => void;
36
+ });
37
+ /**
38
+ * 处理键盘输入。
39
+ *
40
+ * @param data pi-tui 输入数据。
41
+ */
42
+ handleInput(data: string): void;
43
+ /**
44
+ * 渲染审批弹窗。
45
+ *
46
+ * @param width 可用宽度。
47
+ * @returns 渲染后的行数组。
48
+ */
49
+ render(width: number): string[];
50
+ /**
51
+ * 无缓存需要清理。
52
+ */
53
+ invalidate(): void;
54
+ private render_title;
55
+ private render_detail;
56
+ private render_option;
57
+ private render_hint;
58
+ }
59
+ //# sourceMappingURL=ApprovalDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApprovalDialog.d.ts","sourceRoot":"","sources":["../../../../../src/city/agent/tui/dialogs/ApprovalDialog.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAQhC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE7D;;GAEG;AACH,qBAAa,uBAAwB,YAAW,SAAS,EAAE,SAAS;IAClE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuC;IACjE,OAAO,CAAC,cAAc,CAAK;IAE3B,OAAO,UAAS;IAEhB;;OAEG;gBACS,MAAM,EAAE;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;KACjD;IASD;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAmB/B;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IA0B/B;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,WAAW;CAIpB"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * unrestricted sandbox 审批选择器弹窗。
3
+ *
4
+ * 关键点(中文)
5
+ * - 当模型请求 unrestricted sandbox 时自动弹出,让用户选择 Approve / Deny。
6
+ * - 上下方向键选择,Enter 确认,Esc / Ctrl+C 取消(保持 pending)。
7
+ * - 与 SessionPicker 风格一致:primary 色边框、指针、底部 hint。
8
+ */
9
+ import { matchesKey, Key, truncateToWidth, } from "@earendil-works/pi-tui";
10
+ import { SELECT_POINTER } from "../constant/symbols.js";
11
+ import { current_theme } from "../theme/index.js";
12
+ const BORDER_HORIZONTAL = "─";
13
+ const ELLIPSIS = "…";
14
+ /**
15
+ * 审批选择器弹窗。
16
+ */
17
+ export class ApprovalDialogComponent {
18
+ approval_id;
19
+ tool_name;
20
+ cmd;
21
+ cwd;
22
+ reason;
23
+ on_decide;
24
+ selected_index = 0;
25
+ focused = false;
26
+ /**
27
+ * @param params 弹窗参数。
28
+ */
29
+ constructor(params) {
30
+ this.approval_id = params.approval_id;
31
+ this.tool_name = params.tool_name;
32
+ this.cmd = params.cmd;
33
+ this.cwd = params.cwd;
34
+ this.reason = params.reason;
35
+ this.on_decide = params.on_decide;
36
+ }
37
+ /**
38
+ * 处理键盘输入。
39
+ *
40
+ * @param data pi-tui 输入数据。
41
+ */
42
+ handleInput(data) {
43
+ if (matchesKey(data, Key.up) || matchesKey(data, Key.down)) {
44
+ this.selected_index = this.selected_index === 0 ? 1 : 0;
45
+ return;
46
+ }
47
+ if (matchesKey(data, Key.enter)) {
48
+ this.on_decide(this.selected_index === 0 ? "approve" : "deny");
49
+ return;
50
+ }
51
+ if (matchesKey(data, Key.escape) ||
52
+ matchesKey(data, "ctrl+c") ||
53
+ matchesKey(data, "ctrl+d")) {
54
+ this.on_decide("cancel");
55
+ return;
56
+ }
57
+ }
58
+ /**
59
+ * 渲染审批弹窗。
60
+ *
61
+ * @param width 可用宽度。
62
+ * @returns 渲染后的行数组。
63
+ */
64
+ render(width) {
65
+ const safe_width = Math.max(0, width);
66
+ if (safe_width <= 0) {
67
+ return [""];
68
+ }
69
+ const inner_width = Math.max(1, safe_width - 2);
70
+ const lines = [];
71
+ lines.push(current_theme.fg("primary", BORDER_HORIZONTAL.repeat(safe_width)));
72
+ lines.push(this.render_title(inner_width));
73
+ lines.push("");
74
+ lines.push(this.render_detail(inner_width, "tool", this.tool_name));
75
+ lines.push(this.render_detail(inner_width, "cmd", this.cmd));
76
+ lines.push(this.render_detail(inner_width, "cwd", this.cwd));
77
+ lines.push(this.render_detail(inner_width, "reason", this.reason));
78
+ lines.push("");
79
+ lines.push(this.render_option(inner_width, "Approve", 0));
80
+ lines.push(this.render_option(inner_width, "Deny", 1));
81
+ lines.push("");
82
+ lines.push(this.render_hint(inner_width));
83
+ lines.push(current_theme.fg("primary", BORDER_HORIZONTAL.repeat(safe_width)));
84
+ return lines.map((line) => truncateToWidth(line, safe_width, ELLIPSIS));
85
+ }
86
+ /**
87
+ * 无缓存需要清理。
88
+ */
89
+ invalidate() {
90
+ // 弹窗内容不变,无需刷新。
91
+ }
92
+ render_title(inner_width) {
93
+ const title = current_theme.bold_fg("accent", ` Unrestricted sandbox approval · ${this.approval_id} `);
94
+ return " " + truncateToWidth(title, inner_width, ELLIPSIS);
95
+ }
96
+ render_detail(inner_width, label, value) {
97
+ const colored_label = current_theme.bold_fg("text", `${label}: `);
98
+ const line = ` ${colored_label}${value}`;
99
+ return truncateToWidth(line, inner_width, ELLIPSIS);
100
+ }
101
+ render_option(inner_width, label, index) {
102
+ const is_selected = this.selected_index === index;
103
+ const pointer = is_selected
104
+ ? current_theme.fg("primary", `${SELECT_POINTER} `)
105
+ : " ";
106
+ const colored_label = is_selected
107
+ ? current_theme.bold_fg("primary", label)
108
+ : current_theme.fg("text", label);
109
+ return " " + truncateToWidth(`${pointer}${colored_label}`, inner_width, ELLIPSIS);
110
+ }
111
+ render_hint(inner_width) {
112
+ const hint = "↑↓ navigate · Enter confirm · Esc cancel";
113
+ return " " + truncateToWidth(current_theme.dim_fg("textMuted", hint), inner_width, ELLIPSIS);
114
+ }
115
+ }
116
+ //# sourceMappingURL=ApprovalDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApprovalDialog.js","sourceRoot":"","sources":["../../../../../src/city/agent/tui/dialogs/ApprovalDialog.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,19 @@ export interface AgentChatInteractiveRendererPort {
26
26
  attach_turn_id: (turn_id: string) => void;
27
27
  /** 渲染单个 session 事件。 */
28
28
  render_event: (event: AgentSessionEvent) => void;
29
+ /**
30
+ * 当 unrestricted sandbox 审批请求到达时触发。
31
+ *
32
+ * 说明(中文)
33
+ * - 由 TUI 实现弹窗选择器;stdout 版可忽略。
34
+ */
35
+ on_approval_request?: (params: {
36
+ approval_id: string;
37
+ tool_name: string;
38
+ cmd: string;
39
+ cwd: string;
40
+ reason: string;
41
+ }) => void;
29
42
  /** 结束当前一轮渲染。 */
30
43
  finish_turn: () => AgentChatInteractiveRenderSnapshot;
31
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AgentChatInteractive.d.ts","sourceRoot":"","sources":["../../../src/city/types/AgentChatInteractive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,kCAAkC;IACjD,iCAAiC;IACjC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,gCAAgC;IAC/C,eAAe;IACf,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB,oBAAoB;IACpB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAE1C,uBAAuB;IACvB,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEjD,gBAAgB;IAChB,WAAW,EAAE,MAAM,kCAAkC,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB"}
1
+ {"version":3,"file":"AgentChatInteractive.d.ts","sourceRoot":"","sources":["../../../src/city/types/AgentChatInteractive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,kCAAkC;IACjD,iCAAiC;IACjC,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,gCAAgC;IAC/C,eAAe;IACf,UAAU,EAAE,MAAM,IAAI,CAAC;IAEvB,oBAAoB;IACpB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAE1C,uBAAuB;IACvB,YAAY,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEjD;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE;QAC7B,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAChB,KAAK,IAAI,CAAC;IAEX,gBAAgB;IAChB,WAAW,EAAE,MAAM,kCAAkC,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "downcity",
3
- "version": "1.1.255",
3
+ "version": "1.1.256",
4
4
  "type": "module",
5
5
  "description": "Downcity CLI — unified City and Agent host management",
6
6
  "bin": {