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.
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/settings.json +55 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform/SKILL.md +13 -6
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.add_capabilities/SKILL.md +28 -4
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.implement/SKILL.md +33 -4
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.research/SKILL.md +29 -4
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/add_platform.verify/SKILL.md +27 -5
- deepwork-0.4.0/.claude/skills/commit/SKILL.md +72 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/commit.commit_and_push/SKILL.md +33 -12
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/commit.lint/SKILL.md +32 -12
- deepwork-0.4.0/.claude/skills/commit.review/SKILL.md +198 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/commit.test/SKILL.md +38 -13
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_jobs/SKILL.md +14 -5
- deepwork-0.4.0/.claude/skills/deepwork_jobs.define/SKILL.md +731 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_jobs.implement/SKILL.md +48 -12
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_jobs.learn/SKILL.md +132 -20
- deepwork-0.4.0/.claude/skills/deepwork_jobs.review_job_spec/SKILL.md +522 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_rules/SKILL.md +10 -3
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/deepwork_rules.define/SKILL.md +11 -3
- deepwork-0.4.0/.claude/skills/manual_tests/SKILL.md +95 -0
- deepwork-0.4.0/.claude/skills/manual_tests.infinite_block_tests/SKILL.md +292 -0
- deepwork-0.4.0/.claude/skills/manual_tests.reset/SKILL.md +176 -0
- deepwork-0.4.0/.claude/skills/manual_tests.run_fire_tests/SKILL.md +297 -0
- deepwork-0.4.0/.claude/skills/manual_tests.run_not_fire_tests/SKILL.md +283 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/update/SKILL.md +10 -3
- {deepwork-0.3.1 → deepwork-0.4.0}/.claude/skills/update.job/SKILL.md +24 -5
- deepwork-0.4.0/.deepwork/.gitignore +8 -0
- deepwork-0.4.0/.deepwork/doc_specs/claude_code_skill.md +183 -0
- deepwork-0.4.0/.deepwork/doc_specs/job_spec.md +190 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/job.yml +12 -7
- deepwork-0.4.0/.deepwork/jobs/commit/AGENTS.md +19 -0
- deepwork-0.4.0/.deepwork/jobs/commit/job.yml +104 -0
- deepwork-0.4.0/.deepwork/jobs/commit/steps/review.md +105 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/commit/steps/test.md +1 -1
- deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/doc_specs/job_spec.md +190 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/job.yml +41 -8
- deepwork-0.3.1/.gemini/skills/deepwork_jobs/define.toml → deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/steps/define.md +68 -78
- {deepwork-0.3.1/src/deepwork/standard_jobs → deepwork-0.4.0/.deepwork/jobs}/deepwork_jobs/steps/implement.md +3 -3
- {deepwork-0.3.1/src/deepwork/standard_jobs → deepwork-0.4.0/.deepwork/jobs}/deepwork_jobs/steps/learn.md +74 -5
- deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/steps/review_job_spec.md +208 -0
- deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/templates/doc_spec.md.example +86 -0
- deepwork-0.4.0/.deepwork/jobs/deepwork_jobs/templates/doc_spec.md.template +26 -0
- {deepwork-0.3.1/src/deepwork/standard_jobs → deepwork-0.4.0/.deepwork/jobs}/deepwork_rules/job.yml +5 -3
- deepwork-0.4.0/.deepwork/jobs/manual_tests/job.yml +120 -0
- deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/infinite_block_tests.md +136 -0
- deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/reset.md +38 -0
- deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/run_fire_tests.md +132 -0
- deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/run_not_fire_tests.md +118 -0
- deepwork-0.3.1/manual_tests/README.md → deepwork-0.4.0/.deepwork/jobs/manual_tests/steps/test_reference.md +46 -32
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/update/job.yml +9 -4
- deepwork-0.4.0/.deepwork/tmp/.gitkeep +3 -0
- deepwork-0.4.0/.envrc +1 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/add_capabilities.toml +7 -5
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/implement.toml +8 -5
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/index.toml +7 -7
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/research.toml +7 -5
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/add_platform/verify.toml +7 -6
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/commit/commit_and_push.toml +16 -13
- deepwork-0.4.0/.gemini/skills/commit/index.toml +71 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/commit/lint.toml +16 -13
- deepwork-0.4.0/.gemini/skills/commit/review.toml +166 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/commit/test.toml +21 -14
- deepwork-0.3.1/.claude/skills/deepwork_jobs.define/SKILL.md → deepwork-0.4.0/.gemini/skills/deepwork_jobs/define.toml +113 -55
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_jobs/implement.toml +12 -11
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_jobs/index.toml +9 -6
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_jobs/learn.toml +86 -14
- deepwork-0.4.0/.gemini/skills/deepwork_jobs/review_job_spec.toml +300 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_rules/define.toml +5 -4
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/deepwork_rules/index.toml +4 -4
- deepwork-0.4.0/.gemini/skills/manual_tests/index.toml +94 -0
- deepwork-0.4.0/.gemini/skills/manual_tests/infinite_block_tests.toml +238 -0
- deepwork-0.4.0/.gemini/skills/manual_tests/reset.toml +128 -0
- deepwork-0.4.0/.gemini/skills/manual_tests/run_fire_tests.toml +237 -0
- deepwork-0.4.0/.gemini/skills/manual_tests/run_not_fire_tests.toml +223 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/update/index.toml +4 -4
- {deepwork-0.3.1 → deepwork-0.4.0}/.gemini/skills/update/job.toml +7 -6
- deepwork-0.4.0/.github/copilot-instructions.md +35 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/cla.yml +1 -1
- deepwork-0.4.0/.github/workflows/copilot-setup-steps.yml +63 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/release.yml +18 -0
- deepwork-0.4.0/.github/workflows/update-claude-code.yml +63 -0
- deepwork-0.4.0/.github/workflows/validate.yml +44 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.gitignore +7 -6
- {deepwork-0.3.1 → deepwork-0.4.0}/AGENTS.md +31 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/CHANGELOG.md +68 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/CONTRIBUTING.md +178 -61
- {deepwork-0.3.1 → deepwork-0.4.0}/PKG-INFO +39 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/README.md +38 -1
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/architecture.md +93 -2
- deepwork-0.4.0/doc/debugging_history/AGENTS.md +54 -0
- deepwork-0.4.0/doc/debugging_history/hooks.md +125 -0
- deepwork-0.4.0/doc/doc-specs.md +249 -0
- deepwork-0.4.0/doc/nix-flake.md +479 -0
- deepwork-0.4.0/flake.lock +61 -0
- deepwork-0.4.0/flake.nix +119 -0
- deepwork-0.4.0/manual_tests/README.md +43 -0
- deepwork-0.4.0/nix/claude-code/package-lock.json +314 -0
- deepwork-0.4.0/nix/claude-code/package.nix +78 -0
- deepwork-0.4.0/nix/claude-code/update.sh +49 -0
- deepwork-0.4.0/nix/update +18 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/pyproject.toml +1 -1
- deepwork-0.4.0/src/deepwork/cli/hook.py +70 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/install.py +58 -14
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/main.py +4 -0
- deepwork-0.4.0/src/deepwork/cli/rules.py +32 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/sync.py +27 -1
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/adapters.py +209 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/command_executor.py +26 -9
- deepwork-0.4.0/src/deepwork/core/doc_spec_parser.py +205 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/generator.py +79 -4
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/hooks_syncer.py +15 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/parser.py +64 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/__init__.py +9 -3
- deepwork-0.4.0/src/deepwork/hooks/check_version.sh +230 -0
- deepwork-0.4.0/src/deepwork/hooks/claude_hook.sh +51 -0
- deepwork-0.4.0/src/deepwork/hooks/gemini_hook.sh +51 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/rules_check.py +71 -12
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/wrapper.py +66 -16
- deepwork-0.4.0/src/deepwork/schemas/doc_spec_schema.py +64 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/schemas/job_schema.py +25 -3
- deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/doc_specs/job_spec.md +190 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/job.yml +41 -8
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/steps/define.md +68 -2
- {deepwork-0.3.1/.deepwork/jobs → deepwork-0.4.0/src/deepwork/standard_jobs}/deepwork_jobs/steps/implement.md +3 -3
- {deepwork-0.3.1/.deepwork/jobs → deepwork-0.4.0/src/deepwork/standard_jobs}/deepwork_jobs/steps/learn.md +74 -5
- deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/steps/review_job_spec.md +208 -0
- deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/templates/doc_spec.md.example +86 -0
- deepwork-0.4.0/src/deepwork/standard_jobs/deepwork_jobs/templates/doc_spec.md.template +26 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/hooks/capture_prompt_work_tree.sh +8 -0
- {deepwork-0.3.1/.deepwork/jobs → deepwork-0.4.0/src/deepwork/standard_jobs}/deepwork_rules/job.yml +5 -3
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/claude/skill-job-meta.md.jinja +7 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/claude/skill-job-step.md.jinja +60 -7
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/gemini/skill-job-step.toml.jinja +18 -3
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/fs.py +36 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/yaml_utils.py +24 -0
- deepwork-0.4.0/tests/fixtures/doc_specs/minimal_doc_spec.md +9 -0
- deepwork-0.4.0/tests/fixtures/doc_specs/valid_report.md +23 -0
- deepwork-0.4.0/tests/fixtures/jobs/job_with_doc_spec/job.yml +18 -0
- deepwork-0.4.0/tests/fixtures/jobs/job_with_doc_spec/steps/generate_report.md +7 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/integration/test_fruits_workflow.py +8 -4
- deepwork-0.4.0/tests/integration/test_install_requirements.py +343 -0
- deepwork-0.4.0/tests/shell_script_tests/test_check_version.py +292 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_rules_stop_hook.py +182 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_adapters.py +161 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_command_executor.py +68 -1
- deepwork-0.4.0/tests/unit/test_doc_spec_parser.py +214 -0
- deepwork-0.4.0/tests/unit/test_doc_spec_schema.py +129 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_generator.py +188 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_hook_wrapper.py +76 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_hooks_syncer.py +55 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_parser.py +78 -2
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_stop_hooks.py +190 -10
- {deepwork-0.3.1 → deepwork-0.4.0}/uv.lock +1 -1
- deepwork-0.3.1/.claude/skills/commit/SKILL.md +0 -61
- deepwork-0.3.1/.deepwork/.gitignore +0 -3
- deepwork-0.3.1/.deepwork/jobs/commit/job.yml +0 -75
- deepwork-0.3.1/.deepwork/jobs/deepwork_jobs/steps/define.md +0 -331
- deepwork-0.3.1/.gemini/skills/commit/index.toml +0 -66
- deepwork-0.3.1/.github/workflows/validate.yml +0 -40
- deepwork-0.3.1/shell.nix +0 -67
- deepwork-0.3.1/src/deepwork/hooks/claude_hook.sh +0 -55
- deepwork-0.3.1/src/deepwork/hooks/gemini_hook.sh +0 -55
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/config.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/add_capabilities.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/implement.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/research.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/add_platform/steps/verify.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/commit/steps/commit_and_push.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/commit/steps/lint.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/AGENTS.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/make_new_job.sh +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/steps/supplemental_file_references.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/agents.md.template +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/job.yml.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/job.yml.template +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/step_instruction.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_jobs/templates/step_instruction.md.template +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/hooks/capture_prompt_work_tree.sh +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/hooks/global_hooks.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/hooks/user_prompt_submit.sh +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/.gitkeep +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/api-documentation-sync.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/readme-documentation.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/security-review.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/skill-md-validation.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/rules/source-test-pairing.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/deepwork_rules/steps/define.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/jobs/update/steps/job.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/architecture-documentation-accuracy.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-command-action.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-created-mode.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-infinite-block-command.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-infinite-block-prompt.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-multi-safety.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-pair-mode.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-set-mode.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/manual-test-trigger-safety.md +0 -0
- /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
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/readme-accuracy.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/skill-template-best-practices.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/standard-jobs-source-of-truth.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/uv-lock-sync.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.deepwork/rules/version-and-changelog-update.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/README.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/.github/workflows/claude-code-test.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/CLA/version_1/CLA.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/CLA/version_1/CLA_SIGNATORIES.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/LICENSE.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/claude.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/README.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/cli_configuration.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/hooks.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/hooks_system.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/claude/learnings.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/cli_configuration.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/hooks.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/hooks_system.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/platforms/gemini/learnings.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/rules_syntax.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/doc/rules_system_design.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/job_library/README.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_command_action/test_command_action.txt +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_command_action/test_command_action_log.txt +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_created_mode/existing_file.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_infinite_block_command/test_infinite_block_command.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_infinite_block_prompt/test_infinite_block_prompt.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_multi_safety/test_multi_safety.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_multi_safety/test_multi_safety_changelog.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_multi_safety/test_multi_safety_version.txt +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_pair_mode/test_pair_mode_expected.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_pair_mode/test_pair_mode_trigger.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_set_mode/test_set_mode_source.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_set_mode/test_set_mode_test.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_trigger_safety_mode/test_trigger_safety_mode.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/manual_tests/test_trigger_safety_mode/test_trigger_safety_mode_doc.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/cli/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/detector.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/pattern_matcher.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/rules_parser.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/core/rules_queue.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/hooks/README.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/schemas/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/schemas/rules_schema.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/AGENTS.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/make_new_job.sh +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/steps/supplemental_file_references.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/agents.md.template +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/job.yml.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/job.yml.template +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/step_instruction.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_jobs/templates/step_instruction.md.template +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/hooks/global_hooks.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/hooks/user_prompt_submit.sh +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/.gitkeep +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/api-documentation-sync.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/readme-documentation.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/security-review.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/skill-md-validation.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/rules/source-test-pairing.md.example +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/standard_jobs/deepwork_rules/steps/define.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/templates/gemini/skill-job-meta.toml.jinja +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/git.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/src/deepwork/utils/validation.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/conftest.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/e2e/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/e2e/test_claude_code_integration.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/job.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/comparative_report.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/identify_competitors.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/primary_research.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/complex_job/steps/secondary_research.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/exposed_step_job/job.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/exposed_step_job/steps/exposed_step.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/exposed_step_job/steps/hidden_step.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/fruits/job.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/fruits/steps/classify.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/fruits/steps/identify.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/invalid_job/job.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/simple_job/job.yml +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/fixtures/jobs/simple_job/steps/single_step.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/integration/test_full_workflow.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/integration/test_install_flow.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/README.md +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/__init__.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/conftest.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_capture_prompt_work_tree.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_hooks.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_make_new_job.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/shell_script_tests/test_user_prompt_submit.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_detector.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_fs.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_git.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_pattern_matcher.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_rules_check.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_rules_parser.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_rules_queue.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_schema_validation.py +0 -0
- {deepwork-0.3.1 → deepwork-0.4.0}/tests/unit/test_validation.py +0 -0
- {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": "
|
|
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: "
|
|
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**:
|
|
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** -
|
|
33
|
-
2. **add_capabilities** -
|
|
34
|
-
3. **implement** -
|
|
35
|
-
4. **verify** -
|
|
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: "
|
|
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
|
-
>
|
|
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**:
|
|
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
|
|
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: "
|
|
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
|
-
>
|
|
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**:
|
|
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)
|
|
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: "
|
|
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
|
-
>
|
|
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**:
|
|
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
|
|
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: "
|
|
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
|
-
>
|
|
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**:
|
|
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
|
-
|
|
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: "
|
|
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
|
|
32
|
+
**Step 4/4** in **commit** workflow
|
|
22
33
|
|
|
23
|
-
>
|
|
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**:
|
|
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
|
|
117
|
-
|
|
118
|
-
|
|
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.
|
|
122
|
-
2.
|
|
123
|
-
3.
|
|
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
|
-
|
|
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
|
|
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: "
|
|
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
|
|
30
|
+
**Step 3/4** in **commit** workflow
|
|
21
31
|
|
|
22
|
-
>
|
|
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**:
|
|
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
|
|
112
|
-
|
|
113
|
-
|
|
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.
|
|
117
|
-
2.
|
|
118
|
-
3.
|
|
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
|
-
|
|
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
|
|
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
|
---
|