The CliInvoke library offers three patterns for invoking external processes from .NET, each tuned to a different audience and trade-off space. This page is the central hub of the Developer Portal — it routes you to the right specialized documentation based on who you are and what you're trying to do.
Pick the description that fits you best. Each path is designed to land you on a working example or the right reference in 1–3 clicks.
You want to launch a process, capture its output, and move on. No DI container, no builders, no ceremony.
Start here — copy, paste, run:
using CliInvoke;
using CliInvoke.Core;
// Execute a command and wait for it to finish.
ProcessResult result = await CliRun.RunAsync("dotnet", "--version");
Console.WriteLine($"Exit Code: {result.ExitCode}");
That's a complete working program using the beginner-friendly
CliRun
façade — one click from this page to a runnable example.
When you're ready for more:
CliRun and when to graduate.You work in a codebase that uses dependency injection, you need to unit-test code that calls out to processes, and you want clean separation between configuration and execution.
Start here:
IProcessInvoker.IProcessInvoker with your DI container.ProcessConfiguration
model, the builder lifecycle, and the default-value reference
appendix.You need to interact with the process while it runs (pipe input
after Start, monitor progress, send signals), or replace
components for advanced scenarios.
Start here:
IExternalProcess
— when and how to use the factory + lifecycle API.ProcessConfiguration and ProcessExitConfiguration.If you know what you need to accomplish but not which page it's on, jump straight to the relevant guide.
| I want to … | Go to |
|---|---|
| Debug a leak, hang, or wrong exit code | Troubleshooting |
| Tune how a process starts or exits | Configuration |
| Understand the internal data-flow | Architecture |
Pick between CliRun, IProcessInvoker, and IExternalProcess |
Choosing your Invocation Pattern |
| Dispose the Resource-Owning Types correctly | Resource Disposal |
| Install and set up the library | Getting Started · Quickstart |
| Migrate from v1 to v2, or v2 to v3 | Migration Guides |
| Look up a specific API | API Reference |
A flat index of every page in this Developer Portal.
CliRun command in under five minutes.CliRun, IProcessInvoker,
and IExternalProcess.ProcessConfiguration,
builders, defaults, and the reference appendix.CliInvoke, CliInvoke.Core, and
CliInvoke.Specializations.