Obsidian向け Gemini CLI プラグイン
概要
obsidian-gemini-cli は、Obsidian のプラグインとして Gemini CLI を組み込み、Vault を Gemini の作業ディレクトリにして AI を協力者(コラボレータ)として動かせるようにするプロジェクトです。Vault 内のファイル読み書き、検索、シェル実行(bash)、および複数ステップのワークフローを通じて自律的な作業が可能になります。元は Claudian をベースに Claude Code CLI から Gemini CLI に置き換えたもので、Google アカウントによる認証を使うため API キー不要で試せる点が特徴です。ローカルノートと強力なモデルを結びつけることで、ドキュメント自動生成やリファクタリング、調査の自動化などに応用できます。
リポジトリの統計情報
- スター数: 2
- フォーク数: 0
- ウォッチャー数: 2
- コミット数: 6
- ファイル数: 20
- メインの言語: TypeScript
主な特徴
- Vault をそのまま Gemini の作業ディレクトリにし、ファイル単位での読み書きや検索を AI に許可して自律的な編集を実行できる。
- Gemini CLI と直接連携し、Google アカウントでの認証を利用するため API キーを用意する必要がない(gemini-cli の認証フローに依存)。
- bash コマンド実行や複数ステップのワークフローをサポートし、単発の応答ではなく連続したタスク済行を実現する。
- Claudian(Claude Code CLI をベースにした実装)を移植した設計で、既存のエージェント系ワークフローを活かしつつ Gemini に置き換えている。
技術的なポイント
本プロジェクトは TypeScript で書かれた Obsidian プラグインで、Obsidian のプラグイン API を介して Vault 内のファイルシステムへアクセスします。Gemini CLI をバックエンドとして用い、ローカルで起動した gemini-cli と通信してモデルへのリクエストを行う設計です。設計上は Vault を「作業ディレクトリ」として扱い、エージェントにファイルの読み書き・検索・実行コマンドの権限を与えることで、単発のプロンプト応答ではなくマルチステップのワークフロー(検索→修正→検証→コミット)を行えるようにしています。また、Claudian の流れを引き継いでいるため、プロンプト設計やワークフロー管理のノウハウが活かされています。認証は gemini-cli 側の Google 認証フローを利用するため、プラグインは API キー管理を必要とせず、ユーザーの Google アカウントを通してモデルへアクセスします。一方で Vault 内のファイルやシェル実行の許可を与える性質上、権限とセキュリティに注意が必要です(秘密情報や実行権限を持たせない運用、コードレビュー、限定的なボールトでの利用が推奨されます)。開発面では TypeScript の型安全性、ESLint 設定、npm/yarn による依存管理やビルド設定などが含まれ、Obsidian のプラグインビルドパイプラインに沿った構成になっています。
プロジェクトの構成
主要なファイルとディレクトリ:
- .env.local.example: file
- .eslintrc.cjs: file
- .github: dir
- .gitignore: file
- .npmrc: file
…他 15 ファイル
上記に加え、リポジトリから想定される役割ごとの構成と役割:
- .env.local.example: ローカル環境用の環境変数サンプル。機密設定や gemini-cli 関連の設定をここで参照する想定。
- .eslintrc.cjs: コード品質のための ESLint 設定。TypeScript のスタイルやルールが定義されている。
- .github: CI ワークフローや issue・PR テンプレートなどの GitHub 設定を格納するディレクトリ。
- .gitignore / .npmrc: 不要ファイルの除外や npm の設定。ローカルの node_modules やビルド成果物の除外を制御する。
- ソース(src): TypeScript のエントリポイントやプラグインのメインロジック、UI/コマンドの登録、gemini-cli との橋渡しを行うコードが存在する想定。Obsidian の manifest.json と main.ts(あるいは index.ts)でプラグインライフサイクルを管理する構成が一般的です。
- package.json / tsconfig.json: 依存関係とビルド設定。開発スクリプトやビルド・パッケージ化に必要な設定が含まれます。
- README.md: インストール方法、セットアップ手順、注意点、機能紹介などのドキュメント。本リポジトリにも簡潔な説明と特徴が記載されています。
これらのファイル群により、開発者はローカルで gemini-cli をセットアップし、Obsidian にプラグインを導入して Vault を学習・編集対象として利用するワークフローを構築できます。
まとめ
Vault をモデルの作業ディレクトリにすることで、ローカルドキュメントと強力な AI を結びつける実験的かつ実用的なプラグインです。
リポジトリ情報:
- 名前: obsidian-gemini-cli
- 説明: 説明なし
- スター数: 2
- 言語: TypeScript
- URL: https://github.com/Momoyu404/obsidian-gemini-cli
- オーナー: Momoyu404
- アバター: https://avatars.githubusercontent.com/u/98151530?v=4
READMEの抜粋:
obsidian-gemini-cli
obsidian-gemini-cli is an Obsidian plugin that embeds Gemini CLI as an AI collaborator in your vault. Your vault becomes Gemini’s working directory, giving it full agentic capabilities: file read/write, search, bash commands, and multi-step workflows.
Based on Claudian — converted from Claude Code CLI to Gemini CLI. Uses your Google account (no API key needed).
Features
- …