mcpField
R
rust-node-bootstrap

rust-node-bootstrap

github.com/onsager-ai开发760 次安装2 周前更新
代码仓库

关于 rust-node-bootstrap

用于搭建 Rust 与 Node.js 混合项目的技能,可从零生成结构,也可为现有仓库补齐缺失基础设施。它按依赖顺序组织配置、包封装、脚本、CI 与发布流程,并提供验证步骤。

主要功能

  1. 01生成项目根配置
  2. 02设置 Rust 工作区和 npm 包封装
  3. 03添加 CI 与发布工作流
  4. 04初始化 LeanSpec 配置和 specs
  5. 05运行构建与工作区检查

适用场景

  1. 01启动新的 Rust 与 Node.js 混合项目
  2. 02逐步补齐现有项目的基础设施
  3. 03为仓库配置 CI 和发布文件

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/onsager-ai/dev-skills --skill rust-node-bootstrap

安装后在 Claude Code 中输入/rust-node-bootstrap确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
checklist.md
project-structure.md
templates/
.gitignore
AGENTS.md
templates/.lean-spec/
config.json
templates/bootstrap/
Cargo.toml
package.json
pnpm-workspace.yaml
publish.config.ts
turbo.json
templates/specs/
README.md

详细介绍

Rust+Node.js 项目引导

一站式搭建 Rust+Node.js 混合项目的所有基础设施。

何时使用此技能

符合以下任一条件时启用:

  • 用户提到“bootstrap”(引导)、“scaffold”(搭建脚手架)、“new project”(新建项目)或“set up from scratch”(从头开始设置)
  • 仓库中有 Cargo.toml 或 package.json,但缺少另一个
  • 缺少 .github/workflows/、scripts/ 或 publish.config.ts
  • 逐步为现有项目添加 forge 基础设施

决策树

Starting from scratch?
  YES → Full scaffold (all steps in order below)
  NO  → Incremental setup ↓

Has package.json?       → NO: Create root package.json + pnpm-workspace.yaml
Has Cargo.toml?         → NO: Create Cargo workspace
Has .github/workflows/? → NO: Generate from rust-node-ci skill templates
Has scripts/?           → NO: Generate from rust-npm-publish skill templates
Has publish.config.ts?  → NO: Create from rust-npm-publish skill examples
Has specs/?             → NO: Initialize LeanSpec

收集项目信息

字段示例必填
项目名称my-tool是
npm 作用域@myorg是
Rust 二进制名称my-cli是
Cargo 软件包名称my-cli-rs是
主要 npm 软件包packages/cli是
仓库 URLgithub.com/myorg/my-tool是
平台darwin-x64, darwin-arm64, linux-x64, windows-x64否(默认:全部 4 个)

脚手架结构

完整的注释版目录树请参阅 references/project-structure.md。

my-tool/
├── .github/workflows/       ← CI + publish workflows
├── .lean-spec/config.json   ← LeanSpec configuration
├── specs/                   ← Spec-driven development
├── packages/cli/            ← Main npm package (thin JS wrapper)
│   ├── package.json         ← bin + optionalDependencies
│   └── bin.js               ← Resolves platform binary, spawns it
├── rust/                    ← Rust workspace
├── scripts/                 ← Publish & version scripts
├── publish.config.ts        ← Publish pipeline configuration
├── package.json             ← Root (version source of truth)
├── pnpm-workspace.yaml      ← pnpm workspace definition
└── Cargo.toml               ← Rust workspace manifest

文件生成顺序

顺序很重要——后续文件依赖前面的文件:

  1. 根配置 — package.json、pnpm-workspace.yaml、Cargo.toml、turbo.json。使用 templates/bootstrap/。
  2. 发布配置 — publish.config.ts(用于生成脚本和工作流)
  3. 主要软件包封装 — 使用 rust-npm-publish 技能模板中的 bin.js + package.json,填入作用域、二进制名称和平台
  4. 脚本 — 从 rust-npm-publish 技能模板复制
  5. 工作流 — 从 rust-node-ci 技能模板复制,并自定义矩阵
  6. LeanSpec — 初始化 .lean-spec/config.json 和 specs/
  7. AGENTS.md — 项目级 Agent 指令,列出已安装的技能

验证

pnpm install && pnpm build && cargo check --workspace && pnpm tsx scripts/sync-versions.ts

完整的引导后检查清单请参阅 references/checklist.md。

安装配套技能

搭建脚手架后,安装用于持续开发的技能:

# CI/CD workflows and composite actions
npx skills add -g onsager-ai/dev-skills --skill rust-node-ci -a claude-code -y

# npm publishing pipeline and versioning
npx skills add -g onsager-ai/dev-skills --skill rust-npm-publish -a claude-code -y

模板

目录内容
templates/bootstrap/根配置:package.json、Cargo.toml、pnpm-workspace.yaml、turbo.json、publish.config.ts

设置与激活

npx skills add -g onsager-ai/dev-skills --skill rust-node-bootstrap -a claude-code -y

在 Rust+Node.js 上下文中,用户提到“bootstrap”(引导)、“scaffold”(搭建脚手架)、“new project”(新建项目)或“init”(初始化)时自动激活。

评论

支持 Markdown