Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Duck Plan

ASecurity

Find the hole in the plan before building over it; assumptions and acceptance checks must survive challenge. Use for implementation planning, consequential uncertainty, or work that previously needed repeated review fixes. Reuse established design decisions and cut speculative tasks.

5 stars
0 votes
0 copies
0 views
Added 9/20/2026
testinggosecurity

Security Analysis

A100/100

Scanned 9/20/2026

Install to Claude Code

$npx -y skills add askrubberduck/skills --skill duck-plan --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Duck Plan?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Duck Plan
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/askrubberduck-duck-plan/badge)](https://www.skillsdirectory.com/skills/askrubberduck-duck-plan)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: duck-plan
description: Find the hole in the plan before building over it; assumptions and acceptance checks must survive challenge. Use for implementation planning, consequential uncertainty, or work that previously needed repeated review fixes. Reuse established design decisions and cut speculative tasks.
---

# Duck Plan

Produce a plan someone can execute and verify. Each unit must change a required outcome or resolve
an uncertainty that blocks it. Agreement among planners does not establish feasibility.

Follow the user's language unless they ask otherwise; preserve commands, paths, identifiers, quoted errors and verdicts.
Planning does not authorize implementation or publication. Return to an executing caller so it can
continue within existing authority; a standalone planning request ends with the plan.

## Start from the actual decision

Reuse the outcome, constraints, affected flow and decisions established by `duck-frame`. If they
are missing or contradicted, resolve only the unsettled design before planning dependent work.
A small settled task can use the short form; no separate architecture document is required merely
to restate the request. Read relevant source, tests and project instructions before naming changes.

Use `duck-shape` in analysis mode on proposed mechanisms, reusing valid analysis already done.
Search for existing helpers and platform capabilities. Remove speculative layers, migration paths,
configuration and cleanup tasks that no required outcome needs. Do not defer structural problems
introduced by the plan to a later cleanup phase.

## Write executable units

Group work by a shared cause or independently verifiable outcome, not by file or review finding.
A small change can be one unit. For each meaningful unit, give:

- The required behavior and the concrete change, with the relevant source location.
- Dependencies and contracts it can affect; order only where a dependency requires it.
- The observation that would expose a wrong implementation, and the existing check or focused new
  check that will produce it. Name a feasibility experiment when code cannot yet be planned safely.

Use actual operations: "deduplicate retries by event ID at ingestion; check two retries produce
one charge" gives an implementer something to do and verify. "Build a robust processing layer,
add comprehensive tests, update docs" does not.

Use existing checks where they cover the contract. Add coverage for a material gap, not a test per
helper or a suite that mirrors the proposed branches. Keep necessary integration, failure recovery
and security checks; a happy-path unit test cannot stand in for them. Trivial edits need no invented
test. State the final user-visible observation, not merely that all planned steps were completed.

## Try to invalidate the plan

Ask whether its checks could pass while the outcome fails. Test the consequential assumption with
the cheapest available experiment before endorsing dependent work. Record what ran, what happened
and what remains untested. A plan for an unbuilt implementation cannot prove runtime correctness.

Choose challenge method and participants using [challenge selection](../duck-review/references/challenge.md).
A narrow plan may use a self-check with a decisive experiment; otherwise use the independent input
that reference and repository policy require. For external calls use `duck-review`'s
[dispatch mechanics](../duck-review/references/dispatch.md). Do not claim independence that did not run.

Independent authors receive the outcome, constraints and source before seeing the preferred plan.
A critic instead receives the proposed plan and seeks a concrete counterexample. Choose the method
that resolves the uncertainty; do not require both. Compare alternative decompositions only where
they change feasibility, dependencies or verification. Do not blend incompatible designs to retain
every participant's contribution.

Resolve factual disagreements with source or execution. A genuine owner tradeoff goes to
`duck-decide`; routine technical choices do not. Evidence refuting the design returns to frame.

## Cut and hand off

Remove any unit that contributes no required behavior, necessary evidence or safe transition.
Merge repeated fixes at their shared owner. Remove duplicate requirements and explanations already
in the frame. Keep a necessary migration, compatibility boundary or rollback even when it adds work.

Return READY when the units and checks are actionable with no substantiated blocker. Otherwise name
the refuted premise, missing evidence or owner decision and which work depends on it. Report actual
challenge participants and unresolved findings; a solo draft stays labeled solo.

Bound critique before dispatch: at most two critique rounds after the initial draft unless the
owner supplies another limit. Another round needs new evidence or a materially changed approach.
Stop redispatching at the bound and preserve unresolved claims; do not loop until everyone agrees.

Update one existing plan when a durable execution handoff is needed, using `duck-proof`'s durable-home
rules. A short standalone plan can stay in the response. Record decisive checks and disagreements,
not a transcript of the planning process. This does not replace a required `duck-review` release gate.

Attribution

askrubberduckaskrubberduck
View sourceMore from askrubberduck →
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Related Skills

Screen Reader Testing

Practical guide to testing web applications with screen readers for comprehensive accessibility validation.

393431 votes

Python Testing

使用pytest、TDD方法、夹具、模拟、参数化和覆盖率要求的Python测试策略。

2456590 votes

Tdd Workflow

在编写新功能、修复错误或重构代码时使用此技能。强制执行测试驱动开发,包含单元测试、集成测试和端到端测试,覆盖率超过80%。

2456590 votes

Springboot Tdd

使用JUnit 5、Mockito、MockMvc、Testcontainers和JaCoCo进行Spring Boot的测试驱动开发。适用于添加功能、修复错误或重构时。

2456590 votes

Eval Harness

克劳德代码会话的正式评估框架,实施评估驱动开发(EDD)原则

2456590 votes
View all in testing →