@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.
Files changed (288) hide show
  1. package/package.json +1 -1
  2. package/scripts/install.js +2 -2
  3. package/scripts/local-test.js +1 -1
  4. package/scripts/test-auto-detect.js +20 -3
  5. package/skills/README.md +25 -174
  6. package/skills/SKILL.md +17 -239
  7. package/skills/mono/README.md +10 -0
  8. package/skills/mono/SKILL.md +223 -0
  9. 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
  10. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/README.md +1 -3
  11. package/skills/mono/references/modules/soke-ai-coach-director/platform/soke-ai-training/soke-ai-training.md +123 -0
  12. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/self-learning-engine.md +0 -4
  13. package/skills/{soke-ai-training/SKILL.md → mono/references/modules/soke-ai-training/MODULE.md} +1 -1
  14. package/skills/mono/references/modules/soke-assign/README.md +308 -0
  15. package/skills/{soke-certificate/SKILL.md → mono/references/modules/soke-certificate/MODULE.md} +2 -2
  16. package/skills/mono/references/modules/soke-course/MODULE.md +402 -0
  17. package/skills/mono/references/modules/soke-course/README.md +291 -0
  18. package/skills/{soke-course → mono/references/modules/soke-course}/references/examples.md +3 -3
  19. package/skills/{soke-exam/SKILL.md → mono/references/modules/soke-exam/MODULE.md} +1 -1
  20. package/skills/{soke-learning-map/SKILL.md → mono/references/modules/soke-learning-map/MODULE.md} +5 -6
  21. package/skills/{soke-learning-profile/SKILL.md → mono/references/modules/soke-learning-profile/MODULE.md} +2 -2
  22. package/skills/mono/references/modules/soke-lesson/README.md +53 -0
  23. package/skills/mono/references/modules/soke-material/README.md +49 -0
  24. package/skills/{soke-photo-gallery/SKILL.md → mono/references/modules/soke-photo-gallery/MODULE.md} +2 -3
  25. package/skills/mono/references/modules/soke-supervisor/MODULE.md +186 -0
  26. package/skills/mono/references/modules/soke-task/MODULE.md +146 -0
  27. package/skills/{soke-training-demand/SKILL.md → mono/references/modules/soke-training-demand/MODULE.md} +1 -1
  28. package/skills/mono/references/shared/cli-basics.md +185 -0
  29. package/skills/mono/scripts/check_readiness.py +28 -0
  30. package/skills/mono/scripts/gate_check.py +112 -0
  31. package/skills/mono/scripts/validate_operations.py +403 -0
  32. package/skills/multi/README.md +18 -0
  33. package/skills/multi/soke-ai-coach-director/CHANGELOG.md +203 -0
  34. package/skills/multi/soke-ai-coach-director/README.md +121 -0
  35. package/skills/multi/soke-ai-coach-director/SKILL.md +220 -0
  36. package/skills/multi/soke-ai-coach-director/assets/ERRORS-TEMPLATE.md +5 -0
  37. package/skills/multi/soke-ai-coach-director/assets/FEATURE_REQUESTS-TEMPLATE.md +5 -0
  38. package/skills/multi/soke-ai-coach-director/assets/LEARNINGS-TEMPLATE.md +44 -0
  39. package/skills/multi/soke-ai-coach-director/assets/SKILL-TEMPLATE.md +177 -0
  40. package/skills/multi/soke-ai-coach-director/coaching/knowledge-packager/knowledge-packager.md +91 -0
  41. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part1-basic.md +59 -0
  42. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part2-roles.md +97 -0
  43. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part3-flow.md +72 -0
  44. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part4-scoring.md +87 -0
  45. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part5-constraints.md +48 -0
  46. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/prompt-engineer.md +76 -0
  47. package/skills/multi/soke-ai-coach-director/coaching/prompt-optimizer/prompt-optimizer.md +381 -0
  48. package/skills/multi/soke-ai-coach-director/coaching/role-profiler/role-profiler.md +87 -0
  49. package/skills/multi/soke-ai-coach-director/platform/adapters/README.md +68 -0
  50. package/skills/multi/soke-ai-coach-director/platform/adapters/qclaw.md +67 -0
  51. package/skills/multi/soke-ai-coach-director/platform/adapters/workbuddy.md +44 -0
  52. package/skills/multi/soke-ai-coach-director/platform/adapters/wukong.md +70 -0
  53. package/skills/multi/soke-ai-coach-director/platform/adapters/zework.md +89 -0
  54. package/skills/multi/soke-ai-coach-director/platform/api-fallback.md +262 -0
  55. package/skills/multi/soke-ai-coach-director/platform/interaction.md +103 -0
  56. package/skills/multi/soke-ai-coach-director/platform/publish-gate.md +44 -0
  57. package/skills/multi/soke-ai-coach-director/platform/resource-finalizer.md +103 -0
  58. package/skills/{soke-ai-coach-director → multi/soke-ai-coach-director}/platform/soke-ai-training/soke-ai-training.md +1 -1
  59. package/skills/multi/soke-ai-coach-director/platform/sync-engine.md +39 -0
  60. 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
  61. 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
  62. 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
  63. 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
  64. 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
  65. 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
  66. 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
  67. 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
  68. 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
  69. 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
  70. 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
  71. 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
  72. 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
  73. 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
  74. 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
  75. 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
  76. 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
  77. 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
  78. 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
  79. 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
  80. 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
  81. 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
  82. 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
  83. 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
  84. 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
  85. 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
  86. 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
  87. 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
  88. package/skills/multi/soke-ai-coach-director/references/change-log-partwise-refactor.md +74 -0
  89. package/skills/multi/soke-ai-coach-director/references/env-check.md +146 -0
  90. package/skills/multi/soke-ai-coach-director/references/exec-common.md +126 -0
  91. package/skills/multi/soke-ai-coach-director/references/exec-handbook.md +621 -0
  92. package/skills/multi/soke-ai-coach-director/references/exec-part1.md +86 -0
  93. package/skills/multi/soke-ai-coach-director/references/exec-part2.md +145 -0
  94. package/skills/multi/soke-ai-coach-director/references/exec-part3.md +91 -0
  95. package/skills/multi/soke-ai-coach-director/references/exec-part4.md +187 -0
  96. package/skills/multi/soke-ai-coach-director/references/gate-check-matrix.md +46 -0
  97. 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
  98. package/skills/multi/soke-ai-coach-director/references/micro-tune-labels.md +30 -0
  99. package/skills/multi/soke-ai-coach-director/references/platform-api-pitfalls.md +49 -0
  100. package/skills/multi/soke-ai-coach-director/references/role-resource-matching.md +45 -0
  101. package/skills/multi/soke-ai-coach-director/references/self-improvement-examples.md +373 -0
  102. package/skills/multi/soke-ai-coach-director/references/self-learning-engine.md +485 -0
  103. package/skills/multi/soke-ai-coach-director/references/shared.md +185 -0
  104. package/skills/multi/soke-ai-coach-director/references/subs/part1/SOP.md +17 -0
  105. package/skills/multi/soke-ai-coach-director/references/subs/part2/SOP.md +34 -0
  106. package/skills/multi/soke-ai-coach-director/references/subs/part3/SOP.md +27 -0
  107. package/skills/multi/soke-ai-coach-director/references/subs/part4/SOP.md +31 -0
  108. package/skills/multi/soke-ai-coach-director/references/subs/publish/SOP.md +81 -0
  109. package/skills/multi/soke-ai-coach-director/references/subs/tune/SOP.md +92 -0
  110. package/skills/multi/soke-ai-coach-director/references/verified-cli-cheatsheet.md +56 -0
  111. package/skills/multi/soke-ai-coach-director/scripts/gate_check.py +112 -0
  112. package/skills/multi/soke-ai-coach-director/scripts/validate_operations.py +403 -0
  113. package/skills/multi/soke-ai-training/SKILL.md +247 -0
  114. 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
  115. package/skills/multi/soke-ai-training/references/shared.md +185 -0
  116. package/skills/{soke-assign → multi/soke-assign}/README.md +3 -5
  117. package/skills/multi/soke-assign/SKILL.md +101 -0
  118. package/skills/{soke-course/SKILL.md → multi/soke-assign/references/dependencies/soke-course.md} +1 -1
  119. package/skills/multi/soke-assign/references/dependencies/soke-exam.md +600 -0
  120. package/skills/multi/soke-assign/references/installation.md +451 -0
  121. package/skills/multi/soke-assign/references/shared.md +185 -0
  122. package/skills/multi/soke-certificate/SKILL.md +715 -0
  123. package/skills/multi/soke-certificate/references/installation.md +451 -0
  124. package/skills/multi/soke-certificate/references/shared.md +185 -0
  125. package/skills/{soke-course → multi/soke-course}/README.md +5 -7
  126. package/skills/multi/soke-course/SKILL.md +399 -0
  127. package/skills/multi/soke-course/agents/openai.yaml +7 -0
  128. package/skills/multi/soke-course/examples/create-basic.md +70 -0
  129. package/skills/multi/soke-course/references/course-list-courses.md +216 -0
  130. package/skills/multi/soke-course/references/dependencies/soke-assign.md +103 -0
  131. package/skills/multi/soke-course/references/dependencies/soke-lesson.md +119 -0
  132. package/skills/multi/soke-course/references/dependencies/soke-material.md +105 -0
  133. package/skills/multi/soke-course/references/examples.md +480 -0
  134. package/skills/multi/soke-course/references/installation.md +451 -0
  135. package/skills/multi/soke-course/references/intent-cases.md +99 -0
  136. package/skills/multi/soke-course/references/shared.md +185 -0
  137. package/skills/multi/soke-course/references/sop-full-workflow.md +177 -0
  138. package/skills/multi/soke-course/references/sop-lesson-types.md +66 -0
  139. package/skills/multi/soke-course/references/sop-publish-check.md +76 -0
  140. package/skills/multi/soke-course/references/subs/ai/SOP.md +153 -0
  141. package/skills/multi/soke-course/references/subs/category/SOP.md +112 -0
  142. package/skills/multi/soke-course/references/subs/charge/SOP.md +107 -0
  143. package/skills/multi/soke-course/references/subs/copy/SOP.md +80 -0
  144. package/skills/multi/soke-course/references/subs/publish/SOP.md +168 -0
  145. package/skills/multi/soke-course/references/subs/query/SOP.md +165 -0
  146. package/skills/multi/soke-course/references/subs/settings/SOP.md +136 -0
  147. package/skills/multi/soke-course/references/subs/template/SOP.md +223 -0
  148. package/skills/multi/soke-course/references/troubleshoot.md +68 -0
  149. package/skills/multi/soke-course/scripts/check_readiness.py +87 -0
  150. package/skills/multi/soke-exam/SKILL.md +598 -0
  151. package/skills/multi/soke-exam/references/exam-get-exam-user.md +212 -0
  152. package/skills/multi/soke-exam/references/installation.md +451 -0
  153. package/skills/multi/soke-exam/references/shared.md +185 -0
  154. package/skills/multi/soke-exam-question-pool/SKILL.md +121 -0
  155. package/skills/multi/soke-exam-question-pool/references/installation.md +451 -0
  156. package/skills/multi/soke-exam-question-pool/references/shared.md +185 -0
  157. package/skills/multi/soke-learning-map/SKILL.md +553 -0
  158. package/skills/multi/soke-learning-map/references/dependencies/soke-assign.md +103 -0
  159. package/skills/{soke-task/SKILL.md → multi/soke-learning-map/references/dependencies/soke-task.md} +1 -1
  160. package/skills/multi/soke-learning-map/references/installation.md +451 -0
  161. package/skills/multi/soke-learning-map/references/shared.md +185 -0
  162. package/skills/multi/soke-learning-profile/SKILL.md +221 -0
  163. package/skills/multi/soke-learning-profile/references/installation.md +451 -0
  164. package/skills/multi/soke-learning-profile/references/shared.md +185 -0
  165. package/skills/multi/soke-lesson/SKILL.md +117 -0
  166. package/skills/multi/soke-lesson/references/installation.md +451 -0
  167. package/skills/multi/soke-lesson/references/shared.md +185 -0
  168. package/skills/multi/soke-material/SKILL.md +103 -0
  169. package/skills/multi/soke-material/references/installation.md +451 -0
  170. package/skills/multi/soke-material/references/shared.md +185 -0
  171. package/skills/multi/soke-photo-gallery/SKILL.md +284 -0
  172. package/skills/multi/soke-photo-gallery/references/installation.md +451 -0
  173. package/skills/multi/soke-photo-gallery/references/shared.md +185 -0
  174. package/skills/multi/soke-shared/SKILL.md +183 -0
  175. package/skills/multi/soke-supervisor/SKILL.md +184 -0
  176. package/skills/multi/soke-supervisor/references/installation.md +451 -0
  177. package/skills/multi/soke-supervisor/references/shared.md +185 -0
  178. package/skills/multi/soke-task/SKILL.md +144 -0
  179. package/skills/multi/soke-task/references/installation.md +451 -0
  180. package/skills/multi/soke-task/references/shared.md +185 -0
  181. package/skills/multi/soke-training-demand/SKILL.md +219 -0
  182. package/skills/multi/soke-training-demand/references/installation.md +451 -0
  183. package/skills/multi/soke-training-demand/references/shared.md +185 -0
  184. package/skills/soke-ai-coach-director/scripts/activator.sh +0 -4
  185. package/skills/soke-ai-coach-director/scripts/error-detector.sh +0 -4
  186. package/skills/soke-ai-coach-director/scripts/extract-skill.sh +0 -7
  187. package/skills/soke-course/scripts/check_readiness.sh +0 -82
  188. /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
  189. /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
  190. /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
  191. /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
  192. /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
  193. /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
  194. /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
  195. /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
  196. /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
  197. /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
  198. /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
  199. /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
  200. /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
  201. /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
  202. /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
  203. /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
  204. /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
  205. /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
  206. /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
  207. /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
  208. /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
  209. /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
  210. /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
  211. /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
  212. /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
  213. /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
  214. /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
  215. /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
  216. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/CHANGELOG.md +0 -0
  217. /package/skills/{soke-ai-coach-director/SKILL.md → mono/references/modules/soke-ai-coach-director/MODULE.md} +0 -0
  218. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/ERRORS-TEMPLATE.md +0 -0
  219. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/FEATURE_REQUESTS-TEMPLATE.md +0 -0
  220. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/LEARNINGS-TEMPLATE.md +0 -0
  221. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/SKILL-TEMPLATE.md +0 -0
  222. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/knowledge-packager/knowledge-packager.md +0 -0
  223. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part1-basic.md +0 -0
  224. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part2-roles.md +0 -0
  225. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part3-flow.md +0 -0
  226. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part4-scoring.md +0 -0
  227. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part5-constraints.md +0 -0
  228. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/prompt-engineer.md +0 -0
  229. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-optimizer/prompt-optimizer.md +0 -0
  230. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/role-profiler/role-profiler.md +0 -0
  231. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/README.md +0 -0
  232. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/qclaw.md +0 -0
  233. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/workbuddy.md +0 -0
  234. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/wukong.md +0 -0
  235. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/zework.md +0 -0
  236. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/api-fallback.md +0 -0
  237. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/interaction.md +0 -0
  238. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/publish-gate.md +0 -0
  239. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/resource-finalizer.md +0 -0
  240. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/sync-engine.md +0 -0
  241. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/change-log-partwise-refactor.md +0 -0
  242. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/env-check.md +0 -0
  243. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-common.md +0 -0
  244. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-handbook.md +0 -0
  245. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part1.md +0 -0
  246. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part2.md +0 -0
  247. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part3.md +0 -0
  248. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part4.md +0 -0
  249. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/gate-check-matrix.md +0 -0
  250. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/micro-tune-labels.md +0 -0
  251. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/platform-api-pitfalls.md +0 -0
  252. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/role-resource-matching.md +0 -0
  253. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/self-improvement-examples.md +0 -0
  254. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part1/SOP.md +0 -0
  255. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part2/SOP.md +0 -0
  256. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part3/SOP.md +0 -0
  257. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part4/SOP.md +0 -0
  258. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/publish/SOP.md +0 -0
  259. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/tune/SOP.md +0 -0
  260. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/verified-cli-cheatsheet.md +0 -0
  261. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/gate_check.py +0 -0
  262. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/validate_operations.py +0 -0
  263. /package/skills/{soke-assign/SKILL.md → mono/references/modules/soke-assign/MODULE.md} +0 -0
  264. /package/skills/{soke-course → mono/references/modules/soke-course}/agents/openai.yaml +0 -0
  265. /package/skills/{soke-course → mono/references/modules/soke-course}/examples/create-basic.md +0 -0
  266. /package/skills/{soke-course → mono/references/modules/soke-course}/references/course-list-courses.md +0 -0
  267. /package/skills/{soke-course → mono/references/modules/soke-course}/references/intent-cases.md +0 -0
  268. /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-full-workflow.md +0 -0
  269. /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-lesson-types.md +0 -0
  270. /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-publish-check.md +0 -0
  271. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/ai/SOP.md +0 -0
  272. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/category/SOP.md +0 -0
  273. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/charge/SOP.md +0 -0
  274. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/copy/SOP.md +0 -0
  275. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/publish/SOP.md +0 -0
  276. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/query/SOP.md +0 -0
  277. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/settings/SOP.md +0 -0
  278. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/template/SOP.md +0 -0
  279. /package/skills/{soke-course → mono/references/modules/soke-course}/references/troubleshoot.md +0 -0
  280. /package/skills/{soke-exam → mono/references/modules/soke-exam}/references/exam-get-exam-user.md +0 -0
  281. /package/skills/{soke-exam-question-pool/SKILL.md → mono/references/modules/soke-exam-question-pool/MODULE.md} +0 -0
  282. /package/skills/{soke-lesson/SKILL.md → mono/references/modules/soke-lesson/MODULE.md} +0 -0
  283. /package/skills/{soke-material/SKILL.md → mono/references/modules/soke-material/MODULE.md} +0 -0
  284. /package/skills/{soke-shared/SKILL.md → mono/references/modules/soke-shared/MODULE.md} +0 -0
  285. /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
  286. /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
  287. /package/skills/{soke-lesson → multi/soke-lesson}/README.md +0 -0
  288. /package/skills/{soke-material → multi/soke-material}/README.md +0 -0
