本文へ移動
cccskills
無料GitHub で公開日本語紹介

ao-answer

AO上でユーザーの返答を待つセッションを見つけ、質問や承認内容を選択肢で示して回答を返します。離席中の判断ルールにも沿って処理します。

原文原文の説明を見る

Find AO sessions that wait on the user, show each question or approval as tap-to-answer options, and send the answer back to that session, following ao-rules "Decisions" (default, away mode, standing approvals). Use for "what's waiting on me", "answer <session>", "approve it", the AO waiting check routine, and away mode.

OrchestratorInc/agent-orchestratorスター 13,873(GitHub 13,873 + cccskills 0)

実行スコア 未検証

インストール方法を見る

こんなときに便利

  • AOで返答待ちの内容を確認したいとき
  • 特定セッションの質問に答えたいとき
  • 保留中のコマンドや変更を承認したいとき
  • 離席中の判断ルールを適用したいとき

日本語での紹介

できること

AO上で返答待ちになっているセッションを探し、質問・承認・通常の問いかけを整理して提示します。承認では実行内容や変更内容、リスク、選択肢を示し、質問では項目ごとの選択肢や自由入力をまとめます。選んだ回答は対象の作業セッションへ直接返します。離席モードが有効な場合は、ao-rules の「Decisions」に沿って判断できるものを処理し、後から内容を報告します。

こんなときに便利

AOで何が返答待ちか確認したいときや、特定セッションの質問に答えたいときに使えます。保留中のコマンドやファイル変更を確認して承認する場面、定期的な待機確認、離席中の判断ルールを適用する場面にも向いています。

使い方の例

  • 「AOで何が返答待ちか見せて」
  • 「このセッションの質問に『東京』と答えて」
  • 「保留中の変更を承認して」

注意点

回答はオーケストレーター経由ではなく、作業セッションに直接送られます。離席モードで判断できない項目は、ユーザー向けに提示されます。

この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。

資料チェック

SKILL.md の記述から、注意が要る操作と導入の前提を AI が確認しました。点数は実際に動かした結果(実行検証)だけで付けています。

安全面送信・削除・コマンド実行などの扱いが明示されているか
B一部不足承認選択肢と離席ルールは示すが、離席中は判断・回答を実行する。
導入のしやすさ必要なツールや API キーが少ないか、書かれているか
B一部不足aoapi ヘルパー、ao-rules、ホストごとの接続情報が前提だが、準備方法は一部のみ。

点数には入れていません。 2026年10月29日 時点で AI(OpenAI Codex)が判定しました。目安なので、入れる前に原文も確認してください。

評価が違うと思ったら、見直しを依頼する

どの項目が、なぜ違うと思うかを書いてください。ログインは不要です。内容を SKILL.md と照らし合わせて評価を作り直し、この欄に反映します。

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

含まれるファイル(1)

  • SKILL.md5.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Follow the ao-rules skill. Its "Decisions" section says who may answer. Answers go straight to the worker, not through the orchestrator: the user's pick must arrive exactly as given.

1. Find what's waiting

On every host, in parallel:

f(){ <aoapi helper>
  aoapi GET 'sessions?active=true' | python3 -c '
import json,sys,time,calendar
now=time.time()
for s in json.load(sys.stdin)["sessions"]:
    st=(s.get("activity") or {}).get("state"); t=(s.get("lastEventAt") or "")[:19]
    if st in ("waiting_input","blocked"): print("W", s["id"])
    elif st=="idle" and t and now-calendar.timegm(time.strptime(t,"%Y-%m-%dT%H:%M:%S"))<86400: print("I", s["id"], s.get("lastEventAt"))' |
  while read -r k id at; do
    if [ "$k" = W ]; then
      aoapi GET "sessions/$id/conversation" | python3 -c '
import json,sys
d=json.load(sys.stdin); found=False
for a in d.get("activities") or []:
    if a.get("activityKind") in ("approval","user_input") and a.get("status")=="pending":
        found=True; print(json.dumps({"session":sys.argv[1],"kind":a["activityKind"],"requestId":a.get("requestId"),
            "summary":a.get("summary"),"decisions":a.get("decisions") or (a.get("detail") or {}).get("decisions"),"detail":a.get("detail")}))
if not found: print(json.dumps({"session":sys.argv[1],"kind":"reply"}))' "$id" 2>/dev/null
    else
      aoapi GET "sessions/$id/history?offset=0&limit=1" | python3 -c '
import json,sys,re
t=(json.load(sys.stdin).get("turns") or [{}])[0]; r=(t.get("agentResponse") or "").strip()
if re.search(r"\?[\s*_`)\]]*$", r): print(json.dumps({"session":sys.argv[1],"kind":"reply","lastEventAt":sys.argv[2],"asked":r[-300:]}))' "$id" "$at" 2>/dev/null
    fi
  done; }; f

Each line is one thing waiting:

kindWhat it is
approvalPermission to run a command or change files. summary and detail.input say what; decisions are the options [{id, kind, label}]
user_inputA question. detail.message asks it; detail.schema.properties are the fields, with choices in enum or oneOf
replyThe agent asked in plain text: a session that waits with no request (or a terminal session), or an idle session from the last 24 hours whose last reply ends with a question (asked holds its end). Read its last reply (ao-status "One session in detail")

