@alchemy/cli

中文文档
0.30.0发布于 2026/10/28MITES Module近 30 天下载 5817

Alchemy CLI — interact with blockchain data

原始使用文档
文档目录22 节
  1. Capabilities At A Glance
  2. Installation
  3. Shell Completions
  4. Getting Started
  5. Authentication Quick Start
  6. Usage By Workflow
  7. Command Reference
  8. EVM
  9. Wallets
  10. Chains
  11. x402
  12. CLI Admin
  13. Feedback
  14. Usage API (alpha)
  15. Flags
  16. Global flags
  17. Command-specific flags
  18. Authentication Reference
  19. Telemetry
  20. REPL Mode
  21. Output Modes
  22. Error Format

Alchemy CLI

Alchemy CLI is a command-line tool for querying blockchain data and managing Alchemy apps/configuration. It supports both human-friendly terminal output and JSON output for automation. You can use browser login, API keys, or x402 wallet auth depending on the command.

Capabilities At A Glance

What you can doCommand areas
Manage Alchemy apps, networks, allowlists, webhooks, and local CLI configalchemy app, alchemy webhook, alchemy config
Track and visualize API usage with summaries and time-series reports (alpha; early access)alchemy usage summary, alchemy usage timeseries
Send product feedback to the Alchemy teamalchemy feedback
Query onchain data across EVM and Solana, including balances, NFTs, transfers, prices, blocks, logs, traces, simulations, and raw RPCalchemy evm, alchemy solana
Use an agent-ready wallet for EVM and Solana actions, including sends, swaps, contract calls, approvals, and cross-chain bridgingalchemy wallet, alchemy evm send, alchemy solana send, alchemy xchain bridge
Pay third-party x402 APIs in USDC with a spend cap, and check the Circle Gateway balancealchemy x402 request, alchemy x402 balance

Installation

Install globally from npm:

npm i -g @alchemy/cli

Or run without installing globally:

npx @alchemy/cli <command>

Shell Completions

Enable Tab completion for all commands and subcommands:

# zsh (add to ~/.zshrc)
echo 'eval "$(alchemy completions zsh)"' >> ~/.zshrc
source ~/.zshrc

# bash (add to ~/.bashrc)
echo 'eval "$(alchemy completions bash)"' >> ~/.bashrc
source ~/.bashrc

# fish
alchemy completions fish > ~/.config/fish/completions/alchemy.fish

Getting Started

Authentication Quick Start

Authentication is required before making requests. The recommended path is browser login:

alchemy auth

This opens a browser to link your Alchemy account, then prompts you to select an app. The selected app's API key is saved to your config automatically. Pass -y to skip the confirmation prompt.

If you run alchemy with no command and no auth configured, the CLI will guide you through browser login automatically.

If you have an auth token but haven't selected an app yet, the CLI will prompt you to pick one before running any command that requires an API key. Teams with many apps can type to search by name.

If you use Notify webhooks, add webhook auth on top via alchemy config set webhook-api-key <key>, --webhook-api-key on alchemy webhook commands, or ALCHEMY_WEBHOOK_API_KEY.

Usage By Workflow

After auth is configured, use the CLI differently depending on who is driving it:

  • Humans (interactive terminal): start with alchemy and use the terminal UI/setup flow; this is the recommended path for human usage
  • Agents/scripts (automation): use --json --no-interactive to guarantee JSON output and disable prompts (JSON is auto-enabled when piped, but --json is a safe default)

Quick usage examples:

# Human recommended entrypoint
alchemy

# Agent/script-friendly command
alchemy evm data balance 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 -n eth-mainnet --json --no-interactive

# Agent checks whether a newer CLI version is available
alchemy update-check --json --no-interactive

Agent bootstrap

Have your agent run agent-prompt as its first step to get a complete, machine-readable contract describing every command, auth method, error code, and execution rule:

# Agent runs this once to learn everything the CLI can do
alchemy --json --no-interactive agent-prompt

This returns a single JSON document with execution policy, runtime discovery instructions, preflight instructions, auth matrix, the full command tree with all arguments and options, error codes with recovery actions, and example invocations. No external docs required.

