Instantly Transform .NET Libraries into Command-Line Tools
Calq CLI automatically generates professional CLI tools from any .NET library using advanced API mirroring
Why Choose Calq CLI?
Calq CLI bridges the gap between effortless, zero-code generation and the deep customization required to build truly professional-grade tools on the .NET platform.
No Programming CLI Generation for .NET
Until now only possible in scripting languages, Calq CLI enables it in .NET through advanced API mirroring.
Generate Custom UI
Easily configure Calq CLI and combine it with Spectre Console, or your own code, to effortlessly build tools with custom UI.
Customize for Any Requirements
Tailor any CLI to even the most unique requirements by modyfing the entire Calq CLI, even its DFA-based command parser.
Match Industry Standards
Use the default configuration to immediately follow established GNU/POSIX conventions, ensuring an intuitive user experience.
Vibe Coding Demo
Watch how Calq CLI accelerates development of professional command-line tools.
Regex Tool with Calq CLI
Try Yourself
# SETUP PROJECT
1. Clone https://github.com/calq-framework/cli
2. Run `dotnet new console --name RegexTool`
3. Run `dotnet add reference ../cli/Cli/CalqFramework.Cli/CalqFramework.Cli.csproj`
4. For RegexTool, set GenerateDocumentationFile, PackAsTool, and ToolCommandName.
# IMPLEMENT
1. Using Regex, add a constructorless class with primitive properties and methods with parameters for text search and replacement in dir. There's no need for any attributes. Properties and method parameters should not overlap and should use simple names.
2. Add XML comments.
# ADD Calq CLI
1. Don't learn Calq CLI.
2. Copy cli\Cli\Example\Program.cs to MyCliTool\Program.cs
3. In Program.cs, replace `CloudProviderCLI.RootModule` with the newly implemented class. There's no need for any other root module.
# TEST TOOL
1. Run `dotnet pack -c Release --output . -p:Version=0.0.0`
2. Run `dotnet tool install --global --add-source . --version "0.0.0"`
3. Ensure the tool runs with 1 test.Pricing & Licensing
Start building for free on open-source projects, or choose a commercial license to keep your source code private.
Open Source License
Perfect for personal projects, open-source development, and product evaluation. Use freely under the AGPLv3 license terms.
By accessing or using the software, you agree to the terms of the AGPLv3 License.Commercial License
Get a commercial license for more permissive use, allowing you to keep your source code private.
By purchasing, you agree to the License Agreement, our Terms of Service, and Privacy Policy.A Radically Simpler Approach
Both examples below attempt to create a CLI for the exact same class library.
Calq CLI
Single template for any project.
using CalqFramework.Cli;
using CalqFramework.Cli.DataAccess.InterfaceComponent;
using System;
using System.Text.Json;
var result = new CommandLineInterface() {
CliComponentStoreFactory = new CliComponentStoreFactory() {
EnableShadowing = true
}
}.Execute(new CloudProviderCLI.RootModule());
switch (result) {
case ResultVoid:
break;
case string str:
Console.WriteLine(str);
break;
case object obj:
Console.WriteLine(JsonSerializer.Serialize(obj));
break;
}Works out of the box.
System.CommandLine
Generated with AI using Gemini 2.5 Pro.
Loading...Fails to build with 170 errors.