opencrabs 0.5.14

The autonomous, self-improving AI agent. Single Rust binary. Every channel. Recommended: the 40MB prebuilt binary for macOS, Linux and Windows: https://github.com/opencrabs/opencrabs/releases
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
# Chinese phantom-detection configuration
#
# Covers BOTH script variants: every phrase is listed in Simplified and in
# Traditional, built from one stem pair each so the two spellings cannot drift.
# A reply is written in whichever the user's locale uses, and a pack that
# carried only one would miss the other entirely.
#
# Chinese does not separate words with spaces, which is why `action_verbs` and
# `generic_intent_re` are empty below: the past-tense claim check compares
# whitespace-delimited words one at a time, so no single verb could ever match
# inside a Chinese sentence. The perfective claims live in `completion_claims`,
# which is a substring scan and reads them fine.

# First-person work announcements: prefix families (wo, wo hui, wo yao,
# rang wo, xianzai, zhengzai) crossed with verb stems, plus the set
# phrases a speaker uses instead of a family.
intent_phrases = [
    "我检查", "我檢查", "我查看", "我修复",
    "我修復", "我更新", "我修改", "我创建",
    "我創建", "我写入", "我寫入", "我读取",
    "我讀取", "我运行", "我運行", "我测试",
    "我測試", "我构建", "我構建", "我提交",
    "我推送", "我合并", "我合併", "我部署",
    "我清理", "我安装", "我安裝", "我编译",
    "我編譯", "我验证", "我驗證", "我搜索",
    "我扫描", "我掃描", "我分析", "我加载",
    "我加載", "我下载", "我下載", "我上传",
    "我上傳", "我删除", "我刪除", "我添加",
    "我配置", "我重构", "我重構", "我生成",
    "我打开", "我打開", "我关闭", "我關閉",
    "我复制", "我複製", "我移动", "我移動",
    "我重命名", "我回滚", "我回滾", "我排查",
    "我定位", "我记录", "我記錄", "我整理",
    "我保存", "我执行", "我執行", "我统计",
    "我統計", "我对比", "我對比", "我会检查",
    "我會檢查", "我会查看", "我會查看", "我会修复",
    "我會修復", "我会更新", "我會更新", "我会修改",
    "我會修改", "我会创建", "我會創建", "我会写入",
    "我會寫入", "我会读取", "我會讀取", "我会运行",
    "我會運行", "我会测试", "我會測試", "我会构建",
    "我會構建", "我会提交", "我會提交", "我会推送",
    "我會推送", "我会合并", "我會合併", "我会部署",
    "我會部署", "我会清理", "我會清理", "我会安装",
    "我會安裝", "我会编译", "我會編譯", "我会验证",
    "我會驗證", "我会搜索", "我會搜索", "我会扫描",
    "我會掃描", "我会分析", "我會分析", "我会加载",
    "我會加載", "我会下载", "我會下載", "我会上传",
    "我會上傳", "我会删除", "我會刪除", "我会添加",
    "我會添加", "我会配置", "我會配置", "我会重构",
    "我會重構", "我会生成", "我會生成", "我会打开",
    "我會打開", "我会关闭", "我會關閉", "我会复制",
    "我會複製", "我会移动", "我會移動", "我会重命名",
    "我會重命名", "我会回滚", "我會回滾", "我会排查",
    "我會排查", "我会定位", "我會定位", "我会记录",
    "我會記錄", "我会整理", "我會整理", "我会保存",
    "我會保存", "我会执行", "我會執行", "我会统计",
    "我會統計", "我会对比", "我會對比", "我将检查",
    "我將檢查", "我将查看", "我將查看", "我将修复",
    "我將修復", "我将更新", "我將更新", "我将修改",
    "我將修改", "我将创建", "我將創建", "我将写入",
    "我將寫入", "我将读取", "我將讀取", "我将运行",
    "我將運行", "我将测试", "我將測試", "我将构建",
    "我將構建", "我将提交", "我將提交", "我将推送",
    "我將推送", "我将合并", "我將合併", "我将部署",
    "我將部署", "我将清理", "我將清理", "我将安装",
    "我將安裝", "我将编译", "我將編譯", "我将验证",
    "我將驗證", "我将搜索", "我將搜索", "我将扫描",
    "我將掃描", "我将分析", "我將分析", "我将加载",
    "我將加載", "我将下载", "我將下載", "我将上传",
    "我將上傳", "我将删除", "我將刪除", "我将添加",
    "我將添加", "我将配置", "我將配置", "我将重构",
    "我將重構", "我将生成", "我將生成", "我将打开",
    "我將打開", "我将关闭", "我將關閉", "我将复制",
    "我將複製", "我将移动", "我將移動", "我将重命名",
    "我將重命名", "我将回滚", "我將回滾", "我将排查",
    "我將排查", "我将定位", "我將定位", "我将记录",
    "我將記錄", "我将整理", "我將整理", "我将保存",
    "我將保存", "我将执行", "我將執行", "我将统计",
    "我將統計", "我将对比", "我將對比", "我要检查",
    "我要檢查", "我要查看", "我要修复", "我要修復",
    "我要更新", "我要修改", "我要创建", "我要創建",
    "我要写入", "我要寫入", "我要读取", "我要讀取",
    "我要运行", "我要運行", "我要测试", "我要測試",
    "我要构建", "我要構建", "我要提交", "我要推送",
    "我要合并", "我要合併", "我要部署", "我要清理",
    "我要安装", "我要安裝", "我要编译", "我要編譯",
    "我要验证", "我要驗證", "我要搜索", "我要扫描",
    "我要掃描", "我要分析", "我要加载", "我要加載",
    "我要下载", "我要下載", "我要上传", "我要上傳",
    "我要删除", "我要刪除", "我要添加", "我要配置",
    "我要重构", "我要重構", "我要生成", "我要打开",
    "我要打開", "我要关闭", "我要關閉", "我要复制",
    "我要複製", "我要移动", "我要移動", "我要重命名",
    "我要回滚", "我要回滾", "我要排查", "我要定位",
    "我要记录", "我要記錄", "我要整理", "我要保存",
    "我要执行", "我要執行", "我要统计", "我要統計",
    "我要对比", "我要對比", "我来检查", "我來檢查",
    "我来查看", "我來查看", "我来修复", "我來修復",
    "我来更新", "我來更新", "我来修改", "我來修改",
    "我来创建", "我來創建", "我来写入", "我來寫入",
    "我来读取", "我來讀取", "我来运行", "我來運行",
    "我来测试", "我來測試", "我来构建", "我來構建",
    "我来提交", "我來提交", "我来推送", "我來推送",
    "我来合并", "我來合併", "我来部署", "我來部署",
    "我来清理", "我來清理", "我来安装", "我來安裝",
    "我来编译", "我來編譯", "我来验证", "我來驗證",
    "我来搜索", "我來搜索", "我来扫描", "我來掃描",
    "我来分析", "我來分析", "我来加载", "我來加載",
    "我来下载", "我來下載", "我来上传", "我來上傳",
    "我来删除", "我來刪除", "我来添加", "我來添加",
    "我来配置", "我來配置", "我来重构", "我來重構",
    "我来生成", "我來生成", "我来打开", "我來打開",
    "我来关闭", "我來關閉", "我来复制", "我來複製",
    "我来移动", "我來移動", "我来重命名", "我來重命名",
    "我来回滚", "我來回滾", "我来排查", "我來排查",
    "我来定位", "我來定位", "我来记录", "我來記錄",
    "我来整理", "我來整理", "我来保存", "我來保存",
    "我来执行", "我來執行", "我来统计", "我來統計",
    "我来对比", "我來對比", "我需要检查", "我需要檢查",
    "我需要查看", "我需要修复", "我需要修復", "我需要更新",
    "我需要修改", "我需要创建", "我需要創建", "我需要写入",
    "我需要寫入", "我需要读取", "我需要讀取", "我需要运行",
    "我需要運行", "我需要测试", "我需要測試", "我需要构建",
    "我需要構建", "我需要提交", "我需要推送", "我需要合并",
    "我需要合併", "我需要部署", "我需要清理", "我需要安装",
    "我需要安裝", "我需要编译", "我需要編譯", "我需要验证",
    "我需要驗證", "我需要搜索", "我需要扫描", "我需要掃描",
    "我需要分析", "我需要加载", "我需要加載", "我需要下载",
    "我需要下載", "我需要上传", "我需要上傳", "我需要删除",
    "我需要刪除", "我需要添加", "我需要配置", "我需要重构",
    "我需要重構", "我需要生成", "我需要打开", "我需要打開",
    "我需要关闭", "我需要關閉", "我需要复制", "我需要複製",
    "我需要移动", "我需要移動", "我需要重命名", "我需要回滚",
    "我需要回滾", "我需要排查", "我需要定位", "我需要记录",
    "我需要記錄", "我需要整理", "我需要保存", "我需要执行",
    "我需要執行", "我需要统计", "我需要統計", "我需要对比",
    "我需要對比", "我应该检查", "我應該檢查", "我应该查看",
    "我應該查看", "我应该修复", "我應該修復", "我应该更新",
    "我應該更新", "我应该修改", "我應該修改", "我应该创建",
    "我應該創建", "我应该写入", "我應該寫入", "我应该读取",
    "我應該讀取", "我应该运行", "我應該運行", "我应该测试",
    "我應該測試", "我应该构建", "我應該構建", "我应该提交",
    "我應該提交", "我应该推送", "我應該推送", "我应该合并",
    "我應該合併", "我应该部署", "我應該部署", "我应该清理",
    "我應該清理", "我应该安装", "我應該安裝", "我应该编译",
    "我應該編譯", "我应该验证", "我應該驗證", "我应该搜索",
    "我應該搜索", "我应该扫描", "我應該掃描", "我应该分析",
    "我應該分析", "我应该加载", "我應該加載", "我应该下载",
    "我應該下載", "我应该上传", "我應該上傳", "我应该删除",
    "我應該刪除", "我应该添加", "我應該添加", "我应该配置",
    "我應該配置", "我应该重构", "我應該重構", "我应该生成",
    "我應該生成", "我应该打开", "我應該打開", "我应该关闭",
    "我應該關閉", "我应该复制", "我應該複製", "我应该移动",
    "我應該移動", "我应该重命名", "我應該重命名", "我应该回滚",
    "我應該回滾", "我应该排查", "我應該排查", "我应该定位",
    "我應該定位", "我应该记录", "我應該記錄", "我应该整理",
    "我應該整理", "我应该保存", "我應該保存", "我应该执行",
    "我應該執行", "我应该统计", "我應該統計", "我应该对比",
    "我應該對比", "让我检查", "讓我檢查", "让我查看",
    "讓我查看", "让我修复", "讓我修復", "让我更新",
    "讓我更新", "让我修改", "讓我修改", "让我创建",
    "讓我創建", "让我写入", "讓我寫入", "让我读取",
    "讓我讀取", "让我运行", "讓我運行", "让我测试",
    "讓我測試", "让我构建", "讓我構建", "让我提交",
    "讓我提交", "让我推送", "讓我推送", "让我合并",
    "讓我合併", "让我部署", "讓我部署", "让我清理",
    "讓我清理", "让我安装", "讓我安裝", "让我编译",
    "讓我編譯", "让我验证", "讓我驗證", "让我搜索",
    "讓我搜索", "让我扫描", "讓我掃描", "让我分析",
    "讓我分析", "让我加载", "讓我加載", "让我下载",
    "讓我下載", "让我上传", "讓我上傳", "让我删除",
    "讓我刪除", "让我添加", "讓我添加", "让我配置",
    "讓我配置", "让我重构", "讓我重構", "让我生成",
    "讓我生成", "让我打开", "讓我打開", "让我关闭",
    "讓我關閉", "让我复制", "讓我複製", "让我移动",
    "讓我移動", "让我重命名", "讓我重命名", "让我回滚",
    "讓我回滾", "让我排查", "讓我排查", "让我定位",
    "讓我定位", "让我记录", "讓我記錄", "让我整理",
    "讓我整理", "让我保存", "讓我保存", "让我执行",
    "讓我執行", "让我统计", "讓我統計", "让我对比",
    "讓我對比", "我们现在检查", "我們現在檢查", "我们现在查看",
    "我們現在查看", "我们现在修复", "我們現在修復", "我们现在更新",
    "我們現在更新", "我们现在修改", "我們現在修改", "我们现在创建",
    "我們現在創建", "我们现在写入", "我們現在寫入", "我们现在读取",
    "我們現在讀取", "我们现在运行", "我們現在運行", "我们现在测试",
    "我們現在測試", "我们现在构建", "我們現在構建", "我们现在提交",
    "我們現在提交", "我们现在推送", "我們現在推送", "我们现在合并",
    "我們現在合併", "我们现在部署", "我們現在部署", "我们现在清理",
    "我們現在清理", "我们现在安装", "我們現在安裝", "我们现在编译",
    "我們現在編譯", "我们现在验证", "我們現在驗證", "我们现在搜索",
    "我們現在搜索", "我们现在扫描", "我們現在掃描", "我们现在分析",
    "我們現在分析", "我们现在加载", "我們現在加載", "我们现在下载",
    "我們現在下載", "我们现在上传", "我們現在上傳", "我们现在删除",
    "我們現在刪除", "我们现在添加", "我們現在添加", "我们现在配置",
    "我們現在配置", "我们现在重构", "我們現在重構", "我们现在生成",
    "我們現在生成", "我们现在打开", "我們現在打開", "我们现在关闭",
    "我們現在關閉", "我们现在复制", "我們現在複製", "我们现在移动",
    "我們現在移動", "我们现在重命名", "我們現在重命名", "我们现在回滚",
    "我們現在回滾", "我们现在排查", "我們現在排查", "我们现在定位",
    "我們現在定位", "我们现在记录", "我們現在記錄", "我们现在整理",
    "我們現在整理", "我们现在保存", "我們現在保存", "我们现在执行",
    "我們現在執行", "我们现在统计", "我們現在統計", "我们现在对比",
    "我們現在對比", "我们会检查", "我們會檢查", "我们会查看",
    "我們會查看", "我们会修复", "我們會修復", "我们会更新",
    "我們會更新", "我们会修改", "我們會修改", "我们会创建",
    "我們會創建", "我们会写入", "我們會寫入", "我们会读取",
    "我們會讀取", "我们会运行", "我們會運行", "我们会测试",
    "我們會測試", "我们会构建", "我們會構建", "我们会提交",
    "我們會提交", "我们会推送", "我們會推送", "我们会合并",
    "我們會合併", "我们会部署", "我們會部署", "我们会清理",
    "我們會清理", "我们会安装", "我們會安裝", "我们会编译",
    "我們會編譯", "我们会验证", "我們會驗證", "我们会搜索",
    "我們會搜索", "我们会扫描", "我們會掃描", "我们会分析",
    "我們會分析", "我们会加载", "我們會加載", "我们会下载",
    "我們會下載", "我们会上传", "我們會上傳", "我们会删除",
    "我們會刪除", "我们会添加", "我們會添加", "我们会配置",
    "我們會配置", "我们会重构", "我們會重構", "我们会生成",
    "我們會生成", "我们会打开", "我們會打開", "我们会关闭",
    "我們會關閉", "我们会复制", "我們會複製", "我们会移动",
    "我們會移動", "我们会重命名", "我們會重命名", "我们会回滚",
    "我們會回滾", "我们会排查", "我們會排查", "我们会定位",
    "我們會定位", "我们会记录", "我們會記錄", "我们会整理",
    "我們會整理", "我们会保存", "我們會保存", "我们会执行",
    "我們會執行", "我们会统计", "我們會統計", "我们会对比",
    "我們會對比", "接下来我检查", "接下來我檢查", "接下来我查看",
    "接下來我查看", "接下来我修复", "接下來我修復", "接下来我更新",
    "接下來我更新", "接下来我修改", "接下來我修改", "接下来我创建",
    "接下來我創建", "接下来我写入", "接下來我寫入", "接下来我读取",
    "接下來我讀取", "接下来我运行", "接下來我運行", "接下来我测试",
    "接下來我測試", "接下来我构建", "接下來我構建", "接下来我提交",
    "接下來我提交", "接下来我推送", "接下來我推送", "接下来我合并",
    "接下來我合併", "接下来我部署", "接下來我部署", "接下来我清理",
    "接下來我清理", "接下来我安装", "接下來我安裝", "接下来我编译",
    "接下來我編譯", "接下来我验证", "接下來我驗證", "接下来我搜索",
    "接下來我搜索", "接下来我扫描", "接下來我掃描", "接下来我分析",
    "接下來我分析", "接下来我加载", "接下來我加載", "接下来我下载",
    "接下來我下載", "接下来我上传", "接下來我上傳", "接下来我删除",
    "接下來我刪除", "接下来我添加", "接下來我添加", "接下来我配置",
    "接下來我配置", "接下来我重构", "接下來我重構", "接下来我生成",
    "接下來我生成", "接下来我打开", "接下來我打開", "接下来我关闭",
    "接下來我關閉", "接下来我复制", "接下來我複製", "接下来我移动",
    "接下來我移動", "接下来我重命名", "接下來我重命名", "接下来我回滚",
    "接下來我回滾", "接下来我排查", "接下來我排查", "接下来我定位",
    "接下來我定位", "接下来我记录", "接下來我記錄", "接下来我整理",
    "接下來我整理", "接下来我保存", "接下來我保存", "接下来我执行",
    "接下來我執行", "接下来我统计", "接下來我統計", "接下来我对比",
    "接下來我對比", "现在检查", "現在檢查", "现在查看",
    "現在查看", "现在修复", "現在修復", "现在更新",
    "現在更新", "现在修改", "現在修改", "现在创建",
    "現在創建", "现在写入", "現在寫入", "现在读取",
    "現在讀取", "现在运行", "現在運行", "现在测试",
    "現在測試", "现在构建", "現在構建", "现在提交",
    "現在提交", "现在推送", "現在推送", "现在合并",
    "現在合併", "现在部署", "現在部署", "现在清理",
    "現在清理", "现在安装", "現在安裝", "现在编译",
    "現在編譯", "现在验证", "現在驗證", "现在搜索",
    "現在搜索", "现在扫描", "現在掃描", "现在分析",
    "現在分析", "现在加载", "現在加載", "现在下载",
    "現在下載", "现在上传", "現在上傳", "现在删除",
    "現在刪除", "现在添加", "現在添加", "现在配置",
    "現在配置", "现在重构", "現在重構", "现在生成",
    "現在生成", "现在打开", "現在打開", "现在关闭",
    "現在關閉", "现在复制", "現在複製", "现在移动",
    "現在移動", "现在重命名", "現在重命名", "现在回滚",
    "現在回滾", "现在排查", "現在排查", "现在定位",
    "現在定位", "现在记录", "現在記錄", "现在整理",
    "現在整理", "现在保存", "現在保存", "现在执行",
    "現在執行", "现在统计", "現在統計", "现在对比",
    "現在對比", "正在检查", "正在檢查", "正在查看",
    "正在修复", "正在修復", "正在更新", "正在修改",
    "正在创建", "正在創建", "正在写入", "正在寫入",
    "正在读取", "正在讀取", "正在运行", "正在運行",
    "正在测试", "正在測試", "正在构建", "正在構建",
    "正在提交", "正在推送", "正在合并", "正在合併",
    "正在部署", "正在清理", "正在安装", "正在安裝",
    "正在编译", "正在編譯", "正在验证", "正在驗證",
    "正在搜索", "正在扫描", "正在掃描", "正在分析",
    "正在加载", "正在加載", "正在下载", "正在下載",
    "正在上传", "正在上傳", "正在删除", "正在刪除",
    "正在添加", "正在配置", "正在重构", "正在重構",
    "正在生成", "正在打开", "正在打開", "正在关闭",
    "正在關閉", "正在复制", "正在複製", "正在移动",
    "正在移動", "正在重命名", "正在回滚", "正在回滾",
    "正在排查", "正在定位", "正在记录", "正在記錄",
    "正在整理", "正在保存", "正在执行", "正在執行",
    "正在统计", "正在統計", "正在对比", "正在對比",
    "首先检查", "首先檢查", "首先查看", "首先修复",
    "首先修復", "首先更新", "首先修改", "首先创建",
    "首先創建", "首先写入", "首先寫入", "首先读取",
    "首先讀取", "首先运行", "首先運行", "首先测试",
    "首先測試", "首先构建", "首先構建", "首先提交",
    "首先推送", "首先合并", "首先合併", "首先部署",
    "首先清理", "首先安装", "首先安裝", "首先编译",
    "首先編譯", "首先验证", "首先驗證", "首先搜索",
    "首先扫描", "首先掃描", "首先分析", "首先加载",
    "首先加載", "首先下载", "首先下載", "首先上传",
    "首先上傳", "首先删除", "首先刪除", "首先添加",
    "首先配置", "首先重构", "首先重構", "首先生成",
    "首先打开", "首先打開", "首先关闭", "首先關閉",
    "首先复制", "首先複製", "首先移动", "首先移動",
    "首先重命名", "首先回滚", "首先回滾", "首先排查",
    "首先定位", "首先记录", "首先記錄", "首先整理",
    "首先保存", "首先执行", "首先執行", "首先统计",
    "首先統計", "首先对比", "首先對比", "我会检查一下",
    "我會檢查一下", "我先看一下", "我先检查一下", "我先檢查一下",
    "我马上开始", "我馬上開始", "马上开始", "馬上開始",
    "我来处理", "我來處理", "让我看看", "讓我看看",
    "让我确认一下", "讓我確認一下", "我这就去", "我這就去",
    "这就去办", "這就去辦", "继续处理", "繼續處理",
    "开始修复", "開始修復", "开始检查", "開始檢查",
    "马上运行测试", "馬上運行測試", "运行测试", "運行測試",
    "跑一下测试", "跑一下測試", "看一下日志", "看一下日誌",
    "查一下日志", "查一下日誌", "翻一下代码", "翻一下代碼",
    "搜索一下", "查一下", "动手改", "動手改",
    "开始改代码", "開始改代碼", "改一下配置", "提交一下",
    "推送上去", "合并分支", "合併分支", "部署到服务器",
    "部署到服務器", "清理一下", "安装依赖", "安裝依賴",
    "构建项目", "構建項目", "生成报告", "生成報告",
    "写个测试", "寫個測試", "补一个测试", "補一個測試",
    "加一个测试", "加一個測試", "更新文档", "更新文檔",
    "同步一下", "重启服务", "重啟服務", "回滚改动",
    "回滾改動", "定位问题", "定位問題", "排查一下",
    "确认一下结果", "確認一下結果",
]

