@keyou007/agent-bot 0.1.14-alpha.2 → 0.1.14

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 (46) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +7 -4
  3. package/README.zh.md +7 -4
  4. package/dist/cli/FeishuAppConfiguration.js +4 -0
  5. package/dist/cli/FeishuAppConfiguration.js.map +1 -1
  6. package/dist/cli/controlProtocol.js.map +1 -1
  7. package/dist/cli/help.js +2 -0
  8. package/dist/cli/help.js.map +1 -1
  9. package/dist/cli.js +18 -0
  10. package/dist/cli.js.map +1 -1
  11. package/dist/commands/CommandRouter.js +9 -0
  12. package/dist/commands/CommandRouter.js.map +1 -1
  13. package/dist/feishu/CardRenderer.js +94 -15
  14. package/dist/feishu/CardRenderer.js.map +1 -1
  15. package/dist/feishu/FeishuMessageClient.js +16 -0
  16. package/dist/feishu/FeishuMessageClient.js.map +1 -1
  17. package/dist/feishu/FeishuTurnPresenter.js +42 -6
  18. package/dist/feishu/FeishuTurnPresenter.js.map +1 -1
  19. package/dist/index.js +2 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/presentation/OutboundRouter.js +7 -0
  22. package/dist/presentation/OutboundRouter.js.map +1 -1
  23. package/dist/presentation/TurnStateReducer.js +21 -7
  24. package/dist/presentation/TurnStateReducer.js.map +1 -1
  25. package/dist/proxy/ProxySessionController.js +102 -2
  26. package/dist/proxy/ProxySessionController.js.map +1 -1
  27. package/dist/state/StateStore.js +35 -0
  28. package/dist/state/StateStore.js.map +1 -1
  29. package/npm-shrinkwrap.json +2 -2
  30. package/package.json +1 -1
  31. package/skills/agent-bot/SKILL.md +2 -0
  32. package/src/cli/FeishuAppConfiguration.ts +4 -0
  33. package/src/cli/controlProtocol.ts +8 -0
  34. package/src/cli/help.ts +2 -0
  35. package/src/cli.ts +28 -0
  36. package/src/commands/CommandRouter.ts +8 -0
  37. package/src/commands/commandTypes.ts +1 -0
  38. package/src/feishu/CardRenderer.ts +114 -12
  39. package/src/feishu/FeishuMessageClient.ts +33 -0
  40. package/src/feishu/FeishuTurnPresenter.ts +43 -6
  41. package/src/feishu/types.ts +1 -0
  42. package/src/index.ts +2 -0
  43. package/src/presentation/OutboundRouter.ts +7 -0
  44. package/src/presentation/TurnStateReducer.ts +21 -7
  45. package/src/proxy/ProxySessionController.ts +131 -3
  46. package/src/state/StateStore.ts +37 -0