Agents can also call alchemy --json --no-interactive update-check to retrieve the current CLI version, latest known version, and install command for upgrades.

Command Reference

Run commands as alchemy <command>. Use alchemy help or alchemy help <command> for generated command help.

EVM

CommandWhat it doesExample
evm rpc <method> [params...]Makes raw Ethereum JSON-RPC callsalchemy evm rpc eth_blockNumber -n eth-mainnet
evm data balance [address]Gets native token balance for an addressalchemy evm data balance 0x... -n eth-mainnet
evm data tokens balances [address]Lists ERC-20 balances for an addressalchemy evm data tokens balances 0x... -n eth-mainnet
evm data nfts [address]Lists NFTs owned by an addressalchemy evm data nfts 0x... -n eth-mainnet
evm data history [address]Gets transfer history (alchemy_getAssetTransfers)alchemy evm data history 0x... --category erc20,erc721 -n eth-mainnet
evm data price symbol <symbols>Gets current token prices by symbolalchemy evm data price symbol ETH,USDC
evm data portfolio tokens --body <json>Gets token portfolio dataalchemy evm data portfolio tokens --body '{...}'
evm send <to> <amount>Sends native tokens for --network, or ERC-20 tokens with --tokenalchemy evm send vitalik.eth 0.1 -n base-mainnet
evm contract read/callReads or writes smart contractsalchemy evm contract read 0x... "balanceOf(address)(uint256)" --args '["0x..."]' -n eth-mainnet
evm swap quote/executeSwaps tokens on the same chainalchemy evm swap quote --from 0xEeee... --to 0xA0b8... --amount 1 -n eth-mainnet
evm approve <spender_address>Approves an ERC-20 token allowancealchemy evm approve 0x... --token-address 0x... --amount 10 -n eth-mainnet
evm status [id]Checks transaction or operation statusalchemy evm status 0x... -n eth-mainnet
evm network listLists RPC network IDs for use with --networkalchemy evm network list --search base
evm tx/receipt/block/gas/logsFetches common node resourcesalchemy evm block latest -n eth-mainnet
evm trace/debugCalls Trace and Debug API methodsalchemy evm trace call '{"to":"0x..."}' '["trace"]' latest -n eth-mainnet
evm simulate *Calls simulation APIsalchemy evm simulate execution --tx '{"to":"0x..."}' -n eth-mainnet

Wallets

alchemy wallet exposes a unified onchain-actions surface. The session wallet (Alchemy/Privy-managed, P-256 delegated signer) is the recommended flow; a local wallet (private key stored on disk) is supported as an alternative.

CommandWhat it doesExample
wallet connectConnects a session wallet by default. Pass --mode local only when you explicitly need local keys.alchemy wallet connect
wallet connect --mode localCreate new local EVM and Solana keys.alchemy wallet connect --mode local
wallet connect --mode local --import <path>Import an existing EVM private key from a file.alchemy wallet connect --mode local --import ./key.txt
wallet connect --mode session --instance-name <name>Connect a named session wallet instance.alchemy wallet connect --mode session --instance-name laptop
wallet status [--verify]Reports session, local EVM, local Solana, and the active signer. --verify reconciles the session with the backend.alchemy wallet status --verify
wallet addressPrints addresses for every configured signer.alchemy wallet address
wallet use <session|local>Selects which signer evm send, evm swap, evm approve, xchain bridge, and evm contract call use for EVM transactions.alchemy wallet use local
wallet disconnectRevokes the current session (local + backend). Clears active_signer if it pointed at the session.alchemy wallet disconnect
wallet qr [--type <evm|solana>]Renders a configured address as a QR code.alchemy wallet qr --type evm

Per-command override: pass --signer <session\|local> to evm send, evm approve, evm swap, xchain bridge, or evm contract call to override the active signer for a single invocation.

Chains

