rust-node-bootstrap について
Rust と Node.js のハイブリッドプロジェクトを、ゼロから、または既存リポジトリへの機能追加として構築するスキルです。設定、パッケージラッパー、スクリプト、CI・公開ワークフローと検証手順を整えます。
主な機能
- 01プロジェクトのルート設定を生成
- 02Rust ワークスペースと npm パッケージラッパーを設定
- 03CI と公開ワークフローを追加
- 04LeanSpec 設定と specs を初期化
- 05ビルドとワークスペースのチェックを実行
活用シーン
- 01新しい Rust・Node.js ハイブリッドプロジェクトを開始
- 02既存プロジェクトに不足する基盤を段階的に追加
- 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.mdproject-structure.mdtemplates/.gitignoreAGENTS.mdtemplates/.lean-spec/config.jsontemplates/bootstrap/Cargo.tomlpackage.jsonpnpm-workspace.yamlpublish.config.tsturbo.jsontemplates/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 | はい |
| リポジトリ URL | github.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
ファイル生成の順序
順序が重要です。後続のファイルは先行するファイルに依存します。
- ルート設定 —
package.json、pnpm-workspace.yaml、Cargo.toml、turbo.json。templates/bootstrap/ を使用します。 - 公開設定 —
publish.config.ts(スクリプトとワークフローの生成を制御します) - メインパッケージのラッパー — rust-npm-publish スキルのテンプレートから
bin.jsとpackage.jsonを用意し、スコープ/バイナリ名/プラットフォームを設定します - スクリプト — rust-npm-publish スキルのテンプレートからコピーします
- ワークフロー — rust-node-ci スキルのテンプレートからコピーし、マトリックスをカスタマイズします
- LeanSpec —
.lean-spec/config.jsonとspecs/を初期化します - AGENTS.md — インストール済みのスキルを記載した、プロジェクトレベルのエージェント向け指示
検証
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 対応