# Sparc Implement > Ejecuta las fases 2 y 3 de SPARC (Pseudocódigo y Arquitectura): diseña algoritmos y contratos de API, y luego implementa. Fuente: https://skillsagentes.com/skills/ruvnet/ruflo/sparc-implement Markdown: https://skillsagentes.com/skills/ruvnet/ruflo/sparc-implement.md Repositorio: https://github.com/ruvnet/ruflo Autor: ruvnet Licencia: MIT Actualizado: el mes pasado Coste de contexto: 37 tok instalada, 1.3k tok al activarse, 1.3k tok con todos los archivos del bundle Bundle: 1 archivo, 5 KB Permisos que pide: 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 ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add ruvnet/ruflo --skill sparc-implement --agent claude-code # Cursor npx -y skills add ruvnet/ruflo --skill sparc-implement --agent cursor # Codex npx -y skills add ruvnet/ruflo --skill sparc-implement --agent codex # Gemini CLI npx -y skills add ruvnet/ruflo --skill sparc-implement --agent gemini # Windsurf npx -y skills add ruvnet/ruflo --skill sparc-implement --agent windsurf # Cline npx -y skills add ruvnet/ruflo --skill sparc-implement --agent cline ``` ## Qué hace - Recupera la especificación y el estado de fase de la funcionalidad desde memoria - Escribe pseudocódigo con estructuras de datos, flujo de control y complejidad algorítmica - Diseña arquitectura: contextos delimitados, contratos de API, límites de módulos e infraestructura - Si el usuario confirma, implementa el código siguiendo el pseudocódigo, con tests unitarios (TDD) ## Cuándo usarla - La fase de Especificación de SPARC ya está completa y su gate fue aprobado ## Qué la activa - "Diseña el pseudocódigo y la arquitectura de esta funcionalidad con SPARC" - "Pasa a la fase de arquitectura de SPARC para este feature" ## Antes de instalar - Requiere que la fase de Especificación de SPARC se haya completado antes. ## Archivos - SKILL.md — 5 KB ## SKILL.md Reproducido tal cual desde ruvnet/ruflo bajo MIT. Esta sección es el documento original y está en inglés. # 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_search` with namespace `sparc-state` and query for the feature 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`, updating current phase to 3 (Architecture) with both artifacts recorded 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 `/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 `/sparc advance` to pass the gate check. ``` ## Dónde encaja - Categoría: [Herramientas para desarrolladores](https://skillsagentes.com/categorias/herramientas-desarrollo.md) — Skills que cambian cómo tu agente escribe, revisa y despliega código. - Creador: [ruvnet](https://skillsagentes.com/creators/ruvnet.md) — 275 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Harness Gepa](https://skillsagentes.com/skills/ruvnet/ruflo/harness-gepa.md): Inspecciona y audita genomas GEPA: carga y valida un genoma, renderiza el system prompt que compila, o clasifica los modos de fallo de una transcripción de ejecución. - [Deepseek Reason](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-reason.md): Completion en modo razonamiento contra deepseek-reasoner (R1) de DeepSeek. Devuelve el chain-of-thought por separado de la respuesta final. Lee DEEPSEEK_API_KEY y degrada si falta o la API no responde. - [Deepseek Chat](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-chat.md): Completion de un solo turno contra el modelo deepseek-chat de DeepSeek vía /v1/chat/completions. Lee DEEPSEEK_API_KEY y degrada con status:degraded si falta o la API no responde. Para tareas sin razonamiento. - [Adr Index](https://skillsagentes.com/skills/ruvnet/ruflo/adr-index.md): Construye o reconstruye el índice de ADRs y su grafo de dependencias ejecutando scripts/import.mjs, en vez de cientos de llamadas MCP. - [Agntcy Status](https://skillsagentes.com/skills/ruvnet/ruflo/agntcy-status.md): Muestra el estado de la integración AGNTCY/SLIM/CASA: si los paquetes están instalados, qué transporte está activo y si el enforcement de CASA está habilitado. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)