Skip to content

Refactor job hooks configuration structure - #12

Merged
nhorton merged 1 commit into
mainfrom
claude/refactor-job-hooks-wzheD
Jan 13, 2026
Merged

Refactor job hooks configuration structure#12
nhorton merged 1 commit into
mainfrom
claude/refactor-job-hooks-wzheD

Conversation

@nhorton

@nhorton nhorton commented Jan 13, 2026

Copy link
Copy Markdown
Contributor

Migrate job.yml files from the deprecated stop_hooks array format to the new hooks.after_agent structure. This aligns the job definitions with the lifecycle hooks system that maps generic hook names (like after_agent) to platform-specific implementations in the adapters (e.g., Claude's "Stop" hook).

The adapter hook_name_mapping already handles the translation:

  • Claude: after_agent -> "Stop"
  • Gemini: No command-level hooks (empty mapping)

Files updated:

  • .deepwork/jobs/add_platform/job.yml
  • .deepwork/jobs/deepwork_jobs/job.yml
  • src/deepwork/standard_jobs/deepwork_jobs/job.yml

Migrate job.yml files from the deprecated `stop_hooks` array format
to the new `hooks.after_agent` structure. This aligns the job definitions
with the lifecycle hooks system that maps generic hook names (like
`after_agent`) to platform-specific implementations in the adapters
(e.g., Claude's "Stop" hook).

The adapter hook_name_mapping already handles the translation:
- Claude: after_agent -> "Stop"
- Gemini: No command-level hooks (empty mapping)

Files updated:
- .deepwork/jobs/add_platform/job.yml
- .deepwork/jobs/deepwork_jobs/job.yml
- src/deepwork/standard_jobs/deepwork_jobs/job.yml
@nhorton
nhorton merged commit 333b7f0 into main Jan 13, 2026
1 check passed
@nhorton
nhorton deleted the claude/refactor-job-hooks-wzheD branch January 15, 2026 23:59
nhorton added a commit that referenced this pull request Apr 15, 2026
…mpt spam

- Check for `uv` at start of onboarding, install if missing (macOS/Linux/Windows)
- Guide user through /reload-plugins after uv install so MCP server starts
- Verify MCP server is reachable before continuing onboarding
- Warn macOS users about safe-to-dismiss TCC dialogs
- Pre-grant Bash permissions for common plugin operations in setup

Addresses issues #3, #10, #11, #12 from onboarding testing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
github-merge-queue Bot pushed a commit that referenced this pull request Apr 15, 2026
)

* fix: improve new_user onboarding to check dependencies and reduce prompt spam

- Check for `uv` at start of onboarding, install if missing (macOS/Linux/Windows)
- Guide user through /reload-plugins after uv install so MCP server starts
- Verify MCP server is reachable before continuing onboarding
- Warn macOS users about safe-to-dismiss TCC dialogs
- Pre-grant Bash permissions for common plugin operations in setup

Addresses issues #3, #10, #11, #12 from onboarding testing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor: consolidate setup permissions into single ALLOW_PERMISSIONS list

Replaces MCP_PERMISSION, DEEPWORK_DIR_PERMISSIONS, and BASH_PERMISSIONS
with one ALLOW_PERMISSIONS array and a single loop. Test assertions now
derive the expected count from the array length instead of hardcoding.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
nhorton added a commit that referenced this pull request Apr 15, 2026
- doc/mcp_interface.md: add appeal_tool_requirement as tool #12, bump count
- doc/architecture.md: add tool_requirements/ package and hook to structure
- CLAUDE.md: add tool_requirements/ and hook to project structure appendix
- src/deepwork/hooks/README.md: add tool_requirements.py to files table
- CHANGELOG.md: add tool requirements feature to Unreleased

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants