@walwal-harness/cli 6.1.5 → 7.1.0

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 (328) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/HR-Resource/academic-academic-anthropologist/SKILL.md +142 -0
  3. package/HR-Resource/academic-academic-geographer/SKILL.md +144 -0
  4. package/HR-Resource/academic-academic-historian/SKILL.md +140 -0
  5. package/HR-Resource/academic-academic-narratologist/SKILL.md +135 -0
  6. package/HR-Resource/academic-academic-psychologist/SKILL.md +135 -0
  7. package/HR-Resource/brick-office/SKILL.md +20 -0
  8. package/HR-Resource/cdo/SKILL.md +33 -0
  9. package/HR-Resource/ceo/SKILL.md +36 -0
  10. package/HR-Resource/coo/SKILL.md +36 -0
  11. package/HR-Resource/cqo/SKILL.md +33 -0
  12. package/HR-Resource/cto/SKILL.md +36 -0
  13. package/HR-Resource/design-design-brand-guardian/SKILL.md +339 -0
  14. package/HR-Resource/design-design-image-prompt-engineer/SKILL.md +253 -0
  15. package/HR-Resource/design-design-inclusive-visuals-specialist/SKILL.md +88 -0
  16. package/HR-Resource/design-design-ui-designer/SKILL.md +400 -0
  17. package/HR-Resource/design-design-ux-architect/SKILL.md +486 -0
  18. package/HR-Resource/design-design-ux-researcher/SKILL.md +346 -0
  19. package/HR-Resource/design-design-visual-storyteller/SKILL.md +166 -0
  20. package/HR-Resource/design-design-whimsy-injector/SKILL.md +455 -0
  21. package/HR-Resource/engineering-engineering-ai-data-remediation-engineer/SKILL.md +227 -0
  22. package/HR-Resource/engineering-engineering-ai-engineer/SKILL.md +163 -0
  23. package/HR-Resource/engineering-engineering-autonomous-optimization-architect/SKILL.md +124 -0
  24. package/HR-Resource/engineering-engineering-backend-architect/SKILL.md +252 -0
  25. package/HR-Resource/engineering-engineering-cms-developer/SKILL.md +553 -0
  26. package/HR-Resource/engineering-engineering-code-reviewer/SKILL.md +93 -0
  27. package/HR-Resource/engineering-engineering-codebase-onboarding-engineer/SKILL.md +190 -0
  28. package/HR-Resource/engineering-engineering-data-engineer/SKILL.md +323 -0
  29. package/HR-Resource/engineering-engineering-database-optimizer/SKILL.md +193 -0
  30. package/HR-Resource/engineering-engineering-devops-automator/SKILL.md +393 -0
  31. package/HR-Resource/engineering-engineering-email-intelligence-engineer/SKILL.md +370 -0
  32. package/HR-Resource/engineering-engineering-embedded-firmware-engineer/SKILL.md +190 -0
  33. package/HR-Resource/engineering-engineering-feishu-integration-developer/SKILL.md +615 -0
  34. package/HR-Resource/engineering-engineering-filament-optimization-specialist/SKILL.md +300 -0
  35. package/HR-Resource/engineering-engineering-frontend-developer/SKILL.md +242 -0
  36. package/HR-Resource/engineering-engineering-git-workflow-master/SKILL.md +101 -0
  37. package/HR-Resource/engineering-engineering-incident-response-commander/SKILL.md +461 -0
  38. package/HR-Resource/engineering-engineering-minimal-change-engineer/SKILL.md +224 -0
  39. package/HR-Resource/engineering-engineering-mobile-app-builder/SKILL.md +510 -0
  40. package/HR-Resource/engineering-engineering-rapid-prototyper/SKILL.md +479 -0
  41. package/HR-Resource/engineering-engineering-security-engineer/SKILL.md +321 -0
  42. package/HR-Resource/engineering-engineering-senior-developer/SKILL.md +193 -0
  43. package/HR-Resource/engineering-engineering-software-architect/SKILL.md +98 -0
  44. package/HR-Resource/engineering-engineering-solidity-smart-contract-engineer/SKILL.md +539 -0
  45. package/HR-Resource/engineering-engineering-sre/SKILL.md +107 -0
  46. package/HR-Resource/engineering-engineering-technical-writer/SKILL.md +410 -0
  47. package/HR-Resource/engineering-engineering-threat-detection-engineer/SKILL.md +551 -0
  48. package/HR-Resource/engineering-engineering-voice-ai-integration-engineer/SKILL.md +578 -0
  49. package/HR-Resource/engineering-engineering-wechat-mini-program-developer/SKILL.md +367 -0
  50. package/HR-Resource/finance-finance-bookkeeper-controller/SKILL.md +277 -0
  51. package/HR-Resource/finance-finance-financial-analyst/SKILL.md +251 -0
  52. package/HR-Resource/finance-finance-fpa-analyst/SKILL.md +280 -0
  53. package/HR-Resource/finance-finance-investment-researcher/SKILL.md +289 -0
  54. package/HR-Resource/finance-finance-tax-strategist/SKILL.md +256 -0
  55. package/HR-Resource/game-development-blender-blender-addon-engineer/SKILL.md +251 -0
  56. package/HR-Resource/game-development-game-audio-engineer/SKILL.md +281 -0
  57. package/HR-Resource/game-development-game-designer/SKILL.md +184 -0
  58. package/HR-Resource/game-development-godot-godot-gameplay-scripter/SKILL.md +351 -0
  59. package/HR-Resource/game-development-godot-godot-multiplayer-engineer/SKILL.md +314 -0
  60. package/HR-Resource/game-development-godot-godot-shader-developer/SKILL.md +283 -0
  61. package/HR-Resource/game-development-level-designer/SKILL.md +225 -0
  62. package/HR-Resource/game-development-narrative-designer/SKILL.md +260 -0
  63. package/HR-Resource/game-development-roblox-studio-roblox-avatar-creator/SKILL.md +314 -0
  64. package/HR-Resource/game-development-roblox-studio-roblox-experience-designer/SKILL.md +322 -0
  65. package/HR-Resource/game-development-roblox-studio-roblox-systems-scripter/SKILL.md +342 -0
  66. package/HR-Resource/game-development-technical-artist/SKILL.md +246 -0
  67. package/HR-Resource/game-development-unity-unity-architect/SKILL.md +288 -0
  68. package/HR-Resource/game-development-unity-unity-editor-tool-developer/SKILL.md +327 -0
  69. package/HR-Resource/game-development-unity-unity-multiplayer-engineer/SKILL.md +338 -0
  70. package/HR-Resource/game-development-unity-unity-shader-graph-artist/SKILL.md +286 -0
  71. package/HR-Resource/game-development-unreal-engine-unreal-multiplayer-architect/SKILL.md +330 -0
  72. package/HR-Resource/game-development-unreal-engine-unreal-systems-engineer/SKILL.md +327 -0
  73. package/HR-Resource/game-development-unreal-engine-unreal-technical-artist/SKILL.md +273 -0
  74. package/HR-Resource/game-development-unreal-engine-unreal-world-builder/SKILL.md +290 -0
  75. package/HR-Resource/hiring/SKILL.md +28 -0
  76. package/HR-Resource/index.json +747 -0
  77. package/HR-Resource/integrations-mcp-memory-backend-architect-with-memory/SKILL.md +264 -0
  78. package/HR-Resource/marketing-marketing-agentic-search-optimizer/SKILL.md +328 -0
  79. package/HR-Resource/marketing-marketing-ai-citation-strategist/SKILL.md +187 -0
  80. package/HR-Resource/marketing-marketing-app-store-optimizer/SKILL.md +338 -0
  81. package/HR-Resource/marketing-marketing-baidu-seo-specialist/SKILL.md +243 -0
  82. package/HR-Resource/marketing-marketing-bilibili-content-strategist/SKILL.md +216 -0
  83. package/HR-Resource/marketing-marketing-book-co-author/SKILL.md +127 -0
  84. package/HR-Resource/marketing-marketing-carousel-growth-engine/SKILL.md +216 -0
  85. package/HR-Resource/marketing-marketing-china-ecommerce-operator/SKILL.md +300 -0
  86. package/HR-Resource/marketing-marketing-china-market-localization-strategist/SKILL.md +300 -0
  87. package/HR-Resource/marketing-marketing-content-creator/SKILL.md +71 -0
  88. package/HR-Resource/marketing-marketing-cross-border-ecommerce/SKILL.md +276 -0
  89. package/HR-Resource/marketing-marketing-douyin-strategist/SKILL.md +166 -0
  90. package/HR-Resource/marketing-marketing-growth-hacker/SKILL.md +71 -0
  91. package/HR-Resource/marketing-marketing-instagram-curator/SKILL.md +130 -0
  92. package/HR-Resource/marketing-marketing-kuaishou-strategist/SKILL.md +240 -0
  93. package/HR-Resource/marketing-marketing-linkedin-content-creator/SKILL.md +230 -0
  94. package/HR-Resource/marketing-marketing-livestream-commerce-coach/SKILL.md +322 -0
  95. package/HR-Resource/marketing-marketing-podcast-strategist/SKILL.md +294 -0
  96. package/HR-Resource/marketing-marketing-private-domain-operator/SKILL.md +325 -0
  97. package/HR-Resource/marketing-marketing-reddit-community-builder/SKILL.md +140 -0
  98. package/HR-Resource/marketing-marketing-seo-specialist/SKILL.md +338 -0
  99. package/HR-Resource/marketing-marketing-short-video-editing-coach/SKILL.md +429 -0
  100. package/HR-Resource/marketing-marketing-social-media-strategist/SKILL.md +142 -0
  101. package/HR-Resource/marketing-marketing-tiktok-strategist/SKILL.md +142 -0
  102. package/HR-Resource/marketing-marketing-twitter-engager/SKILL.md +143 -0
  103. package/HR-Resource/marketing-marketing-video-optimization-specialist/SKILL.md +136 -0
  104. package/HR-Resource/marketing-marketing-wechat-official-account/SKILL.md +162 -0
  105. package/HR-Resource/marketing-marketing-weibo-strategist/SKILL.md +257 -0
  106. package/HR-Resource/marketing-marketing-xiaohongshu-specialist/SKILL.md +155 -0
  107. package/HR-Resource/marketing-marketing-zhihu-strategist/SKILL.md +179 -0
  108. package/HR-Resource/ops/SKILL.md +46 -0
  109. package/HR-Resource/paid-media-paid-media-auditor/SKILL.md +88 -0
  110. package/HR-Resource/paid-media-paid-media-creative-strategist/SKILL.md +88 -0
  111. package/HR-Resource/paid-media-paid-media-paid-social-strategist/SKILL.md +88 -0
  112. package/HR-Resource/paid-media-paid-media-ppc-strategist/SKILL.md +88 -0
  113. package/HR-Resource/paid-media-paid-media-programmatic-buyer/SKILL.md +88 -0
  114. package/HR-Resource/paid-media-paid-media-search-query-analyst/SKILL.md +88 -0
  115. package/HR-Resource/paid-media-paid-media-tracking-specialist/SKILL.md +88 -0
  116. package/HR-Resource/product-product-behavioral-nudge-engine/SKILL.md +97 -0
  117. package/HR-Resource/product-product-feedback-synthesizer/SKILL.md +136 -0
  118. package/HR-Resource/product-product-manager/SKILL.md +486 -0
  119. package/HR-Resource/product-product-sprint-prioritizer/SKILL.md +171 -0
  120. package/HR-Resource/product-product-trend-researcher/SKILL.md +176 -0
  121. package/HR-Resource/project-management-project-management-experiment-tracker/SKILL.md +215 -0
  122. package/HR-Resource/project-management-project-management-jira-workflow-steward/SKILL.md +247 -0
  123. package/HR-Resource/project-management-project-management-project-shepherd/SKILL.md +211 -0
  124. package/HR-Resource/project-management-project-management-studio-operations/SKILL.md +217 -0
  125. package/HR-Resource/project-management-project-management-studio-producer/SKILL.md +220 -0
  126. package/HR-Resource/project-management-project-manager-senior/SKILL.md +152 -0
  127. package/HR-Resource/resource-manager/SKILL.md +23 -0
  128. package/HR-Resource/sales-sales-account-strategist/SKILL.md +244 -0
  129. package/HR-Resource/sales-sales-coach/SKILL.md +288 -0
  130. package/HR-Resource/sales-sales-deal-strategist/SKILL.md +197 -0
  131. package/HR-Resource/sales-sales-discovery-coach/SKILL.md +242 -0
  132. package/HR-Resource/sales-sales-engineer/SKILL.md +199 -0
  133. package/HR-Resource/sales-sales-outbound-strategist/SKILL.md +218 -0
  134. package/HR-Resource/sales-sales-pipeline-analyst/SKILL.md +284 -0
  135. package/HR-Resource/sales-sales-proposal-strategist/SKILL.md +234 -0
  136. package/HR-Resource/spatial-computing-macos-spatial-metal-engineer/SKILL.md +354 -0
  137. package/HR-Resource/spatial-computing-terminal-integration-specialist/SKILL.md +87 -0
  138. package/HR-Resource/spatial-computing-visionos-spatial-engineer/SKILL.md +71 -0
  139. package/HR-Resource/spatial-computing-xr-cockpit-interaction-specialist/SKILL.md +49 -0
  140. package/HR-Resource/spatial-computing-xr-immersive-developer/SKILL.md +49 -0
  141. package/HR-Resource/spatial-computing-xr-interface-architect/SKILL.md +49 -0
  142. package/HR-Resource/specialized-accounts-payable-agent/SKILL.md +202 -0
  143. package/HR-Resource/specialized-agentic-identity-trust/SKILL.md +404 -0
  144. package/HR-Resource/specialized-agents-orchestrator/SKILL.md +384 -0
  145. package/HR-Resource/specialized-automation-governance-architect/SKILL.md +233 -0
  146. package/HR-Resource/specialized-blockchain-security-auditor/SKILL.md +480 -0
  147. package/HR-Resource/specialized-compliance-auditor/SKILL.md +175 -0
  148. package/HR-Resource/specialized-corporate-training-designer/SKILL.md +209 -0
  149. package/HR-Resource/specialized-customer-service/SKILL.md +415 -0
  150. package/HR-Resource/specialized-data-consolidation-agent/SKILL.md +77 -0
  151. package/HR-Resource/specialized-government-digital-presales-consultant/SKILL.md +380 -0
  152. package/HR-Resource/specialized-healthcare-customer-service/SKILL.md +406 -0
  153. package/HR-Resource/specialized-healthcare-marketing-compliance/SKILL.md +412 -0
  154. package/HR-Resource/specialized-hospitality-guest-services/SKILL.md +620 -0
  155. package/HR-Resource/specialized-hr-onboarding/SKILL.md +468 -0
  156. package/HR-Resource/specialized-identity-graph-operator/SKILL.md +277 -0
  157. package/HR-Resource/specialized-language-translator/SKILL.md +281 -0
  158. package/HR-Resource/specialized-legal-billing-time-tracking/SKILL.md +586 -0
  159. package/HR-Resource/specialized-legal-client-intake/SKILL.md +509 -0
  160. package/HR-Resource/specialized-legal-document-review/SKILL.md +471 -0
  161. package/HR-Resource/specialized-loan-officer-assistant/SKILL.md +572 -0
  162. package/HR-Resource/specialized-lsp-index-engineer/SKILL.md +331 -0
  163. package/HR-Resource/specialized-real-estate-buyer-seller/SKILL.md +613 -0
  164. package/HR-Resource/specialized-recruitment-specialist/SKILL.md +526 -0
  165. package/HR-Resource/specialized-report-distribution-agent/SKILL.md +82 -0
  166. package/HR-Resource/specialized-retail-customer-returns/SKILL.md +583 -0
  167. package/HR-Resource/specialized-sales-data-extraction-agent/SKILL.md +84 -0
  168. package/HR-Resource/specialized-sales-outreach/SKILL.md +442 -0
  169. package/HR-Resource/specialized-specialized-chief-of-staff/SKILL.md +296 -0
  170. package/HR-Resource/specialized-specialized-civil-engineer/SKILL.md +373 -0
  171. package/HR-Resource/specialized-specialized-cultural-intelligence-strategist/SKILL.md +105 -0
  172. package/HR-Resource/specialized-specialized-developer-advocate/SKILL.md +334 -0
  173. package/HR-Resource/specialized-specialized-document-generator/SKILL.md +72 -0
  174. package/HR-Resource/specialized-specialized-french-consulting-market/SKILL.md +209 -0
  175. package/HR-Resource/specialized-specialized-korean-business-navigator/SKILL.md +233 -0
  176. package/HR-Resource/specialized-specialized-mcp-builder/SKILL.md +265 -0
  177. package/HR-Resource/specialized-specialized-model-qa/SKILL.md +505 -0
  178. package/HR-Resource/specialized-specialized-salesforce-architect/SKILL.md +197 -0
  179. package/HR-Resource/specialized-specialized-workflow-architect/SKILL.md +614 -0
  180. package/HR-Resource/specialized-study-abroad-advisor/SKILL.md +299 -0
  181. package/HR-Resource/specialized-supply-chain-strategist/SKILL.md +599 -0
  182. package/HR-Resource/specialized-zk-steward/SKILL.md +228 -0
  183. package/HR-Resource/support-support-analytics-reporter/SKILL.md +382 -0
  184. package/HR-Resource/support-support-executive-summary-generator/SKILL.md +229 -0
  185. package/HR-Resource/support-support-finance-tracker/SKILL.md +459 -0
  186. package/HR-Resource/support-support-infrastructure-maintainer/SKILL.md +635 -0
  187. package/HR-Resource/support-support-legal-compliance-checker/SKILL.md +605 -0
  188. package/HR-Resource/support-support-support-responder/SKILL.md +602 -0
  189. package/HR-Resource/testing-testing-accessibility-auditor/SKILL.md +333 -0
  190. package/HR-Resource/testing-testing-api-tester/SKILL.md +323 -0
  191. package/HR-Resource/testing-testing-evidence-collector/SKILL.md +227 -0
  192. package/HR-Resource/testing-testing-performance-benchmarker/SKILL.md +285 -0
  193. package/HR-Resource/testing-testing-reality-checker/SKILL.md +253 -0
  194. package/HR-Resource/testing-testing-test-results-analyzer/SKILL.md +322 -0
  195. package/HR-Resource/testing-testing-tool-evaluator/SKILL.md +411 -0
  196. package/HR-Resource/testing-testing-workflow-optimizer/SKILL.md +467 -0
  197. package/assets/launchd/com.walwal.harness-wake.plist.template +1 -1
  198. package/assets/templates/company-pipeline-manifest.json +71 -0
  199. package/assets/templates/config.json +40 -2
  200. package/bin/init.js +208 -109
  201. package/commands/goal.md +25 -0
  202. package/commands/hot-fix.md +25 -0
  203. package/commands/play-harness.md +22 -0
  204. package/commands/release-harness.md +22 -0
  205. package/commands/stop-harness.md +21 -0
  206. package/conventions/README.md +14 -88
  207. package/conventions/brick-office.md +5 -0
  208. package/conventions/cdo.md +6 -0
  209. package/conventions/ceo.md +9 -0
  210. package/conventions/coo.md +6 -0
  211. package/conventions/cqo.md +6 -23
  212. package/conventions/cto.md +5 -23
  213. package/conventions/hiring.md +7 -0
  214. package/conventions/ops.md +9 -0
  215. package/conventions/resource-manager.md +6 -0
  216. package/conventions/shared.md +29 -40
  217. package/gotchas/README.md +14 -82
  218. package/gotchas/brick-office.md +9 -0
  219. package/gotchas/cdo.md +9 -0
  220. package/gotchas/ceo.md +9 -0
  221. package/gotchas/coo.md +9 -0
  222. package/gotchas/cqo.md +6 -19
  223. package/gotchas/cto.md +6 -19
  224. package/gotchas/hiring.md +9 -0
  225. package/gotchas/ops.md +17 -0
  226. package/gotchas/resource-manager.md +9 -0
  227. package/gotchas/shared.md +13 -0
  228. package/package.json +11 -17
  229. package/scripts/conductor-tick.sh +97 -4
  230. package/scripts/harness-hourly-review.sh +284 -5
  231. package/scripts/harness-parity-audit.sh +101 -0
  232. package/scripts/harness-queue-manager.sh +1 -1
  233. package/scripts/harness-runtime-stop.sh +58 -0
  234. package/scripts/harness-service-ops-monitor.sh +207 -18
  235. package/scripts/harness-stop.sh +18 -0
  236. package/scripts/harness-wake-install.sh +1 -0
  237. package/scripts/harness-wake.sh +100 -8
  238. package/scripts/harness-worker-dispatch.sh +52 -21
  239. package/scripts/harness-worker-evidence-validate.sh +59 -0
  240. package/scripts/import-agency-agents.js +102 -0
  241. package/scripts/lib/harness-agent-resolver.sh +127 -0
  242. package/scripts/play.sh +104 -0
  243. package/scripts/release.sh +89 -0
  244. package/conventions/conductor.md +0 -24
  245. package/conventions/coo-developer.md +0 -24
  246. package/conventions/dispatcher.md +0 -24
  247. package/conventions/documentationer.md +0 -24
  248. package/conventions/evaluator-architecture.md +0 -24
  249. package/conventions/evaluator-code-quality.md +0 -24
  250. package/conventions/evaluator-functional.md +0 -24
  251. package/conventions/evaluator-security.md +0 -24
  252. package/conventions/evaluator-visual.md +0 -24
  253. package/conventions/generator-backend.md +0 -24
  254. package/conventions/generator-designer.md +0 -24
  255. package/conventions/generator-devops.md +0 -24
  256. package/conventions/generator-frontend.md +0 -24
  257. package/conventions/meeting-manager.md +0 -24
  258. package/conventions/planner.md +0 -24
  259. package/conventions/service-ops.md +0 -24
  260. package/gotchas/conductor.md +0 -38
  261. package/gotchas/coo-developer.md +0 -22
  262. package/gotchas/dispatcher.md +0 -38
  263. package/gotchas/documentationer.md +0 -22
  264. package/gotchas/evaluator-architecture.md +0 -22
  265. package/gotchas/evaluator-code-quality.md +0 -22
  266. package/gotchas/evaluator-functional.md +0 -22
  267. package/gotchas/evaluator-security.md +0 -22
  268. package/gotchas/evaluator-visual.md +0 -22
  269. package/gotchas/generator-backend-laravel.md +0 -19
  270. package/gotchas/generator-backend.md +0 -22
  271. package/gotchas/generator-designer.md +0 -22
  272. package/gotchas/generator-devops.md +0 -22
  273. package/gotchas/generator-frontend.md +0 -22
  274. package/gotchas/meeting-manager.md +0 -30
  275. package/gotchas/planner.md +0 -22
  276. package/gotchas/service-ops.md +0 -30
  277. package/skills/_shared/dynamic-registration.md +0 -120
  278. package/skills/brainstorming/SKILL.md +0 -220
  279. package/skills/brainstorming/references/attribution.md +0 -109
  280. package/skills/brainstorming/references/spec-document-reviewer-prompt.md +0 -49
  281. package/skills/brainstorming/references/visual-companion.md +0 -287
  282. package/skills/brainstorming/scripts/frame-template.html +0 -214
  283. package/skills/brainstorming/scripts/helper.js +0 -88
  284. package/skills/brainstorming/scripts/server.cjs +0 -354
  285. package/skills/brainstorming/scripts/start-server.sh +0 -148
  286. package/skills/brainstorming/scripts/stop-server.sh +0 -56
  287. package/skills/conductor/SKILL.md +0 -336
  288. package/skills/coo-developer/SKILL.md +0 -72
  289. package/skills/cqo/SKILL.md +0 -146
  290. package/skills/cto/SKILL.md +0 -141
  291. package/skills/dispatcher/SKILL.md +0 -298
  292. package/skills/dispatcher/persona-ceo.md +0 -169
  293. package/skills/dispatcher/references/convention-flow.md +0 -111
  294. package/skills/dispatcher/references/gotcha-flow.md +0 -79
  295. package/skills/dispatcher/references/initialization.md +0 -53
  296. package/skills/dispatcher/references/pipeline-definitions.md +0 -151
  297. package/skills/documentationer/SKILL.md +0 -92
  298. package/skills/evaluator-architecture/SKILL.md +0 -173
  299. package/skills/evaluator-code-quality/SKILL.md +0 -218
  300. package/skills/evaluator-code-quality/references/scoring-rubric.md +0 -104
  301. package/skills/evaluator-functional/SKILL.md +0 -271
  302. package/skills/evaluator-functional/references/ia-compliance.md +0 -37
  303. package/skills/evaluator-functional/references/playwright-tools.md +0 -43
  304. package/skills/evaluator-functional/references/scoring-rubric.md +0 -52
  305. package/skills/evaluator-security/SKILL.md +0 -172
  306. package/skills/evaluator-visual/SKILL.md +0 -165
  307. package/skills/evaluator-visual/references/responsive-checklist.md +0 -44
  308. package/skills/evaluator-visual/references/scoring-rubric.md +0 -59
  309. package/skills/generator-backend/SKILL.md +0 -153
  310. package/skills/generator-backend/references/nestjs-msa-patterns.md +0 -69
  311. package/skills/generator-backend/references/sprint-contract-be.md +0 -32
  312. package/skills/generator-designer/SKILL.md +0 -219
  313. package/skills/generator-devops/SKILL.md +0 -201
  314. package/skills/generator-frontend/SKILL.md +0 -155
  315. package/skills/generator-frontend/references/_web-react-legacy/ai-forbidden-patterns.md +0 -89
  316. package/skills/generator-frontend/references/_web-react-legacy/component-patterns.md +0 -52
  317. package/skills/generator-frontend/references/_web-react-legacy/design-system-rules.md +0 -139
  318. package/skills/generator-frontend/references/_web-react-legacy/vercel-best-practices.md +0 -54
  319. package/skills/meeting-manager/SKILL.md +0 -419
  320. package/skills/planner/SKILL.md +0 -243
  321. package/skills/planner/hr-onboard.md +0 -134
  322. package/skills/planner/hr-recruit.md +0 -99
  323. package/skills/planner/persona-coo-hr.md +0 -182
  324. package/skills/planner/references/api-contract-schema.md +0 -34
  325. package/skills/planner/references/fe-stack-detection.md +0 -164
  326. package/skills/planner/references/ia-map-guide.md +0 -31
  327. package/skills/planner/references/plan-template.md +0 -51
  328. package/skills/service-ops/SKILL.md +0 -295