CommandWhat it doesExample
solana rpc <method> [params...]Calls Solana JSON-RPC methodsalchemy solana rpc getBalance '"<pubkey>"' -n solana-mainnet
solana das <method> [params...]Calls Solana DAS methodsalchemy solana das getAssetsByOwner '{"ownerAddress":"<pubkey>"}' -n solana-mainnet
solana network listLists networks from the Solana namespacealchemy solana network list --search solana
solana send <to> <amount>Sends SOL or SPL tokens to an addressalchemy solana send <pubkey> 0.1 -n solana-mainnet
solana send <to> <amount> --token <mint>Sends an SPL token and creates the recipient ATA if neededalchemy solana send <pubkey> 10 --token <mint> -n solana-mainnet
solana program accounts/account/showInspects Solana program accounts and account metadataalchemy solana program accounts <program-id> -n solana-mainnet
solana delegate approve/revokeApproves or revokes SPL token delegatesalchemy solana delegate approve --token-account <addr> --mint <mint> --delegate <addr> --amount 1 --decimals 6 -n solana-mainnet
solana status [id]Checks Solana transaction or operation statusalchemy solana status <signature> -n solana-mainnet
xchain bridge quote/executeBridges tokens across chainsalchemy xchain bridge quote --from 0xEeee... --to 0xEeee... --amount 0.1 --to-network base-mainnet -n eth-mainnet

x402

CommandWhat it doesExample
x402 request <url>Requests a URL and pays its x402 v2 quote (USDC) with the session or local signer; --estimate shows the quote without payingalchemy x402 request https://api.example.com/data --max-payment 0.01
x402 balanceShows the Circle Gateway USDC balance per chain for the active signeralchemy x402 balance

Non-interactive runs (including --json) require --max-payment, which acts as the payment authorization; payment signatures are verified locally to recover to the wallet address before being sent.

CLI Admin

CommandWhat it doesExample
(no command)Starts interactive REPL mode (TTY only)alchemy
auth (auth login)Log in via browser (PKCE)alchemy auth
auth statusShow current authentication statusalchemy auth status
auth logoutClear saved authentication tokenalchemy auth logout
team listLists your teams and marks the selected onealchemy team list
team select [id]Selects the team that app commands act on; switching clears the selected appalchemy team select <team-id>
app listLists apps (supports pagination/filtering)alchemy app list --all
app chainsLists Admin API chain identifiers (e.g. ETH_MAINNET)alchemy app chains
app get <id>Gets app detailsalchemy app get <app-id>
app createCreates appalchemy app create --name "My App" --networks eth-mainnet
app update <id>Updates app name/descriptionalchemy app update <app-id> --name "New Name"
app delete <id>Deletes appalchemy app delete <app-id>
app networks <id>Updates app network allowlistalchemy app networks <app-id> --networks eth-mainnet,polygon-mainnet
app address-allowlist <id>Updates app address allowlistalchemy app address-allowlist <app-id> --addresses 0xabc,0xdef
app origin-allowlist <id>Updates app origin allowlistalchemy app origin-allowlist <app-id> --origins https://example.com
app ip-allowlist <id>Updates app IP allowlistalchemy app ip-allowlist <app-id> --ips 1.2.3.4,5.6.7.8
app configured-networksLists RPC network slugs configured for an appalchemy app configured-networks --app-id <app-id>
app select [id]Selects the default app interactively or by IDalchemy app select <app-id>
feedback [message...]Submits product feedback (- reads multiline text from stdin)alchemy feedback Love the new usage command
webhook listLists Notify webhooksalchemy webhook list --webhook-api-key <key>
webhook create --body <json>Creates Notify webhookalchemy webhook create --body '{...}' --webhook-api-key <key>
webhook update --body <json>Updates Notify webhookalchemy webhook update --body '{...}' --webhook-api-key <key>
webhook delete <id>Deletes Notify webhookalchemy webhook delete <id> --webhook-api-key <key>
webhook addresses <id>Gets address activity webhook addressesalchemy webhook addresses <id> --webhook-api-key <key>
webhook nft-filters <id>Gets NFT activity webhook filtersalchemy webhook nft-filters <id> --webhook-api-key <key>
doctorRuns readiness checks and suggestionsalchemy doctor
initLogs in, installs the MCP server and skills, and adds Alchemy instructions to AGENTS.mdalchemy init --client claude --dry-run
install mcpInstalls Alchemy's remote MCP server configalchemy install mcp --client claude --dry-run
install skillsInstalls bundled Alchemy skillsalchemy install skills --client cursor --dry-run
update-checkChecks whether a newer CLI version is availablealchemy update-check --json --no-interactive
config set ...Sets config valuesalchemy config set app <app-id>
config get <key>Gets one config valuealchemy config get verbose
config listLists all config valuesalchemy config list
config reset [key]Resets one or all config valuesalchemy config reset --yes
completions <shell>Generates shell completion scripts (bash/zsh/fish)eval "$(alchemy completions zsh)"
agent-promptEmits complete agent/automation usage instructionsalchemy --json --no-interactive agent-prompt
versionPrints CLI versionalchemy version