# Empty on purpose: the only consumer splits on whitespace and compares one
# word at a time, and Chinese text has no whitespace between words, so a
# single verb could never match. See completion_claims below.
action_verbs = []

# Finished-work claims: yi/yi-jing + verb, verb + wan-cheng, and the
# status statements a turn ends on when it claims it is done.
completion_claims = [
    "已检查", "已檢查", "已经检查了", "已經檢查了",
    "检查完成", "檢查完成", "检查好了", "檢查好了",
    "已修复", "已修復", "已经修复了", "已經修復了",
    "修复完成", "修復完成", "修复好了", "修復好了",
    "已更新", "已经更新了", "已經更新了", "更新完成",
    "更新好了", "已修改", "已经修改了", "已經修改了",
    "修改完成", "修改好了", "已创建", "已創建",
    "已经创建了", "已經創建了", "创建完成", "創建完成",
    "创建好了", "創建好了", "已写入", "已寫入",
    "已经写入了", "已經寫入了", "写入完成", "寫入完成",
    "写入好了", "寫入好了", "已读取", "已讀取",
    "已经读取了", "已經讀取了", "读取完成", "讀取完成",
    "读取好了", "讀取好了", "已运行", "已運行",
    "已经运行了", "已經運行了", "运行完成", "運行完成",
    "运行好了", "運行好了", "已测试", "已測試",
    "已经测试了", "已經測試了", "测试完成", "測試完成",
    "测试好了", "測試好了", "已构建", "已構建",
    "已经构建了", "已經構建了", "构建完成", "構建完成",
    "构建好了", "構建好了", "已提交", "已经提交了",
    "已經提交了", "提交完成", "提交好了", "已推送",
    "已经推送了", "已經推送了", "推送完成", "推送好了",
    "已合并", "已合併", "已经合并了", "已經合併了",
    "合并完成", "合併完成", "合并好了", "合併好了",
    "已部署", "已经部署了", "已經部署了", "部署完成",
    "部署好了", "已清理", "已经清理了", "已經清理了",
    "清理完成", "清理好了", "已安装", "已安裝",
    "已经安装了", "已經安裝了", "安装完成", "安裝完成",
    "安装好了", "安裝好了", "已编译", "已編譯",
    "已经编译了", "已經編譯了", "编译完成", "編譯完成",
    "编译好了", "編譯好了", "已验证", "已驗證",
    "已经验证了", "已經驗證了", "验证完成", "驗證完成",
    "验证好了", "驗證好了", "已删除", "已刪除",
    "已经删除了", "已經刪除了", "删除完成", "刪除完成",
    "删除好了", "刪除好了", "已添加", "已经添加了",
    "已經添加了", "添加完成", "添加好了", "已配置",
    "已经配置了", "已經配置了", "配置完成", "配置好了",
    "已重构", "已重構", "已经重构了", "已經重構了",
    "重构完成", "重構完成", "重构好了", "重構好了",
    "已生成", "已经生成了", "已經生成了", "生成完成",
    "生成好了", "已保存", "已经保存了", "已經保存了",
    "保存完成", "保存好了", "已执行", "已執行",
    "已经执行了", "已經執行了", "执行完成", "執行完成",
    "执行好了", "執行好了", "已扫描", "已掃描",
    "已经扫描了", "已經掃描了", "扫描完成", "掃描完成",
    "扫描好了", "掃描好了", "已分析", "已经分析了",
    "已經分析了", "分析完成", "分析好了", "已统计",
    "已統計", "已经统计了", "已經統計了", "统计完成",
    "統計完成", "统计好了", "統計好了", "一切就绪",
    "一切就緒", "全部完成", "已经完成", "已經完成",
    "已完成", "完成了", "已经改好", "已經改好",
    "改好了", "测试通过", "測試通過", "测试全过",
    "測試全過", "构建成功", "構建成功", "编译通过",
    "編譯通過", "没有错误", "沒有錯誤", "没有问题",
    "沒有問題", "一切正常", "跑通了", "已经部署",
    "已經部署", "已经推送", "已經推送", "已经提交",
    "已經提交", "已经合并", "已經合併", "处理完毕",
    "處理完畢", "任务完成", "任務完成", "工作完成",
    "文件已生成", "报告已生成", "報告已生成", "日志在上面",
    "日誌在上面", "输出在上面", "輸出在上面", "结果在上面",
    "結果在上面",
]