@@ -0,0 +1,221 @@
1
+ ---
2
+ name: soke-learning-profile
3
+ description: "学员学习档案查询:查询学员的完整学习记录,包括课程学习、考试成绩、证书获取、学分积分等。当用户需要查询学员学习档案、查看学员学习情况、统计学员学习数据、查询学员综合学习信息时使用。 | Learner learning profile query: query a learner's complete learning records, including course learning progress, exam scores, certificate acquisition, credits, and points. Use when users need to query learner profiles, review learning status, aggregate learning statistics, or retrieve comprehensive learning information for a learner."
4
+ metadata:
5
+ requires:
6
+ bins: ["soke-cli"]
7
+ cliHelp: "soke-cli learning-profile --help"
8
+ ---
9
+
10
+ **CRITICAL — 开始前 MUST 先用 Read 工具读取 [`./references/shared.md`](./references/shared.md),其中包含认证、配置、权限处理**
11
+
12
+ ## 核心概念
13
+
14
+ - **LearningProfile(学习档案)**: 学员的完整学习记录,包含课程、考试、证书、培训等多维度数据
15
+ - **DeptUser(部门用户)**: 企业内的学员,通过 `dept_user_id` 标识
16
+ - **Department(部门)**: 组织架构单元,通过 `dept_id` 标识
17
+
18
+ ## 资源关系
19
+
20
+ ```
21
+ LearningProfile (学习档案)
22
+ ├── DeptUser (学员)
23
+ │ ├── dept_user_id (学员ID)
24
+ │ ├── dept_user_name (学员姓名)
25
+ │ └── dept_names (所属部门)
26
+ ├── CourseData (课程数据)
27
+ │ ├── required_learning/finished (必修课程)
28
+ │ ├── optional_learning/finished (选修课程)
29
+ │ └── learn_time (学习时长)
30
+ ├── ExamData (考试数据)
31
+ │ ├── not_attempt (未开始)
32
+ │ ├── passed (通过)
33
+ │ ├── notpassed (未通过)
34
+ │ └── reviewing (批阅中)
35
+ ├── CertificateData (证书数据)
36
+ │ └── certificate_number (证书数量)
37
+ ├── PointsAndCredits (积分学分)
38
+ │ ├── points (积分)
39
+ │ └── credits (学分)
40
+ └── TrainingData (培训数据)
41
+ ├── training_finished (线下培训)
42
+ ├── learning_map_finished (学习地图)
43
+ └── training_class_finished (培训班)
44
+ ```
45
+
46
+ ## Shortcuts(推荐优先使用)
47
+
48
+ | Shortcut | 说明 |
49
+ |----------|------|
50
+ | [`+list`](#list) | 查询学员学习档案列表 |
51
+
52
+ ## 辅助命令(contact 模块)
53
+
54
+ | Shortcut | 说明 |
55
+ |----------|------|
56
+ | `contact +search-user` | 根据姓名搜索学员 |
57
+ | `contact +search-dept` | 根据名称搜索部门 |
58
+
59
+ ---
60
+
61
+ ## 命令详解
62
+
63
+ ### +list
64
+
65
+ 查询学员学习档案列表,支持按部门、学员ID筛选。
66
+
67
+ **命令格式**:
68
+ ```bash
69
+ soke-cli learning-profile +list \
70
+ [--dept-user-ids <user_id1,user_id2,...>] \
71
+ [--dept-ids <dept_id1,dept_id2,...>] \
72
+ [--is-new <0|1>] \
73
+ [--offset <offset>] \
74
+ [--page-size <size>]
75
+ ```
76
+
77
+ **参数说明**:
78
+ - `--dept-user-ids`: 学员ID列表,多个ID用逗号分隔(可选)
79
+ - `--dept-ids`: 部门ID列表,多个ID用逗号分隔(可选)
80
+ - `--is-new`: 是否新员工,0-否,1-是(可选)
81
+ - `--offset`: 偏移量,默认从0开始(可选)
82
+ - `--page-size`: 每页条数,最大100,默认10(可选)
83
+
84
+ **返回字段**(表格显示关键字段):
85
+ - `姓名`: 学员姓名
86
+ - `部门`: 所属部门
87
+ - `职位`: 职位
88
+ - `必修完成`: 必修课程完成情况(完成数/总数)
89
+ - `选修完成`: 选修课程完成情况(完成数/总数)
90
+ - `考试通过`: 考试通过数
91
+ - `学习时长`: 学习时长(格式化为"X小时Y分钟")
92
+ - `证书数`: 获得证书数量
93
+ - `学分`: 学分
94
+ - `积分`: 积分
95
+
96
+ **JSON 输出包含完整字段**(30+ 字段):
97
+ - 基础信息:`dept_user_id`, `dept_user_name`, `dept_names`, `position`, `job_number`, `avatar`, `is_leave`, `hired_date`
98
+ - 课程学习:`optional_learning`, `optional_finished`, `required_learning`, `required_finished`, `learn_time`
99
+ - 考试情况:`not_attempt`, `passed`, `notpassed`, `reviewing`
100
+ - 证书积分:`certificate_number`, `points`, `credits`
101
+ - 培训情况:`training_not_attempt`, `training_finished`, `class_length`
102
+ - 学习地图:`leaning_map_attempt`, `learning_map_finished`
103
+ - 培训班:`training_class_attempt`, `training_class_finished`
104
+ - 其他:`live_learn_time`, `external_training_time`, `knowledge_number`, `evaluation_score`
105
+
106
+ **示例**:
107
+ ```bash
108
+ # 查询所有学员学习档案
109
+ soke-cli learning-profile +list --offset 0 --page-size 20
110
+
111
+ # 查询特定学员(单个)
112
+ soke-cli learning-profile +list --dept-user-ids user123
113
+
114
+ # 查询多个学员
115
+ soke-cli learning-profile +list --dept-user-ids user123,user456,user789
116
+
117
+ # 查询特定部门的学员
118
+ soke-cli learning-profile +list --dept-ids dept456
119
+
120
+ # 查询多个部门的学员
121
+ soke-cli learning-profile +list --dept-ids dept456,dept789
122
+
123
+ # 查询新员工的学习档案
124
+ soke-cli learning-profile +list --is-new 1 --page-size 50
125
+
126
+ # 分页查询(使用 offset)
127
+ soke-cli learning-profile +list --offset 0 --page-size 10 # 第1页
128
+ soke-cli learning-profile +list --offset 10 --page-size 10 # 第2页
129
+ soke-cli learning-profile +list --offset 20 --page-size 10 # 第3页
130
+ ```
131
+
132
+ **权限要求**: `learningProfile:readonly`
133
+
134
+ **使用场景**:
135
+ - 当用户询问"查询学员学习档案"时使用
136
+ - 当用户需要查看学员学习情况、统计学习数据时使用
137
+ - 当用户需要导出学员学习报表时使用
138
+
139
+ ---
140
+
141
+ ## 权限表
142
+
143
+ | 命令 | 所需权限 | 说明 |
144
+ |------|----------|------|
145
+ | `+list` | `learningProfile:readonly` | 查询学员学习档案 |
146
+ | `contact +search-user` | `contact:user:readonly` | 搜索学员 |
147
+ | `contact +search-dept` | `contact:department:readonly` | 搜索部门 |
148
+
149
+ ---
150
+
151
+ ## 常见工作流
152
+
153
+ ### 工作流1: 根据姓名查询学员学习档案
154
+
155
+ 当用户询问"查询张三的学习档案"时:
156
+
157
+ **步骤1**: 搜索学员获取 dept_user_id
158
+ ```bash
159
+ soke-cli contact +search-user --dept-user-name "张三"
160
+ ```
161
+
162
+ **步骤2**: 使用 dept_user_id 查询学习档案
163
+ ```bash
164
+ soke-cli learning-profile +list --dept-user-ids <从步骤1获取的dept_user_id>
165
+ ```
166
+
167
+ **注意**: 学习档案接口不支持按姓名直接查询,必须先通过 contact 模块获取 dept_user_id。
168
+
169
+ ### 工作流2: 查询部门所有学员的学习档案
170
+
171
+ 当用户询问"查询技术部所有学员的学习情况"时:
172
+
173
+ **步骤1**: 搜索部门获取 dept_id
174
+ ```bash
175
+ soke-cli contact +search-dept --dept-name "技术部"
176
+ ```
177
+
178
+ **步骤2**: 使用 dept_id 查询该部门学员学习档案
179
+ ```bash
180
+ soke-cli learning-profile +list --dept-ids <从步骤1获取的dept_id> --page-size 100
181
+ ```
182
+
183
+ ### 工作流3: 批量导出学习档案
184
+
185
+ 当用户需要导出学习档案数据时:
186
+
187
+ ```bash
188
+ # 使用 JSON 格式输出并保存到文件
189
+ soke-cli learning-profile +list --page-size 100 --format json > learning_profiles.json
190
+ ```
191
+
192
+ ---
193
+
194
+ ## 注意事项
195
+
196
+ 1. **时间格式**: `learn_time`, `class_length` 等时长字段单位为秒,表格输出时会自动格式化为"X小时Y分钟"
197
+ 2. **分页**: 使用 `offset` 和 `page_size` 进行分页,默认每页10条,最大100条
198
+ 3. **数组参数**: `dept_user_ids` 和 `dept_ids` 是数组类型,多个ID用逗号分隔
199
+ 4. **姓名查询**: 学习档案接口不支持按姓名查询,需要先通过 `contact +search-user` 获取 dept_user_id
200
+ 5. **权限**: 需要 `learningProfile:readonly` 权限,如遇权限错误参考 soke-shared
201
+ 6. **数据完整性**: 表格输出仅显示关键字段,完整数据请使用 `--format json`
202
+
203
+ ---
204
+
205
+ ## 错误处理
206
+
207
+ ### 权限不足
208
+ 如果遇到权限错误,参考 [`./references/shared.md`](./references/shared.md)
209
+
210
+ ### 参数错误
211
+ 使用 `--help` 查看命令参数说明:
212
+ ```bash
213
+ soke-cli learning-profile +list --help
214
+ ```
215
+
216
+ ### 数据为空
217
+ 如果查询结果为空,检查:
218
+ 1. 筛选条件是否正确(dept_ids, dept_user_ids, is_new)
219
+ 2. 学员是否有学习记录
220
+ 3. 是否有权限查看该部门/学员的数据
221
+ 4. 注意:学习档案接口不支持按姓名查询,需要先获取 dept_user_id
@@ -0,0 +1,451 @@
1
+ # 授客CLI 工具 - 快速上手指南
2
+
3
+ 本文档将指导你从零开始安装 `soke-cli`,完成用户登录授权,并开始使用授客AI开放平台的各项功能。
4
+
5
+ ---
6
+
7
+ ## 📋 目录
8
+
9
+ - [前置要求](#前置要求)
10
+ - [安装步骤](#安装步骤)
11
+ - [用户登录授权](#用户登录授权)
12
+ - [验证安装](#验证安装)
13
+ - [常见问题](#常见问题)
14
+ - [下一步](#下一步)
15
+
16
+ ---
17
+
18
+ ## 前置要求
19
+
20
+ 在开始之前,请确保你的系统满足以下要求:
21
+
22
+ ### 必需条件
23
+ - **Node.js**: 版本 >= 14.0.0(用于 NPM 安装)
24
+ - **网络连接**: 能够访问授客AI开放平台 API(默认:`https://opendev.soke.cn`)
25
+ - **浏览器**: 用于完成 OAuth 授权流程
26
+
27
+ > 💡 **提示**: 使用 `soke-cli` 无需预先配置任何凭证,所有配置将在登录授权过程中自动完成。
28
+
29
+ ---
30
+
31
+ ## 安装步骤
32
+
33
+ > ⚠️ **先看这里**:以下步骤会将 `soke-cli` 安装到用户专属目录(`~/.npm-global`),无需 sudo、不依赖任何 AI 工具,任何终端打开即用。
34
+ >
35
+ > **三步走:① 改 npm prefix → ② 加 PATH → ③ 安装**
36
+
37
+ ### 第一步:配置 npm prefix(所有平台通用)
38
+
39
+ 设置 npm 全局安装路径为用户专属目录,这样:
40
+ - **不需要 sudo/管理员权限**
41
+ - **不会装到奇怪的系统目录**
42
+ - **任何终端都能找到**
43
+
44
+ ```bash
45
+ mkdir -p ~/.npm-global
46
+ npm config set prefix ~/.npm-global
47
+ ```
48
+
49
+ > 💡 这一步只需执行一次,之后所有通过 `npm install -g` 安装的工具都会放到统一位置。
50
+
51
+ ---
52
+
53
+ ### 第二步:把 npm 全局 bin 目录加入 PATH
54
+
55
+ 把 `~/.npm-global/bin` 加入 shell 搜索路径,这样终端才能找到 `soke-cli`。
56
+
57
+ #### macOS / Linux
58
+
59
+ 在 `~/.zshrc`(Zsh)或 `~/.bashrc`(Bash)末尾追加一行:
60
+
61
+ ```bash
62
+ echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.zshrc
63
+ source ~/.zshrc
64
+ ```
65
+
66
+ > 💡 **Apple Silicon (M1/M2/M3) 用户**如果用 Homebrew 安装 Node.js,npm prefix 可能已指向 `/opt/homebrew`(arm64)或 `/usr/local`(x64)。上述 `npm config set prefix` 会覆盖默认值,所有全局工具统一走 `~/.npm-global`,不影响 Homebrew 自有工具。
67
+
68
+ #### Windows
69
+
70
+ **PowerShell**:
71
+ ```powershell
72
+ # 查看当前用户 PATH
73
+ [Environment]::GetEnvironmentVariable('Path', 'User')
74
+
75
+ # 追加 npm-global 路径
76
+ $npmGlobal = "$env:USERPROFILE\.npm-global\bin"
77
+ [Environment]::SetEnvironmentVariable('Path', "$(([Environment]::GetEnvironmentVariable('Path', 'User') -split ';' -notlike '' -join ';'));$npmGlobal", 'User')
78
+
79
+ # 验证(需要重新打开 PowerShell 使改动生效,或手动刷新)
80
+ $env:Path = [Environment]::GetEnvironmentVariable('Path', 'User')
81
+ ```
82
+
83
+ **CMD**:
84
+ ```cmd
85
+ setx PATH "%PATH%;%USERPROFILE%\.npm-global\bin"
86
+ ```
87
+
88
+ > ⚠️ **Windows**: `setx` 修改的是**系统环境变量**,需要新的 CMD/PowerShell 窗口才能生效(当前窗口不会变)。
89
+
90
+ ---
91
+
92
+ ### 第三步:安装 soke-cli
93
+
94
+ PATH 配置完成后,新开一个终端窗口(或 `source` 刚改的文件),然后安装:
95
+
96
+ **macOS / Linux**:
97
+ ```bash
98
+ npm install -g @sokeai/cli@latest
99
+ ```
100
+
101
+ **Windows (PowerShell / CMD)**:
102
+ ```powershell
103
+ npm install -g @sokeai/cli@latest
104
+ ```
105
+
106
+ > 💡 安装脚本会自动根据操作系统(macOS / Linux / Windows)和芯片架构(x64 / arm64)下载对应二进制文件,无需手动选择。
107
+
108
+ ---
109
+
110
+ ### 安装后验证
111
+
112
+ 新开一个终端(让 PATH 生效),依次执行:
113
+
114
+ ```bash
115
+ # 确认路径
116
+ which soke-cli
117
+ # 预期输出类似: /Users/你的用户名/.npm-global/bin/soke-cli
118
+
119
+ # 确认版本
120
+ soke-cli --version
121
+ # 预期输出: soke-cli version x.x.x
122
+ ```
123
+
124
+ 如果显示版本号,说明基础安装成功。完成后续登录授权后,请继续运行 `soke-cli doctor` 做完整健康检查,确保配置、登录态、日志目录和网络连通性都可用。
125
+
126
+ **如果 `which soke-cli` 无输出**,说明 PATH 未生效:
127
+ - macOS/Linux: 确认 `echo $PATH | tr ':' '\n' | grep npm-global` 有输出,若没有请重新执行第二步
128
+ - Windows: 确认环境变量中已添加 `C:\Users\你的用户名\.npm-global\bin`
129
+
130
+ ---
131
+
132
+ ## 用户登录授权
133
+
134
+ 安装完成后,直接执行登录命令即可开始使用。无需预先配置,所有必要的配置信息将在授权过程中自动获取并保存。
135
+
136
+ ### OAuth 浏览器授权流程
137
+
138
+ `soke-cli` 使用 OAuth 2.0 授权码流程(Authorization Code Flow),通过浏览器完成安全授权。
139
+
140
+ ### 执行登录命令
141
+
142
+ ```bash
143
+ soke-cli auth login
144
+ ```
145
+
146
+ ### 授权步骤
147
+
148
+ 1. **自动打开浏览器**
149
+
150
+ 命令执行后,会自动在默认浏览器中打开授权页面。如果浏览器没有自动打开,会显示授权链接:
151
+ ```
152
+ ℹ️ 未找到登录信息,开始授权流程
153
+
154
+ 请在浏览器中打开以下链接进行授权:
155
+ http://127.0.0.1:8080/callback?redirect_uri=...
156
+
157
+ 等待授权中...
158
+ ```
159
+
160
+ 2. **浏览器授权**
161
+
162
+ 在浏览器授权页面中:
163
+ - 如果未登录授客AI平台,先完成登录
164
+ - 查看应用请求的权限列表
165
+ - 勾选"一并开通审批的常用权限"(可选)
166
+ - 点击"开通并授权"按钮
167
+
168
+ 3. **授权成功**
169
+
170
+ 授权完成后,浏览器会显示成功页面,CLI 终端会显示:
171
+ ```
172
+ ✅ 已登录,Token 仍然有效
173
+ 企业 ID: corp_123456
174
+ ```
175
+
176
+ 4. **配置自动保存**
177
+
178
+ 授权成功后,以下信息会自动保存到 `~/.soke-cli/config.json`:
179
+ - 用户访问令牌(`user_token`)
180
+ - 企业 ID(`corpid`)
181
+ - 部门用户 ID(`dept_user_id`)
182
+ - Token 过期时间
183
+
184
+ ### Token 有效期
185
+
186
+ - **访问令牌(Access Token)**: 默认有效期根据平台设置,通常为数小时到数天
187
+ - **自动检查**: 每次执行命令时,CLI 会自动检查 Token 是否有效
188
+ - **自动续期**: Token 过期后,再次执行 `soke-cli auth login` 即可重新授权
189
+
190
+ ### 强制重新登录
191
+
192
+ 如果需要切换账号或强制重新授权,可以使用 `--force` 参数:
193
+
194
+ ```bash
195
+ soke-cli auth login --force
196
+ ```
197
+
198
+ ### 退出登录
199
+
200
+ 如果需要退出登录,清除本地保存的令牌:
201
+
202
+ ```bash
203
+ soke-cli auth logout
204
+ ```
205
+
206
+ 输出:
207
+ ```
208
+ ✓ 已退出登录
209
+ ```
210
+
211
+ ---
212
+
213
+ ## 验证安装
214
+
215
+ 完成登录授权后,让我们验证一切是否正常工作。推荐先运行 `doctor`,它会一次性检查 CLI 版本、配置文件、登录态、日志目录和网络连通性。
216
+
217
+ ### 1. 运行健康检查
218
+
219
+ ```bash
220
+ soke-cli doctor
221
+ ```
222
+
223
+ 正常情况下会看到类似输出:
224
+ ```text
225
+ pass cli_version x.x.x
226
+ pass config /Users/你的用户名/.soke-cli/config.json
227
+ pass auth login data looks valid locally
228
+ pass logs /Users/你的用户名/.soke-cli/logs
229
+ pass network https://opendev.soke.cn reachable (123ms)
230
+ ```
231
+
232
+ 如果任意检查项显示 `fail`,请根据同一行或下一行的 `hint` 提示处理。常见情况:
233
+ - `config` 或 `auth` 失败:重新执行 `soke-cli auth login`
234
+ - `logs` 失败:检查 `~/.soke-cli` 或 `SOKE_CLI_LOG_DIR` 的写入权限
235
+ - `network` 失败:检查网络连接或代理设置
236
+
237
+ 需要机器可读输出时,可以使用 JSON 格式:
238
+
239
+ ```bash
240
+ soke-cli doctor --format json
241
+ ```
242
+
243
+ 如果当前环境不能访问外网,只想检查本地安装、配置、登录态和日志目录,可以跳过网络检查:
244
+
245
+ ```bash
246
+ soke-cli doctor --offline
247
+ ```
248
+
249
+ 网络较慢时可以调大超时时间:
250
+
251
+ ```bash
252
+ soke-cli doctor --timeout 30
253
+ ```
254
+
255
+ ### 2. 查看配置信息
256
+
257
+ ```bash
258
+ soke-cli config show
259
+ ```
260
+
261
+ 确认配置信息已自动保存:
262
+ ```
263
+ 当前配置:
264
+ app_key: (未设置)
265
+ app_secret: (未设置)
266
+ api_base_url:
267
+ corpid: corp_123456
268
+ 用户ID: user_789012
269
+ 用户凭证: eyJh...xyz
270
+ token过期时间: 2026-10-17 12:00:00
271
+ ```
272
+
273
+ > 💡 **说明**: `app_key` 和 `app_secret` 在当前版本中不需要手动配置,授权流程会自动处理所有必要的认证信息。如果 `doctor` 已全部通过,这一步主要用于人工确认当前登录的企业和用户信息。
274
+
275
+ ### 3. 测试 API 调用
276
+
277
+ 尝试调用一个简单的 API:
278
+
279
+ ```bash
280
+ soke-cli api GET /users/me
281
+ ```
282
+
283
+ 如果返回你的用户信息(JSON 格式),说明一切配置正确!
284
+
285
+ ### 4. 使用业务命令
286
+
287
+ 尝试使用一个业务快捷命令,例如查看考试列表:
288
+
289
+ ```bash
290
+ soke-cli exam +list-exams --page 1 --page-size 10
291
+ ```
292
+
293
+ ---
294
+
295
+ ## 常见问题
296
+
297
+ ### Q1: 安装时提示 "网络连接失败"
298
+
299
+ **原因**: 无法从 GitHub Releases 下载二进制文件。
300
+
301
+ **解决方案**:
302
+ 1. 检查网络连接
303
+ 2. 如果在国内,可能需要配置代理
304
+ 3. 尝试重新安装:`npm install -g @sokeai/cli`
305
+
306
+ ### Q2: 执行 `soke-cli` 提示 "command not found" 或 "不是内部或外部命令"
307
+
308
+ **原因**: 二进制文件不在系统 PATH 中。
309
+
310
+ **解决方案(重新做安装步骤第二步)**:
311
+
312
+ **macOS / Linux**:
313
+ ```bash
314
+ # 确认 npm-global/bin 是否已在 PATH
315
+ which soke-cli
316
+
317
+ # 若无输出,检查路径是否存在
318
+ ls ~/.npm-global/bin/soke-cli 2>/dev/null && echo "存在,但 PATH 未生效"
319
+
320
+ # 重新追加 PATH 并生效
321
+ echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.zshrc
322
+ source ~/.zshrc
323
+
324
+ # 再次验证
325
+ which soke-cli
326
+ soke-cli --version
327
+ ```
328
+
329
+ **Windows**:
330
+ ```powershell
331
+ # 检查 .npm-global/bin 是否存在
332
+ Test-Path "$env:USERPROFILE\.npm-global\bin\soke-cli.exe"
333
+
334
+ # 若存在但命令找不到,手动刷新 PATH
335
+ $env:Path = [Environment]::GetEnvironmentVariable('Path', 'User')
336
+
337
+ # 确认
338
+ where.exe soke-cli
339
+ ```
340
+
341
+ **直接运行(临时方案,不推荐长期使用)**:
342
+
343
+ **macOS / Linux**:
344
+ ```bash
345
+ ~/.npm-global/bin/soke-cli --version
346
+ ```
347
+
348
+ **Windows**:
349
+ ```cmd
350
+ %USERPROFILE%\.npm-global\bin\soke-cli.exe --version
351
+ ```
352
+
353
+ ### Q3: 登录时浏览器没有自动打开
354
+
355
+ **原因**: 系统无法自动打开默认浏览器。
356
+
357
+ **解决方案**:
358
+ 1. 复制终端显示的授权链接
359
+ 2. 手动在浏览器中打开该链接
360
+ 3. 完成授权流程
361
+
362
+ ### Q4: 浏览器授权后,CLI 仍显示 "等待授权中..."
363
+
364
+ **原因**:
365
+ - 浏览器授权未成功完成
366
+ - 本地回调服务器端口被占用
367
+ - 网络连接问题
368
+
369
+ **解决方案**:
370
+ 1. 确认浏览器页面显示"授权成功"
371
+ 2. 检查防火墙是否阻止了本地端口(127.0.0.1)
372
+ 3. 按 `Ctrl+C` 取消,重新执行 `soke-cli auth login`
373
+
374
+ ### Q5: API 调用返回 "401 Unauthorized"
375
+
376
+ **原因**: Token 已过期或无效。
377
+
378
+ **解决方案**:
379
+ ```bash
380
+ # 重新登录
381
+ soke-cli auth logout
382
+ soke-cli auth login
383
+ ```
384
+
385
+ ### Q6: 如何在 AI Agent 中使用?
386
+
387
+ **解决方案**:
388
+
389
+ 安装 AI Agent Skills:
390
+ ```bash
391
+ npx skills add liuchenlong1111/soke-cli -y -g
392
+ ```
393
+
394
+ 然后在 AI Agent(如 Claude Code)中直接用自然语言:
395
+ - "查询考试成绩"
396
+ - "列出最近的考试"
397
+
398
+ AI 会自动调用相应的 `soke-cli` 命令。
399
+
400
+ ---
401
+
402
+ ## 下一步
403
+
404
+ 恭喜!你已经成功安装并配置了 `soke-cli`。接下来你可以:
405
+
406
+ ### 📚 学习更多命令
407
+
408
+ 查看所有可用命令:
409
+ ```bash
410
+ soke-cli --help
411
+ ```
412
+
413
+ 查看特定模块的命令:
414
+ ```bash
415
+ soke-cli course --help
416
+ soke-cli exam --help
417
+ soke-cli contact --help
418
+ ```
419
+
420
+ ### 🚀 使用业务功能
421
+
422
+ - **课程管理**: `soke-cli course +list-courses`
423
+ - **考试管理**: `soke-cli exam +list-exams`
424
+ - **通讯录**: `soke-cli contact +list-users`
425
+ - **学习地图**: `soke-cli learning-map +list-maps`
426
+
427
+ ### 🤖 安装 AI Agent Skills(推荐)
428
+
429
+ ```bash
430
+ npx skills add liuchenlong1111/soke-cli -y -g
431
+ ```
432
+
433
+ 安装后,在 AI Agent 中可以用自然语言操作授客AI平台,无需记忆复杂命令。
434
+
435
+ ### 📖 阅读详细文档
436
+
437
+
438
+ ---
439
+
440
+ ## 获取帮助
441
+
442
+ 如果遇到问题:
443
+
444
+ 1. **查看帮助文档**: `soke-cli --help`
445
+ 2. **查看配置**: `soke-cli config show`
446
+ 3. **访问开放平台**: https://opendev.soke.cn
447
+ 4. **提交 Issue**: https://github.com/liuchenlong1111/soke-cli/issues
448
+
449
+ ---
450
+
451
+ **祝你使用愉快!** 🎉