ruvnet / ruvnet/ruflo

Discrepancy between naming of SPARC modes

Open
#405 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
72.7k
Forks
8.6k
Avg merge
2d 23h
Merged PRs (30d)
83

Description

When you run the `/sparc-modes` slash command in Claude, it describes one set of SPARC modes:

```
> /sparc-modes is running…

⏺ SPARC Modes Overview

Here are all 17 SPARC modes available in Claude-Flow:

🎭 Core Orchestration Modes

1. orchestrator - Multi-agent task orchestration with
TodoWrite/Task/Memory
2. swarm-coordinator - Specialized swarm management for
complex workflows
3. workflow-manager - Process automation and pipeline creation
4. batch-executor - Parallel task execution for bulk
operations

💻 Development Modes

5. coder - Autonomous code generation with best practices
6. architect - System design and architecture planning
7. reviewer - Code review and quality assessment
8. tdd - Test-driven development with red-green-refactor

🔍 Analysis & Research Modes

9. researcher - Deep research with multi-source analysis
10. analyzer - Code and data analysis with insights
11. optimizer - Performance optimization and refactoring

🎨 Creative & Support Modes

12. designer - UI/UX design and frontend development
13. innovator - Creative problem solving and ideation
14. documenter - Comprehensive documentation generation
15. debugger - Systematic debugging and troubleshooting
16. tester - Test creation and quality assurance
17. memory-manager - Knowledge persistence and retrieval

📝 Quick Examples

# Orchestrate complex feature development
./claude-flow sparc run orchestrator "implement user
authentication system"

# Design system architecture
./claude-flow sparc run architect "design microservices for
payment processing"

# Generate comprehensive tests
./claude-flow sparc run tdd "create tests for user
registration flow"

# Debug production issue
./claude-flow sparc run debugger "fix memory leak in dashboard
component"

# Research best practices
./claude-flow sparc run researcher "compare state management
solutions for React"

🚀 Mode Selection Guide

- Building features? → orchestrator or coder
- Planning system? → architect
- Writing tests? → tdd or tester
- Fixing bugs? → debugger
- Need research? → researcher
- Performance issues? → optimizer
- Documentation? → documenter

Each mode has specialized tools and workflows optimized for
its purpose!
```

But then when you try to invoke one of these modes, such as the `innovator` mode, it says that mode is not available, and lists a whole different set of modes.

```
% ./claude-flow sparc info innovator
❌ Mode not found: innovator
Available modes:
architect - 🏗️ Architect
code - 🧠 Auto-Coder
tdd - 🧪 Tester (TDD)
debug - 🪲 Debugger
security-review - 🛡️ Security Reviewer
docs-writer - 📚 Documentation Writer
integration - 🔗 System Integrator
post-deployment-monitoring-mode - 📈 Deployment Monitor
refinement-optimization-mode - 🧹 Optimizer
ask - ❓Ask
devops - 🚀 DevOps
tutorial - 📘 SPARC Tutorial
supabase-admin - 🔐 Supabase Admin
spec-pseudocode - 📋 Specification Writer
mcp - ♾️ MCP Integration
sparc - ⚡️ SPARC Orchestrator
```

These modes seems to be more aligned with what's also described in the `CLAUDE.md` file:

```
### SPARC Mode Reference

**Development Modes**

- architect: System design and architecture planning
- code: Clean, modular code implementation
- tdd: Test-driven development and testing
- spec-pseudocode: Requirements and algorithmic planning
- integration: System integration and coordination

**Quality Assurance Modes**

- debug: Troubleshooting and bug resolution
- security-review: Security analysis and vulnerability assessment
- refinement-optimization-mode: Performance optimization and refactoring

**Support Modes**

- docs-writer: Documentation creation and maintenance
- devops: Deployment and infrastructure management
- mcp: External service integration
- swarm: Multi-agent coordination for complex tasks
```

But even this list is incomplete as it only lists 12 modes, whereas the `./claude-flow sparc modes` command lists 16 modes.

```
% ./claude-flow sparc modes
✅ Available SPARC Modes:

• 🏗️ Architect (architect)
• 🧠 Auto-Coder (code)
• 🧪 Tester (TDD) (tdd)
• 🪲 Debugger (debug)
• 🛡️ Security Reviewer (security-review)
• 📚 Documentation Writer (docs-writer)
• 🔗 System Integrator (integration)
• 📈 Deployment Monitor (post-deployment-monitoring-mode)
• 🧹 Optimizer (refinement-optimization-mode)
• ❓Ask (ask)
• 🚀 DevOps (devops)
• 📘 SPARC Tutorial (tutorial)
• 🔐 Supabase Admin (supabase-admin)
• 📋 Specification Writer (spec-pseudocode)
• ♾️ MCP Integration (mcp)
• ⚡️ SPARC Orchestrator (sparc)

Use --verbose for detailed descriptions
```

The `CLAUDE.md` file also mentions that the SPARC configuration is stored in the `.roomodes` and `.roo/` directory. But I believe this is incorrect as these are only if you're using Roo Code, and the actual SPARC configuration for Claude Code is in the `.claude/commands/sparc` directory.

Image

These match the commands as defined in the `.claude/config.json` file:

```
{
"version": "1.0",
"sparc": {
"enabled": true,
"modes": [
"orchestrator",
"coder",
"researcher",
"tdd",
"architect",
"reviewer",
"debugger",
"tester",
"analyzer",
"optimizer",
"documenter",
"designer",
"innovator",
"swarm-coordinator",
"memory-manager",
"batch-executor",
"workflow-manager"
]
},
```

But interestingly, the command `sparc-modes` is not in this list, even though there's a corresponding markdown file: `.claude/commands/sparc/sparc-modes.md`.

I can see from the `./claude-flow` shell script that it first looks for the claude-flow binary in the currect project directory, and then it looks for it in the parent directory, and if it can't find it there, it looks like the globally installed binary. Lastly, it runs it using `npx`.

I don't see if as having been installed in my local project directory even though I ran `npx claude-flow@alpha init --sparc` inside my project directory.

Image

So does that mean it's using the globally installed claude-flow?

When I run `which claude-flow` it shows it using this one:

```
% which claude-flow
/Users/nateaune/.nvm/versions/node/v20.18.2/bin/claude-flow
```

When I run `claude-flow --version` I get this following:

```
% claude-flow --version
v2.0.0-alpha.62
```

And the same output when I run `./claude-flow --version`

```
% ./claude-flow --version
v2.0.0-alpha.62
```

Before I re-ran `npm install -g claude-flow@alpha`, I was getting the output as `v2.0.0-alpha.53`.

Contributor guide

Open the contributing guide

Research direction

Compare the mode lists in .claude/commands/sparc, .claude/config.json, CLAUDE.md, and the ./claude-flow sparc modes/info entry points. Trace which installed claude-flow version the wrapper invokes, then align the documented and reported SPARC modes or clearly explain their separate sources. Done when the commands and documentation consistently describe the available modes and configuration location.

Written by the indexing model from the issue text.

Assessment

Tech stack
nodejs, shell, typescript
Domain
cli, documentation, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.