Communityコーディング&開発github.com

stevengaojn2010/agent-pulse

エージェントの負荷と割り込み可能性を報告する軽量なOpenClawスキルです。

agent-pulse とは?

Agent Pulseは、AIエージェント(Claude Code、Cursor、Codex等)の現在の負荷状態と割り込み可能性を、固定フォーマットのコンパクトなパルスカードとして報告する軽量スキルです。このスキルは、エージェントが現在ビジーか、アイドルか、新しいタスクを受け入れられるかを迅速に判断するために設計されています。OpenClaw環境向けに最適化されており、エージェント自身の内省ではなく、実行中のタスク、キューイングされたメッセージ、ブロック状態などの安価な外部信号のみを使用してステータスを評価します。`Agent Pulse`や`/pulse`、日本語の自然言語トリガーに応答し、固定の4行出力(ステータス、割り込み可能性、新タスク受付可否、理由)を返します。このスキルは、スキル自身の問い合わせを負荷としてカウントしないガードレールを持ち、ルールベースの判定を優先することで、エージェントの自己評価によるバイアスを排除します。同梱の`scripts/pulse_eval.py`スクリプトにより信号のマッピングとパルス結果の算出を行い、出力は常にコンパクトで説明過多にならないよう設計されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add stevengaojn2010/agent-pulse

Installed? Explore more コーディング&開発 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

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

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

ドキュメント

Agent Pulse

概要

このスキルは厳格なステータス確認プロトコルとして使用します。現在の負荷と割り込み可能性について、固定の表現と固定フィールドでコンパクトなパルスカードを返します。

デフォルトはベースラインステータスであり、自己影響を受けません。パルス要求そのものが、直前よりもエージェントを忙しく見せるべきではありません。

標準トリガー

以下を直接のパルス要求として扱います:

  • Agent Pulse
  • /pulse
  • 你现在忙吗
  • 忙不忙
  • 现在方便吗
  • 现在负荷怎么样
  • 能接新任务吗
  • 能插个任务吗
  • 现在能接活吗

ユーザーが明示的に Agent Pulse または /pulse を使用した場合、常に固定のパルスカード形式を返し、説明を求められない限り会話的な説明に切り替えてはいけません。

固定出力契約

最初の行ラベルの後、正確にこの4行を返します:

Agent Pulse
status: <idle|light|busy|blocked|unknown>
interruptibility: <high|medium|low>
acceptNewTask: <yes|caution|no>
reason: <short reason>

ルール:

  • デフォルトで余分な段落は付けない
  • デフォルトで箇条書きは使わない
  • ユーザーが理由を尋ねない限り、長い説明はしない
  • reason は可能な限り12語以内に保つ

ステータスの意味

  • idle(アイドル): 積極的に占有されていない;割り込みが容易
  • light(軽負荷): アクティブだが負荷はない;作業を受け入れ可能
  • busy(忙しい): 現在占有中;割り込みは最小限にすべき
  • blocked(ブロック中): 依存関係・ツール・人間を待っている
  • unknown(不明): 信号が不十分または矛盾している

判断ワークフロー

1. 低コストの信号を収集

最初は安価な信号のみを使用:

  • 実行中のタスクまたはストリーム
  • キューイングされたメッセージ
  • ブロック中または待機状態
  • 最近のアクティビティの新しさ
  • 明らかなバックログの兆候
  • 進行中のアクティブプロジェクト
  • まだ未配信の保留中のアクションアイテム
  • 現在重いツールが実行されていなくても、すでに開始された作業
  • リリースクリティカルまたは期限間近の作業
  • 可視な場合の現在のツールまたはexecアクティビティ
  • エージェントがユーザーまたは外部依存関係を待っているかどうか

OpenClawスタイルの環境では、内省よりも可視ランタイム信号を優先します。優れた情報源としては、最近のツールアクティビティ、保留中のバックグラウンドexec実行、進行中の未配信作業、および必要に応じた session_status の簡易チェックが含まれます。ルーチンの非同期完了通知やパルスクエリそのものを負荷の証拠としてカウントしてはいけません。

2. バンドルスクリプトで評価

scripts/pulse_eval.py を使用して、信号JSONをパルス結果にマッピングします。

3. 固定カードを返す

トリガーが Agent Pulse または /pulse の場合、固定カードのみを出力します。 トリガーが自然言語の場合でも、ユーザーが明らかに説明を求めている場合を除き、固定カードが推奨されます。

ガードレール

  • モデルの判断よりも決定論的なルールを優先する
  • 精度を過大に主張しない
  • 証拠なしに隠れた内部状態を推測しない
  • 信号が弱い場合は unknown を使用する
  • no は真に過負荷またはリスクのある進行中状態に対してのみ使用する
  • 積極的に実行しない;デフォルトでは明示的なパルストリガーを必要とする
  • パルスクエリそのものを負荷の証拠として扱わない

デプロイメントのデフォルト

ユーザー/環境間で意図されたプロダクト動作を再現するため:

  • 明示的なパルス要求でのみトリガーする
  • デフォルトで固定パルスカードを返す
  • 自己影響ステータスよりもベースラインステータスを優先する
  • ルールを第一に、モデルの推論を第二に使用する
  • ユーザーが理由を尋ねない限り、出力はコンパクトに保つ

リソース

scripts/

  • scripts/pulse_eval.py は単純な信号をパルス結果に変換します
  • scripts/render_pulse.py は正確な固定出力カードをレンダリングします

references/

  • references/rules.md には分類しきい値と出力ポリシーが含まれています
  • references/openclaw-signals.md にはOpenClawスタイルのランタイム向けの実用的な信号マッピングレシピが示されています

関連スキル