SPTFlo v3: Complete Reimagining with agentic-flow@alpha Foundation
Executive Summary
SPTFlo v3 represents a complete architectural overhaul that builds on agentic-flow@alpha as its core foundation while maintaining full backward compatibility with v2.x. This plan consolidates findings from concurrent swarm analysis covering architecture, security, dead code, Windows compatibility, repository cleanup, and .claude/ optimization.
Key Objectives
| Objective | Target | Impact |
|---|---|---|
| Performance | 2.49x-7.47x speedup | Flash Attention integration |
| Quality | +55% improvement | SONA adaptive learning |
| Cost | 60-70% savings | Intelligent LLM routing |
| Codebase | 40% smaller | 130k → 78k lines |
| Storage | 75% reduction | 14.2MB → 3.5MB config |
| Security | 90/100 score | Fix critical vulnerabilities |
Timeline Overview
- Phase 1 (Weeks 1-4): Foundation & Security
- Phase 2 (Weeks 5-12): Core Domains
- Phase 3 (Weeks 13-16): Plugin Migration
- Phase 4 (Weeks 17-20): Testing & Release
Target Release: v3.0.0 on 2026-06-01
Table of Contents
- Current State Analysis
- Security Remediation (CRITICAL)
- agentic-flow@alpha Integration
- Windows Support via sql.js
- Repository Cleanup
- .Claude/ Optimization
- Agent, Skills, Commands & Hooks
- Backward Compatibility
- Implementation Roadmap
- Success Metrics
1. Current State Analysis
1.1 Codebase Overview
SPTFlo v2.7.47
├── Source Files: 376 TypeScript files (~130,000 lines)
├── Dependencies: agentic-flow (^1.9.4), spt-swarm, flow-nexus
├── Architecture: Multi-layered (CLI, Core, MCP, Swarm, Hive-Mind)
└── Configuration: 14.2 MB across 7 directories1.2 Architectural Strengths (Preserve)
- ✅ Event-driven architecture with centralized EventBus
- ✅ Interface-based design with dependency injection
- ✅ Clean backend abstraction (Memory, Transport)
- ✅ Circuit breaker patterns for reliability
- ✅ MCP protocol compliance (2024.11.5)
- ✅ Comprehensive agent template system (10+ templates)
1.3 Critical Weaknesses (Redesign)
| Issue | Current | Impact | v3 Solution |
|---|---|---|---|
| 4 coordination systems | SwarmCoordinator, Hive Mind, Maestro, AgentManager | Confusion, duplication | Single unified coordinator |
| God objects | Orchestrator (1,440 lines), AgentManager (1,736 lines) | Maintenance nightmare | Domain-driven decomposition |
| Monolithic files | index.ts (108KB), enterprise.ts (68KB) | Poor modularity | Microkernel architecture |
| 6 memory implementations | No clear differentiation | Redundancy | SptDB unified backend |
| agentic-flow as add-on | Not leveraged properly | Missing performance | Native foundation |
1.4 Dead Code Analysis
Total Removable: 15-20% of codebase (~8,000-12,000 lines)
| Category | Lines | Files | Priority |
|---|---|---|---|
| Deprecated API files | 524 | 3 | HIGH |
| Duplicate variants | 3,500 | 13 | HIGH |
| Backup/disabled files | ~500 | 8 | MEDIUM |
| Dual hive-mind implementation | 150-200KB | Multiple | MEDIUM |
| Incomplete TODO/FIXME | 50+ items | Various | LOW |
Key Files to Remove:
src/api/claude-client-v2.5.ts(deprecated)bin/pair-old.js,bin/pair-enhanced.backup.jsbin/stream-chain.js.backup,bin/training-pipeline-old.js.bak- 8 pair programming variants (keep only
pair.js) - 5 stream-chain variants (keep only
stream-chain.js)
2. Security Remediation (CRITICAL)
2.1 Critical Vulnerabilities (Fix Immediately)
CVE-1: Vulnerable Dependencies
# Immediate fix required
npm update @anthropic-ai/claude-code@^2.0.31
npm update @modelcontextprotocol/sdk@^1.24.0
npm audit fix --forceImpact: 13 vulnerabilities (7 high, 3 moderate, 3 low)
CVE-2: Weak Password Hashing
Location: src/api/auth-service.ts:580-588
// CURRENT (INSECURE)
const hash = crypto.createHash('sha256')
.update('salt' + password) // Hardcoded salt!
.digest('hex');
// v3 FIX (SECURE)
import * as bcrypt from 'bcrypt';
const SALT_ROUNDS = 12;
const hash = await bcrypt.hash(password, SALT_ROUNDS);CVE-3: Hardcoded Default Credentials
Location: src/api/auth-service.ts:602-643
// REMOVE these hardcoded credentials
email: 'admin@sptflo.local'
password: 'admin123' // CRITICAL RISK
// v3: Generate random on installation
const adminPassword = crypto.randomBytes(32).toString('hex');2.2 High-Priority Issues
| Issue | Location | Fix |
|---|---|---|
| Command injection | Multiple spawn() with shell: true | Use execFile() without shell |
| Path traversal | User-provided file paths | Validate with path.resolve() |
| Weak token generation | Math.random() | Use crypto.randomBytes() |
| Input validation gaps | Config commands | Add Joi/Zod schema validation |
2.3 Security Score Targets
| Stage | Score | Status |
|---|---|---|
| Current (v2.7.47) | 45/100 | ❌ Not production ready |
| After critical fixes | 70/100 | ⚠️ Acceptable |
| v3.0.0 target | 90/100 | ✅ Production ready |
3. agentic-flow@alpha Integration
3.1 Package Capabilities
Version: agentic-flow@2.0.1-alpha.0
| Feature | Capability | Improvement |
|---|---|---|
| SONA Learning | Sub-millisecond adaptive | +55% quality |
| Flash Attention | 8 attention mechanisms | 2.49x-7.47x speedup |
| SptDB | 150x-12,500x search | HNSW indexing |
| 66 Agents | Pre-built specialists | Full coverage |
| 213 MCP Tools | Complete toolset | Enterprise ready |
| 9 RL Algorithms | PPO, MCTS, Q-Learning | Continuous learning |
3.2 Integration Architecture
┌─────────────────────────────────────────────────────────────┐
│ SPTFlo v3 │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Compatibility Layer (v2 API) │ │
│ │ - SwarmCoordinator wrapper │ │
│ │ - AgentManager adapter │ │
│ │ - Memory system bridge │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ agentic-flow@alpha Core Engine │ │
│ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │
│ │ │ SONA │ │ Flash │ │ SptDB │ │ MCP │ │ │
│ │ │Learning │ │Attention│ │ Vector │ │ Tools │ │ │
│ │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Plugin Architecture │ │
│ │ - HiveMind (optional) │ │
│ │ - Maestro (optional) │ │
│ │ - Neural training (optional) │ │
│ │ - GitHub integration (optional) │ │
│ └─────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘3.3 Core Adapter Implementation
// src/v3/integrations/agentic-flow-adapter.ts
import { EnhancedSptDBWrapper, AttentionCoordinator } from 'agentic-flow/core';
export class AgenticFlowAdapter {
private wrapper: EnhancedSptDBWrapper;
private coordinator: AttentionCoordinator;
constructor(config: AgenticFlowConfig) {
this.wrapper = new EnhancedSptDBWrapper({
enableAttention: config.enableAttention ?? true,
enableGNN: config.enableGNN ?? true,
attentionConfig: { type: config.attentionType ?? 'flash' },
runtimePreference: config.runtime ?? 'napi'
});
}
async initialize(): Promise<void> {
await this.wrapper.initialize();
this.coordinator = new AttentionCoordinator(
this.wrapper.getAttentionService()
);
}
// Backward compatible agent creation
async createAgent(template: string, options?: AgentOptions): Promise<string> {
return await this.wrapper.spawnAgent(template, {
sonaProfile: options?.learning ?? 'balanced',
reflexionEnabled: options?.reflexion ?? true
});
}
// Enhanced search with GNN
async searchPatterns(query: string, k = 5): Promise<Pattern[]> {
return await this.wrapper.gnnEnhancedSearch(query, { k });
}
// Consensus-based coordination
async coordinateAgents(outputs: AgentOutput[]): Promise<Consensus> {
return await this.coordinator.coordinateAgents(outputs, 'flash');
}
}3.4 Migration Strategy
Phase 1: Non-Breaking (v3.0.0)
- Add agentic-flow as optional enhancement
- Feature flag:
config.agenticFlow.enabled - All existing APIs continue to work
Phase 2: Gradual Enhancement (v3.1.0-v3.4.0)
- v3.1.0: Memory → SptDB vector search
- v3.2.0: Coordination → Flash Attention
- v3.3.0: Agent selection → GNN-enhanced
- v3.4.0: Full SONA learning profiles
Phase 3: Unified (v4.0.0)
- agentic-flow as default engine
- Deprecate legacy implementations
- Full performance benefits
4. Windows Support via sql.js
4.1 Current Problem
Windows Installation Failure:
- better-sqlite3 requires native compilation
- node-gyp build fails on many Windows systems
- 17 files directly use better-sqlite34.2 Solution: Dual-Mode Provider
// src/v3/memory/backends/database-provider.ts
export type DatabaseProvider = 'better-sqlite3' | 'sql.js' | 'json' | 'auto';
export async function createDatabase(
path: string,
options: { provider?: DatabaseProvider } = {}
): Promise<Database> {
const provider = options.provider ?? 'auto';
if (provider === 'auto') {
// Platform-aware selection
if (process.platform === 'win32') {
try {
// Try native first (if build tools available)
return await createBetterSqlite(path);
} catch {
// Fall back to sql.js (always works)
return await createSqlJs(path);
}
} else {
// Linux/macOS: native is reliable
return await createBetterSqlite(path);
}
}
// Explicit provider selection
switch (provider) {
case 'better-sqlite3': return await createBetterSqlite(path);
case 'sql.js': return await createSqlJs(path);
case 'json': return await createJsonFallback(path);
}
}4.3 sql.js Implementation
// src/v3/memory/backends/sqljs-backend.ts
import initSqlJs, { Database as SqlJsDatabase } from 'sql.js';
export class SqlJsBackend implements DatabaseBackend {
private db: SqlJsDatabase;
private wasmUrl: string;
async initialize(path: string): Promise<void> {
const SQL = await initSqlJs({
locateFile: file => `${this.wasmUrl}/${file}`
});
// Load existing data or create new
if (await fileExists(path)) {
const buffer = await fs.readFile(path);
this.db = new SQL.Database(buffer);
} else {
this.db = new SQL.Database();
}
}
// Same interface as better-sqlite3
prepare(sql: string): Statement {
return new SqlJsStatement(this.db.prepare(sql));
}
exec(sql: string): void {
this.db.exec(sql);
}
// Persist changes
async persist(): Promise<void> {
const data = this.db.export();
await fs.writeFile(this.path, Buffer.from(data));
}
}4.4 Performance Comparison
| Operation | better-sqlite3 | sql.js | Verdict |
|---|---|---|---|
| Create swarm | 0.5ms | 1.5ms | ✅ Acceptable |
| Store memory | 1ms | 3ms | ✅ Acceptable |
| Query agents | 2ms | 6ms | ✅ Acceptable |
| Bulk insert (1000) | 10ms | 30ms | ⚠️ Noticeable |
Optimization strategies:
- Batch transactions (80% overhead reduction)
- Lazy persistence (30s intervals)
- Prepared statement caching
4.5 Package Changes
// package.json
{
"dependencies": {
"sql.js": "^1.10.0" // +1.2MB (WASM)
},
"optionalDependencies": {
"better-sqlite3": "^12.2.0" // Native, optional
}
}4.6 Feature Matrix
| Provider | Core Features | ReasoningBank | Vector Search | Platform |
|---|---|---|---|---|
| better-sqlite3 | ✅ | ✅ | ✅ | Linux/macOS |
| sql.js | ✅ | ❌ | ❌ | All (Windows) |
| JSON | ✅ | ❌ | ❌ | All (fallback) |
5. Repository Cleanup
5.1 Files to Remove (49MB+ savings)
High Priority (22.6MB)
| Item | Size | Action |
|---|---|---|
dist-cjs/ | 22MB | Remove from git, add to .gitignore |
| Duplicate lock file | 0.6MB | Keep one (npm or pnpm) |
sptflo-wiki/ | 0 | Remove empty directory |
Medium Priority (26.6MB)
| Item | Size | Action |
|---|---|---|
docs/reasoningbank/models/*.backup | 25.3MB | Delete backup databases |
bin/*.backup, bin/*-old.js | 0.19MB | Remove old variants |
| Training data duplicates | ~2.1MB | Deduplicate |
5.2 Cleanup Commands
#!/bin/bash
# cleanup-v3.sh
# 1. Remove build artifacts from git
git rm -r --cached dist-cjs/
echo "dist-cjs/" >> .gitignore
# 2. Remove backup files
rm -f bin/pair-old.js
rm -f bin/pair-enhanced.backup.js
rm -f bin/stream-chain.js.backup
rm -f bin/training-pipeline-old.js.bak
rm -f docs/reasoningbank/models/*/memory.db.backup
# 3. Remove duplicate lock file (choose one)
rm -f package-lock.json # If using pnpm
# OR
rm -f pnpm-lock.yaml # If using npm
# 4. Remove empty directory
rmdir sptflo-wiki/
# 5. Clean up .gitignore duplicates
# (manual edit to remove 8 duplicate "hive-mind-prompt-*.txt" entries)
# 6. Commit
git add .
git commit -m "chore: v3 repository cleanup - remove 49MB of artifacts"5.3 .gitignore Updates
# Add to .gitignore
dist-cjs/
*.backup
*-old.js
*.bak
# Runtime databases (shouldn't be tracked)
.swarm/memory.db
.hive-mind/memory.db
.sptflo/**/*.db6. .Claude/ Optimization
6.1 Current State (14.2MB)
| Directory | Size | Issues |
|---|---|---|
.claude/ | 11MB | 9 settings variants, 3,720 checkpoints |
.sptflo/ | 2.5MB | Stale training data |
.claude-plugin/ | 81KB | Hook duplication |
.hive-mind/ | 20KB | Separate database |
.swarm/ | 272KB | Separate database |
.spt-swarm/ | 9.5KB | Old benchmark |
.research/ | 399KB | Stale docs |
6.2 v3 Optimized Structure (3.5MB target)
.claude/
├── config.json # Single source of truth
├── settings.prod.json # Production (from settings-enhanced)
├── settings.dev.json # Development with debug
├── settings.github.json # GitHub automation
├── smart-modes.json # Unchanged
│
├── agents/ # Reorganized (76 files)
│ ├── core/ # coder, tester, reviewer, researcher, planner
│ ├── orchestration/ # swarm, hive-mind, coordinators
│ ├── platform/ # github, flow-nexus, devops
│ ├── specialized/ # ml, mobile, backend
│ ├── methodology/ # smart agents
│ ├── consensus/ # byzantine, raft, gossip
│ └── testing/ # validation, tdd
│
├── commands/ # Reorganized (93 files → 5 categories)
│ ├── core/ # agents, swarm, smart
│ ├── platform/ # github, hive-mind, flow-nexus
│ ├── operations/ # memory, training, monitoring
│ ├── automation/ # hooks, workflows, coordination
│ └── utilities/ # analysis, optimization
│
├── skills/ # Reorganized (28 skills → 5 domains)
│ ├── ai-coordination/ # swarm, hive-mind, orchestration
│ ├── data-processing/ # sptdb, stream-chain, reasoningbank
│ ├── development/ # pair-programming, smart-methodology
│ ├── platform/ # flow-nexus, github
│ └── optimization/ # performance, verification
│
├── checkpoints/
│ ├── active/ # Last 20 only
│ └── archive/ # Compressed older files
│
└── .meta/ # NEW: Configuration reference
├── CONFIGURATION.md
├── MIGRATION_LOG.md
└── OPTIMIZATION_STATUS.md
.sptflo/
├── swarm-config.json # Includes agent profiles
├── coordination/ # NEW: Unified runtime
│ ├── memory.db # Merged swarm + hive-mind
│ ├── metrics/
│ └── sessions/
├── training/
│ ├── models/ # Latest only
│ ├── latest-results.json # Single rotated file
│ └── archive/ # Compressed old data
└── validation/
└── latest-validation.json # Single file
# REMOVE these directories
.swarm/ # → .sptflo/coordination/
.hive-mind/ # → .sptflo/coordination/
.spt-swarm/ # Archive or remove6.3 Settings Consolidation
Current: 9 settings files with overlapping content
v3: 4 purpose-specific files
// settings.prod.json - Production configuration
{
"hooks": {
"PreToolUse": [...], // Full hook suite
"PostToolUse": [...],
"PreCompact": [...],
"Stop": [...]
},
"neural": { "enabled": true },
"agenticFlow": { "enabled": true, "sona": "balanced" }
}
// settings.dev.json - Development configuration
{
"hooks": {
"PreToolUse": [...], // Debug hooks
},
"debug": { "verbose": true, "tracing": true }
}
// settings.github.json - GitHub automation
{
"hooks": {
"PreToolUse": [...], // GitHub-specific
},
"github": { "autoReview": true, "swarmReview": true }
}6.4 Checkpoint Cleanup
# Archive old checkpoints (keep last 20)
cd .claude/checkpoints
# Count current
ls -1 | wc -l # 3,720 files!
# Archive old ones
mkdir -p archive
find . -maxdepth 1 -name "*.json" -mtime +7 -exec mv {} archive/ \;
# Compress archive
tar -czf archive.tar.gz archive/
rm -rf archive/
# Result: 8.4MB → ~500KB7. Agent, Skills, Commands & Hooks
7.1 Agent Optimization
Current: 76 agents across 22 scattered categories
v3: 76 agents in 7 logical categories
agents/
├── core/ (5) # Essential: coder, tester, reviewer, researcher, planner
├── orchestration/ (8) # Coordinators: hierarchical, mesh, adaptive, queen, etc.
├── platform/ (15) # External: github-*, flow-nexus-*, devops
├── specialized/ (12) # Domain: backend-dev, mobile-dev, ml-developer
├── methodology/ (10) # Process: smart-*, tdd-london, production-validator
├── consensus/ (14) # Distributed: byzantine, raft, gossip, crdt
└── testing/ (12) # Quality: perf-analyzer, code-analyzer, benchmarkAgent Template Enhancement
// .claude/agents/core/coder.md (v3 enhanced)
---
name: coder
version: 3.0.0
category: core
agentic-flow:
sona-profile: research # +55% quality
attention: flash # 2.49x-7.47x speedup
learning: enabled
reflexion: enabled
capabilities:
- code-generation
- refactoring
- debugging
- testing
---
# Coder Agent
Implementation specialist leveraging agentic-flow@alpha for enhanced code generation.
## Enhanced Capabilities (v3)
- **SONA Learning**: Learns from past implementations
- **Flash Attention**: Faster context processing
- **Reflexion**: Self-improvement through feedback7.2 Skills Optimization
Current: 28 skills flat in skills/
v3: 28 skills in 5 domain groups
# .claude/skills/ai-coordination/swarm-orchestration/SKILL.md
---
name: swarm-orchestration
domain: ai-coordination
version: 3.0.0
triggers:
- "orchestrate swarm"
- "multi-agent"
- "parallel agents"
agentic-flow:
required: true
features:
- flash-attention
- consensus-coordination
---7.3 Commands Optimization
Current: 93 commands across 16 categories
v3: 93 commands in 5 logical groups
commands/
├── core/ # agents, swarm, smart (18 commands)
├── platform/ # github, hive-mind, flow-nexus (22 commands)
├── operations/ # memory, training, monitoring (25 commands)
├── automation/ # hooks, workflows, coordination (18 commands)
└── utilities/ # analysis, optimization, helpers (10 commands)7.4 Hooks Consolidation
Problem: Hooks defined in 3 places
.claude/settings-enhanced.json.claude/settings-complete.json.claude-plugin/hooks/hooks.json
v3 Solution: Single source in config.json
// .claude/config.json (v3)
{
"version": "3.0.0",
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"commands": ["npx sptflo hooks pre-tool --tool=$TOOL_NAME"]
}
],
"PostToolUse": [
{
"matcher": "*",
"commands": ["npx sptflo hooks post-tool --tool=$TOOL_NAME"]
}
],
"PreCompact": [
{
"commands": ["npx sptflo hooks pre-compact --session=$SESSION_ID"]
}
],
"Stop": [
{
"commands": ["npx sptflo hooks session-end --export-metrics true"]
}
]
},
// Reference from other files
"extends": {
"production": "./settings.prod.json",
"development": "./settings.dev.json",
"github": "./settings.github.json"
}
}7.5 Hook Integration with agentic-flow
// src/v3/hooks/learning-hooks.ts
export const agenticFlowHooks = {
PreToolUse: async (context: HookContext) => {
// Query similar past operations
const patterns = await agenticFlow.searchPatterns(context.tool);
if (patterns.length > 0) {
context.suggestions = patterns.map(p => p.recommendation);
}
},
PostToolUse: async (context: HookContext) => {
// Store for learning
await agenticFlow.storePattern(
context.tool,
context.result,
context.success ? 1.0 : 0.0
);
},
PostTask: async (context: HookContext) => {
// Update agent skill library
if (context.success && context.quality > 0.8) {
await agenticFlow.addToSkillLibrary(
context.agentId,
context.taskType,
context.output
);
}
}
};8. Backward Compatibility
8.1 Compatibility Layer Design
// src/v3/compatibility/v2-adapter.ts
import { SwarmCoordinator as V3Coordinator } from '../coordination';
import { AgenticFlowAdapter } from '../integrations';
/**
* v2 API compatibility layer
* All v2.x code continues to work unchanged
*/
export class SwarmCoordinator {
private v3: V3Coordinator;
private adapter: AgenticFlowAdapter;
// v2 API method signatures preserved
async spawnAgent(profile: AgentProfile): Promise<string> {
// Internally uses v3 with agentic-flow
return await this.v3.createAgent(profile.type, {
learning: true, // v3 enhancement, transparent to v2 callers
...profile
});
}
async assignTask(task: Task): Promise<void> {
// v2 behavior preserved, v3 enhancements automatic
await this.v3.executeTask(task);
}
// v2 event emissions preserved
on(event: string, handler: Function): void {
this.v3.on(event, handler);
}
}8.2 Configuration Migration
// src/v3/compatibility/config-migrator.ts
export async function migrateConfig(v2Config: V2Config): Promise<V3Config> {
return {
version: '3.0.0',
// Preserve all v2 settings
...v2Config,
// Add v3 enhancements with sensible defaults
agenticFlow: {
enabled: true,
attention: 'flash',
sona: 'balanced',
learning: true
},
// Migrate deprecated fields
hooks: migrateHooks(v2Config.hooks),
agents: migrateAgents(v2Config.agents)
};
}
// Auto-migration on first run
export async function autoMigrate(): Promise<void> {
const configPath = '.claude/config.json';
const config = await loadConfig(configPath);
if (!config.version || config.version < '3.0.0') {
const migrated = await migrateConfig(config);
await saveConfig(configPath, migrated);
await backupConfig(configPath + '.v2.backup', config);
console.log('✅ Configuration migrated to v3');
}
}8.3 Deprecation Strategy
// Phase 1 (v3.0.0): Warnings only
/** @deprecated Use AgenticFlowAdapter.createAgent() instead */
export async function legacySpawnAgent(profile: AgentProfile): Promise<string> {
console.warn('⚠️ legacySpawnAgent is deprecated. Use AgenticFlowAdapter.');
return await agenticFlow.createAgent(profile.type, profile);
}
// Phase 2 (v3.2.0): Loud warnings
// Phase 3 (v4.0.0): Remove deprecated APIs8.4 Testing Backward Compatibility
// tests/v3/backward-compatibility.test.ts
describe('v2 API Compatibility', () => {
it('should work with v2 SwarmCoordinator API', async () => {
// v2 code unchanged
const coordinator = new SwarmCoordinator();
const agentId = await coordinator.spawnAgent({ type: 'coder' });
await coordinator.assignTask({ description: 'test' });
expect(agentId).toBeDefined();
});
it('should emit v2 events', async () => {
const events: string[] = [];
coordinator.on('agent:spawned', () => events.push('spawned'));
coordinator.on('task:completed', () => events.push('completed'));
await coordinator.spawnAgent({ type: 'coder' });
await coordinator.assignTask({ description: 'test' });
expect(events).toContain('spawned');
expect(events).toContain('completed');
});
it('should migrate v2 config automatically', async () => {
const v2Config = { agents: [...], hooks: [...] }; // v2 format
const v3Config = await migrateConfig(v2Config);
expect(v3Config.version).toBe('3.0.0');
expect(v3Config.agenticFlow.enabled).toBe(true);
});
});9. Implementation Roadmap
9.1 Phase 1: Foundation & Security (Weeks 1-4)
Week 1: Security Fixes
- [ ] Update vulnerable dependencies
- [ ] Implement bcrypt password hashing
- [ ] Remove hardcoded credentials
- [ ] Fix command injection vulnerabilities
- [ ] Add path traversal protection
Week 2: Repository Cleanup
- [ ] Remove dist-cjs from git
- [ ] Delete backup and deprecated files
- [ ] Clean up .gitignore duplicates
- [ ] Archive old checkpoints
- [ ] Consolidate lock files
Week 3: Foundation Setup
- [ ] Create v3 directory structure
- [ ] Install agentic-flow@2.0.1-alpha.0
- [ ] Create AgenticFlowAdapter
- [ ] Set up sql.js dual-mode provider
- [ ] Create v2 compatibility layer
Week 4: Configuration Migration
- [ ] Consolidate settings files (9 → 4)
- [ ] Reorganize agents (22 → 7 categories)
- [ ] Reorganize commands (16 → 5 groups)
- [ ] Reorganize skills (flat → 5 domains)
- [ ] Consolidate hooks to config.json
9.2 Phase 2: Core Domains (Weeks 5-12)
Weeks 5-6: Agent Lifecycle
- [ ] Implement EnhancedAgentManager
- [ ] Integrate SONA learning profiles
- [ ] Add GNN-enhanced agent selection
- [ ] Implement Reflexion for self-improvement
Weeks 7-8: Task Execution
- [ ] Create UnifiedTaskExecutor
- [ ] Implement Flash Attention coordination
- [ ] Add consensus-based decision making
- [ ] Integrate 9 RL algorithms
Weeks 9-10: Memory Management
- [ ] Implement HybridMemorySystem
- [ ] Add SptDB vector search
- [ ] Create sql.js backend
- [ ] Migrate swarm + hive-mind databases
Weeks 11-12: Coordination
- [ ] Create SingleCoordinatorEngine
- [ ] Implement pluggable strategies
- [ ] Add Byzantine fault tolerance
- [ ] Integrate QUIC transport
9.3 Phase 3: Plugin Migration (Weeks 13-16)
Weeks 13-14: HiveMind & Maestro
- [ ] Convert HiveMind to plugin
- [ ] Convert Maestro to plugin
- [ ] Create plugin loader system
- [ ] Add plugin configuration
Weeks 15-16: Neural & GitHub
- [ ] Convert Neural to plugin
- [ ] Enhance GitHub integration
- [ ] Add 213 MCP tools access
- [ ] Implement plugin marketplace
9.4 Phase 4: Testing & Release (Weeks 17-20)
Weeks 17-18: Testing
- [ ] Unit tests for all v3 components
- [ ] Integration tests with agentic-flow
- [ ] Backward compatibility tests
- [ ] Performance benchmarks
- [ ] Security audit
Weeks 19-20: Release
- [ ] Documentation updates
- [ ] Migration guide
- [ ] CHANGELOG
- [ ] npm publish v3.0.0
- [ ] GitHub release
9.5 Sprint Breakdown
| Sprint | Week | Focus | Deliverables |
|---|---|---|---|
| 1 | 1 | Security | All critical vulnerabilities fixed |
| 2 | 2 | Cleanup | 49MB removed, repo organized |
| 3 | 3 | Foundation | v3 structure, agentic-flow installed |
| 4 | 4 | Config | Settings consolidated, hooks unified |
| 5-6 | 5-6 | Agents | EnhancedAgentManager with SONA |
| 7-8 | 7-8 | Tasks | Consensus-based execution |
| 9-10 | 9-10 | Memory | Hybrid system with SptDB |
| 11-12 | 11-12 | Coordination | Single engine with strategies |
| 13-14 | 13-14 | Plugins | HiveMind, Maestro as plugins |
| 15-16 | 15-16 | Integration | Neural, GitHub, MCP tools |
| 17-18 | 17-18 | Testing | Full test suite, benchmarks |
| 19-20 | 19-20 | Release | v3.0.0 published |
10. Success Metrics
10.1 Performance Targets
| Metric | v2 Current | v3 Target | Improvement |
|---|---|---|---|
| Agent spawn | 500ms | <100ms | 5x faster |
| Task assignment | 50ms | <10ms | 5x faster |
| Memory query | 25ms | <5ms | 5x faster |
| Codebase size | 130k lines | 78k lines | 40% smaller |
| Config storage | 14.2MB | 3.5MB | 75% smaller |
| Startup time | ~2s | <500ms | 4x faster |
| Security score | 45/100 | 90/100 | 2x safer |
10.2 Quality Metrics
| Metric | Target | Measurement |
|---|---|---|
| SONA quality improvement | +55% | A/B testing vs v2 |
| GNN search accuracy | +12.4% | Precision@5 comparison |
| Test coverage | >90% | Jest coverage report |
| Type safety | 100% | No any types |
| Documentation | Complete | All APIs documented |
10.3 Compatibility Metrics
| Metric | Target | Verification |
|---|---|---|
| v2 API compatibility | 100% | All v2 tests pass |
| Config auto-migration | 100% | Migration test suite |
| Windows installation | 100% | CI/CD Windows matrix |
| Zero breaking changes | 0 | Semantic versioning |
10.4 Adoption Metrics
| Metric | Target | Tracking |
|---|---|---|
| Migration guides read | >1000 | Analytics |
| Issues reported | <10 critical | GitHub issues |
| npm downloads | +50% | npm stats |
| Community PRs | +100% | GitHub metrics |
Appendix A: File Changes Summary
New Files to Create
src/v3/
├── integrations/
│ ├── agentic-flow-adapter.ts
│ └── index.ts
├── memory/
│ ├── backends/
│ │ ├── sqljs-backend.ts
│ │ └── database-provider.ts
│ └── hybrid-memory.ts
├── coordination/
│ ├── unified-coordinator.ts
│ └── consensus-engine.ts
├── compatibility/
│ ├── v2-adapter.ts
│ └── config-migrator.ts
├── hooks/
│ └── learning-hooks.ts
└── plugins/
├── plugin-loader.ts
├── hive-mind/
├── maestro/
└── neural/
docs/v3/
├── SPTFLO-V3-MASTER-PLAN.md (this file)
├── MIGRATION-GUIDE.md
├── API-REFERENCE.md
└── ARCHITECTURE.mdFiles to Remove
# Deprecated
src/api/claude-client-v2.5.ts
# Backups
bin/pair-old.js
bin/pair-enhanced.backup.js
bin/stream-chain.js.backup
bin/training-pipeline-old.js.bak
docs/reasoningbank/models/*/memory.db.backup
# Build artifacts
dist-cjs/ (remove from git)
# Empty
sptflo-wiki/
# Duplicate settings
.claude/settings-complete.json
.claude/settings-enhanced.json (merge into settings.prod.json)
.claude/settings-checkpoint-*.json
.claude/settings.reasoningbank-*.json
.claude/settings-npx-hooks.jsonFiles to Modify
package.json # Add sql.js, update agentic-flow
.gitignore # Add dist-cjs, cleanup duplicates
.claude/config.json # Add v3 structure, unified hooks
tsconfig.json # Add v3 pathsAppendix B: Quick Reference
Key Commands
# Install v3 dependencies
npm install agentic-flow@2.0.1-alpha.0 sql.js
# Run security fixes
npm audit fix --force
# Cleanup repository
./scripts/cleanup-v3.sh
# Run migration
npx sptflo migrate --to v3
# Verify backward compatibility
npm run test:compatibility
# Build v3
npm run build:v3Configuration Quick Start
// .claude/config.json (minimal v3)
{
"version": "3.0.0",
"agenticFlow": {
"enabled": true,
"attention": "flash",
"sona": "balanced"
},
"extends": "./settings.prod.json"
}API Quick Reference
// v3 with backward compatibility
import { SwarmCoordinator } from 'sptflo'; // v2 API still works
// v3 native
import { AgenticFlowAdapter } from 'sptflo/v3';
const adapter = new AgenticFlowAdapter({ sona: 'research' });
await adapter.initialize();Document Version: 1.0.0Last Updated: 2026-01-03Authors: Concurrent Swarm Analysis Team