Skip to content

A terminal-based tool for building flexible AI workflows anywhere. Process documents, create pipelines, and manage context from the command line.

License

Notifications You must be signed in to change notification settings

jdmonaco/wireflow

Repository files navigation

WireFlow

Reproducible AI Workflows for Research & Development

Version 0.5.0 (pre-release) · Documentation · GitHub

Key Features

  • 🎯 Git-like Discovery: Run from anywhere in your project tree. WireFlow walks up to find .workflow/ automatically.
  • 📄 Native Documents: PDFs, Office files, images (including HEIC, TIFF, SVG) handled natively with automatic conversion.
  • 🧠 Model Profiles: Switch between fast, balanced, and deep reasoning. Enable extended thinking for complex tasks.
  • 📦 Batch Processing: Process hundreds of documents at 50% cost savings with the Message Batches API.
  • 🔧 Config Cascade: Global → project → workflow → CLI. Set once, override where needed.
  • 🏗️ Nested Projects: Inherit settings from parent projects. Perfect for monorepos.
  • 🔗 Workflow Chains: Build pipelines with --depends-on. Outputs feed into dependent workflows.
  • 📥 Input vs Context: Separate primary documents from supporting materials for cleaner prompts.
  • 💰 90% Cache Savings: Smart prompt caching puts stable content first. Pay less for repeated runs.
  • 📚 Citations: Enable source attribution with --enable-citations. Get references you can verify.
  • Three Modes: Persistent workflows for iteration, quick task mode for one-offs, or batch for bulk processing.
  • 💾 Safe Outputs: Timestamped backups, hardlinked copies, atomic writes. Never lose work.

Quick Start

Install

First, clone the repo and then link the script into your PATH. For example:

# Clone repository
git clone https://github.com/jdmonaco/wireflow.git
cd wireflow

# Add to PATH (example using ~/.local/bin)
ln -s "$(pwd)/wireflow.sh" ~/.local/bin/wfw

Setup

export ANTHROPIC_API_KEY="sk-ant-..."
export PATH="$HOME/.local/bin:$PATH"

Create Your First Workflow

# Initialize project
cd my-project
wfw init .

# Create workflow
wfw new analyze-data

# Edit workflow config
wfw edit analyze-data

# Run with context
wfw run analyze-data -cx data.csv --stream

Your project files and folders are treated as read-only. All WireFlow files are maintained in a .workflow/ subfolder.

Documentation

📚 Complete documentation: https://docs.joemona.co/wireflow/

Quick Links

Core Concepts

Workflows

Persistent, named tasks with configuration and outputs:

wfw new 01-analysis
wfw run 01-analysis --stream

Tasks

Lightweight, one-off execution without persistence:

wfw task -i "Summarize these notes" -cx notes.md

Dependencies

Chain workflows to build pipelines:

wfw run 02-report --depends-on 01-analysis --stream

Configuration

Multi-tier cascade with pass-through:

Global (~/.config/wireflow/config)
    ↓
Ancestor Projects (grandparent → parent)
    ↓
Project (.workflow/config)
    ↓
Workflow (.workflow/run/<name>/config)
    ↓
CLI Flags (--model, --temperature, etc.)

Usage Examples

Simple Analysis

wfw init my-analysis
wfw new analyze-data
wfw run analyze-data -cx data.csv --stream

Workflow Chain

wfw run 00-context --stream
wfw run 01-outline --depends-on 00-context --stream
wfw run 02-draft --depends-on 00-context,01-outline --stream

Quick Query

wfw task -i "Extract action items" -cx meeting-notes.md

Requirements

Configuration

Global Configuration

Auto-created on first use at ~/.config/wireflow/:

  • config - Global defaults for all projects
  • prompts/base.txt - Default system prompt
  • tasks/ - Named task templates (optional)

Project Configuration

Created by wfw init:

  • .workflow/config - Project-level settings
  • .workflow/project.txt - Project description (optional)
  • .workflow/run/<name>/ - Individual workflows

Help

wfw help              # Show all subcommands
wfw help <subcommand> # Detailed subcommand help
wfw <subcommand> -h   # Quick help

Contributing

Contributions welcome! See the Developer Guide for guidelines.

License

MIT License - see LICENSE for details.

Resources


Made with Claude Code

About

A terminal-based tool for building flexible AI workflows anywhere. Process documents, create pipelines, and manage context from the command line.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages