Skip to content

Orchflow is a modular, async orchestration framework for managing terminal sessions, multiplexers, and I/O with a plugin-friendly, transport-agnostic architecture.

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

foofork/orchflow

🚧 OrchFlow 🚧

Rust Implementation

OrchFlow's core orchestration engine is built in Rust for performance and reliability:

Core Crates

Transport-agnostic orchestration engine for managing terminal sessions, panes, and plugins with an event-driven architecture.

Features:

  • Manager pattern for coordinating operations
  • State management with persistent storage
  • Plugin system with event-driven architecture
  • Backend abstraction for terminal multiplexers
  • Async/await support throughout

Terminal multiplexer abstraction layer supporting tmux, mock backends, and custom implementations.

Features:

  • Clean trait-based interface for terminal multiplexers
  • Production: Full tmux integration with session and pane management
  • Testing: Mock backend with configurable behavior for testing and development
  • Factory pattern for automatic backend selection
  • Comprehensive error handling

High-performance terminal I/O management with PTY support, buffering, and stream processing.

Features:

  • Production: Real PTY creation and lifecycle management for actual terminal processes
  • Async streams for non-blocking terminal operations
  • Smart buffering with ring buffer and scrollback
  • Stream processing and output management
  • Resource cleanup with automatic Drop implementation
  • Testing: Use MockBackend from orchflow-mux for testing without real PTYs

Rust Architecture

Application Layer
β”œβ”€β”€ Your Application Code
└── OrchFlow Integration
    β”‚
OrchFlow Core
β”œβ”€β”€ Manager Β· State Β· Events Β· Plugins
β”œβ”€β”€ Backend Abstraction
└── OrchFlow Mux
    β”œβ”€β”€ Tmux Backend
    β”œβ”€β”€ Mock Backend (testing)
    └── Custom Backends
        β”‚
OrchFlow Terminal
β”œβ”€β”€ PTY Management
β”œβ”€β”€ I/O Streaming
└── Buffer Management

Rust Documentation


⚠️ This portion of the project is under development ⚠️

Natural language orchestration for command-line workflows.

npm License Node TypeScript

OrchFlow transforms how you work with AI by injecting orchestration capabilities directly into Claude. Instead of managing multiple windows or sessions, you naturally orchestrate complex tasks through conversation - Claude becomes capable of working on multiple aspects of your project simultaneously.

Quick Example (IN DEVELOPMENT)

# Install OrchFlow
npm install -g @orchflow/claude-flow

# Launch Claude with orchestration powers
orchflow

Now in your Claude conversation:

You: Let's build a complete authentication system - we need the API, 
     frontend components, and comprehensive tests

Claude: I'll help you build a complete authentication system. This is 
        perfect for parallel development. Let me organize our work:
        
        βœ“ API Developer - Building authentication endpoints
        βœ“ Frontend Developer - Creating login/signup components
        βœ“ Test Engineer - Writing comprehensive test suite
        
        Starting with the API, we'll use JWT tokens for authentication...
        [Claude naturally orchestrates while maintaining conversation flow]

Features (PLANNED/IN DEVELOPMENT)

🧠 Intelligent Orchestration

Claude understands when to parallelize work and orchestrates naturally:

  • Automatically creates workers when you describe multiple tasks
  • Seamlessly switches context when you ask about different components
  • Shares knowledge and decisions across all work streams
  • Maintains conversation flow while managing complex orchestration

πŸ’¬ Natural Conversation

No special commands or syntax needed:

  • Just describe what you want to build
  • Ask about progress on any component
  • Request changes that apply across all workers
  • Claude handles the orchestration invisibly

πŸ”„ Seamless Integration

OrchFlow feels like a natural extension of Claude:

  • Works within your normal Claude conversation
  • Context switching happens automatically
  • Knowledge sharing occurs behind the scenes
  • Session state persists across conversations

Installation (DEVELOPMENT VERSION)

Requirements

  • Node.js 16+
  • claude-flow 2.0.0-alpha.50+
  • tmux (automatically installed if missing)
  • macOS, Linux, or Windows (WSL)

Install (DEVELOPMENT ONLY)

Option 1: Development Installation (Current)

# Install claude-flow first
npm install -g claude-flow@2.0.0-alpha.50

# Clone and build OrchFlow
git clone https://github.com/orchflow/orchflow.git
cd orchflow/packages/orchflow-claude-flow
npm install
npm run build
npm install -g .

# Launch (tmux will be automatically installed if missing)
orchflow

Option 2: Published Package (Coming Soon)

# Install claude-flow first
npm install -g claude-flow@2.0.0-alpha.50

