Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
No. 2250Tools index

Previous survey · No. 2178 ·

Pricing
Open Source
Type
TOOL
Builder
tempoxyz
GitHub
6 stars
Date

About

Rust port of wevm/incur — a CLI framework for agents and humans.

What it does

Incur-rs lets Rust developers define command trees, typed arguments, options, handlers, help, and structured results. The same definitions can produce human-readable output, machine-oriented manifests, multiple serialization formats, and an MCP server over standard input and output.

Why it's ranked here

The design has unusual practical breadth: one command model serves terminal users and agent tooling, while configuration layers and structured errors cover real application needs. The case is tempered by sparse onboarding, an early package version, and MCP responses that omit structured content despite serializing JSON into text.

What's good

Commands expose JSON Schema to MCP clients, including required fields, defaults, descriptions, enums, and basic types. Output supports TOON, JSON, YAML, Markdown, and JSON Lines. Configuration follows explicit precedence across command arguments, environment variables, TOML, and code defaults. An optional bridge can expose existing clap command trees.

Tradeoffs

The repository provides no README, so adoption depends on API documentation and source examples. MCP tool results place serialized JSON in text while leaving structured content empty. Calls with metadata discard their suggested next actions in MCP mode. The native parser supports only string, number, boolean, and string-array option types.

How to use it well

Use it for Rust command-line applications that need both approachable terminal behavior and agent discovery from one command definition. It fits tools requiring predictable structured output, layered configuration, or MCP exposure. Existing clap applications can add agent access through the optional bridge. It does not provide your application’s domain logic or a network API.

Technical notes+

Cargo.toml defines the incur library with Rust edition 2024, an optional clap feature, rmcp stdio transport, Tokio, serde, figment2, and a path dependency on incur-derive. src/cli.rs owns the Cli builder, routing, built-in flags, manifest generation, formatting, and MCP dispatch. src/mcp.rs converts Arg and Opt metadata into JSON Schema, reparses flat tool arguments through parser::parse, and returns JSON-serialized text with structured_content set to None. src/config.rs implements defaults, upward-discovered TOML, prefixed environment variables, and explicit per-option environment variables. src/from_clap.rs walks clap leaves and runs the current executable for each MCP call. incur-derive/src/lib.rs generates IncurCommand implementations from named structs.

Observed

License
MIT
Primary language
Rust, edition 2024
Packaging
Cargo package named incur with a local incur-derive procedural macro crate
Interfaces
Rust library, CLI framework, and MCP server over stdio
Optional integration
clap support is disabled by default and available through a Cargo feature
Output formats
TOON, JSON, YAML, Markdown, and JSON Lines
Documentation surface
No README was available in the supplied repository text

Read from Cargo.toml, src/cli.rs, src/lib.rs, src/cta.rs, src/mcp.rs, src/help.rs, src/error.rs, src/config.rs, src/parser.rs, src/formatter.rs, src/from_clap.rs, src/derive_support.rs, incur-derive/src/lib.rs.

What it can do

  • Execute CLI commands through agent framework

    Command line instructionsCommand execution results

  • Process agent workflows

    Agent configuration and tasksExecuted workflow results

  • Handle interactive CLI sessions

    User prompts and responsesInteractive command responses

  • Parse and execute structured commands

    Structured command syntaxParsed command execution

  • Manage agent-human collaboration workflows

    Mixed agent and human tasksCoordinated workflow execution

Tags

clirustagentsframework

Tech Stack

Rust

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.