bobo-ai-cli 1.6.0 → 2.0.0

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.
@@ -0,0 +1,186 @@
1
+ /**
2
+ * Enhanced Git tools — PR workflow, branch management, stash.
3
+ * Solves: "Git 操作较基础"
4
+ */
5
+ import { execSync } from 'node:child_process';
6
+ export const gitAdvancedToolDefinitions = [
7
+ {
8
+ type: 'function',
9
+ function: {
10
+ name: 'git_branch',
11
+ description: 'Create, switch, list, or delete branches.',
12
+ parameters: {
13
+ type: 'object',
14
+ properties: {
15
+ action: { type: 'string', enum: ['list', 'create', 'switch', 'delete'], description: 'Branch operation' },
16
+ name: { type: 'string', description: 'Branch name (for create/switch/delete)' },
17
+ from: { type: 'string', description: 'Base branch for create (default: current)' },
18
+ },
19
+ required: ['action'],
20
+ },
21
+ },
22
+ },
23
+ {
24
+ type: 'function',
25
+ function: {
26
+ name: 'git_stash',
27
+ description: 'Stash/unstash working changes.',
28
+ parameters: {
29
+ type: 'object',
30
+ properties: {
31
+ action: { type: 'string', enum: ['push', 'pop', 'list', 'drop'], description: 'Stash operation' },
32
+ message: { type: 'string', description: 'Stash message (for push)' },
33
+ },
34
+ required: ['action'],
35
+ },
36
+ },
37
+ },
38
+ {
39
+ type: 'function',
40
+ function: {
41
+ name: 'git_pr',
42
+ description: 'Create a pull request using `gh` CLI. Requires GitHub CLI installed and authenticated.',
43
+ parameters: {
44
+ type: 'object',
45
+ properties: {
46
+ title: { type: 'string', description: 'PR title' },
47
+ body: { type: 'string', description: 'PR body/description' },
48
+ base: { type: 'string', description: 'Target branch (default: main)' },
49
+ draft: { type: 'boolean', description: 'Create as draft PR' },
50
+ },
51
+ required: ['title'],
52
+ },
53
+ },
54
+ },
55
+ {
56
+ type: 'function',
57
+ function: {
58
+ name: 'git_pr_list',
59
+ description: 'List open pull requests using `gh` CLI.',
60
+ parameters: {
61
+ type: 'object',
62
+ properties: {
63
+ state: { type: 'string', enum: ['open', 'closed', 'merged', 'all'], description: 'PR state filter' },
64
+ limit: { type: 'number', description: 'Max results (default: 10)' },
65
+ },
66
+ },
67
+ },
68
+ },
69
+ {
70
+ type: 'function',
71
+ function: {
72
+ name: 'git_merge',
73
+ description: 'Merge a branch into the current branch.',
74
+ parameters: {
75
+ type: 'object',
76
+ properties: {
77
+ branch: { type: 'string', description: 'Branch to merge' },
78
+ strategy: { type: 'string', enum: ['merge', 'squash', 'rebase'], description: 'Merge strategy' },
79
+ },
80
+ required: ['branch'],
81
+ },
82
+ },
83
+ },
84
+ {
85
+ type: 'function',
86
+ function: {
87
+ name: 'git_cherry_pick',
88
+ description: 'Cherry-pick a commit onto the current branch.',
89
+ parameters: {
90
+ type: 'object',
91
+ properties: {
92
+ commit: { type: 'string', description: 'Commit hash to cherry-pick' },
93
+ },
94
+ required: ['commit'],
95
+ },
96
+ },
97
+ },
98
+ ];
99
+ // ─── Implementations ─────────────────────────────────────────
100
+ function run(cmd, timeout = 15000) {
101
+ try {
102
+ return execSync(cmd, { encoding: 'utf-8', timeout, stdio: ['pipe', 'pipe', 'pipe'] }).trim();
103
+ }
104
+ catch (e) {
105
+ const err = e;
106
+ const output = ((err.stderr || '') + '\n' + (err.stdout || '')).trim();
107
+ return output || e.message;
108
+ }
109
+ }
110
+ function gitBranch(args) {
111
+ const action = args.action;
112
+ const name = args.name;
113
+ switch (action) {
114
+ case 'list':
115
+ return run('git branch -a --sort=-committerdate');
116
+ case 'create': {
117
+ const from = args.from || '';
118
+ const base = from ? ` ${from}` : '';
119
+ return run(`git checkout -b ${name}${base}`);
120
+ }
121
+ case 'switch':
122
+ return run(`git checkout ${name}`);
123
+ case 'delete':
124
+ return run(`git branch -d ${name}`);
125
+ default:
126
+ return `Unknown action: ${action}`;
127
+ }
128
+ }
129
+ function gitStash(args) {
130
+ const action = args.action;
131
+ switch (action) {
132
+ case 'push': {
133
+ const msg = args.message;
134
+ return msg ? run(`git stash push -m "${msg}"`) : run('git stash push');
135
+ }
136
+ case 'pop': return run('git stash pop');
137
+ case 'list': return run('git stash list') || '(no stashes)';
138
+ case 'drop': return run('git stash drop');
139
+ default: return `Unknown action: ${action}`;
140
+ }
141
+ }
142
+ function gitPr(args) {
143
+ const title = args.title;
144
+ const body = args.body || '';
145
+ const base = args.base || 'main';
146
+ const draft = args.draft || false;
147
+ let cmd = `gh pr create --title "${title.replace(/"/g, '\\"')}" --base ${base}`;
148
+ if (body)
149
+ cmd += ` --body "${body.replace(/"/g, '\\"')}"`;
150
+ if (draft)
151
+ cmd += ' --draft';
152
+ return run(cmd, 30000);
153
+ }
154
+ function gitPrList(args) {
155
+ const state = args.state || 'open';
156
+ const limit = args.limit || 10;
157
+ return run(`gh pr list --state ${state} --limit ${limit}`);
158
+ }
159
+ function gitMerge(args) {
160
+ const branch = args.branch;
161
+ const strategy = args.strategy || 'merge';
162
+ switch (strategy) {
163
+ case 'squash': return run(`git merge --squash ${branch}`);
164
+ case 'rebase': return run(`git rebase ${branch}`);
165
+ default: return run(`git merge ${branch}`);
166
+ }
167
+ }
168
+ function gitCherryPick(args) {
169
+ return run(`git cherry-pick ${args.commit}`);
170
+ }
171
+ // ─── Executor ────────────────────────────────────────────────
172
+ export function isGitAdvancedTool(name) {
173
+ return ['git_branch', 'git_stash', 'git_pr', 'git_pr_list', 'git_merge', 'git_cherry_pick'].includes(name);
174
+ }
175
+ export function executeGitAdvancedTool(name, args) {
176
+ switch (name) {
177
+ case 'git_branch': return gitBranch(args);
178
+ case 'git_stash': return gitStash(args);
179
+ case 'git_pr': return gitPr(args);
180
+ case 'git_pr_list': return gitPrList(args);
181
+ case 'git_merge': return gitMerge(args);
182
+ case 'git_cherry_pick': return gitCherryPick(args);
183
+ default: return `Unknown git tool: ${name}`;
184
+ }
185
+ }
186
+ //# sourceMappingURL=git-advanced.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-advanced.js","sourceRoot":"","sources":["../../src/tools/git-advanced.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAI9C,MAAM,CAAC,MAAM,0BAA0B,GAAyB;IAC9D;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,2CAA2C;YACxD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,kBAAkB,EAAE;oBACzG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;oBAC/E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE;iBACnF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,gCAAgC;YAC7C,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE;oBACjG,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACrE;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,wFAAwF;YACrG,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE;oBAClD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;oBAC5D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;oBACtE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,oBAAoB,EAAE;iBAC9D;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,yCAAyC;YACtD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE;oBACpG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;iBACpE;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,yCAAyC;YACtD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE;oBAC1D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE;iBACjG;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,+CAA+C;YAC5D,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4BAA4B,EAAE;iBACtE;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;KACF;CACF,CAAC;AAEF,gEAAgE;AAEhE,SAAS,GAAG,CAAC,GAAW,EAAE,OAAO,GAAG,KAAK;IACvC,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/F,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyC,CAAC;QACtD,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvE,OAAO,MAAM,IAAK,CAAW,CAAC,OAAO,CAAC;IACxC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;IAEjC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACpD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,IAAI,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,GAAG,CAAC,mBAAmB,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;QACrC,KAAK,QAAQ;YACX,OAAO,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;QACtC;YACE,OAAO,mBAAmB,MAAM,EAAE,CAAC;IACvC,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAA6B;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAC;IACrC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,GAAG,IAAI,CAAC,OAAiB,CAAC;YACnC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,sBAAsB,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACzE,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,eAAe,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,OAAO,GAAG,CAAC,gBAAgB,CAAC,IAAI,cAAc,CAAC;QAC5D,KAAK,MAAM,CAAC,CAAC,OAAO,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC1C,OAAO,CAAC,CAAC,OAAO,mBAAmB,MAAM,EAAE,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,KAAK,CAAC,IAA6B;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,IAAI,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,IAAI,MAAM,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAgB,IAAI,KAAK,CAAC;IAE7C,IAAI,GAAG,GAAG,yBAAyB,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;IAChF,IAAI,IAAI;QAAE,GAAG,IAAI,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;IAC1D,IAAI,KAAK;QAAE,GAAG,IAAI,UAAU,CAAC;IAE7B,OAAO,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,IAAI,MAAM,CAAC;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,IAAI,EAAE,CAAC;IACzC,OAAO,GAAG,CAAC,sBAAsB,KAAK,YAAY,KAAK,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,QAAQ,CAAC,IAA6B;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAkB,IAAI,OAAO,CAAC;IAEpD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ,CAAC,CAAC,OAAO,GAAG,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC;QAC1D,KAAK,QAAQ,CAAC,CAAC,OAAO,GAAG,CAAC,cAAc,MAAM,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC,OAAO,GAAG,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAA6B;IAClD,OAAO,GAAG,CAAC,mBAAmB,IAAI,CAAC,MAAgB,EAAE,CAAC,CAAC;AACzD,CAAC;AAED,gEAAgE;AAEhE,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,CAAC,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,IAA6B;IAChF,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY,CAAC,CAAC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1C,KAAK,WAAW,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,KAAK,QAAQ,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,KAAK,aAAa,CAAC,CAAC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3C,KAAK,WAAW,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,KAAK,iBAAiB,CAAC,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO,CAAC,CAAC,OAAO,qBAAqB,IAAI,EAAE,CAAC;IAC9C,CAAC;AACH,CAAC"}
@@ -7,6 +7,9 @@ import { plannerToolDefinitions, executePlannerTool, isPlannerTool } from '../pl
7
7
  import { webToolDefinitions, executeWebTool, isWebTool } from '../web.js';