# Framings that present a command as already run.
executed_framings = [
    "执行了", "執行了", "运行了", "運行了",
    "结果在上面", "結果在上面", "输出在上面", "輸出在上面",
    "上面就是输出", "上面就是輸出", "命令输出", "命令輸出",
    "已验证", "已驗證",
]

# Claims that an image was produced or delivered.
media_delivery_phrases = [
    "就是这个", "就是這個", "图在这里", "圖在這裡",
    "图片在这里", "圖片在這裡", "已生成", "生成了图片",
    "生成了圖片", "做好了", "改好了图", "改好了圖",
    "这是图片", "這是圖片", "渲染完成", "背景已替换",
    "背景已替換",
]

# Words that mark the claimed result as visual work.
media_context_words = [
    "图片", "圖片", "图像", "圖像",
    "照片", "渲染", "背景", "亮度",
    "颜色", "顏色", "设计", "設計",
    "标志", "標誌",
]

# Claims that a file or document was sent.
file_delivery_phrases = [
    "文件已发送", "文件已發送", "我发了文件", "我發了文件",
    "文件附上", "附件如下", "文件在下面", "这是文件",
    "這是文件", "报告已发送", "報告已發送", "已附上文件",
    "文件已生成", "可以下载了", "可以下載了",
]

# Words that mark the claimed deliverable as a file.
file_context_words = [
    "文件", "文档", "文檔", "报告",
    "報告", "附件", "压缩包", "壓縮包",
    ".md", ".pdf", ".txt", ".json",
    ".csv", ".log", "下载", "下載",
    "备份", "備份", "表格",
]

