Agent skill

Incremental Implementation

by abashev in abashev/vfs-s3

Delivers changes incrementally. An agent skill from abashev/vfs-s3.

Apache-2.0Auto-check passedAgent Workflows

Install Incremental Implementation

skills CLI
$ npx skills add abashev/vfs-s3 --skill incremental-implementation -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install abashev/vfs-s3 incremental-implementation --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/incremental-implementation .claude/skills/incremental-implementation && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
incremental-implementation
GitHub stars
106
Used in
6 other repos
Token cost
~2.2k tokens
SKILL.md length
934 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

Delivers changes incrementally. An agent skill from abashev/vfs-s3.

  • Works in 5 steps: Implement the smallest complete piece of… → Test — run the test suite (or write a… → Verify — confirm the slice works as… → …
  • Implementing any feature
  • SKILL.md covers Overview, When to Use, The Increment Cycle and Slicing Strategies, plus 7 more sections
  • Calls npm and npx

What it does

Incremental Implementation is an agent skill from abashev/vfs-s3. Delivers changes incrementally. Use when implementing any feature or change that touches more than one file. Use when you're about to write a large amount of code at once, or when a task feels too big to land in one step.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Task breakdown. The repository describes itself as: Amazon S3 driver for Apache commons-vfs (Virtual File System) project. The licence is Apache-2.0.

When your agent uses it

  • Implementing any feature
  • Change that touches more than one file
  • Youre about to write a large amount of code at once
  • A task feels too big to land in one step

Example prompts

  • “Use the incremental-implementation skill to deliver changes incrementally. An agent skill from abashev/vfs-s3”
  • “/incremental-implementation”

Requirements

  • Node.js

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Implement the smallest complete piece of functionality
  2. Test — run the test suite (or write a test if none exists)
  3. Verify — confirm the slice works as expected (tests pass, build succeeds, manual check)
  4. Commit -- save your progress with a descriptive message (see git-workflow-and-versioning for atomic commit guidance)
  5. Move to the next slice — carry forward, don't restart

What it can do on your machine

Read from SKILL.md and the folder at commit 635eadf. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm and npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Incremental Implementation loads about 2.2k tokens when it runs. Until then it costs about 62 tokens; SKILL.md has 934 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~62
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from abashev/vfs-s3 at commit 635eadf, republished under its Apache-2.0 licence (© abashev). 934 words, ~2,238 tokens.

Download SKILL.mdSave it as .claude/skills/incremental-implementation/SKILL.md (or your agent's skills folder).
name
incremental-implementation
description
Delivers changes incrementally. Use when implementing any feature or change that touches more than one file. Use when you're about to write a large amount of code at once, or when a task feels too big to land in one step.

Incremental Implementation

Overview

Build in thin vertical slices — implement one piece, test it, verify it, then expand. Avoid implementing an entire feature in one pass. Each increment should leave the system in a working, testable state. This is the execution discipline that makes large features manageable.

When to Use

  • Implementing any multi-file change
  • Building a new feature from a task breakdown
  • Refactoring existing code
  • Any time you're tempted to write more than ~100 lines before testing

When NOT to use: Single-file, single-function changes where the scope is already minimal.

The Increment Cycle

┌──────────────────────────────────────┐
│                                      │
│   Implement ──→ Test ──→ Verify ──┐  │
│       ▲                           │  │
│       └───── Commit ◄─────────────┘  │
│              │                       │
│              ▼                       │
│          Next slice                  │
│                                      │
└──────────────────────────────────────┘

For each slice:

  1. Implement the smallest complete piece of functionality
  2. Test — run the test suite (or write a test if none exists)
  3. Verify — confirm the slice works as expected (tests pass, build succeeds, manual check)
  4. Commit -- save your progress with a descriptive message (see git-workflow-and-versioning for atomic commit guidance)
  5. Move to the next slice — carry forward, don't restart

Slicing Strategies

Vertical Slices (Preferred)

Build one complete path through the stack:

Slice 1: Create a task (DB + API + basic UI)
    → Tests pass, user can create a task via the UI

Slice 2: List tasks (query + API + UI)
    → Tests pass, user can see their tasks

Slice 3: Edit a task (update + API + UI)
    → Tests pass, user can modify tasks

Slice 4: Delete a task (delete + API + UI + confirmation)
    → Tests pass, full CRUD complete

Each slice delivers working end-to-end functionality.

Contract-First Slicing

When backend and frontend need to develop in parallel:

Slice 0: Define the API contract (types, interfaces, OpenAPI spec)
Slice 1a: Implement backend against the contract + API tests
Slice 1b: Implement frontend against mock data matching the contract
Slice 2: Integrate and test end-to-end
Risk-First Slicing

Tackle the riskiest or most uncertain piece first:

Slice 1: Prove the WebSocket connection works (highest risk)
Slice 2: Build real-time task updates on the proven connection
Slice 3: Add offline support and reconnection

If Slice 1 fails, you discover it before investing in Slices 2 and 3.

Implementation Rules

Rule 0: Simplicity First

Before writing any code, ask: "What is the simplest thing that could work?"

After writing code, review it against these checks:

  • Can this be done in fewer lines?
  • Are these abstractions earning their complexity?
  • Would a staff engineer look at this and say "why didn't you just..."?
  • Am I building for hypothetical future requirements, or the current task?
SIMPLICITY CHECK:
✗ Generic EventBus with middleware pipeline for one notification
✓ Simple function call

✗ Abstract factory pattern for two similar components
✓ Two straightforward components with shared utilities

✗ Config-driven form builder for three forms
✓ Three form components

Three similar lines of code is better than a premature abstraction. Implement the naive, obviously-correct version first. Optimize only after correctness is proven with tests.

Rule 0.5: Scope Discipline

Touch only what the task requires.

Do NOT:

  • "Clean up" code adjacent to your change
  • Refactor imports in files you're not modifying
  • Remove comments you don't fully understand
  • Add features not in the spec because they "seem useful"
  • Modernize syntax in files you're only reading

If you notice something worth improving outside your task scope, note it — don't fix it:

NOTICED BUT NOT TOUCHING:
- src/utils/format.ts has an unused import (unrelated to this task)
- The auth middleware could use better error messages (separate task)
→ Want me to create tasks for these?
Rule 1: One Thing at a Time

Each increment changes one logical thing. Don't mix concerns:

Bad: One commit that adds a new component, refactors an existing one, and updates the build config.

Good: Three separate commits — one for each change.

Rule 2: Keep It Compilable

After each increment, the project must build and existing tests must pass. Don't leave the codebase in a broken state between slices.

Rule 3: Feature Flags for Incomplete Features

If a feature isn't ready for users but you need to merge increments:

typescript
// Feature flag for work-in-progress
const ENABLE_TASK_SHARING = process.env.FEATURE_TASK_SHARING === 'true';

if (ENABLE_TASK_SHARING) {
  // New sharing UI
}

This lets you merge small increments to the main branch without exposing incomplete work.

Rule 4: Safe Defaults

New code should default to safe, conservative behavior:

typescript
// Safe: disabled by default, opt-in
export function createTask(data: TaskInput, options?: { notify?: boolean }) {
  const shouldNotify = options?.notify ?? false;
  // ...
}
Rule 5: Rollback-Friendly

Each increment should be independently revertable:

  • Additive changes (new files, new functions) are easy to revert
  • Modifications to existing code should be minimal and focused
  • Database migrations should have corresponding rollback migrations
  • Avoid deleting something in one commit and replacing it in the same commit — separate them

Working with Agents

When directing an agent to implement incrementally:

"Let's implement Task 3 from the plan.

Start with just the database schema change and the API endpoint.
Don't touch the UI yet — we'll do that in the next increment.

After implementing, run `npm test` and `npm run build` to verify
nothing is broken."

Be explicit about what's in scope and what's NOT in scope for each increment.

Show full SKILL.md (385 more words)Show less

Increment Checklist

After each increment, verify:

  • The change does one thing and does it completely
  • All existing tests still pass (npm test)
  • The build succeeds (npm run build)
  • Type checking passes (npx tsc --noEmit)
  • Linting passes (npm run lint)
  • The new functionality works as expected
  • The change is committed with a descriptive message

Note: Run each verification command after a change that could affect it. After a successful run, don't repeat the same command unless the code has changed since — re-running on unchanged code adds no information.

Common Rationalizations

RationalizationReality
"I'll test it all at the end"Bugs compound. A bug in Slice 1 makes Slices 2-5 wrong. Test each slice.
"It's faster to do it all at once"It feels faster until something breaks and you can't find which of 500 changed lines caused it.
"These changes are too small to commit separately"Small commits are free. Large commits hide bugs and make rollbacks painful.
"I'll add the feature flag later"If the feature isn't complete, it shouldn't be user-visible. Add the flag now.
"This refactor is small enough to include"Refactors mixed with features make both harder to review and debug. Separate them.
"Let me run the build command again just to be sure"After a successful run, repeating the same command adds nothing unless the code has changed since. Run it again after subsequent edits, not as reassurance.

Red Flags

  • More than 100 lines of code written without running tests
  • Multiple unrelated changes in a single increment
  • "Let me just quickly add this too" scope expansion
  • Skipping the test/verify step to move faster
  • Build or tests broken between increments
  • Large uncommitted changes accumulating
  • Building abstractions before the third use case demands it
  • Touching files outside the task scope "while I'm here"
  • Creating new utility files for one-time operations
  • Running the same build/test command twice in a row without any intervening code change

Verification

After completing all increments for a task:

  • Each increment was individually tested and committed
  • The full test suite passes
  • The build is clean
  • The feature works end-to-end as specified
  • No uncommitted changes remain

See Also

Per-increment verification is the local check. Before declaring a task done, apply the project-wide Definition of Done as the final gate, the standing bar every increment clears regardless of the task. See references/definition-of-done.md.

© abashev, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/incremental-implementation of abashev/vfs-s3.

Open the folder on GitHubat commit 635eadf

Used in 6 other repositories

We found 10 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 6 other GitHub owners. This page covers the copy in abashev/vfs-s3, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Incremental Implementation next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Incremental Implementation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Incremental Implementation this skillabashev/vfs-s31066 repos~2.2kAutomated safety check: PassApache-2.0
Incremental Implementationaddyosmani/agent-skills102k1 repos~2.3kAutomated safety check: PassMIT
Implementation Plan Creatortailcallhq/forgecode7.6k1 repos~1.1kAutomated safety check: PassApache-2.0
Agtx Task Sweepfynnfluegge/agtx1.7k—~1.7kAutomated safety check: PassApache-2.0
Implementation Plan Writerimbue-ai/bouncer400—~2.1kAutomated safety check: PassAGPL-3.0
Vspawnvlinx-io/VelaTerm259—~2.5kAutomated safety check: PassMIT

Similar skills

  • Incremental Implementation

    addyosmani/agent-skills

    Delivers a change in thin vertical slices, each implemented, tested, verified and committed before the next, using vertical, contract-first or risk-first slicing.

    102k GitHub starsUsed in 1 repo~2.3k tokens
    Agent WorkflowsAuto-check passed
  • Implementation Plan Creator

    tailcallhq/forgecode

    Writes a structured Markdown implementation plan with checkbox tasks, verification criteria and risks, then checks it with a validation script; no code changes.

    7.6k GitHub starsUsed in 1 repo~1.1k tokens
    Agent WorkflowsAuto-check passed
  • Agtx Task Sweep

    fynnfluegge/agtx

    Breaks a conversation's results into feature-level tasks and pushes them to the agtx kanban board, where each task gets its own worktree and agent session.

    1.7k GitHub stars~1.7k tokensUpdated 5 days ago
    Agent WorkflowsAuto-check passed
  • Turns a feature's goals, requirements and architecture documents into a set of self-contained task files that a developer with no project context can follow.

    400 GitHub stars~2.1k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Vspawn

    vlinx-io/VelaTerm

    Explicitly spawn a standalone child session under the current vlx-term session, passing the task in as its first message (mirrors spawntask).

    259 GitHub stars~2.5k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Official

    Designs a step-by-step playbook for large or unfamiliar work, runs it as a loop of hypotheses and measurements, and logs decisions so a human can review them later.

    10k GitHub starsUsed in 8 repos~1k tokens
    Agent WorkflowsAuto-check passed

More from abashev/vfs-s3

  • Context Engineering

    abashev/vfs-s3

    Optimizes agent context setup. An agent skill from abashev/vfs-s3.

    106 GitHub starsUsed in 9 repos~2.6k tokens
    Auto-check: notes
  • Breaks work into ordered tasks. An agent skill from abashev/vfs-s3.

    106 GitHub starsUsed in 8 repos~1.9k tokens
    Auto-check passed
  • Guides systematic root-cause debugging. An agent skill from abashev/vfs-s3.

    106 GitHub starsUsed in 6 repos~2.6k tokens
    Auto-check passed
  • Subjects every non-trivial decision to a fresh-context adversarial review before it stands.

    106 GitHub starsUsed in 6 repos~4.1k tokens
    Auto-check passed
  • Creates specs before coding. An agent skill from abashev/vfs-s3.

    106 GitHub starsUsed in 5 repos~2.1k tokens
    Auto-check passed
  • Drives development with tests. An agent skill from abashev/vfs-s3.

    106 GitHub starsUsed in 5 repos~3.7k tokens
    Auto-check passed

Questions about Incremental Implementation

What does Incremental Implementation do?

Delivers changes incrementally. An agent skill from abashev/vfs-s3. Incremental Implementation is an agent skill from abashev/vfs-s3. Delivers changes incrementally.

When should I use Incremental Implementation?

Incremental Implementation fits situations like: implementing any feature; change that touches more than one file; youre about to write a large amount of code at once; A task feels too big to land in one step.

How do I install Incremental Implementation in Claude Code?

Run `npx skills add abashev/vfs-s3 --skill incremental-implementation -a claude-code`. Or copy the skill folder (.claude/skills/incremental-implementation in abashev/vfs-s3) into .claude/skills/incremental-implementation in your project. Claude Code loads it when a task matches its description.

How do I install Incremental Implementation in Codex?

Run `npx skills add abashev/vfs-s3 --skill incremental-implementation -a codex`. Or copy the skill folder (.claude/skills/incremental-implementation in abashev/vfs-s3) into .agents/skills/incremental-implementation in your project. Codex loads it when a task matches its description.

Can I use Incremental Implementation in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add abashev/vfs-s3 --skill incremental-implementation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/incremental-implementation, .gemini/skills/incremental-implementation, .github/skills/incremental-implementation and .opencode/skills/incremental-implementation in your project.

What does Incremental Implementation need to run?

Going by SKILL.md and its folder, Incremental Implementation needs the command-line tools its instructions call (npm and npx). Our summary lists: Node.js.

Does Incremental Implementation access the network?

SKILL.md contains no URLs. Its commands use npm and npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Incremental Implementation safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Incremental Implementation use?

Incremental Implementation is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Incremental Implementation use?

About 2.2k tokens (SKILL.md is roughly 9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Incremental Implementation?

Skills that share tags, products or a category with Incremental Implementation: Incremental Implementation (addyosmani/agent-skills, 102k stars), Implementation Plan Creator (tailcallhq/forgecode, 7.6k stars), Agtx Task Sweep (fynnfluegge/agtx, 1.7k stars) and Implementation Plan Writer (imbue-ai/bouncer, 400 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Incremental Implementation?

abashev (a GitHub user) maintains it in abashev/vfs-s3, which has 106 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on September 30, 2026.

Source: abashev/vfs-s3 on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.