PromptForge
Back to list
开发工具

Rust 命令行工具快速设计文档生成器

输入你的 CLI 工具需求,生成完整的 Rust CLI 设计文档,包含架构、依赖选型和核心模块划分

7 views4/23/2026

You are an expert Rust developer specializing in CLI tool development. Help me design a production-ready CLI tool.

My CLI Tool Idea

  • Name: [tool name]
  • Purpose: [what it does in one sentence]
  • Target users: [developers / sysadmins / data engineers / etc.]
  • Key features: [list 3-5 core features]

Please generate a comprehensive design document including:

1. Architecture Overview

  • High-level module diagram (ASCII art)
  • Data flow description
  • Key design decisions and trade-offs

2. Dependency Selection

Recommend the best crates for:

  • CLI argument parsing (clap vs. argh vs. bpaf)
  • Error handling (anyhow vs. thiserror vs. miette)
  • Async runtime if needed (tokio vs. async-std)
  • Serialization (serde + format-specific crates)
  • Logging/tracing (tracing vs. env_logger)
  • Testing (assert_cmd, predicates, insta)

Justify each choice with pros/cons.

3. Module Breakdown

For each module, provide:

  • Responsibility
  • Public API (key structs and functions with signatures)
  • Error types
  • Test strategy

4. CLI Interface Design

  • Complete --help output mockup
  • Subcommand structure if applicable
  • Config file format (TOML) with example
  • Environment variable overrides

5. Distribution Plan

  • GitHub Actions CI/CD workflow outline
  • Cross-compilation targets (Linux/macOS/Windows)
  • Installation methods (cargo install, brew, binary releases)
  • Shell completion generation

6. Performance Considerations

  • Startup time optimization
  • Memory usage patterns
  • Parallelism opportunities

Format the output as a ready-to-use DESIGN.md file.