Automated summary
Router skill that turns a repository into an AI-first environment (AGENTS.md, docs/, .agents/) and then drives Deep Work Plans split into tasks that an agent can execute and resume.
Strengths
- Covers the whole lifecycle — onboarding, create, execute, resume, status, verify, upgrade — routing to the right sub-skill from the developer's intent.
- Onboarding is explicitly non-destructive: it detects existing AGENTS.md, CLAUDE.md, docs/ and .agents/, reconciles rather than overwrites, and asks before replacing anything.
- Plan artefacts are confined to a gitignored .dwp/ directory, and a dedicated verify sub-skill checks repository conformance objectively.
- The standard (spec/ v5 plus v6 extensions) ships with the skill, so setup works without network access.
Limitations
- Requires git and bash, and creates .claude/.cursor symlinks to .agents that may misbehave on some filesystems, notably Windows.
- As a router it expects you to load several companion files (spec, adaptation, onboard, verify) before acting, which costs context.
- Because plans live in a gitignored .dwp/, they are not shared with the team through the repository, which limits collective review of the planning.
Use it when a developer wants long, autonomous multi-task work carried out by an agent, or wants a repository made directly usable by coding agents.
Skip it for a one-line fix or a task that fits in a single prompt, where onboarding and plan scaffolding are overkill.
Security analysis
CautionThis is a methodology/router skill with no destructive commands, obfuscated payloads, or credential exfiltration in the provided text; it explicitly declares a trust boundary, non-destructive reconciliation, and no network in the core flow. However it grants Bash/Edit/Write and delegates all real file writes, git commits, .gitignore edits, and version downloads to sub-skill files that were not supplied for review, and it suppresses developer prompts in unattended modes. Legitimate purpose, powerful tools, unauditable downstream behavior — hence caution rather than safe.
- •Declared tools include write-capable Bash, Edit, and Write; the router claims it only reads, but the actual mutations live in referenced sub-skill files (create/, execute/, onboard/, upgrade/, author/) that are not included in this submission and therefore cannot be audited.
- •The upgrade flow ('checks the latest published tag, downloads only on explicit acceptance') implies network fetches and installing remote content; provenance/pinning cannot be verified from the provided text.
- •Onboarding writes AGENTS.md, CLAUDE.md symlinks, docs/, per-module docs, .agents/, and appends to .gitignore — repo-wide configuration changes; the 'reconcile, never clobber' guarantee is prose only and unverifiable here.
- •Execute/resume flows perform per-task commits and file writes; the 'never committing secrets, never pushing without instruction' rule is stated as policy rather than enforced by any mechanism visible in this file.
- •Under trust/auto modes the skill explicitly instructs the agent not to prompt the developer about a stale harness and to proceed ('do not ask'), reducing human confirmation for repo-mutating steps.
- •Sub-skill contents are loaded from disk and executed as instructions (progressive disclosure); no integrity or version pinning of those files is described.
- •Declares Bash, Edit, and Write and delegates to sub-skills that can execute plans, make per-task git commits, and write repository files; the router documents constraints, but the delegated sub-skills are not fully visible for audit.
- •The upgrade path can download a newer published version from the network, though the text says this happens only after explicit acceptance.
- •Onboarding modifies AGENTS.md, docs/, .agents/, and .gitignore; it claims non-destructive reconciliation, but this is still broad repository mutation.
- •Unattended trust/auto runs are instructed to record stale-harness gaps rather than stopping to offer an upgrade, which reduces interactive confirmation in those modes.
Examples
Set this repository up for AI agents and then give me a plan to split our monolithic config module into three packages.Resume the Deep Work Plan in .dwp/plans/ and continue with the next unchecked task, then report status.Check whether this repo actually conforms to the DWP standard and tell me what is stale or missing before I start new work.name: deepworkplan description: DeepWorkPlan — turn any repo AI-first and run Deep Work Plans. Routes to create, execute, refine, resume, status, verify, upgrade, and repo-onboarding sub-skills based on intent. Use when the developer wants to plan, execute, manage, or verify structured multi-task work, or make a repository AI-agent-ready. version: "7.8.1" documentation_url: https://deepworkplan.com user-invocable: true allowed-tools: Bash, Read, Grep, Glob, Edit, Write metadata: {"openclaw":{"emoji":"🧠","homepage":"https://deepworkplan.com","requires":{"anyBins":["git","bash"]}}}
DeepWorkPlan — Methodology Skill (Router)
Models matter; context matters more. The DeepWorkPlan skill turns any
repository into a structured environment — context, guardrails, and a durable
plan — where any coding agent executes reliably on short or long work. It makes
the repository "AI-first" — AGENTS.md + docs/ + per-module docs + .agents/
(with the .claude → .agents and .cursor → .agents symlinks) — and runs structured Deep Work
Plans: Lite plans for bounded work and Full task-file plans for longer work;
an AI agent creates, refines, executes task-by-task,
and resumes. All plan output lands in a gitignored .dwp/ directory
at the repo root (.dwp/plans/).
Source of truth: https://deepworkplan.com. License: MIT.
Start here (first run)
This skill is a self-sufficient entry point: whether a developer arrives from https://deepworkplan.com/init.md or simply installs this skill, the setup plan is the same — and it lives here, so no network is required.
If the repository is not yet AI-first — there is no root AGENTS.md and no
.agents/ directory — the recommended first action is to onboard it, even if
the developer's request was vague ("set this up", "make this repo AI-first", or a
plain install). Before routing anywhere else:
- Read the standard locally. Read
spec/(v5 base and v6 extensions) andshared/adaptation.md. The overriding rule is REASON, do not copy-paste: this skill is the reusable engine; what you produce must be adapted to this repository, never templated. - Run onboarding. Read
onboard/SKILL.mdand execute it. It is non-destructive: detect existingAGENTS.md,docs/,.agents/, orCLAUDE.md, reconcile rather than overwrite, and ask the developer before replacing anything. The result:AGENTS.md+CLAUDE.mdsymlink, a reasoneddocs/tree, per-module docs, a.agents/kit, and a gitignored.dwp/— the repository becomes the agent harness. - Verify conformance. Read
verify/SKILL.mdand run it to confirm, objectively, that the repository now meets the standard (AGENTS.md with real commands, the.agents/catalog, the gitignored.dwp/, and so on). - Then plan and execute. With the harness in place, create and execute Deep Work Plans (below) — long-horizon, gated, resumable work an agent can run autonomously for hours.
If the repository is already AI-first but its harness predates this skill —
AGENTS.md / .agents/ exist, yet there is no DWP standard: provenance line,
the provenance line is from an earlier series (2.x, 4.x, or 5.x; see
spec/V6_LIFECYCLE.md), or
docs/TESTING_GUIDE.md lacks the scoped-invocation and mapping content the
standard requires, or its agent rules lack the working principles described
in spec/DOCUMENTATION_STANDARD.md §2.3.1 (equivalent wording counts) —
offer the targeted harness upgrade before routing.
Say in one line what is out of date, then run
onboard/SKILL.md in upgrade mode (Phase 0), which
reconciles only the missing or outdated pieces, leaves every handwritten
section, custom skill and in-flight plan untouched, and changes nothing on a
second run. When the developer instead wants the skill itself current
(newer published version, or a fresh init pass end-to-end), route to
upgrade/SKILL.md: it checks the latest published tag,
downloads only on explicit acceptance, and re-runs onboarding as a fresh init —
.dwp/ plans are never migrated. An in-flight plan keeps its recorded
lifecycle; migrating one is a separate, explicit refine migrate. If the
developer declines, route by intent as normal.
Unattended runs record the gap; they never stop to offer. Under
trust/autoor a pre-approved plan, that offer is the confirmation authorization already removed. So do not ask: write it down where the work will see it (a plan flow's README notes andPROGRESS.md; otherwise the flow's own report) and route by intent. A stale harness is a recorded finding like any missing optional tool (spec/AGENT_PROTOCOL.md§7.2) — never a question, and never a silent omission either.
A partially AI-first repository takes this same branch. The branches above are the clean cases; real repositories land in between (an
AGENTS.mdwith no.agents/, an.agents/with no provenance line, docs without a testing guide). Any repository with some of the harness and not the rest counts as out-of-date harness, not as a fresh one: reconcile throughonboardinupgrademode, which adds only what is absent. Never re-onboard from scratch over a repository that already carries part of the harness — that is the one path that can overwrite handwritten work.
If the repository is already AI-first and current, skip onboarding and route by intent silently — do not announce the detection or the routing decision (no "the repo is already AI-first" / "routing to the create sub-skill" preamble). Just begin the matched sub-skill's flow directly.
What it does
This is the router. It does not run any flow itself — it maps the
developer's intent to the right sub-skill and tells the agent to read that
sub-skill's SKILL.md and execute it there.
Trust boundary (write scope)
allowed-tools includes write-capable Edit, Write, and Bash because the
sub-skills this router delegates to need them; the router itself only reads
(the repo tree, the local spec/, shared/, and sub-skill files). Writes happen
inside the delegated sub-skill, each of which declares its own trust boundary:
- Onboard writes
AGENTS.md,docs/, per-module docs,.agents/, and appends to.gitignore— reconciling with, never clobbering, what exists, and asking before replacing anything. - Create / refine write plan artifacts under the gitignored
.dwp/directory only. - Execute / resume write task outputs, progress, and per-task commits — gated by each task's validation, never committing secrets, never pushing without the developer's instruction.
- Addons install or configure anything only after the developer explicitly accepts the offer, always via pinned, verified install paths.
It MUST NOT: make network calls in the core flow, read or commit credentials,
run installers unprompted, or write anywhere outside the surfaces above. The
full guarantees and a runnable self-audit live in
TRUST.md.
For the agent — routing rules
When the developer wants to plan, execute, or manage structured work, or make a
repo AI-agent-ready, match the intent below and read that sub-skill's
SKILL.md to execute it. Do not answer directly — each sub-skill carries the
full step-by-step flow.
| Developer says… | Route to |
|------------------|----------|
| "create a plan", "plan this small fix", "organize this work", "new deep work plan", "/dwp-create" | Create → read create/SKILL.md |
| "execute the plan", "run the plan", "/dwp-execute" | Execute → read execute/SKILL.md |
| "modify the plan", "change the scope", "/dwp-refine" | Refine → read refine/SKILL.md |
| "resume", "continue the interrupted plan", "/dwp-resume" | Resume → read resume/SKILL.md |
| "plan status", "what's left", "/dwp-status" | Status → read status/SKILL.md |
| "verify", "is this repo AI-first?", "check conformance", "/dwp-verify" | Verify → read verify/SKILL.md |
| "make this repo AI-first", "onboard this repo", "set up AGENTS.md + docs + .agents" | Onboard → read onboard/SKILL.md |
| "upgrade DWP", "update the skill", "is there a newer version?", "/dwp-upgrade" | Upgrade → read upgrade/SKILL.md |
| "create/update a skill or agent", "evolve the kit", "/skill-create", "/agent-create" | Author → read author/SKILL.md |
If the intent is ambiguous between planning and managing existing work, ask the developer which they mean before routing.
Activation rules that hold for every row of the table:
- Ordinary direct edits never become plans silently. "Fix this bug", "rename this function", "update the README" are done directly — a Deep Work Plan starts only when the developer asks for a plan (or picks a flow explicitly). The routing table maps requested flows; it is not an interception policy.
- Trust is not a flow selector.
trust/autoauthorizes unattended continuation within the flow the developer requested; it never widens a read-only request into execution, and it never turns a direct edit into a plan. - Status and verify stay read-only. They report; they never execute tasks or mutate files — regardless of how they are invoked.
- Plan generation is detected, never assumed. A plan folder carrying a
manifest.jsoncontract pointer, acontract.json, or acontracts/revision chain is v6 (contract generation v6 or v7,spec/V7_CONTRACT.md) — create and execute route it through theirv6.mdloops (contract, journal, scheduler, verified closure). Anything else keeps the recorded v5 lifecycle, is never migrated silently, and a v5-only runner that meets a v6 plan reports it as unsupported rather than approximating it. Both generations can coexist in one.dwp/. - Hosts without slash commands use the same flows by name. Invoke the
sub-skill as
#deepworkplan-createor in plain text ("run deepworkplan-create"); the flows themselves are plain file reads, edits and shell commands (shared/troubleshooting.md§5 states the capability fallbacks). Flow discovery is local: the pack and the repo's.agents/index live on disk — nothing routes through a network service.
Normative specification (ships with the skill)
The authoritative standard lives at spec/: retained v5
base documents plus the four current v6 extensions. It ships inside the skill so an agent
reads the standard locally — no network needed. The onboard flow and
shared/adaptation.md reference it as the standard to produce. The public,
rendered version lives at https://deepworkplan.com/spec.
Shared resources used by every sub-skill
shared/context.sh— detect repo root, branch, and agent tool; resolve the.dwp/output location.shared/dwp-paths.md— the.dwp/output convention (plans under.dwp/plans/) and how to override it.shared/adaptation.md— the reasoning-over-copy-paste principle and the two repository archetypes (individual repo vs orchestrator hub).shared/troubleshooting.md— read only when something is already wrong: discovery failure, stale installation, missing test command, unsupported host capability, inconsistent state.
Addons — one required local review, seven opt-in
The addons/ area holds what onboard layers onto a
repo. Every repo gets the pack and the AI Diff Reviewer local review
(baseline since 2.3.0: installed in Phase 7a, run by every Final Review).
The other seven are opt-in — a repo is fully conformant with zero
optional addons. Asked to set up or update them, or on a harness upgrade,
onboarding detects every addon, upgrades the ones in use and offers the ones
that fit.
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/download' --output '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md.part' && mv '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md.part' '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Bash, Read, Grep, Glob, Edit, Write
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md' && test -s '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/deepworkplan' && cp -R '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir' '.claude/skills/deepworkplan'Cursor
test -f '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md' && test -s '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/deepworkplan' && cp -R '.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir' '.cursor/skills/deepworkplan'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir'openskills read 'deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/deepworkplan-ai-first-repo-and-deep-work-plans-mvda87ir/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.