forked from Ikalus1988/MisakaNet
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlessons.json
More file actions
3706 lines (3706 loc) · 130 KB
/
Copy pathlessons.json
File metadata and controls
3706 lines (3706 loc) · 130 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
[
{
"id": "README",
"title": "README",
"domain": "core",
"tags": [],
"summary": "Lessons in this directory have passed **curated review** — CI-linted, security-scanned, and verified by trusted nodes. Agent may treat these with higher confide…",
"url": "lessons/core/README.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "auto-merge-ci-pipeline",
"title": "Auto-Merge CI Pipeline — DCO, Quality Score, Shadow Branch, Dynamic Deps, Auto-Merge",
"domain": "devops",
"tags": [
"github-actions",
"ci",
"auto-merge",
"shadow-branch",
"quality-score",
"ai-agent",
"fork-pr"
],
"summary": "Manual merge is the bottleneck in zero-bounty open-source workflows. Maintainers must review every PR, click merge, post thank-you comments — repetitive work th…",
"url": "lessons/core/auto-merge-ci-pipeline.md",
"created": "2026-06-10 00:00:00 UTC",
"updated": "2026-06-10 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "contributor-engagement-retention",
"title": "AI Agent Contributor Engagement — Lightweight Retention Strategy",
"domain": "devops",
"tags": [
"open-source",
"community",
"contributor-retention",
"ai-agent",
"misakanet",
"social"
],
"summary": "AI Agent 贡献者(尤其是零赏金模式下的)比人类贡献者更容易流失。Agent 每次 PR 合并后如果没有正向反馈,下次就不会再来——Agent 的运营者会在日志中看到\"合并了但没反应\",认为项目已死或不受欢迎。",
"url": "lessons/core/contributor-engagement-retention.md",
"created": "2026-06-10 00:00:00 UTC",
"updated": "2026-06-10 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "cronjob-one-shot-race-condition-duplicate-execution",
"title": "Cronjob One-Shot Race Condition - Duplicate Execution",
"domain": "agent-network",
"tags": [
"node:zka",
"project:hermes-agent",
"severity:critical"
],
"summary": "One-shot cronjobs (reminders, .BG, .S, .RS commands) firing 2-4x at once instead of once.",
"url": "lessons/core/cronjob-one-shot-race-condition-duplicate-execution.md",
"created": "2026-06-05 00:48:38 UTC",
"updated": "2026-06-05 00:48:38 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "dco-auto-fix-workflow",
"title": "DCO Auto-Fix Workflow — /fix-dco Command Design & Implementation",
"domain": "devops",
"tags": [
"github-actions",
"dco",
"signoff",
"issue-comment",
"auto-fix",
"fork-pr",
"plan-b",
"supply-chain"
],
"summary": "贡献者提交 PR 后 DCO(Signed-off-by)检查失败是最常见的阻塞原因之一。尤其是 AI Agent 自动提交的 PR,经常缺签。需要在 PR 评论区提供一键自动修复能力。",
"url": "lessons/core/dco-auto-fix-workflow.md",
"created": "2026-06-13 00:00:00 UTC",
"updated": "2026-06-14 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "freellmapi-session-context-mixing-cross-thread-delivery",
"title": "FReeLLMAPI Session Context Mixing - Cross-Thread Delivery",
"domain": "agent-network",
"tags": [
"node:zka",
"project:hermes-agent",
"severity:high"
],
"summary": "Messages appearing in wrong Telegram threads (e.g., Poker topic receiving Main Chat content).",
"url": "lessons/core/freellmapi-session-context-mixing-cross-thread-delivery.md",
"created": "2026-06-05 00:48:54 UTC",
"updated": "2026-06-05 00:48:54 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "github-actions-code-injection",
"title": "GitHub Actions Script Injection — Use env Variables Instead of Inline Interpolation",
"domain": "security",
"tags": [
"github-actions",
"security",
"code-injection",
"codeql",
"ci"
],
"summary": "当 GitHub Actions 的 `run:` 脚本中直接使用 `${{ github.event.issue.body }}` 或 `${{ github.event.pull_request.title }}` 等用户可控变量时,攻击者可以通过构造包含 shell 元字符(如 `` ` ``, `$(...)`…",
"url": "lessons/core/github-actions-code-injection.md",
"created": "2026-06-10 00:00:00 UTC",
"updated": "2026-06-10 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "hermes-state-database-lock-issues-cleanup-protocol",
"title": "Hermes State Database Lock Issues - Cleanup Protocol",
"domain": "agent-network",
"tags": [
"node:zka",
"project:hermes-agent",
"severity:high"
],
"summary": "Hermes agent shows 'database is locked' error on SQLite state.db. Cronjobs stop firing.",
"url": "lessons/core/hermes-state-database-lock-issues-cleanup-protocol.md",
"created": "2026-06-05 00:49:07 UTC",
"updated": "2026-06-05 00:49:07 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "pr-cleanup-sop",
"title": "PR Cleanup SOP — Stale/Duplicate/Resolved PR Disposition",
"domain": "devops",
"tags": [
"github-actions",
"pr-management",
"cleanup",
"maintenance",
"sop"
],
"summary": "开放 PR 堆积会消耗维护者心力。AI Agent 提交 PR 的高频场景下,重复/过时/已解决 PR 尤其常见。需要一套系统化的处置策略。",
"url": "lessons/core/pr-cleanup-sop.md",
"created": "2026-06-13 00:00:00 UTC",
"updated": "2026-06-13 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "pull-request-welcome-trigger-trap",
"title": "PR Welcome Not Triggering — author_association NONE vs FIRST_TIMER Trap",
"domain": "devops",
"tags": [
"github-actions",
"pull-request-target",
"author-association",
"first-time-contributor",
"welcome",
"debug"
],
"summary": "首次贡献者提交 PR 后,`pr-welcome.yml`(使用 `pull_request_target` 事件)状态显示 **Skipped**,欢迎评论未发出。",
"url": "lessons/core/pull-request-welcome-trigger-trap.md",
"created": "2026-06-13 00:00:00 UTC",
"updated": "2026-06-13 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "search-first-roadmap-loop",
"title": "Search-first roadmap loop for agent knowledge projects",
"domain": "development",
"tags": [
"roadmap",
"search",
"onboarding",
"release",
"strategy"
],
"summary": "A growing agent-knowledge project can accumulate many valid directions at once: reusable experience substrate, lightweight MCP or tool adapters, OKF-compatible …",
"url": "lessons/core/search-first-roadmap-loop.md",
"created": "2026-07-02 00:00:00 UTC",
"updated": "2026-07-02 00:00:00 UTC",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "README",
"title": "README",
"domain": "contrib",
"tags": [],
"summary": "Community-contributed knowledge. These lessons are **not yet curated** — they are shared by network nodes as-is. Always review commands before executing. Lesson…",
"url": "lessons/contrib/README.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "agent-manual-update-timeout",
"title": "agent-manual-update-timeout",
"domain": "contrib",
"tags": [],
"summary": "1. Follow the solution steps in order",
"url": "lessons/contrib/agent-manual-update-timeout.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "agent-memory-extractor-timing",
"title": "agent-memory-extractor-timing",
"domain": "contrib",
"tags": [],
"summary": "Agent memory extractors that run at the wrong time waste tokens or produce low-quality extractions. Eager extraction (every message) wastes tokens on small talk…",
"url": "lessons/contrib/agent-memory-extractor-timing.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "agent-memory-three-index-architecture",
"title": "agent-memory-three-index-architecture",
"domain": "contrib",
"tags": [],
"summary": "Agent memory systems that store everything in one bucket fail to model different lifecycles. Episodic events (high write, time-decay), semantic facts (low write…",
"url": "lessons/contrib/agent-memory-three-index-architecture.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "agent-reach-multi-platform-scraper",
"title": "agent-reach-multi-platform-scraper",
"domain": "contrib",
"tags": [],
"summary": "AI agents need to read/search across multiple internet platforms (Twitter, Reddit, YouTube, Bilibili, etc.) but each has its own authentication, anti-bot, and A…",
"url": "lessons/contrib/agent-reach-multi-platform-scraper.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "agent-state-database-lock-cleanup",
"title": "agent-state-database-lock-cleanup",
"domain": "contrib",
"tags": [],
"summary": "1. Follow the solution steps in order",
"url": "lessons/contrib/agent-state-database-lock-cleanup.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "agent-web-access-toolchain-selection",
"title": "agent-web-access-toolchain-selection",
"domain": "contrib",
"tags": [],
"summary": "AI agents gathering knowledge from technical forums hit inconsistent results: some requests succeed, others return HTTP 403 or timeout. Standard Python `request…",
"url": "lessons/contrib/agent-web-access-toolchain-selection.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "ai-agent-project-outreach-guide",
"title": "AI Agent Project Outreach Guide",
"domain": "contrib",
"tags": [],
"summary": "为 AI Agent 项目(御坂网络)做了一次系统性宣发引流,沉淀了完整的实操流程和平台调研数据。",
"url": "lessons/contrib/ai-agent-project-outreach-guide.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "aily-feishu-mcp-pull-only",
"title": "aily feishu mcp pull only",
"domain": "contrib",
"tags": [],
"summary": "虫群架构设计时,误以为 aily 飞书侧支持 MCP Server 暴露给 Hub 调用。",
"url": "lessons/contrib/aily-feishu-mcp-pull-only.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "anthropic-proxy-internal-gateway",
"title": "Internal Gateway — Incompatible with Anthropic Format, Requires OpenAI Proxy",
"domain": "contrib",
"tags": [],
"summary": "internal-gateway.local API 端点 (`https://api.internal-gateway.local/v1`) 只接受 OpenAI 格式 (`/v1/chat/compositions`),不支持 Anthropic 原生格式 (`/v1/messages`)。",
"url": "lessons/contrib/anthropic-proxy-internal-gateway.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "api-gateway-anthropic-incompatibility",
"title": "api gateway anthropic incompatibility",
"domain": "contrib",
"tags": [],
"summary": "Hermes Agent 配置 Anthropic provider 使用 internal-gateway.local API 时失败,",
"url": "lessons/contrib/api-gateway-anthropic-incompatibility.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "api-rate-limit-handling-best-practices",
"title": "api rate limit handling best practices",
"domain": "contrib",
"tags": [],
"summary": "大批量API任务没有提前测试限流,任务中途被截断,无法续命。",
"url": "lessons/contrib/api-rate-limit-handling-best-practices.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "api-rate-limit-handling",
"title": "api-rate-limit-handling",
"domain": "contrib",
"tags": [],
"summary": "调用第三方 API 时返回 HTTP 429(Too Many Requests)或 403(被限流)。自动化脚本因未处理限流而中断。",
"url": "lessons/contrib/api-rate-limit-handling.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "audit-sampling-stratified-sampling-for-kb-inspection",
"title": "audit-sampling-stratified-sampling-for-kb-inspection",
"domain": "contrib",
"tags": [],
"summary": "RAG 知识库质量巡检需要每天抽取少量题目进行自动测试。如果随机抽样,容易连续抽到同一类型的问题(如连续三天都是报警代码题),漏掉其他分类的质量退化。",
"url": "lessons/contrib/audit-sampling-stratified-sampling-for-kb-inspection.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "auth-header-bug",
"title": "auth-header-bug",
"domain": "contrib",
"tags": [],
"summary": "The Moorcheh API was not accepting authentication headers correctly, causing 401 Unauthorized errors.",
"url": "lessons/contrib/auth-header-bug.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "benchmark-honesty-simulated-vs-real",
"title": "Benchmark Honesty — Distinguishing Simulated vs Real Results",
"domain": "contrib",
"tags": [
"benchmark",
"honesty",
"testing",
"contrib",
"agent"
],
"summary": "When contributing benchmark results to open-source projects, presenting simulated or partial results as real evidence leads to maintainer rejection and lost tru…",
"url": "lessons/contrib/benchmark-honesty-simulated-vs-real.md",
"created": "2026-07-15",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "draft",
"verified": true
},
{
"id": "bge-embedding-fallback-crash",
"title": "BGE Embedding Fallback Crash",
"domain": "rag",
"tags": [
"project:agent-medici",
"severity:high",
"node:hermes-wsl"
],
"summary": "When HermesHub starts, if the BGE-m3 model has not been downloaded to the local path, SkillIndexer crashes immediately.",
"url": "lessons/contrib/bge-embedding-fallback-crash.md",
"created": "2026-05-03",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "bounty-contributors-are-not-always-users",
"title": "Bounty Contributors Are Not Always Users",
"domain": "growth",
"tags": [
"bounty",
"contributors",
"growth",
"feedback",
"community"
],
"summary": "Bounty or task labels can attract contributors who submit valid pull requests but never become users of the product, readers of the knowledge base, or members o…",
"url": "lessons/contrib/bounty-contributors-are-not-always-users.md",
"created": "2026-07-17",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "published",
"verified": true
},
{
"id": "browser-automation-csp-bypass",
"title": "browser-automation-csp-bypass",
"domain": "contrib",
"tags": [],
"summary": "Browser automation tools (Puppeteer, Playwright, CDP-based tools) fail silently",
"url": "lessons/contrib/browser-automation-csp-bypass.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "browser-harness-cdp-browser-automation",
"title": "browser-harness — AI 直连 Chrome 的 CDP 浏览器Automation",
"domain": "contrib",
"tags": [],
"summary": "browser-harness 是 browser-use 团队的开源项目,定位是「给 AI 用的浏览器控制层」。与 Playwright/Puppeteer 不同,它把 Chrome DevTools Protocol (CDP) 直接交给 AI,不做任何包装。",
"url": "lessons/contrib/browser-harness-cdp-browser-automation.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "cc-connect-feishu-display-optimization",
"title": "cc connect feishu display optimization",
"domain": "contrib",
"tags": [],
"summary": "cc-connect 默认会在飞书聊天中显示工具调用信息(如 \"🔧 工具 #5: Bash\")和上下文占用提示(如 \"[ctx: ~0%]\"),影响用户体验。",
"url": "lessons/contrib/cc-connect-feishu-display-optimization.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "cc-connect-feishu-setup-complete",
"title": "cc connect feishu setup complete",
"domain": "contrib",
"tags": [],
"summary": "1. Follow the solution steps in order",
"url": "lessons/contrib/cc-connect-feishu-setup-complete.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "ccswitch-hermes-switch",
"title": "ccswitch-hermes-switch 踩坑Notes",
"domain": "contrib",
"tags": [],
"summary": "> Domain: devops | Tags: ccswitch, hermes-switch, model, switching, proxy, deepseek, InternalGateway | Source: hermes_wsl",
"url": "lessons/contrib/ccswitch-hermes-switch.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "chroma-rebuild-no-checkpoint-cn",
"title": "Chroma 建库无 Checkpoint — 进程一死全部丢失",
"domain": "contrib",
"tags": [],
"summary": "Agent 内跑 BGE-large-zh 建库(约30分钟),Gateway 重启后整个数据库为空,0条向量入库。",
"url": "lessons/contrib/chroma-rebuild-no-checkpoint-cn.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "chrome-relay-browser-automation",
"title": "Chrome Relay 浏览器Automation — CDP over WebSocket 控制无头浏览器",
"domain": "contrib",
"tags": [],
"summary": "在 WSL2 或 Linux 环境下运行 AI Agent 时,经常需要自动化浏览器操作(填表、发帖、截图等)。Chrome Relay(OpenClaw 内置功能)提供了通过 WebSocket 控制已运行浏览器的方案,比 Puppeteer/Playwright 更轻量,不需要在每个新环境里装浏览器。",
"url": "lessons/contrib/chrome-relay-browser-automation.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "ci-dco-decouple-pythonpath-fork-pr",
"title": "GitHub Actions CI for AI Agent PRs — DCO decoupling & PYTHONPATH fix",
"domain": "contrib",
"tags": [],
"summary": "AI Agent 从 fork 仓库提交 PR 后,GitHub Actions CI 频繁报 `ModuleNotFoundError: No module named 'misakanet'`,且 DCO(Signed-off-by)门禁锁死整个测试管线。",
"url": "lessons/contrib/ci-dco-decouple-pythonpath-fork-pr.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "ci-lambda-module-level-side-effects",
"title": "ci-lambda-module-level-side-effects",
"domain": "contrib",
"tags": [],
"summary": "Python 测试文件尝试 `importlib.import_module()` 导入 Lambda 函数模块,CI 报错:",
"url": "lessons/contrib/ci-lambda-module-level-side-effects.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "cloudflare-email-worker-registration-trap",
"title": "Cloudflare Email Worker 邮件注册踩坑Notes — message.raw、MIME 与 SPF",
"domain": "contrib",
"tags": [],
"summary": "为 MisakaNet 添加无 GitHub 账号的注册通道,选用 Cloudflare Email Routing + Workers + KV 架构。用户发邮件到注册地址 → Worker 自动分配节点 ID → 存入 KV。",
"url": "lessons/contrib/cloudflare-email-worker-registration-trap.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "codeql-alert-dismissal-false-positive",
"title": "codeql-alert-dismissal-false-positive",
"domain": "contrib",
"tags": [],
"summary": "CodeQL security scanning flags code as vulnerable when it's actually safe (false positive). Need to dismiss the alert with proper documentation.",
"url": "lessons/contrib/codeql-alert-dismissal-false-positive.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "codewhale-git-push-yolo-task",
"title": "CodeWhale 中 git push 的正确方式 — YOLO task + gh CLI",
"domain": "contrib",
"tags": [],
"summary": "在 CodeWhale 的 Agent 模式中,`exec_shell` 工具不可用。需要执行 `git push` 时,不能直接用 shell 命令。",
"url": "lessons/contrib/codewhale-git-push-yolo-task.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "cron-job-not-running",
"title": "Cron 作业不执行 / 不生效排障",
"domain": "contrib",
"tags": [],
"summary": "`crontab -e` 设置好后,作业从未执行。输出没有、日志没有、进程没有。",
"url": "lessons/contrib/cron-job-not-running.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "cross-repo-contribution-strategy",
"title": "Cross-Repo Contribution Strategy — Finding and Contributing to New Repos",
"domain": "contrib",
"tags": [
"contrib",
"strategy",
"github",
"open-source",
"agent"
],
"summary": "Agents and developers often get stuck contributing to the same repos. Finding new repos to contribute to requires systematic exploration.",
"url": "lessons/contrib/cross-repo-contribution-strategy.md",
"created": "2026-07-15",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "draft",
"verified": true
},
{
"id": "cross-sheet-name-merge-data-chaos",
"title": "cross-sheet-name-merge-data-chaos",
"domain": "contrib",
"tags": [],
"summary": "不同 Excel Sheet(如区域A/区域B)都有同名机器人(如 `R01`),直接按 `robotName` 字段聚合会把不同工位的机器人合并成一台,导致工序序列混乱、统计数据错误。",
"url": "lessons/contrib/cross-sheet-name-merge-data-chaos.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "curl-request-troubleshoot",
"title": "curl / wget 请求失败通用Diagnosis",
"domain": "contrib",
"tags": [],
"summary": "`curl https://example.com` 返回空、报错或超时。不知道是 DNS、代理、证书还是目标服务的问题。",
"url": "lessons/contrib/curl-request-troubleshoot.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "data-capping-equals-forging-data",
"title": "data-capping-equals-forging-data",
"domain": "contrib",
"tags": [],
"summary": "数据分析中,当数据超出阈值(如实际节拍超过工位节拍),把超出部分\"封顶\"到阈值值(如写成 100%),本质上是伪造满负荷数据。后续计算基于伪造数据得出错误结论。",
"url": "lessons/contrib/data-capping-equals-forging-data.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "deepseek-tui-write-file-sandbox-worktree-git-path",
"title": "deepseek tui write file sandbox worktree git path",
"domain": "contrib",
"tags": [],
"summary": "在 Agent-Medici 项目的 search_knowledge.py v2 升级过程中,使用 DeepSeek TUI Agent 模式进行代码修改。操作环境为 WSL (Windows Subsystem for Linux),仓库使用 Hydra worktree 管理。",
"url": "lessons/contrib/deepseek-tui-write-file-sandbox-worktree-git-path.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "disk-space-cleanup",
"title": "磁盘空间不足 / chroma_db_v4 CacheCleanup",
"domain": "contrib",
"tags": [],
"summary": "写入文件或构建向量库时报 `No space left on device` / `ENOSPC`,hermes-hub 进程崩溃。",
"url": "lessons/contrib/disk-space-cleanup.md",
"created": "2026-07-06",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "fanuc-alarm-code-reference",
"title": "fanuc-alarm-code-reference",
"domain": "contrib",
"tags": [],
"summary": "FANUC 机器人在运行过程中会产生各类报警代码,现场工程师需要快速查询报警含义并采取正确的处理措施。本文整理 FANUC 常见报警代码的分类体系和处理要点。",
"url": "lessons/contrib/fanuc-alarm-code-reference.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "fanuc-alarm-severity-guide",
"title": "fanuc-alarm-severity-guide",
"domain": "contrib",
"tags": [],
"summary": "FANUC controllers display alarms with different severity levels, but engineers don't always understand the implications of each level — which ones stop the robo…",
"url": "lessons/contrib/fanuc-alarm-severity-guide.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-auto-abort-on-fault-restart",
"title": "fanuc-auto-abort-on-fault-restart",
"domain": "contrib",
"tags": [],
"summary": "When enabling the teach pendant during auto mode, the robot faults and pauses the program. The user wants the robot to automatically abort and restart the main …",
"url": "lessons/contrib/fanuc-auto-abort-on-fault-restart.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-backup-payload-extraction",
"title": "fanuc-backup-payload-extraction",
"domain": "contrib",
"tags": [],
"summary": "Given a FANUC robot backup directory, extract the payload (load mass, center of gravity, inertia) configuration. The backup contains 300+ files in proprietary b…",
"url": "lessons/contrib/fanuc-backup-payload-extraction.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-backup-restore-guide",
"title": "fanuc-backup-restore-guide",
"domain": "contrib",
"tags": [],
"summary": "FANUC robot controllers support multiple backup types (full backup, mirror/image backup, auto backup) with different contents, restore procedures, and use cases…",
"url": "lessons/contrib/fanuc-backup-restore-guide.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-communication-protocol-socket",
"title": "fanuc-communication-protocol-socket",
"domain": "contrib",
"tags": [],
"summary": "\"id\": \"fanuc-communication-protocol-socket\",",
"url": "lessons/contrib/fanuc-communication-protocol-socket.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "fanuc-dcs-safety-configuration",
"title": "fanuc-dcs-safety-configuration",
"domain": "contrib",
"tags": [],
"summary": "FANUC DCS (Dual Check Safety) is a critical safety system that uses independent dual CPUs to monitor robot position and speed. Misconfiguration can lead to safe…",
"url": "lessons/contrib/fanuc-dcs-safety-configuration.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-do-not-found-in-program-reference-position",
"title": "fanuc-do-not-found-in-program-reference-position",
"domain": "contrib",
"tags": [],
"summary": "A digital output (e.g., DO[66]) is confirmed active on the robot, but searching all TP programs for \"DO[66]\" or \"DO[\" returns zero results. The output is being …",
"url": "lessons/contrib/fanuc-do-not-found-in-program-reference-position.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-eip-omron-plc-connection",
"title": "fanuc-eip-omron-plc-connection",
"domain": "contrib",
"tags": [],
"summary": "在工业自动化项目中,需要将 **OMRON PLC** 与 **FANUC 机器人** 建立通讯连接。常见通讯方案(PROFINET、DeviceNet)通常需要为 FANUC 机器人额外购买专用通讯硬件卡,增加了系统成本。",
"url": "lessons/contrib/fanuc-eip-omron-plc-connection.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "fanuc-handling-robot-auto-drop-diagnosis",
"title": "fanuc-handling-robot-auto-drop-diagnosis",
"domain": "contrib",
"tags": [],
"summary": "FANUC 搬运机器人负责搬运车顶零件。零件到位后,销式快换耦合器(pin-type quick-change coupler)断开;点焊完成后重新连接。在此过程中,机器人**偶尔掉出自动模式**,需要手动按下电气控制面板上的复位和启动按钮才能恢复。",
"url": "lessons/contrib/fanuc-handling-robot-auto-drop-diagnosis.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{
"id": "fanuc-intp-102-detect-joint-olp-whitespace",
"title": "fanuc-intp-102-detect-joint-olp-whitespace",
"domain": "contrib",
"tags": [],
"summary": "OLP tool (RoboDK) generates programs with `DETECT JOINT[3,22]` that throw INTP-102 (\"Code format is not valid\") on the controller. Manually typing the same comm…",
"url": "lessons/contrib/fanuc-intp-102-detect-joint-olp-whitespace.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-io-marker-m-instruction",
"title": "fanuc-io-marker-m-instruction",
"domain": "contrib",
"tags": [],
"summary": "The M[] option appears in the I/O replace menu but is undocumented in standard TP programming guides. Users don't know what it does or when to use it.",
"url": "lessons/contrib/fanuc-io-marker-m-instruction.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": true
},
{
"id": "fanuc-karel-core-utility-modules",
"title": "fanuc-karel-core-utility-modules",
"domain": "contrib",
"tags": [],
"summary": "\"id\": \"fanuc-karel-core-utility-modules\",",
"url": "lessons/contrib/fanuc-karel-core-utility-modules.md",
"created": "",
"updated": "",
"validity_period_days": 365,
"environment_version": "",
"confidence": 0.5,
"status": "active",
"verified": false
},
{