@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,185 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: soke-shared
|
|
3
|
+
summary: 授客CLI共享基础(配置/登录/权限/错误处理/安全规则)
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
description: "授客CLI共享基础:应用配置初始化、认证登录(auth login)、权限管理、错误处理、安全规则。当用户需要第一次配置(soke-cli auth login)、使用登录授权(soke-cli auth login)、遇到权限不足、或首次使用soke-cli时触发。"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# soke-cli 共享规则
|
|
9
|
+
|
|
10
|
+
本技能指导你如何通过soke-cli操作授客AI资源,以及有哪些注意事项。
|
|
11
|
+
|
|
12
|
+
## 配置初始化
|
|
13
|
+
|
|
14
|
+
首次使用需运行 `soke-cli auth login` 完成应用配置。
|
|
15
|
+
|
|
16
|
+
当你帮用户初始化配置时,引导用户按照交互式提示完成配置:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# 初始化配置
|
|
20
|
+
soke-cli auth login
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
配置项包括:
|
|
24
|
+
- `app_id`: 开放平台应用ID
|
|
25
|
+
- `app_key`: 开放平台应用Key
|
|
26
|
+
- `app_secret`: 开放平台应用Secret
|
|
27
|
+
- `api_base_url`: API地址(默认: https://opendev.soke.cn)
|
|
28
|
+
- `corpid`: 企业ID
|
|
29
|
+
|
|
30
|
+
配置文件保存在 `~/.soke-cli/config.json`
|
|
31
|
+
|
|
32
|
+
## 认证
|
|
33
|
+
|
|
34
|
+
### 用户登录
|
|
35
|
+
|
|
36
|
+
用户需要通过OAuth授权获取访问令牌:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# 用户登录授权
|
|
40
|
+
soke-cli auth login
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
登录成功后,`access_token` 和 `refresh_token` 会自动保存到配置文件中。
|
|
44
|
+
|
|
45
|
+
### Token管理
|
|
46
|
+
|
|
47
|
+
- **access_token**: 用户访问令牌,用于调用API
|
|
48
|
+
- **refresh_token**: 刷新令牌,用于获取新的access_token
|
|
49
|
+
- Token过期后需要重新执行 `soke-cli auth login`
|
|
50
|
+
|
|
51
|
+
### 查看当前配置
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
# 查看当前配置(不显示敏感信息)
|
|
55
|
+
soke-cli config show
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 权限不足处理
|
|
59
|
+
|
|
60
|
+
遇到权限相关错误时,通常有以下几种情况:
|
|
61
|
+
|
|
62
|
+
### 1. 未登录或Token过期
|
|
63
|
+
|
|
64
|
+
**错误特征**: 返回401 Unauthorized或Token无效
|
|
65
|
+
|
|
66
|
+
**解决方案**:
|
|
67
|
+
```bash
|
|
68
|
+
soke-cli auth login
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### 2. 缺少必要权限
|
|
72
|
+
|
|
73
|
+
**错误特征**: 返回403 Forbidden或权限不足提示
|
|
74
|
+
|
|
75
|
+
**解决方案**:
|
|
76
|
+
- 联系管理员在开放平台后台为应用开通相应权限
|
|
77
|
+
- 确认企业ID(corpid)和应用配置正确
|
|
78
|
+
|
|
79
|
+
### 3. 参数错误
|
|
80
|
+
|
|
81
|
+
**错误特征**: 返回400 Bad Request或参数验证失败
|
|
82
|
+
|
|
83
|
+
**解决方案**:
|
|
84
|
+
- 检查必需参数是否提供
|
|
85
|
+
- 使用 `--help` 查看命令参数说明
|
|
86
|
+
- 参考API文档确认参数格式
|
|
87
|
+
|
|
88
|
+
## 命令结构
|
|
89
|
+
|
|
90
|
+
### Shortcuts(推荐)
|
|
91
|
+
|
|
92
|
+
Shortcuts是对常用操作的高级封装,参数友好,最适合AI Agent调用:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
soke-cli <service> +<verb> [flags]
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
示例:
|
|
99
|
+
```bash
|
|
100
|
+
soke-cli exam +get-exam-user --exam-id exam123 --dept-user-id user456
|
|
101
|
+
soke-cli course +list-courses --page 1 --page-size 10
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### 通用API调用
|
|
105
|
+
|
|
106
|
+
支持直接调用任意API:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
soke-cli api <METHOD> <path> [--data <json>] [--params <json>]
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
示例:
|
|
113
|
+
```bash
|
|
114
|
+
soke-cli api GET /users/me
|
|
115
|
+
soke-cli api POST /some/endpoint --data '{"key": "value"}'
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## 输出格式
|
|
119
|
+
|
|
120
|
+
### JSON格式(默认)
|
|
121
|
+
|
|
122
|
+
所有命令默认输出JSON格式,便于程序解析:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
soke-cli exam +list-exams --format json
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### 表格格式
|
|
129
|
+
|
|
130
|
+
部分命令支持表格格式输出,更易读:
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
soke-cli exam +list-exams --format table
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## 安全规则
|
|
137
|
+
|
|
138
|
+
- **禁止输出密钥**(app_secret、access_token)到终端明文
|
|
139
|
+
- **写入/删除操作前必须确认用户意图**
|
|
140
|
+
- 敏感操作建议先使用 `--dry-run`(如果支持)预览
|
|
141
|
+
|
|
142
|
+
## 错误处理
|
|
143
|
+
|
|
144
|
+
当命令执行失败时:
|
|
145
|
+
|
|
146
|
+
1. **检查配置**: 运行 `soke-cli config show` 确认配置正确
|
|
147
|
+
2. **检查登录状态**: 如果是认证错误,运行 `soke-cli auth login`
|
|
148
|
+
3. **检查参数**: 使用 `soke-cli <service> <command> --help` 查看参数说明
|
|
149
|
+
4. **查看错误信息**: 错误响应中通常包含详细的错误原因
|
|
150
|
+
|
|
151
|
+
## 常见问题
|
|
152
|
+
|
|
153
|
+
### Q: 如何获取app_key和app_secret?
|
|
154
|
+
|
|
155
|
+
A: 登录授客AI开放平台(https://opendev.soke.cn),创建应用后即可获取。
|
|
156
|
+
|
|
157
|
+
### Q: Token过期了怎么办?
|
|
158
|
+
|
|
159
|
+
A: 重新执行 `soke-cli auth login` 进行授权。
|
|
160
|
+
|
|
161
|
+
### Q: 如何切换企业?
|
|
162
|
+
|
|
163
|
+
A: 运行 `soke-cli auth login` 重新配置,或直接编辑 `~/.soke-cli/config.json` 文件。
|
|
164
|
+
|
|
165
|
+
### Q: 支持哪些业务模块?
|
|
166
|
+
|
|
167
|
+
A: 目前支持以下模块:
|
|
168
|
+
- `contact`: 组织架构(部门、用户、岗位、讲师)
|
|
169
|
+
- `course`: 课程管理
|
|
170
|
+
- `exam`: 考试管理
|
|
171
|
+
- `training`: 培训管理
|
|
172
|
+
- `learning_map`: 学习地图
|
|
173
|
+
- `credit`: 学分管理
|
|
174
|
+
- `point`: 积分管理
|
|
175
|
+
- `news`: 资讯管理
|
|
176
|
+
- `certificate`: 证书管理
|
|
177
|
+
- 等等...
|
|
178
|
+
|
|
179
|
+
每个模块都有对应的Skill,AI Agent会根据用户意图自动选择。
|
|
180
|
+
|
|
181
|
+
## 相关链接
|
|
182
|
+
|
|
183
|
+
- 授客AI开放平台: https://opendev.soke.cn
|
|
184
|
+
- NPM包: @sokeai/cli
|
|
185
|
+
- 代码仓库: https://codeup.aliyun.com/5edbc121d1d1abe63b55f1c7/soke/soke-cli.git
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: soke-training-demand
|
|
3
|
+
description: "授客学堂培训需求收集:通过 soke-cli training-demand 浏览需求列表、获取需求分类、分步引导提交培训需求(分类、标签、描述、紧急程度)以及为需求投票。当用户需要提交培训需求、浏览需求列表、给需求投票或查看需求分类时使用。"
|
|
4
|
+
metadata:
|
|
5
|
+
requires:
|
|
6
|
+
bins: ["soke-cli"]
|
|
7
|
+
executionGuard:
|
|
8
|
+
- "提交培训需求时,MUST 严格按 4 步依次执行(1->2->3->4),每完成一步 MUST 等待用户回复后才能进入下一步。NEVER 跳步、NEVER 合并多步为一步、NEVER 在用户未回复时自行推进。"
|
|
9
|
+
- "步骤 2(选择标签)是独立步骤,NEVER 被跳过(除非分类 tag 为空/null)。即使用户在步骤 1 选择了分类,也 MUST 先展示标签列表让用户选择或跳过,然后才能进入步骤 3。"
|
|
10
|
+
- "每一步输出后 MUST STOP 等待用户输入。NEVER 在同一个回复中同时展示两个步骤的提示。"
|
|
11
|
+
- "NEVER 自行发挥、NEVER 添加 skill 未定义的步骤或提示文字。所有输出格式和提示语必须严格按本 skill 中常见工作流的定义,一字不差。"
|
|
12
|
+
- "步骤 2 展示标签时,MUST 严格使用步骤 1 中用户选定的那个分类对象(通过用户选择的序号从 +list-categories 返回的 data.list 数组中精确取出)的 tag 字段。NEVER 使用其他分类的 tag、NEVER 凭记忆猜测标签、NEVER 用列表中其他位置分类的 tag。"
|
|
13
|
+
cliHelp: "soke-cli training-demand --help"
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# 培训需求收集
|
|
17
|
+
|
|
18
|
+
**CRITICAL — 开始前 MUST 先读取 ./references/shared.md,其中包含认证、配置和权限处理。**
|
|
19
|
+
|
|
20
|
+
## 🛑 执行守卫(EXECUTION GUARD)
|
|
21
|
+
|
|
22
|
+
> **以下规则是硬性约束,违反任何一条即为执行错误:**
|
|
23
|
+
>
|
|
24
|
+
> 1. **逐步执行**:提交需求 MUST 严格按 4 步顺序(1->2->3->4)逐步引导,每步 MUST 等待用户回复后再进入下一步。NEVER 跳步、NEVER 合步。
|
|
25
|
+
> 2. **步骤独立**:每个步骤 MUST 单独输出为一个回复。NEVER 在同一个回复中同时展示两个步骤的提示。步骤 1 输出后 STOP 等用户选分类;步骤 2 输出后 STOP 等用户选标签;步骤 3 输出后 STOP 等用户输入描述;步骤 4 输出后 STOP 等用户选紧急程度。
|
|
26
|
+
> 3. **步骤 2 不可省略**:步骤 2(选择标签)是独立步骤,NEVER 被省略(除非分类 tag 为空/null)。NEVER 在步骤 1 的回复中同时展示标签选项。
|
|
27
|
+
> 4. **严禁自行发挥**:所有提示语、输出格式 MUST 严格照搬本 skill 常见工作流中的定义,NEVER 自行发挥、NEVER 添加额外文字或解释、NEVER 改变提示格式。
|
|
28
|
+
>
|
|
29
|
+
> 5. **标签-分类严格绑定**:步骤 2 展示标签时,MUST 严格使用步骤 1 中用户选定的分类对象(通过序号从 +list-categories 的 data.list 中精确取出)的 tag 字段。NEVER 用其他分类的 tag、NEVER 凭记忆猜测、NEVER 用列表中其他位置分类的 tag。不确定时 MUST 重新调用 +list-categories 按序号精确匹配。
|
|
30
|
+
|
|
31
|
+
## 核心规则
|
|
32
|
+
|
|
33
|
+
- 分类、标签必须与管理后台设置完全一致,**禁止自行拓展或创造分类/标签**。标签来源仅限用户所选分类的 tag 字段。
|
|
34
|
+
- 提交培训需求必须严格按以下 **4 步顺序** 引导用户,不可跳步或合并:
|
|
35
|
+
1. **选择分类**(单选) → 2. **选择标签**(选填,可多选≤5,可跳过,无标签时自动跳过) → 3. **填写培训需求**(≤200字,必填) → 4. **紧急程度**(1-5,选填)
|
|
36
|
+
- 分类:从 +list-categories 返回的 data.list[].title 中选择,**仅限单选**,不可同时选多个分类。
|
|
37
|
+
- 标签:从所选分类的 data.list[].tag 字段中按逗号拆分,编号列出供用户选择。**标签为选填,用户可以选择标签也可以不选直接跳过**。可多选最多5个。若该分类 tag 为空或不存在,提示"📌 该分类暂无标签",自动跳过标签步骤进入步骤3。
|
|
38
|
+
- 培训需求描述:即 --title,**必填,最多 200 字符**,纯文本输入。
|
|
39
|
+
- 紧急程度:即 --level,1=普通、2=较普通、3=一般、4=较紧急、5=最紧急,**选填**,不选时默认 0(不设置等级)。
|
|
40
|
+
- 投票前,先执行 +list,使用返回的培训需求 uuid。不要把分类 uuid 传给投票接口。
|
|
41
|
+
- 创建和投票是写操作。用户意图不明确时,先确认要提交或投票的对象。
|
|
42
|
+
- 默认用 --format json 获取结构化输出。
|
|
43
|
+
|
|
44
|
+
### 提交成功后的展示规则
|
|
45
|
+
- **不显示需求 UUID**:提交成功后向用户展示的详情表格中,不要包含 uuid 字段。UUID 仅用于内部投票等操作,不向用户暴露。
|
|
46
|
+
- **时间加8小时**:API 返回的 create_time 是 UTC 时间,向用户展示时必须加 8 小时转换为 UTC+8(北京时间)。例如返回 "2026-07-23 01:56:31" 应展示为 "2026-07-23 09:56:31"。
|
|
47
|
+
|
|
48
|
+
### 标签处理规则
|
|
49
|
+
|
|
50
|
+
- **隐藏接口字段**:所选分类的 tag 字段原始值是接口内部数据,**严禁在对话中向用户展示**(如不得出现"所选分类的 tag 字段为:公司介绍,规章制度"之类的话)。步骤 2 只展示编号后的标签选项列表,不暴露原始 tag 字段值或任何接口字段名。
|
|
51
|
+
|
|
52
|
+
+list-categories 返回的每个分类对象中 tag 字段是一个逗号分隔的字符串,例如 "企业文化培训,企业发展历程培训,营销战略发展规则培训"。提交需求时:
|
|
53
|
+
- **标签来源仅限当前分类**:从用户所选的那个分类的 tag 字段按逗号拆分出所有可选标签,编号列出供用户选择。**严禁跨分类混合标签或自行创造标签**。
|
|
54
|
+
- **🛑 标签-分类严格绑定(防错硬约束)**:步骤 2 展示标签时,MUST 从步骤 1 中用户选定的分类对象(即 +list-categories 返回的 data.list 中,按用户选择的序号精确匹配的那一条)的 tag 字段按逗号拆分。NEVER 使用其他分类的 tag 字段、NEVER 凭记忆猜测标签内容、NEVER 用列表中其他位置分类的 tag。如果记忆可能出错或不确定,MUST 重新执行 +list-categories 并严格按序号匹配对应分类对象后再拆分其 tag。
|
|
55
|
+
- 用户选中后,将选中的标签用逗号拼接传给 --tag。
|
|
56
|
+
- **标签选填**:标签为选填项,用户可以选择标签也可以**不选任何标签直接跳过**。跳过时不传 --tag(CLI 会从 --category-tag 自动合并)。用户输入"0"、"不选"、"跳过"等表示不选择标签,直接进入步骤 3。
|
|
57
|
+
- **最多选 5 个标签**:选择超过5个时提醒"❌ 最多只能选择5个标签,请减少选择"。
|
|
58
|
+
- **无标签时自动跳过**:若所选分类的 tag 为空字符串("")或不存在/为 null,提示"📌 该分类暂无标签,无需选择",自动跳过步骤 2 进入步骤 3。
|
|
59
|
+
- --category-tag 必须传所选分类的原始完整 tag 字段值(未拆分、未修改)。
|
|
60
|
+
|
|
61
|
+
## 命令
|
|
62
|
+
|
|
63
|
+
### 查询培训需求列表
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
soke-cli training-demand +list \
|
|
67
|
+
--page 1 \
|
|
68
|
+
--limit 10 \
|
|
69
|
+
--status 1 \
|
|
70
|
+
--keyword "" \
|
|
71
|
+
--is-owner 0 \
|
|
72
|
+
--create-time-order desc \
|
|
73
|
+
--owner-vote 0 \
|
|
74
|
+
--format json
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
列表返回的 data.list[].uuid 是投票使用的培训需求 UUID。
|
|
78
|
+
|
|
79
|
+
### 查询培训需求分类
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
soke-cli training-demand +list-categories --format json
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
分类返回的 data.list[].uuid、data.list[].title 和 data.list[].tag 只用于创建需求。
|
|
86
|
+
|
|
87
|
+
### 提交培训需求
|
|
88
|
+
|
|
89
|
+
单分类提交时使用 --category-uuid:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
soke-cli training-demand +create \
|
|
93
|
+
--title "门店销售沟通训练" \
|
|
94
|
+
--tag "职场心态,需求测试" \
|
|
95
|
+
--level 0 \
|
|
96
|
+
--category-uuid "FA0C937C-EE52-463B-BE3A-C13F96C426AE" \
|
|
97
|
+
--format json
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
- --title:培训需求描述,**必填,最多 200 字符**。
|
|
101
|
+
- --tag:从所选分类 tag 中用户选中的标签,逗号拼接;不传时 CLI 从 --category-tag 自动合并。
|
|
102
|
+
- --level:紧急程度,1=普通、5=最紧急,**选填**,默认 0。
|
|
103
|
+
- --category-uuid:所选分类的 uuid。
|
|
104
|
+
- 分类为单选,不使用 --category-list。
|
|
105
|
+
|
|
106
|
+
### 给培训需求投票
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
soke-cli training-demand +vote \
|
|
110
|
+
--uuid "41EA8B23-5E5E-48FD-99A3-FF8F420752A6" \
|
|
111
|
+
--format json
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
--uuid 必须来自 +list 返回的需求 UUID。
|
|
115
|
+
|
|
116
|
+
## 常见工作流
|
|
117
|
+
|
|
118
|
+
### 提交培训需求(严格 4 步流程)
|
|
119
|
+
|
|
120
|
+
用户说"我想提一个培训需求"或类似意图时,**必须**按以下 4 步依次引导,不可跳步:
|
|
121
|
+
|
|
122
|
+
**步骤 1 — 选择分类(单选)**
|
|
123
|
+
**🛑 本步骤 MUST 单独输出,NEVER 与步骤 2 合并在同一回复中。**
|
|
124
|
+
|
|
125
|
+
1. 执行 soke-cli training-demand +list-categories --format json。
|
|
126
|
+
2. 将返回的 data.list[].title 编号列出,格式严格如下(NEVER 自行发挥格式):
|
|
127
|
+
```
|
|
128
|
+
请选择培训需求分类(单选):
|
|
129
|
+
1. 企业文化
|
|
130
|
+
2. 职业素养
|
|
131
|
+
3. 企业培训
|
|
132
|
+
...
|
|
133
|
+
```
|
|
134
|
+
让用户**单选一个分类**。
|
|
135
|
+
3. 记录用户所选分类的 uuid、title 和 tag(原始完整值)。
|
|
136
|
+
4. **🛑 STOP HERE** — 等待用户选择分类后,再进入步骤 2。NEVER 在同一回复中展示步骤 2 的标签列表。
|
|
137
|
+
|
|
138
|
+
**步骤 2 — 选择标签(选填,可多选≤5,可跳过;无标签时自动跳过)**
|
|
139
|
+
**🛑 本步骤 MUST 单独输出,NEVER 与步骤 1 合并在同一回复中。**
|
|
140
|
+
|
|
141
|
+
1. **展示分类标签**:从步骤 1 记录的所选分类 tag 字段中按逗号拆分,编号列出所有可选标签。**严禁在对话中暴露 tag 字段原始值或接口字段名**,只展示编号列表供用户选择。格式示例:
|
|
142
|
+
**🛑 关键防错**:MUST 确保标签来自步骤 1 中用户选定分类对象的 tag 字段。用户选择分类序号 N 后,MUST 从 +list-categories 返回的 data.list[N-1](序号从1开始,数组索引从0开始)取出分类对象,然后用其 tag 字段拆分展示。NEVER 凭记忆选其他分类的 tag、NEVER 用序号偏移后的分类。如不确定,必须重新调用 +list-categories 并严格按序号匹配。
|
|
143
|
+
```
|
|
144
|
+
请选择标签(选填,可多选,最多5个,也可不选直接跳过):
|
|
145
|
+
1. 企业文化培训
|
|
146
|
+
2. 企业发展历程培训
|
|
147
|
+
3. 营销战略发展规则培训
|
|
148
|
+
...
|
|
149
|
+
|
|
150
|
+
请输入序号(多选用逗号分隔,如 1,3,5;不选可输入"0"或"跳过")
|
|
151
|
+
```
|
|
152
|
+
2. **无标签判断**:若所选分类的 tag 为空字符串("")或不存在/为 null,直接显示:
|
|
153
|
+
```
|
|
154
|
+
📌 该分类暂无标签,无需选择
|
|
155
|
+
```
|
|
156
|
+
然后自动跳过步骤 2,进入步骤 3。
|
|
157
|
+
3. **选填,可跳过**:标签为选填项,用户可以选择标签也可以**不选任何标签直接跳过**。用户输入"0"、"不选"、"跳过"等表示不选择标签,直接进入步骤 3。
|
|
158
|
+
4. **多选交互**:让用户输入序号多选标签(如"1,3,5"),最多选 5 个;选择超过 5 个时提醒"❌ 最多只能选择5个标签,请减少选择"。
|
|
159
|
+
5. **确认选择**:若用户选择了标签,简要展示确认(如"✅ 已选择标签:企业文化培训, 营销战略发展规则培训"),提交时用逗号拼接为 --tag 参数值。若用户跳过,显示"⏭ 未选择标签,继续下一步"。
|
|
160
|
+
6. **⚠️ 重要**:标签来源仅限当前所选分类的 tag 字段,严禁跨分类混合标签或自行创造标签。
|
|
161
|
+
7. **🛑 STOP HERE** — 等待用户选择/跳过标签后,再进入步骤 3。NEVER 在同一回复中同时展示步骤 3 的提示。
|
|
162
|
+
|
|
163
|
+
**步骤 3 — 填写培训需求描述(必填,≤200字符)**
|
|
164
|
+
**🛑 本步骤 MUST 单独输出,NEVER 与步骤 2 合并在同一回复中。**
|
|
165
|
+
|
|
166
|
+
1. 提示用户输入培训需求描述(纯文本),提示语严格如下(NEVER 自行发挥):
|
|
167
|
+
```
|
|
168
|
+
请输入培训需求描述(必填,最多200字符):
|
|
169
|
+
```
|
|
170
|
+
2. 记录输入内容,即 --title 参数值。
|
|
171
|
+
3. 若用户输入超过 200 字符,提醒"❌ 需求描述最多200字符,请缩短或重新填写"。
|
|
172
|
+
4. **🛑 STOP HERE** — 等待用户输入需求描述后,再进入步骤 4。NEVER 在同一回复中同时展示步骤 4 的提示。
|
|
173
|
+
|
|
174
|
+
**步骤 4 — 紃急程度(选填)**
|
|
175
|
+
**🛑 本步骤 MUST 单独输出,NEVER 与步骤 3 合并在同一回复中。**
|
|
176
|
+
|
|
177
|
+
1. 提示用户选择紧急程度,提示语严格如下(NEVER 自行发挥):
|
|
178
|
+
```
|
|
179
|
+
请选择紧急程度(选填,不选默认为0):
|
|
180
|
+
1 = 普通
|
|
181
|
+
2 = 较普通
|
|
182
|
+
3 = 一般
|
|
183
|
+
4 = 较紧急
|
|
184
|
+
5 = 最紧急
|
|
185
|
+
|
|
186
|
+
输入数字或输入"0"/"跳过"表示不设置
|
|
187
|
+
```
|
|
188
|
+
2. 不选则默认 0(不设置等级)。用户输入"0"或"跳过"表示不设置。
|
|
189
|
+
3. 记录选择值,即 --level 参数值。
|
|
190
|
+
|
|
191
|
+
**最终提交**
|
|
192
|
+
用步骤 1-4 收集的数据执行 +create。提交前可向用户展示汇总确认。
|
|
193
|
+
|
|
194
|
+
### 投票需求
|
|
195
|
+
|
|
196
|
+
用户说"帮我给某个需求投票":
|
|
197
|
+
- 执行 +list --keyword "<关键词>" --format json。
|
|
198
|
+
- 用需求标题和创建人等信息确认目标。
|
|
199
|
+
- 执行 +vote --uuid "<需求uuid>"。
|
|
200
|
+
|
|
201
|
+
### 浏览需求
|
|
202
|
+
|
|
203
|
+
用户只想浏览需求:
|
|
204
|
+
- 执行 +list --page 1 --limit 10 --create-time-order desc。
|
|
205
|
+
- 返回标题、分类、标签、票数、是否已投票和需求 UUID。
|
|
206
|
+
|
|
207
|
+
## 字段依赖
|
|
208
|
+
|
|
209
|
+
| 场景 | 依赖字段 | 来源 |
|
|
210
|
+
|------|----------|------|
|
|
211
|
+
| 创建需求 | --category-uuid / --tag / --title / --level | +list-categories 的 data.list[] + 用户输入 |
|
|
212
|
+
| 投票 | uuid | +list 的 data.list[].uuid |
|
|
213
|
+
|
|
214
|
+
## 排错
|
|
215
|
+
|
|
216
|
+
- 创建失败提示分类无效:重新执行 +list-categories,不要自行手写分类 UUID。
|
|
217
|
+
- 创建失败提示标签无效:重新执行 +list-categories,从所选分类返回的 tag 中选择,不要自行编写标签。**确保 --category-tag 传的是原始完整 tag 字段值**。
|
|
218
|
+
- 投票失败提示需求无效:确认传入的是培训需求 UUID,不是分类 UUID。
|
|
219
|
+
- 鉴权失败:按 soke-shared 执行 soke-cli auth login 后重试。
|