Meet Babysit: The Terminal Wrapper That Puts You in Control of Any Process
The main blog post with good structure
What If You Could Control Any Running Process?
When you're running a script, a build process, or an AI coding agent, you typically have two options: wait until it finishes, or kill it and start over. But what if you could interact with it in real-time? That's exactly what babysit does.
Babysit wraps any command in a pseudo-terminal (PTY) and exposes complete control over it from the outside. Think of it as a remote control for your terminal sessions.
The Core Features That Make This Powerful
Read Output in Real-Time Babysit streams the command's output as it happens, letting you monitor progress without being locked into an interactive session. This is invaluable for logging systems and monitoring long-running processes.
Send Input on Demand Want to respond to a prompt? Simulate user interaction? Send keystrokes to a running process? You can do all of that programmatically. No more "the script is waiting for input and I can't do anything" frustration.
Screenshot the Screen This one is surprisingly useful. If your command produces visual terminal output, you can capture it as an image. Perfect for debugging TUI applications or documenting terminal-based workflows.
Attach and Detach Freely
Start a process, detach from it, and reattach later. It's like screen or tmux, but with programmatic control from outside the session. Your scripts become the session manager.
Why This Changes the Game for AI Coding Agents
Here's where things get really interesting. AI coding agents often need to run commands, inspect their output, and respond to errors or prompts. Traditional approaches involve:
- Running commands and hoping for the best
- Parsing error logs after the fact
- Manual intervention when the agent gets stuck
With babysit, AI agents can:
- Monitor command output in real-time
- Detect when a command needs input
- Respond programmatically to prompts or errors
- Capture terminal state for debugging
This creates a feedback loop where AI agents can handle complex, interactive workflows that previously required human oversight.
Use Cases Beyond AI Agents
- DevOps scripts: Monitor deployments, respond to prompts automatically
- Testing frameworks: Control interactive test runners
- Build systems: Watch builds progress and intervene when needed
- Remote debugging: Attach to processes running elsewhere
- Automation pipelines: Create workflows that adapt based on real-time output
Getting Started
The project lives on GitHub at github.com/yusukeshib/babysit. It's designed to be integrated into other tools rather than used directly, making it a building block for more sophisticated automation systems.
The Bigger Picture
Tools like babysit represent a shift toward more intelligent, adaptive automation. Instead of brittle scripts that assume everything goes according to plan, we can build systems that observe, adapt, and respond to what's actually happening.
Whether you're building AI coding workflows, DevOps automation, or just want more control over your terminal sessions, babysit offers a powerful primitive worth exploring.
What interactive terminal challenges have you faced that something like this could solve?