deepwork 0.3.1__tar.gz → 0.4.0__tar.gz

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 (303) hide show
  1. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/settings.json +55 -2
  2. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform/SKILL.md +13 -6
  3. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.add_capabilities/SKILL.md +28 -4
  4. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.implement/SKILL.md +33 -4
  5. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.research/SKILL.md +29 -4
  6. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.verify/SKILL.md +27 -5
  7. deepwork-0.4.0/.claude/skills/commit/SKILL.md +72 -0
  8. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/commit.commit_and_push/SKILL.md +33 -12
  9. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/commit.lint/SKILL.md +32 -12
  10. deepwork-0.4.0/.claude/skills/commit.review/SKILL.md +198 -0
  11. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/commit.test/SKILL.md +38 -13
  12. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_jobs/SKILL.md +14 -5
  13. deepwork-0.4.0/.claude/skills/deepwork_jobs.define/SKILL.md +731 -0
  14. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_jobs.implement/SKILL.md +48 -12
  15. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_jobs.learn/SKILL.md +132 -20
  16. deepwork-0.4.0/.claude/skills/deepwork_jobs.review_job_spec/SKILL.md +522 -0
  17. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_rules/SKILL.md +10 -3
  18. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_rules.define/SKILL.md +11 -3
  19. deepwork-0.4.0/.claude/skills/manual_tests/SKILL.md +95 -0
  20. deepwork-0.4.0/.claude/skills/manual_tests.infinite_block_tests/SKILL.md +292 -0
  21. deepwork-0.4.0/.claude/skills/manual_tests.reset/SKILL.md +176 -0
  22. deepwork-0.4.0/.claude/skills/manual_tests.run_fire_tests/SKILL.md +297 -0
  23. deepwork-0.4.0/.claude/skills/manual_tests.run_not_fire_tests/SKILL.md +283 -0
  24. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/update/SKILL.md +10 -3
  25. {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/update.job/SKILL.md +24 -5
  26. deepwork-0.4.0/.deepwork/.gitignore +8 -0
  27. deepwork-0.4.0/.deepwork/doc_specs/claude_code_skill.md +183 -0
  28. deepwork-0.4.0/.deepwork/doc_specs/job_spec.md +190 -0
  29. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/job.yml +12 -7
  30. deepwork-0.4.0/.deepwork/jobs/commit/AGENTS.md +19 -0
  31. deepwork-0.4.0/.deepwork/jobs/commit/job.yml +104 -0
  32. deepwork-0.4.0/.deepwork/jobs/commit/steps/review.md +105 -0
  33. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/commit/steps/test.md +1 -1
  34. deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/doc_specs/job_spec.md +190 -0
  35. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/job.yml +41 -8
  36. deepwork-0.3.1/.gemini/skills/deepwork_jobs/define.toml → deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/steps/define.md +68 -78
  37. {deepwork-0.3.1/src/deepwork/standard_jobs → deepwork-0.4.0/.deepwork/jobs}/deepwork_jobs/steps/implement.md +3 -3
  38. {deepwork-0.3.1/src/deepwork/standard_jobs → deepwork-0.4.0/.deepwork/jobs}/deepwork_jobs/steps/learn.md +74 -5
  39. deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/steps/review_job_spec.md +208 -0
  40. deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/templates/doc_spec.md.example +86 -0
  41. deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/templates/doc_spec.md.template +26 -0
  42. {deepwork-0.3.1/src/deepwork/standard_jobs → deepwork-0.4.0/.deepwork/jobs}/deepwork_rules/job.yml +5 -3
  43. deepwork-0.4.0/.deepwork/jobs/manual_tests/job.yml +120 -0
  44. deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/infinite_block_tests.md +136 -0
  45. deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/reset.md +38 -0
  46. deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/run_fire_tests.md +132 -0
  47. deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/run_not_fire_tests.md +118 -0
  48. deepwork-0.3.1/manual_tests/README.md → deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/test_reference.md +46 -32
  49. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/update/job.yml +9 -4
  50. deepwork-0.4.0/.deepwork/tmp/.gitkeep +3 -0
  51. deepwork-0.4.0/.envrc +1 -0
  52. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/add_capabilities.toml +7 -5
  53. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/implement.toml +8 -5
  54. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/index.toml +7 -7
  55. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/research.toml +7 -5
  56. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/verify.toml +7 -6
  57. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/commit/commit_and_push.toml +16 -13
  58. deepwork-0.4.0/.gemini/skills/commit/index.toml +71 -0
  59. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/commit/lint.toml +16 -13
  60. deepwork-0.4.0/.gemini/skills/commit/review.toml +166 -0
  61. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/commit/test.toml +21 -14
  62. deepwork-0.3.1/.claude/skills/deepwork_jobs.define/SKILL.md → deepwork-0.4.0/.gemini/skills/deepwork_jobs/define.toml +113 -55
  63. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_jobs/implement.toml +12 -11
  64. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_jobs/index.toml +9 -6
  65. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_jobs/learn.toml +86 -14
  66. deepwork-0.4.0/.gemini/skills/deepwork_jobs/review_job_spec.toml +300 -0
  67. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_rules/define.toml +5 -4
  68. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_rules/index.toml +4 -4
  69. deepwork-0.4.0/.gemini/skills/manual_tests/index.toml +94 -0
  70. deepwork-0.4.0/.gemini/skills/manual_tests/infinite_block_tests.toml +238 -0
  71. deepwork-0.4.0/.gemini/skills/manual_tests/reset.toml +128 -0
  72. deepwork-0.4.0/.gemini/skills/manual_tests/run_fire_tests.toml +237 -0
  73. deepwork-0.4.0/.gemini/skills/manual_tests/run_not_fire_tests.toml +223 -0
  74. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/update/index.toml +4 -4
  75. {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/update/job.toml +7 -6
  76. deepwork-0.4.0/.github/copilot-instructions.md +35 -0
  77. {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/cla.yml +1 -1
  78. deepwork-0.4.0/.github/workflows/copilot-setup-steps.yml +63 -0
  79. {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/release.yml +18 -0
  80. deepwork-0.4.0/.github/workflows/update-claude-code.yml +63 -0
  81. deepwork-0.4.0/.github/workflows/validate.yml +44 -0
  82. {deepwork-0.3.1 → deepwork-0.4.0}/.gitignore +7 -6
  83. {deepwork-0.3.1 → deepwork-0.4.0}/AGENTS.md +31 -0
  84. {deepwork-0.3.1 → deepwork-0.4.0}/CHANGELOG.md +68 -0
  85. {deepwork-0.3.1 → deepwork-0.4.0}/CONTRIBUTING.md +178 -61
  86. {deepwork-0.3.1 → deepwork-0.4.0}/PKG-INFO +39 -2
  87. {deepwork-0.3.1 → deepwork-0.4.0}/README.md +38 -1
  88. {deepwork-0.3.1 → deepwork-0.4.0}/doc/architecture.md +93 -2
  89. deepwork-0.4.0/doc/debugging_history/AGENTS.md +54 -0
  90. deepwork-0.4.0/doc/debugging_history/hooks.md +125 -0
  91. deepwork-0.4.0/doc/doc-specs.md +249 -0
  92. deepwork-0.4.0/doc/nix-flake.md +479 -0
  93. deepwork-0.4.0/flake.lock +61 -0
  94. deepwork-0.4.0/flake.nix +119 -0
  95. deepwork-0.4.0/manual_tests/README.md +43 -0
  96. deepwork-0.4.0/nix/claude-code/package-lock.json +314 -0
  97. deepwork-0.4.0/nix/claude-code/package.nix +78 -0
  98. deepwork-0.4.0/nix/claude-code/update.sh +49 -0
  99. deepwork-0.4.0/nix/update +18 -0
  100. {deepwork-0.3.1 → deepwork-0.4.0}/pyproject.toml +1 -1
  101. deepwork-0.4.0/src/deepwork/cli/hook.py +70 -0
  102. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/install.py +58 -14
  103. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/main.py +4 -0
  104. deepwork-0.4.0/src/deepwork/cli/rules.py +32 -0
  105. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/sync.py +27 -1
  106. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/adapters.py +209 -0
  107. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/command_executor.py +26 -9
  108. deepwork-0.4.0/src/deepwork/core/doc_spec_parser.py +205 -0
  109. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/generator.py +79 -4
  110. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/hooks_syncer.py +15 -2
  111. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/parser.py +64 -2
  112. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/__init__.py +9 -3
  113. deepwork-0.4.0/src/deepwork/hooks/check_version.sh +230 -0
  114. deepwork-0.4.0/src/deepwork/hooks/claude_hook.sh +51 -0
  115. deepwork-0.4.0/src/deepwork/hooks/gemini_hook.sh +51 -0
  116. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/rules_check.py +71 -12
  117. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/wrapper.py +66 -16
  118. deepwork-0.4.0/src/deepwork/schemas/doc_spec_schema.py +64 -0
  119. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/schemas/job_schema.py +25 -3
  120. deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/doc_specs/job_spec.md +190 -0
  121. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/job.yml +41 -8
  122. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/steps/define.md +68 -2
  123. {deepwork-0.3.1/.deepwork/jobs → deepwork-0.4.0/src/deepwork/standard_jobs}/deepwork_jobs/steps/implement.md +3 -3
  124. {deepwork-0.3.1/.deepwork/jobs → deepwork-0.4.0/src/deepwork/standard_jobs}/deepwork_jobs/steps/learn.md +74 -5
  125. deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/steps/review_job_spec.md +208 -0
  126. deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/templates/doc_spec.md.example +86 -0
  127. deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/templates/doc_spec.md.template +26 -0
  128. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/hooks/capture_prompt_work_tree.sh +8 -0
  129. {deepwork-0.3.1/.deepwork/jobs → deepwork-0.4.0/src/deepwork/standard_jobs}/deepwork_rules/job.yml +5 -3
  130. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/claude/skill-job-meta.md.jinja +7 -0
  131. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/claude/skill-job-step.md.jinja +60 -7
  132. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/gemini/skill-job-step.toml.jinja +18 -3
  133. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/fs.py +36 -0
  134. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/yaml_utils.py +24 -0
  135. deepwork-0.4.0/tests/fixtures/doc_specs/minimal_doc_spec.md +9 -0
  136. deepwork-0.4.0/tests/fixtures/doc_specs/valid_report.md +23 -0
  137. deepwork-0.4.0/tests/fixtures/jobs/job_with_doc_spec/job.yml +18 -0
  138. deepwork-0.4.0/tests/fixtures/jobs/job_with_doc_spec/steps/generate_report.md +7 -0
  139. {deepwork-0.3.1 → deepwork-0.4.0}/tests/integration/test_fruits_workflow.py +8 -4
  140. deepwork-0.4.0/tests/integration/test_install_requirements.py +343 -0
  141. deepwork-0.4.0/tests/shell_script_tests/test_check_version.py +292 -0
  142. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_rules_stop_hook.py +182 -0
  143. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_adapters.py +161 -0
  144. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_command_executor.py +68 -1
  145. deepwork-0.4.0/tests/unit/test_doc_spec_parser.py +214 -0
  146. deepwork-0.4.0/tests/unit/test_doc_spec_schema.py +129 -0
  147. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_generator.py +188 -2
  148. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_hook_wrapper.py +76 -0
  149. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_hooks_syncer.py +55 -2
  150. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_parser.py +78 -2
  151. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_stop_hooks.py +190 -10
  152. {deepwork-0.3.1 → deepwork-0.4.0}/uv.lock +1 -1
  153. deepwork-0.3.1/.claude/skills/commit/SKILL.md +0 -61
  154. deepwork-0.3.1/.deepwork/.gitignore +0 -3
  155. deepwork-0.3.1/.deepwork/jobs/commit/job.yml +0 -75
  156. deepwork-0.3.1/.deepwork/jobs/deepwork_jobs/steps/define.md +0 -331
  157. deepwork-0.3.1/.gemini/skills/commit/index.toml +0 -66
  158. deepwork-0.3.1/.github/workflows/validate.yml +0 -40
  159. deepwork-0.3.1/shell.nix +0 -67
  160. deepwork-0.3.1/src/deepwork/hooks/claude_hook.sh +0 -55
  161. deepwork-0.3.1/src/deepwork/hooks/gemini_hook.sh +0 -55
  162. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/config.yml +0 -0
  163. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/add_capabilities.md +0 -0
  164. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/implement.md +0 -0
  165. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/research.md +0 -0
  166. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/verify.md +0 -0
  167. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/commit/steps/commit_and_push.md +0 -0
  168. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/commit/steps/lint.md +0 -0
  169. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/AGENTS.md +0 -0
  170. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/make_new_job.sh +0 -0
  171. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/steps/supplemental_file_references.md +0 -0
  172. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/agents.md.template +0 -0
  173. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/job.yml.example +0 -0
  174. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/job.yml.template +0 -0
  175. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/step_instruction.md.example +0 -0
  176. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/step_instruction.md.template +0 -0
  177. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/hooks/capture_prompt_work_tree.sh +0 -0
  178. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/hooks/global_hooks.yml +0 -0
  179. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/hooks/user_prompt_submit.sh +0 -0
  180. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/.gitkeep +0 -0
  181. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/api-documentation-sync.md.example +0 -0
  182. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/readme-documentation.md.example +0 -0
  183. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/security-review.md.example +0 -0
  184. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/skill-md-validation.md +0 -0
  185. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/source-test-pairing.md.example +0 -0
  186. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/steps/define.md +0 -0
  187. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/update/steps/job.md +0 -0
  188. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/architecture-documentation-accuracy.md +0 -0
  189. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-command-action.md +0 -0
  190. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-created-mode.md +0 -0
  191. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-infinite-block-command.md +0 -0
  192. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-infinite-block-prompt.md +0 -0
  193. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-multi-safety.md +0 -0
  194. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-pair-mode.md +0 -0
  195. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-set-mode.md +0 -0
  196. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-trigger-safety.md +0 -0
  197. /deepwork-0.3.1/.deepwork/rules/new-standard-job-warning.md → /deepwork-0.4.0/.deepwork/rules/new-standard-job-warning.md.disabled +0 -0
  198. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/readme-accuracy.md +0 -0
  199. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/skill-template-best-practices.md +0 -0
  200. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/standard-jobs-source-of-truth.md +0 -0
  201. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/uv-lock-sync.md +0 -0
  202. {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/version-and-changelog-update.md +0 -0
  203. {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/README.md +0 -0
  204. {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/claude-code-test.yml +0 -0
  205. {deepwork-0.3.1 → deepwork-0.4.0}/CLA/version_1/CLA.md +0 -0
  206. {deepwork-0.3.1 → deepwork-0.4.0}/CLA/version_1/CLA_SIGNATORIES.md +0 -0
  207. {deepwork-0.3.1 → deepwork-0.4.0}/LICENSE.md +0 -0
  208. {deepwork-0.3.1 → deepwork-0.4.0}/claude.md +0 -0
  209. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/README.md +0 -0
  210. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/cli_configuration.md +0 -0
  211. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/hooks.md +0 -0
  212. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/hooks_system.md +0 -0
  213. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/learnings.md +0 -0
  214. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/cli_configuration.md +0 -0
  215. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/hooks.md +0 -0
  216. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/hooks_system.md +0 -0
  217. {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/learnings.md +0 -0
  218. {deepwork-0.3.1 → deepwork-0.4.0}/doc/rules_syntax.md +0 -0
  219. {deepwork-0.3.1 → deepwork-0.4.0}/doc/rules_system_design.md +0 -0
  220. {deepwork-0.3.1 → deepwork-0.4.0}/job_library/README.md +0 -0
  221. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_command_action/test_command_action.txt +0 -0
  222. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_command_action/test_command_action_log.txt +0 -0
  223. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_created_mode/existing_file.yml +0 -0
  224. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_infinite_block_command/test_infinite_block_command.py +0 -0
  225. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_infinite_block_prompt/test_infinite_block_prompt.py +0 -0
  226. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_multi_safety/test_multi_safety.py +0 -0
  227. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_multi_safety/test_multi_safety_changelog.md +0 -0
  228. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_multi_safety/test_multi_safety_version.txt +0 -0
  229. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_pair_mode/test_pair_mode_expected.md +0 -0
  230. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_pair_mode/test_pair_mode_trigger.py +0 -0
  231. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_set_mode/test_set_mode_source.py +0 -0
  232. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_set_mode/test_set_mode_test.py +0 -0
  233. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_trigger_safety_mode/test_trigger_safety_mode.py +0 -0
  234. {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_trigger_safety_mode/test_trigger_safety_mode_doc.md +0 -0
  235. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/__init__.py +0 -0
  236. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/__init__.py +0 -0
  237. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/__init__.py +0 -0
  238. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/detector.py +0 -0
  239. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/pattern_matcher.py +0 -0
  240. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/rules_parser.py +0 -0
  241. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/rules_queue.py +0 -0
  242. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/README.md +0 -0
  243. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/schemas/__init__.py +0 -0
  244. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/schemas/rules_schema.py +0 -0
  245. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/AGENTS.md +0 -0
  246. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/make_new_job.sh +0 -0
  247. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/steps/supplemental_file_references.md +0 -0
  248. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/agents.md.template +0 -0
  249. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/job.yml.example +0 -0
  250. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/job.yml.template +0 -0
  251. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/step_instruction.md.example +0 -0
  252. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/step_instruction.md.template +0 -0
  253. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/hooks/global_hooks.yml +0 -0
  254. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/hooks/user_prompt_submit.sh +0 -0
  255. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/.gitkeep +0 -0
  256. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/api-documentation-sync.md.example +0 -0
  257. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/readme-documentation.md.example +0 -0
  258. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/security-review.md.example +0 -0
  259. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/skill-md-validation.md +0 -0
  260. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/source-test-pairing.md.example +0 -0
  261. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/steps/define.md +0 -0
  262. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/__init__.py +0 -0
  263. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/gemini/skill-job-meta.toml.jinja +0 -0
  264. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/__init__.py +0 -0
  265. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/git.py +0 -0
  266. {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/validation.py +0 -0
  267. {deepwork-0.3.1 → deepwork-0.4.0}/tests/__init__.py +0 -0
  268. {deepwork-0.3.1 → deepwork-0.4.0}/tests/conftest.py +0 -0
  269. {deepwork-0.3.1 → deepwork-0.4.0}/tests/e2e/__init__.py +0 -0
  270. {deepwork-0.3.1 → deepwork-0.4.0}/tests/e2e/test_claude_code_integration.py +0 -0
  271. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/job.yml +0 -0
  272. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/comparative_report.md +0 -0
  273. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/identify_competitors.md +0 -0
  274. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/primary_research.md +0 -0
  275. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/secondary_research.md +0 -0
  276. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/exposed_step_job/job.yml +0 -0
  277. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/exposed_step_job/steps/exposed_step.md +0 -0
  278. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/exposed_step_job/steps/hidden_step.md +0 -0
  279. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/fruits/job.yml +0 -0
  280. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/fruits/steps/classify.md +0 -0
  281. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/fruits/steps/identify.md +0 -0
  282. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/invalid_job/job.yml +0 -0
  283. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/simple_job/job.yml +0 -0
  284. {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/simple_job/steps/single_step.md +0 -0
  285. {deepwork-0.3.1 → deepwork-0.4.0}/tests/integration/test_full_workflow.py +0 -0
  286. {deepwork-0.3.1 → deepwork-0.4.0}/tests/integration/test_install_flow.py +0 -0
  287. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/README.md +0 -0
  288. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/__init__.py +0 -0
  289. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/conftest.py +0 -0
  290. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_capture_prompt_work_tree.py +0 -0
  291. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_hooks.py +0 -0
  292. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_make_new_job.py +0 -0
  293. {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_user_prompt_submit.py +0 -0
  294. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_detector.py +0 -0
  295. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_fs.py +0 -0
  296. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_git.py +0 -0
  297. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_pattern_matcher.py +0 -0
  298. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_rules_check.py +0 -0
  299. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_rules_parser.py +0 -0
  300. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_rules_queue.py +0 -0
  301. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_schema_validation.py +0 -0
  302. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_validation.py +0 -0
  303. {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_yaml_utils.py +0 -0
@@ -89,13 +89,55 @@
89
89
  "Bash(python3:*)",
90
90
  "Bash(pip:*)",
91
91
  "Bash(pip3:*)",
92
+ "Bash(pytest:*)",
93
+ "Bash(uv:*)",
92
94
  "Bash(node:*)",
93
95
  "Bash(npm:*)",
94
96
  "Bash(npx:*)",
95
- "Edit(./**)"
97
+ "Edit(./**)",
98
+ "Read(./.deepwork/tmp/**)",
99
+ "Edit(./.deepwork/tmp/**)",
100
+ "Write(./.deepwork/tmp/**)",
101
+ "Skill(commit)",
102
+ "Skill(commit.review)",
103
+ "Skill(commit.test)",
104
+ "Skill(commit.lint)",
105
+ "Skill(commit.commit_and_push)",
106
+ "Skill(deepwork_jobs)",
107
+ "Skill(deepwork_jobs.define)",
108
+ "Skill(deepwork_jobs.review_job_spec)",
109
+ "Skill(deepwork_jobs.implement)",
110
+ "Skill(deepwork_jobs.learn)",
111
+ "Skill(add_platform)",
112
+ "Skill(add_platform.research)",
113
+ "Skill(add_platform.add_capabilities)",
114
+ "Skill(add_platform.implement)",
115
+ "Skill(add_platform.verify)",
116
+ "Skill(update)",
117
+ "Skill(update.job)",
118
+ "Skill(manual_tests)",
119
+ "Skill(manual_tests.run_not_fire_tests)",
120
+ "Skill(manual_tests.run_fire_tests)",
121
+ "Skill(deepwork_rules)",
122
+ "Skill(deepwork_rules.define)",
123
+ "Bash(deepwork rules clear_queue)",
124
+ "Bash(rm -rf .deepwork/tmp/rules/queue/*.json)",
125
+ "Skill(manual_tests.reset)",
126
+ "Skill(manual_tests.infinite_block_tests)"
96
127
  ]
97
128
  },
98
129
  "hooks": {
130
+ "SessionStart": [
131
+ {
132
+ "matcher": "",
133
+ "hooks": [
134
+ {
135
+ "type": "command",
136
+ "command": "src/deepwork/hooks/check_version.sh"
137
+ }
138
+ ]
139
+ }
140
+ ],
99
141
  "UserPromptSubmit": [
100
142
  {
101
143
  "matcher": "",
@@ -113,7 +155,18 @@
113
155
  "hooks": [
114
156
  {
115
157
  "type": "command",
116
- "command": "python -m deepwork.hooks.rules_check"
158
+ "command": "deepwork hook rules_check"
159
+ }
160
+ ]
161
+ }
162
+ ],
163
+ "SubagentStop": [
164
+ {
165
+ "matcher": "",
166
+ "hooks": [
167
+ {
168
+ "type": "command",
169
+ "command": "deepwork hook rules_check"
117
170
  }
118
171
  ]
119
172
  }
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: add_platform
3
- description: "Add a new AI platform to DeepWork with adapter, templates, and tests"
3
+ description: "Adds a new AI platform to DeepWork with adapter, templates, and tests. Use when integrating Cursor, Windsurf, or other AI coding tools."
4
4
  ---
5
5
 
6
6
  # add_platform
7
7
 
8
- **Multi-step workflow**: Add a new AI platform to DeepWork with adapter, templates, and tests
8
+ **Multi-step workflow**: Adds a new AI platform to DeepWork with adapter, templates, and tests. Use when integrating Cursor, Windsurf, or other AI coding tools.
9
9
 
10
10
  > **CRITICAL**: Always invoke steps using the Skill tool. Never copy/paste step instructions directly.
11
11
 
@@ -29,10 +29,10 @@ comprehensive test coverage for new functionality.
29
29
 
30
30
  ## Available Steps
31
31
 
32
- 1. **research** - Capture CLI configuration and hooks system documentation for the new platform
33
- 2. **add_capabilities** - Update job schema and adapters with any new hook events the platform supports (requires: research)
34
- 3. **implement** - Add platform adapter, templates, tests with 100% coverage, and README documentation (requires: research, add_capabilities)
35
- 4. **verify** - Set up platform directories and verify deepwork install works correctly (requires: implement)
32
+ 1. **research** - Captures CLI configuration and hooks system documentation for the new platform. Use when starting platform integration.
33
+ 2. **add_capabilities** - Updates job schema and adapters with any new hook events the platform supports. Use after research to extend DeepWork's hook system. (requires: research)
34
+ 3. **implement** - Creates platform adapter, templates, tests with 100% coverage, and README documentation. Use after adding hook capabilities. (requires: research, add_capabilities)
35
+ 4. **verify** - Sets up platform directories and verifies deepwork install works correctly. Use after implementation to confirm integration. (requires: implement)
36
36
 
37
37
  ## Execution Instructions
38
38
 
@@ -64,6 +64,13 @@ If user intent is unclear, use AskUserQuestion to clarify:
64
64
  - Present available steps as numbered options
65
65
  - Let user select the starting point
66
66
 
67
+ ## Guardrails
68
+
69
+ - Do NOT copy/paste step instructions directly; always use the Skill tool to invoke steps
70
+ - Do NOT skip steps in the workflow unless the user explicitly requests it
71
+ - Do NOT proceed to the next step if the current step's outputs are incomplete
72
+ - Do NOT make assumptions about user intent; ask for clarification when ambiguous
73
+
67
74
  ## Context Files
68
75
 
69
76
  - Job definition: `.deepwork/jobs/add_platform/job.yml`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: add_platform.add_capabilities
3
- description: "Update job schema and adapters with any new hook events the platform supports"
3
+ description: "Updates job schema and adapters with any new hook events the platform supports. Use after research to extend DeepWork's hook system."
4
4
  user-invocable: false
5
5
  hooks:
6
6
  Stop:
@@ -18,13 +18,28 @@ hooks:
18
18
 
19
19
  If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
20
20
 
21
+ SubagentStop:
22
+ - hooks:
23
+ - type: prompt
24
+ prompt: |
25
+ Verify the capability additions meet ALL criteria:
26
+ 1. Any new hooks from the platform (for slash commands only) are added to src/deepwork/schemas/job_schema.py
27
+ 2. All existing adapters in src/deepwork/adapters.py are updated with the new hook fields
28
+ (set to None/null if the platform doesn't support that hook)
29
+ 3. Only hooks available on slash command definitions are added (not general CLI hooks)
30
+ 4. job_schema.py remains valid Python with no syntax errors
31
+ 5. adapters.py remains consistent - all adapters have the same hook fields
32
+ 6. If no new hooks are needed, document why in a comment
33
+
34
+ If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
35
+
21
36
  ---
22
37
 
23
38
  # add_platform.add_capabilities
24
39
 
25
40
  **Step 2/4** in **add_platform** workflow
26
41
 
27
- > Add a new AI platform to DeepWork with adapter, templates, and tests
42
+ > Adds a new AI platform to DeepWork with adapter, templates, and tests. Use when integrating Cursor, Windsurf, or other AI coding tools.
28
43
 
29
44
  ## Prerequisites (Verify First)
30
45
 
@@ -33,7 +48,7 @@ Before proceeding, confirm these steps are complete:
33
48
 
34
49
  ## Instructions
35
50
 
36
- **Goal**: Update job schema and adapters with any new hook events the platform supports
51
+ **Goal**: Updates job schema and adapters with any new hook events the platform supports. Use after research to extend DeepWork's hook system.
37
52
 
38
53
  # Add Hook Capabilities
39
54
 
@@ -208,7 +223,16 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
208
223
  ## Outputs
209
224
 
210
225
  **Required outputs**:
211
- - `job_schema.py`- `adapters.py`
226
+ - `job_schema.py`
227
+ - `adapters.py`
228
+
229
+ ## Guardrails
230
+
231
+ - Do NOT skip prerequisite verification if this step has dependencies
232
+ - Do NOT produce partial outputs; complete all required outputs before finishing
233
+ - Do NOT proceed without required inputs; ask the user if any are missing
234
+ - Do NOT modify files outside the scope of this step's defined outputs
235
+
212
236
  ## Quality Validation
213
237
 
214
238
  Stop hooks will automatically validate your work. The loop continues until all criteria pass.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: add_platform.implement
3
- description: "Add platform adapter, templates, tests with 100% coverage, and README documentation"
3
+ description: "Creates platform adapter, templates, tests with 100% coverage, and README documentation. Use after adding hook capabilities."
4
4
  user-invocable: false
5
5
  hooks:
6
6
  Stop:
@@ -22,13 +22,32 @@ hooks:
22
22
 
23
23
  If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
24
24
 
25
+ SubagentStop:
26
+ - hooks:
27
+ - type: command
28
+ command: ".deepwork/jobs/add_platform/hooks/run_tests.sh"
29
+ - type: prompt
30
+ prompt: |
31
+ Verify the implementation meets ALL criteria:
32
+ 1. Platform adapter class is added to src/deepwork/adapters.py
33
+ 2. Templates exist in src/deepwork/templates/<platform>/ with appropriate command structure
34
+ 3. Tests exist for all new functionality
35
+ 4. Test coverage is 100% for new code (run: uv run pytest --cov)
36
+ 5. All tests pass
37
+ 6. README.md is updated with:
38
+ - New platform listed in supported platforms
39
+ - Installation instructions for the platform
40
+ - Any platform-specific notes
41
+
42
+ If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
43
+
25
44
  ---
26
45
 
27
46
  # add_platform.implement
28
47
 
29
48
  **Step 3/4** in **add_platform** workflow
30
49
 
31
- > Add a new AI platform to DeepWork with adapter, templates, and tests
50
+ > Adds a new AI platform to DeepWork with adapter, templates, and tests. Use when integrating Cursor, Windsurf, or other AI coding tools.
32
51
 
33
52
  ## Prerequisites (Verify First)
34
53
 
@@ -38,7 +57,7 @@ Before proceeding, confirm these steps are complete:
38
57
 
39
58
  ## Instructions
40
59
 
41
- **Goal**: Add platform adapter, templates, tests with 100% coverage, and README documentation
60
+ **Goal**: Creates platform adapter, templates, tests with 100% coverage, and README documentation. Use after adding hook capabilities.
42
61
 
43
62
  # Implement Platform Support
44
63
 
@@ -306,7 +325,17 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
306
325
  ## Outputs
307
326
 
308
327
  **Required outputs**:
309
- - `templates/` (directory)- `tests/` (directory)- `README.md`
328
+ - `templates/` (directory)
329
+ - `tests/` (directory)
330
+ - `README.md`
331
+
332
+ ## Guardrails
333
+
334
+ - Do NOT skip prerequisite verification if this step has dependencies
335
+ - Do NOT produce partial outputs; complete all required outputs before finishing
336
+ - Do NOT proceed without required inputs; ask the user if any are missing
337
+ - Do NOT modify files outside the scope of this step's defined outputs
338
+
310
339
  ## Quality Validation
311
340
 
312
341
  Stop hooks will automatically validate your work. The loop continues until all criteria pass.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: add_platform.research
3
- description: "Capture CLI configuration and hooks system documentation for the new platform"
3
+ description: "Captures CLI configuration and hooks system documentation for the new platform. Use when starting platform integration."
4
4
  user-invocable: false
5
5
  hooks:
6
6
  Stop:
@@ -19,18 +19,34 @@ hooks:
19
19
 
20
20
  If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
21
21
 
22
+ SubagentStop:
23
+ - hooks:
24
+ - type: prompt
25
+ prompt: |
26
+ Verify the research output meets ALL criteria:
27
+ 1. Both files exist in doc/platforms/<platform>/: cli_configuration.md and hooks_system.md
28
+ 2. Each file has a comment at the top with:
29
+ - Last updated date
30
+ - Source URL where the documentation was obtained
31
+ 3. cli_configuration.md covers how the platform's CLI is configured
32
+ 4. hooks_system.md covers hooks available for slash command definitions ONLY
33
+ 5. No extraneous documentation (only these two specific topics)
34
+ 6. Documentation is comprehensive enough to implement the platform
35
+
36
+ If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
37
+
22
38
  ---
23
39
 
24
40
  # add_platform.research
25
41
 
26
42
  **Step 1/4** in **add_platform** workflow
27
43
 
28
- > Add a new AI platform to DeepWork with adapter, templates, and tests
44
+ > Adds a new AI platform to DeepWork with adapter, templates, and tests. Use when integrating Cursor, Windsurf, or other AI coding tools.
29
45
 
30
46
 
31
47
  ## Instructions
32
48
 
33
- **Goal**: Capture CLI configuration and hooks system documentation for the new platform
49
+ **Goal**: Captures CLI configuration and hooks system documentation for the new platform. Use when starting platform integration.
34
50
 
35
51
  # Research Platform Documentation
36
52
 
@@ -258,7 +274,16 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
258
274
  ## Outputs
259
275
 
260
276
  **Required outputs**:
261
- - `cli_configuration.md`- `hooks_system.md`
277
+ - `cli_configuration.md`
278
+ - `hooks_system.md`
279
+
280
+ ## Guardrails
281
+
282
+ - Do NOT skip prerequisite verification if this step has dependencies
283
+ - Do NOT produce partial outputs; complete all required outputs before finishing
284
+ - Do NOT proceed without required inputs; ask the user if any are missing
285
+ - Do NOT modify files outside the scope of this step's defined outputs
286
+
262
287
  ## Quality Validation
263
288
 
264
289
  Stop hooks will automatically validate your work. The loop continues until all criteria pass.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: add_platform.verify
3
- description: "Set up platform directories and verify deepwork install works correctly"
3
+ description: "Sets up platform directories and verifies deepwork install works correctly. Use after implementation to confirm integration."
4
4
  user-invocable: false
5
5
  hooks:
6
6
  Stop:
@@ -17,13 +17,27 @@ hooks:
17
17
 
18
18
  If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
19
19
 
20
+ SubagentStop:
21
+ - hooks:
22
+ - type: prompt
23
+ prompt: |
24
+ Verify the installation meets ALL criteria:
25
+ 1. Platform-specific directories/files are added to the deepwork repo as needed
26
+ 2. Running `deepwork install --platform <platform>` completes without errors
27
+ 3. Expected command files are created in the platform's command directory
28
+ 4. Command file content matches the templates and job definitions
29
+ 5. Established DeepWork jobs (deepwork_jobs, deepwork_rules) are installed correctly
30
+ 6. The platform can be used alongside existing platforms without conflicts
31
+
32
+ If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
33
+
20
34
  ---
21
35
 
22
36
  # add_platform.verify
23
37
 
24
38
  **Step 4/4** in **add_platform** workflow
25
39
 
26
- > Add a new AI platform to DeepWork with adapter, templates, and tests
40
+ > Adds a new AI platform to DeepWork with adapter, templates, and tests. Use when integrating Cursor, Windsurf, or other AI coding tools.
27
41
 
28
42
  ## Prerequisites (Verify First)
29
43
 
@@ -32,7 +46,7 @@ Before proceeding, confirm these steps are complete:
32
46
 
33
47
  ## Instructions
34
48
 
35
- **Goal**: Set up platform directories and verify deepwork install works correctly
49
+ **Goal**: Sets up platform directories and verifies deepwork install works correctly. Use after implementation to confirm integration.
36
50
 
37
51
  # Verify Installation
38
52
 
@@ -182,7 +196,15 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
182
196
 
183
197
  ## Outputs
184
198
 
185
- No specific file outputs required.
199
+ **Required outputs**:
200
+ - `verification_checklist.md`
201
+
202
+ ## Guardrails
203
+
204
+ - Do NOT skip prerequisite verification if this step has dependencies
205
+ - Do NOT produce partial outputs; complete all required outputs before finishing
206
+ - Do NOT proceed without required inputs; ask the user if any are missing
207
+ - Do NOT modify files outside the scope of this step's defined outputs
186
208
 
187
209
  ## Quality Validation
188
210
 
@@ -195,7 +217,7 @@ Stop hooks will automatically validate your work. The loop continues until all c
195
217
  ## On Completion
196
218
 
197
219
  1. Verify outputs are created
198
- 2. Inform user: "Step 4/4 complete"
220
+ 2. Inform user: "Step 4/4 complete, outputs: verification_checklist.md"
199
221
  3. **Workflow complete**: All steps finished. Consider creating a PR to merge the work branch.
200
222
 
201
223
  ---
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: commit
3
+ description: "Reviews code, runs tests, lints, and commits changes. Use when ready to commit work with quality checks."
4
+ ---
5
+
6
+ # commit
7
+
8
+ **Multi-step workflow**: Reviews code, runs tests, lints, and commits changes. Use when ready to commit work with quality checks.
9
+
10
+ > **CRITICAL**: Always invoke steps using the Skill tool. Never copy/paste step instructions directly.
11
+
12
+ A workflow for preparing and committing code changes with quality checks.
13
+
14
+ This job starts with a code review to catch issues early, runs tests until
15
+ they pass, formats and lints code with ruff, then reviews changed files
16
+ before committing and pushing. The review and lint steps use sub-agents
17
+ to reduce context usage.
18
+
19
+ Steps:
20
+ 1. review - Code review for issues, DRY opportunities, naming, and test coverage (runs in sub-agent)
21
+ 2. test - Pull latest code and run tests until they pass
22
+ 3. lint - Format and lint code with ruff (runs in sub-agent)
23
+ 4. commit_and_push - Review changes and commit/push
24
+
25
+
26
+ ## Available Steps
27
+
28
+ 1. **review** - Reviews changed code for issues, DRY opportunities, naming clarity, and test coverage using a sub-agent. Use as the first step before testing.
29
+ 2. **test** - Pulls latest code and runs tests until all pass. Use after code review passes to verify changes work correctly. (requires: review)
30
+ 3. **lint** - Formats and lints code with ruff using a sub-agent. Use after tests pass to ensure code style compliance. (requires: test)
31
+ 4. **commit_and_push** - Verifies changed files, creates commit, and pushes to remote. Use after linting passes to finalize changes. (requires: lint)
32
+
33
+ ## Execution Instructions
34
+
35
+ ### Step 1: Analyze Intent
36
+
37
+ Parse any text following `/commit` to determine user intent:
38
+ - "review" or related terms → start at `commit.review`
39
+ - "test" or related terms → start at `commit.test`
40
+ - "lint" or related terms → start at `commit.lint`
41
+ - "commit_and_push" or related terms → start at `commit.commit_and_push`
42
+
43
+ ### Step 2: Invoke Starting Step
44
+
45
+ Use the Skill tool to invoke the identified starting step:
46
+ ```
47
+ Skill tool: commit.review
48
+ ```
49
+
50
+ ### Step 3: Continue Workflow Automatically
51
+
52
+ After each step completes:
53
+ 1. Check if there's a next step in the sequence
54
+ 2. Invoke the next step using the Skill tool
55
+ 3. Repeat until workflow is complete or user intervenes
56
+
57
+ ### Handling Ambiguous Intent
58
+
59
+ If user intent is unclear, use AskUserQuestion to clarify:
60
+ - Present available steps as numbered options
61
+ - Let user select the starting point
62
+
63
+ ## Guardrails
64
+
65
+ - Do NOT copy/paste step instructions directly; always use the Skill tool to invoke steps
66
+ - Do NOT skip steps in the workflow unless the user explicitly requests it
67
+ - Do NOT proceed to the next step if the current step's outputs are incomplete
68
+ - Do NOT make assumptions about user intent; ask for clarification when ambiguous
69
+
70
+ ## Context Files
71
+
72
+ - Job definition: `.deepwork/jobs/commit/job.yml`
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: commit.commit_and_push
3
- description: "Verify changed files, commit, and push to remote"
3
+ description: "Verifies changed files, creates commit, and pushes to remote. Use after linting passes to finalize changes."
4
4
  user-invocable: false
5
5
  hooks:
6
6
  Stop:
@@ -14,13 +14,24 @@ hooks:
14
14
  4. Changes were pushed to remote
15
15
  If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
16
16
 
17
+ SubagentStop:
18
+ - hooks:
19
+ - type: prompt
20
+ prompt: |
21
+ Verify the commit is ready:
22
+ 1. Changed files list was reviewed by the agent
23
+ 2. Files match what was modified during this session (or unexpected changes were investigated)
24
+ 3. Commit was created with appropriate message
25
+ 4. Changes were pushed to remote
26
+ If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
27
+
17
28
  ---
18
29
 
19
30
  # commit.commit_and_push
20
31
 
21
- **Step 3/3** in **commit** workflow
32
+ **Step 4/4** in **commit** workflow
22
33
 
23
- > Run tests, lint, and commit code changes
34
+ > Reviews code, runs tests, lints, and commits changes. Use when ready to commit work with quality checks.
24
35
 
25
36
  ## Prerequisites (Verify First)
26
37
 
@@ -29,7 +40,7 @@ Before proceeding, confirm these steps are complete:
29
40
 
30
41
  ## Instructions
31
42
 
32
- **Goal**: Verify changed files, commit, and push to remote
43
+ **Goal**: Verifies changed files, creates commit, and pushes to remote. Use after linting passes to finalize changes.
33
44
 
34
45
  # Commit and Push
35
46
 
@@ -113,14 +124,16 @@ This is the final step of the commit workflow. The agent verifies that the chang
113
124
 
114
125
  A workflow for preparing and committing code changes with quality checks.
115
126
 
116
- This job runs tests until they pass, formats and lints code with ruff,
117
- then reviews changed files before committing and pushing. The lint step
118
- uses a sub-agent to reduce context usage.
127
+ This job starts with a code review to catch issues early, runs tests until
128
+ they pass, formats and lints code with ruff, then reviews changed files
129
+ before committing and pushing. The review and lint steps use sub-agents
130
+ to reduce context usage.
119
131
 
120
132
  Steps:
121
- 1. test - Pull latest code and run tests until they pass
122
- 2. lint - Format and lint code with ruff (runs in sub-agent)
123
- 3. commit_and_push - Review changes and commit/push
133
+ 1. review - Code review for issues, DRY opportunities, naming, and test coverage (runs in sub-agent)
134
+ 2. test - Pull latest code and run tests until they pass
135
+ 3. lint - Format and lint code with ruff (runs in sub-agent)
136
+ 4. commit_and_push - Review changes and commit/push
124
137
 
125
138
 
126
139
 
@@ -133,7 +146,15 @@ Use branch format: `deepwork/commit-[instance]-YYYYMMDD`
133
146
 
134
147
  ## Outputs
135
148
 
136
- No specific file outputs required.
149
+ **Required outputs**:
150
+ - `changes_committed`
151
+
152
+ ## Guardrails
153
+
154
+ - Do NOT skip prerequisite verification if this step has dependencies
155
+ - Do NOT produce partial outputs; complete all required outputs before finishing
156
+ - Do NOT proceed without required inputs; ask the user if any are missing
157
+ - Do NOT modify files outside the scope of this step's defined outputs
137
158
 
138
159
  ## Quality Validation
139
160
 
@@ -146,7 +167,7 @@ Stop hooks will automatically validate your work. The loop continues until all c
146
167
  ## On Completion
147
168
 
148
169
  1. Verify outputs are created
149
- 2. Inform user: "Step 3/3 complete"
170
+ 2. Inform user: "Step 4/4 complete, outputs: changes_committed"
150
171
  3. **Workflow complete**: All steps finished. Consider creating a PR to merge the work branch.
151
172
 
152
173
  ---
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: commit.lint
3
- description: "Format and lint code with ruff using a sub-agent"
3
+ description: "Formats and lints code with ruff using a sub-agent. Use after tests pass to ensure code style compliance."
4
4
  user-invocable: false
5
5
  hooks:
6
6
  Stop:
@@ -13,13 +13,23 @@ hooks:
13
13
  3. No remaining lint errors
14
14
  If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
15
15
 
16
+ SubagentStop:
17
+ - hooks:
18
+ - type: prompt
19
+ prompt: |
20
+ Verify the linting is complete:
21
+ 1. ruff format was run successfully
22
+ 2. ruff check was run successfully (with --fix)
23
+ 3. No remaining lint errors
24
+ If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
25
+
16
26
  ---
17
27
 
18
28
  # commit.lint
19
29
 
20
- **Step 2/3** in **commit** workflow
30
+ **Step 3/4** in **commit** workflow
21
31
 
22
- > Run tests, lint, and commit code changes
32
+ > Reviews code, runs tests, lints, and commits changes. Use when ready to commit work with quality checks.
23
33
 
24
34
  ## Prerequisites (Verify First)
25
35
 
@@ -28,7 +38,7 @@ Before proceeding, confirm these steps are complete:
28
38
 
29
39
  ## Instructions
30
40
 
31
- **Goal**: Format and lint code with ruff using a sub-agent
41
+ **Goal**: Formats and lints code with ruff using a sub-agent. Use after tests pass to ensure code style compliance.
32
42
 
33
43
  # Lint Code
34
44
 
@@ -108,14 +118,16 @@ This step ensures code quality and consistency before committing. It runs after
108
118
 
109
119
  A workflow for preparing and committing code changes with quality checks.
110
120
 
111
- This job runs tests until they pass, formats and lints code with ruff,
112
- then reviews changed files before committing and pushing. The lint step
113
- uses a sub-agent to reduce context usage.
121
+ This job starts with a code review to catch issues early, runs tests until
122
+ they pass, formats and lints code with ruff, then reviews changed files
123
+ before committing and pushing. The review and lint steps use sub-agents
124
+ to reduce context usage.
114
125
 
115
126
  Steps:
116
- 1. test - Pull latest code and run tests until they pass
117
- 2. lint - Format and lint code with ruff (runs in sub-agent)
118
- 3. commit_and_push - Review changes and commit/push
127
+ 1. review - Code review for issues, DRY opportunities, naming, and test coverage (runs in sub-agent)
128
+ 2. test - Pull latest code and run tests until they pass
129
+ 3. lint - Format and lint code with ruff (runs in sub-agent)
130
+ 4. commit_and_push - Review changes and commit/push
119
131
 
120
132
 
121
133
 
@@ -128,7 +140,15 @@ Use branch format: `deepwork/commit-[instance]-YYYYMMDD`
128
140
 
129
141
  ## Outputs
130
142
 
131
- No specific file outputs required.
143
+ **Required outputs**:
144
+ - `code_formatted`
145
+
146
+ ## Guardrails
147
+
148
+ - Do NOT skip prerequisite verification if this step has dependencies
149
+ - Do NOT produce partial outputs; complete all required outputs before finishing
150
+ - Do NOT proceed without required inputs; ask the user if any are missing
151
+ - Do NOT modify files outside the scope of this step's defined outputs
132
152
 
133
153
  ## Quality Validation
134
154
 
@@ -141,7 +161,7 @@ Stop hooks will automatically validate your work. The loop continues until all c
141
161
  ## On Completion
142
162
 
143
163
  1. Verify outputs are created
144
- 2. Inform user: "Step 2/3 complete"
164
+ 2. Inform user: "Step 3/4 complete, outputs: code_formatted"
145
165
  3. **Continue workflow**: Use Skill tool to invoke `/commit.commit_and_push`
146
166
 
147
167
  ---