# Verbs and prepositions that make a following bare tool name the
# object of an action the model attributes to itself.
tool_use_markers = [
    "使用", "用", "通过", "通過",
    "调用", "調用", "运行", "運行",
    "执行", "執行", "打开", "打開",
    "读取", "讀取", "写入", "寫入",
    "修改", "检查", "檢查", "搜索",
]

# Nouns that name the preceding word as a tool.
tool_nouns = [
    "工具", "这个工具", "這個工具",
]

# No articles in Chinese, so nothing can sit between a marker and the name.
tool_name_determiners = []

# A line that OPENS with an intent, for the stuck-loop counters.
line_start_re = '(?m)^[\s\-*•>]*(?:(?:好|现在|現在|接下来|接下來|首先)[,,]?\s*)?(?:我们|我們|我)?(?:会|會|要|将|將|来|來|需要|应该|應該|打算|正在)'

# Brief present-continuous announcement closed by an imminence marker:
# "正在检查配置文件…". Chinese has no gerund, so this arm and the intent
# families carry what the English gerund arm catches.
work_announcement_re = '(?m)^[\s\-*•>]*(?:(?:好|好的|现在|現在|正在|接下来|接下來)[,,]?\s*)?(?:我)?(?:开始|開始|继续|繼續)?(?:检查|檢查|查看|修复|修復|更新|修改|创建|創建|写入|寫入|读取|讀取|运行|運行|测试|測試|构建|構建|提交|推送|合并|合併|部署|清理|安装|安裝|编译|編譯|验证|驗證|搜索|扫描|掃描|分析|加载|加載|下载|下載|上传|上傳|删除|刪除|添加|配置|重构|重構|生成|打开|打開|关闭|關閉|复制|複製|移动|移動|回滚|回滾|排查|定位|记录|記錄|整理|保存|执行|執行)[^。!?\n]{0,40}?(?:现在|現在|\.{3}|…|:\s*(?:\n|$))'