8
8
  import { runHooks } from '../hooks.js';
9
9
  import { advancedToolDefinitions } from './advanced.js';
10
+ import { processToolDefinitions, isProcessTool, executeProcessTool } from './process-manager.js';
11
+ import { gitAdvancedToolDefinitions, isGitAdvancedTool, executeGitAdvancedTool } from './git-advanced.js';
12
+ import { browserToolDefinitions } from './browser.js';
10
13
  // ─── Core Tool Definitions ───────────────────────────────────
11
14
  const coreToolDefinitions = [
12
15
  {
@@ -220,6 +223,9 @@ const coreToolDefinitions = [
220
223
  export const toolDefinitions = [
221
224
  ...coreToolDefinitions,
222
225
  ...advancedToolDefinitions,
226
+ ...processToolDefinitions,
227
+ ...gitAdvancedToolDefinitions,
228
+ ...browserToolDefinitions,
223
229
  ...plannerToolDefinitions,
224
230
  ...webToolDefinitions,
225
231
  ];
@@ -231,7 +237,11 @@ export function executeTool(name, args) {
231
237
  return executePlannerTool(name, args);
232
238
  if (isWebTool(name))
233
239
  return executeWebTool(name, args);
234
- // Note: advanced tools are async, handled separately in agent.ts
240
+ if (isProcessTool(name))
241
+ return executeProcessTool(name, args);
242
+ if (isGitAdvancedTool(name))
243
+ return executeGitAdvancedTool(name, args);
244
+ // Note: advanced tools and browser tools are async, handled in agent.ts
235
245
  // Core tools
236
246
  switch (name) {
237
247
  case 'read_file': return readFile(args);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAuC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACjG,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAqC,MAAM,cAAc,CAAC;AAGzF,gEAAgE;AAEhE,MAAM,mBAAmB,GAAyB;IAChD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,oEAAoE;YACjF,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gDAAgD,EAAE;oBACvF,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+CAA+C,EAAE;oBACxF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;iBACtE;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,2FAA2F;YACxG,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;oBACzD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;iBAC7D;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAC9B;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,2DAA2D;YACxE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;oBACzD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;oBAC9D,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;iBAC7D;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;aACzC;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,wEAAwE;YACrF,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mCAAmC,EAAE;oBAC7E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE;oBAClF,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;iBAClF;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,6CAA6C;YAC1D,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;iBACvE;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,qDAAqD;YAClE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;oBACpE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE;oBACxE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE;iBAC7E;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;KACF;IACD,8DAA8D;IAC9D;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,uLAAuL;YACpM,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC;wBAChE,WAAW,EAAE,iBAAiB;qBAC/B;oBACD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE;iBAC7D;gBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;aAClC;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oFAAoF;YACjG,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;iBACvD;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;KACF;IACD,8DAA8D;IAC9D;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,2CAA2C;YACxD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;iBACvE;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,oDAAoD;YACjE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE;oBACnF,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE;oBACpE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;iBACvE;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,8BAA8B;YAC3C,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;oBACzE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,iCAAiC,EAAE;oBAC5E,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;iBACvE;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,2EAA2E;YACxF,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE;oBAC1D,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,8CAA8C,EAAE;oBACxF,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;iBACvE;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,oCAAoC;YACjD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;oBACxE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;oBAChF,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;iBACvE;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;KACF;CACF,CAAC;AAEF,gEAAgE;AAEhE,MAAM,CAAC,MAAM,eAAe,GAAyB;IACnD,GAAG,mBAAmB;IACtB,GAAG,uBAAuB;IAC1B,GAAG,sBAAsB;IACzB,GAAG,0BAA0B;IAC7B,GAAG,sBAAsB;IACzB,GAAG,sBAAsB;IACzB,GAAG,kBAAkB;CACtB,CAAC;AAEF,gEAAgE;AAEhE,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,IAA6B;IACrE,IAAI,CAAC;QACH,8BAA8B;QAC9B,IAAI,aAAa,CAAC,IAAI,CAAC;YAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/D,IAAI,SAAS,CAAC,IAAI,CAAC;YAAE,OAAO,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,aAAa,CAAC,IAAI,CAAC;YAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/D,IAAI,iBAAiB,CAAC,IAAI,CAAC;YAAE,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvE,wEAAwE;QAExE,aAAa;QACb,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,WAAW,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;YACxC,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,QAAQ,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,IAAc,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC/B,QAAQ,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,IAAc,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChE,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,QAAQ,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,IAAc,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC9B,QAAQ,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,IAAc,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChE,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,KAAK,cAAc,CAAC,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;YAC9C,KAAK,gBAAgB,CAAC,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;YAClD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,QAAQ,CAAC,WAAW,EAAE,EAAE,YAAY,EAAG,IAAI,CAAC,OAAkB,IAAI,EAAE,EAAE,CAAC,CAAC;gBACxE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC/B,QAAQ,CAAC,YAAY,EAAE,EAAE,YAAY,EAAG,IAAI,CAAC,OAAkB,IAAI,EAAE,EAAE,CAAC,CAAC;gBACzE,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;YAChD,KAAK,eAAe,CAAC,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACpD,KAAK,YAAY,CAAC,CAAC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;YAC1C,KAAK,UAAU,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,KAAK,SAAS,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;YACpC,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,QAAQ,CAAC,YAAY,EAAE,EAAE,eAAe,EAAG,IAAI,CAAC,OAAkB,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC5E,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC/B,QAAQ,CAAC,aAAa,EAAE,EAAE,eAAe,EAAG,IAAI,CAAC,OAAkB,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC7E,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,CAAC,CAAC,OAAO,wBAAwB,IAAI,GAAG,CAAC;QAClD,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,UAAU,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,CAAC;AACH,CAAC;AAED,gEAAgE;AAEhE,SAAS,WAAW,CAAC,CAAS;IAC5B,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,QAAQ,CAAC,IAA6B;IAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,mBAAmB,QAAQ,EAAE,CAAC;IAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChC,IAAI,IAAI,CAAC,WAAW,EAAE;QAAE,OAAO,wBAAwB,QAAQ,EAAE,CAAC;IAElE,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,CAAE,IAAI,CAAC,MAAiB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,KAAK,GAAI,IAAI,CAAC,KAAgB,IAAI,KAAK,CAAC,MAAM,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAiB,CAAC,CAAC;IAChD,OAAO,WAAY,IAAI,CAAC,OAAkB,CAAC,MAAM,aAAa,QAAQ,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,QAAQ,CAAC,IAA6B;IAC7C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,mBAAmB,QAAQ,EAAE,CAAC;IAChE,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,OAAO,iFAAiF,CAAC;IAC3F,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClD,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,UAAU,QAAQ,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,IAA6B;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,WAAW,GAAG,IAAI,CAAC,IAA0B,CAAC;IACpD,MAAM,UAAU,GAAI,IAAI,CAAC,UAAqB,IAAI,EAAE,CAAC;IAErD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,2BAA2B,OAAO,EAAE,CAAC;IAEpE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU;YAAE,MAAM;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACrD,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU;wBAAE,MAAM;gBAC1C,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,mBAAmB,WAAW,QAAQ,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC9G,CAAC;AAED,SAAS,aAAa,CAAC,IAA6B;IAClD,MAAM,OAAO,GAAG,WAAW,CAAE,IAAI,CAAC,IAAe,IAAI,GAAG,CAAC,CAAC;IAC1D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,wBAAwB,OAAO,EAAE,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,OAAO,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACrF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,4BAA4B,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,OAAO,GAAG,CAAE,IAAI,CAAC,OAAkB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE;YAC/B,GAAG;YACH,QAAQ,EAAE,OAAO;YACjB,OAAO;YACP,SAAS,EAAE,IAAI,GAAG,IAAI;YACtB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,aAAa,CAAC;IACxC,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAA0D,CAAC;QACvE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;QAC7B,OAAO,cAAc,IAAI,KAAK,MAAM,KAAK,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC;AAMD,SAAS,cAAc,CAAC,IAA6B;IACnD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3F,OAAO,UAAU,CAAC;QAChB,QAAQ,EAAE,IAAI,CAAC,QAAmC;QAClD,OAAO,EAAE,IAAI,CAAC,OAAiB;QAC/B,SAAS;KACV,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA6B;IACrD,OAAO,YAAY,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;AAC5C,CAAC;AAED,gEAAgE;AAEhE,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,oBAAoB,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACzF,MAAM,MAAM,GAAG,QAAQ,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvG,OAAO,WAAW,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC;IAC5D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,gCAAiC,CAAW,CAAC,OAAO,EAAE,CAAC;IAChE,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,IAA6B;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAyB,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,MAA6B,CAAC;IAElD,IAAI,GAAG,GAAG,UAAU,CAAC;IACrB,IAAI,MAAM;QAAE,GAAG,IAAI,WAAW,CAAC;IAC/B,IAAI,GAAG;QAAE,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;IAC1B,GAAG,IAAI,SAAS,CAAC;IAEjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,cAAc,CAAC;IACvC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,mBAAoB,CAAW,CAAC,OAAO,EAAE,CAAC;IACnD,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,IAA6B;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,KAAK,GAAI,IAAI,CAAC,KAAgB,IAAI,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC;IAEvC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,4BAA4B,CAAC;IAEpE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,MAAM,KAAK,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/F,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,cAAc,CAAC;IACtC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,kBAAmB,CAAW,CAAC,OAAO,EAAE,CAAC;IAClD,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAA6B;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC;IAErC,IAAI,CAAC;QACH,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,kBAAkB,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE;YACzE,GAAG;YACH,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyC,CAAC;QACtD,OAAO,qBAAqB,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAK,CAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;IACxF,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,IAA6B;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,MAAM,GAAI,IAAI,CAAC,MAAiB,IAAI,QAAQ,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAA4B,CAAC;IAEjD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC;QAC3E,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1G,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,iBAAiB,CAAC;IAC5C,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyC,CAAC;QACtD,wCAAwC;QACxC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QAChD,OAAO,mBAAmB,MAAM,IAAK,CAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;IACpE,CAAC;AACH,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Background process manager — persistent processes that survive tool calls.
3
+ * Solves: "没有真正的终端访问" + "工具调用是请求式的"
4
+ *
5
+ * Manages long-running processes (dev servers, watchers, builds)
6
+ * with output capture, health checks, and graceful shutdown.
7
+ */
8
+ import type { ChatCompletionTool } from 'openai/resources/index.js';
9
+ export declare const processToolDefinitions: ChatCompletionTool[];
10
+ export declare function isProcessTool(name: string): boolean;
11
+ export declare function executeProcessTool(name: string, args: Record<string, unknown>): string;
12
+ /**
13
+ * Kill all background processes. Called on exit.
14
+ */
15
+ export declare function killAllProcesses(): void;
@@ -0,0 +1,212 @@
1
+ /**
2
+ * Background process manager — persistent processes that survive tool calls.
3
+ * Solves: "没有真正的终端访问" + "工具调用是请求式的"
4
+ *
5
+ * Manages long-running processes (dev servers, watchers, builds)
6
+ * with output capture, health checks, and graceful shutdown.
7
+ */
8
+ import { spawn } from 'node:child_process';
9
+ const MAX_OUTPUT_LINES = 200;
10
+ const processes = new Map();
11
+ let nextId = 1;
12
+ // ─── Tool Definitions ────────────────────────────────────────
13
+ export const processToolDefinitions = [
14
+ {
15
+ type: 'function',
16
+ function: {
17
+ name: 'bg_start',
18
+ description: 'Start a background process (dev server, watcher, build). Process persists across tool calls. Returns process ID.',
19
+ parameters: {
20
+ type: 'object',
21
+ properties: {
22
+ command: { type: 'string', description: 'Shell command to run' },
23
+ cwd: { type: 'string', description: 'Working directory (default: CWD)' },
24
+ label: { type: 'string', description: 'Human-readable label (e.g. "dev-server")' },
25
+ },
26
+ required: ['command'],
27
+ },
28
+ },
29
+ },
30
+ {
31
+ type: 'function',
32
+ function: {
33
+ name: 'bg_output',
34
+ description: 'Get recent output from a background process. Use to check if a dev server has started, see build errors, etc.',
35
+ parameters: {
36
+ type: 'object',
37
+ properties: {
38
+ id: { type: 'string', description: 'Process ID' },
39
+ lines: { type: 'number', description: 'Number of recent lines (default: 30)' },
40
+ },
41
+ required: ['id'],
42
+ },
43
+ },
44
+ },
45
+ {
46
+ type: 'function',
47
+ function: {
48
+ name: 'bg_list',
49
+ description: 'List all running background processes with status.',
50
+ parameters: { type: 'object', properties: {} },
51
+ },
52
+ },
53
+ {
54
+ type: 'function',
55
+ function: {
56
+ name: 'bg_stop',
57
+ description: 'Stop a background process.',
58
+ parameters: {
59
+ type: 'object',
60
+ properties: {
61
+ id: { type: 'string', description: 'Process ID' },
62
+ },
63
+ required: ['id'],
64
+ },
65
+ },
66
+ },
67
+ {
68
+ type: 'function',
69
+ function: {
70
+ name: 'bg_input',
71
+ description: 'Send input/stdin to a running background process.',
72
+ parameters: {
73
+ type: 'object',
74
+ properties: {
75
+ id: { type: 'string', description: 'Process ID' },
76
+ text: { type: 'string', description: 'Text to send to stdin' },
77
+ },
78
+ required: ['id', 'text'],
79
+ },
80
+ },
81
+ },
82
+ ];
83
+ // ─── Implementations ─────────────────────────────────────────
84
+ function bgStart(args) {
85
+ const command = args.command;
86
+ const cwd = args.cwd || process.cwd();
87
+ const label = args.label || `proc-${nextId}`;
88
+ const id = `bg-${nextId++}`;
89
+ const child = spawn(command, [], {
90
+ cwd,
91
+ shell: true,
92
+ stdio: ['pipe', 'pipe', 'pipe'],
93
+ detached: false,
94
+ });
95
+ const managed = {
96
+ id,
97
+ command: label !== `proc-${nextId - 1}` ? `${label} (${command})` : command,
98
+ process: child,
99
+ startedAt: Date.now(),
100
+ output: [],
101
+ exitCode: null,
102
+ cwd,
103
+ };
104
+ const appendOutput = (data) => {
105
+ const lines = data.toString().split('\n');
106
+ for (const line of lines) {
107
+ if (line.trim()) {
108
+ managed.output.push(line);
109
+ if (managed.output.length > MAX_OUTPUT_LINES) {
110
+ managed.output.shift();
111
+ }
112
+ }
113
+ }
114
+ };
115
+ child.stdout?.on('data', appendOutput);
116
+ child.stderr?.on('data', appendOutput);
117
+ child.on('close', (code) => {
118
+ managed.exitCode = code;
119
+ });
120
+ child.on('error', (err) => {
121
+ managed.output.push(`[ERROR] ${err.message}`);
122
+ managed.exitCode = -1;
123
+ });
124
+ processes.set(id, managed);
125
+ return `Started background process: ${id}\nCommand: ${command}\nCWD: ${cwd}\n\nUse bg_output("${id}") to check output.`;
126
+ }
127
+ function bgOutput(args) {
128
+ const id = args.id;
129
+ const lines = args.lines || 30;
130
+ const proc = processes.get(id);
131
+ if (!proc)
132
+ return `Process "${id}" not found. Use bg_list to see active processes.`;
133
+ const isRunning = proc.exitCode === null;
134
+ const elapsed = Math.round((Date.now() - proc.startedAt) / 1000);
135
+ const recentLines = proc.output.slice(-lines);
136
+ const header = `Process: ${id} (${isRunning ? 'RUNNING' : `EXITED ${proc.exitCode}`}) [${elapsed}s]\n`;
137
+ if (recentLines.length === 0) {
138
+ return header + '(no output yet)';
139
+ }
140
+ return header + recentLines.join('\n');
141
+ }
142
+ function bgList() {
143
+ if (processes.size === 0)
144
+ return 'No background processes running.';
145
+ const lines = ['Background Processes:'];
146
+ for (const [id, proc] of processes) {
147
+ const isRunning = proc.exitCode === null;
148
+ const elapsed = Math.round((Date.now() - proc.startedAt) / 1000);
149
+ const status = isRunning ? '● RUNNING' : `✗ EXITED(${proc.exitCode})`;
150
+ lines.push(` ${id}: ${status} [${elapsed}s] ${proc.command.slice(0, 60)}`);
151
+ }
152
+ return lines.join('\n');
153
+ }
154
+ function bgStop(args) {
155
+ const id = args.id;
156
+ const proc = processes.get(id);
157
+ if (!proc)
158
+ return `Process "${id}" not found.`;
159
+ if (proc.exitCode === null) {
160
+ proc.process.kill('SIGTERM');
161
+ // Force kill after 3s
162
+ setTimeout(() => {
163
+ try {
164
+ proc.process.kill('SIGKILL');
165
+ }
166
+ catch { /* already dead */ }
167
+ }, 3000);
168
+ }
169
+ const lastOutput = proc.output.slice(-5).join('\n');
170
+ processes.delete(id);
171
+ return `Stopped ${id}.\nLast output:\n${lastOutput}`;
172
+ }
173
+ function bgInput(args) {
174
+ const id = args.id;
175
+ const text = args.text;
176
+ const proc = processes.get(id);
177
+ if (!proc)
178
+ return `Process "${id}" not found.`;
179
+ if (proc.exitCode !== null)
180
+ return `Process "${id}" has already exited.`;
181
+ proc.process.stdin?.write(text + '\n');
182
+ return `Sent to ${id}: ${text}`;
183
+ }
184
+ // ─── Executor ────────────────────────────────────────────────
185
+ export function isProcessTool(name) {
186
+ return ['bg_start', 'bg_output', 'bg_list', 'bg_stop', 'bg_input'].includes(name);
187
+ }
188
+ export function executeProcessTool(name, args) {
189
+ switch (name) {
190
+ case 'bg_start': return bgStart(args);
191
+ case 'bg_output': return bgOutput(args);
192
+ case 'bg_list': return bgList();
193
+ case 'bg_stop': return bgStop(args);
194
+ case 'bg_input': return bgInput(args);
195
+ default: return `Unknown process tool: ${name}`;
196
+ }
197
+ }
198
+ /**
199
+ * Kill all background processes. Called on exit.
200
+ */
201
+ export function killAllProcesses() {
202
+ for (const [, proc] of processes) {
203
+ if (proc.exitCode === null) {
204
+ try {
205
+ proc.process.kill('SIGTERM');
206
+ }
207
+ catch { /* ignore */ }
208
+ }
209
+ }
210
+ processes.clear();
211
+ }
212
+ //# sourceMappingURL=process-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-manager.js","sourceRoot":"","sources":["../../src/tools/process-manager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bobo-ai-cli",
3
- "version": "1.6.0",
3
+ "version": "2.0.0",
4
4
  "description": "Portable AI engineering assistant CLI with embedded knowledge, skills, and memory",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",