From 7835bf89726a8a1cc66578ff1c730afa58e501e2 Mon Sep 17 00:00:00 2001 From: "takemi.ohama" Date: Sun, 23 Aug 2026 01:41:31 +0900 Subject: [PATCH 1/2] =?UTF-8?q?chore:=20env=20=E3=81=8B=E3=82=89=20project?= =?UTF-8?q?.yml=20=E3=81=B8=E6=A9=9F=E6=A2=B0=E7=A7=BB=E8=A1=8C=E3=81=99?= =?UTF-8?q?=E3=82=8B=20(PLAN32)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit devbase project migrate-config による変換 (6 プロジェクト)。 GIT_USER / GIT_REPO / WORK_DIR / CONTAINER_SCALE / DEVBASE_OPEN_EDITOR を project.yml へ移し、env はコンテナへ渡す環境変数だけを持つファイルにする。 Co-Authored-By: Claude Opus 5 (1M context) --- adminer/projects/adminer/env | 8 ++------ adminer/projects/adminer/project.yml | 8 ++++++++ ai-plugins/projects/ai-plugins/env | 8 ++------ ai-plugins/projects/ai-plugins/project.yml | 8 ++++++++ devbase/projects/devbase/env | 8 ++------ devbase/projects/devbase/project.yml | 8 ++++++++ github_work_time/projects/github_work_time/env | 8 ++------ github_work_time/projects/github_work_time/project.yml | 8 ++++++++ md-specgen/projects/md-specgen/env | 8 ++------ md-specgen/projects/md-specgen/project.yml | 8 ++++++++ tmllib/projects/tmllib/env | 8 ++------ tmllib/projects/tmllib/project.yml | 8 ++++++++ 12 files changed, 60 insertions(+), 36 deletions(-) create mode 100644 adminer/projects/adminer/project.yml create mode 100644 ai-plugins/projects/ai-plugins/project.yml create mode 100644 devbase/projects/devbase/project.yml create mode 100644 github_work_time/projects/github_work_time/project.yml create mode 100644 md-specgen/projects/md-specgen/project.yml create mode 100644 tmllib/projects/tmllib/project.yml diff --git a/adminer/projects/adminer/env b/adminer/projects/adminer/env index b61c426..a007866 100644 --- a/adminer/projects/adminer/env +++ b/adminer/projects/adminer/env @@ -1,6 +1,2 @@ -GIT_USER=vrana -GIT_REPO=adminer -WORK_DIR=/work/$GIT_REPO -CONTAINER_SCALE=1 -# up 完了後に dev コンテナへ接続した VS Code を自動で開く (PLAN31_3) -DEVBASE_OPEN_EDITOR=1 +# コンテナへ渡す環境変数を書く。 +# devbase 自身の設定 (リポジトリ・scale・エディタ) は project.yml にある。 diff --git a/adminer/projects/adminer/project.yml b/adminer/projects/adminer/project.yml new file mode 100644 index 0000000..948e898 --- /dev/null +++ b/adminer/projects/adminer/project.yml @@ -0,0 +1,8 @@ +# devbase プロジェクト設定 (PLAN32) +# リポジトリを増やすときは repos に要素を足す。 +version: 1 +scale: 1 +open_editor: true +repos: + - owner: vrana + repo: adminer diff --git a/ai-plugins/projects/ai-plugins/env b/ai-plugins/projects/ai-plugins/env index 5e778fc..a007866 100644 --- a/ai-plugins/projects/ai-plugins/env +++ b/ai-plugins/projects/ai-plugins/env @@ -1,6 +1,2 @@ -GIT_USER=devbasex -GIT_REPO=ai-plugins -WORK_DIR=/work/$GIT_REPO -CONTAINER_SCALE=1 -# up/list 完了後に dev コンテナへ接続した VS Code を自動で開く (PLAN31_3) -DEVBASE_OPEN_EDITOR=1 +# コンテナへ渡す環境変数を書く。 +# devbase 自身の設定 (リポジトリ・scale・エディタ) は project.yml にある。 diff --git a/ai-plugins/projects/ai-plugins/project.yml b/ai-plugins/projects/ai-plugins/project.yml new file mode 100644 index 0000000..97e062a --- /dev/null +++ b/ai-plugins/projects/ai-plugins/project.yml @@ -0,0 +1,8 @@ +# devbase プロジェクト設定 (PLAN32) +# リポジトリを増やすときは repos に要素を足す。 +version: 1 +scale: 1 +open_editor: true +repos: + - owner: devbasex + repo: ai-plugins diff --git a/devbase/projects/devbase/env b/devbase/projects/devbase/env index 51547c5..a007866 100644 --- a/devbase/projects/devbase/env +++ b/devbase/projects/devbase/env @@ -1,6 +1,2 @@ -GIT_USER=devbasex -GIT_REPO=devbase -WORK_DIR=/work/$GIT_REPO -CONTAINER_SCALE=1 -# up/list 完了後に dev コンテナへ接続した VS Code を自動で開く (PLAN31_3) -DEVBASE_OPEN_EDITOR=1 +# コンテナへ渡す環境変数を書く。 +# devbase 自身の設定 (リポジトリ・scale・エディタ) は project.yml にある。 diff --git a/devbase/projects/devbase/project.yml b/devbase/projects/devbase/project.yml new file mode 100644 index 0000000..2c77822 --- /dev/null +++ b/devbase/projects/devbase/project.yml @@ -0,0 +1,8 @@ +# devbase プロジェクト設定 (PLAN32) +# リポジトリを増やすときは repos に要素を足す。 +version: 1 +scale: 1 +open_editor: true +repos: + - owner: devbasex + repo: devbase diff --git a/github_work_time/projects/github_work_time/env b/github_work_time/projects/github_work_time/env index 590f830..a007866 100644 --- a/github_work_time/projects/github_work_time/env +++ b/github_work_time/projects/github_work_time/env @@ -1,6 +1,2 @@ -GIT_USER=takemi-ohama -GIT_REPO=github_work_time -WORK_DIR=/work/$GIT_REPO -CONTAINER_SCALE=1 -# up/list 完了後に dev コンテナへ接続した VS Code を自動で開く (PLAN31_3) -DEVBASE_OPEN_EDITOR=1 +# コンテナへ渡す環境変数を書く。 +# devbase 自身の設定 (リポジトリ・scale・エディタ) は project.yml にある。 diff --git a/github_work_time/projects/github_work_time/project.yml b/github_work_time/projects/github_work_time/project.yml new file mode 100644 index 0000000..a7ec21f --- /dev/null +++ b/github_work_time/projects/github_work_time/project.yml @@ -0,0 +1,8 @@ +# devbase プロジェクト設定 (PLAN32) +# リポジトリを増やすときは repos に要素を足す。 +version: 1 +scale: 1 +open_editor: true +repos: + - owner: takemi-ohama + repo: github_work_time diff --git a/md-specgen/projects/md-specgen/env b/md-specgen/projects/md-specgen/env index da1099d..a007866 100644 --- a/md-specgen/projects/md-specgen/env +++ b/md-specgen/projects/md-specgen/env @@ -1,6 +1,2 @@ -GIT_USER=takemi-ohama -GIT_REPO=md-specgen -WORK_DIR=/work/$GIT_REPO -CONTAINER_SCALE=1 -# up/list 完了後に dev コンテナへ接続した VS Code を自動で開く (PLAN31_3) -DEVBASE_OPEN_EDITOR=1 +# コンテナへ渡す環境変数を書く。 +# devbase 自身の設定 (リポジトリ・scale・エディタ) は project.yml にある。 diff --git a/md-specgen/projects/md-specgen/project.yml b/md-specgen/projects/md-specgen/project.yml new file mode 100644 index 0000000..9be240f --- /dev/null +++ b/md-specgen/projects/md-specgen/project.yml @@ -0,0 +1,8 @@ +# devbase プロジェクト設定 (PLAN32) +# リポジトリを増やすときは repos に要素を足す。 +version: 1 +scale: 1 +open_editor: true +repos: + - owner: takemi-ohama + repo: md-specgen diff --git a/tmllib/projects/tmllib/env b/tmllib/projects/tmllib/env index c828aff..a007866 100644 --- a/tmllib/projects/tmllib/env +++ b/tmllib/projects/tmllib/env @@ -1,6 +1,2 @@ -GIT_USER=takemi-ohama -GIT_REPO=tmllib -WORK_DIR=/work/$GIT_REPO -CONTAINER_SCALE=2 -# up/list 完了後に dev コンテナへ接続した VS Code を自動で開く (PLAN31_3) -DEVBASE_OPEN_EDITOR=1 +# コンテナへ渡す環境変数を書く。 +# devbase 自身の設定 (リポジトリ・scale・エディタ) は project.yml にある。 diff --git a/tmllib/projects/tmllib/project.yml b/tmllib/projects/tmllib/project.yml new file mode 100644 index 0000000..d0c9033 --- /dev/null +++ b/tmllib/projects/tmllib/project.yml @@ -0,0 +1,8 @@ +# devbase プロジェクト設定 (PLAN32) +# リポジトリを増やすときは repos に要素を足す。 +version: 1 +scale: 2 +open_editor: true +repos: + - owner: takemi-ohama + repo: tmllib From b2b68f7257987ee8b208f3d3e973945aa82159df Mon Sep 17 00:00:00 2001 From: "takemi.ohama" Date: Sun, 23 Aug 2026 02:01:03 +0900 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20requires.devbase=20=E3=82=92=20>=3D3?= =?UTF-8?q?.0.0=20=E3=81=B8=E5=BC=95=E3=81=8D=E4=B8=8A=E3=81=92=E3=80=81RE?= =?UTF-8?q?ADME=20=E3=82=92=20project.yml=20=E5=BD=A2=E5=BC=8F=E3=81=B8?= =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit cross-review round 1 (codex REQUEST_CHANGES) の指摘対応。 - `*/plugin.yml` 6 件の `requires.devbase` を `">=2.2.0"` → `">=3.0.0"` へ。 `project.yml` 形式は devbase 2.2.0 では読めないため、旧版を許可したままだと install 時の互換チェックを通過した後に `devbase up` が失敗する。 - README を `project.yml` を正とする新形式へ更新。 - 収録プラグイン表の見出しを `GIT_USER/GIT_REPO` → `repos[].owner/repo` へ変更し、 registry.yml に載る 6 件すべてを掲載(従来は 3 件のみ) - 「プロジェクト設定 (project.yml)」節を追加。実ファイル `adminer/projects/adminer/project.yml` と同一の例、複数リポジトリの例、 主要キーの表、devbase 本体 `docs/user/project-yml.md` への誘導を記載 - リポジトリ構成のツリーに `project.yml` を追加し、`env` の役割を明記 - 必要な devbase バージョン (3.0.0 以上) を冒頭に明記 Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 50 ++++++++++++++++++++++++++++++++++--- adminer/plugin.yml | 2 +- ai-plugins/plugin.yml | 2 +- devbase/plugin.yml | 2 +- github_work_time/plugin.yml | 2 +- md-specgen/plugin.yml | 2 +- tmllib/plugin.yml | 2 +- 7 files changed, 53 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 4ee357b..0e0ed9c 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,18 @@ [devbase](https://github.com/devbasex/devbase) のサンプルプラグインレジストリです。初めてdevbaseを使うユーザーがすぐに試せるよう、汎用的な公開ツールを収録しています。 +> **必要な devbase バージョン**: 3.0.0 以上。各プロジェクトの設定は `project.yml` 形式で書かれており、2.x では読み込めません。 + ## 収録プラグイン -| プラグイン | 説明 | コンテナ | GIT_USER/GIT_REPO | -|-----------|------|---------|-------------------| +| プラグイン | 説明 | コンテナ | リポジトリ (`repos[].owner/repo`) | +|-----------|------|---------|-----------------------------------| | `adminer` | 軽量DB管理ツール | `php` | `vrana/adminer` | | `ai-plugins` | Claude Codeプラグインマーケットプレイス開発環境 | `general` | `devbasex/ai-plugins` | | `devbase` | devbase本体の開発環境 | `general` | `devbasex/devbase` | +| `github_work_time` | GitHubアクティビティから稼働時間を集計するツール | `general` | `takemi-ohama/github_work_time` | +| `md-specgen` | Markdown仕様書自動生成ツール | `general` | `takemi-ohama/md-specgen` | +| `tmllib` | 共通ライブラリ開発環境 | `general` | `takemi-ohama/tmllib` | ## 使い方 @@ -47,6 +52,44 @@ cd ~/devbase/projects/adminer devbase up ``` +## プロジェクト設定 (`project.yml`) + +devbase 3.0.0 から、プロジェクトの設定は `projects/<プロジェクト名>/project.yml` に書きます。1 プロジェクト = 1 コンテナ = **複数リポジトリ** という構成です。 + +収録プラグイン `adminer` の `projects/adminer/project.yml`: + +```yaml +version: 1 +scale: 1 +open_editor: true +repos: + - owner: vrana + repo: adminer +``` + +`repos` に要素を足すだけで、1 つのプロジェクト(=1 コンテナ)に複数のリポジトリを並べられます。 + +```yaml +version: 1 +defaults: + owner: devbasex +repos: + - repo: my-app # 先頭が primary(ログイン直後の作業ディレクトリ) + - repo: my-app-docs +``` + +| 設定 | 意味 | +|------|------| +| `repos[].owner` / `repos[].repo` | クローンする GitHub リポジトリ。先頭の要素が primary | +| `defaults` | `repos[]` の各要素へ継承させる既定値(`host` / `owner` / `branch` / `init`) | +| `work_dir` | コンテナ内の作業ディレクトリ(既定値と同じなら省略可) | +| `scale` | 起動するコンテナ数 | +| `open_editor` | `devbase up` 後にエディタを開くか | + +スキーマの詳細は [project.yml リファレンス](https://github.com/devbasex/devbase/blob/main/docs/user/project-yml.md) を参照してください。 + +同じディレクトリの `env` は「**コンテナへ渡す環境変数**」だけを持ちます。`GIT_USER` / `GIT_REPO` / `CONTAINER_SCALE` / `DEVBASE_OPEN_EDITOR` といった devbase 自身の設定は `project.yml` へ移動しました。 + ## リポジトリ構成 ``` @@ -57,7 +100,8 @@ devbase-samples/ │ └── projects/ │ └── adminer/ │ ├── compose.yml -│ └── env +│ ├── project.yml # プロジェクト設定(リポジトリ・scale・エディタ) +│ └── env # コンテナへ渡す環境変数 ├── ai-plugins/ │ └── ... └── devbase/ diff --git a/adminer/plugin.yml b/adminer/plugin.yml index eb840f0..9839ed8 100644 --- a/adminer/plugin.yml +++ b/adminer/plugin.yml @@ -2,5 +2,5 @@ name: adminer version: "1.0.0" description: "Adminer - 軽量DB管理ツール(PHPコンテナで動作)" requires: - devbase: ">=2.2.0" + devbase: ">=3.0.0" priority: 0 diff --git a/ai-plugins/plugin.yml b/ai-plugins/plugin.yml index 2fae240..3552d89 100644 --- a/ai-plugins/plugin.yml +++ b/ai-plugins/plugin.yml @@ -2,5 +2,5 @@ name: ai-plugins version: "1.0.0" description: "devbasex/ai-plugins - Claude Codeプラグインマーケットプレイスの開発環境" requires: - devbase: ">=2.2.0" + devbase: ">=3.0.0" priority: 0 diff --git a/devbase/plugin.yml b/devbase/plugin.yml index f959815..245c2d8 100644 --- a/devbase/plugin.yml +++ b/devbase/plugin.yml @@ -2,5 +2,5 @@ name: devbase version: "1.0.0" description: "devbase本体の開発環境(generalコンテナ)" requires: - devbase: ">=2.2.0" + devbase: ">=3.0.0" priority: 0 diff --git a/github_work_time/plugin.yml b/github_work_time/plugin.yml index a02c893..f12bf43 100644 --- a/github_work_time/plugin.yml +++ b/github_work_time/plugin.yml @@ -2,5 +2,5 @@ name: github_work_time version: "1.0.0" description: "github_work_time - GitHubアクティビティから稼働時間を集計するツールの開発環境" requires: - devbase: ">=2.2.0" + devbase: ">=3.0.0" priority: 0 diff --git a/md-specgen/plugin.yml b/md-specgen/plugin.yml index 091b4f7..40ca369 100644 --- a/md-specgen/plugin.yml +++ b/md-specgen/plugin.yml @@ -2,5 +2,5 @@ name: md-specgen version: "1.0.0" description: "md-specgen - Markdown仕様書自動生成ツールの開発環境" requires: - devbase: ">=2.2.0" + devbase: ">=3.0.0" priority: 0 diff --git a/tmllib/plugin.yml b/tmllib/plugin.yml index 608bdc7..5f20b2f 100644 --- a/tmllib/plugin.yml +++ b/tmllib/plugin.yml @@ -2,5 +2,5 @@ name: tmllib version: "1.0.0" description: "tmllib - 共通ライブラリ開発環境" requires: - devbase: ">=2.2.0" + devbase: ">=3.0.0" priority: 0