Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .claude/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,8 @@
"Edit(./.deepwork/**)",
"Write(./.deepwork/**)",
"Bash(deepwork:*)",
"Bash(.claude/hooks/commit_job_git_commit.sh:*)"
"Bash(.claude/hooks/commit_job_git_commit.sh:*)",
"Bash(./.deepwork/jobs/deepwork_jobs/make_new_job.sh:*)"
]
},
"hooks": {
Expand Down
43 changes: 1 addition & 42 deletions .claude/skills/add_platform.add_capabilities/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,6 @@
---
name: add_platform.add_capabilities
description: "Updates job schema and adapters with any new hook events the platform supports. Use after research to extend DeepWork's hook system."
user-invocable: false
hooks:
Stop:
- hooks:
- type: prompt
prompt: |
Verify the capability additions meet ALL criteria:
1. Any new hooks from the platform (for slash commands only) are added to src/deepwork/schemas/job_schema.py
2. All existing adapters in src/deepwork/adapters.py are updated with the new hook fields
(set to None/null if the platform doesn't support that hook)
3. Only hooks available on slash command definitions are added (not general CLI hooks)
4. job_schema.py remains valid Python with no syntax errors
5. adapters.py remains consistent - all adapters have the same hook fields
6. If no new hooks are needed, document why in a comment

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

SubagentStop:
- hooks:
- type: prompt
prompt: |
Verify the capability additions meet ALL criteria:
1. Any new hooks from the platform (for slash commands only) are added to src/deepwork/schemas/job_schema.py
2. All existing adapters in src/deepwork/adapters.py are updated with the new hook fields
(set to None/null if the platform doesn't support that hook)
3. Only hooks available on slash command definitions are added (not general CLI hooks)
4. job_schema.py remains valid Python with no syntax errors
5. adapters.py remains consistent - all adapters have the same hook fields
6. If no new hooks are needed, document why in a comment

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

---
description: "Updates job schema and adapters with any new hook events the platform supports. Use after research to extend DeepWork's hook system."user-invocable: false---

# add_platform.add_capabilities

Expand Down Expand Up @@ -233,14 +200,6 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
- Do NOT proceed without required inputs; ask the user if any are missing
- Do NOT modify files outside the scope of this step's defined outputs

## Quality Validation

Stop hooks will automatically validate your work. The loop continues until all criteria pass.



**To complete**: Include `<promise>✓ Quality Criteria Met</promise>` in your final response only after verifying ALL criteria are satisfied.

## On Completion

1. Verify outputs are created
Expand Down
55 changes: 5 additions & 50 deletions .claude/skills/add_platform.implement/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,10 @@
---
name: add_platform.implement
description: "Creates platform adapter, templates, tests with 100% coverage, and README documentation. Use after adding hook capabilities."
user-invocable: false
hooks:
Stop:
- hooks:
- type: command
command: ".deepwork/jobs/add_platform/hooks/run_tests.sh"
- type: prompt
prompt: |
Verify the implementation meets ALL criteria:
1. Platform adapter class is added to src/deepwork/adapters.py
2. Templates exist in src/deepwork/templates/<platform>/ with appropriate command structure
3. Tests exist for all new functionality
4. Test coverage is 100% for new code (run: uv run pytest --cov)
5. All tests pass
6. README.md is updated with:
- New platform listed in supported platforms
- Installation instructions for the platform
- Any platform-specific notes

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

SubagentStop:
- hooks:
- type: command
command: ".deepwork/jobs/add_platform/hooks/run_tests.sh"
- type: prompt
prompt: |
Verify the implementation meets ALL criteria:
1. Platform adapter class is added to src/deepwork/adapters.py
2. Templates exist in src/deepwork/templates/<platform>/ with appropriate command structure
3. Tests exist for all new functionality
4. Test coverage is 100% for new code (run: uv run pytest --cov)
5. All tests pass
6. README.md is updated with:
- New platform listed in supported platforms
- Installation instructions for the platform
- Any platform-specific notes

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

---
description: "Creates platform adapter, templates, tests with 100% coverage, and README documentation. Use after adding hook capabilities."user-invocable: falsehooks: Stop:
- hooks: - type: command
command: ".deepwork/jobs/add_platform/hooks/run_tests.sh" SubagentStop:
- hooks: - type: command
command: ".deepwork/jobs/add_platform/hooks/run_tests.sh"---

# add_platform.implement

Expand Down Expand Up @@ -336,15 +299,7 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
- Do NOT proceed without required inputs; ask the user if any are missing
- Do NOT modify files outside the scope of this step's defined outputs

## Quality Validation

Stop hooks will automatically validate your work. The loop continues until all criteria pass.


**Validation script**: `.deepwork/jobs/add_platform/hooks/run_tests.sh` (runs automatically)

**To complete**: Include `<promise>✓ Quality Criteria Met</promise>` in your final response only after verifying ALL criteria are satisfied.

## On Completion

1. Verify outputs are created
Expand Down
45 changes: 1 addition & 44 deletions .claude/skills/add_platform.research/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,6 @@
---
name: add_platform.research
description: "Captures CLI configuration and hooks system documentation for the new platform. Use when starting platform integration."
user-invocable: false
hooks:
Stop:
- hooks:
- type: prompt
prompt: |
Verify the research output meets ALL criteria:
1. Both files exist in doc/platforms/<platform>/: cli_configuration.md and hooks_system.md
2. Each file has a comment at the top with:
- Last updated date
- Source URL where the documentation was obtained
3. cli_configuration.md covers how the platform's CLI is configured
4. hooks_system.md covers hooks available for slash command definitions ONLY
5. No extraneous documentation (only these two specific topics)
6. Documentation is comprehensive enough to implement the platform

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

SubagentStop:
- hooks:
- type: prompt
prompt: |
Verify the research output meets ALL criteria:
1. Both files exist in doc/platforms/<platform>/: cli_configuration.md and hooks_system.md
2. Each file has a comment at the top with:
- Last updated date
- Source URL where the documentation was obtained
3. cli_configuration.md covers how the platform's CLI is configured
4. hooks_system.md covers hooks available for slash command definitions ONLY
5. No extraneous documentation (only these two specific topics)
6. Documentation is comprehensive enough to implement the platform

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

---
description: "Captures CLI configuration and hooks system documentation for the new platform. Use when starting platform integration."user-invocable: false---

# add_platform.research

Expand Down Expand Up @@ -284,14 +249,6 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
- Do NOT proceed without required inputs; ask the user if any are missing
- Do NOT modify files outside the scope of this step's defined outputs

## Quality Validation

Stop hooks will automatically validate your work. The loop continues until all criteria pass.



**To complete**: Include `<promise>✓ Quality Criteria Met</promise>` in your final response only after verifying ALL criteria are satisfied.

## On Completion

1. Verify outputs are created
Expand Down
41 changes: 1 addition & 40 deletions .claude/skills/add_platform.verify/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,6 @@
---
name: add_platform.verify
description: "Sets up platform directories and verifies deepwork install works correctly. Use after implementation to confirm integration."
user-invocable: false
hooks:
Stop:
- hooks:
- type: prompt
prompt: |
Verify the installation meets ALL criteria:
1. Platform-specific directories/files are added to the deepwork repo as needed
2. Running `deepwork install --platform <platform>` completes without errors
3. Expected command files are created in the platform's command directory
4. Command file content matches the templates and job definitions
5. Established DeepWork jobs (deepwork_jobs, deepwork_rules) are installed correctly
6. The platform can be used alongside existing platforms without conflicts

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

SubagentStop:
- hooks:
- type: prompt
prompt: |
Verify the installation meets ALL criteria:
1. Platform-specific directories/files are added to the deepwork repo as needed
2. Running `deepwork install --platform <platform>` completes without errors
3. Expected command files are created in the platform's command directory
4. Command file content matches the templates and job definitions
5. Established DeepWork jobs (deepwork_jobs, deepwork_rules) are installed correctly
6. The platform can be used alongside existing platforms without conflicts

If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

---
description: "Sets up platform directories and verifies deepwork install works correctly. Use after implementation to confirm integration."user-invocable: false---

# add_platform.verify

Expand Down Expand Up @@ -206,14 +175,6 @@ Use branch format: `deepwork/add_platform-[instance]-YYYYMMDD`
- Do NOT proceed without required inputs; ask the user if any are missing
- Do NOT modify files outside the scope of this step's defined outputs

## Quality Validation

Stop hooks will automatically validate your work. The loop continues until all criteria pass.



**To complete**: Include `<promise>✓ Quality Criteria Met</promise>` in your final response only after verifying ALL criteria are satisfied.

## On Completion

1. Verify outputs are created
Expand Down
57 changes: 20 additions & 37 deletions .claude/skills/commit.commit_and_push/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,6 @@
---
name: commit.commit_and_push
description: "Verifies changed files, creates commit, and pushes to remote. Use after linting passes to finalize changes."
user-invocable: false
hooks:
Stop:
- hooks:
- type: prompt
prompt: |
Verify the commit is ready:
1. Changed files list was reviewed by the agent
2. Files match what was modified during this session (or unexpected changes were investigated)
3. Commit was created with appropriate message
4. Changes were pushed to remote
If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
SubagentStop:
- hooks:
- type: prompt
prompt: |
Verify the commit is ready:
1. Changed files list was reviewed by the agent
2. Files match what was modified during this session (or unexpected changes were investigated)
3. Commit was created with appropriate message
4. Changes were pushed to remote
If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.
---
description: "Verifies changed files, creates commit, and pushes to remote. Use after linting passes to finalize changes."user-invocable: false---

# commit.commit_and_push

Expand Down Expand Up @@ -68,14 +43,27 @@ Check the list of changed files against what was modified during this session, e
- Are there any unexpected deleted files?
- Do the line counts seem reasonable for the changes you made?

If changes match expectations, proceed to commit.
If changes match expectations, proceed to the next step.

If there are unexpected changes:
- Investigate why (e.g., lint auto-fixes, generated files)
- If they're legitimate side effects of your work, include them
- If they're unrelated or shouldn't be committed, use `git restore` to discard them

3. **Stage all appropriate changes**
3. **Update CHANGELOG.md if needed**

If your changes include new features, bug fixes, or other notable changes:
- Add entries to the `## [Unreleased]` section of CHANGELOG.md
- Use the appropriate subsection: `### Added`, `### Changed`, `### Fixed`, or `### Removed`
- Write concise descriptions that explain the user-facing impact

**CRITICAL: NEVER modify version numbers**
- Do NOT change the version in `pyproject.toml`
- Do NOT change version headers in CHANGELOG.md (e.g., `## [0.4.2]`)
- Do NOT rename the `## [Unreleased]` section
- Version updates are handled by the release workflow, not commits

4. **Stage all appropriate changes**
```bash
git add -A
```
Expand All @@ -93,8 +81,9 @@ Check the list of changed files against what was modified during this session, e
- The style of recent commits
- Conventional commit format if the project uses it

**IMPORTANT:** Use the commit job script (not `git commit` directly):
```bash
git commit -m "commit message here"
.claude/hooks/commit_job_git_commit.sh -m "commit message here"
```

7. **Push to remote**
Expand All @@ -110,6 +99,8 @@ Check the list of changed files against what was modified during this session, e

- Changed files list was reviewed by the agent
- Files match what was modified during this session (or unexpected changes were investigated and handled)
- CHANGELOG.md was updated with entries in the `[Unreleased]` section (if changes warrant documentation)
- Version numbers were NOT modified (in pyproject.toml or CHANGELOG.md version headers)
- Commit message follows project conventions
- Commit was created successfully
- Changes were pushed to remote
Expand Down Expand Up @@ -156,14 +147,6 @@ Use branch format: `deepwork/commit-[instance]-YYYYMMDD`
- Do NOT proceed without required inputs; ask the user if any are missing
- Do NOT modify files outside the scope of this step's defined outputs

## Quality Validation

Stop hooks will automatically validate your work. The loop continues until all criteria pass.



**To complete**: Include `<promise>✓ Quality Criteria Met</promise>` in your final response only after verifying ALL criteria are satisfied.

## On Completion

1. Verify outputs are created
Expand Down
33 changes: 1 addition & 32 deletions .claude/skills/commit.lint/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,6 @@
---
name: commit.lint
description: "Formats and lints code with ruff using a sub-agent. Use after tests pass to ensure code style compliance."
user-invocable: false
hooks:
Stop:
- hooks:
- type: prompt
prompt: |
Verify the linting is complete:
1. ruff format was run successfully
2. ruff check was run successfully (with --fix)
3. No remaining lint errors
If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

SubagentStop:
- hooks:
- type: prompt
prompt: |
Verify the linting is complete:
1. ruff format was run successfully
2. ruff check was run successfully (with --fix)
3. No remaining lint errors
If ALL criteria are met, include `<promise>✓ Quality Criteria Met</promise>`.

---
description: "Formats and lints code with ruff using a sub-agent. Use after tests pass to ensure code style compliance."user-invocable: false---

# commit.lint

Expand Down Expand Up @@ -150,14 +127,6 @@ Use branch format: `deepwork/commit-[instance]-YYYYMMDD`
- Do NOT proceed without required inputs; ask the user if any are missing
- Do NOT modify files outside the scope of this step's defined outputs

## Quality Validation

Stop hooks will automatically validate your work. The loop continues until all criteria pass.



**To complete**: Include `<promise>✓ Quality Criteria Met</promise>` in your final response only after verifying ALL criteria are satisfied.

## On Completion

1. Verify outputs are created
Expand Down
Loading