Communitygithub.com

cmcoffee/gohort

Goで構築されたモジュラー型エージェントフレームワーク。Webダッシュボード、ツール実行、マルチプロバイダー対応のLLMアプリケーションを構築可能。アプリはinit()で自己登録し、フレームワークが起動時に機能を自動発見します。配線や設定ファイル、フレームワークの編集は一切不要。

gohort とは?

cmcoffee/gohortは、Go言語でLLMを活用したアプリケーションを構築するためのモジュラー型エージェントフレームワークです。Webダッシュボード、ツール実行、マルチプロバイダー対応などの機能を備え、アプリケーションはinit()関数で自己登録するだけでフレームワークが起動時に自動的に機能を発見します。配線や設定ファイル、フレームワーク自体の編集が一切不要なため、開発者はアプリケーションのロジックに集中できます。このフレームワークは、Claude CodeやCursor、CodexなどのAIエージェントツールと連携して動作し、開発効率を大幅に向上させます。特に、Goの強力な型システムとパフォーマンスを活かしつつ、設定の手間を省くことで、迅速なプロトタイピングと本番導入を両立します。

対応~Claude Code~Codex CLI~Cursor
npx skills add cmcoffee/gohort

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

gohort は何をしますか?

Goで構築されたモジュラー型エージェントフレームワーク。Webダッシュボード、ツール実行、マルチプロバイダー対応のLLMアプリケーションを構築可能。アプリはinit()で自己登録し、フレームワークが起動時に機能を自動発見します。配線や設定ファイル、フレームワークの編集は一切不要。

主な機能

  • モジュラー設計: 各アプリケーションは独立したGoパッケージとして開発し、init()関数でフレームワークに登録します。
  • 自動発見: 起動時に登録されたすべてのアプリケーションとツールを自動的に検出し、利用可能にします。
  • Webダッシュボード: 組み込みのWebインターフェースで、エージェントの実行状況やツールの使用状況を可視化します。
  • ツール実行: エージェントが使用できるツールを簡単に追加・管理できます。
  • マルチプロバイダー対応: OpenAI、Anthropicなどの複数のLLMプロバイダーをサポートします。

クイックスタート

package main

import (
    "github.com/cmcoffee/gohort"
    _ "your-app-package" // アプリケーションをサイドエフェクトとしてインポート
)

func main() {
    gohort.Run()
}

アプリケーションの作成

package myapp

import "github.com/cmcoffee/gohort"

func init() {
    gohort.RegisterApp(&gohort.App{
        Name:        "my-app",
        Description: "私の最初のアプリケーション",
        Tools: []gohort.Tool{
            {
                Name:        "hello",
                Description: "挨拶を返します",
                Execute: func(ctx context.Context, args map[string]interface{}) (interface{}, error) {
                    return map[string]string{"message": "こんにちは、世界!"}, nil
                },
            },
        },
    })
}

設定

環境変数または.envファイルで設定を行います。

GO_HORT_PORT=8080
OPENAI_API_KEY=your-key-here
ANTHROPIC_API_KEY=your-key-here

ドキュメント

詳細なドキュメントはこちらをご覧ください。

関連スキル