# An intent line that ends in a colon (full-width or ASCII), i.e. a list is
# about to follow.
trailing_colon_re = '(?m)^[\s\-*]*(?:我)?(?:会|會|要|将|將|来|來|需要|现在|現在)?(?:检查|檢查|查看|修复|修復|更新|修改|创建|創建|运行|運行|测试|測試|构建|構建|部署|清理|安装|安裝|验证|驗證|搜索|扫描|掃描|分析|删除|刪除|添加|配置|重构|重構|生成|保存|执行|執行)[^::\n]{0,40}[::]\s*$'

# Line-start future or obligation, counted for the multi-step-plan arm.
now_imperative_re = '(?m)^[\s\-*]*(?:现在|現在|接下来|接下來|首先)?(?:我)?(?:会|會|要|将|將|来|來|需要|应该|應該)'

# A numbered step that opens with an action verb.
numbered_steps_re = '(?m)^\s*\d+[.、)]\s*(?:检查|檢查|修复|修復|更新|修改|创建|創建|写入|寫入|读取|讀取|运行|運行|测试|測試|构建|構建|提交|推送|合并|合併|部署|清理|安装|安裝|验证|驗證|删除|刪除|添加|配置|重构|重構|生成|保存|执行|執行)'

# A standalone past-tense sentence: the shape of completed-work narration.
past_tense_standalone_re = '(?m)^[\s\-*]*(?:已|已经|已經)?(?:检查|檢查|修复|修復|更新|修改|创建|創建|写入|寫入|读取|讀取|运行|運行|测试|測試|构建|構建|提交|推送|合并|合併|部署|清理|安装|安裝|编译|編譯|验证|驗證|删除|刪除|添加|配置|重構|重构|生成|保存|执行|執行)[^。!?\n]{0,20}[。!.]'

# Chinese has no gerund and no participle-plus-clitic split: the object is
# a bare noun after the verb, with no pronoun carrying it, so there is
# nothing for the announcement/statement split to read. Empty is inert, and
# every consumer guards is_empty() first.
gerund_re = ''
participle_object_re = ''
announcement_tail_words = []

# See the header: a capture-the-verb regex cannot find where a verb ends in
# unspaced text. The families above enumerate the construction instead.
generic_intent_re = ''
intent_verb_exclusions = []

# Path, extension and backtick patterns are language-neutral and already
# supplied by the English pack, which the corroboration arm scans across
# every language.
path_re = ''
ext_re = ''
backtick_code_re = ''