domain-cli

Create Rust CLI scaffolds with clap, figment, indicatif, and colored.

1|Updated Apr 4, 2026
One-click install
npx skills add https://github.com/Jylhis/claude-marketplace --skill domain-cli-jylhis
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: domain-cli
Source: https://github.com/Jylhis/claude-marketplace/tree/main/plugins/rust-dev/skills/domain-cli
Command: npx skills add https://github.com/Jylhis/claude-marketplace --skill domain-cli-jylhis

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It addresses the need for well‑structured, user‑friendly command‑line interfaces in Rust, ensuring proper argument parsing, configuration precedence, error handling, and progress feedback.

Core Features & Use Cases

  • Domain Constraints Guidance: Defines rules for ergonomics, config hierarchy, exit codes, and interrupt handling.
  • Key Crates Recommendations: Highlights essential libraries such as clap, figment, indicatif, and colored.
  • Design Patterns: Provides ready‑to‑use patterns for args structs, subcommands, and layered configuration.
  • Use Case: Quickly scaffold a production‑grade Rust CLI that respects best‑practice constraints.

Quick Start

Ask the domain-cli skill to generate a Rust CLI scaffold for a new project named “myapp”.

Frequently Asked Questions about domain-cli

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a Rust CLI tool for proper argument parsing and configuration layering?▼

Structure a Rust CLI tool by defining args structs and subcommands with clap, then apply layered configuration using figment to merge environment variables, config files, and command-line arguments into a single precedence hierarchy.

What is the best way to handle errors and exit codes in a Rust command-line application?▼

Handle errors in a Rust command-line application by writing error messages to stderr and returning appropriate exit codes. This ensures proper scripting integration and signals failure states correctly to the calling process.

How do I add progress reporting and colored output to a Rust CLI?▼

Add progress reporting and colored output to a Rust CLI by integrating the indicatif crate for progress bars and the colored crate for terminal text styling, providing immediate visual feedback during long-running operations.

Does this Rust CLI approach support environment variable precedence and interrupt handling?▼

Yes, this Rust CLI approach supports environment variable precedence within its configuration hierarchy and defines specific domain constraints for interrupt handling to ensure graceful shutdowns during execution.

Can I quickly scaffold a production-grade Rust CLI without manually setting up config hierarchy and ergonomics?▼

You can quickly scaffold a production-grade Rust CLI by applying ready-to-use design patterns for args structs and subcommands, which enforces best-practice ergonomics, config hierarchy, and error handling without manual setup.