# Install OrchFlow (when published)
npm install -g @orchflow/claude-flow

# Launch
orchflow

Auto-Installation Features

  • Automatic tmux setup: No manual tmux installation required
  • Fallback support: Gracefully falls back to inline mode if tmux unavailable
  • Cross-platform: Supports 9 different package managers for tmux installation
  • Configuration management: Automatic tmux configuration with optimal settings

Usage (EXPERIMENTAL)

Basic Commands

Once OrchFlow launches, you'll see an interactive setup wizard:

🎯 Setup Options
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
πŸ“± VS Code Environment Detected

How would you like to use OrchFlow?

1. πŸ–₯️  Split Terminal (tmux) - Full featured with live status pane
2. πŸ“„ Inline Mode - Status updates in main terminal
3. πŸ“Š VS Code Status Bar - Minimal updates in bottom bar
4. πŸͺŸ Separate Window - Dedicated VS Code window for status

After setup, use natural language in Claude:

# Development tasks
Build a complete authentication system with React frontend and Node.js backend
Create comprehensive testing suite with unit and integration tests
Develop REST API with authentication and database integration
Set up CI/CD pipeline with automated testing and deployment

# Progress inquiries
How's the frontend development coming along?
Show me the status of all workers
What's the current system performance?

# Session management
Save session as "auth-system-project"
Restore session "auth-system-project"

Real-World Workflows

Full-Stack Development

# Create coordinated workers for full-stack development
Build backend API with Express and PostgreSQL
Create React frontend with TypeScript
Set up authentication with JWT tokens
Deploy application to AWS

# Monitor all workers
Show me all workers
Display progress for each worker

Code Review & Testing

# Automated code review workflow
Review pull request #123 for security issues
Check test coverage for authentication module
Validate API documentation completeness
Run performance benchmarks on endpoints

Research & Learning

# Technology research
Research React vs Vue vs Angular for enterprise
Investigate microservices patterns
Analyze OAuth 2.0 implementation strategies
Study Kubernetes orchestration concepts

Documentation (IN PROGRESS)

Getting Started

Reference

Advanced

Architecture Overview (SUBJECT TO CHANGE)

OrchFlow features a unified architecture built for production-ready orchestration with comprehensive type safety and streamlined component integration:

User Input (Natural Language)
    ↓
OrchFlow Terminal Interface
    β”œβ”€β”€ UnifiedSetupOrchestrator (automatic tmux setup)
    β”œβ”€β”€ Enhanced MCP Tools (7 specialized tools)
    β”œβ”€β”€ Unified Manager System (5 core managers)
    └── Status Monitoring & Real-time Updates
         ↓
    claude-flow (all commands preserved)
         ↓
    Terminal Multiplexer (tmux with auto-install)

Key Components

  • UnifiedSetupOrchestrator: Single orchestrator handling all setup flows with automatic tmux installation
  • 5 Core Managers: ConfigurationManager, ContextManager, TerminalManager, WorkerManager, UIManager
  • Enhanced MCP Tools: 7 specialized tools for Claude integration with proper type safety
  • Unified Interfaces: Single source of truth for all type definitions in unified-interfaces.ts
  • Auto-Installation: Automatic tmux setup with fallback to inline mode
  • Type Safety: 100% TypeScript compliance with no production 'as any' casts

Programmatic Usage

import { orchestrate, createWorker, getStatus } from '@orchflow/claude-flow';

// Create a task programmatically
const worker = await createWorker({
  task: "Build authentication system",
  type: "developer"
});

// Monitor progress
const status = await getStatus(worker.id);
console.log(`Progress: ${status.progress}%`);

// Connect to worker
await connectToWorker(worker.id);

Performance

  • Startup Time: < 2 seconds (improved with unified architecture)
  • Memory Overhead: < 80MB for orchestration (reduced through consolidation)
  • Worker Capacity: 8 concurrent workers (configurable)
  • Response Time: Real-time orchestration via Claude
  • TypeScript Codebase: 785KB optimized CLI bundle, 782KB library bundle
  • Build Time: < 3 seconds for complete compilation
  • Type Safety: 100% TypeScript compliance with zero production 'as any' casts

Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Setup

git clone https://github.com/orchflow/orchflow
cd orchflow/packages/orchflow-claude-flow
npm install
npm run build
npm test

License

MIT License - see LICENSE for details.

Acknowledgments

Built with:

About

Orchflow is a modular, async orchestration framework for managing terminal sessions, multiplexers, and I/O with a plugin-friendly, transport-agnostic architecture.

Resources

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published