Skip to content
Apothem
ハーネスアダプター

Gemini CLI

Gemini CLI(GA)向けの Apothem ハーネスアダプター。

ベンダー: Google インストール名: gemini-cli ステータス: GA ネイティブ設定: プロジェクトローカルの GEMINI.md と .gemini/

インストール

apothem install --harness gemini-cli --project /path/to/project

このアダプターはプロジェクトスコープです。 プロジェクトの GEMINI.md をインストールし、Apothem のコマンドを Gemini の TOML スラッシュコマンドに変換し、ローカルヘルパー定義を正規化し、ネイティブでないサポートコホートを .gemini/.apothem/support/ 配下に配置します。 他のコーディングツールもプロジェクトの GEMINI.md を読み取るため、その中の Apothem ブロックは、単一のツールを読み手として名指ししない、プロジェクト全体のガイダンスとして書かれます。

書き込まれるファイル:

GEMINI.md
.gemini/commands/*.toml
.gemini/agents/*.md
.gemini/skills/
.gemini/.apothem/support/

プロファイルからネイティブ設定へのマッピング

アダプターは Apothem の共有コホートを読み取り、それぞれを Gemini 互換の面を通じて振り分けます。 Markdown のルール、テンプレート、フック素材は、Gemini ネイティブのルールディレクトリではなくサポート素材であるため、.gemini/.apothem/support/ 配下に残ります。 GEMINI.md 内の Apothem ブロックは、Apothem サポートファイルのセクションで終わります。 このセクションは、リポジトリ形式の各参照(rules/<name>.md、templates/...、hooks/...)が解決される先の .gemini/.apothem/support/ 配下のディレクトリを、プロジェクトルートからの相対パスで示します。 パスが相対であるため、コミットされた GEMINI.md にはマシン固有のパスが含まれません。

.gemini/commands/ 内の変換された各コマンドは、description と prompt を持ちます。 プロンプトはコマンドの命令のみです。ソースファイル先頭の Apothem メタデータ(バージョン、ツールリスト、および同様のフィールド)は除外されるため、モデルがそれを命令として読むことは決してありません。 Gemini がカスタムコマンドを実行するのは、あなたがそれを入力した場合のみです。

.gemini/agents/ 内のヘルパー定義は、ツールの制限とターン数の上限を保持します。ソースの tools の付与から disallowedTools を差し引いたものが、Gemini のツール名からなる Gemini の tools 許可リストになり、maxTurns は max_turns になります。 そのため、読み取り専用のヘルパーには write_file ツールも replace ツールも与えられません。 モデルは設定されないため、各ヘルパーはセッションのモデルを継承します。

プロファイルの agent_mcp_servers キーが挙げるヘルパーは、その tools 許可リストに、指定された各サーバーにつき mcp_<server>_* エントリーも 1 つ得るため、そのサーバーのツールを呼び出すことができ、他のサーバーのツールは呼び出せません。キーがなければ、すべてのヘルパーは通常の許可リストを保ちます(MCP サーバーを参照)。 Apothem がここに付与を書き込むのは、英字、数字、- からなるサーバー名の場合のみです。Gemini CLI はアンダースコアを含む名前を指定できないためです。それ以外の名前はスキップされて報告され、すでにすべての MCP サーバーに到達できるヘルパーへの付与も同様です。

互換性に関する注意

~/.gemini/ は、グローバルな Gemini プロファイルを使用するツールのためのユーザースコープの領域のままです。 Gemini CLI アダプターは、--project で渡されたプロジェクトにのみ書き込みます。

検証

apothem verify --harness gemini-cli --project /path/to/project

verify コマンドは次のことを確認します。

  1. ネイティブ設定が想定されたパスに存在すること。
  2. 管理対象の各ターゲットが存在すること。管理対象のファイルは空ではなく、JSON または YAML の設定は解析できること。--profile PATH を追加すると、インストールされたファイルがそのプロファイルと一致することも確認します。
  3. アダプター固有の検証ルーチンが成功を報告すること。

更新

apothem update --harness gemini-cli --project /path/to/project

GEMINI.md、変換されたコマンド、ローカルヘルパー定義、インストールされたスキル、および .gemini/.apothem/support/ サポートツリーを更新します。

アンインストール

apothem uninstall --harness gemini-cli --project /path/to/project

<project>/GEMINI.md から Apothem ブロックを取り除き、その中にある他のテキストはそのまま残します。 ファイルが削除されるのは、中に他に何も残っていない場合のみです。 また、<project>/.gemini/commands/、<project>/.gemini/skills/、<project>/.gemini/agents/、<project>/.gemini/.apothem/support/ 内にある Apothem のファイルを取り除きます。これらのフォルダー内の他のファイルはそのまま残ります。 変更の前に、各ファイルのタイムスタンプ付きコピーが ~/.apothem/backups/ 配下に保存されます。プロジェクト内にバックアップファイルは残りません。 共有プロファイルの YAML と Apothem エンジンには影響しません。

コンフォーミティゲート

python -m apothem.conformity.gate --all .

トラブルシューティング

症状対処
設定ファイルが見つからないapothem install --harness gemini-cli --project /path/to/project を再実行する
検証が失敗したapothem update --harness gemini-cli --project /path/to/project を実行してから、再度検証する
想定外の設定内容~/.config/apothem/profile.yaml または --profile PATH を確認してから、apothem update --harness gemini-cli --project /path/to/project を再実行する

設定ノブ

フラグデフォルト説明
--dry-runfalseファイルを書き込まずにインストールをプレビューする。

関連項目

On this page