Feedback

feedback submits product feedback for the authenticated Alchemy user/team. It uses browser-login auth and does not require a selected app or app API key.

alchemy feedback Love the new usage command
printf "Line one\nLine two\n" | alchemy feedback -

Usage API (alpha)

The usage commands are in alpha — the response shape may change, and access is limited to teams enrolled in the Usage API alpha.

Usage time-series ranges are limited by plan:

PlanMaximum range
Free1 day
Pay as You Go7 days
Enterprise90 days of daily usage
Longer rangesContact sales

Hourly queries (--granularity hour) are limited to the last 7 days on every plan.

The CLI fetches the full requested range. The Usage API pages responses in 7-day chunks; the CLI follows those pages automatically.

alchemy --json usage summary
alchemy usage timeseries --start-date 2026-06-01 --granularity day

Flags

Global flags

These apply to all commands.

Auth & network

FlagEnv varDescription
--api-key <key>ALCHEMY_API_KEYAPI key for blockchain query commands
-n, --network <network>—Target network for networked commands
--x402—Enable x402 wallet-based gateway auth
--wallet-key-file <path>—EVM wallet private key file for x402 auth and local signing
--solana-wallet-key-file <path>—Solana wallet private key file for local signing

Output & formatting

FlagEnv varDescription
--json—Force JSON output (auto-enabled when piped)
-q, --quiet—Suppress non-essential output
--verbose—Enable verbose output
--no-colorNO_COLORDisable color output
--reveal—Show secrets in plain text (TTY only)

Runtime & behavior

FlagEnv varDescription
--timeout <ms>—Request timeout in milliseconds
--debug—Enable internal debug diagnostics
--no-interactive—Disable REPL and prompt-driven interactions

Referral

FlagEnv varDescription
--ref <source>ALCHEMY_REFReferral source tag, recorded once when telemetry state is first created (hidden from --help)

Additional env vars:

Env varDescription
ALCHEMY_CONFIGCustom path to config file
ALCHEMY_AUTH_TOKENAdmin API auth token override
ALCHEMY_WALLET_KEYEVM wallet private key for x402 auth and local signing
ALCHEMY_SOLANA_WALLET_KEYSolana wallet private key
ALCHEMY_ACTIVE_SIGNERActive EVM signer override (session or local)
ALCHEMY_EVM_GAS_SPONSOREDEnable EVM gas sponsorship when set to true
ALCHEMY_EVM_GAS_POLICY_IDEVM gas sponsorship policy ID
ALCHEMY_SOLANA_FEE_SPONSOREDEnable Solana fee sponsorship when set to true
ALCHEMY_SOLANA_FEE_POLICY_IDSolana fee sponsorship policy ID
ALCHEMY_WEBHOOK_API_KEYWebhook API key for Notify commands

Command-specific flags

