Hermes を Python ライブラリとして使用する
Hermes を Python ライブラリとして使用する — 公式ドキュメントに基づくわかりやすいガイド
HermesをPythonライブラリとして使うのは、まるでPythonコードで自由に指示を出せるフレンドリーなロボットアシスタントを手に入れるようなもの。新しい言語を覚えたり、派手なダッシュボードを操作したりする必要はありません。
「ライブラリとして使う」ってどういうこと?
通常、Hermesとはチャットウィンドウを通じてやり取りします。しかし、Pythonライブラリとして使う場合は、Hermesに指示を出すPythonスクリプトを書くことになります。これは、コード修正、テスト実行、ファイル整理といった反復作業の自動化に最適です。
最初のコマンド:検索とパッチ適用
例えば、更新が必要な古いAPI呼び出しが含まれる大規模なプロジェクトがあるとします。各ファイルを手動で開く代わりに、それらをすべて検索して修正するスクリプトを書くことができます:
# Find all Python files using deprecated API and fix them
matches = search_files("old_api_call", path="src/", file_glob="*.py")
fixed = 0
for match in matches.get("matches", []):
result = patch(
path=match["path"],
old_string="old_api_call(",
new_string="new_api_call(",
replace_all=True
)
if "error" not in str(result):
fixed += 1
print(f"Fixed {fixed} files out of {len(matches.get('matches', []))} matches")
何が起こるかというと、Hermesがsrc/内のすべての.pyファイルを検索し、old_api_call(を見つけてnew_api_call(に置き換えます。これだけで、数時間かかっていた手作業を節約できます。
テストの実行とレポート取得
自分のコードが実際に動作するか知りたいですか?テストスイートを実行して、きれいなサマリーを取得できます:
from hermes_tools import terminal, read_file
import json
# Run tests, parse results, and report
result = terminal("cd /project && python -m pytest --tb=short -q 2>&1", timeout=120)
output = result.get("output", "")
# Parse test output
passed = output.count(" passed")
failed = output.count(" failed")
errors = output.count(" error")
report = {
"passed": passed,
"failed": failed,
"errors": errors,
"exit_code": result.get("exit_code", -1),
"summary": output[-500:] if len(output) > 500 else output
}
print(json.dumps(report, indent=2))
このスクリプトはテストを実行し、成功・失敗数を数え、きれいなJSONレポートを出力します。このレポートをチームに自動メール送信することも可能です。
コード実行の2つのモード
Hermesにはスクリプト実行用の「モード」が2つあります:
-
プロジェクトモード(デフォルト):スクリプトはプロジェクトフォルダ内で、既存のPython環境を使用して実行されます。日常的な作業に最適です。通常通り
import pandasしたり、相対パスでファイルを読み込んだりできます。 -
厳格モード:スクリプトはHermes専用のPythonが入った分離されたフォルダで実行されます。最大限の再現性が必要な場合に使用します。例えば、スクリプトを他の人と共有し、どこでも同じように動作することを保証したい場合などです。
モードは設定ファイルで切り替えられます:
# ~/.hermes/config.yaml
code_execution:
mode: project # or "strict"
安全第一(コーディング時も)
セキュリティについて心配する必要はありません。Hermesは慎重に動作します。両方のモードで、以下のことを行います:
- スクリプトの環境からAPIキーやパスワードを削除します
- スクリプトが他のHermesツールを再帰的に呼び出すことをブロックします
- スクリプトの実行時間(最大5分)と出力量を制限します
まとめとプロのヒント
HermesをPythonライブラリとして使うことで、面倒な作業がワンライナースクリプトに変わります。まずは小さく始めましょう。変数の名前変更やテスト実行など、繰り返し行うタスクを1つ選んで自動化してみてください。
実用的なヒント: 必ず、オリジナルではなくプロジェクトのコピーでスクリプトをテストしてください。そうすれば、何か問題が起きても何も壊れません。自信がついたら、実際のプロジェクトで実行しましょう。自動化を楽しんでください!
📖 公式ドキュメント
この記事は Hermes Agent の公式ドキュメントに基づいています:公式ドキュメント › developer-guide/programmatic-integration