AI によるステータスページの監視:変化があったときだけ通知
エージェントがスケジュールに従ってステータスページを読み、お使いのスクリプトがそのまま処理できる JSON の判定を 1 つ返します。
- Web
- スケジュール実行
- コールバック
- 予算の上限
実際の実行を見る
2026年10月7日 の実際の実行を再生しています。モデル: openai/gpt-6-luna。
入力
{
"url": "https://ephemer.al/api/samples/status"
}成功run_3f4e1dbb6f90848c51a8d4f85e0d648f$0.03 のうち $0.003616
- 待機中予算 $0.03 を確保
- MicroVMmicroVM ready
- MicroVMworker started · shell off · web on
- Web
web_fetch https://ephemer.al/api/samples/status - 結果
web https://ephemer.al/api/samples/status → 200 - MicroVMmicroVM destroyed
- 成功モデル呼び出し 2 回、トークン 2,449記録された出力(英語)
{ "ok": true, "http_status": 200, "summary": "The page reports all systems operational; the listed incidents are resolved." } - ワーカーを破棄$0.003616 を請求、$0.026384 を解放
モデル $0.000216 · Web $0.001 · コンピュート $0.0024
自分で実行する
リクエスト全体が入力された状態で、サンプルをプレイグラウンドで開きます。実行はご自身のアカウントで、表示された予算の範囲内で、同じ読み取り専用のサンプルシステムに対して行われます。
このサンプルの予算: $0.03
仕組み
15 分ごとにスケジュール実行がページを取得し、{ok, http_status, summary} を返します。Web アクセスは 1 つのドメインに限定され、検索はオフなので、チェックはそのサイトだけを読み、他には触れません。ok が false に変わったときだけ、スクリプトがチャットに投稿します。
エージェントにできること、できないこと
権限はリクエストの一部です。ここに挙げていないものは、実行では利用できません。
| 設定 | 許可 |
|---|---|
| 接続 | なし |
| Web | ephemer.al のみ |
| シェル | オフ |
| ファイル | なし |
| ゼロデータ保持 | オフ: 記録は 30 日間保存されます |
| 予算 | $0.03、厳格な上限 |
| タイムアウト | 90 秒 |
認証情報がマシンに入ることはありません。ブローカーが各呼び出しに認証情報を付与し、上記のメソッドだけを通します。
コード
サンプルが送信する正確なリクエストです。EPHEMERAL_API_KEY には、組織のメンバーキーを設定してください。
curl -X POST $EPHEMERAL_URL/v1/runs \
-H "Authorization: Bearer $EPHEMERAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d @request.jsonリクエスト本文の全体 workflow.json
同じ本文を、ファイルをインラインにした形で示します。
{
"prompt": "Fetch the page at input.url with web_fetch. Reply with one JSON object and nothing else: {\"ok\": boolean, \"http_status\": number, \"summary\": string}. Set ok to true only when the response status is 200 and the page reports no ongoing incident, outage or degraded service; resolved past incidents do not count. summary is one sentence of at most 200 characters.",
"web": {
"allow": [
"ephemer.al"
],
"search": false
},
"shell": false,
"timeout_seconds": 90
}このサンプルはスケジュールで実行されます。UTC の */15 * * * *。スケジュールは保存済みのワークフローを開始するため、まずリクエストをワークフローとして保存し、その後スケジュールを作成してください。