Claude Code を 23 プラグインで拡張する「夜市」——TDD・PR・スペック駆動開発をワンコマンドで

タグ Claude Codeプラグイン拡張TDDスペック駆動開発コードレビューGit自動化開発ワークフローcolumnコラムlinuxLinuxwindowsWindowsGitHubオープンソースatholaclaude-night-market

Claude Code を 23 プラグインで拡張する「夜市」——TDD・PR・スペック駆動開発をワンコマンドで

ひとことでいうと

Claude Night Market は、Anthropic(アンソロピック)が提供する AI コーディングツール「Claude Codeclaude コマンド)」をプラグインで拡張するマーケットプレイスです。テスト駆動開発の強制・Git 操作の自動化・コードレビュー・仕様書の管理など、開発現場で繰り返し発生する作業を 23 本のプラグインにまとめて提供しています。バージョン 1.9.11 時点で 196 スキル・128 コマンド・54 エージェントを収録しており、必要なプラグインだけを選んで追加できる設計になっています。ひと言でいえば「Claude Code を自分のチームに合った開発補助ツールへ育てるキット」です。

こんな人におすすめ

1. Claude Code を毎日の開発に使っている方 機能の企画から仕様策定・実装・プルリクエスト(PR)の準備まで、/attune:mission というコマンド 1 本で順番に案内してくれます。「次に何をすべきか」を都度考える手間が減り、作業の流れを自然に整えられます。

2. チームのコード品質を自動でガードしたい Tech Lead(技術責任者)の方 imbue(インビュー)プラグインが「テストを先に書いてから実装する」という順番を強制します。テスト抜けによるバグの混入を、ローカル環境のフック(自動チェック機能)レベルで防ぎたいチームに向いています。

3. 複数の AI モデルを組み合わせて実験したい方 conjure(コンジュアー)プラグインは Google の Gemini や Alibaba の Qwen(チュエン)など、Claude 以外の AI モデルへの処理委譲をサポートしています。異なる AI を連携させたシステムを試したい研究者・エンジニアにも活用の余地があります。

インストール・使い方

前提条件: Claude Code 2.1.16 以上、Python(パイソン)3.9 以上が必要です。
「ターミナル」とは文字を入力してパソコンに命令を送る画面のことです。以下のコマンドはすべてコピー&ペーストで使えます。


Step 1 — マーケットプレイスをリポジトリに登録する

「リポジトリ」とはソースコードの置き場のことです。まず Night Market を Claude Code に認識させます。

/plugin marketplace add athola/claude-night-market

このコマンドを実行すると、23 本のプラグインのカタログが Claude Code から参照できる状態になります。


Step 2 — 必要なプラグインを個別にインストールする

代表的な 3 本の例を示します。用途に合わせて選んでください。

/plugin install sanctum@claude-night-market    # Git・コミット・PR 準備
/plugin install pensive@claude-night-market    # コードレビュー・アーキテクチャレビュー
/plugin install spec-kit@claude-night-market   # スペック駆動開発

各プラグインが依存する共有ランタイム(動作に必要な共通部品)は自動で導入されるため、手動で依存関係を解決する必要はありません。


Step 3 — Claude Code を初期化してフックを有効化する

「フック」とはコマンド実行時に自動で動く検査機能のことです。

claude --init

これでプラグインが定義するチェック処理が有効になります。


まとめてインストールしたい場合

全プラグインを一括で追加するには以下を使います。

npx skills add athola/claude-night-market

特定のプラグインだけに絞りたい場合は --plugins フラグで指定できます。

opkg i gh@athola/claude-night-market --plugins sanctum,pensive

sanctumpensive だけをインストールする例です。不要なプラグインを入れずに済むため、小規模チームでのスリムな構成にも向いています。

動かしてみた

Docker(ドッカー)環境(Python 3.12.13)でリポジトリの構成を確認しました。主なファイルの配置は次のとおりです。

