add-domain

Scaffold new Rust domain modules with file layout and workspace wiring.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/jmagar/rust-bin --skill add-domain-jmagar
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-domain
Source: https://github.com/jmagar/rust-bin/tree/main/.claude/skills/add-domain
Command: npx skills add https://github.com/jmagar/rust-bin --skill add-domain-jmagar

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Domain scaffolding is repetitive and error-prone, and teams need consistent structure when adding new domains to a Rust workspace.

Core Features & Use Cases

  • Create per-spec module layout: crates/core/src/{domain}.rs with actions, types, params, handlers, and client.
  • Wire the new domain into crates/core/src/lib.rs and crates/app/src/lib.rs to enable compilation and usage.
  • Register the domain in crates/app/src/mcp/ to expose it in MCP.
  • Supports integration with CLI (crates/app/src/cli/{domain}.rs) and API services (crates/app/src/api/services/{domain}.rs).

Quick Start

Provide a domain name and run the add-domain skill to generate the new domain skeleton with proper file structure and wiring.

Frequently Asked Questions about add-domain

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

FAQPage Schema
How do I scaffold a new domain module in a Rust workspace project?

To scaffold a new domain module in a Rust workspace, you need to generate the complete file layout including actions, types, params, handlers, and client files, then wire the new domain into the core and app crates. This ensures consistent structure and proper compilation across the project.

What is the best way to add API and CLI support when creating a new Rust domain?

The best way to add API and CLI support when creating a new Rust domain is to generate dedicated service and command files during the scaffolding process. This automatically integrates the domain into the API services directory and the CLI command structure.

How does MCP domain registration work when adding new modules to a Rust app?

MCP domain registration works by automatically wiring the new module into the MCP directory within the app crate during the scaffolding process. This exposes the newly created domain directly in the MCP surface.

Do I need an existing Rust workspace to use automated domain scaffolding?

Yes, you need an existing Rust workspace structured with core and app crates. The scaffolding process modifies the lib.rs files in both crates/core and crates/app to wire the new domain module into the compilation pipeline.

Why is manual domain scaffolding error-prone in Rust projects?

Manual domain scaffolding is error-prone because it requires repetitive file creation and precise wiring across multiple crate surfaces like core, app, CLI, and API. Missing a registration step can break compilation or prevent the domain from functioning properly.