Watch Long Processes
With Intelligence
Spawn any long-running command. ProcPipe watches it with zero polling and notifies you on Telegram when it completes or needs input.
Direct Download
Grab the latest binary for your system. Zero dependencies, just a single executable.
System Diagnostics
ProcPipe is designed to be invisible when run, but powerful when needed.
PTY-Based Execution
Spawns commands in a real pseudo-terminal, ensuring accurate behavior and output capture like a native shell.
Telegram Integration
Sends rich notifications with logs and status updates directly to your device via a simple bot integration.
Smart Input Detection
Automatically detects interactive prompts like [Y/n] or password requests and notifies you to take action.
Zero Resource Usage
Uses blocking I/O to sleep until activity occurs. Near-zero CPU and memory footprint while watching.
Single Binary
A single static executable with no external dependencies. Works on Linux, macOS, and Windows out of the box.
Interactive Config
Built-in wizard to help you set up your bot token and chat ID in seconds without editing YAML files manually.
Mission Protocols
Standard operating procedures for deploying the Watcher.
Basic Usage
The -- separator is required to distinguish ProcPipe flags from your command's flags.
Run a Build
Watch your build process and get notified when it fails or succeeds.
Long Python Script
Perfect for ML training or long data processing scripts.
Chained Commands
Wrap complex pipelines in quotes to watch the entire sequence.
Configuration
Manage your Telegram credentials via the interactive wizard. Config is stored securely in ~/.config/procpipe/config.yaml.
Dry Run Mode
Use --dry-run to test the watcher locally without sending Telegram notifications.
Initialize Sequence
Install ProcPipe in seconds on any platform.
Create Bot
Talk to @BotFather on Telegram to create a new bot and get your token.
Get Chat ID
Message @userinfobot to find your personal user ID.
Configure
Run procpipe config and paste your credentials.
Wait, how does it work?
It effectively creates a "man-in-the-middle" between your shell and the process, capturing output streams without locking the terminal capabilities. When the stream closes or a pattern matches, it fires a webhook.