Skip to content
chenxin-yanPublic

About

A TypeScript CLI framework with composable modules for humans and agents.

Topics

Resources

Contributing

Stars

413 stars

Watchers

0 watching

Forks

Repository files navigation

Crust logo
Crust

A TypeScript CLI framework with composable modules for humans and agents.

license stars

Website & Docs   •   Contributing   •   Issues   •   Discord

What is Crust?

Crust is a TypeScript CLI framework for humans and agents. Define a command once with full type inference, and it runs as a CLI, packages as an agent skill, and can be exposed over MCP. Composable modules add prompts, progress, TUI, styling, persistence, man pages, and testing helpers as you need them. It runs on Bun, Node.js, and Deno, with native Bun integrations.

Who uses Crust?

Getting Started

Bun

bun create crust@latest my-cli
cd my-cli
bun run dev

npm

npm create crust@latest my-cli
cd my-cli
npm run dev

pnpm

pnpm create crust@latest my-cli
cd my-cli
pnpm run dev

Yarn (2+)

yarn dlx create-crust@latest my-cli
cd my-cli
yarn run dev

Deno

deno run -A npm:create-crust@latest my-cli --runtime deno
cd my-cli
deno task dev

Packages

Package Description Version Downloads
@crustjs/crust CLI to build and publish Crust apps as npm packages or standalone binaries npm downloads
@crustjs/core Define, parse, route, and run type-safe CLI commands with Contexts and Extensions npm downloads
@crustjs/man Generate mdoc(7) manual pages from Crust command definitions npm downloads
@crustjs/testing Test helpers for Crust CLIs with captured output and fake interactive terminals npm downloads
@crustjs/extensions Official Crust Extensions for help, version, completion, typo hints, color, and updates npm downloads
@crustjs/style Terminal styling, colors, hyperlinks, and ANSI-aware text layout npm downloads
@crustjs/progress Spinners and determinate progress indicators for terminal tasks npm downloads
@crustjs/prompts Interactive input, password, confirm, select, and filter prompts for the terminal npm downloads
@crustjs/tui Bun-only OpenTUI renderer adapter for Crust Command Actions npm downloads
@crustjs/effect Effect.ts v4 adapter for Crust Command Actions, Contexts, and errors npm downloads
@crustjs/env Typed, validated environment variables as a Crust Context, documented in help and man pages npm downloads
@crustjs/store Typed JSON persistence for CLI config, data, state, and cache files npm downloads
@crustjs/skills Generate and install agent skills for AI coding assistants from Crust commands npm downloads
@crustjs/mcp Serve a Crust CLI as MCP tools over stdio npm downloads
@crustjs/create Headless scaffolding engine for building project generators npm downloads
create-crust Scaffold a new Crust CLI project for Bun, Node.js, or Deno npm downloads

About

A TypeScript CLI framework with composable modules for humans and agents.

Topics

Resources

Contributing

Stars

413 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages