airtight-plans

Write structured multi-step implementation plans in markdown format. Plans use numbered steps with clear titles and detailed instructions. Use when asked to create an implementation plan, development roadmap, or multi-step task breakdown.

16 stars

Best use case

airtight-plans is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Write structured multi-step implementation plans in markdown format. Plans use numbered steps with clear titles and detailed instructions. Use when asked to create an implementation plan, development roadmap, or multi-step task breakdown.

Teams using airtight-plans should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/airtight-plans/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/data-ai/airtight-plans/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/airtight-plans/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How airtight-plans Compares

Feature / Agentairtight-plansStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Write structured multi-step implementation plans in markdown format. Plans use numbered steps with clear titles and detailed instructions. Use when asked to create an implementation plan, development roadmap, or multi-step task breakdown.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Writing Implementation Plans

Create structured plans with numbered steps that can be executed by developers or automated agents.

## Step Format

```markdown
## Step N: Title

Instructions for this step.
```

**Rules:**
- Format: `## Step N: Title` (N = positive integer)
- Sequential numbering: 1, 2, 3...
- No duplicate step numbers
- Descriptive titles indicating what the step accomplishes

## Step Structure

Each step has four sections:

### Status Quo
What exists at the start of this step. This follows logically from the initial state or previous steps. The implementer can rely on these conditions but should verify them before proceeding.

### Objectives
The business requirements and conceptual goals for this step. What do we want to achieve? How does this fit into the overall plan?

### Tech Notes
Implementation hints, code references, architectural decisions, or technical details that help the implementer. Optional if the implementation is straightforward.

### Acceptance Criteria
Verification steps the implementer performs to confirm the task is complete. Not restated requirements—concrete checks like running tests, verifying behavior, or inspecting output.

**Bad** (restates requirements):
```
### Acceptance Criteria
- User model has all fields
- Password is hashed
```

**Good** (verification steps):
```
### Acceptance Criteria
- `just test` passes with new model tests
- Create a user in test, verify passwordHash !== plaintext password
- Test confirms duplicate email throws constraint error
```

## Example

```markdown
# Feature: User Authentication

Implements JWT-based authentication for the API.

## Step 1: Create user model

### Status Quo
- Database is configured with migrations support
- No user-related tables exist yet

### Objectives
Create the foundational User model to store account credentials. This enables all subsequent authentication features.

### Tech Notes
- Use UUID for id to avoid enumeration attacks
- Store passwordHash, never plain passwords
- Consider adding `deletedAt` for soft deletes if needed later

### Acceptance Criteria
- `just test` passes including new user model tests
- Unit test verifies passwordHash !== plaintext password
- Unit test confirms duplicate email throws constraint error

## Step 2: Implement registration endpoint

### Status Quo
- User model exists with email uniqueness constraint
- Password hashing is implemented in the model

### Objectives
Allow new users to create accounts. This is the entry point for user onboarding.

### Tech Notes
- Endpoint: POST /api/auth/register
- Request body: `{ email, password }`
- Response: `{ user: { id, email }, token }`
- Use existing validation middleware pattern from `src/middleware/validate.ts`

### Acceptance Criteria
- `just test` passes with registration endpoint tests
- `curl -X POST /api/auth/register` with valid data returns 201 and JWT
- Invalid email format returns 400 with validation message
- Existing email returns 409

## Step 3: Implement login endpoint

### Status Quo
- User model and registration endpoint exist
- Test users can be created via registration

### Objectives
Allow existing users to authenticate and receive a token for subsequent API calls.

### Tech Notes
- Endpoint: POST /api/auth/login
- Use constant-time comparison for password verification
- JWT payload should include user ID and expiration

### Acceptance Criteria
- `just test` passes with login tests
- Valid credentials return 200 with decodable JWT containing user ID
- Wrong password returns 401

## Step 4: Add auth middleware

### Status Quo
- Login endpoint issues valid JWTs
- Protected routes are not yet defined

### Objectives
Create reusable middleware that protects routes requiring authentication. This centralizes auth logic and ensures consistent security across the API.

### Tech Notes
- Extract token from `Authorization: Bearer <token>` header
- Attach decoded user to `req.user` for downstream handlers
- See existing middleware pattern in `src/middleware/`

### Acceptance Criteria
- `just test` passes with middleware tests
- Request to protected route without token returns 401
- Request with valid token succeeds and handler receives user object
- Expired token returns 401

## Step 5: Write integration tests

### Status Quo
- All auth components (model, registration, login, middleware) are implemented
- Unit tests exist for individual components

### Objectives
Verify the complete authentication flow works end-to-end. Catch integration issues that unit tests might miss.

### Tech Notes
- Test the full flow: register → login → access protected route
- Include edge cases: expired tokens, malformed tokens, missing headers

### Acceptance Criteria
- `just test` passes with all new integration tests
- Test coverage report shows auth module > 80% coverage
```

## Step Granularity

**Too granular:** "Create file X", "Add import Y"
**Too coarse:** "Implement entire feature"
**Right size:** Logical units that can be completed and verified independently

A good step:
- Can be completed in one focused work session
- Is independently verifiable
- Leaves codebase in working state

## Clarity Guidelines

**Vague:**
```markdown
## Step 3: Add validation
Add validation to the form.
```

**Clear:**
```markdown
## Step 3: Add form validation

### Status Quo
- Registration form exists with email, password, and confirm password fields
- Form submits without any client-side validation

### Objectives
Prevent invalid submissions and provide immediate feedback to users, reducing server load and improving UX.

### Tech Notes
- Email: valid format (use existing `isValidEmail` helper)
- Password: min 8 chars, at least one number and one special character
- Confirm password: must match password field
- Display inline errors below each field
- Disable submit button until all validations pass

### Acceptance Criteria
- `just test` passes with form validation tests
- Submit with invalid email shows "Invalid email format" below field
- Submit with short password shows requirements message
- Submit button disabled until all fields valid
```