CommandFlags
auth login--force, -y, --yes
evm data nfts--limit <n>, --page-key <key>
evm data nfts metadata--contract <address> (required), --token-id <id> (required)
evm data tokens balances--page-key <key>
evm data tokens allowance--owner <address> (required), --spender <address> (required), --contract <address> (required)
evm data history--from-address <address>, --to-address <address>, --from-block <block>, --to-block <block>, --category <list>, --max-count <n>, --page-key <key>
evm data price address--addresses <json> (required)
evm data price historical--body <json> (required)
evm data portfolio *--body <json> (required per subcommand)
evm simulate *--tx <json> or --txs <json> (required)
evm send-n, --network <network> (required), --token <address>, --gas-sponsored, --gas-policy-id <id>, --signer <session|local>
evm contract call--args <json>, --abi-file <path>, --abi <json>, --value <ether>, --gas-sponsored, --gas-policy-id <id>, --signer <session|local>
evm swap quote--from <token_address>, --to <token_address>, --amount <number>, --slippage <percent>, --signer <session|local>
evm swap execute--from <token_address>, --to <token_address>, --amount <number>, --slippage <percent>, --gas-sponsored, --gas-policy-id <id>, --signer <session|local>
evm approve--token-address <token_address>, --amount <decimal_amount>, --unlimited, --revoke, --reset-first, -y, --yes, --gas-sponsored, --gas-policy-id <id>, --signer <session|local>
xchain bridge quote--from <token_address>, --to <token_address>, --amount <number>, --to-network <network>, --slippage <percent>, --signer <session|local>
xchain bridge execute--from <token_address>, --to <token_address>, --amount <number>, --to-network <network>, --slippage <percent>, --gas-sponsored, --gas-policy-id <id>, --signer <session|local>
x402 request-X, --method <method>, -H, --header <header>, -d, --data <body>, --scheme <gateway|exact|any>, --max-payment <usdc>, --estimate, -o, --output <file>, -y, --yes, --signer <session|local>
x402 balance--address <address>, --testnet, --signer <session|local>
wallet connect--mode <session|local>, --chain <evm|solana|both>, --import <path>, --instance-name <name>, --force
wallet status--verify
wallet qr--type <evm|solana>, --solana
solana send--token <mint>, --dry-run, --fail-if-associated-token-account-missing, --from-token-account <address>, --recipient-token-account <address>, --fee-sponsored, --fee-policy-id <id>, --signer <session|local>
solana program accounts--filters <json>, --encoding <encoding>, --limit <n>
solana delegate approve--token-account <address>, --mint <address>, --delegate <address>, --amount <number>, --decimals <n>, --fee-sponsored, --fee-policy-id <id>
solana delegate revoke--token-account <address>, --fee-sponsored, --fee-policy-id <id>
webhook *--webhook-api-key <key> (or ALCHEMY_WEBHOOK_API_KEY, ALCHEMY_NOTIFY_AUTH_TOKEN, config webhook-api-key, or app webhook key)
app list--cursor <cursor>, --limit <n>, --all, --search <query>, --id <appId>
app create--name <name> (required), --networks <networks> (required), --description <desc>, --products <products>, --dry-run
app update--name <name>, --description <desc>, --dry-run
app delete--dry-run, -y, --yes
app networks--networks <networks> (required), --dry-run
app address-allowlist--addresses <addrs> (required), --dry-run
app origin-allowlist--origins <origins> (required), --dry-run
app ip-allowlist--ips <ips> (required), --dry-run
app configured-networks--app-id <id>
init--client <claude,cursor,codex,all>, --no-login, --no-mcp, --no-skills, --no-agents-md, --dry-run
install mcp--client <claude,cursor,codex,other,all>, --dry-run
install skills--client <claude,cursor,codex,all>, --dry-run
evm network list--mainnet-only, --testnet-only, --search <term>
config setwebhook-api-key, app, network, verbose, wallet-key-file, x402, evm-gas-sponsored, evm-gas-policy-id, solana-fee-sponsored, solana-fee-policy-id
config reset-y, --yes

Authentication Reference

# Interactive login — opens browser to link your Alchemy account
alchemy auth

# Skip the confirmation prompt
alchemy auth -y

# Force re-authentication
alchemy auth login --force

# Check auth status
alchemy auth status

# Log out
alchemy auth logout

After login, the CLI prompts you to select a team, if you belong to more than one, and then an app. The app's API key is saved to config and used for all subsequent commands. If you skip app selection during login, the CLI will prompt you to pick one before running any command that needs an API key.

