@sokeai/cli 1.0.77 → 1.0.79

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 (291) 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 +2 -1
  11. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part1-basic.md +1 -1
  12. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/publish-gate.md +1 -0
  13. package/skills/mono/references/modules/soke-ai-coach-director/platform/soke-ai-training/soke-ai-training.md +123 -0
  14. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-handbook.md +5 -5
  15. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part1.md +5 -5
  16. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/platform-api-pitfalls.md +1 -1
  17. package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part1/SOP.md +2 -2
  18. package/skills/mono/references/modules/soke-ai-coach-director/scripts/gate_check.py +114 -0
  19. package/skills/mono/references/modules/soke-ai-coach-director/scripts/validate_operations.py +410 -0
  20. package/skills/{soke-ai-training/SKILL.md → mono/references/modules/soke-ai-training/MODULE.md} +3 -1
  21. package/skills/mono/references/modules/soke-assign/README.md +308 -0
  22. package/skills/{soke-certificate/SKILL.md → mono/references/modules/soke-certificate/MODULE.md} +2 -2
  23. package/skills/mono/references/modules/soke-course/MODULE.md +402 -0
  24. package/skills/mono/references/modules/soke-course/README.md +291 -0
  25. package/skills/{soke-course → mono/references/modules/soke-course}/references/examples.md +3 -3
  26. package/skills/{soke-exam/SKILL.md → mono/references/modules/soke-exam/MODULE.md} +1 -1
  27. package/skills/{soke-learning-map/SKILL.md → mono/references/modules/soke-learning-map/MODULE.md} +5 -6
  28. package/skills/{soke-learning-profile/SKILL.md → mono/references/modules/soke-learning-profile/MODULE.md} +2 -2
  29. package/skills/mono/references/modules/soke-lesson/README.md +53 -0
  30. package/skills/mono/references/modules/soke-material/README.md +49 -0
  31. package/skills/{soke-photo-gallery/SKILL.md → mono/references/modules/soke-photo-gallery/MODULE.md} +2 -3
  32. package/skills/mono/references/modules/soke-supervisor/MODULE.md +186 -0
  33. package/skills/mono/references/modules/soke-task/MODULE.md +146 -0
  34. package/skills/{soke-training-demand/SKILL.md → mono/references/modules/soke-training-demand/MODULE.md} +1 -1
  35. package/skills/mono/references/shared/cli-basics.md +185 -0
  36. package/skills/mono/scripts/check_readiness.py +28 -0
  37. package/skills/{soke-ai-coach-director → mono}/scripts/validate_operations.py +2 -2
  38. package/skills/multi/README.md +18 -0
  39. package/skills/multi/soke-ai-coach-director/CHANGELOG.md +203 -0
  40. package/skills/multi/soke-ai-coach-director/README.md +124 -0
  41. package/skills/multi/soke-ai-coach-director/SKILL.md +220 -0
  42. package/skills/multi/soke-ai-coach-director/assets/ERRORS-TEMPLATE.md +5 -0
  43. package/skills/multi/soke-ai-coach-director/assets/FEATURE_REQUESTS-TEMPLATE.md +5 -0
  44. package/skills/multi/soke-ai-coach-director/assets/LEARNINGS-TEMPLATE.md +45 -0
  45. package/skills/multi/soke-ai-coach-director/assets/SKILL-TEMPLATE.md +177 -0
  46. package/skills/multi/soke-ai-coach-director/coaching/knowledge-packager/knowledge-packager.md +91 -0
  47. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part1-basic.md +59 -0
  48. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part2-roles.md +97 -0
  49. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part3-flow.md +72 -0
  50. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part4-scoring.md +87 -0
  51. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/parts/part5-constraints.md +48 -0
  52. package/skills/multi/soke-ai-coach-director/coaching/prompt-engineer/prompt-engineer.md +76 -0
  53. package/skills/multi/soke-ai-coach-director/coaching/prompt-optimizer/prompt-optimizer.md +381 -0
  54. package/skills/multi/soke-ai-coach-director/coaching/role-profiler/role-profiler.md +87 -0
  55. package/skills/multi/soke-ai-coach-director/platform/adapters/README.md +68 -0
  56. package/skills/multi/soke-ai-coach-director/platform/adapters/qclaw.md +67 -0
  57. package/skills/multi/soke-ai-coach-director/platform/adapters/workbuddy.md +44 -0
  58. package/skills/multi/soke-ai-coach-director/platform/adapters/wukong.md +70 -0
  59. package/skills/multi/soke-ai-coach-director/platform/adapters/zework.md +89 -0
  60. package/skills/multi/soke-ai-coach-director/platform/api-fallback.md +262 -0
  61. package/skills/multi/soke-ai-coach-director/platform/interaction.md +103 -0
  62. package/skills/multi/soke-ai-coach-director/platform/publish-gate.md +45 -0
  63. package/skills/multi/soke-ai-coach-director/platform/resource-finalizer.md +103 -0
  64. package/skills/{soke-ai-coach-director → multi/soke-ai-coach-director}/platform/soke-ai-training/soke-ai-training.md +1 -1
  65. package/skills/multi/soke-ai-coach-director/platform/sync-engine.md +39 -0
  66. 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
  67. 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
  68. 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
  69. 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
  70. 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
  71. 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
  72. 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
  73. 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
  74. 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
  75. 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
  76. 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
  77. 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
  78. 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
  79. 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
  80. 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
  81. 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
  82. 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
  83. 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
  84. 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
  85. 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
  86. 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
  87. 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
  88. 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
  89. 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
  90. 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
  91. 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
  92. 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
  93. 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
  94. package/skills/multi/soke-ai-coach-director/references/change-log-partwise-refactor.md +74 -0
  95. package/skills/multi/soke-ai-coach-director/references/env-check.md +146 -0
  96. package/skills/multi/soke-ai-coach-director/references/exec-common.md +126 -0
  97. package/skills/multi/soke-ai-coach-director/references/exec-handbook.md +621 -0
  98. package/skills/multi/soke-ai-coach-director/references/exec-part1.md +86 -0
  99. package/skills/multi/soke-ai-coach-director/references/exec-part2.md +145 -0
  100. package/skills/multi/soke-ai-coach-director/references/exec-part3.md +91 -0
  101. package/skills/multi/soke-ai-coach-director/references/exec-part4.md +187 -0
  102. package/skills/multi/soke-ai-coach-director/references/gate-check-matrix.md +46 -0
  103. 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
  104. package/skills/multi/soke-ai-coach-director/references/micro-tune-labels.md +30 -0
  105. package/skills/multi/soke-ai-coach-director/references/platform-api-pitfalls.md +49 -0
  106. package/skills/multi/soke-ai-coach-director/references/role-resource-matching.md +45 -0
  107. package/skills/multi/soke-ai-coach-director/references/self-improvement-examples.md +376 -0
  108. package/skills/multi/soke-ai-coach-director/references/self-learning-engine.md +489 -0
  109. package/skills/multi/soke-ai-coach-director/references/shared.md +185 -0
  110. package/skills/multi/soke-ai-coach-director/references/subs/part1/SOP.md +17 -0
  111. package/skills/multi/soke-ai-coach-director/references/subs/part2/SOP.md +34 -0
  112. package/skills/multi/soke-ai-coach-director/references/subs/part3/SOP.md +27 -0
  113. package/skills/multi/soke-ai-coach-director/references/subs/part4/SOP.md +31 -0
  114. package/skills/multi/soke-ai-coach-director/references/subs/publish/SOP.md +81 -0
  115. package/skills/multi/soke-ai-coach-director/references/subs/tune/SOP.md +92 -0
  116. package/skills/multi/soke-ai-coach-director/references/verified-cli-cheatsheet.md +56 -0
  117. package/skills/multi/soke-ai-coach-director/scripts/activator.sh +4 -0
  118. package/skills/multi/soke-ai-coach-director/scripts/error-detector.sh +4 -0
  119. package/skills/multi/soke-ai-coach-director/scripts/extract-skill.sh +7 -0
  120. package/skills/multi/soke-ai-coach-director/scripts/gate_check.py +114 -0
  121. package/skills/multi/soke-ai-coach-director/scripts/validate_operations.py +410 -0
  122. package/skills/multi/soke-ai-training/SKILL.md +249 -0
  123. 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
  124. package/skills/multi/soke-ai-training/references/shared.md +185 -0
  125. package/skills/{soke-assign → multi/soke-assign}/README.md +3 -5
  126. package/skills/multi/soke-assign/SKILL.md +101 -0
  127. package/skills/{soke-course/SKILL.md → multi/soke-assign/references/dependencies/soke-course.md} +1 -1
  128. package/skills/multi/soke-assign/references/dependencies/soke-exam.md +600 -0
  129. package/skills/multi/soke-assign/references/installation.md +451 -0
  130. package/skills/multi/soke-assign/references/shared.md +185 -0
  131. package/skills/multi/soke-certificate/SKILL.md +715 -0
  132. package/skills/multi/soke-certificate/references/installation.md +451 -0
  133. package/skills/multi/soke-certificate/references/shared.md +185 -0
  134. package/skills/{soke-course → multi/soke-course}/README.md +5 -7
  135. package/skills/multi/soke-course/SKILL.md +399 -0
  136. package/skills/multi/soke-course/agents/openai.yaml +7 -0
  137. package/skills/multi/soke-course/examples/create-basic.md +70 -0
  138. package/skills/multi/soke-course/references/course-list-courses.md +216 -0
  139. package/skills/multi/soke-course/references/dependencies/soke-assign.md +103 -0
  140. package/skills/multi/soke-course/references/dependencies/soke-lesson.md +119 -0
  141. package/skills/multi/soke-course/references/dependencies/soke-material.md +105 -0
  142. package/skills/multi/soke-course/references/examples.md +480 -0
  143. package/skills/multi/soke-course/references/installation.md +451 -0
  144. package/skills/multi/soke-course/references/intent-cases.md +99 -0
  145. package/skills/multi/soke-course/references/shared.md +185 -0
  146. package/skills/multi/soke-course/references/sop-full-workflow.md +177 -0
  147. package/skills/multi/soke-course/references/sop-lesson-types.md +66 -0
  148. package/skills/multi/soke-course/references/sop-publish-check.md +76 -0
  149. package/skills/multi/soke-course/references/subs/ai/SOP.md +153 -0
  150. package/skills/multi/soke-course/references/subs/category/SOP.md +112 -0
  151. package/skills/multi/soke-course/references/subs/charge/SOP.md +107 -0
  152. package/skills/multi/soke-course/references/subs/copy/SOP.md +80 -0
  153. package/skills/multi/soke-course/references/subs/publish/SOP.md +168 -0
  154. package/skills/multi/soke-course/references/subs/query/SOP.md +165 -0
  155. package/skills/multi/soke-course/references/subs/settings/SOP.md +136 -0
  156. package/skills/multi/soke-course/references/subs/template/SOP.md +223 -0
  157. package/skills/multi/soke-course/references/troubleshoot.md +68 -0
  158. package/skills/multi/soke-course/scripts/check_readiness.py +87 -0
  159. package/skills/multi/soke-exam/SKILL.md +598 -0
  160. package/skills/multi/soke-exam/references/exam-get-exam-user.md +212 -0
  161. package/skills/multi/soke-exam/references/installation.md +451 -0
  162. package/skills/multi/soke-exam/references/shared.md +185 -0
  163. package/skills/multi/soke-exam-question-pool/SKILL.md +121 -0
  164. package/skills/multi/soke-exam-question-pool/references/installation.md +451 -0
  165. package/skills/multi/soke-exam-question-pool/references/shared.md +185 -0
  166. package/skills/multi/soke-learning-map/SKILL.md +553 -0
  167. package/skills/multi/soke-learning-map/references/dependencies/soke-assign.md +103 -0
  168. package/skills/{soke-task/SKILL.md → multi/soke-learning-map/references/dependencies/soke-task.md} +1 -1
  169. package/skills/multi/soke-learning-map/references/installation.md +451 -0
  170. package/skills/multi/soke-learning-map/references/shared.md +185 -0
  171. package/skills/multi/soke-learning-profile/SKILL.md +221 -0
  172. package/skills/multi/soke-learning-profile/references/installation.md +451 -0
  173. package/skills/multi/soke-learning-profile/references/shared.md +185 -0
  174. package/skills/multi/soke-lesson/SKILL.md +117 -0
  175. package/skills/multi/soke-lesson/references/installation.md +451 -0
  176. package/skills/multi/soke-lesson/references/shared.md +185 -0
  177. package/skills/multi/soke-material/SKILL.md +103 -0
  178. package/skills/multi/soke-material/references/installation.md +451 -0
  179. package/skills/multi/soke-material/references/shared.md +185 -0
  180. package/skills/multi/soke-photo-gallery/SKILL.md +284 -0
  181. package/skills/multi/soke-photo-gallery/references/installation.md +451 -0
  182. package/skills/multi/soke-photo-gallery/references/shared.md +185 -0
  183. package/skills/multi/soke-shared/SKILL.md +183 -0
  184. package/skills/multi/soke-supervisor/SKILL.md +184 -0
  185. package/skills/multi/soke-supervisor/references/installation.md +451 -0
  186. package/skills/multi/soke-supervisor/references/shared.md +185 -0
  187. package/skills/multi/soke-task/SKILL.md +144 -0
  188. package/skills/multi/soke-task/references/installation.md +451 -0
  189. package/skills/multi/soke-task/references/shared.md +185 -0
  190. package/skills/multi/soke-training-demand/SKILL.md +219 -0
  191. package/skills/multi/soke-training-demand/references/installation.md +451 -0
  192. package/skills/multi/soke-training-demand/references/shared.md +185 -0
  193. package/skills/soke-course/scripts/check_readiness.sh +0 -82
  194. /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
  195. /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
  196. /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
  197. /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
  198. /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
  199. /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
  200. /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
  201. /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
  202. /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
  203. /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
  204. /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
  205. /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
  206. /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
  207. /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
  208. /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
  209. /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
  210. /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
  211. /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
  212. /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
  213. /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
  214. /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
  215. /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
  216. /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
  217. /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
  218. /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
  219. /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
  220. /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
  221. /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
  222. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/CHANGELOG.md +0 -0
  223. /package/skills/{soke-ai-coach-director/SKILL.md → mono/references/modules/soke-ai-coach-director/MODULE.md} +0 -0
  224. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/ERRORS-TEMPLATE.md +0 -0
  225. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/FEATURE_REQUESTS-TEMPLATE.md +0 -0
  226. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/LEARNINGS-TEMPLATE.md +0 -0
  227. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/assets/SKILL-TEMPLATE.md +0 -0
  228. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/knowledge-packager/knowledge-packager.md +0 -0
  229. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part2-roles.md +0 -0
  230. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part3-flow.md +0 -0
  231. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part4-scoring.md +0 -0
  232. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/parts/part5-constraints.md +0 -0
  233. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-engineer/prompt-engineer.md +0 -0
  234. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/prompt-optimizer/prompt-optimizer.md +0 -0
  235. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/coaching/role-profiler/role-profiler.md +0 -0
  236. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/README.md +0 -0
  237. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/qclaw.md +0 -0
  238. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/workbuddy.md +0 -0
  239. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/wukong.md +0 -0
  240. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/adapters/zework.md +0 -0
  241. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/api-fallback.md +0 -0
  242. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/interaction.md +0 -0
  243. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/resource-finalizer.md +0 -0
  244. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/platform/sync-engine.md +0 -0
  245. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/change-log-partwise-refactor.md +0 -0
  246. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/env-check.md +0 -0
  247. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-common.md +0 -0
  248. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part2.md +0 -0
  249. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part3.md +0 -0
  250. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/exec-part4.md +0 -0
  251. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/gate-check-matrix.md +0 -0
  252. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/micro-tune-labels.md +0 -0
  253. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/role-resource-matching.md +0 -0
  254. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/self-improvement-examples.md +0 -0
  255. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/self-learning-engine.md +0 -0
  256. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part2/SOP.md +0 -0
  257. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part3/SOP.md +0 -0
  258. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/part4/SOP.md +0 -0
  259. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/publish/SOP.md +0 -0
  260. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/subs/tune/SOP.md +0 -0
  261. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/references/verified-cli-cheatsheet.md +0 -0
  262. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/activator.sh +0 -0
  263. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/error-detector.sh +0 -0
  264. /package/skills/{soke-ai-coach-director → mono/references/modules/soke-ai-coach-director}/scripts/extract-skill.sh +0 -0
  265. /package/skills/{soke-assign/SKILL.md → mono/references/modules/soke-assign/MODULE.md} +0 -0
  266. /package/skills/{soke-course → mono/references/modules/soke-course}/agents/openai.yaml +0 -0
  267. /package/skills/{soke-course → mono/references/modules/soke-course}/examples/create-basic.md +0 -0
  268. /package/skills/{soke-course → mono/references/modules/soke-course}/references/course-list-courses.md +0 -0
  269. /package/skills/{soke-course → mono/references/modules/soke-course}/references/intent-cases.md +0 -0
  270. /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-full-workflow.md +0 -0
  271. /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-lesson-types.md +0 -0
  272. /package/skills/{soke-course → mono/references/modules/soke-course}/references/sop-publish-check.md +0 -0
  273. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/ai/SOP.md +0 -0
  274. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/category/SOP.md +0 -0
  275. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/charge/SOP.md +0 -0
  276. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/copy/SOP.md +0 -0
  277. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/publish/SOP.md +0 -0
  278. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/query/SOP.md +0 -0
  279. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/settings/SOP.md +0 -0
  280. /package/skills/{soke-course → mono/references/modules/soke-course}/references/subs/template/SOP.md +0 -0
  281. /package/skills/{soke-course → mono/references/modules/soke-course}/references/troubleshoot.md +0 -0
  282. /package/skills/{soke-exam → mono/references/modules/soke-exam}/references/exam-get-exam-user.md +0 -0
  283. /package/skills/{soke-exam-question-pool/SKILL.md → mono/references/modules/soke-exam-question-pool/MODULE.md} +0 -0
  284. /package/skills/{soke-lesson/SKILL.md → mono/references/modules/soke-lesson/MODULE.md} +0 -0
  285. /package/skills/{soke-material/SKILL.md → mono/references/modules/soke-material/MODULE.md} +0 -0
  286. /package/skills/{soke-shared/SKILL.md → mono/references/modules/soke-shared/MODULE.md} +0 -0
  287. /package/skills/{soke-ai-coach-director → mono}/scripts/gate_check.py +0 -0
  288. /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
  289. /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
  290. /package/skills/{soke-lesson → multi/soke-lesson}/README.md +0 -0
  291. /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,284 @@