In the AO waiting check routine: keep what you already showed in ~/.ao-grok/shown.txt on via, one line per item (<host> <session> <requestId>, or <host> <session> reply <lastEventAt> for a reply), and message only about new items. Send nothing when nothing new is waiting.

2. Show it

Per session, one short briefing first: <host>/<session> and its name, what it is doing, and what it asks, in one or two sentences. Don't recommend anything. Then:

  • approval: the command or change verbatim, the risk you judge (ao-rules), and the decisions labels exactly as options in one card. Mark a decision whose kind is allow_always as "changes this agent's permissions for good".
  • user_input: one card with every question in it, in order (the card pages through them). A field with oneOf or enum is a question: use the oneOf titles or enum values as its options, exactly. A field whose _meta._askUserQuestionCustomAnswer.questionId names another field is that question's "Other" box: show it as a typed-answer option on that question, not as its own question. Any other free-text field is a question with a typed answer. detail.inputMode url can't be answered from chat: tell the user to open AO.
  • reply: the agent's question from its last reply, with options if it gave clear ones, else ask for a typed answer.

Several sessions at once: explain them together, then cards per session.

3. Answer

On the owner host, from its via computer:

  • Approval: aoapi POST "sessions/<id>/conversation/approvals/<requestId>/resolve" "$(python3 -c 'import json,sys; print(json.dumps({"decisionId":sys.argv[1]}))' '<decision id>')"
  • Question: content maps each field name to the pick. For a picked option use its oneOf const (or the enum value), not the title. For a typed "Other" answer, put the text under the "Other" field (for example question_0_custom) and leave its question out: aoapi POST "sessions/<id>/conversation/inputs/<requestId>/resolve" "$(python3 -c 'import json,sys; print(json.dumps({"action":"accept","content":json.loads(sys.argv[1])}))' '{"<field>":"<pick>"}')" The user says no or skip: {"action":"decline"}.
  • reply: send the answer as a message (ao-rules "Messages to agents"): aoapi POST "sessions/<id>/send" "$(python3 -c 'import json,sys; print(json.dumps({"message":"[via Grok Bot] "+sys.argv[1],"userAuthored":True}))' '<answer>')"

Confirm in one line. An error that says the request is not pending or not found means it was already answered or closed: say so. Then run step 1 for that session again, and deal with anything still open.

Away mode

When memory says away mode is on and its end time hasn't passed, answer as ao-rules "Decisions" allows instead of showing cards, and log each one. Tell the user afterwards in one line per answer: session, what it asked, what you picked, why. Anything you may not decide: show it as in step 2, and say away mode left it for them.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

ao-actions

無料概要あり

AOのセッションやPRに対して停止・再開・レビュー・マージなどを行い、ブラウザー画像や成果物の送信、ホスト維持、定期実行も扱います。

  • AOのセッションを中断・再開したいとき
  • PRのレビューやマージを進めたいとき
  • セッションの画面や成果物を受け取りたいとき
OrchestratorInc/agent-orchestrator1.4万2026年10月30日 更新

ao-desktop-dev

無料概要あり

AOの実際のデスクトップアプリを起動・再起動し、画面変更を確認するスキル。ローカルデータでの動作確認や、プロセス・ポート競合などの原因調査を支援します。

  • AOの実アプリで画面変更を確認したいとき
  • 分離データや既存データで動作確認
  • 複数PRを組み合わせた画面レビュー
OrchestratorInc/agent-orchestrator1.4万2026年10月30日 更新

ao-orchestrator

無料概要あり

AOのプロジェクト担当オーケストレーターに依頼や質問を届け、返答を確認してユーザーに伝えます。

  • プロジェクトの作業を開始したいとき
  • 進捗やこれまでの経緯を尋ねたいとき
  • 変更依頼をオーケストレーターに伝えたいとき
OrchestratorInc/agent-orchestrator1.4万2026年10月30日 更新

ao-rules

無料概要あり

AOを使う各スキルに共通する接続方法やホストの扱い、判断・承認、書き込み、秘密情報のルールを確認できます。

  • AOスキルを使う前に共通ルールを確認したいとき
  • 複数ホストのセッションを区別したいとき
  • リモートホストへの接続方法を確認したいとき
OrchestratorInc/agent-orchestrator1.4万2026年10月30日 更新

ao-setup

無料概要あり

AOが動くコンピューターを検出してホスト情報を記録し、必要に応じてリモート接続や定期確認の設定を進めます。

  • AOを初めて使うために環境を確認したいとき
  • ローカルホストを登録したいとき
  • リモートホストを追加したいとき
OrchestratorInc/agent-orchestrator1.4万2026年10月30日 更新

ao-status

無料概要あり

AOの各ホストで動くセッションの状態や、マージ可能なPR、レビュー通知をまとめて確認し、必要に応じて日次ダイジェストを作成します。

  • AOで実行中や待機中の作業を確認したいとき
  • マージ可能なPRを探したいとき
  • レビュー結果やPRの更新を把握したいとき
OrchestratorInc/agent-orchestrator1.4万2026年10月30日 更新

OrchestratorInc のスキルをすべて見る

このスキルの問題を報告する