OpenSpec Bulk Change Archiver
Fission-AI/OpenSpec
Archives several completed OpenSpec changes in one operation, checking the codebase to resolve spec conflicts rather than archiving blindly.
Creates specs before coding. An agent skill from abashev/vfs-s3.
$ npx skills add abashev/vfs-s3 --skill spec-driven-development -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install abashev/vfs-s3 spec-driven-development --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/spec-driven-development .claude/skills/spec-driven-development && rm -rf skills-srcUse ~/.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/
Install the "spec-driven-development" agent skill from https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-development into .claude/skills/spec-driven-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spec-driven-development", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-developmentType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add abashev/vfs-s3 --skill spec-driven-development -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install abashev/vfs-s3 spec-driven-development --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/spec-driven-development .agents/skills/spec-driven-development && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "spec-driven-development" agent skill from https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-development into .agents/skills/spec-driven-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spec-driven-development", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add abashev/vfs-s3 --skill spec-driven-development -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install abashev/vfs-s3 spec-driven-development --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/spec-driven-development .cursor/skills/spec-driven-development && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "spec-driven-development" agent skill from https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-development into .cursor/skills/spec-driven-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spec-driven-development", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/abashev/vfs-s3.git --path .claude/skills/spec-driven-development--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add abashev/vfs-s3 --skill spec-driven-development -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install abashev/vfs-s3 spec-driven-development --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/spec-driven-development .gemini/skills/spec-driven-development && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "spec-driven-development" agent skill from https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-development into .gemini/skills/spec-driven-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spec-driven-development", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install abashev/vfs-s3 spec-driven-developmentInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add abashev/vfs-s3 --skill spec-driven-development -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/spec-driven-development .github/skills/spec-driven-development && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "spec-driven-development" agent skill from https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-development into .github/skills/spec-driven-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spec-driven-development", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add abashev/vfs-s3 --skill spec-driven-development -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install abashev/vfs-s3 spec-driven-development --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abashev/vfs-s3.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/spec-driven-development .opencode/skills/spec-driven-development && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "spec-driven-development" agent skill from https://github.com/abashev/vfs-s3/tree/17.0/.claude/skills/spec-driven-development into .opencode/skills/spec-driven-development/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spec-driven-development", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
spec-driven-developmentCreates specs before coding. An agent skill from abashev/vfs-s3.
Spec Driven Development is an agent skill from abashev/vfs-s3. Creates specs before coding. Use when starting a new project, feature, or significant change and no specification exists yet. Use when requirements are unclear, ambiguous, or only exist as a vague idea.
Its SKILL.md is about 2.1k 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 Development, covering Spec-driven development. The repository describes itself as: Amazon S3 driver for Apache commons-vfs (Virtual File System) project. The licence is Apache-2.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 635eadf. It shows what the files ask for, not the result of running them.
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.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Spec Driven Development loads about 2.1k tokens when it runs. Until then it costs about 57 tokens; SKILL.md has 872 words of instructions outside code blocks.
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.
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.
The full file from abashev/vfs-s3 at commit 635eadf, republished under its Apache-2.0 licence (© abashev). 872 words, ~2,112 tokens.
.claude/skills/spec-driven-development/SKILL.md (or your agent's skills folder).Write a structured specification before writing any code. The spec is the shared source of truth between you and the human engineer — it defines what we're building, why, and how we'll know it's done. Code without a spec is guessing.
When NOT to use: Single-line fixes, typo corrections, or changes where requirements are unambiguous and self-contained.
Spec-driven development has four phases. Do not advance to the next phase until the current one is validated.
SPECIFY ──→ PLAN ──→ TASKS ──→ IMPLEMENT
│ │ │ │
▼ ▼ ▼ ▼
Human Human Human Human
reviews reviews reviews reviewsStart with a high-level vision. Ask the human clarifying questions until requirements are concrete.
Surface assumptions immediately. Before writing any spec content, list what you're assuming:
ASSUMPTIONS I'M MAKING:
1. This is a web application (not native mobile)
2. Authentication uses session-based cookies (not JWT)
3. The database is PostgreSQL (based on existing Prisma schema)
4. We're targeting modern browsers only (no IE11)
→ Correct me now or I'll proceed with these.Don't silently fill in ambiguous requirements. The spec's entire purpose is to surface misunderstandings before code gets written — assumptions are the most dangerous form of misunderstanding.
Write a spec document covering these six core areas:
Objective — What are we building and why? Who is the user? What does success look like?
Commands — Full executable commands with flags, not just tool names.
Build: npm run build
Test: npm test -- --coverage
Lint: npm run lint --fix
Dev: npm run devProject Structure — Where source code lives, where tests go, where docs belong.
src/ → Application source code
src/components → React components
src/lib → Shared utilities
tests/ → Unit and integration tests
e2e/ → End-to-end tests
docs/ → DocumentationCode Style — One real code snippet showing your style beats three paragraphs describing it. Include naming conventions, formatting rules, and examples of good output.
Testing Strategy — What framework, where tests live, coverage expectations, which test levels for which concerns.
Boundaries — Three-tier system:
Spec template:
# Spec: [Project/Feature Name]
## Objective
[What we're building and why. User stories or acceptance criteria.]
## Tech Stack
[Framework, language, key dependencies with versions]
## Commands
[Build, test, lint, dev — full commands]
## Project Structure
[Directory layout with descriptions]
## Code Style
[Example snippet + key conventions]
## Testing Strategy
[Framework, test locations, coverage requirements, test levels]
## Boundaries
- Always: [...]
- Ask first: [...]
- Never: [...]
## Success Criteria
[How we'll know this is done — specific, testable conditions]
## Open Questions
[Anything unresolved that needs human input]Reframe instructions as success criteria. When receiving vague requirements, translate them into concrete conditions:
REQUIREMENT: "Make the dashboard faster"
REFRAMED SUCCESS CRITERIA:
- Dashboard LCP < 2.5s on 4G connection
- Initial data load completes in < 500ms
- No layout shift during load (CLS < 0.1)
→ Are these the right targets?This lets you loop, retry, and problem-solve toward a clear goal rather than guessing what "faster" means.
With the validated spec, generate a technical implementation plan:
Follow
planning-and-task-breakdownfor the dependency-graph mapping and vertical-slicing mechanics behind these steps; it is the canonical source. The bullets above are a lightweight summary; if they ever diverge,planning-and-task-breakdowntakes precedence.Output convention: Save the plan to
tasks/plan.mdand the task list totasks/todo.md, per the/plancommand convention. Createtasks/if it does not exist. Downstream commands (/build, etc.) expect these paths.
The plan should be reviewable: the human should be able to read it and say "yes, that's the right approach" or "no, change X."
Break the plan into discrete, implementable tasks:
Follow
planning-and-task-breakdownfor the full task-sizing and dependency-ordering mechanics; it is the canonical source. The template below is a lightweight inline form; if they ever diverge,planning-and-task-breakdowntakes precedence.
Task template:
- [ ] Task: [Description]
- Acceptance: [What must be true when done]
- Verify: [How to confirm — test command, build, manual check]
- Files: [Which files will be touched]Execute tasks one at a time following skills/incremental-implementation/SKILL.md (incremental-implementation) and skills/test-driven-development/SKILL.md (test-driven-development). Use skills/context-engineering/SKILL.md (context-engineering) to load the right spec sections and source files at each step rather than flooding the agent with the entire spec.
The spec is a living document, not a one-time artifact:
| Rationalization | Reality |
|---|---|
| "This is simple, I don't need a spec" | Simple tasks don't need long specs, but they still need acceptance criteria. A two-line spec is fine. |
| "I'll write the spec after I code it" | That's documentation, not specification. The spec's value is in forcing clarity before code. |
| "The spec will slow us down" | A 15-minute spec prevents hours of rework. Waterfall in 15 minutes beats debugging in 15 hours. |
| "Requirements will change anyway" | That's why the spec is a living document. An outdated spec is still better than no spec. |
| "The user knows what they want" | Even clear requests have implicit assumptions. The spec surfaces those assumptions. |
Before proceeding to implementation, confirm:
© 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
Just SKILL.md in .claude/skills/spec-driven-development of abashev/vfs-s3.
Open the folder on GitHubat commit 635eadf
We found 9 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 5 other GitHub owners. This page covers the copy in abashev/vfs-s3, which our catalogue first saw on October 7, 2026.
Spec Driven Development 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Spec Driven Development this skillabashev/vfs-s3 | 106 | 5 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| OpenSpec Bulk Change ArchiverFission-AI/OpenSpec | 71k | 2 repos | ~5.6k | Automated safety check: Pass | MIT | |
| Speckit ConstitutionWeihanLi/WeihanLi.Common | 242 | 11 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Speckit Analyzekunstmusik/blue | 154 | 18 repos | ~3k | Automated safety check: Pass | GPL-3.0 | |
| Speckit Plankunstmusik/blue | 154 | 18 repos | ~2.1k | Automated safety check: Pass | GPL-3.0 | |
| Review Spdzhu1090093659/spec_driven_develop | 983 | — | ~1.5k | Automated safety check: Pass | MIT |
Fission-AI/OpenSpec
Archives several completed OpenSpec changes in one operation, checking the codebase to resolve spec conflicts rather than archiving blindly.
WeihanLi/WeihanLi.Common
Create or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.
kunstmusik/blue
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
kunstmusik/blue
Execute the implementation planning workflow using the plan template to generate design artifacts.
zhu1090093659/spec_driven_develop
Findings-first code review workflow for AI coding agents. An agent skill from zhu1090093659/spec_driven_develop.
kunstmusik/blue
Create or update the feature specification from a natural language feature description.
abashev/vfs-s3
Optimizes agent context setup. An agent skill from abashev/vfs-s3.
abashev/vfs-s3
Breaks work into ordered tasks. An agent skill from abashev/vfs-s3.
abashev/vfs-s3
Guides systematic root-cause debugging. An agent skill from abashev/vfs-s3.
abashev/vfs-s3
Subjects every non-trivial decision to a fresh-context adversarial review before it stands.
abashev/vfs-s3
Delivers changes incrementally. An agent skill from abashev/vfs-s3.
abashev/vfs-s3
Drives development with tests. An agent skill from abashev/vfs-s3.
Categories
Creates specs before coding. An agent skill from abashev/vfs-s3. Spec Driven Development is an agent skill from abashev/vfs-s3. Creates specs before coding.
Spec Driven Development fits situations like: starting a new project; significant change and no specification exists yet; requirements are unclear; only exist as a vague idea.
Run `npx skills add abashev/vfs-s3 --skill spec-driven-development -a claude-code`. Or copy the skill folder (.claude/skills/spec-driven-development in abashev/vfs-s3) into .claude/skills/spec-driven-development in your project. Claude Code loads it when a task matches its description.
Run `npx skills add abashev/vfs-s3 --skill spec-driven-development -a codex`. Or copy the skill folder (.claude/skills/spec-driven-development in abashev/vfs-s3) into .agents/skills/spec-driven-development in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add abashev/vfs-s3 --skill spec-driven-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/spec-driven-development, .gemini/skills/spec-driven-development, .github/skills/spec-driven-development and .opencode/skills/spec-driven-development in your project.
SKILL.md names no scripts, command-line tools or credentials: Spec Driven Development is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
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.
Spec Driven Development 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.
About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Spec Driven Development: OpenSpec Bulk Change Archiver (Fission-AI/OpenSpec, 71k stars), Speckit Constitution (WeihanLi/WeihanLi.Common, 242 stars), Speckit Analyze (kunstmusik/blue, 154 stars) and Speckit Plan (kunstmusik/blue, 154 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
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.