Notify/webhook commands use a webhook API key with resolution order: --webhook-api-key -> ALCHEMY_WEBHOOK_API_KEY -> ALCHEMY_NOTIFY_AUTH_TOKEN -> config webhook-api-key -> configured app webhook key.

Telemetry

This section describes the CLI's opt-out usage telemetry: what it covers, when you are told about it, and how to turn it off.

Collection is enabled by default. The opt-out controls below apply before any events are collected or sent.

What is collected: commands and setup steps, outcomes and timing, CLI version, Node major version, OS and environment (CI, terminal, JSON or REPL mode), network, flag names, referral source, and the detected AI tool and its version, when known.

Linked to: your Alchemy user and team IDs, your plan, and random install and per-run IDs.

Never collected: prompts, secrets, addresses, file paths, or argument values other than allowlisted network and referral labels.

When the notice appears: the first time telemetry would apply, the CLI shows a one-time notice describing the above.

  • In a terminal: before the first command.
  • In JSON mode (--json, or whenever stdout is piped): inside the error JSON as error.notice if the first command fails, otherwise as one JSON line on stderr after the result: {"notice": "..."}.
  • Pre-parse failures and the --help / --version flags don't show it. Nothing from those runs is collected, and the notice appears on the next command.

Opting out:

alchemy telemetry disable           # persistent opt-out; deletes queued events
alchemy telemetry enable            # opt back in
alchemy telemetry status            # show the current state
export ALCHEMY_TELEMETRY_DISABLED=1 # or DO_NOT_TRACK=1, per shell or CI job

ALCHEMY_TELEMETRY_DISABLED and DO_NOT_TRACK turn telemetry off whenever they're set to a truthy value such as 1, regardless of the saved preference. Empty, 0, false, no and off don't count.

Where state lives: $XDG_CONFIG_HOME/alchemy/telemetry.json (default ~/.config/alchemy/telemetry.json), or next to the file named by ALCHEMY_CONFIG. It holds a random install ID, the on/off preference and the referral source. Whether the notice was shown is recorded separately in telemetry/notice-shown in the same directory.

Referral source: --ref <source> or ALCHEMY_REF is recorded once, when the telemetry state is first created, and ignored afterwards.

REPL Mode

Run alchemy with no command in an interactive terminal:

alchemy
alchemy ◆ evm data balance 0x...
alchemy ◆ evm block latest
alchemy ◆ exit

Use --no-interactive to disable REPL/prompts in automation.

Output Modes

  • TTY (terminal): formatted human output (tables, colors, spinners)
  • Non-TTY (piped/redirected): JSON output automatically — no flag needed
  • --json: forces JSON output even in a terminal
  • --verbose or alchemy config set verbose true: logs request/response details (method, URL, status, timing) to stderr

Error Format

Errors are structured JSON in JSON mode:

{
  "error": {
    "code": "AUTH_REQUIRED",
    "message": "Not authenticated. Run 'alchemy auth' to log in, or set ALCHEMY_API_KEY.",
    "hint": "alchemy auth"
  }
}

版本与发布记录

@alchemy/cli 共发布 77 个版本,首次发布于 2026/03/12;过去 12 个月发布了 77 个版本。

版本发布日期距今
0.30.0latest2026/10/2811 天前
0.29.02026/10/2811 天前
0.28.02026/10/2415 天前
0.27.02026/10/2415 天前
0.26.72026/10/2415 天前
0.26.62026/10/2415 天前

其他发布通道:alpha → 0.23.1-alpha.118。

关于 @alchemy/cli 的常见问题

@alchemy/cli 是什么?

Alchemy CLI — interact with blockchain data

如何安装 @alchemy/cli?

在项目目录运行 npm install @alchemy/cli,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 alchemy,可以用 npx alchemy 直接运行。

@alchemy/cli 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/alchemy__cli 是否存在。

@alchemy/cli 支持 ESM 还是 CommonJS?

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

@alchemy/cli 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@alchemy/cli 可以商用吗?

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

@alchemy/cli 的下载量有多少?

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

@alchemy/cli 还在维护吗?

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