Repository navigation
Expand file tree
/
Copy pathzh.json
More file actions
3542 lines (3542 loc) · 227 KB
/
Copy pathzh.json
File metadata and controls
3542 lines (3542 loc) · 227 KB
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
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"__groups": {
"model": "模型与生成",
"display": "显示",
"terminal": "终端",
"tui": "终端界面",
"theme": "主题",
"statusLine": "状态栏",
"composer": "输入框",
"compaction": "上下文压缩",
"retry": "重试与回退",
"tools": "工具总控",
"bash": "Shell",
"edit": "文件编辑",
"lsp": "代码智能 LSP",
"grep": "内容搜索",
"glob": "文件查找",
"find": "语义查找",
"fetch": "网页读取",
"read": "文件读取",
"task": "子代理",
"todo": "任务清单",
"ask": "提问",
"advisor": "顾问",
"prewalk": "预走 prewalk",
"plan": "计划模式",
"goal": "目标模式",
"checkpoint": "检查点",
"browser": "浏览器",
"computer": "桌面控制",
"images": "图片",
"memory": "记忆",
"memories": "记忆(试验)",
"hindsight": "记忆 Hindsight",
"mnemopi": "记忆 Mnemopi",
"autolearn": "自动学习",
"input": "输入",
"completion": "完成通知",
"error": "错误通知",
"startup": "启动",
"git": "Git",
"github": "GitHub",
"skills": "技能",
"mcp": "MCP",
"generate_image": "图像生成",
"speech": "语音朗读",
"speechgen": "语音合成",
"stt": "语音输入",
"secrets": "凭据脱敏",
"security": "安全扫描",
"telemetry": "遥测",
"share": "分享",
"stream": "直播",
"power": "电源",
"recap": "空闲回顾",
"spelling": "拼写辅助",
"paste": "粘贴",
"providers": "供应商",
"model_loop": "模型防护",
"ratchet": "Ratchet",
"ida": "IDA",
"dev": "开发者",
"exa": "Exa 搜索",
"collab": "协作",
"commands": "命令加载",
"debug": "调试",
"eval": "Eval",
"branchSummary": "分支摘要",
"title": "会话标题",
"cycle": "轮换",
"astEdit": "AST 编辑",
"astGrep": "ast-grep 搜索",
"async": "异步任务",
"auth": "认证",
"autoResume": "自动恢复",
"autocompleteMaxVisible": "自动补全可见数",
"bashInterceptor": "Bash 拦截",
"claudeResets": "Claude 额度回收",
"codexResets": "Codex 额度回收",
"colorBlindMode": "色盲友好模式",
"commit": "提交信息",
"contextPromotion": "上下文提升",
"cycleOrder": "模型轮换顺序",
"defaultThinkingLevel": "默认思考档位",
"disabledExtensions": "已禁用扩展",
"disabledProviders": "已禁用提供方",
"doubleEscapeAction": "双击 Esc 行为",
"emojiAutocomplete": "Emoji 自动补全",
"enabledModels": "已启用模型",
"enabledProviders": "已启用提供方",
"extendedContext": "扩展上下文",
"extensionHandlers": "扩展处理器",
"extensions": "扩展",
"externalThinking": "外显思考",
"features": "功能开关",
"followUpMode": "追问模式",
"gc": "存储回收",
"hideThinkingBlock": "隐藏思考块",
"includeModelInPrompt": "提示词含模型名",
"includeWorkspaceTree": "提示词含工作区树",
"inlineToolDescriptors": "内联工具描述",
"interruptMode": "中断模式",
"isolation": "隔离",
"launch": "启动行为",
"live": "实时语音",
"loop": "循环任务",
"magicKeywords": "魔法关键词",
"marketplace": "扩展市场",
"minP": "Min-P 采样",
"modelPresets": "模型预设",
"modelProviderOrder": "提供方顺序",
"modelRoleStorage": "模型角色存储",
"modelRoles": "模型角色",
"modelTags": "模型标签",
"omitThinking": "省略思考",
"personality": "人格",
"presencePenalty": "存在惩罚",
"proseOnlyThinking": "纯文本思考",
"provider": "提供方",
"python": "Python",
"readLineNumbers": "读取行号",
"repetitionPenalty": "重复惩罚",
"searxng": "SearXNG 搜索",
"setupVersion": "安装版本",
"sharpshooter": "Sharpshooter 注入",
"shellMinimizer": "Shell 输出精简",
"shellPath": "Shell 路径",
"showHardwareCursor": "显示硬件光标",
"skillful": "Skillful",
"snapcompact": "快照压缩",
"steeringMode": "引导模式",
"symbolPreset": "符号预设",
"tasks": "后台任务",
"temperature": "温度",
"textVerbosity": "文本详尽度",
"thinkingBudgets": "思考预算",
"tier": "模型分层",
"topK": "Top-K 采样",
"topP": "Top-P 采样",
"treeFilterMode": "目录树过滤",
"tts": "TTS 语音",
"ttsr": "语音朗读规则",
"update": "更新",
"vault": "记忆库",
"web_search": "网络搜索",
"workspace": "工作区",
"worktree": "工作树",
"session": "会话",
"out": "中途回应",
"archive": "只读归档",
"contextFiles": "上下文文件",
"extensionRenderers": "扩展渲染",
"expandThinkingBlocks": "思考块展开",
"shellCommandPrefix": "Shell 命令前缀"
},
"__groups_en": {
"model": "Models & Generation",
"display": "Display",
"terminal": "Terminal",
"tui": "Terminal UI",
"theme": "Theme",
"statusLine": "Status Line",
"composer": "Input Composer",
"compaction": "Context Compaction",
"retry": "Retry & Fallback",
"tools": "Tools Master Switch",
"bash": "Shell",
"edit": "File Editing",
"lsp": "Code Intelligence (LSP)",
"grep": "Content Search",
"glob": "File Search",
"find": "Semantic Search",
"fetch": "Web Fetch",
"read": "File Reading",
"task": "Subagents",
"todo": "Todo List",
"ask": "Ask User",
"advisor": "Advisor",
"prewalk": "Prewalk",
"plan": "Plan Mode",
"goal": "Goal Mode",
"checkpoint": "Checkpoints",
"browser": "Browser",
"computer": "Desktop Control",
"images": "Images",
"memory": "Memory",
"memories": "Memories (Experimental)",
"hindsight": "Memory Hindsight",
"mnemopi": "Memory Mnemopi",
"autolearn": "Auto Learning",
"input": "Input",
"completion": "Completion Notice",
"error": "Error Notice",
"startup": "Startup",
"git": "Git",
"github": "GitHub",
"skills": "Skills",
"mcp": "MCP",
"generate_image": "Image Generation",
"speech": "Speech Reading",
"speechgen": "Speech Synthesis",
"stt": "Speech Input",
"secrets": "Secret Redaction",
"security": "Security Scanning",
"telemetry": "Telemetry",
"share": "Sharing",
"stream": "Live Stream",
"power": "Power",
"recap": "Idle Recap",
"spelling": "Spelling Aid",
"paste": "Paste",
"providers": "Providers",
"model_loop": "Model Guard",
"ratchet": "Ratchet",
"ida": "IDA",
"dev": "Developer",
"exa": "Exa Search",
"collab": "Collaboration",
"commands": "Command Loading",
"debug": "Debugging",
"eval": "Eval",
"branchSummary": "Branch Summary",
"title": "Session Title",
"cycle": "Rotation",
"astEdit": "AST Editing",
"astGrep": "ast-grep Search",
"async": "Async Tasks",
"auth": "Authentication",
"autoResume": "Auto Resume",
"autocompleteMaxVisible": "Autocomplete Visible Items",
"bashInterceptor": "Bash Interceptor",
"claudeResets": "Claude Quota Reset",
"codexResets": "Codex Quota Reset",
"colorBlindMode": "Color-blind Mode",
"commit": "Commit Message",
"contextPromotion": "Context Promotion",
"cycleOrder": "Model Rotation Order",
"defaultThinkingLevel": "Default Thinking Level",
"disabledExtensions": "Disabled Extensions",
"disabledProviders": "Disabled Providers",
"doubleEscapeAction": "Double-Esc Action",
"emojiAutocomplete": "Emoji Autocomplete",
"enabledModels": "Enabled Models",
"enabledProviders": "Enabled Providers",
"extendedContext": "Extended Context",
"extensionHandlers": "Extension Handlers",
"extensions": "Extensions",
"externalThinking": "Visible Thinking",
"features": "Feature Flags",
"followUpMode": "Follow-up Mode",
"gc": "Storage GC",
"hideThinkingBlock": "Hide Thinking Block",
"includeModelInPrompt": "Model Name in Prompt",
"includeWorkspaceTree": "Workspace Tree in Prompt",
"inlineToolDescriptors": "Inline Tool Descriptors",
"interruptMode": "Interrupt Mode",
"isolation": "Isolation",
"launch": "Launch Behavior",
"live": "Live Voice",
"loop": "Loop Tasks",
"magicKeywords": "Magic Keywords",
"marketplace": "Extension Marketplace",
"minP": "Min-P Sampling",
"modelPresets": "Model Presets",
"modelProviderOrder": "Provider Order",
"modelRoleStorage": "Model Role Storage",
"modelRoles": "Model Roles",
"modelTags": "Model Tags",
"omitThinking": "Omit Thinking",
"personality": "Personality",
"presencePenalty": "Presence Penalty",
"proseOnlyThinking": "Prose-only Thinking",
"provider": "Provider",
"python": "Python",
"readLineNumbers": "Read Line Numbers",
"repetitionPenalty": "Repetition Penalty",
"searxng": "SearXNG Search",
"setupVersion": "Setup Version",
"sharpshooter": "Sharpshooter Injection",
"shellMinimizer": "Shell Output Minimizer",
"shellPath": "Shell Path",
"showHardwareCursor": "Hardware Cursor",
"skillful": "Skillful",
"snapcompact": "Snapshot Compaction",
"steeringMode": "Steering Mode",
"symbolPreset": "Symbol Preset",
"tasks": "Background Tasks",
"temperature": "Temperature",
"textVerbosity": "Text Verbosity",
"thinkingBudgets": "Thinking Budgets",
"tier": "Model Tier",
"topK": "Top-K Sampling",
"topP": "Top-P Sampling",
"treeFilterMode": "Tree Filter",
"tts": "TTS Voice",
"ttsr": "Speech Reading Rules",
"update": "Update",
"vault": "Memory Vault",
"web_search": "Web Search",
"workspace": "Workspace",
"worktree": "Worktree",
"session": "Session",
"out": "Mid-task Replies",
"archive": "Archive",
"contextFiles": "Context Files",
"extensionRenderers": "Extension Renderers",
"expandThinkingBlocks": "Expand Thinking Blocks",
"shellCommandPrefix": "Shell Command Prefix"
},
"__groupmap": {
"temperature": "模型与生成",
"topK": "模型与生成",
"topP": "模型与生成",
"minP": "模型与生成",
"presencePenalty": "模型与生成",
"repetitionPenalty": "模型与生成",
"textVerbosity": "模型与生成",
"omitThinking": "模型与生成",
"proseOnlyThinking": "模型与生成",
"externalThinking": "模型与生成",
"defaultThinkingLevel": "模型与生成",
"extendedContext": "模型与生成",
"includeModelInPrompt": "模型与生成",
"includeWorkspaceTree": "模型与生成",
"inlineToolDescriptors": "模型与生成",
"cycleOrder": "模型与生成",
"modelPresets": "模型与生成",
"modelTags": "模型与生成",
"modelRoles": "模型与生成",
"modelRoleStorage": "模型与生成",
"modelProviderOrder": "模型与生成",
"enabledModels": "模型与生成",
"enabledProviders": "模型与生成",
"disabledProviders": "模型与生成",
"disabledExtensions": "模型与生成",
"extensions": "模型与生成",
"extensionHandlers": "模型与生成",
"marketplace": "模型与生成",
"contextPromotion": "模型与生成",
"thinkingBudgets": "模型与生成",
"tier": "模型与生成",
"display": "界面与输入",
"terminal": "界面与输入",
"tui": "界面与输入",
"theme": "界面与输入",
"statusLine": "界面与输入",
"composer": "界面与输入",
"spelling": "界面与输入",
"paste": "界面与输入",
"symbolPreset": "界面与输入",
"showHardwareCursor": "界面与输入",
"emojiAutocomplete": "界面与输入",
"autocompleteMaxVisible": "界面与输入",
"colorBlindMode": "界面与输入",
"readLineNumbers": "界面与输入",
"hideThinkingBlock": "界面与输入",
"input": "会话与交互",
"completion": "会话与交互",
"error": "会话与交互",
"startup": "会话与交互",
"title": "会话与交互",
"branchSummary": "会话与交互",
"recap": "会话与交互",
"goal": "会话与交互",
"checkpoint": "会话与交互",
"loop": "会话与交互",
"workspace": "会话与交互",
"autoResume": "会话与交互",
"interruptMode": "会话与交互",
"steeringMode": "会话与交互",
"followUpMode": "会话与交互",
"doubleEscapeAction": "会话与交互",
"treeFilterMode": "会话与交互",
"personality": "会话与交互",
"features": "会话与交互",
"magicKeywords": "会话与交互",
"snapcompact": "上下文压缩",
"sharpshooter": "工具总控",
"prewalk": "子代理",
"isolation": "子代理",
"async": "子代理",
"tasks": "任务清单",
"grep": "检索与读取",
"glob": "检索与读取",
"find": "检索与读取",
"fetch": "检索与读取",
"read": "检索与读取",
"bashInterceptor": "Shell",
"shellMinimizer": "Shell",
"shellPath": "Shell",
"launch": "Shell",
"generate_image": "图片",
"speech": "语音",
"speechgen": "语音",
"stt": "语音",
"tts": "语音",
"ttsr": "语音",
"live": "语音",
"memories": "记忆系统",
"memory": "记忆系统",
"vault": "记忆系统",
"skills": "技能与自动学习",
"autolearn": "技能与自动学习",
"skillful": "技能与自动学习",
"providers": "供应商与认证",
"auth": "供应商与认证",
"provider": "供应商与认证",
"claudeResets": "供应商与认证",
"codexResets": "供应商与认证",
"exa": "网络搜索",
"searxng": "网络搜索",
"web_search": "网络搜索",
"collab": "协作与分享",
"stream": "协作与分享",
"share": "协作与分享",
"git": "Git 与提交",
"github": "Git 与提交",
"worktree": "Git 与提交",
"commit": "Git 与提交",
"dev": "开发与调试",
"debug": "开发与调试",
"eval": "开发与调试",
"python": "开发与调试",
"ratchet": "开发与调试",
"secrets": "安全与遥测",
"security": "安全与遥测",
"telemetry": "安全与遥测",
"power": "系统与更新",
"update": "系统与更新",
"setupVersion": "系统与更新",
"astEdit": "AST 工具",
"astGrep": "AST 工具"
},
"advisor.continueSeverity": {
"name": "唤醒优先级阈值",
"desc": "顾问在 agent 已经给出最终答复之后,要多严重的笔记才值得把 agent 重新唤醒。低于此级别的笔记只留在末尾卡片里,等你发下一条消息时才一起带给 agent。nit=仅挑剔也唤醒;concern=值得关注才唤醒;blocker=只有阻塞性问题才唤醒。可选 concern(默认)/nit/blocker。",
"options": [
"nit",
"concern",
"blocker"
]
},
"advisor.enabled": {
"name": "Advisor 副顾问审查",
"desc": "给会话配一个担任 advisor 角色的第二模型,它会被动审查主模型每个回合的工作并注入建议。默认关闭(false)。开启后每回合多一次审查调用,费用和延迟都会上升;需要先在 modelRoles 里给 advisor 角色绑定一个可用模型才会生效,也可用 /advisor on 或 --advisor 临时开启。"
},
"advisor.evictStaleResults": {
"name": "清理旧审查输出",
"desc": "Advisor 每次做审查前,把它更早几次审查里 read/grep/glob 的工具输出替换成简短占位符,只保留最新一次的完整输出。默认开启,避免审查记录反复占满上下文;关闭后所有历史审查输出都留在上下文里,token 消耗更大。"
},
"advisor.immuneTurns": {
"name": "打断豁免回合数",
"desc": "Advisor 的关切(concern)或阻塞(blocker)意见打断过一次主回合后,接下来这么多回合内,后续的关切改成不打断的旁注方式送达(阻塞级意见不受影响)。默认 3。调大可以减少连环打断、让推进更顺,但响应审查意见会更慢。"
},
"advisor.maxNotesPerUpdate": {
"name": "单次建议条数上限",
"desc": "每次 Advisor 审查更新最多接受的非阻塞建议条数,范围 1–32,默认 4(界面提供 1–5 快捷选项)。阻塞级意见不受此限制,且高严重度的意见只会顶替同一次审查里的待投递条目。调小更省 token、噪音更少。"
},
"advisor.reviewInterval": {
"name": "审查间隔回合数",
"desc": "没有 WATCHDOG.yml 顾问名册时,默认顾问每隔多少个合格的主回合审查一次。默认 1,即每个回合都审;被跳过的回合会攒到下一次排期审查一起送审。调大可以降低审查开销,代价是意见来得更晚。"
},
"advisor.reviewMode": {
"name": "审查模式",
"desc": "没有 WATCHDOG.yml 名册时顾问的默认节奏:turn(默认)= 每个主回合都审查;agent-end = 只在主代理给出最终产出时审一次,整个任务只审一轮。turn 更及时但开销大,agent-end 省钱但中途问题发现得晚。名册里的顾问可以各自设置。",
"options": [
"turn",
"agent-end"
]
},
"advisor.syncBacklog": {
"name": "审查积压同步等待",
"desc": "当 Advisor 审查排队的积压达到这个档位数时,主代理最多暂停 30 秒等它追上:off(默认)从不等待;1/3/5 在积压超过该数值时最多等 30 秒;strict 不限时间,一直等到排期审查完成。开启能保证建议被消化后再继续,代价是可能卡住等待;中止、失败或会话释放会解除等待。",
"options": [
"off",
"1",
"3",
"5",
"strict"
]
},
"archive.enabled": {
"name": "只读归档预读",
"desc": "开启 eval 的只读归档预读能力:可检索提示词历史、最近项目、过往会话与其摘要。只读,不会修改或删除任何会话。默认 true。"
},
"ask.enabled": {
"name": "ask 交互提问工具",
"desc": "启用 ask 工具:模型拿不定主意时会弹出交互式选项菜单向你提问(例如多个方案让你选)。默认开启。关闭后模型只能自行猜测,或在回复文字里向你提问,交互体验变差。"
},
"ask.notify": {
"name": "提问时系统通知",
"desc": "ask 工具弹出提问、正在等你输入时,是否发送操作系统级通知:on(默认)= 发通知,即使你不盯着终端也能知道它在等你;off = 只在界面内提示。跑长任务时建议保持开启,避免会话干等。",
"options": [
"on",
"off"
]
},
"ask.timeout": {
"name": "提问自动选择超时",
"desc": "ask 提问等待超过这个秒数后,自动替你选推荐选项继续执行;0(默认)= 永不超时、一直等你。适合无人值守跑批:任务不会被一个提问卡死,但自动选的选项未必合你意。"
},
"astEdit.enabled": {
"name": "ast_edit 结构化改写",
"desc": "启用 ast_edit 工具:基于 AST(抽象语法树,即代码的语法结构)做结构化改写,比如重命名符号、批量替换某种调用形态,比纯文本替换更不容易改错地方。默认开启。关掉后只剩文本级编辑,结构性重构的可靠性会下降。"
},
"astGrep.enabled": {
"name": "ast_grep 结构化搜索",
"desc": "启用 ast_grep 工具:按语法树模式(而不是正则表达式)搜索代码,能精确匹配「所有这类函数调用」而不受换行、缩进干扰。默认关闭。需要做精确的结构化代码搜索时再开,普通文本搜索用 grep 就够。"
},
"async.enabled": {
"name": "异步与后台任务",
"desc": "启用异步 bash 命令和后台任务执行:跑得久的命令可以转后台,结果稍后送达,模型在等待期间继续干别的。默认开启。关闭后所有命令都必须同步等完,长命令会阻塞整个回合。"
},
"async.maxJobs": {
"name": "后台任务数量上限",
"desc_en": "Cap on concurrently running background/async tasks, default 100; new tasks wait for a free slot beyond it, stopping the model from sprawling unbounded background processes that would drag the machine down. Rarely needs changing.",
"desc": "正在运行(running)的后台任务数量上限,默认 100,最小为 1;已停放(parked)或排队中的任务不占这个名额。用于防止模型无节制地铺开大量后台进程拖垮机器,一般不用改。"
},
"async.printWake": {
"name": "打印模式等待后台任务",
"desc": "打印模式(-p / --mode json)下,最后一条提示词完成后不立即退出:只要本次运行启动的后台任务还在跑,就继续留在同一会话里,每有一个结果就再起一轮。等所有任务与结果都处理完才退出。关闭时(默认 false)打印模式完成提示词后即退出并取消还在跑的后台任务。",
"options": [
"true",
"false"
]
},
"async.widgets": {
"name": "后台任务实时小组件",
"desc": "为每个正在运行的后台任务画一张实时小组件(由该任务输出推导出的图表、进度条、状态网格),显示在等待卡片、任务胶囊和任务面板里。每个任务的小组件规格由 widget 角色(默认 smol)生成一次,之后刷新不再调用模型。默认 true。",
"options": [
"true",
"false"
]
},
"auth.accountPolicies": {
"name": "OAuth 账号使用策略",
"desc_en": "Array of account policies for authentication, empty by default (inferred, undocumented upstream); understood from the name and the auth family as per-account usage policies such as routing or limit preferences — single-account users need not set it.",
"desc": "为同一提供商下的多个已保存 OAuth 账号配置使用策略的数组。每项包含 provider(提供商 id,如 anthropic)、account(按 email/accountId/projectId 匹配某个账号),可选 priority(优先级)和 reservePct(该账号保留多少百分比的配额不花)。用于多账号轮换时的配额保护;单账号用户留空即可。"
},
"auth.broker.token": {
"name": "认证代理令牌",
"desc_en": "Credential token for the auth broker service (env OMP_AUTH_BROKER_TOKEN), used when authorization is delegated through a broker; credential-type setting, redacted in `omp config list` output. Leave empty when no broker is used.",
"desc": "auth broker(认证中转服务)的 Bearer 令牌。配合 auth.broker.url 使用,把凭据分发交给外部代理统一管理。环境变量 OMP_AUTH_BROKER_TOKEN 优先于配置文件,broker 自带的令牌文件是兜底。属于凭据,列表输出会脱敏;不用 broker 时留空。"
},
"auth.broker.url": {
"name": "认证代理地址",
"desc_en": "URL of the auth broker service (env OMP_AUTH_BROKER_URL); together with auth.broker.token it delegates OAuth-style authorization flows to the broker, useful when tokens for subscription accounts are managed centrally. (inferred, undocumented upstream)",
"desc": "auth broker 服务的 URL,配合 auth.broker.token 使用:让多个 omp 实例或多台机器通过一个中转服务共享认证快照(token 池、账号轮换状态)。环境变量 OMP_AUTH_BROKER_URL 优先;凭据只认全局配置,项目级配置不生效。不自建中转就留空。"
},
"autoResume": {
"name": "启动自动恢复会话",
"desc": "启动 omp 时自动恢复当前目录下最近一次的会话,相当于每次都带 -c 启动。默认 false,即每次启动都是全新会话。经常在一个目录里连续干活可以开启,省去手动恢复。"
},
"autocompleteMaxVisible": {
"name": "补全列表可见行数",
"desc": "输入框自动补全下拉列表最多显示多少条候选,范围 3–20,默认 10。纯界面偏好:调大少翻页但占屏幕,调小更紧凑。"
},
"autolearn.autoContinue": {
"name": "自动学习捕获回合",
"desc": "开启后,agent 每次正常停止时自动追加一轮私有的「经验捕获」回合,把本次运行的教训写入记忆,会额外消耗一次调用的 token。默认 false:只保留常驻的学习引导语,不主动跑捕获。中止的回合、计划模式回合和目标循环回合会跳过。需先开 autolearn.enabled。"
},
"autolearn.enabled": {
"name": "自动经验学习",
"desc": "实验性功能:开启后在系统提示里加入常驻的「经验捕获」引导,并在有记忆后端时开放 learn 工具,让 agent 把本次运行的经验沉淀为可跨会话复用的记忆或托管技能(managed-skills)。默认 false。开启会额外消耗少量 token,换来经验积累。"
},
"autolearn.minToolCalls": {
"name": "学习触发工具数下限",
"desc_en": "Minimum tool-call count for a session to trigger auto learning, default 5 (this machine: 20): trivial sessions below it are skipped instead of spending tokens on experience capture; raise it to learn only from substantial sessions.",
"desc": "一个主回合至少要完成这么多次工具调用,停止时才具备自动学习捕获的资格,默认 5。低于这个数的琐碎会话不值得花 token 做经验提取,直接跳过。调大可只在真正有实质工作的会话里学习。"
},
"bash.allowCompoundCommands": {
"name": "复合命令逐段审批",
"desc": "对形如 `cmd1 && cmd2` 的字面量 && 链逐段评估审批规则:每段独立匹配 bash.patterns,匹配不上的段沿用普通 bash 审批策略。默认 false,即整条复合命令作为整体评估,allow 规则必须匹配整条命令。开启后粒度更细,能让「安全的 cmp + 危险的 rm」这类链按段放行或拦截。"
},
"bash.autoBackground.enabled": {
"name": "长命令自动转后台",
"desc": "bash 命令运行超过 bash.autoBackground.thresholdMs 就自动转入后台,结果完成后异步送达,模型不用干等。默认开启,是长构建、长测试不阻塞回合的关键开关。"
},
"bash.autoBackground.thresholdMs": {
"name": "转后台时间阈值",
"desc_en": "A bash command running longer than this many milliseconds (default 60000 = 60 seconds) is moved to background automatically; smaller frees the model earlier but output arrives later, larger runs more commands synchronously with immediate results.",
"desc": "bash 命令连续运行超过这个毫秒数(默认 60000,即 60 秒)就自动转后台。调小让模型更早解放去干别的,但结果会晚到;调大则更多命令同步执行、结果立即可见。"
},
"bash.direnv": {
"name": "direnv 环境自动加载",
"desc": "auto(默认)= 启动 bash 会话时自动加载仓库里的 direnv/devenv `.envrc`,让 devenv 工具和环境变量无需手动 `direnv exec` 就可用;off = 不加载。安全性有保证:未经 `direnv allow` 批准的 .envrc 绝不执行。",
"options": [
"auto",
"off"
]
},
"bash.direnvLoadTimeoutMs": {
"name": "direnv 加载超时",
"desc": "首次执行 `direnv export` 的最长等待毫秒数,默认 30000(30 秒)。冷启动的 devenv shell 可能很慢;超时后会话不带 direnv 环境继续运行,只是相关工具可能缺失,不会卡死。"
},
"bash.enabled": {
"name": "bash 命令工具",
"desc": "启用 bash 工具,让模型能执行 shell 命令(跑测试、构建、查系统状态等)。默认开启。关闭后模型无法执行任何命令、只能读写文件,适合只读审查等高风险场景,但日常编码基本离不开它。"
},
"bash.gitGuard": {
"name": "git 共享工作保护",
"desc": "拒绝会在仓库主检出上丢弃或移动他人共享工作的 git 命令:stash、reset --hard 或 reset 到别的提交,以及不在合并/变基冲突中时的 checkout/switch/restore。在 linked worktree 里这类命令可以执行,但会先把它们要丢弃的未提交改动存起来以便恢复。默认 false。",
"options": [
"true",
"false"
]
},
"bash.patterns": {
"name": "bash 命令审批规则",
"desc": "按顺序匹配的 bash 命令审批规则数组,每项含 match(只支持 * 通配符的模式)和 approval(allow/prompt/deny)。内置默认拦截了格式化磁盘、dd 写盘、fork 炸弹等危险命令(deny),shutdown/reboot 需确认(prompt)。第一条匹配的规则生效;这是审批策略不是沙箱,被放行的命令仍有完整系统权限。"
},
"bashInterceptor.enabled": {
"name": "bash 命令拦截引导",
"desc": "拦截那些有专用工具可用的 shell 命令(如 cat、grep、find),阻止执行并提示模型改用对应的专用工具(read/grep/glob)。默认关闭。开启能养成模型用结构化工具的习惯——专用工具遵守 .gitignore、输出更规整——但偶尔会让简单的 shell 用法被拦下。"
},
"bashInterceptor.patterns": {
"name": "拦截规则集",
"desc_en": "Interception rules for bashInterceptor, each with pattern (regex), tool (the tool to use instead) and message (hint shown to the model). Defaults: cat/head/tail to read, grep/rg to grep, find/fd to glob, sed -i/perl -i/awk in-place to edit, echo redirection to write, nohup and dev/watch-style commands to named bash services.",
"desc": "bashInterceptor 的规则数组,每项含 pattern(正则)、tool(应改用的工具)、message(给模型看的提示)。默认规则覆盖:cat/head/tail→read、grep/rg→grep、find/fd→glob、sed -i/perl -i→edit、echo 重定向→write、nohup 及 dev/watch 类命令→具名 bash 服务。仅 bashInterceptor.enabled 开启时生效。"
},
"branchSummary.enabled": {
"name": "切分支时询问摘要",
"desc": "用会话树(/tree 或双击 Esc)跳回某个历史节点、即将离开当前分支时,弹出「是否为这段分支生成摘要」的询问;选摘要则模型把离开的分支压成一段总结注入上下文再跳转。默认 false。注意这里的分支是会话历史树的分支,与 git 分支无关。开启后每次跳分支多一次可选的模型调用。"
},
"branchSummary.reserveTokens": {
"name": "分支摘要预留额度",
"desc_en": "Context tokens reserved for generating branch summaries, default 16384 (inferred, undocumented upstream); a retention mechanism like compaction.reserveTokens that guarantees room for summary generation; rarely needs changing.",
"desc": "生成会话分支摘要时预留的上下文 token 余量,默认 16384。作用是保证摘要调用有足够空间完成,而不是摘要本身的长度;一般无需修改。"
},
"browser.cdpUrl": {
"name": "接管已有浏览器",
"desc": "默认的 CDP(Chrome DevTools 协议)HTTP 发现端点,例如 http://127.0.0.1:9222。设置后浏览器自动化直接附着到你手动启动的、开了调试端口的 Chrome,而不是新起一个。单次工具调用里显式给的 app.cdp_url 或 app.path 优先于此设置。"
},
"browser.cmux": {
"name": "cmux 网页视图",
"desc": "检测到 cmux socket(macOS 终端环境)时,用 cmux 的 WKWebView 界面执行浏览器自动化。默认 true;环境变量 PI_BROWSER_CMUX=0/1 可覆盖。没有 cmux 时自动回退普通 Chromium,非 macOS 用户无需关心。"
},
"browser.enabled": {
"name": "浏览器自动化",
"desc": "启用浏览器 eval 预置接口:模型可以用脚本驱动 Chromium(Puppeteer)做网页操作、抓取和截图。默认开启。关闭后所有网页自动化能力不可用,只剩普通 URL 抓取。"
},
"browser.freezeOnTurnEnd": {
"name": "回合结束冻结标签页",
"desc": "回合结束时冻结 omp 自己管理的无头浏览器标签页,动画网页在空闲时不再白白消耗 CPU/GPU;下次用到自动解冻,open 时传 persist:true 可让某页豁免。默认开启,省资源无副作用。"
},
"browser.headless": {
"name": "无头模式",
"desc": "浏览器以无头(headless,无窗口)模式启动,默认 true。改成 false 会弹出可见的浏览器界面,适合想肉眼围观模型操作网页的场景;服务器等无显示环境必须保持 true。"
},
"browser.idleCloseSec": {
"name": "空闲标签页回收",
"desc": "omp 自有的无头浏览器标签页和 Tern 画中画空闲超过这个秒数(默认 1800,即 30 分钟)后自动关闭释放资源;0 = 永不自动关(但会话结束仍会回收)。不会影响通过 Relay、CDP 接入的浏览器或其他会话的标签页。"
},
"browser.relay": {
"name": "接管自己的 Chrome",
"desc": "通过 omp browser relay 驱动你自己已打开的 Chrome 标签页(先用 `omp browser-relay install` 装一次扩展;需要时中继服务会自动启动)。默认 false。好处是能看到和操作真实浏览器里的登录态页面;优先级高于 browser.cdpUrl,PI_BROWSER_RELAY=0/1 可覆盖。"
},
"browser.relayUrl": {
"name": "Relay 服务地址",
"desc": "omp browser relay 的端点地址,默认 http://127.0.0.1:9224。只在 browser.relay 开启时有意义;中继和浏览器通常跑在同一台机器,一般不用改。"
},
"browser.screenshotDir": {
"name": "截图保存目录",
"desc": "浏览器截图的保存目录,支持 ~ 缩写(如 ~/Downloads、~/Desktop)。不设时截图写到临时文件。设一个固定目录便于事后翻找模型截过的图。"
},
"browser.tern": {
"name": "Tern 画中画浏览",
"desc": "在 Tern 桌面面板环境中,浏览器标签页以画中画原生 webview 悬浮在 omp 窗口上,而不是无头 Chromium;找不到可承载的 Tern 窗口时自动回退 Chromium。默认 true。显式 app 选项、Relay 和 CDP 优先;单次 open 可用 headed:false 或 app.tern:false 豁免,PI_BROWSER_TERN=0/1 可覆盖。"
},
"checkpoint.enabled": {
"name": "探索检查点工具",
"desc": "启用 checkpoint 与 rewind 这对工具:模型开始一段探索性调查前打 checkpoint,调查完用 rewind 把中间过程折叠成一份报告再回到主线。默认 false。注意它只保存对话上下文位置,不做 git 提交也不备份文件——想保护代码改动请用 git。会话同时只允许一个活跃检查点。"
},
"claudeResets.autoRedeem": {
"name": "Claude 限额重置自动兑换",
"desc": "自动消耗 Claude 订阅的 Cedar/Juniper 限额重置次数来解除用量封锁:unset(默认)= 符合条件时首次消耗前先问你;yes = 不问直接用;no = 禁用阻塞恢复和到期抢救。Cedar 重置只用于它覆盖的配额窗口,Juniper 只能解 5 小时封锁。多账号轮换榨干额度时有用,最保守就保持 unset。",
"options": [
"unset",
"yes",
"no"
]
},
"claudeResets.keepCredits": {
"name": "Claude 重置保留数",
"desc": "自动兑换时至少保留这么多个 Claude 重置次数不动(默认 0,即最后一个也可以自动花掉)。该保留同样适用于到期抢救。想始终给自己留一张「救急票」就设 1–2。"
},
"claudeResets.minBlockedMinutes": {
"name": "Claude 最短封锁阈值",
"desc": "只有当自然解锁(被耗尽的各配额窗口中最晚的重置时刻)距今至少还有这么多分钟(默认 60)时才自动兑换重置——不为一段短暂等待浪费稀缺次数。只重置 5 小时窗口的次数绝不会用来解周限额或模型级封锁。"
},
"claudeResets.salvageHorizonHours": {
"name": "Claude 到期抢救窗口",
"desc": "当服务端选定的 Cedar 重置会在这个小时数内(默认 12)到期、且它覆盖的配额窗口还有值得恢复的用量、且授权允许提前用时,自动把它花掉以免浪费;0 = 禁用到期抢救。"
},
"codexResets.autoRedeem": {
"name": "Codex 限额重置自动兑换",
"desc": "自动消耗已保存的 Codex 速率限制重置额度:当某回合卡住、账号因 5 小时或每周窗口耗尽被封锁、且没有其他账号能接管时,恢复该账号;也会抢救即将过期的额度。unset(默认)= 首次消耗前询问;yes = 不问直接用;no = 两种功能都禁用。",
"options": [
"unset",
"yes",
"no"
]
},
"codexResets.keepCredits": {
"name": "Codex 重置保留数",
"desc": "已保存的 Codex 重置额度低于这个数量时不再自动消耗(默认 0 = 最后一个也可花)。即将过期的额度不受此保留约束——留着也会作废,花掉才算兑现。"
},
"codexResets.minBlockedMinutes": {
"name": "Codex 最短封锁阈值",
"desc": "只有自然解锁(已耗尽的 5h/每周窗口中最晚的重置时刻)距今至少还有这么多分钟(默认 60)才自动兑换——不为短暂等待消耗稀缺额度。调大到 360 之类可以忽略只有 5 小时的封锁,只处理周级封锁。"
},
"codexResets.salvageHorizonHours": {
"name": "Codex 到期抢救窗口",
"desc": "已保存的 Codex 重置额度将在这个小时数内(默认 12)到期、且 5 小时或每周窗口有值得恢复的用量时,自动消耗它以免浪费;0 = 禁用到期抢救。"
},
"collab.autoStart": {
"name": "协作自动开播",
"desc": "每个交互式会话启动时,自动经 collab.relayUrl 托管并把会话发布到本地注册表(`omp collab list` 可见):off(默认)= 只有手动跑 /collab 才共享;view = 自动托管并发放只读链接;control = 自动托管并发放可操作的链接。房间随会话切换轮换。注意开启即默认对外广播会话内容,隐私敏感者保持 off。",
"options": [
"off",
"view",
"control"
]
},
"collab.displayName": {
"name": "协作显示名",
"desc": "collab 协作中向其他参与者展示的名字,默认取操作系统用户名。多人协作房间里用来区分身份,按需设置。"
},
"collab.relayUrl": {
"name": "协作中继地址",
"desc": "/collab 使用的 relay 中继服务器,格式 wss://host[:port],默认 wss://my.omp.sh。会话内容会经这台服务器中转,敏感项目建议自建私有 relay 并在此改地址。"
},
"collab.webUrl": {
"name": "协作网页地址",
"desc": "/collab 分享链接指向的浏览器端 UI 地址;留空(默认)时从 collab.relayUrl 推导;显式填 http:// 只允许本机地址。一般用默认即可。"
},
"colorBlindMode": {
"name": "色盲友好配色",
"desc": "diff 新增行改用蓝色而不是绿色显示,方便红绿色觉障碍者区分增删行。默认 false。纯显示偏好,不影响任何行为。"
},
"commands.enableClaudeProject": {
"name": "项目 Claude 命令",
"desc": "从项目目录的 .claude/commands/ 加载斜杠命令(兼容 Claude Code 的项目级自定义命令)。默认 true。从 Claude Code 迁移过来的项目可以直接复用已有命令库。"
},
"commands.enableClaudeUser": {
"name": "用户 Claude 命令",
"desc": "从 ~/.claude/commands/ 加载斜杠命令(Claude Code 的用户级全局命令)。默认 false,避免和 omp 自有命令混淆;Claude Code 重度用户可开启复用个人命令集。"
},
"commands.enableOpencodeProject": {
"name": "项目 OpenCode 命令",
"desc": "从项目目录的 .opencode/commands/ 加载斜杠命令(兼容 OpenCode 的项目级命令)。默认 true。"
},
"commands.enableOpencodeUser": {
"name": "用户 OpenCode 命令",
"desc": "从 ~/.config/opencode/commands/ 加载斜杠命令(OpenCode 的用户级全局命令)。默认 false;OpenCode 用户可开启复用个人命令。"
},
"commit.cacheEnabled": {
"name": "提交信息生成缓存",
"desc_en": "Caches LLM responses for /commit messages in local llm-cache storage; identical or similar diffs reuse the previous result, saving tokens and time. On by default.",
"desc": "缓存 /commit 生成提交信息时的 LLM 响应(存到本地 llm-cache)。相同或相似的 diff 直接复用上次结果,省 token 也更快。默认开启。"
},
"commit.cacheTtlDays": {
"name": "提交缓存有效期",
"desc_en": "Retention days for the commit-message cache, default 14; expired entries are no longer reused. Shorten it when your diff style changes a lot, lengthen it for a higher hit rate.",
"desc": "提交信息缓存条目的保留天数,默认 14,过期不再复用。仓库 diff 风格变化大可以调短,追求命中率可以调长。"
},
"commit.changelogMaxDiffChars": {
"name": "changelog 输入上限",
"desc_en": "Maximum diff characters fed to the model when generating a changelog, default 120000; very large release diffs are truncated so the call cannot explode; larger covers more changes with more cost and timeout risk.",
"desc": "生成 changelog 时喂给模型的 diff 最大字符数,默认 120000。超大发布 diff 会被截断以保证调用不超窗口;调大覆盖面更全但费用和超时风险上升。"
},
"commit.mapBatchTokenBudget": {
"name": "map 分批 token 预算",
"desc_en": "Token budget per batch in the map stage of map-reduce commit-message generation, default 16000; bigger batches mean fewer but pricier calls — tune the chunking of huge diffs together with mapReduceThreshold.",
"desc": "map-reduce 方式生成提交信息时,map 阶段每一批的 token 预算,默认 16000。批越大调用次数越少但单批越贵;配合 mapReduceThreshold 调节超大 diff 的分块粒度。"
},
"commit.mapReduceEnabled": {
"name": "map-reduce 分段生成",
"desc_en": "For very large diffs, generate commit messages via map-reduce: summarize chunks in parallel first, then fold them into the final message, so one call never has to swallow the whole diff. On by default.",
"desc": "超大 diff 的提交信息改用 map-reduce 生成:先把 diff 分块并行摘要,再汇总成最终 message,避免一次调用塞不下整个 diff。默认开启。"
},
"commit.mapReduceThreshold": {
"name": "分段生成阈值",
"desc_en": "Map-reduce chunked generation kicks in only when the diff exceeds this size (default 5000); smaller diffs generate in a single call, which is simpler. Raise to keep more commits single-call, lower to chunk large diffs sooner.",
"desc": "diff 的 token 估算值超过这个数(默认 5000)才启用 map-reduce 分段生成;小于该值直接单次生成,更省调用。调大让更多提交走单次调用,调小则大 diff 更早分段。"
},
"compaction.asyncEnabled": {
"name": "后台预压缩",
"desc": "上下文接近压缩阈值时就在后台预先生成摘要,真正越过阈值时把现成结果拼接进来,显著缩短你可见的压缩停顿。默认开启。关闭则压缩全部发生在触发的那一刻,等待更久。"
},
"compaction.autoContinue": {
"name": "压缩后自动继续",
"desc_en": "Automatically continue the current work after post-turn threshold maintenance, without you sending another message. Default true; scripted or headless runs that want compaction-to-stop for external scheduling can set false.",
"desc": "回合间阈值压缩完成后自动继续当前工作,不用你再发一条消息。默认 true。脚本化或无人值守运行若希望「压缩完就停」便于外部调度,可设 false。"
},
"compaction.dropUseless": {
"name": "剔除无用工具输出",
"desc": "工具结果被用过后,若被判定对上下文无用(零匹配的搜索、超时的等待等),直接从上下文剔除——以不破坏提示缓存的方式。默认开启,能腾出大量被垃圾输出占据的窗口。"
},
"compaction.enabled": {
"name": "自动上下文压缩",
"desc": "上下文逼近模型窗口上限时自动执行压缩维护(先剔除陈旧的文件读取和空搜索,再按 methodOrder 依次尝试压缩方法)。默认开启。关闭后仍可手动 /compact、/handoff、/shake;但窗口塞满时会直接报错中断。"
},
"compaction.experimentalContextManagement": {
"name": "实验性上下文管理",
"desc": "跨上下文窗口保留持久笔记(context notes)和可检索的原始历史:压缩或换窗后,重要信息可以通过笔记和历史找回而不是彻底丢失。官方标注实验性,默认 false(本机已改为 true)。"
},
"compaction.handoffSaveToDisk": {
"name": "handoff 文档落盘",
"desc": "自动 handoff 流程生成的交接文档额外保存为 markdown 文件留档。默认 false。注意它只管自动 handoff 流程,不影响手动 /handoff 命令。"
},
"compaction.idleEnabled": {
"name": "空闲时压缩",
"desc": "会话空闲时也做上下文维护:token 数超过 idleThresholdTokens 且空闲满 idleTimeoutSeconds 秒就触发压缩。默认 false(本机已改为 true)。开启后压缩开销挪到你不在的间隙,回来时上下文已瘦身。"
},
"compaction.idleThresholdTokens": {
"name": "空闲压缩 token 线",
"desc": "触发空闲压缩的最低上下文规模,默认 200000 token。低于此值的空闲会话不压缩,避免对小会话做无谓维护。"
},
"compaction.idleTimeoutSeconds": {
"name": "空闲等待秒数",
"desc": "会话空闲多少秒后才考虑执行空闲压缩,默认 300(5 分钟)。与 idleThresholdTokens 联合生效;调小压缩更勤,但可能在你短暂思考间隙就触发。"
},
"compaction.keepRecentTokens": {
"name": "近期原样保留量",
"desc_en": "Target size of recent conversation kept verbatim (not summarized) after summary-style compaction, default 20000 tokens; larger keeps more recent detail for smaller compaction gain, smaller recycles the window more aggressively.",
"desc": "摘要型压缩完成后,逐字保留(不进摘要)的近期对话目标规模,默认 20000 token。调大保留更多近期细节、压缩收益变小;调小则窗口回收更激进、丢的细节更多。"
},
"compaction.methodOrder": {
"name": "压缩方法回退顺序",
"desc": "自动上下文维护依次尝试的压缩方法,默认 [remote, snapcompact, handoff, shake, soft]:remote=提供商服务端原生压缩;snapcompact=把旧历史渲染成高密度图像(需视觉模型);handoff=结构化交接摘要;shake=不调模型、只剔除可恢复的大块输出;soft=传统模型摘要。某方法不可用或失败自动顺延下一个。"
},
"compaction.midTurnEnabled": {
"name": "回合中压缩检查",
"desc": "允许在一个长回合内部的工具循环安全边界(下一次模型请求发出前)检查压缩阈值,避免超长回合中途爆窗。默认开启。对子代理无效——子代理整个任务就是一个回合,总是检查。"
},
"compaction.modelThresholds": {
"name": "按模型定制压缩阈值",
"desc": "为单个模型覆盖自动压缩的触发点。键是模型选择器(provider/model,也支持以 * 结尾的前缀匹配),值是三种写法之一:正整数 token 数(如 90000,表示以此为基础按配置的策略缩放)、固定触发点字符串(如 \"f90000\",到点就压缩,不缩放)、百分比字符串(如 \"80%\",即窗口的 80%)。没有匹配条目的模型回落到全局压缩策略。本项是键值表,网页只读,请手工编辑。"
},
"compaction.modelThresholdsEnabled": {
"name": "启用按模型压缩阈值",
"desc": "是否让 compaction.modelThresholds 里按模型配置的触发点生效。关闭后所有模型都只用全局压缩策略。默认 true。",
"options": [
"true",
"false"
]
},
"compaction.remoteEndpoint": {
"name": "远程压缩端点",
"desc_en": "Custom OpenAI-compatible remote compaction endpoint; unset by default = the current route's built-in remote compaction. Most users should keep it unset; configure only to use a separate or cheaper summarization server.",
"desc": "自定义 OpenAI 兼容的远程压缩服务端点。默认未设置,即用当前路由自带的 remote 压缩能力。想用独立的、更便宜的摘要服务时才需要配置,多数用户保持未设。"
},
"compaction.remoteStreamingV2Enabled": {
"name": "流式远程压缩",
"desc": "对兼容的远程压缩模型使用 Responses 流式压缩协议,边流边攒减少等待。默认开启;不兼容的路由自动回退非流式。"
},
"compaction.reserveTokens": {
"name": "压缩保留额度",
"desc_en": "Reserve margin used by reserve-based threshold judgment. Unset by default: automatically the larger of 16384 tokens and 15% of the model window (small windows fall back to proportional retention). Only meaningful when neither thresholdPercent nor thresholdTokens is enabled.",
"desc": "基于保留额度(reserve)的阈值判定所用的余量 token 数。默认未设置:自动取「16384 token 与模型窗口 15%」中的较大者(窗口太小时退回按 15% 保留)。只在 thresholdPercent/thresholdTokens 都没启用自定义阈值时才有意义。"
},
"compaction.supersedeReads": {
"name": "淘汰重复文件读取",
"desc": "同一文件被再次读取时,把旧的那份读取结果从上下文中剔除(每回合运行、缓存感知)。默认开启,显著减少反复读文件造成的上下文膨胀。"
},
"compaction.thresholdPercent": {
"name": "压缩百分比阈值",
"desc": "按模型窗口的百分比触发上下文维护;大于 0 生效并被钳制在 1–99。-1(默认)= 不用百分比,回到基于保留额度的自动判定。想让长会话更早压缩就调小,更晚压缩就调大。"
},
"compaction.thresholdTokens": {
"name": "压缩固定 token 阈值",
"desc": "固定的上下文 token 触发线;大于 0 生效且优先于 thresholdPercent,并被钳制在窗口大小以下。-1(默认)= 不启用固定线。想在特定窗口大小精确控制压缩点时使用。"
},
"compaction.v2RetainedMessageBudget": {
"name": "流式压缩保留预算",
"desc_en": "Token budget cap for recent messages retained by streaming remote compaction (v2), default 64000; larger keeps more recent context at higher post-compaction window usage.",
"desc": "流式远程压缩(v2)中原样保留的近期消息 token 预算上限,默认 64000。调大保留更多近况、压缩后占用更高;调小更省窗口但近况细节更少。"
},
"completion.notify": {
"name": "回合完成系统通知",
"desc": "agent 完成一个回合时发送操作系统通知:on(默认)= 发通知;off = 不发。跑长任务时切去干别的也能被提醒回来;嫌吵可关。",
"options": [
"on",
"off"
]
},
"composer.predictions": {
"name": "预测下一条输入",
"desc": "每轮结束后让当前模型预测你接下来可能发什么,作为灰色幽灵文字显示在空输入框里,按 ⇥ 或 → 填入但不发送。代价是每完成一轮就多发一次计费请求(在 /stats 里可见)。默认 false。",
"options": [
"true",
"false"
]
},
"composer.recallClearedDrafts": {
"name": "找回已清空草稿",
"desc": "用 Ctrl+C 清空的输入草稿仍保留在本地 ↑/↓ 历史里直到会话退出,误清可以翻回来。默认 true。关闭只影响之后的清除操作,已在历史里的不受影响。"
},
"composer.shape": {
"name": "输入区布局样式",
"desc": "输入编辑器和状态行的视觉布局,默认 band(横带式)。纯外观设置,按喜好选择;不同样式影响输入框和状态信息在底部的排布形态。"
},
"composer.tokenRate": {
"name": "实时生成速率显示",
"desc": "在工作状态行、会话标题旁实时显示当前生成速率(tok/s):按流式增量估算,每条消息完成时按提供商计费的输出 token 数校正。默认 false(本机已改为 true)。观察模型速度或代理质量时有用。"
},
"computer.backgroundFallback": {
"name": "后台操作不可用时的行为",
"desc": "当窗口的后台操作通道不可用时怎么办。takeover=改为前台接管执行,做完把焦点还给你的应用(macOS 上如此,其他平台就是普通前台接管);refuse=直接拒绝,同时也不允许 agent 自己抢前台或弹 macOS 菜单。可选 takeover(默认)/refuse。",
"options": [
"takeover",
"refuse"
]
},
"computer.display": {
"name": "桌面截图显示器",
"desc": "桌面自动化截图选哪块屏:all(默认)= 把所有显示器拼成一张大图;也可填原生显示器 ID 只截某一块。多屏用户指定单屏可减小图像体积和 token 消耗。注意部分传输渠道会把有效尺寸压到 1280×896。"
},
"computer.enabled": {
"name": "桌面自动化工具",
"desc": "启用可脚本化的宿主桌面 eval 预置接口:截屏、键鼠输入、读取无障碍树,让模型直接操作你的电脑桌面(可按窗口隔离目标)。默认 false。能力强大但风险高(误点击、隐私截屏),开启前请配置 tools.approvalMode 或 tools.approval.computer 的审批策略并授予系统权限。/computer 命令只对当前会话临时开关。"
},
"computer.maxHeight": {
"name": "桌面截图最大高",
"desc": "拼接桌面截图的最大高度(像素),默认 2400,超出会缩放。和 maxWidth 一起控制图像尺寸,以适配模型视觉输入限制和 token 成本。"
},
"computer.maxWidth": {
"name": "桌面截图最大宽",
"desc": "拼接桌面截图的最大宽度(像素),默认 3840,超出会缩放。与 computer.maxHeight 配合限定桌面截图分辨率上限,控制图像 token 成本。"
},
"contextFiles.extra": {
"name": "额外上下文文件名",
"desc": "在 AGENTS.md 之外额外加载的指令文件名。填的是文件名列表而不是路径,例如 [\"AGENTS.local.md\"];[] 表示不额外加载。改完需要开新会话才生效。本项是数组,网页只读,请手工编辑。"
},
"contextPromotion.enabled": {
"name": "溢出升级大窗模型",
"desc": "上下文溢出时,把会话升级(promote)到当前模型声明的 contextPromotionTarget 指定的更大窗口模型继续,而不是做压缩。默认 false。开启能避免压缩丢信息,但大窗模型通常更贵;只对在模型目录里声明了升级目标的模型生效。"
},
"cycleOrder": {
"name": "模型切换循环顺序",
"desc_en": "Order for quickly cycling models in the TUI, default [\"smol\", \"default\", \"slow\"], elements being model role names bound to those roles. Replaced wholesale: project-level config overrides the whole global array.",
"desc": "TUI 里快速循环切换模型时按什么顺序轮转,默认 [\"smol\", \"default\", \"slow\"],元素是模型角色名。注意数组是整体替换语义:项目级配置会整个覆盖全局数组,不是追加。"
},
"debug.enabled": {
"name": "DAP 调试器工具",
"desc": "启用 debug 工具:通过 DAP(Debug Adapter Protocol,调试适配器协议)对运行中的进程下断点、单步、查变量,让模型像人一样用调试器排错。默认开启。"
},
"defaultThinkingLevel": {
"name": "默认思考深度",
"desc": "支持思考的模型的默认推理深度:minimal/low/medium/high/xhigh/max 由浅到深,档位越高推理越细但越慢越贵;auto = 让系统按问题难度自动选档。官方默认 high(本机为 auto)。仅对具备思考能力的模型生效,单次运行可用 --thinking 覆盖。",
"options": [
"minimal",
"low",
"medium",
"high",
"xhigh",
"max",
"auto"
]
},
"dev.autoqa": {
"name": "工具问题自动上报",
"desc": "工具出现异常时自动向官方上报问题报告。默认开启,但首次上报前会征求同意,拒绝后即停用直到你显式重新开启。涉及隐私:上报内容是工具问题信息,介意者可关。PI_AUTO_QA 环境变量可覆盖。"
},
"dev.autoqaConsent": {
"name": "上报同意状态",
"desc_en": "Consent record for automatic issue reporting (dev.autoqa): unset = not asked yet; granted = consented; denied = refused. Default unset (this machine shows denied, i.e. refused). Usually written automatically by the first prompt — no need to edit by hand.",
"desc": "自动问题上报(dev.autoqa)的同意记录:unset = 还没问过;granted = 已同意;denied = 已拒绝。这个值通常由首次询问时自动写入,一般不用手动改。",
"options": [
"unset",
"granted",
"denied"
]
},
"dev.autoqaPush.endpoint": {
"name": "上报接收端点",
"desc": "自动 QA 报告(JSON)的接收 URL,默认 https://qa.omp.sh/v1/grievances。自建收集服务器时改成自己的地址,配合 dev.autoqaPush.token 鉴权。"
},
"dev.autoqaPush.token": {
"name": "上报凭证令牌",
"desc_en": "Auth token for the receiver at dev.autoqaPush.endpoint; credential-type setting, redacted in `omp config list` output. Only needed for self-hosted/private reporting endpoints, unset by default.",
"desc": "dev.autoqaPush.endpoint 接收端的鉴权令牌,属凭据类设置,列表输出会脱敏。只有自建/私有上报服务才需要,默认未设置。"
},
"disabledExtensions": {
"name": "禁用扩展列表",
"desc_en": "Array of disabled extension names, empty by default; listed extensions are not loaded (their MCP servers, tools and context injections all go away) — easier than deleting entries from the extensions array for a temporary pause.",
"desc": "被禁用的扩展名称数组,默认空。列出的扩展不加载——它提供的 MCP 服务器、工具和上下文注入全部失效——而不必从 extensions 数组里删条目,临时停用更方便。"
},
"disabledProviders": {
"name": "禁用提供商/发现源",
"desc_en": "Array of disabled model provider ids, empty by default; listed providers and their models are excluded during discovery and never appear in the model list, e.g. [\"ollama\", \"openrouter\"]. Note the array is replaced wholesale: project-level config overrides rather than merges the global array.",
"desc": "按 id 禁用的名单,默认空;它同时管两类东西:模型提供商(如 anthropic、openai,禁用后其模型从选择器消失)和外部配置发现源(如 claude、codex、cursor,禁用后不再读它们的命令/技能/MCP 配置)。注意数组是整体替换:项目层设置会整个覆盖全局列表,写项目配置时要列全。"
},
"display.advisorCollapsedLines": {
"name": "折叠顾问卡片行数",
"desc": "顾问卡片折叠时在标题下方最多显示几行笔记。0 表示保留完整预览(默认),展开仍用工具输出折叠键。"
},
"display.cacheMissMarker": {
"name": "缓存未命中标记",