## Common Patterns

**Feature implementation:**
1. Models/Schema → 2. Service layer → 3. API endpoints → 4. Validation → 5. Tests

**Refactoring:**
1. Add tests → 2. Extract/restructure → 3. Update consumers → 4. Remove old code → 5. Verify

**Bug fix:**
1. Failing test → 2. Identify cause → 3. Fix → 4. Verify → 5. Regression tests

## Output

Save the plan as a markdown file with:
1. Title: `# Feature: Name` or `# Task: Name`
2. Overview (brief description)
3. Steps (numbered, following format above)

---

## Working with This Plan

### For Implementers

1. **Work sequentially.** Complete steps in order—each step builds on the previous one.

2. **Verify status quo.** Before starting a step, confirm the conditions in "Status Quo" are met. If not, something may have gone wrong in a previous step.

3. **Meet acceptance criteria.** A step is complete only when all acceptance criteria pass. Don't proceed to the next step until they do.

4. **Flag blockers early.** If a step is impossible due to missing information, incorrect assumptions, or technical constraints, stop and raise the issue rather than improvising.

5. **Don't over-engineer.** Implement exactly what's specified. Save improvements and refactors for separate tasks.

6. **Keep the codebase working.** After each step, the code should build and tests should pass. Never leave the codebase in a broken state between steps.

### For Reviewers

1. **Review the plan before implementation.** Check that:
   - Steps are correctly ordered (no step depends on something done later)
   - Status quo for each step follows logically from previous steps
   - Acceptance criteria are verifiable, not just restated requirements
   - No critical steps are missing
   - Step granularity is appropriate (not too coarse, not too granular)

2. **Review implementation against the plan.** For each step, verify:
   - The acceptance criteria are actually met
   - No unplanned changes were introduced
   - The implementation matches the tech notes where specified

3. **Track deviations.** If the implementation necessarily diverges from the plan, ensure the deviation is documented and justified. Update the plan if it will be reused.

Related Skills

kitt-create-plans

16
from diegosouzapw/awesome-omni-skill

Create hierarchical project plans optimized for solo agentic development. Use when planning projects, phases, or tasks that the AI agent will execute. Produces agent-executable plans with verification criteria, not enterprise documentation. Handles briefs, roadmaps, phase plans, and context handoffs.

treatment-plans

16
from diegosouzapw/awesome-omni-skill

Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.

superteam-writing-plans

16
from diegosouzapw/awesome-omni-skill

Create structured implementation plans with machine-parseable task blocks

libgraphql-plans

16
from diegosouzapw/awesome-omni-skill

Track, organize, and maintain plans.md files and code TODOs for the libgraphql project. Use when the user asks to update plans, sync TODOs, mark tasks complete, add new tasks, identify high-impact work, or asks what's left to do in the libgraphql codebase. Triggers include phrases like "update plans", "sync TODOs", "what's left to do", "mark X as done", "track a new task", "highest-impact work", or references to plans.md files.

bgo

10
from diegosouzapw/awesome-omni-skill

Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.

Coding & Development

obsidian-daily

16
from diegosouzapw/awesome-omni-skill

Manage Obsidian Daily Notes via obsidian-cli. Create and open daily notes, append entries (journals, logs, tasks, links), read past notes by date, and search vault content. Handles relative dates like "yesterday", "last Friday", "3 days ago".

obsidian-additions

16
from diegosouzapw/awesome-omni-skill

Create supplementary materials attached to existing notes: experiments, meetings, reports, logs, conspectuses, practice sessions, annotations, AI outputs, links collections. Two-step process: (1) create aggregator space, (2) create concrete addition in base/additions/. INVOKE when user wants to attach any supplementary material to an existing note. Triggers: "addition", "create addition", "experiment", "meeting notes", "report", "conspectus", "log", "practice", "annotations", "links", "link collection", "аддишн", "конспект", "встреча", "отчёт", "эксперимент", "практика", "аннотации", "ссылки", "добавь к заметке".

observe

16
from diegosouzapw/awesome-omni-skill

Query and manage Observe using the Observe CLI. Use when the user wants to run OPAL queries, list datasets, manage objects, or interact with their Observe tenant from the command line.

observability-review

16
from diegosouzapw/awesome-omni-skill

AI agent that analyzes operational signals (metrics, logs, traces, alerts, SLO/SLI reports) from observability platforms (Prometheus, Datadog, New Relic, CloudWatch, Grafana, Elastic) and produces practical, risk-aware triage and recommendations. Use when reviewing system health, investigating performance issues, analyzing monitoring data, evaluating service reliability, or providing SRE analysis of operational metrics. Distinguishes between critical issues requiring action, items needing investigation, and informational observations requiring no action.

nvidia-nim

16
from diegosouzapw/awesome-omni-skill

NVIDIA NIM inference microservices for deploying AI models with OpenAI-compatible APIs, self-hosted or cloud

numpy-string-ops

16
from diegosouzapw/awesome-omni-skill

Vectorized string manipulation using the char module and modern string alternatives, including cleaning and search operations. Triggers: string operations, numpy.char, text cleaning, substring search.

nova-act-usability

16
from diegosouzapw/awesome-omni-skill

AI-orchestrated usability testing using Amazon Nova Act. The agent generates personas, runs tests to collect raw data, interprets responses to determine goal achievement, and generates HTML reports. Tests real user workflows (booking, checkout, posting) with safety guardrails. Use when asked to "test website usability", "run usability test", "generate usability report", "evaluate user experience", "test checkout flow", "test booking process", or "analyze website UX".