pi-dynamic-workflows  by QuintinShaw

Dynamic JavaScript orchestration for AI agent workflows

Created 1 month ago
279 stars

Top 92.9% on SourcePulse

GitHubView on GitHub
Project Summary

Summary QuintinShaw/pi-dynamic-workflows provides a framework for orchestrating complex, multi-agent workflows within the Pi ecosystem. It addresses tasks too broad for single agents—such as codebase audits, large refactors, and in-depth research—by enabling dynamic JavaScript scripts that fan out work across isolated subagents. This enhances productivity for complex jobs via parallel processing, model routing, and robust state management.

How It Works Uses deterministic JavaScript scripts (agent(), parallel(), pipeline()) for tasks executed by fresh, isolated subagent sessions. Work fans out concurrently across models or Git worktrees for safe parallel editing. Results are cross-checked, journaled for seamless resumption from interruptions or after script edits via resumeFromRunId, ensuring determinism.

Quick Start & Requirements Install via npm: pi install npm:@quintinshaw/pi-dynamic-workflows. After reloading Pi (/reload), trigger workflows with a keyword (default: workflow/workflows) or /workflows run <prompt>. Requires pi >= 0.80.8. Model/settings config in ~/.pi/workflows/. No explicit hardware like GPUs is mandated by the README, but underlying model execution may require them.

Highlighted Details

  • Supports 16 concurrent / 1000 total subagents per script.
  • Per-agent model routing (tiers: small/medium/big, or specific provider/model IDs).
  • Journaled resume: replay from cache, edit-and-resume (resumeFromRunId).
  • Git worktree isolation for safe parallel edits.
  • Measured usage: reports token costs, supports budgets.
  • Interactive TUI (/workflows) monitors runs, progress, costs, throughput.
  • Built-in workflows for research, review, audits; /ultracode mode.
  • Reusable workflows can be saved/called.

Maintenance & Community The README does not detail specific maintenance contributors, sponsorships, partnerships, or community channels (e.g., Discord, Slack). A CONTRIBUTING.md file is referenced for contribution guidance.

Licensing & Compatibility Released under the MIT license, which is permissive for commercial use and integration into closed-source projects.

Limitations & Caveats Scripts run in Node.js VM sandbox, restricting Date.now(), Math.random(), require, import, filesystem, network access for determinism. Since v3.2, subagents don't load host extensions by default, losing access to host-registered tools. Requires pi >= 0.80.8.

Health Check
Last Commit

5 days ago

Responsiveness

Inactive

Pull Requests (30d)
62
Issues (30d)
15
Star History
209 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.