@@ -0,0 +1,104 @@
1
+ #!/bin/bash
2
+ # play.sh — Start walwal harness play build mode.
3
+
4
+ set -uo pipefail
5
+
6
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
7
+ source "$SCRIPT_DIR/lib/harness-render-progress.sh"
8
+
9
+ PROJECT_ROOT="$(resolve_harness_root "${HARNESS_PROJECT_ROOT:-.}")" || exit 1
10
+ HARNESS_DIR="$PROJECT_ROOT/.harness"
11
+ CONFIG="$HARNESS_DIR/config.json"
12
+ PROGRESS="$HARNESS_DIR/progress.json"
13
+ RUNTIME_DIR="$HARNESS_DIR/runtime"
14
+ LOG_DIR="$HARNESS_DIR/logs/$(date -u +%Y-%m-%d)"
15
+
16
+ [ -d "$HARNESS_DIR" ] || { echo "ERROR: .harness/ not found" >&2; exit 1; }
17
+ [ -f "$PROGRESS" ] || { echo "ERROR: .harness/progress.json not found" >&2; exit 1; }
18
+ [ -f "$CONFIG" ] || { echo "ERROR: .harness/config.json not found" >&2; exit 1; }
19
+ command -v jq >/dev/null 2>&1 || { echo "ERROR: jq is required" >&2; exit 1; }
20
+
21
+ mkdir -p "$RUNTIME_DIR" "$LOG_DIR"
22
+
23
+ MODE_FILE="$RUNTIME_DIR/harness-mode"
24
+ PID_FILE="$RUNTIME_DIR/play.pid"
25
+ LOG_FILE="$LOG_DIR/play-harness.log"
26
+ ts="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
27
+ ENV_FILE="$PROJECT_ROOT/.env"
28
+
29
+ active_mode=""
30
+ [ -f "$MODE_FILE" ] && active_mode="$(cat "$MODE_FILE" 2>/dev/null || true)"
31
+ if [ -n "$active_mode" ] && [ "$active_mode" != "play" ]; then
32
+ echo "ERROR: $active_mode mode is active. Run /stop-harness before /play-harness." >&2
33
+ exit 2
34
+ fi
35
+
36
+ if [ -f "$PID_FILE" ]; then
37
+ old_pid="$(cat "$PID_FILE" 2>/dev/null || true)"
38
+ if [ -n "$old_pid" ] && kill -0 "$old_pid" 2>/dev/null; then
39
+ echo "ERROR: play mode is already active with pid $old_pid" >&2
40
+ exit 2
41
+ fi
42
+ fi
43
+
44
+ cmd="$(jq -r '.runtime.play.command // empty' "$CONFIG" 2>/dev/null || true)"
45
+ if [ -z "$cmd" ] || [ "$cmd" = "null" ]; then
46
+ cmd="$(jq -r '.runtime.build.commands[0].command // empty' "$CONFIG" 2>/dev/null || true)"
47
+ fi
48
+ [ -n "$cmd" ] || { echo "ERROR: runtime.play.command or runtime.build.commands[0].command must be configured" >&2; exit 1; }
49
+
50
+ cwd="$(jq -r '.runtime.play.cwd // .runtime.build.commands[0].cwd // "."' "$CONFIG" 2>/dev/null || echo ".")"
51
+ run_dir="$PROJECT_ROOT/$cwd"
52
+ [ -d "$run_dir" ] || { echo "ERROR: play cwd does not exist: $cwd" >&2; exit 1; }
53
+
54
+ env_base_port=""
55
+ if [ -f "$ENV_FILE" ]; then
56
+ env_base_port="$(grep -E '^HARNESS_BASE_PORT=[0-9]' "$ENV_FILE" 2>/dev/null | tail -1 | cut -d= -f2- | tr -d '"' || true)"
57
+ fi
58
+ config_base_port="$(jq -r 'if .runtime.ports.base == null then "" else (.runtime.ports.base|tostring) end' "$CONFIG" 2>/dev/null || true)"
59
+ base_port="${env_base_port:-$config_base_port}"
60
+
61
+ (
62
+ cd "$run_dir" || exit 1
63
+ nohup bash -lc "$cmd $*" >> "$LOG_FILE" 2>&1 &
64
+ echo "$!"
65
+ ) > "$RUNTIME_DIR/play.pid.tmp"
66
+ pid="$(cat "$RUNTIME_DIR/play.pid.tmp" 2>/dev/null || true)"
67
+ rm -f "$RUNTIME_DIR/play.pid.tmp"
68
+ [ -n "$pid" ] || { echo "ERROR: failed to start play command" >&2; exit 1; }
69
+
70
+ printf '%s\n' "play" > "$MODE_FILE"
71
+ printf '%s\n' "$pid" > "$PID_FILE"
72
+
73
+ tmp_config="$(mktemp)"
74
+ jq --arg log "$LOG_FILE" --arg cmd "$cmd" --arg cwd "$cwd" --arg base "$base_port" '
75
+ .runtime.build.live = true |
76
+ .runtime.production.live = false |
77
+ .runtime.build.commands[0].command = ((.runtime.build.commands[0].command // $cmd) | if . == "" then $cmd else . end) |
78
+ .runtime.build.commands[0].cwd = ((.runtime.build.commands[0].cwd // $cwd) | if . == "" then $cwd else . end) |
79
+ .runtime.build.commands[0].log_path = $log |
80
+ if ($base | length) > 0 then
81
+ .runtime.ports.base = (($base|tonumber?) // .runtime.ports.base) |
82
+ .runtime.build.commands[0].expected_port = ((.runtime.build.commands[0].expected_port // (($base|tonumber?) // null)))
83
+ else
84
+ .
85
+ end
86
+ ' "$CONFIG" > "$tmp_config" && mv "$tmp_config" "$CONFIG" || rm -f "$tmp_config"
87
+
88
+ tmp="$(mktemp)"
89
+ jq --arg ts "$ts" --arg pid "$pid" --arg log "$LOG_FILE" --arg cmd "$cmd" '
90
+ .runtime_state.mode = "play" |
91
+ .runtime_state.started_at = $ts |
92
+ .runtime_state.pid = ($pid|tonumber) |
93
+ .runtime_state.log_path = $log |
94
+ .runtime_state.command = $cmd |
95
+ .service_ops.requested_mode = "monitor" |
96
+ .service_ops.monitor.stream_active = true |
97
+ .runtime.build.live = true |
98
+ .runtime.production.live = false
99
+ ' "$PROGRESS" > "$tmp" && mv "$tmp" "$PROGRESS" || rm -f "$tmp"
100
+
101
+ ops_report="$(bash "$SCRIPT_DIR/harness-service-ops-monitor.sh" "$PROJECT_ROOT" 2>/dev/null || true)"
102
+ echo "play pid: $pid"
103
+ echo "play log: $LOG_FILE"
104
+ [ -n "$ops_report" ] && echo "ops report: $ops_report"
@@ -0,0 +1,89 @@
1
+ #!/bin/bash
2
+ # release.sh — Start walwal harness release operation mode.
3
+
4
+ set -uo pipefail
5
+
6
+ mode="${1:-release}"
7
+ if [ "$mode" = "release" ]; then
8
+ shift || true
9
+ fi
10
+
11
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
12
+ source "$SCRIPT_DIR/lib/harness-render-progress.sh"
13
+
14
+ PROJECT_ROOT="$(resolve_harness_root "${HARNESS_PROJECT_ROOT:-.}")" || exit 1
15
+ HARNESS_DIR="$PROJECT_ROOT/.harness"
16
+ CONFIG="$HARNESS_DIR/config.json"
17
+ PROGRESS="$HARNESS_DIR/progress.json"
18
+ RUNTIME_DIR="$HARNESS_DIR/runtime"
19
+ LOG_DIR="$HARNESS_DIR/logs/$(date -u +%Y-%m-%d)"
20
+
21
+ [ -d "$HARNESS_DIR" ] || { echo "ERROR: .harness/ not found" >&2; exit 1; }
22
+ [ -f "$PROGRESS" ] || { echo "ERROR: .harness/progress.json not found" >&2; exit 1; }
23
+ [ -f "$CONFIG" ] || { echo "ERROR: .harness/config.json not found" >&2; exit 1; }
24
+ command -v jq >/dev/null 2>&1 || { echo "ERROR: jq is required" >&2; exit 1; }
25
+
26
+ mkdir -p "$RUNTIME_DIR" "$LOG_DIR"
27
+
28
+ MODE_FILE="$RUNTIME_DIR/harness-mode"
29
+ PID_FILE="$RUNTIME_DIR/release.pid"
30
+ LOG_FILE="$LOG_DIR/release-harness.log"
31
+ ts="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
32
+
33
+ active_mode=""
34
+ [ -f "$MODE_FILE" ] && active_mode="$(cat "$MODE_FILE" 2>/dev/null || true)"
35
+ if [ -n "$active_mode" ] && [ "$active_mode" != "release" ]; then
36
+ echo "ERROR: $active_mode mode is active. Run /stop-harness before /release-harness." >&2
37
+ exit 2
38
+ fi
39
+
40
+ if [ -f "$PID_FILE" ]; then
41
+ old_pid="$(cat "$PID_FILE" 2>/dev/null || true)"
42
+ if [ -n "$old_pid" ] && kill -0 "$old_pid" 2>/dev/null; then
43
+ echo "ERROR: release mode is already active with pid $old_pid" >&2
44
+ exit 2
45
+ fi
46
+ fi
47
+
48
+ cmd="$(jq -r '.runtime.release.command // empty' "$CONFIG" 2>/dev/null || true)"
49
+ [ -n "$cmd" ] && [ "$cmd" != "null" ] || { echo "ERROR: runtime.release.command must be configured" >&2; exit 1; }
50
+
51
+ cwd="$(jq -r '.runtime.release.cwd // "."' "$CONFIG" 2>/dev/null || echo ".")"
52
+ run_dir="$PROJECT_ROOT/$cwd"
53
+ [ -d "$run_dir" ] || { echo "ERROR: release cwd does not exist: $cwd" >&2; exit 1; }
54
+
55
+ (
56
+ cd "$run_dir" || exit 1
57
+ nohup bash -lc "$cmd $*" >> "$LOG_FILE" 2>&1 &
58
+ echo "$!"
59
+ ) > "$RUNTIME_DIR/release.pid.tmp"
60
+ pid="$(cat "$RUNTIME_DIR/release.pid.tmp" 2>/dev/null || true)"
61
+ rm -f "$RUNTIME_DIR/release.pid.tmp"
62
+ [ -n "$pid" ] || { echo "ERROR: failed to start release command" >&2; exit 1; }
63
+
64
+ printf '%s\n' "release" > "$MODE_FILE"
65
+ printf '%s\n' "$pid" > "$PID_FILE"
66
+
67
+ tmp_config="$(mktemp)"
68
+ jq '
69
+ .runtime.build.live = false |
70
+ .runtime.production.live = true
71
+ ' "$CONFIG" > "$tmp_config" && mv "$tmp_config" "$CONFIG" || rm -f "$tmp_config"
72
+
73
+ tmp="$(mktemp)"
74
+ jq --arg ts "$ts" --arg pid "$pid" --arg log "$LOG_FILE" --arg cmd "$cmd" '
75
+ .runtime_state.mode = "release" |
76
+ .runtime_state.started_at = $ts |
77
+ .runtime_state.pid = ($pid|tonumber) |
78
+ .runtime_state.log_path = $log |
79
+ .runtime_state.command = $cmd |
80
+ .service_ops.requested_mode = "monitor" |
81
+ .service_ops.monitor.stream_active = true |
82
+ .runtime.build.live = false |
83
+ .runtime.production.live = true
84
+ ' "$PROGRESS" > "$tmp" && mv "$tmp" "$PROGRESS" || rm -f "$tmp"
85
+
86
+ ops_report="$(bash "$SCRIPT_DIR/harness-service-ops-monitor.sh" "$PROJECT_ROOT" 2>/dev/null || true)"
87
+ echo "release pid: $pid"
88
+ echo "release log: $LOG_FILE"
89
+ [ -n "$ops_report" ] && echo "ops report: $ops_report"
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-conductor
4
- title: Conventions — uconductor
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - conductor
14
- ---
15
-
16
- # Conventions — uconductor
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 uconductor 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-coo-developer
4
- title: Conventions — ucoo-udeveloper
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - coo-developer
14
- ---
15
-
16
- # Conventions — ucoo-udeveloper
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 ucoo-udeveloper 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-dispatcher
4
- title: Conventions — udispatcher
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - dispatcher
14
- ---
15
-
16
- # Conventions — udispatcher
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 udispatcher 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-documentationer
4
- title: Conventions — udocumentationer
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - documentationer
14
- ---
15
-
16
- # Conventions — udocumentationer
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 udocumentationer 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-evaluator-architecture
4
- title: Conventions — uevaluator-uarchitecture
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - evaluator-architecture
14
- ---
15
-
16
- # Conventions — uevaluator-uarchitecture
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 uevaluator-uarchitecture 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-evaluator-code-quality
4
- title: Conventions — evaluator-code-quality
5
- type: input
6
- createdAt: 2026-04-22T00:00:00Z
7
- updatedAt: 2026-04-22T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - evaluator-code-quality
14
- ---
15
-
16
- # Conventions — evaluator-code-quality
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기(`.harness/conventions/evaluator-code-quality.md`)는 역할 국한 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `.harness/conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-evaluator-functional
4
- title: Conventions — evaluator-functional
5
- type: input
6
- createdAt: 2026-04-22T00:00:00Z
7
- updatedAt: 2026-04-22T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - evaluator-functional
14
- ---
15
-
16
- # Conventions — evaluator-functional
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기(`.harness/conventions/evaluator-functional.md`)는 역할 국한 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `.harness/conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-evaluator-security
4
- title: Conventions — uevaluator-usecurity
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - evaluator-security
14
- ---
15
-
16
- # Conventions — uevaluator-usecurity
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 uevaluator-usecurity 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-evaluator-visual
4
- title: Conventions — evaluator-visual
5
- type: input
6
- createdAt: 2026-04-22T00:00:00Z
7
- updatedAt: 2026-04-22T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - evaluator-visual
14
- ---
15
-
16
- # Conventions — evaluator-visual
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기(`.harness/conventions/evaluator-visual.md`)는 역할 국한 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `.harness/conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-generator-backend
4
- title: Conventions — generator-backend
5
- type: input
6
- createdAt: 2026-04-22T00:00:00Z
7
- updatedAt: 2026-04-22T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - generator-backend
14
- ---
15
-
16
- # Conventions — generator-backend
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기(`.harness/conventions/generator-backend.md`)는 역할 국한 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `.harness/conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-generator-designer
4
- title: Conventions — ugenerator-udesigner
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - generator-designer
14
- ---
15
-
16
- # Conventions — ugenerator-udesigner
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 ugenerator-udesigner 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-generator-devops
4
- title: Conventions — ugenerator-udevops
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - generator-devops
14
- ---
15
-
16
- # Conventions — ugenerator-udevops
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 ugenerator-udevops 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-generator-frontend
4
- title: Conventions — generator-frontend
5
- type: input
6
- createdAt: 2026-04-22T00:00:00Z
7
- updatedAt: 2026-04-22T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - generator-frontend
14
- ---
15
-
16
- # Conventions — generator-frontend
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기(`.harness/conventions/generator-frontend.md`)는 역할 국한 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `.harness/conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-meeting-manager
4
- title: Conventions — umeeting-umanager
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - meeting-manager
14
- ---
15
-
16
- # Conventions — umeeting-umanager
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 umeeting-umanager 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-planner
4
- title: Conventions — planner
5
- type: input
6
- createdAt: 2026-04-22T00:00:00Z
7
- updatedAt: 2026-04-22T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - planner
14
- ---
15
-
16
- # Conventions — planner
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기(`.harness/conventions/planner.md`)는 역할 국한 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `.harness/conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,24 +0,0 @@
1
- ---
2
- docmeta:
3
- id: conventions-service-ops
4
- title: Conventions — uservice-uops
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- tags:
12
- - conventions
13
- - service-ops
14
- ---
15
-
16
- # Conventions — uservice-uops
17
-
18
- > **세션 시작 시 이 파일이 비어있더라도 루트 `CONVENTIONS.md` 는 반드시 먼저 읽으시오.**
19
- > 여기는 uservice-uops 스코프의 긍정 규범만 누적되며, 프로젝트 전체 원칙은 루트에 있습니다.
20
- >
21
- > Dispatcher 가 긍정 가이드("~해야 해", "~이렇게 해줘") 를 감지해 여기에 `### [C-NNN]` 엔트리를 추가합니다.
22
- > 사용자가 직접 편집해도 무방합니다. 항목 형식은 `conventions/README.md` 참고.
23
-
24
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
@@ -1,38 +0,0 @@
1
- ---
2
- docmeta:
3
- id: gotchas-conductor
4
- title: Gotchas — uconductor
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- inputs: []
12
- tags: [gotchas, conductor]
13
- ---
14
-
15
- # Gotchas — uconductor
16
-
17
- > Dispatcher 가 관리. uconductor 는 세션 시작 시 이 파일을 읽고 같은 실수를 반복하지 않습니다.
18
- >
19
- > 항목 형식은 `gotchas/README.md` 참조. Dispatcher 가 사용자의 실수 지적을 감지하면 자동으로
20
- > `### [G-NNN]` 항목을 append 합니다. 사용자가 직접 편집해도 무방합니다.
21
-
22
- <!-- 항목이 추가되면 아래에 기록됩니다 -->
23
-
24
- ### [G-001] Team mode 큐 누락 금지
25
-
26
- - Status: verified
27
- - Date: 2026-05-08
28
- - Trigger: `progress.json.mode == "team"` 인데 `.harness/actions/feature-queue.json` 이 없거나 teams 가 모두 idle 인 채 단일 `next_agent` 만 진행
29
- - Rule: Team mode 진입 시 반드시 `scripts/harness-queue-manager.sh init|recover` 로 queue 를 준비하고, `auto-dispatch` 결과의 모든 pair 를 background worker 로 spawn 해야 한다. tmux monitor 만 띄우고 worker spawn 없이 종료하면 실패다.
30
- - Evidence: okx/seller 최신 배포본에서 `mode=team` 이지만 `feature-queue.json` 이 없어 병렬 worker 가 시작될 수 없었다.
31
-
32
- ### [G-002] Parallel tracks 직렬화 금지
33
-
34
- - Status: verified
35
- - Date: 2026-05-08
36
- - Trigger: `tracks.length >= 2` 인 회의 결정 후 첫 트랙만 running, 나머지는 pending 으로 두고 완료 후 다음 트랙을 dispatch
37
- - Rule: parallel tracks 는 같은 tick 에 모든 독립 트랙을 running/spawn 대상으로 노출해야 한다. 완료 순서만 rendezvous 에서 join 하며, dispatch 자체를 sequence 로 만들면 안 된다.
38
- - Evidence: v6.2 fork-join 문서와 달리 conductor 구현/meeting-manager 문구가 “첫 번째 트랙 완료 후 다음 pending” 형태로 남아 있었다.
@@ -1,22 +0,0 @@
1
- ---
2
- docmeta:
3
- id: gotchas-coo-developer
4
- title: Gotchas — ucoo-udeveloper
5
- type: input
6
- createdAt: 2026-05-08T00:00:00Z
7
- updatedAt: 2026-05-08T00:00:00Z
8
- source:
9
- producer: user
10
- skillId: harness-dispatcher
11
- inputs: []
12
- tags: [gotchas, coo-developer]
13
- ---
14
-
15
- # Gotchas — ucoo-udeveloper
16
-
17
- > Dispatcher 가 관리. ucoo-udeveloper 는 세션 시작 시 이 파일을 읽고 같은 실수를 반복하지 않습니다.
18
- >
19
- > 항목 형식은 `gotchas/README.md` 참조. Dispatcher 가 사용자의 실수 지적을 감지하면 자동으로
20
- > `### [G-NNN]` 항목을 append 합니다. 사용자가 직접 편집해도 무방합니다.
21
-
22
- <!-- 항목이 추가되면 아래에 기록됩니다 -->