project
GoSkillは、組み込みのリトライループと状態追跡機能を備えた、長時間実行されるタスクを容易にするためのオープンソースツールです。
GoSkillは、長くて複雑なタスクを効率的に処理するためのツールです。デコレータやクラスを使ってタスクをカプセル化し、「一度限りのスキル呼び出し」を「成功条件が満たされるかタイムアウトが発生するまで目標に向かって進む」継続的なプロセスへと変換します。
GoSkillとは何ですか?
GoSkillは、長くて複雑なタスクを容易に実行するためのツールです。デコレータやクラスを使用してタスクをカプセル化し、「一度限りのスキル呼び出し」を「成功条件が満たされるかタイムアウトが発生するまで目標に向かって継続的に進行する」実行モデルへと進化させます。GoSkillは、大規模なリファクタリングや長期分析など、明確に定義された受け入れ基準、状態追跡、段階的な完了を必要とする自動化シナリオに適しています。
GoSkillの主な機能
-
目標定義サポート対象
goalこれらのパラメータは、タスクの目的を明確に定義し、タスクの意図を構造化された方法で表現する。 -
成功基準:合格
criteriaこの辞書は、多次元的な受入基準を定義し、完了基準を定量化している。 -
再試行を続ける組み込みの実行ループにより、目標が達成されない場合は、成功またはタイムアウトになるまで自動的に待機し、試行を続行します。
-
状態追跡:供給
status試行回数、実行時間、チェック結果をリアルタイムで確認できます。 -
構造化されたリターン:
run_with_result()成功、試行回数、および基準レポートを含む構造化された結果オブジェクトを返します。 -
フレキシブルパッケージ装飾業者をサポートする
@goskillそしてクラスGoSkill2つの呼び出し方法があり、既存コードへの軽量な組み込みが可能です。
GoSkillの使い方
-
依存関係をインストールしますリポジトリをクローンした後に実行してください
make install-dev環境設定を完了しました。 -
タスクを定義するデコレータまたはインスタンス化を使用する
GoSkillクラス、合格goal、criteria、max_hoursこのようなパラメータ。 -
ロジックを記述する特定のタスクロジックを関数またはラムダ式で実装し、結果辞書を返します。
-
実行する: 電話
run()元の結果を取得するか、電話してくださいrun_with_result()構造化された実行報告書を入手する。 -
ステータスを確認する:合格
skill.status現在の目標、試行回数、実行時間、達成状況を表示します。 -
実行例:埋め込む
python examples/basic_usage.py最小限の動作デモをご覧ください。
GoSkillの重要な情報と使用要件
-
プロジェクトの位置付け単一マシン、単一プロセスで動作する軽量な目標駆動型実行ヘルパーであり、非分散型スケジューリングシステムである。
-
適用範囲長時間実行される複雑なタスクや、明確な受け入れ基準を必要とするシナリオに適しています。単一の質疑応答セッションや、非常に小規模な同期機能には適していません。
-
環境依存性Makefile を通じて開発、テスト、ビルドのプロセスを管理する Python 環境。
-
ライセンス契約Apache-2.0オープンソースライセンスをサポートしており、商用利用および二次開発が無料で可能です。
-
現在の状況: 実験的な実行モードのプロトタイプであり、OpenClaw / Agentワークフロー用の軽量ラッパーです。
GoSkillの主な利点
-
目標達成型結果が許容できるものとなるよう、タスクを「一度実行する」から「目標の周りを継続的に前進する」へとアップグレードしてください。
-
透明性の高いプロセス内蔵のステータス追跡機能により、試行回数、所要時間、目標達成に向けた進捗状況をいつでも確認できます。
-
軽量で非侵襲的元のビジネスロジックを変更することなく、デコレータやクラスカプセル化を使用するだけで簡単に統合できます。
-
期待されるアライメントプロジェクトの範囲を明確に定義し、分散スケジューリングなどのエンタープライズレベルの機能については安易に約束せず、信頼できる期待値を設定する。
GoSkillプロジェクトの住所
- GitHubリポジトリ:https://github.com/AIPMAndy/goskill
GoSkillと類似製品との比較
| 比較対象寸法 | GoSkill | Tenacity | Prefect |
|---|---|---|---|
| コアポジショニング | 目標指向型実行補助ツール | ユニバーサルリトライデコレータライブラリ | 最新のデータフローワークフローエンジン |
| 目標定義 | ネイティブサポート goal パラメータ |
目標概念なし | フローを通じて間接的に定義される |
| 受入基準 | 構造化された criteria 辞書 |
例外タイプの判断のみ | カスタムステータスチェックをサポートします |
| 再試行を続ける | 目標達成時またはタイムアウト超過時に自動的にサイクルが繰り返される | 回避戦略の強化 | タスクレベルの再試行設定 |
| 状態追跡 | 内蔵 status リアルタイム表示 |
ステートレスオブジェクト | 完全なUIおよびAPIの状態フロー |
| 実行カプセル化 | 装飾性+上品さ、軽量で邪魔にならない | 装飾業者へのミニマリストアクセス | フローを定義する必要があるが、これはかなり大変な作業だ。 |
| デプロイメントの依存関係 | いいえ、純粋なPythonによる単一マシン操作です | なし | Perfect Server/Cloudが必要です |
| 適用可能なシナリオ | 長期間にわたるタスク/複雑なタスク/明確に定義された受け入れ基準 | 関数レベルの例外再試行 | データパイプライン/ETL/スケジュールされたデータ転送 |
GoSkillの応用事例
- コードプロジェクトの移行大規模なプロジェクト再構築やクロスプラットフォーム移行、例えばAndroidプロジェクトをHarmonyOSシステムに移行する場合などに適しています。コンパイルエラーゼロやテスト合格率といったハードな指標を設定することで、目標達成まで継続的に改善を繰り返すことができます。
- バッチデータ処理1,000件の財務報告書の一括分析や大規模データセットの処理など、長期的な分析タスクに適しており、網羅性と整合性の基準を用いて処理を自動的に進めるため、手作業によるラウンドごとのチェックが不要になります。
- 自動承認プロセスCI/CDや明確な受け入れ基準を必要とするテストプロセスでは、「実行-検証-再試行」プロセスがクローズドループに組み込まれ、各デプロイメントが事前に設定された品質しきい値を満たすことが保証されます。
- 科学的研究と反復実験段階的な成功基準を定義することで、実験の進捗状況を自動的に追跡でき、反復的な手作業を削減できる。
- エージェントのワークフローの改善OpenClawやAIエージェントの長時間タスク実行カプセル化レイヤーとして、これは「完了するとすぐに停止する」単一のスキル呼び出しの欠点を補い、複雑なタスクの完了の信頼性を向上させます。