@@ -123,6 +123,30 @@ export class StateStore {
123
123
  `).all(since.toISOString());
124
124
  return rows.map(mapChatContext);
125
125
  }
126
+ removeChatContext(contextKey) {
127
+ const threadPrefix = `${contextKey}:thread_id:`;
128
+ const linked = this.db.prepare(`
129
+ SELECT DISTINCT local_session_id
130
+ FROM context_sessions
131
+ WHERE context_key = ? OR instr(context_key, ?) = 1
132
+ `).all(contextKey, threadPrefix);
133
+ const remove = this.db.transaction(() => {
134
+ this.db.prepare(`
135
+ DELETE FROM context_sessions
136
+ WHERE context_key = ? OR instr(context_key, ?) = 1
137
+ `).run(contextKey, threadPrefix);
138
+ this.db.prepare(`
139
+ DELETE FROM user_contexts
140
+ WHERE context_key = ? OR instr(context_key, ?) = 1
141
+ `).run(contextKey, threadPrefix);
142
+ this.db.prepare(`
143
+ DELETE FROM chat_contexts
144
+ WHERE context_key = ? OR instr(context_key, ?) = 1
145
+ `).run(contextKey, threadPrefix);
146
+ });
147
+ remove();
148
+ return linked.map((row) => row.local_session_id);
149
+ }
126
150
  enqueuePrompt(input) {
127
151
  const createdAt = new Date().toISOString();
128
152
  this.db.prepare(`
@@ -757,6 +781,17 @@ export class StateStore {
757
781
  .all(contextKey);
758
782
  return rows.map((row) => ({ ...mapSession(row), contextKey }));
759
783
  }
784
+ listSessionsForChat(contextKey) {
785
+ const threadPrefix = `${contextKey}:thread_id:`;
786
+ const rows = this.db.prepare(`
787
+ SELECT DISTINCT sessions.*
788
+ FROM context_sessions
789
+ JOIN sessions ON sessions.local_session_id = context_sessions.local_session_id
790
+ WHERE context_sessions.context_key = ? OR instr(context_sessions.context_key, ?) = 1
791
+ ORDER BY sessions.updated_at DESC
792
+ `).all(contextKey, threadPrefix);
793
+ return rows.map(mapSession);
794
+ }
760
795
  listAllSessions() {
761
796
  const rows = this.db
762
797
  .prepare("SELECT * FROM sessions ORDER BY updated_at DESC, created_at DESC")
@@ -1 +1 @@
1
- {"version":3,"file":"StateStore.js","sourceRoot":"","sources":["../../src/state/StateStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StateStore.js","sourceRoot":"","sources":["../../src/state/StateStore.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@keyou007/agent-bot",
3
- "version": "0.1.14-alpha.2",
3
+ "version": "0.1.14",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@keyou007/agent-bot",
9
- "version": "0.1.14-alpha.2",
9
+ "version": "0.1.14",
10
10
  "license": "GPL-3.0-only",
11
11
  "dependencies": {
12
12
  "@agentclientprotocol/sdk": "1.2.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keyou007/agent-bot",
3
- "version": "0.1.14-alpha.2",
3
+ "version": "0.1.14",
4
4
  "type": "module",
5
5
  "description": "Use Codex, TraeX, and compatible coding agents from Lark/Feishu.",
6
6
  "license": "GPL-3.0-only",
@@ -66,12 +66,14 @@ agentbot task prompt "<prompt>"
66
66
  agentbot task queue "<prompt>"
67
67
  agentbot task stop
68
68
  agentbot task archive
69
+ agentbot task dismiss --yes
69
70
  agentbot task title "<title>"
70
71
  ```
71
72
 
72
73
  - `prompt` posts the Prompt to the task's Feishu conversation before submitting it.
73
74
  - `queue` creates a later turn instead of steering the active turn. `nosteer` is an alias.
74
75
  - `stop` requests an Agent interrupt; it does not kill the Agent process.
76
+ - `dismiss --yes` irreversibly dissolves the task's current Feishu group and archives its current task. Use it only after the user explicitly confirms.
75
77
 
76
78
  Create or branch work in the same conversation:
77
79
 
@@ -24,6 +24,10 @@ const REQUIRED_SCOPE_REQUIREMENTS: ScopeRequirement[] = [
24
24
  requested: "im:chat:create",
25
25
  accepted: ["im:chat:create", "im:chat"],
26
26
  },
27
+ {
28
+ requested: "im:chat:delete",
29
+ accepted: ["im:chat:delete", "im:chat:operate_as_owner", "im:chat"],
30
+ },
27
31
  {
28
32
  requested: "im:chat:read",
29
33
  accepted: ["im:chat:read", "im:chat:readonly", "im:chat"],
@@ -30,6 +30,7 @@ export type ControlRequest =
30
30
  | { action: "task_status"; localSessionId: string }
31
31
  | { action: "task_stop"; localSessionId: string }
32
32
  | { action: "task_archive"; localSessionId: string }
33
+ | { action: "task_dismiss"; localSessionId: string }
33
34
  | { action: "task_title"; localSessionId: string; title: string }
34
35
  | { action: "task_prompt"; localSessionId: string; text: string }
35
36
  | {
@@ -100,6 +101,13 @@ export interface TaskGroupControlData {
100
101
  task: SessionRecord;
101
102
  }
102
103
 
104
+ export interface TaskDismissControlData {
105
+ localSessionId: string;
106
+ remoteSessionId: string;
107
+ title: string;
108
+ chatId: string;
109
+ }
110
+
103
111
  export interface TaskForkControlData {
104
112
  sourceLocalSessionId: string;
105
113
  sourceTurnId: string;
package/src/cli/help.ts CHANGED
@@ -45,6 +45,7 @@ export function renderCliHelp(version: string, language: CliLanguage = cliLangua
45
45
  task shell [任务] <命令> 在任务目录执行本地命令
46
46
  task stop [任务] 停止任务
47
47
  task archive [任务] 归档任务
48
+ task dismiss [任务] --yes 归档任务并解散其当前群聊
48
49
  task title [任务] <标题> 重命名任务
49
50
  task restart [任务] [--force] 从任务会话请求安全或立即重启
50
51
 
@@ -136,6 +137,7 @@ Task commands:
136
137
  task shell [task] <command> Run a local command in the task directory
137
138
  task stop [task] Stop a task
138
139
  task archive [task] Archive a task
140
+ task dismiss [task] --yes Archive a task and dissolve its current group
139
141
  task title [task] <title> Rename a task
140
142
  task restart [task] [--force] Request a safe or immediate restart from a task
141
143
 
package/src/cli.ts CHANGED
@@ -10,6 +10,7 @@ import {
10
10
  type ControlResponse,
11
11
  type TaskAgentControlData,
12
12
  type TaskDirectoryControlData,
13
+ type TaskDismissControlData,
13
14
  type TaskForkControlData,
14
15
  type TaskGoalControlData,
15
16
  type TaskGroupControlData,
@@ -1221,6 +1222,33 @@ async function taskCommand(input: string[]): Promise<void> {
1221
1222
  ));
1222
1223
  return;
1223
1224
  }
1225
+ if (action === "dismiss") {
1226
+ const target = resolveTaskCommandTarget(allSessions, rest, action);
1227
+ const options = target.args;
1228
+ rejectUnsupportedTaskOptions(action, options, ["--yes", "--json"]);
1229
+ if (options.some((value) => !value.startsWith("--"))) throw new Error(cliText(
1230
+ "task dismiss accepts only one task reference.",
1231
+ "task dismiss 只接受一个任务引用。",
1232
+ ));
1233
+ if (!options.includes("--yes")) throw new Error(cliText(
1234
+ "task dismiss permanently dissolves the bound group and archives its current task. Re-run with --yes.",
1235
+ "task dismiss 会永久解散绑定群并归档其当前任务。请添加 --yes 后重试。",
1236
+ ));
1237
+ const dismissed = controlData<TaskDismissControlData>(await sendControlRequest(
1238
+ controlEndpoint(config.storage.sqlitePath),
1239
+ {
1240
+ action: "task_dismiss",
1241
+ localSessionId: target.session.localSessionId,
1242
+ },
1243
+ 60_000,
1244
+ ));
1245
+ if (options.includes("--json")) printJson(dismissed);
1246
+ else process.stdout.write(cliText(
1247
+ `Group dissolved and task archived: ${dismissed.title} (${dismissed.chatId})\n`,
1248
+ `群已解散,任务已归档:${dismissed.title}(${dismissed.chatId})\n`,
1249
+ ));
1250
+ return;
1251
+ }
1224
1252
  if (action === "switch") {
1225
1253
  const targetSelection = resolveTaskCommandTarget(allSessions, rest, action, { preferCurrent: true });
1226
1254
  const switchArgs = targetSelection.args;
@@ -4,6 +4,7 @@ export const COMMAND_NAMES = [
4
4
  "agent",
5
5
  "archive",
6
6
  "dir",
7
+ "dismiss",
7
8
  "fork",
8
9
  "forkgroup",
9
10
  "goal",
@@ -29,6 +30,7 @@ export const COMMAND_NAMES = [
29
30
  type CommandName = (typeof COMMAND_NAMES)[number];
30
31
 
31
32
  const COMMAND_INITIALISMS: Partial<Record<CommandName, string>> = {
33
+ dir: "di",
32
34
  forkgroup: "fg",
33
35
  newgroup: "ng",
34
36
  nosteer: "ns",
@@ -81,6 +83,9 @@ export class CommandRouter {
81
83
  rejectOptions("/archive", args);
82
84
  if (args.length > 1) throw new Error("/archive 只接受一个可选的任务序号或任务 ID。");
83
85
  return args[0] ? { type: "archive", sessionId: args[0] } : { type: "archive" };
86
+ case "dismiss":
87
+ if (args.length > 0) throw new Error("/dismiss 不接受参数,请在确认卡片中完成操作。");
88
+ return { type: "dismiss" };
84
89
  case "stop":
85
90
  return { type: "stop" };
86
91
  case "status":
@@ -137,6 +142,9 @@ function resolveCommandName(rawCommand: string): CommandName {
137
142
  const exact = COMMAND_NAMES.find((command) => command === input);
138
143
  if (exact) return exact;
139
144
 
145
+ const initialism = COMMAND_NAMES.find((command) => COMMAND_INITIALISMS[command] === input);
146
+ if (initialism) return initialism;
147
+
140
148
  const matches = COMMAND_NAMES.filter(
141
149
  (command) => command.startsWith(input) || COMMAND_INITIALISMS[command] === input,
142
150
  );
@@ -11,6 +11,7 @@ export type Command =
11
11
  | { type: "switch"; sessionId?: string }
12
12
  | { type: "agent"; agent?: string }
13
13
  | { type: "archive"; sessionId?: string }
14
+ | { type: "dismiss" }
14
15
  | { type: "stop" }
15
16
  | { type: "status"; sessionId?: string }
16
17
  | { type: "goal"; action: "show" }
@@ -226,6 +226,13 @@ export interface ResetHistoryCardView {
226
226
  pageActions: TaskListCardAction[];
227
227
  }
228
228
 
229
+ export interface DismissGroupCardView {
230
+ contextKey: string;
231
+ sessionId: string;
232
+ taskTitle: string;
233
+ requestedBy: string;
234
+ }
235
+
229
236
  export class CardRenderer {
230
237
  private readonly thinkingCardLayout: ThinkingCardLayout;
231
238
 
@@ -853,19 +860,29 @@ export class CardRenderer {
853
860
  const elements = this.thinkingCardLayout === "timeline"
854
861
  ? renderTurnElements(state, "hidden")
855
862
  : renderGroupedTurnElements(state, "hidden");
863
+ const footerActions: TaskListCardAction[] = [];
856
864
  if (isTurnStoppable(state.status)) {
857
- elements.push({ tag: "hr" }, taskActionRow([{
865
+ footerActions.push({
858
866
  text: "Stop",
859
867
  type: "danger",
860
868
  value: { action: "turn_cancel", sessionId: state.sessionId, turnId: state.turnId },
861
- }]));
869
+ });
870
+ elements.push(
871
+ { tag: "hr" },
872
+ taskActionRow(footerActions),
873
+ );
862
874
  } else if (state.status === "completed") {
875
+ footerActions.push({
876
+ text: "Reset",
877
+ value: { action: "turn_reset", sessionId: state.sessionId, turnId: state.turnId },
878
+ });
863
879
  elements.push(
864
880
  { tag: "hr" },
865
- taskActionRow([{
866
- text: "Reset",
867
- value: { action: "turn_reset", sessionId: state.sessionId, turnId: state.turnId },
868
- }]),
881
+ taskActionRow(footerActions),
882
+ );
883
+ }
884
+ if (state.status === "completed") {
885
+ elements.push(
869
886
  {
870
887
  ...markdown("<font color='grey'>Reset 会将当前任务的对话上下文恢复到本轮完成时;不会回退本地文件。</font>"),
871
888
  text_size: "notation",
@@ -980,6 +997,57 @@ export class CardRenderer {
980
997
  return this.baseCard("Agent Bot 状态", "blue", [markdown(status)]);
981
998
  }
982
999
 
1000
+ renderDismissGroupConfirmation(view: DismissGroupCardView): Record<string, unknown> {
1001
+ const actionValue = {
1002
+ contextKey: view.contextKey,
1003
+ sessionId: view.sessionId,
1004
+ requestedBy: view.requestedBy,
1005
+ };
1006
+ const button = (
1007
+ content: string,
1008
+ type: "default" | "danger",
1009
+ action: "group_dismiss_confirm" | "group_dismiss_keep",
1010
+ ): Record<string, unknown> => ({
1011
+ tag: "button",
1012
+ width: "fill",
1013
+ text: { tag: "plain_text", content },
1014
+ type,
1015
+ behaviors: [{
1016
+ type: "callback",
1017
+ value: { action, ...actionValue },
1018
+ }],
1019
+ });
1020
+ return compactCard("解散当前群聊", "blue", [
1021
+ markdown([
1022
+ "确定要解散当前群聊吗?",
1023
+ `当前任务「${escapeCardHtml(view.taskTitle)}」将同时归档。此操作无法撤销。`,
1024
+ ].join("\n")),
1025
+ {
1026
+ tag: "column_set",
1027
+ flex_mode: "none",
1028
+ horizontal_spacing: "8px",
1029
+ columns: [
1030
+ {
1031
+ tag: "column",
1032
+ width: "weighted",
1033
+ weight: 1,
1034
+ elements: [button("Dismiss", "danger", "group_dismiss_confirm")],
1035
+ },
1036
+ {
1037
+ tag: "column",
1038
+ width: "weighted",
1039
+ weight: 1,
1040
+ elements: [button("Keep", "default", "group_dismiss_keep")],
1041
+ },
1042
+ ],
1043
+ },
1044
+ ]);
1045
+ }
1046
+
1047
+ renderDismissGroupKept(): Record<string, unknown> {
1048
+ return compactCard("已保留当前群聊", "grey", [markdown("已取消解散群聊。")]);
1049
+ }
1050
+
983
1051
  renderSectionsCard(
984
1052
  title: string,
985
1053
  sections: CardSection[],
@@ -1171,17 +1239,21 @@ export class CardRenderer {
1171
1239
  }
1172
1240
 
1173
1241
  function renderTurnSubtitle(state: TurnViewState): string {
1174
- const elapsed = state.durationMs ?? Math.max(0, Date.now() - state.startedAt);
1175
1242
  const activityTools = turnActivities(state).filter((activity) => activity.kind === "tool").length;
1176
1243
  const totalTools = state.totalToolCount ?? activityTools;
1177
1244
  return [
1178
- `耗时 ${formatTurnDuration(elapsed)}`,
1245
+ `耗时 ${renderTurnDuration(state)}`,
1179
1246
  state.totalTokens !== undefined ? `${formatTokenCount(state.totalTokens)} tokens` : undefined,
1180
1247
  totalTools > 0 ? `${totalTools} 个工具` : undefined,
1181
1248
  state.fileSummary.length > 0 ? `${state.fileSummary.length} 个文件` : undefined,
1182
1249
  ].filter(Boolean).join(" · ");
1183
1250
  }
1184
1251
 
1252
+ function renderTurnDuration(state: TurnViewState): string {
1253
+ const endedAt = state.completedAt ?? Date.now();
1254
+ return formatTurnDuration(state.durationMs ?? Math.max(0, endedAt - state.startedAt));
1255
+ }
1256
+
1185
1257
  function isTurnStoppable(status: TurnViewStatus): boolean {
1186
1258
  return status === "running" || status === "tool_running" || status === "waiting_for_approval";
1187
1259
  }
@@ -2492,10 +2564,12 @@ function turnCard(
2492
2564
  tag: "plain_text",
2493
2565
  content: title,
2494
2566
  },
2495
- subtitle: {
2496
- tag: "plain_text",
2497
- content: subtitle,
2498
- },
2567
+ ...(subtitle ? {
2568
+ subtitle: {
2569
+ tag: "plain_text",
2570
+ content: subtitle,
2571
+ },
2572
+ } : {}),
2499
2573
  padding: "12px 12px 12px 12px",
2500
2574
  },
2501
2575
  body: {
@@ -2536,6 +2610,34 @@ function sectionCard(
2536
2610
  };
2537
2611
  }
2538
2612
 
2613
+ function compactCard(
2614
+ title: string,
2615
+ template: string,
2616
+ elements: Record<string, unknown>[],
2617
+ ): Record<string, unknown> {
2618
+ return {
2619
+ schema: "2.0",
2620
+ config: {
2621
+ update_multi: true,
2622
+ width_mode: "compact",
2623
+ },
2624
+ header: {
2625
+ template,
2626
+ title: {
2627
+ tag: "plain_text",
2628
+ content: title,
2629
+ },
2630
+ padding: "12px 12px 12px 12px",
2631
+ },
2632
+ body: {
2633
+ direction: "vertical",
2634
+ vertical_spacing: "12px",
2635
+ padding: "12px 12px 12px 12px",
2636
+ elements,
2637
+ },
2638
+ };
2639
+ }
2640
+
2539
2641
  function formatUpdate(update: Record<string, JsonValue>): string {
2540
2642
  const updateType = update.sessionUpdate;
2541
2643
  if (updateType === "agent_message_chunk" && isObject(update.content)) {
@@ -39,6 +39,13 @@ interface CreateGroupResponse {
39
39
  error?: unknown;
40
40
  }
41
41
 
42
+ interface DeleteGroupResponse {
43
+ code: number;
44
+ msg: string;
45
+ data?: Record<string, never>;
46
+ error?: unknown;
47
+ }
48
+
42
49
  interface UploadImageResponse {
43
50
  code: number;
44
51
  msg: string;
@@ -128,6 +135,31 @@ export class FeishuMessageClient implements FeishuOutbound {
128
135
  }
129
136
  }
130
137
 
138
+ async deleteGroup(chatId: string): Promise<void> {
139
+ try {
140
+ const token = await this.getTenantAccessToken();
141
+ const response = await fetch(
142
+ `https://open.feishu.cn/open-apis/im/v1/chats/${encodeURIComponent(chatId)}`,
143
+ {
144
+ method: "DELETE",
145
+ headers: { Authorization: `Bearer ${token}` },
146
+ },
147
+ );
148
+ const payload = (await response.json()) as DeleteGroupResponse;
149
+ if (!response.ok || payload.code !== 0) {
150
+ throw new FeishuApiError(
151
+ payload.msg || response.statusText,
152
+ payload.code,
153
+ payload,
154
+ "delete group",
155
+ response.status,
156
+ );
157
+ }
158
+ } catch (error) {
159
+ throw normalizeTransportError(error, "delete group");
160
+ }
161
+ }
162
+
131
163
  async addReaction(messageId: string, emojiType: string): Promise<string | undefined> {
132
164
  try {
133
165
  const token = await this.getTenantAccessToken();
@@ -731,6 +763,7 @@ export class FeishuApiError extends Error {
731
763
  readonly payload:
732
764
  | SendMessageResponse
733
765
  | CreateGroupResponse
766
+ | DeleteGroupResponse
734
767
  | UploadImageResponse
735
768
  | UploadFileResponse
736
769
  | ReactionResponse