./.pre-commit-config.yaml        ← コミット前の自動チェック設定
./conftest.py                    ← pytest(テストツール)の共通設定
./plugins/conftest_shared.py     ← プラグイン間で共有されるテスト設定
./scripts/run-plugin-tests.sh    ← テスト一括実行スクリプト
./scripts/run-plugin-typecheck.sh
./scripts/reinstall-all-plugins.sh
./scripts/clawhub-submit.sh

plugins/ フォルダの中に各プラグインが整理されており、scripts/ には型チェック・テスト実行・再インストールといった作業を自動化するスクリプトが揃っていることを確認できました。conftest.pyplugins/conftest_shared.py の存在から、pytest による統合テスト体制が整備されていることもわかります。依存パッケージは uv.lock(ロックファイル)で管理されており、環境を問わず同じバージョンが再現できる仕組みになっています。Python 3.12 環境でのパッケージインストールもスムーズに進みました。

ブラウザで試す(デモ)

手元に Claude Code 環境がなくても、ブラウザ上で 23 本のプラグインのカタログをインタラクティブ(対話的)に閲覧できるデモページが用意されています。各プラグインの概要・レイヤー分類・主要スキル一覧をひと目で確認できるため、インストール前の下調べに役立ちます。

実践のコツ・はじめの一歩

  • Foundation の 3 本から始める: Night Market のプラグインは Foundation → Utility → Domain → Meta の 4 層構造になっています。leylinesanctumimbue の 3 本が全プラグインの基盤となるため、まずこの 3 本を入れると依存エラーを防げます。
  • /attune:mission を起点に使う: 機能開発を始めるたびにこのコマンドを実行すると、ブレインストーム → 仕様策定 → 計画 → 実装のフェーズを順番に案内してくれます。「どこから手を付ければいいか」が明確になります。
  • TDD(テスト駆動開発)のゲートは外さない: imbue が強制する「テストを先に書く」ルールは、prepare-pr(PR 準備コマンド)の品質ゲートとも連動しています。この順番ごと習慣にするとワークフロー全体がスムーズになります。
  • CONSTITUTION.md を一読する: プロジェクト初期に hookify(フック管理プラグイン)が設定するルールの一覧が記載されています。rm -rfgit push --force のような破壊的なコマンドを自動検出・警告する仕組みもあるため、どのルールが変更可能でどこが固定かを把握しておくと安心です。
  • カスタムプラグインを自分で作る: make create-plugin NAME=my-plugin でプラグインのひな型が生成されます。チーム固有のルールや手順をプラグイン化してリポジトリに追加できます。

用語とポイント解説

Claude Code(クロード コード) Anthropic が提供する AI コーディングツールです。かんたんに言うと「ターミナルから呼び出せる AI アシスタント」で、コードの生成・レビュー・リファクタリングなどを自然言語の指示で行えます。

プラグイン ソフトウェアに機能を追加する小さな部品のことです。かんたんに言うと「アプリのアドオン(拡張機能)」で、Night Market では 23 本のプラグインを用途に合わせて選べます。

TDD(テスト駆動開発) 実装コードより先にテストコードを書き、テストが通るように実装を進める開発手法です。かんたんに言うと「先に答え合わせのルールを決めてから問題を解く」スタイルで、バグの早期発見に効果的です。

フック(Hook) 特定の操作(コミット・コマンド実行など)をトリガーに自動で走る処理のことです。かんたんに言うと「〇〇したら自動でチェックが動く仕掛け」で、人が忘れがちな検査を自動化できます。

スペック駆動開発 仕様書(スペック)を先にまとめてから実装を進める開発スタイルです。かんたんに言うと「設計図を描いてから家を建てる」方式で、spec-kit プラグインがその仕様書の作成・管理を支援します。

leyline(ライライン) Night Market の Foundation 層を担うプラグインのひとつです。かんたんに言うと「他のプラグインが共通して使う土台」で、このプラグインが入っていないと多くの機能が動きません。

