sparc-implement — Claude Code skill: design and implementation
A skill that runs SPARC design phases: writes algorithm pseudocode, defines module boundaries and API contracts, then generates working code. Use it if you're developing with SPARC methodology and want to automate the architecture stage.
npx skills add ruvnet/ruflo --skill sparc-implement -a claude-codeWhat sparc-implement does
sparc-implement covers phases 2 and 3 of the SPARC methodology. In phase 2, the agent writes language-agnostic pseudocode for each acceptance criterion, defines data structures with type annotations, and maps control flow — happy path, error handling, concurrent access. It calculates time and space complexity for critical paths.
Phase 3 designs the architecture: establishes bounded contexts and aggregate roots using DDD, writes TypeScript interfaces for requests and responses, specifies error codes, defines directory structure and dependency rules. It outlines persistence, caching, and messaging strategies.
The skill stores artifacts in ruflo memory, updates phase state, records trajectory steps, and can start implementation immediately — creates files along module boundaries, writes tests, and verifies acceptance criteria. Runs after the specification phase is complete.
What it helps with
- write pseudocode with control flow and error handling
- design architecture with module boundaries and API contracts
- define data structures and calculate algorithm complexity
- generate code from specification and architecture
- track design phase status in ruflo memory
Example prompts for the agent
- Design phases 2 and 3 for authentication: get pseudocode and architecture
- Write pseudocode with edge cases and time/space complexity for a search algorithm
- Define bounded contexts and API contracts for a payment module
How to install sparc-implement
1Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill sparc-implement -a claude-code2Manually: put the files in place
~/.claude/skills/sparc-implement/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/sparc-implement/
1Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill sparc-implement -a codex2Manually: put the files in place
.agents/skills/sparc-implement/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill sparc-implement -a cursor2Manually: put the files in place
.cursor/skills/sparc-implement/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install ruvnet/ruflo sparc-implement2Manually: put the files in place
.github/skills/sparc-implement/SKILL.md1Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill sparc-implement -a gemini-cli2Platform CLI
gemini skills install https://github.com/ruvnet/ruflo --path plugins/ruflo-sparc/skills/sparc-implementManually: put the files in place
.devin/skills/sparc-implement/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill sparc-implement -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set104
The whole set →Similar
Questions about sparc-implement
How do I install sparc-implement in Claude Code?
Run npx skills add ruvnet/ruflo --skill sparc-implement -a claude-code, then open ~/.claude/skills/sparc-implement/SKILL.md.
What does sparc-implement do?
It runs SPARC phases 2 and 3: the agent writes algorithm pseudocode, designs architecture with module boundaries and API contracts, then generates working code and tests.
When should I use sparc-implement?
After the specification phase is complete and its gate has been passed. The skill requires ruflo with memory and task support.
Source text
SKILL.md · MIT
---
name: sparc-implement
description: Run the SPARC Pseudocode and Architecture phases (2 and 3) — write algorithm pseudocode, design module boundaries and API contracts, then implement
argument-hint: ""
allowed-tools: mcp__plugin_ruflo-core_ruflo__memory_store mcp__plugin_ruflo-core_ruflo__memory_search mcp__plugin_ruflo-core_ruflo__memory_retrieve mcp__plugin_ruflo-core_ruflo__task_create mcp__plugin_ruflo-core_ruflo__task_update mcp__plugin_ruflo-core_ruflo__task_complete mcp__plugin_ruflo-core_ruflo__hooks_intelligence_trajectory-step mcp__plugin_ruflo-core_ruflo__neural_predict mcp__plugin_ruflo-core_ruflo__workflow_create Bash Read Write Edit
---
# SPARC Architecture + Implementation
Run Phases 2 and 3 of the SPARC methodology: design algorithms with pseudocode, then establish architecture with module boundaries and API contracts.
## When to use
After the Specification phase is complete and its gate has been passed. This skill covers both the Pseudocode and Architecture phases as they are tightly coupled — algorithm design informs module boundaries and vice versa.
## Steps
1. **Retrieve specification** — call `mcp__plugin_ruflo-core_ruflo__memory_search` with namespace `sparc-phases` and query for the feature's spec. Extract requirements, acceptance criteria, constraints, and edge cases.
2. **Retrieve phase state** — call `mcp__plugin_ruflo-core_ruflo__memory_retrieve` with namespace `sparc-state` and exact key `current-phase-{feature-slug}` to confirm we are in Phase 2 or 3.
3. **Search for architectural patterns** — call `mcp__plugin_ruflo-core_ruflo__neural_predict` with the feature description to find relevant architectural decisions from past projects
4. **Phase 2 — Pseudocode Design**:
a. For each acceptance criterion, write language-agnostic pseudocode that satisfies it
b. Define core data structures with type annotations
c. Map control flow including:
- Happy path
- Error/exception paths for each edge case
- Concurrent access handling if applicable
d. Annotate algorithmic complexity (time and space) for critical paths
e. Store pseudocode artifact:
- Call `mcp__plugin_ruflo-core_ruflo__memory_store` with namespace `sparc-phases`, key `pseudo-{feature-slug}`
- Value: `{ status: "complete", algorithms: [...], dataStructures: [...], controlFlow: [...], complexity: {...} }`
5. **Phase 3 — Architecture Design**:
a. Define bounded contexts and aggregate roots following DDD patterns:
- Identify entity boundaries and value objects
- Define aggregate invariants
- Map domain events
b. Design API contracts:
- Request/response schemas with TypeScript interfaces
- Error response codes and formats
- Versioning strategy if applicable
c. Plan module boundaries:
- Directory structure
- Dependency direction rules (no circular dependencies)
- Public vs internal interfaces
d. Specify infrastructure concerns:
- Persistence strategy (database, cache, file)
- Messaging patterns (sync, async, event-driven)
- Configuration and environment requirements
e. Store architecture artifact:
- Call `mcp__plugin_ruflo-core_ruflo__memory_store` with namespace `sparc-phases`, key `arch-{feature-slug}`
- Value: `{ status: "complete", boundedContexts: [...], apiContracts: [...], moduleBoundaries: {...}, infrastructure: {...} }`
6. **Update phase state** — call `mcp__plugin_ruflo-core_ruflo__memory_store` with namespace `sparc-state`, exact key `current-phase-{feature-slug}`; preserve existing state fields, update current phase to 3 (Architecture) with both artifacts recorded, and set `updatedAt` to the current ISO timestamp
7. **Record trajectory step** — call `mcp__plugin_ruflo-core_ruflo__hooks_intelligence_trajectory-step` with architecture summary
8. **Begin implementation** — if the user confirms, proceed to write production code:
a. Create files following the defined module boundaries
b. Implement interfaces and types first
c. Implement core logic following the pseudocode
d. Write unit tests alongside implementation (TDD when possible)
e. Run tests to verify acceptance criteria
9. **Present architecture** — display the architecture decision record and suggest running `/ruflo-sparc:ruflo-sparc advance` to pass the Phase 3 gate
## Output format
```
# Pseudocode: {Feature Name}
## Core Algorithms
### Algorithm 1: {name}
```pseudocode
FUNCTION processRequest(input):
VALIDATE input against schema
IF invalid THEN THROW ValidationError
result <- TRANSFORM input
STORE result
RETURN result
```
Complexity: O(n) time, O(1) space
## Data Structures
- {StructName}: { field1: type, field2: type }
---
# Architecture: {Feature Name}
## Bounded Contexts
- {ContextName}: {description}
- Aggregates: {list}
- Events: {list}
## API Contracts
### POST /api/{resource}
- Request: { field1: string, field2: number }
- Response: { id: string, ...fields }
- Errors: 400 (validation), 409 (conflict), 500 (internal)
## Module Structure
```
src/{feature}/
{feature}.types.ts # Interfaces and types
{feature}.service.ts # Business logic
{feature}.controller.ts # HTTP handling
{feature}.repository.ts # Data access
{feature}.test.ts # Tests
```
## Infrastructure
- Persistence: {strategy}
- Caching: {strategy}
- Events: {strategy}
---
Phases 2-3 complete. Run `/ruflo-sparc:ruflo-sparc advance` to pass the gate check.
```
© ruvnet · MIT · ruvnet/ruflo