cli-tool-architect

Standardize CLI tool design across Go and Python projects.

3|Updated Feb 26, 2026
One-click install
npx skills add https://github.com/ralvarezdev/ralvaskills --skill cli-tool-architect
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cli-tool-architect
Source: https://github.com/ralvarezdev/ralvaskills/tree/main/skills/tooling/cli-tool-architect
Command: npx skills add https://github.com/ralvarezdev/ralvaskills --skill cli-tool-architect

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

CLI tools across languages often vary in structure, flags, and help output, making cross-team development and maintenance error-prone.

Core Features & Use Cases

  • Cross-language conventions for root commands, subcommands, and flags.
  • TOML-based configuration in XDG locations with explicit discovery order.
  • Uniform output discipline (data to stdout, logs to stderr) and built-in help/examples.
  • Completions, versioning, and multi-arch distribution guidance.

Quick Start

Create a new cross-language CLI project following these conventions to structure your tool's root and subcommands, flags, and config.

Frequently Asked Questions about cli-tool-architect

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

FAQPage Schema
How do I standardize CLI tool design across Go and Python projects?

Standardizing CLI tool design across Go and Python involves applying consistent conventions for root and subcommands, flags, help formatting, and config file discovery. This ensures uniform behavior and reduces cross-team maintenance errors in command-line tools.

What is the correct configuration precedence for command-line tools using TOML and XDG locations?

The correct configuration precedence for command-line tools requires explicit discovery order for TOML files in XDG locations. Flags and environment variables override TOML config values, ensuring predictable runtime behavior across different deployment environments.

How do I structure output discipline for CLI tools to separate logs and data?

To structure output discipline for CLI tools, route data to stdout and logs to stderr. This separation ensures programmatic output can be piped cleanly while diagnostic information remains visible to the terminal user without corrupting data streams.

Does this CLI convention support shell completions and multi-arch distribution?

Yes, these CLI conventions support shell completions and multi-arch distribution. The standard provides generation guidelines for command completions and defines multi-arch distribution requirements to ensure cross-platform compatibility for Go and Python command-line tools.

Can I use Cobra and Typer to build cross-language CLI tools with consistent help formatting?

Yes, you can use Cobra and Typer to build cross-language CLI tools with consistent help formatting. The conventions impose required syntax and usage patterns that map cleanly to both frameworks, ensuring uniform output across Go and Python implementations.

When should I not use standardized cross-language CLI conventions for my command-line tools?

You should avoid standardized cross-language CLI conventions when building highly specialized single-language scripts that do not require cross-team maintenance, TOML configuration, or multi-arch distribution, as the structural overhead would outweigh the consistency benefits.