インストール
Kozou は 3 つのチャネルで提供されます。GHCR で公開されている Docker ランタイムイメージ、npm パッケージ群 (CLI とライブラリ)、そしてそれらを Docker Compose で結びつけるプロジェクト scaffold です。このページではそれぞれの方式を説明します。スタックを最短で動かしたいだけなら、option A から始めて、その後 Quickstart を読んでください。
現在公開されているリリースは v0.1.1 です。
v0.1.1 のランタイム要件です。
- PostgreSQL 16 以降 — Kozou が読み取る、信頼できる唯一の情報源です。
- Docker 24 以降 (任意) —
docker compose upスタックには推奨され、ランタイムイメージを直接 pull したい場合には必須です。 - Node.js 20 以降 — npm で公開されているパッケージを直接実行する場合 (例:
npx kozou …) に必要です。
コントリビューターはモノレポをビルドするために、加えて pnpm 9 以降 が必要です。開発環境のセットアップについては Contributing を参照してください。
オプション A — Scaffold + Docker Compose
Section titled “オプション A — Scaffold + Docker Compose”これが最もシンプルな方式です。create-kozou scaffold は Docker Compose 向けに配線済みのプロジェクトディレクトリを生成するため、docker compose up 一発でスタック全体が立ち上がります。すなわち PostgreSQL、REST レイヤー、そして kozou dev (バンドルされた Admin UI と MCP HTTP サーバー) を実行する kozou サービスです。
create-kozou は独立した npm パッケージではなく kozou パッケージのセカンダリ bin として提供されるため、クリーンなマシンで npx がこれを見つけるには -p kozou が必要です。
# Scaffold a project.npx -p kozou create-kozou my-projectcd my-project
# Copy the env template, then bring up the full stack.cp .env.example .envdocker compose upscaffold が生成するもの:
docker-compose.yml— PostgreSQL、PostgREST、そしてkozou devを実行して Admin UI と MCP HTTP サーバーをホストするkozouサービスを立ち上げます。kozou.config.yaml— すべての Kozou コマンドを駆動する設定ファイルです。ui-hints.yaml—kozou.config.yamlから参照される UI ヒントです。.env.example—DATABASE_URLと関連する値を供給するために.envへコピーするテンプレートです。
スターターのマイグレーションも含まれているため、データベースは introspect するためのスキーマを備えた状態で立ち上がります。
デフォルトでは Admin UI はポート 3333 で、MCP HTTP サーバーは 3334 で待ち受けます。これらは kozou.config.yaml の server.ui と server.mcp.http で上書きできます。
オプション B — GHCR ランタイムイメージ
Section titled “オプション B — GHCR ランタイムイメージ”CLI ランタイムは GitHub Container Registry にマルチアーキテクチャの manifest として公開されており、linux/amd64 と linux/arm64 の両方でネイティブに動作します。Node.js をローカルにインストールせずに kozou CLI を実行したい場合は、直接 pull してください。
docker pull ghcr.io/kozou-dev/kozou:v0.1.1任意のサブコマンドは docker run に付け加えて実行します。例えば inspect のフラグを確認するには次のようにします。
docker run --rm ghcr.io/kozou-dev/kozou:v0.1.1 inspect --help同じパターンが MCP サーバーでも使えます。
docker run --rm ghcr.io/kozou-dev/kozou:v0.1.1 mcp --helpこのイメージは kozou CLI と Admin UI をバンドルしています。PostgREST はバンドルされていません — Compose スタックでは並列のコンテナとして実行されます。
オプション C — npm CLI
Section titled “オプション C — npm CLI”bin エントリを $PATH に通すために、CLI をグローバルにインストールします。
npm install -g kozouこれにより 2 つの bin が公開されます。
kozou— メインのマルチコマンド CLI (inspect/mcp/dev)。create-kozou— プロジェクトディレクトリを scaffold します (option A で使われるジェネレーター)。
グローバルインストールせずに CLI を実行するには npx を使います。
npx kozou inspect --helpCLI には到達可能な PostgreSQL と kozou.config.yaml が必要です。バンドルされている設定テンプレートは、${DATABASE_URL} プレースホルダーを通じて接続文字列を DATABASE_URL 環境変数から読み取るため、コマンドを呼び出す際にこれを設定してください。
DATABASE_URL=postgres://kozou:kozou@localhost:5432/kozou \ kozou inspect --format yaml > schema.yamlkozou inspect は設定されたデータベースを introspect し、Schema Context を stdout (または --output <path>) へ出力します。kozou mcp --stdio は stdio 経由で MCP サーバーを起動します。kozou mcp --http は同じツール群を HTTP 経由で提供します (--port / --host でリスナーを設定し、stdio がデフォルトのまま維持されます)。kozou dev は Admin UI を MCP HTTP サーバーと並べて実行し、どちらも kozou.config.yaml から配線されます。
最小限の kozou.config.yaml は次のようになります。
database: url: ${DATABASE_URL} schemas: [public]
adapter: type: postgrest url: ${KOZOU_ADAPTER_URL:-http://postgrest:3000}
uiHints: path: ./ui-hints.yaml${VAR} と ${VAR:-default} は、設定の読み込み時にプロセス環境から展開されます。
REST アダプター: v0.1 はその REST サーフェスを PostgREST (上に示した
postgrestアダプター) を通じて出力します。v0.2 系では 実験的 な自社製 REST レイヤー@kozou/apiが追加され、kozou dev --adapter api経由で到達できます。これは実験的です — v0.1.1 ではpostgrestがデフォルトのままです。
オプション D — 組み込み用ライブラリパッケージ
Section titled “オプション D — 組み込み用ライブラリパッケージ”カスタムホストを構築したり、MCP サーバーを自分のアプリケーションに埋め込んだりする場合は、ワークスペースパッケージを npm からインストールします。
npm install kozou @kozou/core @kozou/introspect @kozou/mcp @kozou/svelte-uiこれらにより、introspection エンジン (@kozou/introspect)、コアコンパイラ (@kozou/core)、MCP サーバー (@kozou/mcp)、リファレンス Admin UI コンポーネント (@kozou/svelte-ui) が手に入り、kozou CLI もそれらと一緒に提供されます。
インストールの確認
Section titled “インストールの確認”CLI が解決され、そのコマンドサーフェスを出力することを確認します。
kozou inspect --help代わりにランタイムイメージを pull した場合は、Docker 経由で同等のコマンドを実行します。
docker run --rm ghcr.io/kozou-dev/kozou:v0.1.1 inspect --helpどちらもエラーなく inspect のフラグを出力するはずです。ここから CLI をデータベースに向けて、実際の出力を生成しましょう — status カラム (draft / published / archived) を持つ products テーブルや orders リレーションが、最初の対象として適しています。
次のステップ
Section titled “次のステップ”- Getting started — Kozou の背後にある概念と、各要素がどのように噛み合うか。
- Quickstart — 空のディレクトリから、動作する Admin UI とライブな MCP コンテキストへ。