Table of Contents

Class CliProcessRunner

Namespace
Ando.Utilities
Assembly
ando.dll

Executes external processes with timeout support and output capture. Used by CLI commands (bump, commit, release) for git, claude, and other tools.

public class CliProcessRunner
Inheritance
CliProcessRunner
Inherited Members

Methods

RunAsync(string, string, string?, int, string?, bool)

Runs a process and captures its output.

public virtual Task<CliProcessRunner.ProcessResult> RunAsync(string fileName, string arguments, string? stdin = null, int timeoutMs = 60000, string? workingDirectory = null, bool streamOutput = false)

Parameters

fileName string

The executable to run.

arguments string

Command-line arguments.

stdin string

Optional input to write to stdin.

timeoutMs int

Timeout in milliseconds (default: 60 seconds).

workingDirectory string

Working directory (default: current directory).

streamOutput bool

If true, streams output to console in real-time.

Returns

Task<CliProcessRunner.ProcessResult>

ProcessResult with exit code and captured output.

RunClaudeAsync(string, int, bool)

Runs Claude CLI with a prompt and returns the response. Uses --dangerously-skip-permissions to avoid interactive prompts.

public virtual Task<string> RunClaudeAsync(string prompt, int timeoutMs = 120000, bool streamOutput = false)

Parameters

prompt string

The prompt to send to Claude.

timeoutMs int

Timeout in milliseconds (default: 2 minutes).

streamOutput bool

If true, streams output to console in real-time.

Returns

Task<string>

Claude's response text.

Exceptions

Exception

Thrown if Claude CLI fails.