-
Notifications
You must be signed in to change notification settings - Fork 3
feat: add /record and /new_user skills for onboarding #356
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 8 commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
9840f48
feat: add /record and /new_user skills for new user onboarding
nhorton e3628ee
fix: address review findings from first review pass
nhorton de8f91e
fix: address pass 2 review findings
nhorton d382207
feat: include governed target file in DeepSchema compliance reviews
nhorton 4022c6d
docs: clarify that @filepath refs in review instructions are not expa…
nhorton e6696f4
feat: inline file under review for individual-strategy reviews
nhorton 20aa3ab
fix: remove redundant anonymous schema ref from review_bridge
nhorton 302d209
chore: remove unused DW-REQ-011.11.7 (never merged to main)
nhorton fb583aa
Apply suggestion from @nhorton
nhorton 410d70e
test: add REVIEW-REQ-004.3.5 test for individual strategy file inlining
nhorton 19cadbd
docs: emphasize reliability in new_user onboarding introduction
nhorton 915e4b9
fix: sync skill bodies and add setup step to new_user onboarding
nhorton File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| requirements: | ||
| # PLUG-REQ-002.7.1 | ||
| learn-record-redirect: > | ||
| The skill MUST include a special case for `/deepwork learn` after | ||
| `/deepwork:record`: when `/deepwork:record` was used in the conversation, | ||
| the skill MUST start the `new_job` workflow instead of the `learn` workflow. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| requirements: | ||
| # PLUG-REQ-003.1.2 | ||
| disable-model-invocation: > | ||
| The skill MUST set `disable-model-invocation: true` in its frontmatter so | ||
| that it is only triggered by explicit user invocation (`/new_user`), not by | ||
| the agent autonomously. | ||
|
|
||
| # PLUG-REQ-003.2.1 | ||
| gh-star-check: > | ||
| The skill MUST check if the `gh` CLI is installed and, if present, use | ||
| `AskUserQuestion` to offer to star the DeepWork repo. If `gh` is not | ||
| installed, the skill MUST skip this step without mentioning it. | ||
|
|
||
| # PLUG-REQ-003.2.3 | ||
| gh-star-command: > | ||
| If the user agrees to star the repo, the skill MUST run | ||
| `gh api -X PUT /user/starred/Unsupervisedcom/deepwork`. | ||
|
|
||
| # PLUG-REQ-003.3.1 | ||
| introduction-content: > | ||
| The skill MUST print a concise introduction covering Workflows, Reviews, | ||
| and DeepSchemas, and MUST mention that the three systems work together. | ||
|
|
||
| # PLUG-REQ-003.4.1 | ||
| code-project-detection: > | ||
| The skill MUST check whether the project appears to be a code project | ||
| before offering review rule setup. | ||
|
|
||
| # PLUG-REQ-003.4.2 | ||
| review-setup-offer: > | ||
| For code projects, the skill MUST use `AskUserQuestion` to offer review | ||
| rule setup and invoke `/deepwork:configure_reviews` if accepted. | ||
|
|
||
| # PLUG-REQ-003.4.4 | ||
| skip-non-code: > | ||
| If the project is not a code project, the skill MUST skip the review | ||
| setup step entirely. | ||
|
|
||
| # PLUG-REQ-003.5.1, PLUG-REQ-003.5.2 | ||
| workflow-recording-offer: > | ||
| After review setup completes or is skipped, the skill MUST use | ||
| `AskUserQuestion` to explain workflows and offer to start | ||
| `/deepwork:record`. If the user agrees, the skill MUST invoke | ||
| `/deepwork:record`. | ||
|
|
||
| # PLUG-REQ-003.5.3 | ||
| decline-guidance: > | ||
| If the user declines workflow recording, the skill MUST inform them they | ||
| can run `/deepwork:record` anytime and that `/deepwork` is the main entry | ||
| point. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,57 @@ | ||
| --- | ||
| name: new_user | ||
| description: "Welcome new users to DeepWork — introduce features, set up reviews, and optionally record a first workflow" | ||
| disable-model-invocation: true | ||
| --- | ||
|
|
||
| # New User Onboarding | ||
|
|
||
| Guide a new user through what DeepWork can do and help them get started. | ||
|
|
||
| ## Flow | ||
|
|
||
| ### 1. GitHub star (optional) | ||
|
|
||
| Check if the `gh` CLI is installed by running `which gh`. | ||
|
|
||
| If `gh` is available, use `AskUserQuestion` to say something like: | ||
|
|
||
| > Thanks for installing DeepWork! Would you mind starring the repo on GitHub so you get notified about updates? | ||
|
|
||
| If they agree, run: | ||
|
|
||
| ```bash | ||
| gh api -X PUT /user/starred/Unsupervisedcom/deepwork | ||
| ``` | ||
|
|
||
| If `gh` is not installed, skip this entirely — do not mention it. | ||
|
|
||
| ### 2. Introduce DeepWork | ||
|
|
||
| Print a brief welcome message explaining what DeepWork does. Keep it concise — a few sentences, not a wall of text. Cover the three main capabilities: | ||
|
|
||
| - **Workflows** — structured, multi-step processes with quality gates. Do a task once with Claude, then turn it into a repeatable workflow. Examples: competitive research, tutorial writing, API audits, monthly reporting. | ||
| - **Reviews** — automated code review rules that run against every change. Define what to check for in `.deepreview` configs, then run `/review`. Catches regressions, style issues, doc drift, security problems. | ||
| - **DeepSchemas** — file-level contracts that validate structure and requirements at write time. Define once, enforce everywhere. | ||
|
|
||
| Mention that these three layers work together: workflows enforce process, schemas enforce file contracts, reviews verify output. | ||
|
|
||
| ### 3. Review rules (for code projects) | ||
|
|
||
| Check if this looks like a code project (e.g., has source files, a `package.json`, `pyproject.toml`, `Cargo.toml`, `go.mod`, a `src/` directory, etc.). | ||
|
|
||
| - **If it is a code project**: use `AskUserQuestion` to explain that DeepWork can set up automated review rules for the project — these run every time `/review` is called and catch issues automatically. Ask if they'd like to set up review rules now. | ||
| - If yes: invoke the `/deepwork:configure_reviews` skill. | ||
| - If no: continue to the next step. | ||
| - **If it is NOT a code project** (or you can't tell): skip this step. | ||
|
|
||
| ### 4. Offer to record a workflow | ||
|
|
||
| Use `AskUserQuestion` to explain what workflows are in a bit more detail: | ||
|
|
||
| > Workflows let you capture a multi-step process and replay it reliably. You do the task once — research, analysis, report writing, whatever it is — and DeepWork turns it into a structured workflow with quality gates. Next time, the agent follows the exact same process. | ||
| > | ||
| > Would you like to record a workflow now? You'll just do the task like normal, and when you're done we'll turn it into a reusable workflow. | ||
|
|
||
| If they say yes, invoke the `/deepwork:record` skill. | ||
| If they say no, let them know they can run `/deepwork:record` anytime to get started, and that `/deepwork` is the main entry point for all DeepWork features. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,65 @@ | ||
| requirements: | ||
| # PLUG-REQ-002.6.1 | ||
| gh-star-check: > | ||
| The skill MUST check if the `gh` CLI is installed and, if present, use | ||
| `AskUserQuestion` to offer to star the DeepWork repo. If `gh` is not | ||
| installed, the skill MUST skip this step without mentioning it. | ||
|
|
||
| # PLUG-REQ-002.6.2 | ||
| gh-star-command: > | ||
| If the user agrees to star the repo, the skill MUST run | ||
| `gh api -X PUT /user/starred/Unsupervisedcom/deepwork`. | ||
|
|
||
| # Behavioral requirement — not a numbered sub-requirement in the spec; | ||
| # part of the record skill's setup flow prior to PLUG-REQ-002.3 handoff. | ||
| workflow-name-prompt: > | ||
| The skill MUST ask the user for a workflow name before proceeding. | ||
|
|
||
| # PLUG-REQ-002.2.1 | ||
| browser-tool-detection: > | ||
| The skill MUST check whether `mcp__claude-in-chrome__*` or | ||
| `mcp__plugin_playwright_playwright__*` tools are available before asking | ||
| about browser needs. | ||
|
|
||
| # PLUG-REQ-002.2.2 | ||
| browser-question-conditional: > | ||
| The skill MUST only ask about website access when no browser tools are | ||
| detected. If browser tools are already available, the question MUST be | ||
| skipped entirely. | ||
|
|
||
| # PLUG-REQ-002.2.3 | ||
| chrome-setup-guidance: > | ||
| When the user confirms they need website access and no browser tools are | ||
| available, the skill MUST tell them to run `/chrome` to set up Claude for | ||
| Chrome. | ||
|
|
||
| # PLUG-REQ-002.3.1 | ||
| clear-handoff-message: > | ||
| The skill MUST display a clear, bold-formatted message telling the user to | ||
| proceed with their workflow normally and to run `/deepwork learn` when | ||
| done. | ||
|
|
||
| # PLUG-REQ-002.4.1 | ||
| clarify-non-obvious-actions: > | ||
| During the workflow, the agent MUST ask for reasoning when the user makes | ||
| requests that would not be understandable as a repeatable workflow step — | ||
| e.g., removing a specific item without explanation, applying an unexplained | ||
| filter, or making a domain-specific judgment call. | ||
|
|
||
| # PLUG-REQ-002.4.2 | ||
| no-unnecessary-clarification: > | ||
| The agent MUST NOT ask for reasoning when the instruction clearly maps to | ||
| a repeatable step, the reasoning is obvious from context, or the user has | ||
| already explained their reasoning. | ||
|
|
||
| # PLUG-REQ-002.5.1 | ||
| catch-done-signal: > | ||
| If the user signals completion without running `/deepwork learn`, the agent | ||
| MUST use `AskUserQuestion` to confirm whether they want to create a | ||
| repeatable DeepWork job, and if so, invoke `/deepwork learn`. | ||
|
|
||
| # PLUG-REQ-002.1.2 | ||
| disable-model-invocation: > | ||
| The skill MUST set `disable-model-invocation: true` in its frontmatter so | ||
| that it is only triggered by explicit user invocation (`/record`), not by | ||
| the agent autonomously. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.