AI News HubLIVE
站内改写2 分で読了

Show HN: theta_py — Theta CLI の Python バインディング

theta_py は Theta CLI の Python バインディングであり、開発者はルール、ツール、スキルの追加、プロジェクト状態の同期、Claude Code などのプラットフォームへのキャストなど、AI エージェントプロジェクトをプログラムで作成・管理できます。高レベルな ThetaProject クラス、低レベル関数、エラーハンドリング、バージョン固定機能を提供します。

ソースHacker News AI著者: ivanbelenky

Theta は AI エージェントの構築と設定を行うツールであり、theta_py はその Python バインディングです。開発者はコマンドラインの代わりにコードを用いて Theta プロジェクトを管理できます。このプロジェクトは GitHub 上でオープンソースとして公開されており、Apache-2.0 や MIT などのライセンスが適用されています。

コア機能:ThetaProject クラス

ThetaProject は主要なインターフェースで、一時ディレクトリ内に具体化された Theta プロジェクトを保持します。Python のコンテキストマネージャーを使用して、CLI ワークフローと同等の操作を簡単に実行できます。例えば:

  1. プロジェクトの初期化:ThetaProject.create(name="my-agent")
  2. ルールの追加:proj.add.rule("python-types")
  3. ツールの追加:proj.add.tool("fetch", command="uvx mcp-server-fetch")
  4. スキルの追加:proj.add.skill("vercel-labs/agent-skills/skills/web-design-guidelines@main")
  5. 検証:proj.check()(検証失敗時は ThetaCommandError をスロー)
  6. デプロイ:proj.cast.to("claude-code")CLAUDE.md.mcp.json 等のファイルを生成
  7. 同期:proj.sync() でプロジェクトをディスクに書き込む

また、ThetaProject.from_manifest() を使用して既存のプロジェクトを読み取り専用で開くことができ、デフォルトで同期が行われます(no_sync=True でオプトアウト可能)。needs_sync()is_synced プロパティによる同期の鮮度チェックも提供されています。

低レベル API

高レベルクラスに加えて、theta_py はフラットな関数や theta シングルトンも提供しており、素早い呼び出しが可能です。例えば:

from theta_py import theta
theta.init(name="my-agent")
theta.add.rule("safety")
listing = theta.list.rules()

すべての操作は Pydantic モデルを返し、失敗時には詳細な診断情報を含む ThetaCommandError がスローされます。

バージョンと互換性

theta_py リリースは特定の theta バイナリーバージョンに固定されており、theta_py.THETA_VERSION で確認できます。これにより、API と基盤となる CLI の一貫性が保証されます。

プロジェクトの状況

GitHub 上でのスター数は 1、フォークは 0、最新リリースは v0.0.4(2026 年 6 月 13 日)です。主要言語は Python(99.7%)、残りは Just ファイル(0.3%)です。

複数の AI エージェント設定をプログラムで管理する必要がある開発者にとって、theta_py は簡潔で型安全なソリューションを提供します。