1
+ ---
2
+ name: soke-photo-gallery
3
+ description: "授客图片库管理:查询图片分类列表、查询图片库列表、上传本地图片到图片库(自动先上传 OSS 再创建记录)、批量删除图片。当用户需要管理图片库、上传图片、查询图片、删除图片时使用。 | Soke photo gallery management: query image category lists, query photo gallery lists, upload local images to the gallery (automatically uploads to OSS first, then creates the record), and batch delete images. Use when users need to manage the photo gallery, upload images, query images, or delete images."
4
+ metadata:
5
+ requires:
6
+ bins: ["soke-cli"]
7
+ cliHelp: "soke-cli photo-gallery --help"
8
+ ---
9
+
10
+ # 图片库管理 (soke-photo-gallery)
11
+
12
+ **CRITICAL — 开始前 MUST 先用 Read 工具读取 [`./references/shared.md`](./references/shared.md),其中包含认证、配置、权限处理**
13
+
14
+ ## 使用前提
15
+
16
+ 1. 已安装 `soke-cli`
17
+ 2. 已登录授权: `soke-cli auth login`
18
+
19
+ ```bash
20
+ soke-cli auth login
21
+ soke-cli config show # 验证登录状态
22
+ ```
23
+
24
+ ## 核心概念
25
+
26
+ - **图片库(Photo Gallery)**: 企业统一管理图片资源的模块
27
+ - **分类(Category)**: 图片可以归属到某个分类,树形结构,`parent_id="1"` 为顶级
28
+ - **OSS 上传**: 图片文件先上传到阿里云 OSS,再将 OSS 路径注册到图片库
29
+
30
+ ## 端到端工作流
31
+
32
+ ```
33
+ ┌──────────────────────────────────────────────────────────────┐
34
+ │ 1. (可选) 查询分类 → 获取 category-id │
35
+ │ 2. 上传图片 → 本地文件 → OSS → 图片库记录 │
36
+ │ 3. 查询图片列表 → 验证上传结果 │
37
+ │ 3.1 查询图片详情 → 获取单张图片完整 URL │
38
+ │ 4. (可选) 批量删除 → 清理图片 │
39
+ └──────────────────────────────────────────────────────────────┘
40
+ ```
41
+
42
+ ---
43
+
44
+ ## 步骤1: 查询图片分类(可选)
45
+
46
+ 上传时如需归入某个分类,先查询分类 ID。
47
+
48
+ ```bash
49
+ soke-cli photo-gallery +list-categories
50
+
51
+ # JSON 输出供解析:
52
+ soke-cli photo-gallery +list-categories --format json
53
+ ```
54
+
55
+ **响应关键字段**:
56
+ - `data.list.all[].uuid` → 分类 ID(上传时传入 `--category-id`)
57
+ - `data.list.all[].title` → 分类名称
58
+ - `data.list.all[].parent_id` → 父分类 ID,`"1"` 为顶级
59
+
60
+ **参数**:
61
+ | 参数 | 必填 | 默认 | 说明 |
62
+ |------|------|------|------|
63
+ | `--page` | 否 | 1 | 页码 |
64
+ | `--limit` | 否 | 100 | 每页数量 |
65
+
66
+ ---
67
+
68
+ ## 步骤2: 上传图片到图片库
69
+
70
+ `+create` 命令自动完成两步操作:
71
+ 1. 调用 OSS 上传脚本将本地文件上传到阿里云 OSS
72
+ 2. 调用图片库创建接口将 OSS 路径注册到图片库
73
+
74
+ ```bash
75
+ # 上传图片,不指定分类
76
+ soke-cli photo-gallery +create \
77
+ --file "./banner.png" \
78
+ --title "首页横幅"
79
+
80
+ # 上传图片,指定分类
81
+ soke-cli photo-gallery +create \
82
+ --file "./banner.png" \
83
+ --title "首页横幅" \
84
+ --category-id "CATEGORY-UUID"
85
+
86
+ # JSON 输出
87
+ soke-cli photo-gallery +create \
88
+ --file "./banner.png" \
89
+ --title "首页横幅" \
90
+ --format json
91
+ ```
92
+
93
+ **参数**:
94
+ | 参数 | 必填 | 默认 | 说明 |
95
+ |------|------|------|------|
96
+ | `--file` | 是 | — | 本地图片文件路径(支持 jpg/jpeg/png,最大 5 MB) |
97
+ | `--title` | 是 | — | 图片标题 |
98
+ | `--category-id` | 否 | empty | 分类 ID,不填则归入「未分类」 |
99
+
100
+ **响应提取**:
101
+ - `data.uuid` → 图片 UUID(批量删除时使用)
102
+ - `data.object` → OSS 对象路径
103
+ - `data.filename` → 文件名
104
+
105
+ **支持的图片格式**: jpg、jpeg、png(最大 5 MB)
106
+
107
+ ---
108
+
109
+ ## 步骤3: 查询图片库列表
110
+
111
+ ```bash
112
+ # 查询全部图片
113
+ soke-cli photo-gallery +list
114
+
115
+ # 按分类筛选
116
+ soke-cli photo-gallery +list --category-id "CATEGORY-UUID"
117
+
118
+ # 按文件名关键词搜索
119
+ soke-cli photo-gallery +list --file-keyword "banner"
120
+
121
+ # 分页
122
+ soke-cli photo-gallery +list --page 1 --limit 20
123
+
124
+ # JSON 输出
125
+ soke-cli photo-gallery +list --format json
126
+ ```
127
+
128
+ **参数**:
129
+ | 参数 | 必填 | 默认 | 说明 |
130
+ |------|------|------|------|
131
+ | `--page` | 否 | 1 | 页码 |
132
+ | `--limit` | 否 | 20 | 每页数量 |
133
+ | `--category-id` | 否 | — | 分类 ID 筛选 |
134
+ | `--file-keyword` | 否 | — | 文件名关键词搜索 |
135
+ | `--from` | 否 | — | 来源筛选 |
136
+
137
+ **响应关键字段**:
138
+ - `data.list[].uuid` → 图片 UUID(删除时使用)
139
+ - `data.list[].filename` → 文件名
140
+ - `data.list[].photoUri` → 图片访问 URL
141
+ - `data.list[].category_title` → 所属分类名称
142
+ - `data.count` → 总数量
143
+
144
+ ---
145
+
146
+ ## 步骤3.1: 获取图片详情
147
+
148
+ ```bash
149
+ # 获取单张图片详情(含完整访问 URL)
150
+ soke-cli photo-gallery +get --uuid "IMAGE-UUID"
151
+
152
+ # JSON 输出
153
+ soke-cli photo-gallery +get --uuid "IMAGE-UUID" --format json
154
+ ```
155
+
156
+ **参数**:
157
+ | 参数 | 必填 | 说明 |
158
+ |------|------|------|
159
+ | `--uuid` | 是 | 图片 UUID |
160
+
161
+ **响应关键字段**:
162
+ - `data.uuid` → 图片 UUID
163
+ - `data.storage` → 存储类型(aliyun)
164
+ - `data.photoUri` → 图片完整访问 URL
165
+
166
+ ---
167
+
168
+ ## 步骤4: 批量删除图片(可选)
169
+
170
+ ```bash
171
+ # 删除单张图片
172
+ soke-cli photo-gallery +batch-delete --uuids "IMAGE-UUID"
173
+
174
+ # 批量删除多张图片(逗号分隔)
175
+ soke-cli photo-gallery +batch-delete --uuids "UUID1,UUID2,UUID3"
176
+ ```
177
+
178
+ **参数**:
179
+ | 参数 | 必填 | 说明 |
180
+ |------|------|------|
181
+ | `--uuids` | 是 | 图片 UUID,多个用逗号分隔 |
182
+
183
+ > **注意**: 删除操作不可恢复,执行前请确认 UUID 正确。
184
+
185
+ ---
186
+
187
+ ## 可用命令全览
188
+
189
+ | 命令 | 说明 | 风险 |
190
+ |------|------|------|
191
+ | `+list-categories` | 查询图片分类列表 | read |
192
+ | `+list` | 查询图片库列表 | read |
193
+ | `+get` | 获取图片详情(含完整访问 URL) | read |
194
+ | `+create` | 上传图片到图片库 | write |
195
+ | `+batch-delete` | 批量删除图片 | write |
196
+
197
+ ---
198
+
199
+ ## 完整示例
200
+
201
+ ```bash
202
+ # === 1. 查询分类,选一个合适的分类 ===
203
+ soke-cli photo-gallery +list-categories --format json
204
+
205
+ # === 2. 上传图片 ===
206
+ RESULT=$(soke-cli photo-gallery +create \
207
+ --file "./logo.png" \
208
+ --title "公司Logo" \
209
+ --category-id "CATEGORY-UUID" \
210
+ --format json)
211
+
212
+ IMAGE_UUID=$(echo "$RESULT" | jq -r '.data.uuid')
213
+ echo "图片UUID: $IMAGE_UUID"
214
+
215
+ # === 3. 验证上传结果 ===
216
+ soke-cli photo-gallery +list --file-keyword "logo" --format json
217
+
218
+ # === 3.1 获取图片详情和访问 URL ===
219
+ soke-cli photo-gallery +get --uuid "$IMAGE_UUID" --format json
220
+
221
+ # === 4. 批量上传 ===
222
+ for img in banner.jpg logo.png icon.png; do
223
+ soke-cli photo-gallery +create \
224
+ --file "./$img" \
225
+ --title "${img%.*}" \
226
+ --category-id "CATEGORY-UUID"
227
+ done
228
+
229
+ # === 5. 清理不需要的图片 ===
230
+ soke-cli photo-gallery +batch-delete --uuids "$IMAGE_UUID"
231
+ ```
232
+
233
+ ---
234
+
235
+ ## API 接口映射
236
+
237
+ | CLI 命令 | API 路径 | 方法 |
238
+ |----------|----------|------|
239
+ | `+list-categories` | `/skills/photoGallery/category/list` | GET |
240
+ | `+list` | `/skills/photoGallery/list` | GET |
241
+ | `+get` | `/skills/photoGallery/detail/{uuid}` | GET |
242
+ | `+create` | OSS 上传 + `/skills/photoGallery/create` | POST |
243
+ | `+batch-delete` | `/skills/photoGallery/batchDelete` | DELETE |
244
+
245
+ ---
246
+
247
+ ## 调试与故障排除
248
+
249
+ ### 常见错误速查
250
+
251
+ | 错误 | 原因 | 解决 |
252
+ |------|------|------|
253
+ | `未登录授权` | Token 过期 | `soke-cli auth login` |
254
+ | `文件不存在` | 路径错误 | 使用绝对路径或检查相对路径 |
255
+ | `OSS上传失败` | 网络问题或 Token 失效 | 重新登录后重试 |
256
+ | `不支持的图片格式` | 文件非 jpg/jpeg/png | 转换为支持的格式后重试 |
257
+ | `文件大小超过限制` | 文件超过 5 MB | 压缩图片后重试 |
258
+
259
+ ### 调试检查清单
260
+
261
+ ```bash
262
+ # 1. 确认登录状态
263
+ soke-cli config show
264
+
265
+ # 2. 查询图片列表确认上传成功
266
+ soke-cli photo-gallery +list --format json | jq '.data.list[0]'
267
+
268
+ # 3. 始终使用 --format json 获取结构化输出
269
+ soke-cli photo-gallery +list --format json
270
+ ```
271
+
272
+ ---
273
+
274
+ ## 注意事项
275
+
276
+ 1. **上传图片是两步操作**: 先 OSS 上传再注册图片库,两步都必须成功
277
+ 2. **格式限制**: 仅支持 jpg/jpeg/png,其他格式会在上传前报错
278
+ 3. **大小限制**: 单张图片不超过 5 MB,超过会在上传前报错
279
+ 4. **删除不可恢复**: `+batch-delete` 执行前请确认 UUID 正确
280
+ 5. **分类 ID 可选**: 不指定 `--category-id` 时图片归入「未分类」(category_id="empty")
281
+
282
+ ## 相关文档
283
+
284
+ - [`./references/shared.md`](./references/shared.md) — 认证、配置、权限