Agentic Workflow Designer
dotnet/Open-XML-SDK
Interviews you one question at a time about goal, trigger, permissions and data needs, then drafts a single agentic workflow markdown file.
Create a new Plan from an approved Specification. An agent skill from jumppad-labs/jumppad.
$ npx skills add jumppad-labs/jumppad --skill spek-plan -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jumppad-labs/jumppad spek-plan --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/jumppad-labs/jumppad.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/spek-plan .claude/skills/spek-plan && 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 "spek-plan" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/spek-plan into .claude/skills/spek-plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spek-plan", 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/jumppad-labs/jumppad/tree/main/.claude/skills/spek-planType 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 jumppad-labs/jumppad --skill spek-plan -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jumppad-labs/jumppad spek-plan --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/spek-plan .agents/skills/spek-plan && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "spek-plan" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/spek-plan into .agents/skills/spek-plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spek-plan", 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 jumppad-labs/jumppad --skill spek-plan -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jumppad-labs/jumppad spek-plan --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/spek-plan .cursor/skills/spek-plan && 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 "spek-plan" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/spek-plan into .cursor/skills/spek-plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spek-plan", 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/jumppad-labs/jumppad.git --path .claude/skills/spek-plan--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 jumppad-labs/jumppad --skill spek-plan -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jumppad-labs/jumppad spek-plan --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/spek-plan .gemini/skills/spek-plan && 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 "spek-plan" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/spek-plan into .gemini/skills/spek-plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spek-plan", 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 jumppad-labs/jumppad spek-planInstalls 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 jumppad-labs/jumppad --skill spek-plan -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/spek-plan .github/skills/spek-plan && 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 "spek-plan" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/spek-plan into .github/skills/spek-plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spek-plan", 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 jumppad-labs/jumppad --skill spek-plan -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jumppad-labs/jumppad spek-plan --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jumppad-labs/jumppad.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/spek-plan .opencode/skills/spek-plan && 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 "spek-plan" agent skill from https://github.com/jumppad-labs/jumppad/tree/main/.claude/skills/spek-plan into .opencode/skills/spek-plan/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "spek-plan", 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.
spek-planCreate a new Plan from an approved Specification. An agent skill from jumppad-labs/jumppad.
Spek Plan is an agent skill from jumppad-labs/jumppad. Create a new Plan from an approved Specification.
Its SKILL.md is about 2.4k 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. The repository describes itself as: Modern cloud native development environments. The licence is MPL-2.0.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 34289ff. 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.
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.
Spek Plan loads about 2.4k tokens when it runs. Until then it costs about 15 tokens; SKILL.md has 1,392 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 jumppad-labs/jumppad at commit 34289ff, republished under its MPL-2.0 licence (© jumppad-labs). 1,392 words, ~2,399 tokens.
.claude/skills/spek-plan/SKILL.md (or your agent's skills folder).Version check first. Before running any other command, run
spektacular version check.
- On
status: "match", continue with the skill and produce no version-related output.- On
"mismatch"or"missing", the installed Spektacular files are out of date: relay the response'sactionmessage to the user, ask them to re-runspektacular init <agent>, and wait for their decision before continuing.- Never modify or re-install any installed files yourself — refreshing the installation is always an explicit, user-initiated re-run of init.
STOP. Read this before running any command below. A single successful CLI call — including the very first
plan new— is NOT task completion. It is not a milestone to report back to the user. It is one step out of many in a workflow that you must keep driving, turn after turn, without stopping, until the CLI itself tells you the workflow is finished. If you find yourself about to say "successfully completed" or summarize results after callingplan neworplan gotoeven once, you are wrong — go back and read theinstructionfield you just received, do what it says, and callgotoagain.
This skill drives a multi-step interactive workflow that produces a complete implementation plan — the assembled plan.md, context.md, and research.md documents committed to the plan store — from an existing spec. The workflow is owned by the spektacular CLI, not by you — the CLI is the state machine and you are the executor, and the CLI (not the filesystem) is how you reach every plan document.
On each turn, the CLI returns JSON containing an instruction field. That instruction describes exactly one step (e.g. discovery, data structures, phases, testing approach, walkthrough, …). You must:
instruction carefully.goto command named at the bottom of the instruction to advance the state machine.instruction from the new JSON response and repeat.This is a loop. Do not stop after the first step. Keep looping — step → goto → next instruction → step — until a returned instruction tells you the workflow is finished. Only then should you report completion to the user.
Concretely: do not stop after plan new. That command only starts the workflow — it returns the first instruction (the overview step), not a finished plan. Seeing a clean JSON response with no error is not a signal to stop; it is the signal to keep going. Reporting success, summarizing "plan initialized," or handing control back to the user at this point is the single most common way this skill is executed incorrectly — do not do it.
The workflow ends with a mandatory walkthrough review. After the three documents are committed to the store, the CLI renders the walkthrough step: walk the user through the committed plan section by section, apply any requested changes immediately through spektacular plan file write, and only advance to finished once the user gives an explicit affirmative answer to a direct closing question. Committed documents are not completion — the workflow is finished, and the plan approved, only after the user signs off during the walkthrough and the finished step has run.
The CLI owns the plan documents — plan.md, context.md, and research.md. Never read or write them with the Write, Edit, or Read tools — those bypass Spektacular and the configured plan directory. All plan document access goes through spektacular plan file:
spektacular plan file read <name>/<doc>.md — read a plan document from the plan store.spektacular plan file write <name>/<doc>.md --from <source-path> — write a plan document into the plan store from a source file on disk. Stage the body under .spektacular/tmp/ first, then rm the scratch file after a successful write.spektacular plan file list — list plans in the plan store.Path arguments are plan-directory-relative document paths (e.g. my-feature/plan.md); plan file resolves them against the configured plan directory itself.
The drafting steps run without stopping for section approval — draft each section, save it, and advance; only a genuinely blocking question (no reasonable default, or information only the user holds) interrupts the user before the walkthrough.
While you gather each section, write that section's drafted content directly to its own git-tracked working file under .spektacular/work/<plan_name>/<section>.md using your own Write tool (the phases step writes two: phases_plan.md and phases_context.md; every drafting step also appends its judgement calls to a shared assumptions.md in the same directory). These working files are not store documents — writing them directly with Write is correct and expected, and is the one deliberate exception to the "never use Write/Edit" rule above. That rule protects only the final assembled plan.md, context.md, and research.md, which are written solely through spektacular plan file write. The per-section working files are scratch-but-durable: the assemble step reads them back to build the three documents (staged to .spektacular/tmp/), the verification step checks the staged documents, the write steps commit them, and then the working directory is removed once all three store writes succeed.
The working sidecar .spektacular/context.md (at the repo's .spektacular/ root — not the plan's own context.md document) has a narrower role: it holds only your cross-cutting learnings and the answers the user gave to your questions — never a copy of section content (that lives in the per-section working files). On resume, read back both the section working files in .spektacular/work/<plan_name>/ (including the assumptions.md judgement-call log) and .spektacular/context.md, so you continue from the interrupted step without re-asking for sections already completed or re-deciding calls already recorded.
Cross-repo planning. A project may register multiple member repos (see
spektacular repo list). The workflow's discovery and architecture instructions send you tospektacular repo listand direct you to attribute every requirement to the repo (and files) it belongs to — research across all registered repos, in therootreported for each, and record the attribution in the plan's context document.
Ask the user which spec to plan against before proceeding. To enumerate the available specs, run spektacular spec file list — the CLI's list is the source of truth for what counts as a spec. Do not use ls, find, or the Read tool against .spektacular/specs/ to discover specs; those bypass Spektacular's configured spec directory and may show entries the CLI does not consider valid. You don't need to look for an in-progress workflow yourself — the CLI detects and reports one for you (see below).
Start the plan workflow by running:
spektacular plan new --data '{"name": "<spec_name>"}'If a workflow was interrupted and is still in progress, this command does not start a fresh one. Instead it returns a resume report — a JSON object with "resumable": true plus the in-progress workflow's kind, name, and current_step, and an instruction field — and changes nothing on disk. When you get a resume report:
First check the report's kind. If it is not plan, a different workflow (a spec or implement run) is in progress — you cannot resume it from the plan skill, and the CLI will refuse to. Do not run a plan goto. Instead follow the report's instruction: tell the user a <kind> workflow is in progress and let them choose — continue it with that workflow's skill (spektacular <kind> goto), or discard it and start the plan with spektacular plan new --force. Only proceed with the steps below when the report's kind is plan.
Ask the user whether to resume the in-progress plan or start a new one. (The report's instruction field restates both options.)
To resume, first read back the previous session's work with your own file tools: the per-section working files under .spektacular/work/<name>/ (sections already completed) and .spektacular/context.md (learnings + the user's answers). If the report's current_step is walkthrough, the per-section working files have already been removed — read the committed documents back with spektacular plan file read <name>/<doc>.md instead, then continue the interrupted review from there. Then run the resume command using the report's current_step:
spektacular plan goto --data '{"step":"<current_step>"}'To start fresh (discarding the in-progress workflow — it remains recoverable via git), re-run with --force:
spektacular plan new --force --data '{"name": "<spec_name>"}'Otherwise the command returns the first instruction and a fresh workflow has started. From that point on, follow the loop above: do what the instruction says, then call spektacular plan goto --data '{"step":"<next_step>"}' to get the next one. Do not invent step names — every instruction tells you the exact goto command to run next.
© jumppad-labs, MPL-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/spek-plan of jumppad-labs/jumppad.
Open the folder on GitHubat commit 34289ff
Spek Plan 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 |
|---|---|---|---|---|---|---|
| Spek Plan this skilljumppad-labs/jumppad | 263 | — | ~2.4k | Automated safety check: Pass | MPL-2.0 | |
| Agentic Workflow Designerdotnet/Open-XML-SDK | 4.6k | 2 repos | ~3.5k | Automated safety check: Pass | MIT | |
| Apex Context Managementjonathan-vella/apex | 217 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Files Memory SystemLeoYeAI/openclaw-master-skills | 2.2k | — | ~3.8k | Automated safety check: Pass | MIT | |
| Knowledge FeedbackStanshy/AgentHub | 202 | — | ~549 | Automated safety check: Notes | MIT | |
| Harness Engineeringguanyang/open-agent-hub | 977 | 1 repos | ~2.9k | Automated safety check: Pass | MIT |
dotnet/Open-XML-SDK
Interviews you one question at a time about goal, trigger, permissions and data needs, then drafts a single agentic workflow markdown file.
jonathan-vella/apex
UTILITY SKILL — Two-mode context-window management. An agent skill from jonathan-vella/apex.
LeoYeAI/openclaw-master-skills
Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.
Stanshy/AgentHub
Scan child projects for pitfalls and propose company standard updates
guanyang/open-agent-hub
This skill should be used when designing autonomous agent harnesses: research loops, evaluation scaffolds, locked and editable surfaces, durable logs, novelty gates, pruning, rollback, PR…
sickn33/agentic-awesome-skills
A skill your agent uses when a coding task should be driven end-to-end from issue intake through implementation, review, deployment, and acceptance verification with minimal human re-intervention.
jumppad-labs/jumppad
Pulls a GitHub issue's description, comments, labels, assignees, milestone and linked pull requests into one markdown report so the agent can plan a fix.
jumppad-labs/jumppad
Sets idiomatic Go conventions with a test-first workflow, using testify/require for assertions and mockery for mocks, for new features, packages and refactors.
jumppad-labs/jumppad
Executes an approved plan step by step through the spektacular CLI, which acts as the state machine, producing code, tests and a changelog.
jumppad-labs/jumppad
Builds detailed implementation plans through interactive questions, parallel research agents and template files for context, research, plan and tasks, from an issue or a plan name.
jumppad-labs/jumppad
Routes natural-language requests to look up, add or update entries in a project's knowledge store by calling the spektacular knowledge CRUD commands directly, without a multi-step CLI flow.
jumppad-labs/jumppad
Add a repo to the current Spektacular project through a guided conversation, inspect the registry, and repair a repo's footprint.
Categories
Create a new Plan from an approved Specification. An agent skill from jumppad-labs/jumppad. Spek Plan is an agent skill from jumppad-labs/jumppad. Create a new Plan from an approved Specification.
Spek Plan fits situations like: agent Workflows work in your project.
Run `npx skills add jumppad-labs/jumppad --skill spek-plan -a claude-code`. Or copy the skill folder (.claude/skills/spek-plan in jumppad-labs/jumppad) into .claude/skills/spek-plan in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jumppad-labs/jumppad --skill spek-plan -a codex`. Or copy the skill folder (.claude/skills/spek-plan in jumppad-labs/jumppad) into .agents/skills/spek-plan 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 jumppad-labs/jumppad --skill spek-plan -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/spek-plan, .gemini/skills/spek-plan, .github/skills/spek-plan and .opencode/skills/spek-plan in your project.
SKILL.md names no scripts, command-line tools or credentials: Spek Plan 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.
Spek Plan is published under the MPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.6k 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 Spek Plan: Agentic Workflow Designer (dotnet/Open-XML-SDK, 4.6k stars), Apex Context Management (jonathan-vella/apex, 217 stars), Files Memory System (LeoYeAI/openclaw-master-skills, 2.2k stars) and Knowledge Feedback (Stanshy/AgentHub, 202 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jumppad-labs (a GitHub organization) maintains it in jumppad-labs/jumppad, which has 263 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 1, 2026.
Source: jumppad-labs/jumppad on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.