ローカルとグローバルのツール、bin、チーム向けワークフロー
グローバルインストールよりもローカル(プロジェクト)のツールを優先します。packageの「bin」コマンド、npm-runのPATH、シンプルなチームワークフローを理解します。
「ローカルとグローバルのツール、bin、チーム向けワークフロー」はCoddyKit上の無料JavaScript Academyレッスンです。 これはレッスン3/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJavaScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 JavaScript Academyコースには全3レッスンが含まれています。
ローカルツールを使う理由
目標:どこでも同じツールを実行できるようにします。
- ローカルツール(devDependencies)を優先します
- npm scriptsを使うと、PATHにローカルのnode_modules/.binが含まれます
- パッケージのbinエントリの意味を理解します
- グローバル環境の差異を避けます

ローカルツールを優先する
npm runは、プロジェクトで指定したツールのバージョンを使うために、node_modules/.binを自動的にPATHへ追加します。
// Emulate running a tool locally vs globally
function runLocal() {
console.log("npm run lint");
console.log("→ uses node_modules/.bin/eslint (project version)");
}
function runGlobal() {
console.log("eslint .");
console.log("→ might use a different global version on each machine");
}
runLocal();
runGlobal();

CLIが利用可能になる仕組み
パッケージのbinフィールドによって、node_modules/.binに実行可能ファイル(例:mytool)が作成されます。
// Packages expose CLI commands via "bin" in package.json
const pkgLines = [
"{",
" \"name\": \"my-tool\",",
" \"version\": \"1.0.0\",",
" \"bin\": {",
" \"mytool\": \"./dist/cli.js\"",
" }",
"}"
];
for (const l of pkgLines) console.log(l);
// Install as devDependency => creates node_modules/.bin/mytool
console.log("After install: run with npm run or npx mytool");

スクリプト内のPATH
npm scriptsの中では、変更されたPATHによってローカルツールが自動的に見つかります。
// When using npm run <name>, PATH includes node_modules/.bin first
const envExplain = [
"npm run build -> PATH starts with node_modules/.bin",
"so running \"vite\" resolves to ./node_modules/.bin/vite"
];
for (const l of envExplain) console.log(l);

チームでのワークフロー
ワークフロー:
- devDependencyとして追加します
- scriptを作成します
- lockfileをコミットします
- クリーンインストールにはnpm ciを使います
// Team checklist for consistent tools
const checklist = [
"1) Add tool to devDependencies",
"2) Add an npm script (e.g., \"lint\")",
"3) Commit package.json and lockfile",
"4) Teammates run: npm ci && npm run lint"
];
for (const step of checklist) console.log(step);

グローバルは例外的に
グローバルインストールが適するまれなケース:
- 手動で使うシステム全体のユーティリティ(例:簡単なテスト用のhttp-server)
- ただし、1回だけ使うツールにはnpxを、チームではプロジェクトローカルへのインストールを優先します

ローカルとグローバルのクイズ
クイックチェック:ツールのバージョンを一貫させます。

まとめ
まとめ:ツールはローカルにインストールし、binでCLIを利用可能にし、npm scriptsから実行します(PATHには.binが含まれます)。lockfileをコミットし、グローバル環境の差異を避けます。

よくある質問
「ローカルとグローバルのツール、bin、チーム向けワークフロー」レッスンは無料ですか?
はい。「ローカルとグローバルのツール、bin、チーム向けワークフロー」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、JavaScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 JavaScript Academyコースには全3レッスンが含まれています。
「ローカルとグローバルのツール、bin、チーム向けワークフロー」で何を学びますか?
グローバルインストールよりもローカル(プロジェクト)のツールを優先します。packageの「bin」コマンド、npm-runのPATH、シンプルなチームワークフローを理解します。 ブラウザで直接実行するハンズオンコードでJavaScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
JavaScript Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのJavaScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/3です。
「ローカルとグローバルのツール、bin、チーム向けワークフロー」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このJavaScript Academyレッスンでコードを書いて実行できますか?
はい。すべてのJavaScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- package.json、scripts、dependenciesとdevDependencies
- npxとセマンティックバージョニングの範囲指定
- ローカルとグローバルのツール、bin、チーム向けワークフロー