re0-workflow について
re0-workflow は、明示された意図をインストール済みスキルの順序付きグラフにし、実行権限のある手順を進めるスキルです。実行前に計画を示し、人への引き継ぎと結果を報告します。
主な機能
- 01明示された意図に合うスキルを選択
- 02前提条件に基づいて手順を整列
- 03実行前に型付きグラフを提示
- 04承認や人への引き継ぎで停止
- 05出力を確認して実行状況を報告
活用シーン
- 01複数スキルを使うタスクを計画
- 02許可された手順を順に実行
- 03人の判断や操作のために一時停止
- 04引き継ぎ結果を使って実行を再開
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ lilmgenius/ paperthin --skill re0-workflowインストール後、Claude Code で/re0-workflowを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
明示された意図を順序付きスキルグラフにし、提示して、セッションが実行権限を持つステップを実行します。
目標
このスイートのカタログを知らない人でも、実現したいことを伝え、それが実行されるようにします。人が明示した意図に役立つインストール済みスキルを選択して順序付けし、何かを実行する前にその順序を提示します。セッションが実行権限を持つ各ステップを実行し、人の対応が必要な最初のステップで停止して、実行した内容を報告します。
ワークフロー
-
人が明示した意図と、ホストカタログまたはスキルディレクトリにあるインストール済みスキル一覧を読み取ります。明示された意図がなく、ライブ状態のみが示されている場合は、意図を推測せずに尋ねます。候補となる各スキルの契約と呼び出しレーンを読み取ります。
disable-model-invocation: trueはユーザー専用を意味し、それ以外はモデル呼び出し可能です。 -
トリガーと出力が意図に役立つスキルのみを選択します。すでに意図に役立つ固定パイプライン(自身の契約で他のスキルを固定順序で実行するスキル)は、展開せずに1つのノードとして扱います。そのノードの種類を判断するためにのみメンバーを読み取り、いずれかのメンバーが書き込みを行う場合は、そのノードも書き込みを行うものとし、いずれかのメンバーがユーザー専用の場合は
user-handoffとします。該当するスキルがなければ、ステップ数がゼロであることを示します。1つで十分な場合は、ノードを必ず1つだけ使用し、順序付けは自明であると伝えます。意図または選択した契約が必要とするスキルが一覧にない場合は、そのスキルをskipステップとして残します。選択したステップがその出力を必要とする場合は、停止条件が未達のまま実行を終了し、黙ってスキップしてはいけません。グラフを埋めるためにステップを追加したり、オリエンテーション用スキルを必須にしたり、パイプラインスキルを作り出したり、不足しているスキルの代わりに別のスキルを使ったりしてはいけません。 -
選択したステップを、契約上の前提条件に従って順序付けします。あるステップの発火前提条件が別のステップの出力を必要とする場合、そのステップに依存しているものとします。グラフを提示する前に循環を検出します。循環がある場合は、
skill-a -> skill-b -> skill-aのように循環を示すrejectとし、ステップも部分的な順序も提示しません。グラフには、意図が実現されたことを意味する状態という、観測可能な停止条件を1つ設けます。ステップ数がゼロの場合、またはrejectの場合は、それぞれの報告をもって終了します。 -
各ステップには、識別子、対象(実行するスキル、またはスキルでは処理されない人の判断が必要な場合の質問)、先行ステップの識別子、種類をちょうど1つ、発火前提条件、対象自身の契約で定められた範囲に限る期待される出力、スキップ可能な条件、コスト負担者を指定します。ステップの種類は、以下の表で最初に該当する行に従って割り当てます。不足しているユーザー専用スキルは
skipです。契約にスキルが書き込みを行うかどうかの記載がない場合は、書き込みを行うものとします。呼び出しレーンを読み取れない場合は、ユーザー専用とします。種類が先行ステップの出力に依存するステップは、取り得る種類を示して条件付きとして提示し、その出力が得られた時点で種類を確定します。種類 意味と前提条件 コスト負担者 skipこのステップは実行せず、グラフはそのまま続行します。該当条件なし、スキル未インストール、またはその場にいる誰も付与できる権限がない場合に適用します。このステップに依存するステップも、同じ理由でスキップされます。 なし。 user-handoff人が対応します。対象がユーザー専用である、ステップが破壊的または不可逆である、人の判断が必要である、あるいは作業に必要な権限を人は持っているがセッションは持っていない場合に適用します。 人の時間。本人の裁量によります。 invoke-model-skillルーターが実行します。上記の行に該当せず、対象がインストール済みかつモデル呼び出し可能で、作業に必要な権限をセッションがすでに持っており、破壊的でも不可逆でもない場合に適用します。 今回の実行の予算。 rejectステップではありません。リクエストをグラフとして実行できない場合の全体結果です。循環がある場合はその循環を示します。 なし。 -
user-handoffごとに、人間が何をするか、どの結果を持ち帰るかを伝えてください。スキルの場合は、インストール済みの名前を使ったホストの構文で、人間が入力する正確な呼び出し内容を示します(スキルがモデルによって呼び出される場合でも、破壊的なステップは人間が入力します)。判断の場合は、質問と、次のステップを変える回答を示します。ホストの呼び出し構文が不明な場合は、推測せずに尋ねてください。 -
いずれかのステップを実行する前に、すべてのステップの全フィールド、各ステップをその位置に置く理由、停止条件を含め、入力するグラフ全体を順番どおりに提示してください。ステップ5で判明しなかったホストの呼び出し構文があれば、ここで尋ねてください。人間が順序だけを求めた場合は、ここで停止してください。グラフ内のどこかに、ファイル、レコード、または成果物を書き込む
invoke-model-skillステップがある場合、ハンドオフの前後を問わず、提示した計画への承認を、この時点で一度だけ求めてください。この承認は、計画が変更されるまで、再開後も含め、計画に示されたすべての書き込みを承認します。ただし、ステップにない権限が与えられるわけではないため、user-handoffが実行ステップに変わることはありません。実行対象のステップに書き込みがない場合は、計画を提示した直後に実行してください。人間が計画を編集した場合は、順序を付け直し、循環がないことを再確認してから、計画を再提示し、実行してください。 -
順番どおりに実行してください。各
invoke-model-skillステップでは、そのステップのターゲットを指定して Skill ツールを呼び出し、そのステップにつき1回、意図と先行ステップの出力を渡してください。次のステップを開始する前に、期待される出力を確認してください。ファイルまたはレコードが存在するか、スキル自身の報告に結果が記載されている必要があります。ステップが失敗した場合は、そこで停止してください。出力によって後続ステップの前提条件が満たされなくなった場合は、そこで停止するか、その理由を付けて後続ステップをskipにしてください。別のスキルに差し替えて再試行してはいけません。 -
最初の
user-handoffで停止してください。停止レポートは、再開時に参照する状態です。提示したグラフ、承認の有無、実行した各ステップとその結果、ハンドオフの内容と持ち帰るべきもの、保留中のステップを記載してください。人間が同じ会話内でその結果を持ち帰ったら、新しい呼び出しでそのレポートを読み、ハンドオフステップの期待される出力と結果を照合してください。一致する場合はその結果を当該ステップの出力として、同じ承認のもと、次のステップから実行を続けます。結果が変わっているか失敗している場合は、そのステップから計画を立て直し、実行前に新しいグラフを提示してください。レポートを参照できない場合は、ステップ1からやり直してください。 -
最後に、提示したグラフと、各ステップの結果(実行済みとその結果、理由付きでスキップ、ハンドオフ、または停止により保留中)を示し、停止条件に到達したか、名前を示したステップ(ハンドオフまたは失敗)で早期停止したかを記載してください。スキップまたは未実行のステップの出力が停止条件に必要な場合は、停止条件を満たさずに実行が終了したことを明記してください。
ルール
re0-workflow自体も、その別名paperthinもステップとして選択してはいけません。別名はここに処理を転送するだけなので、どちらを選んでもループになります。- ルーター自体は何も書き込みません。書き込みはすべて、実行ステップがそのスキルの契約に従って行います。
- 破壊的、または取り消し不能な操作とは、削除、強制プッシュ、公開、タグ付け、メッセージ送信、金銭の支出を指します。そのようなステップは、スキルがモデルによって呼び出される場合でも
user-handoffにしてください。 - ユーザー専用スキルを実行してはいけません。また、順序を実行可能にするためにインストール済みスキルを除外してはいけません。そのスキルはグラフに残し、
user-handoffにしてください。ルーターが実行できないステップは、user-handoffまたはskipにしてください。暗黙の推奨にしてはいけません。また、スキップは成功として扱えません。 nbaはライブ状態から次のアクションを1つ選び、何も実行しません。このスキルは、1つの明示された意図に対してグラフの順序を決め、実行します。sipは、新たに変更された出力に対する固定の条件付きグラフを担当します。意図に合致する場合は1つのノードとして選択し、その構成要素を再現してはいけません。
検証
最初のステップを実行する前と、最終レポートの作成前に、もう一度次の点を確認してください。
- 選択した各ターゲットについて、トリガー、出力、インストール、呼び出しレーン、権限を、それぞれの契約から確認しました。
- 各ステップにすべてのフィールドが含まれ、タイプが正確に1つ設定されています。グラフには観測可能な停止条件が1つあり、循環があれば、循環全体を明示して却下しました。
- インストール済みのユーザー専用、破壊的、または意思決定を伴う各ステップは、正確な呼び出し方法または質問と、持ち帰るものを明記した
user-handoffであり、invoke-model-skillではありません。 - 何かを実行する前にグラフを提示し、実行するステップが書き込みを行う場合は、承認を一度だけ求めました。
- 各実行ステップの期待される出力を確認してから次のステップを開始し、最初の
user-handoffで実行を停止しました。 - レポートには、各ステップの結果と、停止条件に到達したか、またはどのステップで早期停止したかを記載しています。