Open3

gemini

engineer rebornengineer reborn

gemeni 基本理解

  • npmで入れるらしい
npm install -g @google/gemini-cli
  • 認証
    • oauth
    • api key

使い方

  • gemini コマンドで引数なしで実行で会話

    • こど生成もできるらしい
      • エンジニアとしてはコピペをしないで良いので良いのかも
  • pppromptオプション

  • Gemini Code Assist との連携(エージェントモード

参考記事

https://blog.g-gen.co.jp/entry/gemini-cli-explained

engineer rebornengineer reborn

gamini cli 情報整理

Zettelkasten

  • この情報の整理手法を活用してる
  • 「ノート」単位で管理する様だ

Zettelkasten原則

  • 1ノート1アイデア(アトミックノート)
    • 1つの概念や情報のみを記載
      • 再利用性が高くなる
  • ノート間の連結
    • 既存の関連するノートをリンクさせる
  • 恒久的な知識の構築
    • 一時的なメモや他者からの情報を、時間をかけて見直し、自身の理解に基づいた言葉で再記述します。このプロセスを通じて、情報は汎用性の高い「恒久ノート(PermanentNote)」へと変わります

Zettelkastenのデメリットを Gemini Cliで解決できる

  • メンテナンスコスト
    • ノートのリンクづけ

ポイント

  • GEMINI.mdによるワークフローの定義
    • これでワークフローを定義できるようで、指定したディレクトリにデータを入れたりできそう

gemini.md ワークフロー使い方

はい、お預かりしたGEMINI.mdのワークフロー定義を元に、Gemini CLIでこれらのカスタムコマンドを利用する際のサンプルコマンドを作成します。


カスタムワークフローを実行するGemini CLIコマンド

Gemini CLIでカスタムワークフローを実行するには、主に以下の形式を使用します。

gemini ask "/workflow:コマンド名"

または、より明確に特定のディレクトリを指定して実行することもできます。

gemini -d /path/to/your/project ask "/workflow:コマンド名"

これらを踏まえて、定義された各ワークフローを実行するサンプルコマンドは以下の通りです。


/workflow:create_literature_note_from_daily の実行

Daily NoteからLiterature Noteを作成するワークフローです。このコマンドを実行すると、Gemini CLIが指定されたアクションを実行します。

gemini ask "/workflow:create_literature_note_from_daily"

/workflow:draft_permanent_note の実行

Fleeting NoteとLiterature Noteを分析してPermanent Noteの草案を作成するワークフローです。

gemini ask "/workflow:draft_permanent_note"

/workflow:update_index_note の実行

新しいPermanent Noteを索引ノートに追記するワークフローです。

gemini ask "/workflow:update_index_note"

これらのコマンドを実行する際の注意点:

  • GEMINI.md の配置: これらのコマンドを実行するディレクトリのルートに、上記のワークフロー定義が記述されたGEMINI.mdが正しく配置されている必要があります。
  • フォルダ構造: Daily/LiteratureNote/FleetingNote/PermanentNote/IndexNote/といったフォルダが、GEMINI.mdが置かれたプロジェクトのルートディレクトリに対して適切に存在している必要があります。
  • Gemini CLIの応答: 実際の実行時には、Geminiが各アクションの進行状況や、ユーザーからの選択を促すメッセージ(例: /workflow:draft_permanent_noteの場合)などを出力します。

これで、定義したカスタムワークフローをGemini CLI経由で利用するイメージが掴めたでしょうか?

参考

https://blog.g-gen.co.jp/entry/gemini-cli-explained