imbue(インビュー) TDD ゲートを担うプラグインです。かんたんに言うと「テストなしの実装を自動で弾く門番」で、prepare-pr コマンドとも連動してコード品質を守ります。

sanctum(サンクタム) Git 操作・コミット・PR 準備を担う Foundation 層のプラグインです。かんたんに言うと「Git まわりの作業をコマンド 1 本に集約するツール」で、/prepare-pr/commit といったコマンドを提供します。

pensive(ペンシブ) コードレビューとアーキテクチャレビューを担うプラグインです。かんたんに言うと「AI によるコードの多角的な見直し機能」で、/full-review コマンドで複数の観点からレビューを自動実行できます。

uv.lock(ユーブイ ロック) Python の依存パッケージのバージョンを固定するロックファイルです。かんたんに言うと「使うライブラリの版を全員そろえるための控え書き」で、環境が変わっても同じ構成を再現できます。

conjure(コンジュアー) Gemini・Qwen など Claude 以外の AI モデルへの処理委譲を担うプラグインです。かんたんに言うと「別の AI に作業を頼むときの橋渡し役」で、複数モデルを組み合わせたエージェント構成を試せます。

4 層アーキテクチャ(Foundation / Utility / Domain / Meta) Night Market のプラグインが役割で分かれた 4 つの階層のことです。かんたんに言うと「土台→汎用部品→業務機能→管理機能」という積み重ね構造で、必要な層だけを選んで組み合わせられます。

活用例・活用アイデア

  • OSS(オープンソース)メンテナの PR レビュー自動化: /full-review を PR 作成前にローカルで実行し、多角的なレビューを GitHub に出す前に完結させます。指摘への対応は /fix-pr でまとめて処理できます。

  • 新規プロジェクトのゼロからの立ち上げ: /attune:arch-init でアーキテクチャの初期化、spec-kit/speckit-specify で仕様文書化、imbue でテストファーストのサイクルを確立する一連のフローが 3 コマンドで揃います。

  • 数日ぶりの作業再開に使う文脈復元: /catchup コマンドが直近の git 履歴から変更の要点を再構築してくれます。「どこまでやっていたか」を確認する時間を大幅に短縮できます。

  • チーム固有ルールのプラグイン化: make create-plugin NAME=my-plugin でひな型を生成し、コードスタイルや社内コーディング規約をプラグインとして組み込めます。新メンバーへのオンボーディング資料としても機能します。

  • 異種 AI を組み合わせた実験的な開発フロー: conjure で Gemini や Qwen に特定のタスクを委譲しながら、Claude Code が全体の調整役を担う構成を試せます。モデルごとの得意領域を活かした実験環境の構築に向いています。

  • 長期運用プロジェクトの品質維持: hookify が破壊的コマンドを自動検出して警告するため、チームメンバーが増えても「うっかり git push --force をかけてしまう」事故を減らせます。CI(継続的インテグレーション)の補完としてローカルガードを設けたいチームに適しています。

まとめ・用語の整理

Claude Night Market は Claude Code を「スキルの集合体」として拡張するプラグイン基盤です。単機能のスクリプト集ではなく、Foundation から Meta まで責務が明確に分離された 4 層アーキテクチャを持ちます。TDD の強制・破壊的コマンドの検出・引用検証(citation_verifier.py)など、AI によるコード生成を実務レベルで使うための安全機能も内包しています。必要なプラグインだけを選んでチームの開発ループに組み込める設計のため、大規模チームにも個人開発にも応用できます。MIT ライセンスで公開されており、カスタムプラグインの作成ガイドも整備されているため、既存の仕組みを活かしながら自分たちの環境に合わせて育てていける点も魅力です。

ぜひ OSS プロジェクトの PR レビュー自動化新規サービスのゼロからの立ち上げフローなどに活用してみてはいかがでしょうか。