AI-driven development workflow — from PRD to shipped code
github.com/smallnest/goal-workflow
Usage Guide — Six-step closed-loop development workflow: Plan, Design, Break Down, Implement, Review, Ship.
Goal Workflow is a collection of AI-driven development workflow skills built for Claude Code / Codex. It breaks down the complete software development lifecycle into standardized steps, each driven by a dedicated Skill.
It enables AI agents to act like experienced engineers — from understanding requirements, breaking down tasks, writing code, reviewing quality, to final submission and merge — autonomously completing the entire process. You just describe the feature idea, and the workflow handles the rest.
Requirements document generation + Issue breakdown
PRD to technical design SPEC
Break PRD/SPEC into Issue cards
Pick a card for end-to-end implementation
Automated code review and repair
Commit → PR → Merge → Close
Iterative de-AI text rewriting
ListenHub text-to-speech
UML and architecture diagram generator
Expert-level code refactoring
Go code modernization
Implementation notes
Reverse-generate project SPEC
Architecture smell detection
Install all skills in one command via the npx skills CLI:
# Install all skills from this repository
npx skills add smallnest/goal-workflow
# Or install a specific skill
npx skills add smallnest/goal-workflow --skill prd
npx skills add smallnest/goal-workflow --skill prd-to-spec
npx skills add smallnest/goal-workflow --skill to-issues
npx skills add smallnest/goal-workflow --skill review-it
npx skills add smallnest/goal-workflow --skill ship-it
npx skills add smallnest/goal-workflow --skill humanize-it
npx skills add smallnest/goal-workflow --skill listenhub-tts
npx skills add smallnest/goal-workflow --skill insight-diagram
npx skills add smallnest/goal-workflow --skill refactor
npx skills add smallnest/goal-workflow --skill modern-go
npx skills add smallnest/goal-workflow --skill note-it
npx skills add smallnest/goal-workflow --skill code-to-spec
npx skills add smallnest/goal-workflow --skill smell
# Global install (available for all projects)
npx skills add smallnest/goal-workflow -g
# Install to a specific agent
npx skills add smallnest/goal-workflow -a claude-code
| Tool | Purpose | Install |
|---|---|---|
gh | GitHub CLI (Issue/PR operations) | brew install gh && gh auth login |
claude | Claude Code CLI | npm install -g @anthropic-ai/claude-code |
npx | npm package runner | Bundled with Node.js |
/prd, /prd-to-spec, /to-issues, /review-it, /ship-it, /refactor, /modern-go, /note-it, /code-to-spec, /humanize-it, /listenhub-tts, /insight-diagram, /smell in Claude Code to directly invoke the corresponding skill.
Six-step closed loop, from requirements to delivery:
| Step | Command | Input | Output |
|---|---|---|---|
| 1. Plan | /prd |
Feature description / product idea | PRD document + Issue cards |
| 1.5 Design | /prd-to-spec |
PRD document | Technical SPEC (optional) |
| 1.6 Break Down | /to-issues |
PRD / SPEC document | Issue cards |
| 2. Implement | /goal |
An Issue card | Runnable code implementation |
| 3. Review | /review-it |
Code changes (dirty / branch) | Clean code that passes review |
| 4. Ship | /ship-it |
Reviewed code | Merged PR + Closed Issue |
/prd transforms a vague feature idea into a structured product requirements document and breaks it down into independently implementable Issue cards.
# Type directly in Claude Code
/prd Add a priority feature to our task management system
# Or use trigger phrases
Write PRD for: User registration with email and phone support
Requirements analysis: Add rate limiting capability to the API
tasks/prd-[feature-name].md# Generated Issue list
📋 Generated 4 Issues from PRD:
#1: Add priority field to database (backend, high)
#2: Display priority indicator (frontend, high) — depends on #1
#3: Add priority selector (frontend, medium) — depends on #1
#4: Filter tasks by priority (frontend, medium) — depends on #1, #2
/prd-to-spec transforms a product requirements document (PRD) into an implementable technical design SPEC. PRD says "what to build"; SPEC says "how to build it".
# Type directly in Claude Code
/prd-to-spec tasks/prd-priority-system.md
# Or use trigger phrases
PRD to design: Convert priority PRD to technical plan
Technical spec: Generate SPEC based on prd-user-auth.md
| PRD Element | SPEC Chapter | Transformation |
|---|---|---|
| User Stories | Business Logic + Test Mapping | Stories → algorithms + test cases |
| Functional Requirements | API Design + Business Logic | FR → endpoints + implementation logic |
| Acceptance Criteria | Testing Strategy | Criteria → concrete test scenarios |
| Non-Goals | Open Questions | Explicitly scoped exclusions |
| Technical Considerations | Architecture + Performance | Constraints → design decisions |
| # | Chapter | Content |
|---|---|---|
| 1 | Summary | Scope, PRD reference, design decision summary |
| 2 | Architecture | System context, component design, file structure |
| 3 | Data Model | Schema changes, entity definitions, migration plan |
| 4 | API Design | Endpoint table, request/response schema, error responses |
| 5 | Business Logic | Core algorithms, validation rules, state machines, edge cases |
| 6 | Error Handling | Error classification, retry strategies, degradation plan |
| 7 | Security | Authentication/authorization, input validation, data protection |
| 8 | Performance | Expected load, optimization strategies, database considerations |
| 9 | Testing Strategy | Unit/integration/E2E tests + acceptance criteria mapping |
| 10 | Implementation Plan | Implementation phases, Issue mapping, incremental delivery |
| 11 | Open Questions & Risks | Unresolved questions, technical risks, assumptions |
tasks/spec-[feature-name].md/prd-to-spec is an optional step. For most small to medium features, the Functional Requirements and Acceptance Criteria in the PRD are sufficient for the AI agent to make autonomous technical decisions during the /goal phase — the agent automatically analyzes the codebase, understands the architecture, and chooses the right implementation path without needing a pre-written SPEC. Consider running /prd-to-spec only in the following scenarios:
/to-issues breaks down a PRD and/or SPEC into independently implementable Issues and creates them on your chosen platform. It can be used standalone — no need to run /prd first.
# Type directly in Claude Code
/to-issues
# Or use trigger phrases
Create issues for: Create Issues from prd-user-auth.md
Break down issues: Break down implementable cards from SPEC
Generate cards: Break PRD and SPEC together into Issues
| Option | Description |
|---|---|
| Auto-detect | Scan tasks/ directory, list available PRDs and SPECs |
| Specify PRD | Break down based only on PRD's User Stories |
| Specify SPEC | Use SPEC's Issue Mapping chapter as primary guidance |
| PRD + SPEC | (Recommended) PRD provides requirements, SPEC provides technical conventions — most complete Issues |
| Platform | Tool | Description |
|---|---|---|
| GitHub | gh issue create | Requires gh CLI authentication |
| Local | Markdown files | Saved to .autoresearch/issues/ or custom directory |
| Baidu iCafe | icafe-cli | Requires iCafe space parameters |
/to-issues is the key bridge from requirements to implementation. It can be used independently — even if you didn't use /prd to generate a PRD, as long as you have a requirements document (or even pasted text), you can break it down into Issues.
/goal is Claude Code's built-in goal-driven development mode. Pick an Issue card and the agent understands the acceptance criteria and implements end-to-end.
# Claude Code: specify GitHub Issue number
/goal #42
# Claude Code: specify local Issue file
/goal tasks/issues/issue-001-add-priority-field.md
# Codex: use --goal flag
codex --goal "Implement issue #42: Add priority field to database"
/goal is a built-in feature of Claude Code and is not included in this skill package. It naturally integrates with this workflow — the Issue format generated by /prd is exactly what /goal expects as input.
/review-it performs automated review before committing, discovering potential issues and iteratively fixing them until the review passes.
# Review uncommitted changes (default mode)
/review-it
# Review entire branch vs main
/review-it --mode branch
# Review + tests in parallel
/review-it --parallel-tests "npm test"
| Principle | Description |
|---|---|
| Advisory | Review results are suggestions, not blindly applied |
| Verify | Every finding is verified by reading real code paths |
| Reject noise | Reject impractical edge cases, speculative risks, excessive refactoring |
| Iterate | Re-review after fixes until no actionable findings remain |
| Minimal | Prefer small fixes; avoid unnecessary large refactors |
| Working Tree State | Mode | Action |
|---|---|---|
| Uncommitted changes | local | Direct /review |
| Committed not pushed | branch | git diff origin/main...HEAD + review |
| Pushed / PR | branch | Same as above, auto-detect PR base |
| Clean working tree | skip | No review needed |
/review-it supports Claude Code, Codex, OpenCode, and DeepSeek TUI, automatically adapting to each agent's review commands.
/ship-it is the standard closing workflow after implementation is complete: commit code, create PR, merge, add implementation summary, close Issue.
# Invoke in Claude Code
/ship-it
# Or use trigger phrases
Submit code
Create PR and merge
# Step 1: Commit code (link Issue)
git add <related files>
git commit -m "Add priority field to database (#42)"
# Step 2: Push branch
git push -u origin feat/issue-42-priority-field
# Step 3: Create PR (body includes Closes #42)
gh pr create --title "Add priority field" \
--body "Closes #42 ..."
# Step 4: Merge
gh pr merge --squash --delete-branch
# Step 5: Close Issue (if not auto-closed)
gh issue close 42 --reason completed
| Scenario | Handling |
|---|---|
| CI checks failed | Check failure reason, fix and append commit then push |
| Merge conflict | Rebase origin/main, resolve conflicts then force push |
| Branch protection | Confirm required reviews are satisfied |
| Issue not auto-closed | Confirm PR body contains Closes #N, or close manually |
/ship-it depends on the gh CLI. Make sure you've authenticated with gh auth login.
/humanize-it rewrites specified documents to remove AI-generated feel. It automatically selects the most appropriate humanization strategy based on document type, iterating until the result meets quality standards.
# Type directly in Claude Code
/humanize-it docs/architecture.md
# Or use trigger phrases
De-AI: Rewrite this document in natural language
Reduce AIGC: humanize docs/blog-draft.md
| Skill | Best For | Style |
|---|---|---|
humanizer-zh | General text, blogs, copywriting | Natural, warm, opinionated |
humanize-chinese | General + academic + long-form text | Multi-style (Zhihu/Xiaohongshu/academic/literary etc.) |
technical-writing | Technical docs, architecture docs, review drafts | Plain, rigorous, defensible |
| Document Type | Priority Strategy Order |
|---|---|
| Technical documentation | technical-writing → humanizer-zh → humanize-chinese |
| Academic paper | humanize-chinese (academic) → humanizer-zh → technical-writing |
| General text | humanizer-zh → humanize-chinese → technical-writing |
| Long-form text (≥1500 chars) | humanize-chinese (longform) → humanizer-zh → technical-writing |
/listenhub-tts converts text to speech using the ListenHub API. Supports three synthesis modes, covering everything from short text to long-form content.
# Type directly in Claude Code
/listenhub-tts Convert this text to speech
# Or use trigger phrases
Speech synthesis: Read README.md aloud
Generate audio: Read this article in Xiaoman's voice
| Mode | API | Best For | Characteristics |
|---|---|---|---|
| Quick Synthesis | /v1/tts | Short text (< 1000 chars), single voice | Low latency, returns MP3 binary stream |
| Multi-Voice Script | /v1/speech | Multi-voice dialogue, podcasts | Different voices alternating narration |
| Long-Form Streaming | /v1/flow-speech/episodes | Long text (> 1000 chars) | Async synthesis, supports AI polishing |
| Scenario | Behavior |
|---|---|
| User specified voice | Use the specified speakerId directly |
| User did not specify voice | Call API to get voice list, present for user selection |
| Default voice | chat-girl-105-cn (Xiaoman dxqqq) |
| Config | Description |
|---|---|
LISTENHUB_API_KEY | ListenHub API key, set as environment variable |
aiPolish), which can automatically optimize text for spoken delivery before synthesis, making the narration more natural.
/insight-diagram generates UML diagrams, architecture diagrams, and flowcharts for any project. After analyzing the codebase, it lets users choose which diagram types to generate, renders them as HTML+SVG, and saves to the docs/ directory.
# Type directly in Claude Code
/insight-diagram
# Or use trigger phrases
Generate architecture diagram: Analyze project structure and generate architecture diagram
Draw flowchart: Draw call flow diagram for this module
Generate UML: Generate class diagram and sequence diagram
A total of 17 diagram types, divided into structural and behavioral categories:
| # | Diagram Type | Focus |
|---|---|---|
| 1 | System Architecture Diagram ★ | Component relationships, global perspective (non-UML, most common) |
| 2 | Class Diagram | Defining classes, attributes, operations, and relationships |
| 3 | Object Diagram | Object instances and their relationships at a specific moment |
| 4 | Component Diagram | System components and their dependencies |
| 5 | Deployment Diagram | Physical hardware, nodes, and software deployment |
| 6 | Package Diagram | Grouping model elements for organization |
| 7 | Composite Structure Diagram | Internal structure of a class |
| 8 | Profile Diagram | Extending UML metamodel, custom stereotypes |
| # | Diagram Type | Focus |
|---|---|---|
| 9 | Flowchart ★ | Main flow and branches (non-UML, most common) |
| 10 | Use Case Diagram | System functionality from user perspective |
| 11 | Activity Diagram | Process flow or steps |
| 12 | State Machine Diagram | State transitions over an object's lifecycle |
| 13 | Sequence Diagram | Object interactions over time |
| 14 | Communication Diagram | Focus on organizational relationships between objects |
| 15 | Timing Diagram | Focus on timing constraints of state changes |
| 16 | Interaction Overview Diagram | Combines activity and sequence diagrams |
| 17 | Swimlane Diagram | Cross-component/role responsibility flow (activity diagram variant) |
★ Indicates most commonly used diagram types. Default recommended combination: Architecture Diagram + Sequence Diagram + Flowchart.
docs/ directorysrc/services/ directory" or "focus on the database layer", to generate more targeted results.
/refactor provides expert-level code refactoring based on Martin Fowler's complete catalog from Refactoring 2nd Edition. By identifying code smells and applying proven refactoring techniques, it improves code maintainability, readability, and structure without changing external behavior.
# Type directly in Claude Code
/refactor
# Or use trigger phrases
Refactor: Refactor UserManager class, it's too large
Code smell: This function has Feature Envy, fix it
Extract method: Break this long method into smaller functions
Identifies 22 code smells, organized into five categories:
| Category | Smells | Primary Refactoring |
|---|---|---|
| Bloaters | Long Method | Extract Method, Replace Temp with Query |
| Large Class | Extract Class, Extract Subclass | |
| Primitive Obsession | Replace Data Value with Object | |
| Long Parameter List | Introduce Parameter Object | |
| Data Clumps | Extract Class | |
| OO Abusers | Switch Statements | Replace Conditional with Polymorphism |
| Temporary Field | Extract Class, Introduce Null Object | |
| Refused Bequest | Replace Inheritance with Delegation | |
| Alternative Classes with Different Interfaces | Rename Method, Extract Superclass | |
| Change Preventers | Divergent Change | Extract Class |
| Shotgun Surgery | Move Method, Move Field | |
| Parallel Inheritance Hierarchies | Move Method, Move Field | |
| Dispensables | Comments (code self-explanatory) | Extract Method, Rename Variable |
| Duplicate Code | Extract Method, Pull Up Method | |
| Lazy Class | Inline Class, Collapse Hierarchy | |
| Data Class | Move Method, Encapsulate Field | |
| Dead Code | Delete (Git history has record) | |
| Speculative Generality | Inline Class, Remove Parameter | |
| Couplers | Feature Envy | Move Method |
| Inappropriate Intimacy | Move Method, Move Field | |
| Message Chains | Hide Delegate | |
| Middle Man | Remove Middle Man | |
| Incomplete Library Class | Introduce Foreign Method |
40+ refactoring techniques in 6 categories, each with mechanical steps and comparison examples:
| Category | Count | Representative Techniques |
|---|---|---|
| Composing Methods | 9 | Extract Method, Inline Method, Extract Variable, Replace Temp with Query, Substitute Algorithm |
| Moving Features | 7 | Move Method, Move Field, Extract Class, Inline Class, Hide Delegate |
| Organizing Data | 13 | Replace Data Value with Object, Encapsulate Field, Replace Type Code with Subclasses, Replace Magic Number |
| Simplifying Conditionals | 8 | Decompose Conditional, Guard Clauses, Replace Conditional with Polymorphism, Introduce Null Object |
| Method Calls | 13 | Rename Method, Separate Query from Modifier, Introduce Parameter Object, Replace Error Code with Exception |
| Generalization | 9 | Pull Up Method, Push Down Method, Extract Interface, Form Template Method, Replace Inheritance with Delegation |
| Language | Key Recommendations |
|---|---|
| Java | final locals, IDE auto-refactor, Records, Sealed Classes |
| TypeScript | Destructuring reduces params, prefer const, Union Types replace type codes, ?. eliminates null checks |
| Python | Type Hints, dataclasses, @property, Context Managers |
| Go | Small interfaces, named return values, table-driven tests, early returns eliminate nesting |
| Rust | Result/Option replace error codes and null, Pattern Matching, From trait, Derive macros |
/modern-go automatically upgrades Go code to modern idioms and APIs, similar to go fix. It scans go.mod to detect the Go version, then batch-applies version-appropriate transformation rules to Go source files, covering 35+ rules from Go 1.0 through 1.26+.
# Type directly in Claude Code
/modern-go
# Or use trigger phrases
Modernize: Modernize this project's Go code
Upgrade Go code: Update to Go 1.22 idioms
Gofix: Scan pkg/ directory and apply transformations
go.mod to get Go version.go files within target scope (specified file/directory/entire project)goimports -w to clean imports| Version | Rules | Example (Before → After) |
|---|---|---|
| 1.0+ | time.Since | time.Now().Sub(start) → time.Since(start) |
| 1.8+ | time.Until | deadline.Sub(time.Now()) → time.Until(deadline) |
| 1.10+ | strings.Builder | Loop s += item → strings.Builder |
| 1.13+ | errors.Is | err == io.EOF → errors.Is(err, io.EOF) |
| 1.18+ | any, strings.Cut, bytes.Cut | interface{} → any, Index+slice → Cut |
| 1.19+ | fmt.Appendf, type-safe atomics | append(buf, fmt.Sprintf(...)...) → fmt.Appendf |
| 1.20+ | strings.Clone, CutPrefix/CutSuffix, errors.Join | string([]byte(s)) → strings.Clone(s) |
| 1.21+ | min/max, clear, slices/maps packages | Manual loops → slices.Contains, maps.Clone etc. |
| 1.22+ | range over int, cmp.Or, reflect.TypeFor | for i:=0;i<n;i++ → for i:=range n |
| 1.23+ | Iterator helpers, SplitSeq/FieldsSeq | for _,p:=range strings.Split(s,sep) → SplitSeq |
| 1.24+ | t.Context(), omitzero, b.Loop() | Test context.Background() → t.Context() |
| 1.25+ | wg.Go() | wg.Add(1); go func(){defer wg.Done();fn()}() → wg.Go(fn) |
| 1.26+ | new(expr), errors.AsType | v:=42; &v → new(42) |
omitzero is suggested only, not auto-applied (may change JSON serialization behavior)SplitSeq is applied only when the loop body doesn't need index or full slicestrings.Builder is applied only when concatenation happens inside a loopgoimports to clean up/modern-go pkg/ to only transform the pkg/ directory, or /modern-go main.go to only transform a single file.
/note-it generates a structured implementation note for the current Issue after code implementation and review, recording design decisions, deviations, tradeoffs, and open questions. Output is saved as HTML in the docs/ directory.
# Type directly in Claude Code
/note-it
# Or use trigger phrases
Record notes: Generate implementation notes for Issue #42
Implementation notes: Record decisions and deviations from this implementation
| Category | Focus | Example |
|---|---|---|
| Design Decisions | Choices made where spec was ambiguous and rationale | Why interface polymorphism instead of switch |
| Deviations | Intentional deviations from spec and reasons | Rationale for simplifying error handling strategy |
| Tradeoffs | Alternatives considered and tradeoff analysis | Inline vs. extract function choice |
| Open Questions | Items needing confirmation or modification | Whether performance assumptions need benchmark validation |
docs/issue#XXXX.html
/note-it sits between /review-it and /ship-it in the workflow, serving as the final checkpoint before submission — ensuring implementation intent is fully documented for future maintainers to understand the decision logic behind the code.
/code-to-spec analyzes an existing project's code, configuration, tests, and structure, then reverse-generates a complete SPEC document. The output can be used for project reconstruction, onboarding new team members, or comparing actual implementation against intended design.
# Type directly in Claude Code
/code-to-spec
# Or use trigger phrases
Generate design doc: Analyze current project and generate SPEC
Reverse spec: Reverse engineer this project's specification
Generate SPEC document: Generate technical SPEC for src/ directory
| Level | Content | Best For |
|---|---|---|
| Overview | Architecture + tech stack + core features | Quick project understanding, ~5 minutes |
| Standard (default) | + API contracts + data model + config + dependencies | Comprehensive project understanding |
| Deep | + Internal module interactions + error handling + test coverage | Preparing for refactoring or rewrite |
| # | Chapter | Content |
|---|---|---|
| 1 | Overview | Purpose, core features, architectural style |
| 2 | Tech Stack | Language, framework, database, build, test, deployment |
| 3 | Project Structure | Directory tree + responsibilities per directory |
| 4 | Data Model | Core entities, fields, relationships, state transitions |
| 5 | API Surface | Endpoint/command/function table + request/response schema |
| 6 | Configuration | Environment variables, config files, feature flags |
| 7 | External Dependencies | Third-party services, infrastructure, failure impact |
| 8 | Business Rules | Invariants, validation rules, business logic constraints |
| 9 | Non-Functional | Performance, security, error handling patterns |
| 10 | Testing Strategy | Test framework, coverage patterns |
| 11 | Known Gaps | Uncertainties, assumptions, untested areas |
| 12 | Appendix | Dependency graph, local environment setup steps |
docs/SPEC.md or user-specified location
/smell analyzes a codebase for architectural anti-patterns, code smells, and algorithmic complexity hotspots. It produces a detailed markdown report with severity levels, evidence, and a refactoring roadmap.
# Type directly in Claude Code
/smell
# Or use trigger phrases
Code smell analysis: find code smells in this project
Architecture audit: detect architecture anti-patterns
Complexity scan: analyze code complexity and find hotspots
| Category | Examples |
|---|---|
| Architecture | Big Ball of Mud, Distributed Monolith, Anemic Domain Model, CQRS Overuse, Violated Layer Boundaries |
| Coupling | Circular Dependencies, Content Coupling, Common Coupling (Global State), Stamp Coupling |
| Cohesion | God Object, Shotgun Surgery, Feature Envy, Data Clumps |
| Design | Leaky Abstractions, Static Cling, Service Locator Abuse, SOLID Violations |
| Code | Duplicated Code, Long Method, Primitive Obsession, Magic Numbers, Dead Code |
| Testing | Zero Test Coverage, Test-Implementation Coupling, Flaky Tests |
| Naming | Vague Names, Inconsistent Naming Conventions |
| Complexity | Nested Loops (O(n^2)), N+1 Queries, Repeated Linear Scan, Sort-in-Loop, Render Recompute |
Goal Workflow skills can be used across multiple AI Coding Agents:
| Agent | /prd | /prd-to-spec | /to-issues | /goal | /review-it | /note-it | /ship-it | /refactor | /modern-go | /code-to-spec | /smell | /humanize-it | /listenhub-tts | /insight-diagram |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Claude Code | ✓ | ✓ | ✓ | ✓ (Built-in) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Codex | ✓ | ✓ | ✓ | ✓ (--goal) | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenCode | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| DeepSeek TUI | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Platform | Tool | Description |
|---|---|---|
| GitHub | gh issue create | Requires gh CLI authentication |
| Local | Markdown files | Saved to local directory |
| Baidu iCafe | icafe-cli | Requires iCafe space parameters |
No. Each Skill is independent and can be used standalone. For example, if you already have Issues, you can start directly from /goal; if code is already written, you can use /review-it directly. But going through the full workflow yields the best results.
/goal is a built-in feature of Claude Code and doesn't require separate installation. The Issue format generated by this workflow's /prd perfectly matches what /goal expects as input.
Yes. /prd supports saving Issues as local Markdown files or creating them in Baidu iCafe. /review-it only needs a local git repository. /ship-it currently depends on GitHub (gh CLI).
/review-it is automated self-review, catching obvious issues before submission. It doesn't replace team code review, but rather improves code quality before PR creation, reducing the low-level issues reviewers need to point out.
Each Issue should represent work an agent can complete in a single session — typically 1-3 files of changes with clear acceptance criteria. /prd automatically breaks down at this granularity, but you can adjust before confirming.
When installing via npx skills add, choose -a codex. In Codex, use codex --goal "..." instead of /goal. /review-it works universally across agents.
Not required. /prd-to-spec is an optional step. PRD says "what to do"; SPEC says "how to do it". The distinction: an AI agent executing /goal inherently possesses the "how" capability — it automatically analyzes the codebase, understands existing architecture and conventions, and makes reasonable technical decisions during implementation. In other words, the AI agent is a living SPEC engine — it doesn't need it drawn on paper first.
Most small to medium features work perfectly fine with just PRD → /goal. The following scenarios justify the extra step of /prd-to-spec:
If your project is single-developer, feature boundaries are clear, and the agent already reliably understands the project structure, skipping /prd-to-spec is entirely reasonable — and often more efficient. Treat it as an optional tool in your toolkit — bring it out only when needed.
The number 42 isn't due to any special iteration requirement, but a geek culture tribute to the classic sci-fi novel The Hitchhiker's Guide to the Galaxy. In the book, a supercomputer computes for 7.5 million years and arrives at "the Answer to the Ultimate Question of Life, the Universe, and Everything" — which is 42. In programming circles, this number is popular for two reasons:
*. In computer science, * is commonly used as a wildcard meaning "anything" or "everything is possible." So "the ultimate answer is 42 (*)" perfectly aligns with the philosophical joke that it's "whatever answer you want."In practice, most documents reach quality standards within 3-5 iterations. The core of iteration is intelligent strategy switching — when one rewriting approach plateaus, it automatically switches to another. The three strategies complement each other to cover different types of AI traces.
Currently, the three sub-skills of /humanize-it are primarily optimized for Chinese text. humanizer-zh's pattern detection rules partially work for English as well, but rewriting effects are best for Chinese.
Go to listenhub.ai to register and get an API Key, then set it as an environment variable: export LISTENHUB_API_KEY=your_key.
ListenHub supports voices for multiple languages including Chinese (zh) and English (en). When calling the voice list API, you can filter with the ?language=zh parameter.
/insight-diagram supports 17 diagram types, including system architecture diagrams, 14 UML diagrams (class, object, component, deployment, package, composite structure, profile, use case, activity, state machine, sequence, communication, timing, interaction overview), flowcharts, and swimlane diagrams. Output is in HTML+SVG format, saved to the docs/ directory. Applicable to any software project.