@bomb.sh/args

中文文档
0.3.1发布于 2025/02/24MITTypeScriptES Module零依赖构建来源已验证近 30 天下载 7.9万

A <1kB library for parsing CLI flags. Inspired by Deno's std/cli parseArgs module.

原始使用文档
文档目录4 节
  1. Features
  2. Usage
  3. Benchmarks
  4. Acknowledgements

@bomb.sh/args

A <1kB library for parsing CLI flags. Inspired by Deno's std/cli parseArgs module.

Features

🤏 very small

🍃 very simple

🏃 very fast (beats node:util)

🔏 strongly typed

Usage

Basic usage does not require any configuration.

import { parse } from "@bomb.sh/args";

// my-cli build --bundle -rf --a value --b=value --c 1
const argv = process.argv.slice(2);
const args = parse(argv);

console.log(args);
// { _: ['build'], bundle: true, r: true, f: true, a: "value", b: "value", c: 1 }

Parsing can be configured to ensure arguments are coerced to specific types, which enhances type safety.

const args = parse(argv, {
  default: { a: 1, b: 2, c: "value" },
  alias: { h: "help" },
  boolean: ["foo", "bar"],
  string: ["baz", "qux"],
  array: ["input"],
});

Benchmarks

mri               x 1,650,986 ops/sec ±0.32% (97 runs sampled)
@bomb.sh/args     x 1,407,191 ops/sec ±0.38% (99 runs sampled)
minimist          x 383,506 ops/sec ±0.28% (99 runs sampled)
node:util         x 320,953 ops/sec ±0.35% (98 runs sampled)
yargs-parser      x 31,874 ops/sec ±1.32% (92 runs sampled)

Acknowledgements

This package was previously published as ultraflag up until v0.3.0, when it was renamed to @bomb.sh/args.

版本与发布记录

@bomb.sh/args 共发布 3 个版本,首次发布于 2025/02/11;过去 12 个月发布了 0 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.3.1latest2025/02/241.7 年前
0.3.02025/02/111.7 年前
0.2.32025/02/111.7 年前

关于 @bomb.sh/args 的常见问题

@bomb.sh/args 是什么?

A <1kB library for parsing CLI flags. Inspired by Deno's std/cli parseArgs module.

如何安装 @bomb.sh/args?

在项目目录运行 npm install @bomb.sh/args,或使用 pnpm add / yarn add / bun add。

@bomb.sh/args 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@bomb.sh/args 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@bomb.sh/args 可以商用吗?

@bomb.sh/args 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@bomb.sh/args 的下载量有多少?

根据 npm 官方下载统计,@bomb.sh/args 在 2026/10/09 – 2026/11/07 这 30 天内被下载 79,461 次,日均约 2,649 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@bomb.sh/args 还在维护吗?

最新版本 0.3.1 发布于 2025/02/24(1.7 年前);至今共发布 3 个版本,其中过去 12 个月发布了 0 个;首次发布于 2025/02/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。