@sokeai/cli 1.0.76 → 1.0.77

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 (123) hide show
  1. package/README.md +7 -7
  2. package/package.json +1 -1
  3. package/scripts/build-binaries.sh +1 -1
  4. package/scripts/e2e-test.sh +75 -3
  5. package/skills/SKILL.md +18 -1
  6. package/skills/soke-ai-coach-director/CHANGELOG.md +203 -0
  7. package/skills/soke-ai-coach-director/README.md +123 -0
  8. package/skills/soke-ai-coach-director/SKILL.md +221 -0
  9. package/skills/soke-ai-coach-director/coaching/knowledge-packager/knowledge-packager.md +91 -0
  10. package/skills/soke-ai-coach-director/coaching/prompt-engineer/parts/part2-roles.md +97 -0
  11. package/skills/{ai-coach-director → soke-ai-coach-director}/coaching/prompt-engineer/parts/part3-flow.md +3 -3
  12. package/skills/soke-ai-coach-director/coaching/prompt-engineer/prompt-engineer.md +76 -0
  13. package/skills/{ai-coach-director → soke-ai-coach-director}/coaching/prompt-optimizer/prompt-optimizer.md +77 -58
  14. package/skills/{ai-coach-director → soke-ai-coach-director}/platform/adapters/workbuddy.md +2 -3
  15. package/skills/soke-ai-coach-director/platform/interaction.md +103 -0
  16. package/skills/{ai-coach-director → soke-ai-coach-director}/platform/publish-gate.md +3 -3
  17. package/skills/{ai-coach-director → soke-ai-coach-director}/platform/resource-finalizer.md +10 -35
  18. package/skills/{ai-coach-director → soke-ai-coach-director}/platform/soke-ai-training/soke-ai-training.md +33 -3
  19. package/skills/soke-ai-coach-director/platform/sync-engine.md +39 -0
  20. package/skills/{ai-coach-director → soke-ai-coach-director}/references/change-log-partwise-refactor.md +1 -1
  21. package/skills/soke-ai-coach-director/references/env-check.md +146 -0
  22. package/skills/soke-ai-coach-director/references/exec-common.md +126 -0
  23. package/skills/soke-ai-coach-director/references/exec-handbook.md +621 -0
  24. package/skills/soke-ai-coach-director/references/exec-part1.md +86 -0
  25. package/skills/soke-ai-coach-director/references/exec-part2.md +145 -0
  26. package/skills/soke-ai-coach-director/references/exec-part3.md +91 -0
  27. package/skills/soke-ai-coach-director/references/exec-part4.md +187 -0
  28. package/skills/soke-ai-coach-director/references/gate-check-matrix.md +46 -0
  29. package/skills/soke-ai-coach-director/references/micro-tune-labels.md +30 -0
  30. package/skills/soke-ai-coach-director/references/platform-api-pitfalls.md +49 -0
  31. package/skills/soke-ai-coach-director/references/role-resource-matching.md +45 -0
  32. package/skills/{ai-coach-director → soke-ai-coach-director}/references/self-improvement-examples.md +2 -0
  33. package/skills/soke-ai-coach-director/references/self-learning-engine.md +489 -0
  34. package/skills/soke-ai-coach-director/references/subs/part1/SOP.md +17 -0
  35. package/skills/soke-ai-coach-director/references/subs/part2/SOP.md +34 -0
  36. package/skills/soke-ai-coach-director/references/subs/part3/SOP.md +27 -0
  37. package/skills/soke-ai-coach-director/references/subs/part4/SOP.md +31 -0
  38. package/skills/soke-ai-coach-director/references/subs/publish/SOP.md +81 -0
  39. package/skills/soke-ai-coach-director/references/subs/tune/SOP.md +92 -0
  40. package/skills/soke-ai-coach-director/references/verified-cli-cheatsheet.md +56 -0
  41. package/skills/{ai-coach-director → soke-ai-coach-director}/scripts/activator.sh +0 -0
  42. package/skills/{ai-coach-director → soke-ai-coach-director}/scripts/error-detector.sh +0 -0
  43. package/skills/{ai-coach-director → soke-ai-coach-director}/scripts/extract-skill.sh +0 -0
  44. package/skills/soke-ai-coach-director/scripts/gate_check.py +112 -0
  45. package/skills/soke-ai-coach-director/scripts/validate_operations.py +403 -0
  46. package/skills/soke-certificate/SKILL.md +717 -0
  47. package/skills/soke-course/README.md +6 -2
  48. package/skills/soke-course/SKILL.md +3 -3
  49. package/skills/soke-course/references/course-list-courses.md +49 -84
  50. package/skills/soke-course/references/intent-cases.md +2 -2
  51. package/skills/soke-course/references/sop-full-workflow.md +4 -2
  52. package/skills/soke-course/references/subs/publish/SOP.md +21 -3
  53. package/skills/soke-course/references/subs/query/SOP.md +9 -7
  54. package/skills/soke-course/references/subs/settings/SOP.md +2 -1
  55. package/skills/soke-exam-question-pool/SKILL.md +2 -2
  56. package/skills/soke-task/SKILL.md +32 -10
  57. package/skills/soke-training-demand/SKILL.md +2 -2
  58. package/skills/ai-coach-director/SKILL.md +0 -1563
  59. package/skills/ai-coach-director/coaching/prompt-engineer/parts/part2-roles.md +0 -317
  60. package/skills/ai-coach-director/coaching/prompt-engineer/prompt-engineer.md +0 -244
  61. package/skills/ai-coach-director/platform/interaction.md +0 -315
  62. package/skills/ai-coach-director/platform/sync-engine.md +0 -1101
  63. package/skills/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/347/224/265/350/257/235/347/272/246/350/256/277_/346/240/207/345/207/206/347/237/245/350/257/206/345/272/223.md +0 -199
  64. package/skills/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/347/224/265/350/257/235/347/272/246/350/256/277/347/237/245/350/257/206/345/272/223.md +0 -388
  65. package/skills/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/tuv-knowledge-base.md +0 -125
  66. package/skills/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/tuv-p03-first-call-scenario-prompt.md +0 -428
  67. package/skills/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/204P03/351/231/252/347/273/203/346/211/247/350/241/214/346/226/271/346/241/210_20260610.md +0 -225
  68. package/skills/ai-coach-director/references/cases/create//346/237/220/345/234/260/346/226/271/351/223/266/350/241/214//346/237/220/345/234/260/346/226/271/351/223/266/350/241/214/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/277AI/351/231/252/347/273/203/346/265/213/350/257/225/347/224/250/344/276/213/345/220/210/351/233/206.md +0 -525
  69. package/skills/ai-coach-director/references/cases/create//347/211/251/346/265/201/350/241/214/344/270/232//347/211/251/346/265/201/350/241/214/344/270/232-/345/210/235/346/254/241/346/213/234/350/256/277/351/246/231/347/262/276/351/246/231/346/226/231/345/256/242/346/210/267.md +0 -146
  70. package/skills/ai-coach-director/references/cases/create//351/205/222/345/272/227/351/244/220/351/245/256//351/205/222/345/272/227/351/244/220/351/245/256AI/351/231/252/347/273/203_/346/240/207/346/235/2061_/346/226/260/345/223/201/346/216/250/351/224/200_20260701.md +0 -230
  71. package/skills/ai-coach-director/references/cases/create//351/205/222/345/272/227/351/244/220/351/245/256//351/205/222/345/272/227/351/244/220/351/245/256AI/351/231/252/347/273/203_/346/240/207/346/235/2062_/345/202/254/350/217/234/345/256/211/346/212/232_20260701.md +0 -257
  72. package/skills/ai-coach-director/references/cases/create//351/205/222/345/272/227/351/244/220/351/245/256//351/205/222/345/272/227/351/244/220/351/245/256AI/351/231/252/347/273/203_/346/240/207/346/235/2063_/345/267/256/350/257/204/345/233/236/350/256/277_20260701.md +0 -259
  73. package/skills/ai-coach-director/references/cases/create//351/205/222/345/272/227/351/244/220/351/245/256//351/205/222/345/272/227/351/244/220/351/245/256AI/351/231/252/347/273/203/345/234/272/346/231/257/346/226/271/346/241/210_20260701.md +0 -452
  74. package/skills/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_/345/256/242/346/210/267/347/241/256/350/256/244/345/217/215/351/246/210/350/241/250.md +0 -133
  75. package/skills/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_/351/231/252/347/273/203/346/217/220/347/244/272/350/257/215_v1.md +0 -333
  76. package/skills/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_/351/231/252/347/273/203/346/217/220/347/244/272/350/257/215_v2_Part1-Part5.md +0 -649
  77. package/skills/ai-coach-director/references/env-check.md +0 -167
  78. package/skills/ai-coach-director/references/platform-api-pitfalls.md +0 -232
  79. package/skills/ai-coach-director/references/role-resource-matching.md +0 -349
  80. package/skills/ai-coach-director/references/verified-cli-cheatsheet.md +0 -203
  81. /package/skills/{ai-coach-director → soke-ai-coach-director}/assets/ERRORS-TEMPLATE.md +0 -0
  82. /package/skills/{ai-coach-director → soke-ai-coach-director}/assets/FEATURE_REQUESTS-TEMPLATE.md +0 -0
  83. /package/skills/{ai-coach-director → soke-ai-coach-director}/assets/LEARNINGS-TEMPLATE.md +0 -0
  84. /package/skills/{ai-coach-director → soke-ai-coach-director}/assets/SKILL-TEMPLATE.md +0 -0
  85. /package/skills/{ai-coach-director → soke-ai-coach-director}/coaching/prompt-engineer/parts/part1-basic.md +0 -0
  86. /package/skills/{ai-coach-director → soke-ai-coach-director}/coaching/prompt-engineer/parts/part4-scoring.md +0 -0
  87. /package/skills/{ai-coach-director → soke-ai-coach-director}/coaching/prompt-engineer/parts/part5-constraints.md +0 -0
  88. /package/skills/{ai-coach-director → soke-ai-coach-director}/coaching/role-profiler/role-profiler.md +0 -0
  89. /package/skills/{ai-coach-director → soke-ai-coach-director}/platform/adapters/README.md +0 -0
  90. /package/skills/{ai-coach-director → soke-ai-coach-director}/platform/adapters/qclaw.md +0 -0
  91. /package/skills/{ai-coach-director → soke-ai-coach-director}/platform/adapters/wukong.md +0 -0
  92. /package/skills/{ai-coach-director → soke-ai-coach-director}/platform/adapters/zework.md +0 -0
  93. /package/skills/{ai-coach-director → soke-ai-coach-director}/platform/api-fallback.md +0 -0
  94. /package/skills/{ai-coach-director → 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" +0 -0
  95. /package/skills/{ai-coach-director → soke-ai-coach-director}/references/cases/AI/351/231/252/347/273/203Bad Case/346/240/267/346/234/254/345/272/223.md" +0 -0
  96. /package/skills/{ai-coach-director → 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" +0 -0
  97. /package/skills/{ai-coach-director → 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" +0 -0
  98. /package/skills/{ai-coach-director → 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" +0 -0
  99. /package/skills/{ai-coach-director → 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" +0 -0
  100. /package/skills/{ai-coach-director → 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" +0 -0
  101. /package/skills/{ai-coach-director → 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" +0 -0
  102. /package/skills/{ai-coach-director → 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" +0 -0
  103. /package/skills/{ai-coach-director → 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" +0 -0
  104. /package/skills/{ai-coach-director → 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" +0 -0
  105. /package/skills/{ai-coach-director → 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" +0 -0
  106. /package/skills/{ai-coach-director → 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" +0 -0
  107. /package/skills/{ai-coach-director → 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" +0 -0
  108. /package/skills/{ai-coach-director → 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" +0 -0
  109. /package/skills/{ai-coach-director → 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" +0 -0
  110. /package/skills/{ai-coach-director → 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" +0 -0
  111. /package/skills/{ai-coach-director → 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" +0 -0
  112. /package/skills/{ai-coach-director → 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
  113. /package/skills/{ai-coach-director → 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" +0 -0
  114. /package/skills/{ai-coach-director → 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" +0 -0
  115. /package/skills/{ai-coach-director → 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" +0 -0
  116. /package/skills/{ai-coach-director → 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" +0 -0
  117. /package/skills/{ai-coach-director → 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" +0 -0
  118. /package/skills/{ai-coach-director → 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" +0 -0
  119. /package/skills/{ai-coach-director → 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
  120. /package/skills/{ai-coach-director → 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" +0 -0
  121. /package/skills/{ai-coach-director → 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" +0 -0
  122. /package/skills/{ai-coach-director → soke-ai-coach-director}/references/cases//345/233/233/345/244/247/345/234/272/346/231/257_GoodCase_BadCase_20260701.md" +0 -0
  123. /package/skills/{ai-coach-director → 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" +0 -0
@@ -0,0 +1,221 @@
1
+ ---
2
+ name: soke-ai-coach-director
3
+ description: 授客AI平台同步技能。统一调度入口,自动分析意图、检查输入完整性、调度专项技能并执行质量闸门。覆盖创建陪练、微调陪练、技术排障、客户交付与平台同步。
4
+ agent_created: true
5
+ ---
6
+
7
+ # 授客AI平台同步技能
8
+
9
+ ## 版本
10
+ v2.43.1 — 交付后不写日志 / get 回读零上下文 / 知识包条目预生成 / Part4+5 合并应用(exec-part5.md 已删除,规则并入 exec-part4.md)/ sed 输出限流 / 工具化闸门(gate_check.py)/ OS 结构内联 / 材料 sed 单命令 / 积分目标 ≤75(内容生成为不可压地板 ~49)/ 弹窗仅做确认(question ≤2 行)/ 加载顺序清单 / CLI 全静默重定向 / apply 禁止用于验证 / 提炼稿一次成型 / 知识包复用提炼稿
11
+
12
+ ## 🔇 前台/后台输出边界(全局规则)
13
+
14
+ 前台可见:意图识别(≤5行)/ 决策确认 / 材料缺口 / ⚠️ 项清单 / **Part 关键字段摘要(在聊天正文中展示)** / 确认弹窗(仅做确认/调整选择,question 字段 ≤2 行引导语) / 失败通知 / 完成摘要。
15
+ 后台静默:环境检测 / 材料提炼 / JSON 操作 / CLI 命令 / preview/apply 输出 / 回读验证 / 资源匹配 / 同步中间状态 / 质量闸门 / 发布细节 / 知识包调试。
16
+
17
+ **执行层强制规则**:后台 CLI/Python 输出仅内部决策用,严禁原文回显;后台成功确认、print() 输出、JSON 大小、snapshot_id/updated_at/warnings 一律吞掉。仅失败、回读不一致、资源匹配失败、完成摘要时才提及后台结果。平台同步完成后直接结束,除非用户明确要求维护技能,不再写入技能文件或运行日志。
18
+
19
+ **v2.38 弹窗与正文分工规则(v2.41 强化:摘要化展示)**:
20
+ - **聊天正文**展示 Part **关键字段摘要**(非完整 JSON 全文)——Part1 展示场景名/描述前 50 字/标签/考核点;Part2 展示角色名+画像关键词(非完整 background 全文);Part3 展示环节名+目标(非完整 ai_task 全文);Part4 展示维度名+权重(非完整 scoring_rule 全文);Part5 展示固定值确认。**完整 JSON 直接 Write 落盘到 /tmp/,不经过对话上下文**。
21
+ - **AskUserQuestion 弹窗**仅做确认/调整选择——`question` 字段只写 ≤2 行引导语,`options` 只放「确认」「需要调整」等选择项。
22
+ - 弹窗 options 的 description 字段可放 ≤15 字摘要。
23
+ - 聊天正文 Part 摘要展示后,紧接弹窗确认;用户确认后仅输出 `PartN ✅`,不重述内容。
24
+
25
+ **省积分执行约定(v2.41 五次强化,目标 ≤60 积分)**:
26
+ 1. 生成 JSON 用 Write 工具直接落盘,或 Python `json.dump` **静默写**(成功不 print、不跑冗长断言脚本);断言用最小 Python 表达式,失败才报错。
27
+ 2. `+get-scenario` 回读一律 `> /tmp/xxx.json` 重定向,再用 Python 只打印关键字段布尔判断,**不打印完整 JSON**。
28
+ 3. preview/apply 输出强制 `2>/dev/null | tail -3`,只看结尾状态行,**不回显 operations/warnings/snapshot_id/updated_at**。
29
+ 4. 每个 Part 只做 1 次 preview + 1 次 apply + 1 次回读,不重复验证;乐观锁统一在 apply 前取一次最新 `updated_at`。
30
+ 5. 执行期避免重复 Read 已在上下文中的文件(SKILL.md / exec-handbook / 各 SOP 加载一次即可复用)。
31
+ 6. **PartN ✅ 确认后静默(v2.35)**:用户弹窗确认 Part 后,前台仅输出 `PartN ✅`,**禁止重述** Part 正文内容、snapshot_id/updated_at/warnings、回读验证结果、资源匹配结果。直接进入下一 Part 的完整展示。
32
+ 7. **材料预处理只喂提炼稿(v2.35)**:非结构化材料(PDF/DOCX/PPT)经 knowledge-packager 提炼为 Markdown 稿后,**原始材料全文不再进入后续 Part 上下文**。后续 Part1-5 生成只读提炼稿,不重复读原始 PDF/DOCX。提炼稿只保留 Part1-5 所需结构化要素(业务背景/训练对象/话术/画像线索/异议/红线/评分线索),删除无关段落。
33
+ 8. **材料提炼稿字数硬上限(v2.36)**:knowledge-packager 提炼稿 **≤1500 字**(硬上限,超了二次压缩只保留核心要素)。原始 PDF/DOCX 只允许 `pdftotext` 提取到 `/tmp/` 后 **grep 关键词定位关键段落**(如 `grep -C 2 "升舱"`),严禁把全文 Read/Grep 进上下文;提炼稿产出后原始文件一律不再碰。
34
+ 9. **弹窗合并(v2.36)**:前置确认(场景范围 + 旅客角色数)合并为 **1 个弹窗**;发布确认(模板8)+ 知识包确认(模板7)合并为 **1 个弹窗**(两个问题同框)。逐 Part 的模板 1-5 确认保持独立(确认契约不可合并)。
35
+ 10. **get-scenario 全流程仅回读 2 次(v2.36)**:① Part1 创建后(只 Python 打印 `id`/`name`/`key_points` 布尔判断);② 发布闸门前(一次性取全量做闸门校验)。中间 Part2-5 的 apply 返回只 Python 打印 True/False,**不回显 snapshot_id/updated_at/warnings,不额外 get**。
36
+ 11. **闸门批量校验(v2.36)**:Step 7 质量闸门 12 项 + Step 8 发布闸门 4 项,合并为**一次** `+get-scenario` + 一个 Python 布尔判断脚本(16 个断言单行输出),不分批、不逐项 get。
37
+ 12. **CLI 全静默重定向(v2.37 新增)**:所有 soke-cli 命令输出一律 `> /tmp/xxx.json 2>/dev/null`,**禁止 `--pretty` 直出到对话**(create-scenario / list-role-avatars / list-role-voices / apply / get / publish / sync 全部重定向)。Python 只从重定向文件提取需要的字段(scenario_id / updated_at / avatar URL / voice_id),**不回显 JSON 原文**。
38
+ 13. **apply 禁止用于验证(v2.37 新增)**:apply 是写入操作,不是读取操作。验证数据用 `+get-scenario`,**禁止用 apply 回读环节**(会导致 add_conversation_step 重复添加 → 需快照回滚 → 浪费 3-5 积分)。apply 后只从返回值提取 `updated_at`(`tail -1` 或 Python 提取),不回显 operations/snapshot_id。
39
+ 14. **材料提炼稿一次成型(v2.37 新增)**:pdftotext 提取后,**一次性**用 grep 定位 + sed 读取关键段落 + Write 落盘提炼稿到 `/tmp/xxx_refined.md`,**禁止分多轮 sed 回看**(每轮 sed 回看消耗 1-2 积分)。提炼稿落盘后,后续 Part1-5 只 Read 这一个文件。
40
+ 15. **资产库瘦身(v2.37 新增)**:创建型任务**只读** `AI陪练场景分类库.md`(Step2 判定用)+ `exec-handbook.md`(Part1-5 模板用)。`AI陪练提示词模块库.md` / `AI陪练评分标准组件库.md` / `AI陪练客户材料清单与访谈题库.md` **不在创建型加载**(exec-handbook 已含完整模板和断言,模块库/组件库是微调型才用的参考素材)。标杆案例**不加载**(除非用户明确要求参考)。
41
+ 16. **知识包复用提炼稿(v2.37 新增)**:知识包 Markdown source 直接复用材料提炼稿(`/tmp/xxx_refined.md`),**禁止从零重写**(内容已在上下文中,重写浪费 3-5 积分)。只需按知识包 entries 格式拆条目。
42
+ 17. **闸门精简(v2.39)**:Part 自检通过后,闸门仅补查 3 项(非 Part 自检覆盖项),断言从 16→7。详见 `gate-check-matrix.md`。
43
+ 18. **文件读取预算(v2.39)**:全流程技能文件读取 ≤8 次。state-snapshot.json 记录 `file_reads` 计数器,超限触发警告。首次加载 5 次(SKILL+exec-handbook+gate-matrix+当前Part SOP+当前Part框架),后续每 Part +1 次。
44
+ 19. **CLI 命令内联(v2.40 新增)**:高频 CLI 命令格式直接内联到下方「CLI 速查」表,**禁止为查命令格式而 Read `verified-cli-cheatsheet.md`**(该文件仅在命令失败排障时读)。
45
+ 20. **禁止标杆案例查找(v2.40 新增)**:创建型任务**不搜索、不加载标杆案例**(exec-handbook 已含完整模板,标杆案例是微调型参考素材)。
46
+ 21. **Part3 回读限制(v2.40 新增)**:Part3 apply 后只做 1 次布尔断言(`python3 -c "import json;d=json.load(open('/tmp/p3.json'));print(bool(d.get('operations')))"`),**禁止多次 get-scenario 回读调查**(已知 CLI bug 导致 applied=false,不影响最终发布)。
47
+ 22. **exec-handbook 按 Part 拆分加载(v2.41 新增)**:原 exec-handbook.md(26KB)拆为 5 个文件 `references/exec-partN.md`(各 ~5KB)。**每个 Part 只加载对应的 exec-partN.md**,不再一次性加载全部 5 个 Part 模板。通用约束(CLI 参数/材料铁律/字段类型硬规则)提取到 `references/exec-common.md`(~4KB),首次加载 1 次。总加载量从 26KB 降至 ~9KB(当前 Part 5KB + common 4KB)。
48
+ 23. **Part 展示摘要化(v2.41 新增)**:聊天正文只展示 Part **关键字段摘要**(场景名/角色名+关键词/环节名+目标/维度名+权重/固定值确认),**完整 JSON 直接 Write 落盘到 /tmp/partN.json**,不经过对话上下文。中文 token 密度降低 ~60%。
49
+ 24. **材料预过滤(v2.41 新增)**:pdftotext 前先看文件名/标题,**只对与场景直接相关的材料做提取**。无关材料(如升舱场景中的「特殊旅客运输」「不正常航班处置」)跳过 pdftotext+grep,直接标注「已跳过:与场景无关」。
50
+ 25. **apply --reason 内联(v2.41 新增)**:apply 命令必须带 `--reason "PartN 同步"`,格式内联到 CLI 速查表。**禁止省略 --reason 参数**(会导致 422 重试浪费 3-5 积分)。
51
+ 26. **CLI 合并调用(v2.41 新增)**:Part2 头像+语音列表合并为 1 次 Bash 调用(`soke-cli +list-role-avatars ... & soke-cli +list-role-voices ... & wait`),省 1 次独立调用。
52
+ 27. **闸门工具化(v2.42 新增,针对 79.64 实测最大超支点 ~8 分)**:Step 7+8 闸门校验**只跑一个脚本**:`python3 scripts/gate_check.py /tmp/scenario_get.json`,输出 `GATE PASS` 或 `GATE FAIL`+逐项原因。**禁止再用 Python 逐步探查 get-scenario 返回结构**(看结构→看 data 字段→定位字段→查状态——历史实测 8 轮探查浪费 ~8 积分)。脚本已内置 {data:{...}} 嵌套解包、Part3 steps 空值告警(已知 CLI 限制不阻塞)、Part4 权重校验。
53
+ 28. **材料 sed 单命令(v2.42 新增,针对实测 ~4.5 分超支)**:提炼稿只允许**一个 sed 命令**读取全部关键段落——用 `sed -n '/值机话术/,/^$/p; /升舱产品/,/^$/p; /公示/p' 手册.txt > /tmp/key_sections.txt` 一次抓完,再 Read 这一个文件写提炼稿。**禁止分多轮 sed 逐段读**(历史实测 4 轮 sed 浪费 ~4.5 积分)。
54
+ 29. **OS 结构内联(v2.42 新增,消除被迫读取)**:A1-A7 OS 写作结构已内联到 `exec-part2.md`。**禁止为写 OS 去读 `coaching/prompt-engineer/parts/part2-roles.md`**(该文件已列入禁止加载清单)。
55
+ 30. **apply 后零校验(v2.42 新增,针对实测 ~3.6 分超支)**:apply/publish/sync/bind 成功后**只提取状态行**(`tail -3` 已含),**禁止再做任何额外校验**(Part2/Part3 后不再查角色数据、发布后不再 get 复核)。验证统一收敛到闸门阶段的 gate_check.py 一次完成。
56
+ 31. **交付后不写技能日志(v2.43 新增)**:创建型任务在平台同步、发布和知识包绑定成功后,直接输出完成摘要并结束。**禁止自动编辑 SKILL.md、CHANGELOG.md、README.md 或项目工作日志**;禁止为记录本次运行新增学习条目。只有用户明确提出“更新技能/记录经验/维护日志”时,才进入维护流程。`state-snapshot.json` 仅保留断点恢复所需状态,不属于日志写入。
57
+ 32. **get 回读零上下文(v2.43 新增,针对实测 Step6-8 花 7.40 偏高)**:`/tmp/scenario_get.json` **只允许 gate_check.py 脚本读取**,AI 禁止 Read/head/tail/cat 该文件或把其内容引入上下文(10-20KB JSON 进一次上下文 ≈ 3-4 积分)。闸门结果只看 gate_check.py 的单行输出 `GATE PASS`/`GATE FAIL`。关键字段核对已由脚本完成(头像/语音/OS 长度/权重和),**禁止再人工逐项复核一遍**(双份工作)。
58
+ 33. **知识包条目预生成(v2.43 新增,针对 Step10 花 13.07 偏高)**:Step 0.5 写提炼稿时**同步产出** `/tmp/kb-entries.json`(提炼稿的每个知识块一条 entry:产品权益/话术/流程/红线各拆一条)。Step 10 只剩 `+sync` + `+bind` 两个 CLI 调用,**禁止到 Step 10 才从提炼稿重新推导拆条**(内容同源,二次推导浪费 2-3 积分)。
59
+ 34. **Part4+Part5 合并应用(v2.43 新增,展示规则修正)**:Part5 固定配置**不再单独弹窗**,但**聊天正文必须完整展示 Part4 + Part5 两段内容**——Part4 展示维度名+权重+一票否决,紧接 Part5 完整展示 6 项固定配置(1.练习时长不限 2.最大10次 3.通关60分 4.全环节完成 5.AI辅助开启 6.难度2),用编号列表。弹窗引导语:`以上是 Part4 评分标准 + Part5 教练配置(6 项固定值),是否确认写入?`。确认后输出 `Part4 ✅ Part5 ✅`,两个 operation 合并一批 apply(省 1 弹窗 + 1 apply)。**禁止把 Part5 压缩成一行摘要省略展示**。v2.43.1:exec-part5.md 已删除,Part5 全部规则(固定值禁调整/不同步收尾话术等)并入 exec-part4.md。
60
+ 35. **材料 sed 输出限流(v2.43 新增)**:sed 抓取关键段落后接 `| head -c 6000`,防止命中文段过长(如 1.1 万行手册中关键词密集段一次抓出几万字),控制进入上下文的体积。
61
+
62
+ ---
63
+
64
+ ## 技能定位
65
+
66
+ 统一调度入口:意图识别 → 输入完整性检查 → 资产库选择 → 调度专项技能 → 质量闸门 → 平台同步。
67
+ 执行规则按 Part 粒度加载:`references/exec-partN.md`(当前 Part 的 JSON 模板/断言/字段硬规则)+ `references/exec-common.md`(通用约束)。
68
+
69
+ ---
70
+
71
+ ## 调度技能清单
72
+
73
+ | 技能 | 功能 | 路径 |
74
+ |------|------|------|
75
+ | `prompt-engineer` | Part1-5 生成 + 一致性校验 | `coaching/prompt-engineer/prompt-engineer.md` |
76
+ | `role-profiler` | 可选增强:复杂资料按需画像 | `coaching/role-profiler/role-profiler.md` |
77
+ | `prompt-optimizer` | 微调诊断 → 四段式报告 | `coaching/prompt-optimizer/prompt-optimizer.md` |
78
+ | `interaction` | 弹窗交互规则 | `platform/interaction.md` |
79
+ | `publish-gate` | 发布前资源验收 | `platform/publish-gate.md` |
80
+ | `soke-ai-training` | 知识包同步 | `platform/soke-ai-training/soke-ai-training.md` |
81
+
82
+ 参考:`exec-partN.md`(按 Part 加载的模板/断言)/ `exec-common.md`(通用约束)/ `env-check`(环境检测)/ `role-resource-matching`(资源匹配)/ `platform-api-pitfalls`(致命陷阱)/ `gate-check-matrix`(闸门)/ `verified-cli-cheatsheet`(命令速查,排障时读)/ `micro-tune-labels`(微调标签)/ `api-fallback`(REST 降级)。
83
+
84
+ ---
85
+
86
+ ## 标准任务类型
87
+
88
+ 1. **创建型**:搭建新陪练。→ 严格顺序管线 Step 0→10,🔒 不得跳步。
89
+ 2. **微调型**:优化已有提示词。→ prompt-optimizer,走 G9 改动清单闸门。
90
+ 3. **技术排障型**:ASR/TTS/权限/跳转/录音/部署等。禁止改提示词。
91
+ 4. **客户交付/复盘型**:培训包/看板/数据/复盘。纯流程型。
92
+ 5. **平台同步型**:知识包/提示词同步。
93
+
94
+ ---
95
+
96
+ ## 资产调用规则(分步按需加载,禁全量预读)
97
+
98
+ 路径 `references/cases/`。仅到达对应管线阶段才读取,未读文件零消耗:
99
+
100
+ | 阶段 | 读取 | v2.37 变更 |
101
+ |------|------|------|
102
+ | Step 2 场景判定 | `AI陪练场景分类库.md` | ✅ 保留(判定必需) |
103
+ | Part1-5 生成 | `exec-partN.md`(当前 Part)+ `exec-common.md` | ✅ v2.41 拆分加载,只读当前 Part 模板 |
104
+ | Step 1 材料检查 | ~~`AI陪练客户材料清单与访谈题库.md`~~ | ❌ 不加载(材料检查靠提炼稿+业务常识) |
105
+ | Part2 生成前 | ~~`AI陪练提示词模块库.md`~~ | ❌ 不加载(exec-handbook 已含 Part2 完整模板) |
106
+ | Part4 生成前 | ~~`AI陪练评分标准组件库.md`~~ | ❌ 不加载(exec-handbook 已含 Part4 完整模板) |
107
+ | 测试阶段 | `AI陪练测试用例库.md` | 仅用户要求测试时加载 |
108
+
109
+ 标杆案例(`cases/create/`)**v2.37 起默认不加载**(除非用户明确要求参考)。微调型必读:微调问题库 / Bad Case 样本库 / 技术边界排障库。
110
+
111
+ ---
112
+
113
+ ## 加载顺序清单(v2.41.1 新增,结构性约束替代声明性规则)
114
+
115
+ > **按此清单执行,禁止自行判断"要不要多读一个文件求稳"。每步只读清单中列出的文件,不读其他。**
116
+
117
+ | Step | 读取文件 | 次数 |
118
+ |------|---------|------|
119
+ | Step 0 环境检测 | SKILL.md(已在上下文)+ env-check.md | 1 |
120
+ | Step 0.5 材料提炼 | 无(pdftotext/grep/sed/Write 操作) | 0 |
121
+ | Step 1-4 意图+确认 | AI陪练场景分类库.md(Step 2 判定用) | 1 |
122
+ | Part1 生成 | exec-common.md + exec-part1.md | 2 |
123
+ | Part1 创建后 | 无(CLI 操作) | 0 |
124
+ | Part2 生成 | exec-part2.md(common 已在上下文) | 1 |
125
+ | Part2 同步 | 无(CLI 操作) | 0 |
126
+ | Part3 生成 | exec-part3.md | 1 |
127
+ | Part3 同步 | 无 | 0 |
128
+ | Part4+5 生成(v2.43 合并) | exec-part4.md(已含 Part5 全部规则,v2.43.1 删除 exec-part5.md) | 1 |
129
+ | Part4+5 同步 | 无(一批 apply) | 0 |
130
+ | Step 6-8 闸门 | 跑 `scripts/gate_check.py`(gate-check-matrix.md 可选) | 1 |
131
+ | Step 9 发布 | 无 | 0 |
132
+ | Step 10 知识包 | soke-ai-training.md(仅首次;条目用预生成 kb-entries.json) | 1 |
133
+ | **合计** | | **≤9** |
134
+
135
+ **禁止加载的文件**(创建型任务):
136
+ - ❌ `verified-cli-cheatsheet.md`(CLI 速查已内联 SKILL.md,排障时才读)
137
+ - ❌ `platform-api-pitfalls.md`(排障时才读)
138
+ - ❌ `sync-engine.md`(字段参考手册,exec-common 已含通用约束)
139
+ - ❌ `interaction.md`(弹窗规则已内联 SKILL.md)
140
+ - ❌ `publish-gate.md`(闸门规则已内联 gate-check-matrix)
141
+ - ❌ `role-resource-matching.md`(头像/语音匹配规则已内联 exec-part2)
142
+ - ❌ `coaching/prompt-engineer/parts/partN-*.md`(内容框架已内联 exec-partN)
143
+ - ❌ `references/subs/partN/SOP.md`(自检清单已内联 exec-partN)
144
+ - ❌ 所有 `cases/` 下的文件(标杆案例不加载)
145
+ - ❌ `exec-part5.md`(v2.43.1 已删除——Part5 规则并入 exec-part4.md,若发现此文件说明是旧版残留)
146
+
147
+ > ⚠️ 如果执行中发现需要某个禁止加载的文件,说明 exec-partN.md 或 exec-common.md 缺少必要信息,应**补全 exec 文件**而非临时读取禁止文件。
148
+
149
+ ---
150
+
151
+ ## CLI 速查(v2.41 内联,禁止为查格式而 Read cheatsheet 文件)
152
+
153
+ | 命令 | 格式 | 重定向 |
154
+ |------|------|--------|
155
+ | 创建场景 | `soke-cli ai-training +create-scenario --request-file /tmp/part1.json --output /tmp/p1.json` | `> /tmp/p1.json 2>/dev/null` |
156
+ | 列头像+语音 | `soke-cli ai-training +list-role-avatars --lang zh --show-detail --output /tmp/avatars.json & soke-cli ai-training +list-role-voices --lang zh --output /tmp/voices.json & wait` | `> /tmp/res.json 2>/dev/null` |
157
+ | 应用 Part | `soke-cli ai-training +apply-scenario-update --scenario-id <id> --operations-file /tmp/partN.json --base-updated-at <ts> --idempotency-key "cli-<short>-partN-apply" --reason "PartN同步" --output /tmp/partN_apply.json` | `2>/dev/null` |
158
+ | 回读场景 | `soke-cli ai-training +get-scenario --scenario-id <id> --raw --output /tmp/scenario_get.json` | `> /tmp/scenario.json 2>/dev/null` |
159
+ | 发布 | `soke-cli ai-training +publish-scenario --scenario-id <id> --version 1 --version-description "CLI发布" --output /tmp/publish.json` | `2>/dev/null` |
160
+ | 知识包同步 | `soke-cli ai-training +sync --manifest /tmp/manifest.json --idempotency-key "cli-<pkg>-sync" --format json` | `> /tmp/kb_sync.json 2>/dev/null`(⚠️ 不支持 --output) |
161
+ | 知识包绑定 | `soke-cli ai-training +bind-scenario --scenario-id <sid> --version-ids <vid> --compile-plan --format json` | `> /tmp/kb_bind.json 2>/dev/null` |
162
+
163
+ > ⚠️ 所有命令必须带 `ai-training`(`soke-cli ai-training +...`);apply 命令是 `+apply-scenario-update`(非 `+apply-scenario`);bind 用 `--version-ids`(非 `--package-id`);`+sync` 不支持 `--output`,用 `--format json` + shell 重定向。
164
+
165
+ **排障时才读** `verified-cli-cheatsheet.md`(命令失败/参数不确定/重定向规则不明时)。
166
+
167
+ ---
168
+
169
+ ## 创建型任务流程(严格顺序管线)
170
+
171
+ ```
172
+ Step 0 平台就绪检测 🔇 env-check.md:node≥14 → soke-cli → token → corp_id,全过才继续
173
+ Step 0.5 材料格式分流 🔇 预过滤 → 相关材料 pdftotext → sed 单命令抓段(`| head -c 6000` 限流,v2.43)→ **一次成型**写提炼稿 /tmp/xxx_refined.md(≤1500 字)+ **同步预生成** /tmp/kb-entries.json(知识包条目,v2.43)
174
+ Step 1 材料完整性检查 📺 齐全通过 / 不足列缺口(只读提炼稿,不读原始 PDF/DOCX)
175
+ Step 2 场景类型判定 📺 读场景分类库,判定结果给用户确认
176
+ Step 3 链路需求判定 📺 简洁→标准链路;复杂→role-profiler 完整链路
177
+ Step 4 7项清单确认 📺 全✅则问是否生成 Part1;有⚠️列缺口
178
+ Step 5 逐 Part 生成 📺 Part1-3 各自摘要展示+弹窗;Part4+5 同一段正文**完整展示两段**(Part4 维度权重 + Part5 六项固定配置编号列表)+ 1 个弹窗,确认后 `Part4 ✅ Part5 ✅` 两 operation 合一批 apply(v2.43)→ 🔇 同步静默
179
+ Step 6 平台同步验证 🔇 get-scenario 重定向落盘(该 JSON 只允许 gate_check.py 读取,AI 零上下文接触,v2.43)
180
+ Step 7 质量闸门(精简) 🔇 跑 `scripts/gate_check.py /tmp/scenario_get.json`,只看单行输出(v2.42:Part 自检通过的 9 项跳过)
181
+ Step 8 发布闸门(资源) 🔇 同一脚本内含 4 项资源校验(头像/语音/封面/OS),GATE PASS 才发布
182
+ Step 8.5 发布确认弹窗 📺 用户确认才发布,不可跳过(与 Step 10 知识包确认合并为 1 个弹窗)
183
+ Step 9 场景发布 🔇 +publish-scenario,成功展示完成摘要
184
+ Step 10 知识打包 📺 是否同步知识包,🚦 强制触发(与 Step 8.5 合并弹窗)→ 直接用 Step 0.5 预生成的 /tmp/kb-entries.json(v2.43,禁止二次推导拆条)→ +sync +bind 后直接完成,不写技能日志
185
+ ```
186
+
187
+ ### 关键硬规则(必守)
188
+
189
+ 1. **所有 soke-cli 命令**设 `dangerouslyDisableSandbox: true`(Go 二进制在沙箱受限)。
190
+ 2. **Part1 创建链路**:确认后必须 `+create-scenario` → 提取 `scenario_id` → 写 `state-snapshot.json`。scenario_id 未获取禁止展示 Part2。
191
+ 3. **弹窗即时触发(v2.30)+ 聊天正文承载摘要(v2.41)**:Part **关键字段摘要**在聊天正文展示(场景名/角色名+关键词/环节名+目标/维度名+权重/固定值确认),**完整 JSON 直接 Write 落盘到 /tmp/partN.json**。展示后紧接 AskUserQuestion 弹窗。弹窗仅做确认/调整选择。
192
+ 4. **Part 关键约束**:Part2 整包 `replace_ai_roles`(OS 用 update_basic 单独写);Part3 开场语+环节同批原子提交;Part4 权重和 100 + shell 字段在 config 顶层;Part5 固定值禁调整。
193
+ 5. **发布 + 知识包**:模板 8 发布确认、模板 7 知识包确认均不可静默跳过;两确认合并为 1 个弹窗(两个问题同框,发布确认在前、知识包在后)。
194
+
195
+ 各 Part 的 JSON 模板、字段硬规则、断言、反面案例 → `references/exec-partN.md`(按 Part 加载)+ `references/exec-common.md`(通用约束)。
196
+
197
+ ---
198
+
199
+ ## 微调型任务流程
200
+
201
+ 1. 收集输入包 → 2. 确认分析对象(AI角色 vs 学员)→ 3. 先判技术问题(是则分流)→ 4. F/I/O/L/E/S/R/K/T/D 标签诊断 → 5. 匹配资产库 → 6. prompt-optimizer 出报告 → 7. 🔴 G9 改动清单确认(未过禁生成 JSON/apply)→ 8. 模板6 确认 → 平台同步。
202
+
203
+ 缺失规则:无原始对话→只做结构审查;无提示词→只给优化方向;只有"感觉不像"→追问具体片段。
204
+
205
+ ---
206
+
207
+ ## 技术问题分流
208
+
209
+ ASR/TTS/权限/跳转/按钮/录音/部署/数据同步 → 按技术处理,禁止改提示词。排障见 `platform-api-pitfalls.md`。
210
+
211
+ ---
212
+
213
+ ## 质量闸门
214
+
215
+ 创建 12 项 / 微调 8 项 → `gate-check-matrix.md`。闸门↔模板映射:G1↔模板1(Part1)、G2↔模板2(Part2)、G3↔模板3(Part3)、G4+G5↔模板4(Part4+5 合并确认,v2.43.1)、G9↔模板9(微调改动清单)。
216
+
217
+ ---
218
+
219
+ ## 输出格式
220
+
221
+ 任务开始先输出 `## 🎯 意图识别`(≤5行)。创建型前台:意图识别 → Step0-4(仅缺口/⚠️)→ 确认闸门 → Part1-5(**关键字段摘要在聊天正文展示**,完整 JSON 落盘 /tmp/ + 弹窗仅做确认)。Part 摘要禁用 Markdown 表格,用编号列表。**确认后仅输出 `PartN ✅`,不重述内容、不回显后台中间状态**,直接进入下一 Part。用户说"直接做"可跳过确认,但不可跳过 Step0-4。
@@ -0,0 +1,91 @@
1
+ # knowledge-packager
2
+
3
+ ## 定位
4
+
5
+ 用于 AI 陪练创建链路中的资料预处理与发布后可选知识包打包。
6
+
7
+ ## 两种模式
8
+
9
+ ### A. 创建前资料提炼模式(默认)
10
+
11
+ 触发条件:用户提供的业务资料包含任一非结构化格式,例如 PPT、PDF、图片、音视频、扫描件、长文档混排等。若资料组合为“Markdown + 非结构化附件”,也必须触发本模式。
12
+
13
+ 目标:将非结构化资料本地提炼为 Markdown 材料稿,作为 Step1-Step7 完整创建管线的输入。
14
+
15
+ 硬约束:
16
+ - 只做本地提炼,不执行平台同步。
17
+ - 不调用 `soke-cli ai-training +sync`。
18
+ - 不调用 `soke-cli ai-training +bind-scenario`。
19
+ - 不创建知识包 ID。
20
+ - 不把提炼稿当成已同步知识库。
21
+ - 提炼稿必须保留来源事实、业务术语、产品规则、话术、禁忌红线和评分线索。
22
+ - 当 Markdown 与非结构化资料同时存在时,必须合并提炼:Markdown 作为基础材料,非结构化附件作为补充证据和扩展材料,最终产出一份统一 Markdown 稿。
23
+ - 信息不足时输出缺口,不得凭空补全。
24
+ - **v2.35 反压缩铁律**:提炼完成后,原始 PDF/DOCX/PPT 全文**不再进入后续 Part 上下文**。Part1-5 生成只读提炼稿。提炼稿只保留 Part1-5 所需结构化要素,删除无关段落(目录/版权页/附录/重复章节)。若提炼稿仍 >8K tok,二次压缩只保留核心要素。
25
+
26
+ Markdown 提炼稿建议结构:
27
+
28
+ ```markdown
29
+ # 业务资料提炼稿
30
+
31
+ ## 1. 资料来源与范围
32
+
33
+ ## 2. 业务背景
34
+
35
+ ## 3. 训练对象
36
+
37
+ ## 4. 业务场景
38
+
39
+ ## 5. 产品 / 服务 / SOP 要点
40
+
41
+ ## 6. 真实话术与优秀表达
42
+
43
+ ## 7. 客户 / 对话对象画像线索
44
+
45
+ ## 8. 常见异议与处理方式
46
+
47
+ ## 9. 合规红线与禁用话术
48
+
49
+ ## 10. 可转化为评分维度的行为标准
50
+
51
+ ## 11. 材料缺口与待确认问题
52
+ ```
53
+
54
+ ### B. 发布后知识包打包模式(可选)
55
+
56
+ 触发条件:
57
+ - 场景已经发布成功,且有非空 `scenario_id`。
58
+ - 原始资料中存在“知识库 / 金牌话术 / SOP / 禁用话术 / 标准提问 / 异议处理 / 红线表达 / 法律边界 / 产品制度 / 操作流程”等知识内容时,发布成功后触发询问;用户确认后才执行同步。
59
+ - 用户明确要求同步知识包、绑定知识库、上传知识包。
60
+ - 材料内容超长,需要外置为平台知识包。
61
+
62
+ 目标:从 Markdown 材料稿或已确认场景内容中提炼 entries,并调用平台知识包同步与绑定链路。
63
+
64
+ 执行链路:
65
+
66
+ ```text
67
+ 发布完成
68
+
69
+ 提炼 knowledge entries
70
+
71
+ soke-cli ai-training +sync
72
+
73
+ soke-cli ai-training +bind-scenario
74
+ ```
75
+
76
+ 硬约束:
77
+ - 必须在场景发布成功后执行。
78
+ - 绑定前必须确认 `scenario_id` 非空。
79
+ - entries 内容必须来自材料事实或已确认场景内容,不得新增未确认知识。
80
+ - 若只是创建前把 PDF/PPT 提炼成 Markdown,不得误触发本模式;但场景发布成功后,如提炼稿中包含知识库、金牌话术、SOP、禁用话术、异议处理等知识内容,必须询问用户是否同步知识包。用户确认后才进入发布后知识包打包模式。
81
+
82
+ ## 输出原则
83
+
84
+ - 创建前模式输出 Markdown 材料稿。
85
+ - 发布后模式输出 entries 结构与同步/绑定结果。
86
+ - 两种模式必须严格区分:**Markdown 化不是知识包同步;知识包同步是发布后的可选步骤。**
87
+
88
+
89
+ ## 发布后询问规则
90
+
91
+ 发布成功后,如果资料包含可沉淀为知识包的内容,不得直接同步,必须先询问用户是否同步知识包。用户确认后,才提炼 entries 并执行 `+sync` 与 `+bind-scenario`;用户选择暂不同步时,结束交付。
@@ -0,0 +1,97 @@
1
+ ### Part2:AI角色设定(灵魂)
2
+
3
+ 陪练的"灵魂",由**通用内核(OS)**与**具体角色卡**两部分组成。
4
+
5
+ #### AI角色整体设定(通用内核 / OS)
6
+
7
+ 此部分规定该场景下所有 AI 角色必须遵守的底层运行逻辑和行为规范。
8
+
9
+ ---
10
+
11
+ #### 平台落地约束(硬规则)
12
+
13
+ 1. **字段映射**:每个角色属性必须能映射到 JSON——角色名→`role_data.name`、描述→`description`、沟通风格→`communication_style`、背景→`background`、MBTI→`personality_type`、性格→`personality`、标签→`tags`、知识水平→`knowledge_level`、禁忌→`taboos_objections`、头像→`avatar`、语音→`voice_id`、来源→`source_type`。
14
+ 2. **头像/语音后台自动匹配**:展示阶段禁手工填,确认后由 `role-resource-matching.md` 匹配,不向用户展示、不二次确认。
15
+ 3. **knowledge_level 用枚举数组**:`["小白"]` / `["半桶水"]` / `["专家级"]`,禁自然语言长句。
16
+ 4. **tags 2-4 个**、**taboos_objections 可拆列表**(禁整段散文)。
17
+ 5. **角色背景必须来自用户材料**:`background` 直接复制四段深度画像全文(我是谁/我的困扰/我的过往经历/我今天的心态),禁 AI 凭空编造;材料不足标注「⚠️ 材料不足」并追问。
18
+ 6. **background 强制闸门**:生成 JSON 后 preview 前,逐字比对 JSON 的 background 与展示文本一致 + 四段画像完整,任一不过禁止 preview。
19
+
20
+ ---
21
+
22
+ #### 0. 核心输出协议(最高优先级)
23
+
24
+ 1. **禁止括号动作**:严禁输出 `()`、`**` 包裹的动作/心理/神态描写。用语气词("呃""哎呀""嘶——")表达情绪。
25
+ 2. **纯净口语**:每个字都是角色嘴里说出的话,短句、断句、口语填充。
26
+ 3. **信息"挤牙膏"原则**:开场只表达表层诉求,被问才透露深层信息,禁止"倒豆子"式一次性说全。
27
+
28
+ #### 核心身份定义(System Role)
29
+
30
+ 你是"高保真人类社交模拟器"兼"隐形考核官",加载并扮演具复杂社会属性、非理性情绪的特定角色,抛弃"乐于助人、礼貌周全"的 AI 出厂设置,通过真实甚至带敌意的对话考核学员的沟通/销售/谈判能力。
31
+
32
+ #### 内核运行机制
33
+
34
+ 1. **动态状态机**:回复前内心更新 Trust_Level(信任值 0-100,<20 冷淡/>80 成交信号)、Patience_Gauge(耐心条,随轮次衰减)、Fact_Anchoring(事实锚点,严禁幻觉修改)。
35
+ 2. **双层逻辑**:Layer1 理性真值(后台精确算计)→ Layer2 感性表述(前台拟人化扭曲),**永远不要轻易痛快答应**。
36
+ 3. **行为模拟规范**:语言熵增(倒装/重复/断句/口语填充);心理防御(面子机制、逻辑谬误、信息非对称);环境干扰(分心/赶时间/打断)。
37
+ 4. **信息过载与回旋**:学员单次回复超 100 字或多长句时,抓取核心痛点重复质疑("你说了半天到底多少钱?"),但学员明确回答了核心问题就**不能假装没听见**;连续不正面回答则表现不耐烦。
38
+ 5. **知识库与合规约束**:禁"AI式服务"(不主动问"有什么可以帮您")、禁格式化输出(禁 Markdown、超 3 行)、禁事实漂移;学员用违规夸大词("绝对""100%")时触发信任崩塌反击。
39
+
40
+ #### 考核与反馈机制
41
+
42
+ - **隐形考核**:随机"挖坑测试"(故意说错数据)、"施压测试"(突变条件)。
43
+ - **导演模式**:死局/结束/输入 `/复盘` 时跳出角色,以金牌导师身份复盘,格式【🔍 关键死因/成功点】【🧠 心理揭秘】【✨ 金样板话术】。
44
+
45
+ ---
46
+
47
+ #### AI 技能配置
48
+
49
+ 分析资料逆向推导 3-5 项角色核心技能(给学员制造障碍/提供线索/反馈情绪的手段)。每个技能卡格式:
50
+
51
+ ```
52
+ AI技能 N:[技能名,如"信息迷雾制造"]
53
+ 技能定义:[通过语言行为测试学员哪项能力]
54
+ 触发条件:[何时启动]
55
+ 行为表现:
56
+ - 对抗模式(测试学员):[阻碍行为]
57
+ - 释放模式(奖励学员):[学员做对时的配合]
58
+ 系统指令:[底层 Prompt,除非学员明确问 X/Y,否则用模糊词敷衍]
59
+ ```
60
+
61
+ #### 关键结束规则
62
+
63
+ 定义对话如何干净利落结束。AI 输出"成功结束"台词后,学员继续说话只回简短词语并停止。
64
+
65
+ #### 角色库配置(多角色定义)
66
+
67
+ 根据训练需求定义 1-N 个差异化角色,每个角色遵循:
68
+
69
+ ```
70
+ **角色 [序号] 配置卡**
71
+ * 角色名称:[姓名]([角色原型,如"焦虑宝妈/多疑老人"])
72
+ * 沟通风格:[语速/音量/语气/口头禅]
73
+ * 角色描述:[年龄/职业/外貌/生活状态]
74
+ * 角色标签:[标签1][标签2][标签3](映射 tags)
75
+ * 知识水平:[小白/半桶水/专家级](映射 knowledge_level)
76
+ * 角色禁忌:[雷区列表](映射 taboos_objections)
77
+ * MBTI性格类型:[单值,如 ISFJ]
78
+ * 平台资源:隐藏字段,后台自动匹配,来源=custom
79
+
80
+ 角色背景(四段深度画像)→ background(直接复制全文,不压缩):
81
+ 1. 我是谁 ← 来源[材料出处]
82
+ 2. 我的困扰 ← 来源[材料出处]
83
+ 3. 我的过往经历 ← 来源[材料出处]
84
+ 4. 我今天的心态 ← 来源[材料出处]
85
+ (我的行为模式:共鸣触发/关键台词/防御机制/决策逻辑 → Part3 素材,不写入 Part2 JSON)
86
+ ```
87
+
88
+ ---
89
+
90
+ #### Part2 输出收口检查清单
91
+
92
+ - 头像/语音已隐藏,待后台匹配(不可手写 URL/ID)
93
+ - 角色姓名+性别暗示+年龄段足以支撑资源匹配
94
+ - knowledge_level 能落成数组、tags 精炼、禁忌已拆列表
95
+ - 角色背景全部来自用户材料(每段标注出处)
96
+ - 默认 source_type=custom;无占位思路
97
+ - background 四段完整且每段标注材料出处
@@ -11,8 +11,8 @@
11
11
  - 模式B (旁白开场): 旁白描述场景,写完整场景文案。
12
12
  - → 直接来源 `update_basic.opening_dialogue`
13
13
 
14
- * **开场语类型:** `text` `voice`。
15
- - → 直接来源 `update_basic.opening_dialogue_type`
14
+ * **开场语类型:** 固定为数字 `1`,不可更改。
15
+ - → 直接来源 `update_basic.opening_dialogue_type`,值为数字 `1`(非字符串,见 exec-handbook Part3 字段硬规则)
16
16
 
17
17
  * **对话环节 (SOP):** 每个环节必须包含以下 4 个字段,不可缺一:
18
18
  - **环节名:** 简短概括本环节主题(4-10 字),如"临床需求切入"、"破冰确认"。
@@ -41,7 +41,7 @@
41
41
  [完整原文,不缩略]
42
42
 
43
43
  ### 开场语类型
44
- text / voice
44
+ AI智能生成(固定,不可更改)
45
45
 
46
46
  ### 环节 1:[环节名]
47
47
  - **学员目标:** [完整原文]
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: prompt-engineer
3
+ description: AI陪练提示词工程技能。当用户需要创建、修改或优化"AI陪练"后台的系统提示词时触发。按 Part1-Part5 逐段生成、逐段确认、逐段同步:Part1 基础信息、Part2 AI角色设定、Part3 流程设置、Part4 评分标准、Part5 教练设置,确保各设置项之间逻辑严密、相互支撑。触发关键词:AI陪练提示词、提示词优化、场景配置、后台设置项。
4
+ ---
5
+
6
+ # AI陪练提示词专家 (Prompt Engineer)
7
+
8
+ ## 双层分工
9
+
10
+ | 层 | 职责 | 文件 |
11
+ |---|---|---|
12
+ | **coaching** | 纯内容生成:产出 Part1-5 提示词 + 知识库 | 本文件 + `parts/` |
13
+ | **platform** | 确认 + JSON + CLI + 字段映射 | `platform/interaction.md` + `references/exec-handbook.md` |
14
+
15
+ prompt-engineer 只负责"产出什么内容",platform 层负责"怎么确认、怎么同步"。
16
+
17
+ ## 角色定义
18
+
19
+ 你是顶级系统提示词编写与优化专家,专精"AI陪练"。核心是分析、创建、微调 AI 陪练后台提示词,确保各设置项逻辑严密、相互支撑,打造高效、拟真、能达成训练目标的陪练场景。标杆案例内置 `references/cases/`,按场景类型选参照。
20
+
21
+ ## 核心知识库:Part1-5 框架(按 Part 粒度读 parts/)
22
+
23
+ - `parts/part1-basic.md` — 基础信息(场景名称/标签/描述/考核关键点)
24
+ - `parts/part2-roles.md` — AI角色设定(OS 内核 + 角色卡 + 四段画像)
25
+ - `parts/part3-flow.md` — 流程设置(开场语 + SOP 环节 + IF-THEN)
26
+ - `parts/part4-scoring.md` — 评分标准(维度/权重/一票否决)
27
+ - `parts/part5-constraints.md` — 教练设置(固定值)
28
+
29
+ 生成每一段前,按 Part 粒度读对应文件作框架指导。
30
+
31
+ ---
32
+
33
+ ## 工作流程
34
+
35
+ ### 全局规则(各 Part 通用,不重复)
36
+
37
+ 1. **展示完成 → 立即弹窗**:Part 内容逐字段完整展示后立即按对应模板弹窗(弹窗即确认),禁止先文字询问等用户回复再弹窗。
38
+ 2. **展示检查(弹窗前闸门)**:未完整展示该 Part 全部字段 → 禁止弹窗,回退补充。
39
+ 3. **失败不可静默续流**:确认后若 JSON 未生成 / preview/apply 未真实执行 / 平台侧未展示,必须报错停在当前 Part。**仅 CLI 回读为空但平台实际已展示,不算失败**。
40
+ 4. **确认后前台静默**:确认后的后台创建/同步不展示中间过程,成功直接进下一 Part。
41
+
42
+ ### Step 0:环境检测
43
+
44
+ 读 `references/env-check.md`:node → soke-cli → 登录(无 token 则自动 `soke-cli auth login`)→ 企业绑定。任一步未过先修复再进入。
45
+
46
+ ### Step 1:Part1 基础信息
47
+
48
+ 读 `parts/part1-basic.md` → 输出 Part1 → 弹窗模板 1 → 确认后后台:固定封面 `https://newsokeeditorcdn.soke.cn/public/ai/cover/lingshou_daogou.png` → `+create-scenario` → 提取 `scenario_id` 写状态快照 → `get-scenario` 回读验证 name/description/tags/key_points。scenario_id 未获取或验证失败 → 报错停住,禁止进 Part2。
49
+
50
+ ### Step 2:Part2 AI 角色
51
+
52
+ 读 `parts/part2-roles.md` → 输出 Part2(先 OS 全文,再逐个角色)→ 弹窗模板 2 → 确认后后台:资源匹配(`+list-role-avatars`/`+list-role-voices`,见 `role-resource-matching.md`)→ 生成 JSON → 整包 `replace_ai_roles`(OS 用 update_basic 单独写;整包失败降级逐个,见 `subs/part2/SOP.md`)→ 回读验证角色无"角色数据异常"、avatar=URL、voice_id=ID、OS 非空。
53
+
54
+ ### Step 3:Part3 流程
55
+
56
+ 读 `parts/part3-flow.md` → 输出 Part3(开场语 + 环节)→ 弹窗模板 3 → 确认后后台:生成 JSON(开场语+环节同批原子提交)→ preview/apply。**回读 conversation_steps 为空属已知 CLI bug**,按白名单通过(见 `subs/part3/SOP.md` 判定矩阵),记录待 Web 后台补录,继续 Part4。
57
+
58
+ ### Step 4:Part4 评分
59
+
60
+ 读 `parts/part4-scoring.md` → 输出 Part4(名称/描述/维度)→ 弹窗模板 4 → 确认后后台:生成 JSON(`replace_scoring_criteria_config`,外壳字段见 exec-handbook Part4)→ preview/apply → 回读验证 scoring_criteria_config 非空、权重和 100。
61
+ - ⚠️ `scoring_rule`/`criteria` 禁止嵌入引号示例对话(那是金牌话术库内容);一票否决嵌入维度 scoring_rule 末尾。
62
+
63
+ ### Step 5:Part5 教练设置
64
+
65
+ 输出固定模板(时长关/次数10/通关60/all_steps/助答开/难度中)→ 弹窗模板 5 → 确认后后台:生成 JSON(固定值)→ preview/apply → 进入 Step 6-10(验证→闸门→发布确认→发布→知识包),**不在 Part5 发布**。
66
+
67
+ ---
68
+
69
+ ## 质量标准
70
+
71
+ - Part1 考核点 ↔ Part3 学员目标一一对应;Part3 AI任务含进入条件+IF-THEN+退出条件,与 Part4 维度逻辑一致。
72
+ - Part2 每个角色 MBTI 单值、background 四段画像完整;avatar 用资源 `url`(非 id)、voice_id 用资源 `id`(非 sample_url)。
73
+ - `replace_ai_roles` 用 `data.roles`(非 data.ai_roles),每角色含 `scenario_role_id`。
74
+ - **JSON 忠实搬运**:JSON 字段值 = 已确认 Part 原文 1:1 搬运,禁缩略/改写/重组;生成后 preview 前逐字比对。
75
+ - 禁止 AI 视角词汇;台词口语化;平台 JSON 写独立文件,禁止在聊天输出 JSON 正文。
76
+ - Part4 不生成知识库内容;知识库(金牌话术/异议话术)仅作参考资料,不同步平台、不对学员展示。