@sokeai/cli 1.0.77 → 1.0.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/scripts/install.js +2 -2
- package/scripts/local-test.js +1 -1
- package/scripts/test-auto-detect.js +20 -3
- package/skills/README.md +25 -174
- package/skills/SKILL.md +17 -239
- package/skills/mono/README.md +10 -0
- package/skills/mono/SKILL.md +223 -0
- package/skills/{soke-course/soke-cli/345/256/211/350/243/205/346/214/207/345/215/227.md → mono/references/installation.md} +0 -3
- package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/README.md +1 -3
- package/skills/mono/references/modules/soke-ai-coach-director/platform/soke-ai-training/soke-ai-training.md +123 -0
- package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/self-learning-engine.md +0 -4
- package/skills/{soke-ai-training/SKILL.md → mono/references/modules/soke-ai-training/MODULE.md} +1 -1
- package/skills/mono/references/modules/soke-assign/README.md +308 -0
- package/skills/{soke-certificate/SKILL.md → mono/references/modules/soke-certificate/MODULE.md} +2 -2
- package/skills/mono/references/modules/soke-course/MODULE.md +402 -0
- package/skills/mono/references/modules/soke-course/README.md +291 -0
- package/skills/{soke-course → mono/references/modules/soke-course}/references/examples.md +3 -3
- package/skills/{soke-exam/SKILL.md → mono/references/modules/soke-exam/MODULE.md} +1 -1
- package/skills/{soke-learning-map/SKILL.md → mono/references/modules/soke-learning-map/MODULE.md} +5 -6
- package/skills/{soke-learning-profile/SKILL.md → mono/references/modules/soke-learning-profile/MODULE.md} +2 -2
- package/skills/mono/references/modules/soke-lesson/README.md +53 -0
- package/skills/mono/references/modules/soke-material/README.md +49 -0
- package/skills/{soke-photo-gallery/SKILL.md → mono/references/modules/soke-photo-gallery/MODULE.md} +2 -3
- package/skills/mono/references/modules/soke-supervisor/MODULE.md +186 -0
- package/skills/mono/references/modules/soke-task/MODULE.md +146 -0
- package/skills/{soke-training-demand/SKILL.md → mono/references/modules/soke-training-demand/MODULE.md} +1 -1
- package/skills/mono/references/shared/cli-basics.md +185 -0
- package/skills/mono/scripts/check_readiness.py +28 -0
- package/skills/mono/scripts/gate_check.py +112 -0
- package/skills/mono/scripts/validate_operations.py +403 -0
- package/skills/multi/README.md +18 -0
- package/skills/multi/soke-ai-coach-director/CHANGELOG.md +203 -0
- package/skills/multi/soke-ai-coach-director/README.md +121 -0
- package/skills/multi/soke-ai-coach-director/SKILL.md +220 -0
- package/skills/multi/soke-ai-coach-director/assets/ERRORS-TEMPLATE.md +5 -0
- package/skills/multi/soke-ai-coach-director/assets/FEATURE_REQUESTS-TEMPLATE.md +5 -0
- package/skills/multi/soke-ai-coach-director/assets/LEARNINGS-TEMPLATE.md +44 -0
- package/skills/multi/soke-ai-coach-director/assets/SKILL-TEMPLATE.md +177 -0
- package/skills/multi/soke-ai-coach-director/coaching/knowledge-packager/knowledge-packager.md +91 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part1-basic.md +59 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part2-roles.md +97 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part3-flow.md +72 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part4-scoring.md +87 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part5-constraints.md +48 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/prompt-engineer.md +76 -0
- package/skills/multi/soke-ai-coach-director/coaching/prompt-optimizer/prompt-optimizer.md +381 -0
- package/skills/multi/soke-ai-coach-director/coaching/role-profiler/role-profiler.md +87 -0
- package/skills/multi/soke-ai-coach-director/platform/adapters/README.md +68 -0
- package/skills/multi/soke-ai-coach-director/platform/adapters/qclaw.md +67 -0
- package/skills/multi/soke-ai-coach-director/platform/adapters/workbuddy.md +44 -0
- package/skills/multi/soke-ai-coach-director/platform/adapters/wukong.md +70 -0
- package/skills/multi/soke-ai-coach-director/platform/adapters/zework.md +89 -0
- package/skills/multi/soke-ai-coach-director/platform/api-fallback.md +262 -0
- package/skills/multi/soke-ai-coach-director/platform/interaction.md +103 -0
- package/skills/multi/soke-ai-coach-director/platform/publish-gate.md +44 -0
- package/skills/multi/soke-ai-coach-director/platform/resource-finalizer.md +103 -0
- package/skills/{soke-ai-coach-director → multi/soke-ai-coach-director}/platform/soke-ai-training/soke-ai-training.md +1 -1
- package/skills/multi/soke-ai-coach-director/platform/sync-engine.md +39 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/345/256/242/346/210/267/350/247/222/350/211/262/346/250/241/346/235/277/345/272/223.md +265 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203Bad Case/346/240/267/346/234/254/345/272/223.md" +206 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/345/210/233/345/273/272/351/227/256/351/242/230/345/272/223.md +666 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/345/234/272/346/231/257/345/210/206/347/261/273/345/272/223.md +213 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/345/256/242/346/210/267/346/235/220/346/226/231/346/270/205/345/215/225/344/270/216/350/256/277/350/260/210/351/242/230/345/272/223.md +229 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/345/276/256/350/260/203/351/227/256/351/242/230/345/272/223.md +833 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/346/212/200/346/234/257/350/276/271/347/225/214/344/270/216/346/216/222/351/232/234/345/272/223.md +239 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/346/217/220/347/244/272/350/257/215/346/250/241/345/235/227/345/272/223.md +249 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/346/225/260/346/215/256/346/214/207/346/240/207/344/270/216/347/234/213/346/235/277/345/217/243/345/276/204/345/272/223.md +282 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/346/265/213/350/257/225/347/224/250/344/276/213/345/272/223.md +254 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/350/257/204/345/210/206/346/240/207/345/207/206/347/273/204/344/273/266/345/272/223.md +264 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/231/252/347/273/203/351/241/271/347/233/256/346/241/210/344/276/213/345/244/215/347/233/230/345/272/223.md +223 -0
- package/skills/multi/soke-ai-coach-director/references/cases/AI/351/241/276/345/256/242/350/247/222/350/211/262/346/250/241/346/213/237_GoodCase_BadCase_20260701.md +304 -0
- package/skills/multi/soke-ai-coach-director/references/cases/create//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/224/265/350/257/235/347/272/246/350/256/277//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/345/256/242/346/210/267/346/235/220/346/226/231/346/261/207/346/200/273_2026-05-19_1341.md +42 -0
- package/skills/multi/soke-ai-coach-director/references/cases/create//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267/347/237/245/350/257/206/345/272/223/347/224/237/346/210/220_20260615.md +23 -0
- package/skills/multi/soke-ai-coach-director/references/cases/create//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267/351/231/252/347/273/203/346/217/220/347/244/272/350/257/215/347/224/237/346/210/220_20260615.md +34 -0
- package/skills/multi/soke-ai-coach-director/references/cases/create//346/237/220/345/233/275/351/231/205/346/243/200/346/265/213/346/234/272/346/236/204//346/237/220/345/233/275/351/231/205/346/243/200/346/265/213/346/234/272/346/236/204/351/231/252/347/273/203/346/211/247/350/241/214/346/226/271/346/241/210/344/272/244/344/273/230/350/256/260/345/275/225_20260610.md +26 -0
- package/skills/multi/soke-ai-coach-director/references/cases/create//351/231/214/346/213/234/344/277/241/346/201/257/346/224/266/351/233/206//351/231/214/346/213/234/344/277/241/346/201/257/346/224/266/351/233/206_/346/217/220/347/244/272/350/257/215/346/220/255/345/273/272_20260622.md +30 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_V1.2_20260616.md +254 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215_/345/216/213/347/274/251/347/211/210_V2.0_20260616.md +96 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215/344/274/230/345/214/226_20260616.md +20 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277AI/351/231/252/347/273/203/347/263/273/347/273/237_/346/265/213/350/257/225/345/217/215/351/246/210/346/261/207/346/200/273_2026-06-01.md +434 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277KYC/344/277/241/344/273/273/345/200/274/347/246/201/344/273/244_2026-06-09_0932.md +22 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277KYC/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_v2_20260608.md +261 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_v1.2.md +354 -0
- package/skills/multi/soke-ai-coach-director/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/346/217/220/347/244/272/350/257/215/344/274/230/345/214/226_V2_/350/257/212/346/226/255/344/272/244/344/273/230_20260609.md +26 -0
- package/skills/multi/soke-ai-coach-director/references/cases//345/233/233/345/244/247/345/234/272/346/231/257_GoodCase_BadCase_20260701.md +194 -0
- package/skills/multi/soke-ai-coach-director/references/cases//346/241/210/344/276/213/345/272/223/350/241/245/345/205/205_2026-06-24.md +41 -0
- package/skills/multi/soke-ai-coach-director/references/change-log-partwise-refactor.md +74 -0
- package/skills/multi/soke-ai-coach-director/references/env-check.md +146 -0
- package/skills/multi/soke-ai-coach-director/references/exec-common.md +126 -0
- package/skills/multi/soke-ai-coach-director/references/exec-handbook.md +621 -0
- package/skills/multi/soke-ai-coach-director/references/exec-part1.md +86 -0
- package/skills/multi/soke-ai-coach-director/references/exec-part2.md +145 -0
- package/skills/multi/soke-ai-coach-director/references/exec-part3.md +91 -0
- package/skills/multi/soke-ai-coach-director/references/exec-part4.md +187 -0
- package/skills/multi/soke-ai-coach-director/references/gate-check-matrix.md +46 -0
- package/skills/{soke-learning-map/soke-cli/345/256/211/350/243/205/346/214/207/345/215/227.md → multi/soke-ai-coach-director/references/installation.md} +0 -3
- package/skills/multi/soke-ai-coach-director/references/micro-tune-labels.md +30 -0
- package/skills/multi/soke-ai-coach-director/references/platform-api-pitfalls.md +49 -0
- package/skills/multi/soke-ai-coach-director/references/role-resource-matching.md +45 -0
- package/skills/multi/soke-ai-coach-director/references/self-improvement-examples.md +373 -0
- package/skills/multi/soke-ai-coach-director/references/self-learning-engine.md +485 -0
- package/skills/multi/soke-ai-coach-director/references/shared.md +185 -0
- package/skills/multi/soke-ai-coach-director/references/subs/part1/SOP.md +17 -0
- package/skills/multi/soke-ai-coach-director/references/subs/part2/SOP.md +34 -0
- package/skills/multi/soke-ai-coach-director/references/subs/part3/SOP.md +27 -0
- package/skills/multi/soke-ai-coach-director/references/subs/part4/SOP.md +31 -0
- package/skills/multi/soke-ai-coach-director/references/subs/publish/SOP.md +81 -0
- package/skills/multi/soke-ai-coach-director/references/subs/tune/SOP.md +92 -0
- package/skills/multi/soke-ai-coach-director/references/verified-cli-cheatsheet.md +56 -0
- package/skills/multi/soke-ai-coach-director/scripts/gate_check.py +112 -0
- package/skills/multi/soke-ai-coach-director/scripts/validate_operations.py +403 -0
- package/skills/multi/soke-ai-training/SKILL.md +247 -0
- package/skills/{soke-cli/345/256/211/350/243/205/346/214/207/345/215/227.md → multi/soke-ai-training/references/installation.md} +0 -3
- package/skills/multi/soke-ai-training/references/shared.md +185 -0
- package/skills/{soke-assign → multi/soke-assign}/README.md +3 -5
- package/skills/multi/soke-assign/SKILL.md +101 -0
- package/skills/{soke-course/SKILL.md → multi/soke-assign/references/dependencies/soke-course.md} +1 -1
- package/skills/multi/soke-assign/references/dependencies/soke-exam.md +600 -0
- package/skills/multi/soke-assign/references/installation.md +451 -0
- package/skills/multi/soke-assign/references/shared.md +185 -0
- package/skills/multi/soke-certificate/SKILL.md +715 -0
- package/skills/multi/soke-certificate/references/installation.md +451 -0
- package/skills/multi/soke-certificate/references/shared.md +185 -0
- package/skills/{soke-course → multi/soke-course}/README.md +5 -7
- package/skills/multi/soke-course/SKILL.md +399 -0
- package/skills/multi/soke-course/agents/openai.yaml +7 -0
- package/skills/multi/soke-course/examples/create-basic.md +70 -0
- package/skills/multi/soke-course/references/course-list-courses.md +216 -0
- package/skills/multi/soke-course/references/dependencies/soke-assign.md +103 -0
- package/skills/multi/soke-course/references/dependencies/soke-lesson.md +119 -0
- package/skills/multi/soke-course/references/dependencies/soke-material.md +105 -0
- package/skills/multi/soke-course/references/examples.md +480 -0
- package/skills/multi/soke-course/references/installation.md +451 -0
- package/skills/multi/soke-course/references/intent-cases.md +99 -0
- package/skills/multi/soke-course/references/shared.md +185 -0
- package/skills/multi/soke-course/references/sop-full-workflow.md +177 -0
- package/skills/multi/soke-course/references/sop-lesson-types.md +66 -0
- package/skills/multi/soke-course/references/sop-publish-check.md +76 -0
- package/skills/multi/soke-course/references/subs/ai/SOP.md +153 -0
- package/skills/multi/soke-course/references/subs/category/SOP.md +112 -0
- package/skills/multi/soke-course/references/subs/charge/SOP.md +107 -0
- package/skills/multi/soke-course/references/subs/copy/SOP.md +80 -0
- package/skills/multi/soke-course/references/subs/publish/SOP.md +168 -0
- package/skills/multi/soke-course/references/subs/query/SOP.md +165 -0
- package/skills/multi/soke-course/references/subs/settings/SOP.md +136 -0
- package/skills/multi/soke-course/references/subs/template/SOP.md +223 -0
- package/skills/multi/soke-course/references/troubleshoot.md +68 -0
- package/skills/multi/soke-course/scripts/check_readiness.py +87 -0
- package/skills/multi/soke-exam/SKILL.md +598 -0
- package/skills/multi/soke-exam/references/exam-get-exam-user.md +212 -0
- package/skills/multi/soke-exam/references/installation.md +451 -0
- package/skills/multi/soke-exam/references/shared.md +185 -0
- package/skills/multi/soke-exam-question-pool/SKILL.md +121 -0
- package/skills/multi/soke-exam-question-pool/references/installation.md +451 -0
- package/skills/multi/soke-exam-question-pool/references/shared.md +185 -0
- package/skills/multi/soke-learning-map/SKILL.md +553 -0
- package/skills/multi/soke-learning-map/references/dependencies/soke-assign.md +103 -0
- package/skills/{soke-task/SKILL.md → multi/soke-learning-map/references/dependencies/soke-task.md} +1 -1
- package/skills/multi/soke-learning-map/references/installation.md +451 -0
- package/skills/multi/soke-learning-map/references/shared.md +185 -0
- package/skills/multi/soke-learning-profile/SKILL.md +221 -0
- package/skills/multi/soke-learning-profile/references/installation.md +451 -0
- package/skills/multi/soke-learning-profile/references/shared.md +185 -0
- package/skills/multi/soke-lesson/SKILL.md +117 -0
- package/skills/multi/soke-lesson/references/installation.md +451 -0
- package/skills/multi/soke-lesson/references/shared.md +185 -0
- package/skills/multi/soke-material/SKILL.md +103 -0
- package/skills/multi/soke-material/references/installation.md +451 -0
- package/skills/multi/soke-material/references/shared.md +185 -0
- package/skills/multi/soke-photo-gallery/SKILL.md +284 -0
- package/skills/multi/soke-photo-gallery/references/installation.md +451 -0
- package/skills/multi/soke-photo-gallery/references/shared.md +185 -0
- package/skills/multi/soke-shared/SKILL.md +183 -0
- package/skills/multi/soke-supervisor/SKILL.md +184 -0
- package/skills/multi/soke-supervisor/references/installation.md +451 -0
- package/skills/multi/soke-supervisor/references/shared.md +185 -0
- package/skills/multi/soke-task/SKILL.md +144 -0
- package/skills/multi/soke-task/references/installation.md +451 -0
- package/skills/multi/soke-task/references/shared.md +185 -0
- package/skills/multi/soke-training-demand/SKILL.md +219 -0
- package/skills/multi/soke-training-demand/references/installation.md +451 -0
- package/skills/multi/soke-training-demand/references/shared.md +185 -0
- package/skills/soke-ai-coach-director/scripts/activator.sh +0 -4
- package/skills/soke-ai-coach-director/scripts/error-detector.sh +0 -4
- package/skills/soke-ai-coach-director/scripts/extract-skill.sh +0 -7
- package/skills/soke-course/scripts/check_readiness.sh +0 -82
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/345/256/242/346/210/267/350/247/222/350/211/262/346/250/241/346/235/277/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203Bad Case/346/240/267/346/234/254/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/345/210/233/345/273/272/351/227/256/351/242/230/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/345/234/272/346/231/257/345/210/206/347/261/273/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/345/256/242/346/210/267/346/235/220/346/226/231/346/270/205/345/215/225/344/270/216/350/256/277/350/260/210/351/242/230/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/345/276/256/350/260/203/351/227/256/351/242/230/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/346/212/200/346/234/257/350/276/271/347/225/214/344/270/216/346/216/222/351/232/234/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/346/217/220/347/244/272/350/257/215/346/250/241/345/235/227/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/346/225/260/346/215/256/346/214/207/346/240/207/344/270/216/347/234/213/346/235/277/345/217/243/345/276/204/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/346/265/213/350/257/225/347/224/250/344/276/213/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/350/257/204/345/210/206/346/240/207/345/207/206/347/273/204/344/273/266/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/231/252/347/273/203/351/241/271/347/233/256/346/241/210/344/276/213/345/244/215/347/233/230/345/272/223.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/AI/351/241/276/345/256/242/350/247/222/350/211/262/346/250/241/346/213/237_GoodCase_BadCase_20260701.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/create//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/224/265/350/257/235/347/272/246/350/256/277//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/345/256/242/346/210/267/346/235/220/346/226/231/346/261/207/346/200/273_2026-05-19_1341.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/create//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267/347/237/245/350/257/206/345/272/223/347/224/237/346/210/220_20260615.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/create//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267//346/226/260/350/203/275/346/272/220/350/275/246/344/270/273/350/264/267/351/231/252/347/273/203/346/217/220/347/244/272/350/257/215/347/224/237/346/210/220_20260615.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/create//346/237/220/345/233/275/351/231/205/346/243/200/346/265/213/346/234/272/346/236/204//346/237/220/345/233/275/351/231/205/346/243/200/346/265/213/346/234/272/346/236/204/351/231/252/347/273/203/346/211/247/350/241/214/346/226/271/346/241/210/344/272/244/344/273/230/350/256/260/345/275/225_20260610.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/create//351/231/214/346/213/234/344/277/241/346/201/257/346/224/266/351/233/206//351/231/214/346/213/234/344/277/241/346/201/257/346/224/266/351/233/206_/346/217/220/347/244/272/350/257/215/346/220/255/345/273/272_20260622.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_V1.2_20260616.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215_/345/216/213/347/274/251/347/211/210_V2.0_20260616.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215/344/274/230/345/214/226_20260616.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277AI/351/231/252/347/273/203/347/263/273/347/273/237_/346/265/213/350/257/225/345/217/215/351/246/210/346/261/207/346/200/273_2026-06-01.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277KYC/344/277/241/344/273/273/345/200/274/347/246/201/344/273/244_2026-06-09_0932.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277KYC/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_v2_20260608.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_v1.2.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/346/217/220/347/244/272/350/257/215/344/274/230/345/214/226_V2_/350/257/212/346/226/255/344/272/244/344/273/230_20260609.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases//345/233/233/345/244/247/345/234/272/346/231/257_GoodCase_BadCase_20260701.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono}/references/cases//346/241/210/344/276/213/345/272/223/350/241/245/345/205/205_2026-06-24.md" +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/CHANGELOG.md +0 -0
- /package/skills/{soke-ai-coach-director/SKILL.md → mono/references/modules/soke-ai-coach-director/MODULE.md} +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/ERRORS-TEMPLATE.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/FEATURE_REQUESTS-TEMPLATE.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/LEARNINGS-TEMPLATE.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/SKILL-TEMPLATE.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/knowledge-packager/knowledge-packager.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part1-basic.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part2-roles.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part3-flow.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part4-scoring.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part5-constraints.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/prompt-engineer.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-optimizer/prompt-optimizer.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/role-profiler/role-profiler.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/README.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/qclaw.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/workbuddy.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/wukong.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/zework.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/api-fallback.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/interaction.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/publish-gate.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/resource-finalizer.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/sync-engine.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/change-log-partwise-refactor.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/env-check.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-common.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-handbook.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part1.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part2.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part3.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part4.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/gate-check-matrix.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/micro-tune-labels.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/platform-api-pitfalls.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/role-resource-matching.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/self-improvement-examples.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part1/SOP.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part2/SOP.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part3/SOP.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part4/SOP.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/publish/SOP.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/tune/SOP.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/verified-cli-cheatsheet.md +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/gate_check.py +0 -0
- /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/validate_operations.py +0 -0
- /package/skills/{soke-assign/SKILL.md → mono/references/modules/soke-assign/MODULE.md} +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/agents/openai.yaml +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/examples/create-basic.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/course-list-courses.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/intent-cases.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-full-workflow.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-lesson-types.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-publish-check.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/ai/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/category/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/charge/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/copy/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/publish/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/query/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/settings/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/template/SOP.md +0 -0
- /package/skills/{soke-course → mono/references/modules/soke-course}/references/troubleshoot.md +0 -0
- /package/skills/{soke-exam → mono/references/modules/soke-exam}/references/exam-get-exam-user.md +0 -0
- /package/skills/{soke-exam-question-pool/SKILL.md → mono/references/modules/soke-exam-question-pool/MODULE.md} +0 -0
- /package/skills/{soke-lesson/SKILL.md → mono/references/modules/soke-lesson/MODULE.md} +0 -0
- /package/skills/{soke-material/SKILL.md → mono/references/modules/soke-material/MODULE.md} +0 -0
- /package/skills/{soke-shared/SKILL.md → mono/references/modules/soke-shared/MODULE.md} +0 -0
- /package/skills/{soke-ai-coach-director → multi/soke-ai-coach-director}/references/cases/micro-tune//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/347/263/273/345/210/227//344/274/201/344/270/232/345/256/266/347/216/213/346/200/273/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_V1.1_20260616.md" +0 -0
- /package/skills/{soke-ai-coach-director → multi/soke-ai-coach-director}/references/cases/micro-tune//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/347/263/273/345/210/227//345/206/234/346/210/267/345/274/240/350/200/201/346/235/277/346/217/220/347/244/272/350/257/215_/344/274/230/345/214/226/347/211/210_v1.1.md" +0 -0
- /package/skills/{soke-lesson → multi/soke-lesson}/README.md +0 -0
- /package/skills/{soke-material → multi/soke-material}/README.md +0 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Part2 平台资源自动匹配规则
|
|
2
|
+
|
|
3
|
+
> Part2 用户确认后、生成 `part2-operations.json` 前,后台自动执行。头像/语音不在展示阶段预设,匹配结果随 `replace_ai_roles` 整包写入,不向用户二次确认。
|
|
4
|
+
|
|
5
|
+
## 特征提取(映射为 CLI 过滤参数)
|
|
6
|
+
|
|
7
|
+
**性别 gender**:男/先生/他/男性名字(建国、志强…)→`male`;女/女士/她/女性名字(芳、丽、敏…)→`female`;无则不传。优先级:name > description > background > MBTI推断。
|
|
8
|
+
|
|
9
|
+
**年龄 age_group**:青年/25-35/新手→`youth`;中年/35-50/经理/主管→`middle-aged`;老年/50+/退休→`senior`;无则不传。优先级:background > description > name。
|
|
10
|
+
|
|
11
|
+
## CLI 查询(v2.37:全重定向,禁止 --pretty 直出)
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# 头像(全量重定向到 /tmp/avatars.json,Python 按性别/年龄过滤提取 url)
|
|
15
|
+
soke-cli ai-training +list-role-avatars --lang zh --show-detail > /tmp/avatars.json 2>/dev/null
|
|
16
|
+
# 声音(全量重定向到 /tmp/voices.json,Python 按性别过滤提取 id)
|
|
17
|
+
soke-cli ai-training +list-role-voices --lang zh > /tmp/voices.json 2>/dev/null
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
> ⚠️ v2.37 起 `--gender` / `--age-group` 参数在 `+list-role-avatars` 不可用(CLI 不支持),改为全量重定向后 Python 本地过滤。`+list-role-voices` 支持 `--gender` 但仍重定向。
|
|
21
|
+
|
|
22
|
+
**Python 提取示例**:
|
|
23
|
+
```python
|
|
24
|
+
import json
|
|
25
|
+
avatars = json.load(open('/tmp/avatars.json'))
|
|
26
|
+
# 按性别/年龄关键词过滤 title 字段
|
|
27
|
+
for a in avatars:
|
|
28
|
+
if '男' in a.get('title','') and '高管' in a.get('title',''):
|
|
29
|
+
print(a['url']) # 取第一个匹配
|
|
30
|
+
break
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**P0-P3 选取**:P0 性别+年龄吻合取第 1 条 → P1 仅性别 → P2 仅年龄 → P3 全量第 1 条默认资源。降级链路:一阶 → 去 age-group → 去 gender → 全量,每次降级记录。
|
|
34
|
+
|
|
35
|
+
## 写入规范
|
|
36
|
+
|
|
37
|
+
- `role_data.avatar` = 头像 **URL**(来自 `+list-role-avatars` 的 `url` 字段,❌ 不能用资源 id)。
|
|
38
|
+
- `role_data.voice_id` = 声音 **ID**(来自 `+list-role-voices` 的 `id` 字段,❌ 不能用 sample_url/名称)。
|
|
39
|
+
- 头像+语音合并写入**同一个角色的 role_data**(随 `replace_ai_roles` 整包一次写入),禁止分开操作(分开会导致 updated_at 竞态)。
|
|
40
|
+
|
|
41
|
+
## 验证与异常
|
|
42
|
+
|
|
43
|
+
- apply 后 `get-scenario` 验证每个角色 avatar 非空 URL + voice_id 非空 ID,失败重读 updated_at 重试 1 次。
|
|
44
|
+
- 仍失败或库查询失败 → 标注「资源匹配未完成」,**不阻断后续 Part**,仅影响发布闸门时提示。
|
|
45
|
+
- soke-cli 不可用时降级 REST 回填(见 `platform/api-fallback.md`,匹配规则与 CLI 完全一致)。
|
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
# Entry Examples
|
|
2
|
+
|
|
3
|
+
> **v2.35 标注:本文件仅微调型任务加载,创建型任务不读。**
|
|
4
|
+
|
|
5
|
+
Concrete examples of well-formatted entries with all fields.
|
|
6
|
+
|
|
7
|
+
## Learning: Correction
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
## [LRN-20250115-001] correction
|
|
11
|
+
|
|
12
|
+
**Logged**: 2025-01-15T10:30:00Z
|
|
13
|
+
**Priority**: high
|
|
14
|
+
**Status**: pending
|
|
15
|
+
**Area**: tests
|
|
16
|
+
|
|
17
|
+
### Summary
|
|
18
|
+
Incorrectly assumed pytest fixtures are scoped to function by default
|
|
19
|
+
|
|
20
|
+
### Details
|
|
21
|
+
When writing test fixtures, I assumed all fixtures were function-scoped.
|
|
22
|
+
User corrected that while function scope is the default, the codebase
|
|
23
|
+
convention uses module-scoped fixtures for database connections to
|
|
24
|
+
improve test performance.
|
|
25
|
+
|
|
26
|
+
### Suggested Action
|
|
27
|
+
When creating fixtures that involve expensive setup (DB, network),
|
|
28
|
+
check existing fixtures for scope patterns before defaulting to function scope.
|
|
29
|
+
|
|
30
|
+
### Metadata
|
|
31
|
+
- Source: user_feedback
|
|
32
|
+
- Related Files: tests/conftest.py
|
|
33
|
+
- Tags: pytest, testing, fixtures
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Learning: Knowledge Gap (Resolved)
|
|
39
|
+
|
|
40
|
+
```markdown
|
|
41
|
+
## [LRN-20250115-002] knowledge_gap
|
|
42
|
+
|
|
43
|
+
**Logged**: 2025-01-15T14:22:00Z
|
|
44
|
+
**Priority**: medium
|
|
45
|
+
**Status**: resolved
|
|
46
|
+
**Area**: config
|
|
47
|
+
|
|
48
|
+
### Summary
|
|
49
|
+
Project uses pnpm not npm for package management
|
|
50
|
+
|
|
51
|
+
### Details
|
|
52
|
+
Attempted to run `npm install` but project uses pnpm workspaces.
|
|
53
|
+
Lock file is `pnpm-lock.yaml`, not `package-lock.json`.
|
|
54
|
+
|
|
55
|
+
### Suggested Action
|
|
56
|
+
Check for `pnpm-lock.yaml` or `pnpm-workspace.yaml` before assuming npm.
|
|
57
|
+
Use `pnpm install` for this project.
|
|
58
|
+
|
|
59
|
+
### Metadata
|
|
60
|
+
- Source: error
|
|
61
|
+
- Related Files: pnpm-lock.yaml, pnpm-workspace.yaml
|
|
62
|
+
- Tags: package-manager, pnpm, setup
|
|
63
|
+
|
|
64
|
+
### Resolution
|
|
65
|
+
- **Resolved**: 2025-01-15T14:30:00Z
|
|
66
|
+
- **Commit/PR**: N/A - knowledge update
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
```markdown
|
|
73
|
+
## [LRN-20250115-003] best_practice
|
|
74
|
+
|
|
75
|
+
**Logged**: 2025-01-15T16:00:00Z
|
|
76
|
+
**Priority**: high
|
|
77
|
+
**Status**: promoted
|
|
78
|
+
**Area**: backend
|
|
79
|
+
|
|
80
|
+
### Summary
|
|
81
|
+
API responses must include correlation ID from request headers
|
|
82
|
+
|
|
83
|
+
### Details
|
|
84
|
+
All API responses should echo back the X-Correlation-ID header from
|
|
85
|
+
the request. This is required for distributed tracing. Responses
|
|
86
|
+
without this header break the observability pipeline.
|
|
87
|
+
|
|
88
|
+
### Suggested Action
|
|
89
|
+
Always include correlation ID passthrough in API handlers.
|
|
90
|
+
|
|
91
|
+
### Metadata
|
|
92
|
+
- Source: user_feedback
|
|
93
|
+
- Related Files: src/middleware/correlation.ts
|
|
94
|
+
- Tags: api, observability, tracing
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Learning: Promoted to AGENTS.md
|
|
100
|
+
|
|
101
|
+
```markdown
|
|
102
|
+
## [LRN-20250116-001] best_practice
|
|
103
|
+
|
|
104
|
+
**Logged**: 2025-01-16T09:00:00Z
|
|
105
|
+
**Priority**: high
|
|
106
|
+
**Status**: promoted
|
|
107
|
+
**Promoted**: AGENTS.md
|
|
108
|
+
**Area**: backend
|
|
109
|
+
|
|
110
|
+
### Summary
|
|
111
|
+
Must regenerate API client after OpenAPI spec changes
|
|
112
|
+
|
|
113
|
+
### Details
|
|
114
|
+
When modifying API endpoints, the TypeScript client must be regenerated.
|
|
115
|
+
Forgetting this causes type mismatches that only appear at runtime.
|
|
116
|
+
The generate script also runs validation.
|
|
117
|
+
|
|
118
|
+
### Suggested Action
|
|
119
|
+
Add to agent workflow: after any API changes, run `pnpm run generate:api`.
|
|
120
|
+
|
|
121
|
+
### Metadata
|
|
122
|
+
- Source: error
|
|
123
|
+
- Related Files: openapi.yaml, src/client/api.ts
|
|
124
|
+
- Tags: api, codegen, typescript
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Error Entry
|
|
130
|
+
|
|
131
|
+
```markdown
|
|
132
|
+
## [ERR-20250115-A3F] docker_build
|
|
133
|
+
|
|
134
|
+
**Logged**: 2025-01-15T09:15:00Z
|
|
135
|
+
**Priority**: high
|
|
136
|
+
**Status**: pending
|
|
137
|
+
**Area**: infra
|
|
138
|
+
|
|
139
|
+
### Summary
|
|
140
|
+
Docker build fails on M1 Mac due to platform mismatch
|
|
141
|
+
|
|
142
|
+
### Error
|
|
143
|
+
```
|
|
144
|
+
error: failed to solve: python:3.11-slim: no match for platform linux/arm64
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Context
|
|
148
|
+
- Command: `docker build -t myapp .`
|
|
149
|
+
- Dockerfile uses `FROM python:3.11-slim`
|
|
150
|
+
- Running on Apple Silicon (M1/M2)
|
|
151
|
+
|
|
152
|
+
### Suggested Fix
|
|
153
|
+
Add platform flag: `docker build --platform linux/amd64 -t myapp .`
|
|
154
|
+
Or update Dockerfile: `FROM --platform=linux/amd64 python:3.11-slim`
|
|
155
|
+
|
|
156
|
+
### Metadata
|
|
157
|
+
- Reproducible: yes
|
|
158
|
+
- Related Files: Dockerfile
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## Error Entry: Recurring Issue
|
|
164
|
+
|
|
165
|
+
```markdown
|
|
166
|
+
## [ERR-20250120-B2C] api_timeout
|
|
167
|
+
|
|
168
|
+
**Logged**: 2025-01-20T11:30:00Z
|
|
169
|
+
**Priority**: critical
|
|
170
|
+
**Status**: pending
|
|
171
|
+
**Area**: backend
|
|
172
|
+
|
|
173
|
+
### Summary
|
|
174
|
+
Third-party payment API timeout during checkout
|
|
175
|
+
|
|
176
|
+
### Error
|
|
177
|
+
```
|
|
178
|
+
TimeoutError: Request to payments.example.com timed out after 30000ms
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### Context
|
|
182
|
+
- Command: POST /api/checkout
|
|
183
|
+
- Timeout set to 30s
|
|
184
|
+
- Occurs during peak hours (lunch, evening)
|
|
185
|
+
|
|
186
|
+
### Suggested Fix
|
|
187
|
+
Implement retry with exponential backoff. Consider circuit breaker pattern.
|
|
188
|
+
|
|
189
|
+
### Metadata
|
|
190
|
+
- Reproducible: yes (during peak hours)
|
|
191
|
+
- Related Files: src/services/payment.ts
|
|
192
|
+
- See Also: ERR-20250115-X1Y, ERR-20250118-Z3W
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Feature Request
|
|
198
|
+
|
|
199
|
+
```markdown
|
|
200
|
+
## [FEAT-20250115-001] export_to_csv
|
|
201
|
+
|
|
202
|
+
**Logged**: 2025-01-15T16:45:00Z
|
|
203
|
+
**Priority**: medium
|
|
204
|
+
**Status**: pending
|
|
205
|
+
**Area**: backend
|
|
206
|
+
|
|
207
|
+
### Requested Capability
|
|
208
|
+
Export analysis results to CSV format
|
|
209
|
+
|
|
210
|
+
### User Context
|
|
211
|
+
User runs weekly reports and needs to share results with non-technical
|
|
212
|
+
stakeholders in Excel. Currently copies output manually.
|
|
213
|
+
|
|
214
|
+
### Complexity Estimate
|
|
215
|
+
simple
|
|
216
|
+
|
|
217
|
+
### Suggested Implementation
|
|
218
|
+
Add `--output csv` flag to the analyze command. Use standard csv module.
|
|
219
|
+
Could extend existing `--output json` pattern.
|
|
220
|
+
|
|
221
|
+
### Metadata
|
|
222
|
+
- Frequency: recurring
|
|
223
|
+
- Related Features: analyze command, json output
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
## Feature Request: Resolved
|
|
229
|
+
|
|
230
|
+
```markdown
|
|
231
|
+
## [FEAT-20250110-002] dark_mode
|
|
232
|
+
|
|
233
|
+
**Logged**: 2025-01-10T14:00:00Z
|
|
234
|
+
**Priority**: low
|
|
235
|
+
**Status**: resolved
|
|
236
|
+
**Area**: frontend
|
|
237
|
+
|
|
238
|
+
### Requested Capability
|
|
239
|
+
Dark mode support for the dashboard
|
|
240
|
+
|
|
241
|
+
### User Context
|
|
242
|
+
User works late hours and finds the bright interface straining.
|
|
243
|
+
Several other users have mentioned this informally.
|
|
244
|
+
|
|
245
|
+
### Complexity Estimate
|
|
246
|
+
medium
|
|
247
|
+
|
|
248
|
+
### Suggested Implementation
|
|
249
|
+
Use CSS variables for colors. Add toggle in user settings.
|
|
250
|
+
Consider system preference detection.
|
|
251
|
+
|
|
252
|
+
### Metadata
|
|
253
|
+
- Frequency: recurring
|
|
254
|
+
- Related Features: user settings, theme system
|
|
255
|
+
|
|
256
|
+
### Resolution
|
|
257
|
+
- **Resolved**: 2025-01-18T16:00:00Z
|
|
258
|
+
- **Commit/PR**: #142
|
|
259
|
+
- **Notes**: Implemented with system preference detection and manual toggle
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
## Learning: Promoted to Skill
|
|
265
|
+
|
|
266
|
+
```markdown
|
|
267
|
+
## [LRN-20250118-001] best_practice
|
|
268
|
+
|
|
269
|
+
**Logged**: 2025-01-18T11:00:00Z
|
|
270
|
+
**Priority**: high
|
|
271
|
+
**Status**: promoted_to_skill
|
|
272
|
+
**Skill-Path**: skills/docker-m1-fixes
|
|
273
|
+
**Area**: infra
|
|
274
|
+
|
|
275
|
+
### Summary
|
|
276
|
+
Docker build fails on Apple Silicon due to platform mismatch
|
|
277
|
+
|
|
278
|
+
### Details
|
|
279
|
+
When building Docker images on M1/M2 Macs, the build fails because
|
|
280
|
+
the base image doesn't have an ARM64 variant. This is a common issue
|
|
281
|
+
that affects many developers.
|
|
282
|
+
|
|
283
|
+
### Suggested Action
|
|
284
|
+
Add `--platform linux/amd64` to docker build command, or use
|
|
285
|
+
`FROM --platform=linux/amd64` in Dockerfile.
|
|
286
|
+
|
|
287
|
+
### Metadata
|
|
288
|
+
- Source: error
|
|
289
|
+
- Related Files: Dockerfile
|
|
290
|
+
- Tags: docker, arm64, m1, apple-silicon
|
|
291
|
+
- See Also: ERR-20250115-A3F, ERR-20250117-B2D
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
## Extracted Skill Example
|
|
297
|
+
|
|
298
|
+
When the above learning is extracted as a skill, it becomes:
|
|
299
|
+
|
|
300
|
+
**File**: `skills/docker-m1-fixes/SKILL.md`
|
|
301
|
+
|
|
302
|
+
```markdown
|
|
303
|
+
---
|
|
304
|
+
name: docker-m1-fixes
|
|
305
|
+
description: "Fixes Docker build failures on Apple Silicon (M1/M2). Use when docker build fails with platform mismatch errors."
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
# Docker M1 Fixes
|
|
309
|
+
|
|
310
|
+
Solutions for Docker build issues on Apple Silicon Macs.
|
|
311
|
+
|
|
312
|
+
## Quick Reference
|
|
313
|
+
|
|
314
|
+
| Error | Fix |
|
|
315
|
+
|-------|-----|
|
|
316
|
+
| `no match for platform linux/arm64` | Add `--platform linux/amd64` to build |
|
|
317
|
+
| Image runs but crashes | Use emulation or find ARM-compatible base |
|
|
318
|
+
|
|
319
|
+
## The Problem
|
|
320
|
+
|
|
321
|
+
Many Docker base images don't have ARM64 variants. When building on
|
|
322
|
+
Apple Silicon (M1/M2/M3), Docker attempts to pull ARM64 images by
|
|
323
|
+
default, causing platform mismatch errors.
|
|
324
|
+
|
|
325
|
+
## Solutions
|
|
326
|
+
|
|
327
|
+
### Option 1: Build Flag (Recommended)
|
|
328
|
+
|
|
329
|
+
Add platform flag to your build command:
|
|
330
|
+
|
|
331
|
+
\`\`\`bash
|
|
332
|
+
docker build --platform linux/amd64 -t myapp .
|
|
333
|
+
\`\`\`
|
|
334
|
+
|
|
335
|
+
### Option 2: Dockerfile Modification
|
|
336
|
+
|
|
337
|
+
Specify platform in the FROM instruction:
|
|
338
|
+
|
|
339
|
+
\`\`\`dockerfile
|
|
340
|
+
FROM --platform=linux/amd64 python:3.11-slim
|
|
341
|
+
\`\`\`
|
|
342
|
+
|
|
343
|
+
### Option 3: Docker Compose
|
|
344
|
+
|
|
345
|
+
Add platform to your service:
|
|
346
|
+
|
|
347
|
+
\`\`\`yaml
|
|
348
|
+
services:
|
|
349
|
+
app:
|
|
350
|
+
platform: linux/amd64
|
|
351
|
+
build: .
|
|
352
|
+
\`\`\`
|
|
353
|
+
|
|
354
|
+
## Trade-offs
|
|
355
|
+
|
|
356
|
+
| Approach | Pros | Cons |
|
|
357
|
+
|----------|------|------|
|
|
358
|
+
| Build flag | No file changes | Must remember flag |
|
|
359
|
+
| Dockerfile | Explicit, versioned | Affects all builds |
|
|
360
|
+
| Compose | Convenient for dev | Requires compose |
|
|
361
|
+
|
|
362
|
+
## Performance Note
|
|
363
|
+
|
|
364
|
+
Running AMD64 images on ARM64 uses Rosetta 2 emulation. This works
|
|
365
|
+
for development but may be slower. For production, find ARM-native
|
|
366
|
+
alternatives when possible.
|
|
367
|
+
|
|
368
|
+
## Source
|
|
369
|
+
|
|
370
|
+
- Learning ID: LRN-20250118-001
|
|
371
|
+
- Category: best_practice
|
|
372
|
+
- Extraction Date: 2025-01-18
|
|
373
|
+
```
|