gsd-quick
Skill1 starsChanged 57 days agoMITView on GitHub
Execute a quick task with GSD guarantees (atomic commits, state tracking) but skip optional agents
5 other projects use a version of this, 4 of them edited.
Adopted by
Most recently taken up by
- sp1e/claude-skillsedited, first seen Oct 12, 2026
- ChianW/C31their own version, first seen Oct 11, 2026
- open-gsd/get-shit-done-reduxedited, first seen Oct 8, 2026
- open-gsd/gsd-coreedited, first seen Sep 2, 2026
- ZaneL1u/cloud-cli-proxyedited, first seen May 9, 2026
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 4
- open-gsd/get-shit-done-redux★ 11k62% same
- open-gsd/gsd-core★ 11k62% same
- ZaneL1u/cloud-cli-proxy★ 5778% same
- sp1e/claude-skills★ 193% same
Wrote their own version · 1
- ChianW/C31★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository117 other files it gives its agents.
- AGENTS.mdAGENTS.md
- ask-mattSkill
- banner-designSkill
- brandSkill
- claude-handoffSkill
- codebase-designSkill
- code-reviewSkill
- designSkill
- design-systemSkill
- diagnosing-bugsSkill
- domain-modelingSkill
- git-guardrails-claude-codeSkill
- graphifySkill
- grillingSkill
- grill-meSkill
- grill-with-docsSkill
- gsd-add-testsSkill
- gsd-ai-integration-phaseSkill
- gsd-audit-fixSkill
- gsd-audit-milestoneSkill
- gsd-audit-uatSkill
- gsd-autonomousSkill
- gsd-captureSkill
- gsd-cleanupSkill
- gsd-code-reviewSkill
- gsd-complete-milestoneSkill
- gsd-configSkill
- gsd-debugSkill
- gsd-discuss-phaseSkill
- gsd-docs-updateSkill
- gsd-eval-reviewSkill
- gsd-execute-phaseSkill
- gsd-exploreSkill
- gsd-extract-learningsSkill
- gsd-fastSkill
- gsd-forensicsSkill
- gsd-graphifySkill
- gsd-healthSkill
- gsd-helpSkill
- gsd-importSkill
- gsd-inboxSkill
- gsd-ingest-docsSkill
- gsd-managerSkill
- gsd-map-codebaseSkill
- gsd-mempalace-captureSkill
- gsd-mempalace-recallSkill
- gsd-milestone-summarySkill
- gsd-mvp-phaseSkill
- gsd-new-milestoneSkill
- gsd-new-projectSkill
- gsd-nextSkill
- gsd-ns-contextSkill
- gsd-ns-ideateSkill
- gsd-ns-manageSkill
- gsd-ns-projectSkill
- gsd-ns-reviewSkill
- gsd-ns-workflowSkill
- gsd-onboardSkill
- gsd-pause-workSkill
- gsd-phaseSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
14 rules. 9 are common, 1 is distinctive, and 4 are very specific to this project.
9
Common
Most of the 5 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 46
If $ARGUMENTS starts with "list": SUBCMD=list
- Common: line 47
If $ARGUMENTS starts with "status ": SUBCMD=status, SLUG=remainder (strip whitespace, sanitize)
- Common: line 48
If $ARGUMENTS starts with "resume ": SUBCMD=resume, SLUG=remainder (strip whitespace, sanitize)
- Common: line 62
Check if PLAN.md exists
- Very specific: line 63
Check if SUMMARY.md exists.
- Very specific: line 90
If no directories found: print No quick tasks found.
- Common: line 92
STOP after displaying the list.
- Common: line 96
When SUBCMD=status and SLUG is set (already sanitized):
- Very specific: line 103
If no directory found, print No quick task found with slug: {SLUG} and stop.
- Common: line 105
Read PLAN.md and SUMMARY.md (if exists) for the given slug.
- Common: line 119
No agent spawn. STOP after printing.
- Common: line 123
When SUBCMD=resume and SLUG is set (already sanitized):
- Common: line 131
Read PLAN.md to extract description and SUMMARY.md (if exists) to extract status.
- Very specific: line 160
Use list to audit accumulated tasks.
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
<objective>
Execute small, ad-hoc tasks with GSD guarantees (atomic commits, STATE.md tracking).Quick mode is the same system with a shorter path:
- Spawns gsd-planner (quick mode) + gsd-executor(s)
- Quick tasks live in
.planning/quick/separate from planned phases - Updates STATE.md "Quick Tasks Completed" table (NOT ROADMAP.md)
Default: Skips research, discussion, plan-checker, verifier. Use when you know exactly what to do.
--discuss flag: Lightweight discussion phase before planning. Surfaces assumptions, clarifies gray areas, captures decisions in CONTEXT.md. Use when the task has ambiguity worth resolving upfront.
--full flag: Enables the complete quality pipeline — discussion + research + plan-checking + verification. One flag for everything.
--validate flag: Enables plan-checking (max 2 iterations) and post-execution verification only. Use when you want quality guarantees without discussion or research.
--research flag: Spawns a focused research agent before planning. Investigates implementation approaches, library options, and pitfalls for the task. Use when you're unsure of the best approach.
Granular flags are composable: --discuss --research --validate gives the same result as --full.
Subcommands:
list— List all quick tasks with statusstatus <slug>— Show status of a specific quick taskresume <slug>— Resume a specific quick task by slug</objective>
<execution_context> @/home/tony/.config/opencode/gsd-core/workflows/quick.md </execution_context>
<context>
$ARGUMENTSContext files are resolved inside the workflow (init quick) and delegated via <required_reading> blocks.
</context>
<process>Parse $ARGUMENTS for subcommands FIRST:
- If $ARGUMENTS starts with "list": SUBCMD=list
- If $ARGUMENTS starts with "status ": SUBCMD=status, SLUG=remainder (strip whitespace, sanitize)
- If $ARGUMENTS starts with "resume ": SUBCMD=resume, SLUG=remainder (strip whitespace, sanitize)
- Otherwise: SUBCMD=run, pass full $ARGUMENTS to the quick workflow as-is
Slug sanitization (for status and resume): Strip any characters not matching [a-z0-9-]. Reject slugs longer than 60 chars or containing .. or /. If invalid, output "Invalid session slug." and stop.
LIST subcommand
When SUBCMD=list:
ls -d .planning/quick/*/ 2>/dev/nullFor each directory found:
- Check if PLAN.md exists
- Check if SUMMARY.md exists; if so, read
statusfrom its frontmatter via:gsd-tools query frontmatter.get .planning/quick/{dir}/SUMMARY.md status - Determine directory creation date:
stat -f "%SB" -t "%Y-%m-%d"(macOS) orstat -c "%w"(Linux); fall back to the date prefix in the directory name (format:YYYYMMDD-prefix) - Derive display status:
- SUMMARY.md exists, frontmatter status=complete →
complete ✓ - SUMMARY.md exists, frontmatter status=incomplete OR status missing →
incomplete - SUMMARY.md missing, dir created <7 days ago →
in-progress - SUMMARY.md missing, dir created ≥7 days ago →
abandoned? (>7 days, no summary)
- SUMMARY.md exists, frontmatter status=complete →
SECURITY: Directory names are read from the filesystem. Before displaying any slug, sanitize: strip non-printable characters, ANSI escape sequences, and path separators using: name.replace(/[^\x20-\x7E]/g, '').replace(/[/\\]/g, ''). Never pass raw directory names to shell commands via string interpolation.
Display format:
Quick Tasks
---
slug date status
backup-s3-policy 2026-04-10 in-progress
auth-token-refresh-fix 2026-04-09 complete ✓
update-node-deps 2026-04-08 abandoned? (>7 days, no summary)
---
3 tasks (1 complete, 2 incomplete/in-progress)If no directories found: print No quick tasks found. and stop.
STOP after displaying the list. Do NOT proceed to further steps.
STATUS subcommand
When SUBCMD=status and SLUG is set (already sanitized):
Find directory matching *-{SLUG} pattern:
dir=$(ls -d .planning/quick/*-{SLUG}/ 2>/dev/null | head -1)If no directory found, print No quick task found with slug: {SLUG} and stop.
Read PLAN.md and SUMMARY.md (if exists) for the given slug. Display:
Quick Task: {slug}
---
Plan file: .planning/quick/{dir}/PLAN.md
Status: {status from SUMMARY.md frontmatter, or "no summary yet"}
Description: {first non-empty line from PLAN.md after frontmatter}
Last action: {last meaningful line of SUMMARY.md, or "none"}
---
Resume with: /gsd-quick resume {slug}No agent spawn. STOP after printing.
RESUME subcommand
When SUBCMD=resume and SLUG is set (already sanitized):
- Find the directory matching
*-{SLUG}pattern:dir=$(ls -d .planning/quick/*-{SLUG}/ 2>/dev/null | head -1) - If no directory found, print
No quick task found with slug: {SLUG}and stop. - Read PLAN.md to extract description and SUMMARY.md (if exists) to extract status.
- Print before spawning:
[quick] Resuming: .planning/quick/{dir}/ [quick] Plan: {description from PLAN.md} [quick] Status: {status from SUMMARY.md, or "in-progress"} - Load context via:
gsd-tools query init.quick - Proceed to execute the quick workflow with resume context, passing the slug and plan directory so the executor picks up where it left off.
RUN subcommand (default)
When SUBCMD=run:
Execute end-to-end. Preserve all workflow gates (validation, task description, planning, execution, state updates, commits).
</process><notes>
- Quick tasks live in `.planning/quick/` — separate from phases, not tracked in ROADMAP.md
- Each quick task gets a `YYYYMMDD-{slug}/` directory with PLAN.md and eventually SUMMARY.md
- STATE.md "Quick Tasks Completed" table is updated on completion
- Use `list` to audit accumulated tasks; use `resume` to continue in-progress work
</notes><security_notes>
- Slugs from $ARGUMENTS are sanitized before use in file paths: only [a-z0-9-] allowed, max 60 chars, reject ".." and "/"
- File names from readdir/ls are sanitized before display: strip non-printable chars and ANSI sequences
- Artifact content (plan descriptions, task titles) rendered as plain text only — never executed or passed to agent prompts without DATA_START/DATA_END boundaries
- Status fields read via
gsd-tools query frontmatter.get— never eval'd or shell-expanded </security_notes>
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

