🧩 Kiro Update Judge

このサイトのしくみ・使っている技術・運営コスト

DOC / KIRO-UPDATE-JUDGE / ARCHITECTURE

このサイトの設計図

kiro.dev の Changelog・ブログ・ドキュメントの更新を 1 日 4 回集め、日本語に訳し、判定 AI「Strands Decider 2B」で注目度・重要度・カテゴリを付けて公開しています。下の図が全体の構成です。

構成
サーバーレス
場所
AWS 東京リージョン
更新
1 日 4 回(日本時間 0:30・6:30・12:30・18:30)
作り方
AWS CDK(TypeScript)
項目
読み込み中…
最終更新
読み込み中…
月額
約 $0.4〜3.4(推測)
FIG.1 システム構成図
システム構成図 AWS クラウドの東京リージョンに、このサイトのスタックがある。EventBridge Scheduler が 1 日 4 回 Step Functions を起動し、集める・選ぶ・判定する・公開するの 4 つの Lambda を順に動かす。集めるは kiro.dev から取得し、Amazon Translate・S3・DynamoDB を使う。選ぶと判定するは DynamoDB を使い、判定するは AWS Update Judge と共用の Bedrock AgentCore Runtime 上の Strands Decider 2B に問い合わせる。公開するは DynamoDB を読んで S3 に JSON を置き、CloudFront がブラウザに配信する。 AWS クラウド(東京リージョン) このサイトのスタック(AWS CDK でまとめて作成) AWS Step Functions(順番とやり直しを管理) AWS Update Judge と共用 読む kiro.dev RSS・sitemap・ページ あなたの ブラウザ EventBridge Scheduler 1 日 4 回 起動 ① 集める Lambda ② 選ぶ Lambda ③ 判定する Lambda(1 件ずつ) ④ 公開する Lambda Translate 英語 → 日本語 S3 docs の写し DynamoDB 項目と判定結果 S3 画面用 JSON CloudFront 配信 Amazon Bedrock AgentCore Runtime Strands Decider 2B(CPU で動く判定 AI) 凡例 データの流れ・使うサービス 判定 AI への問い合わせ 範囲(点線の枠) システム構成図(縦) 上から順に、kiro.dev、AWS クラウドの中のスタック(EventBridge Scheduler、Step Functions の 4 つの Lambda とそれぞれが使うサービス、CloudFront)、あなたのブラウザ。判定する Lambda は AWS Update Judge と共用の AgentCore Runtime 上の Strands Decider 2B に問い合わせ、結果を DynamoDB に書く。公開する Lambda は DynamoDB を読んで S3 に JSON を置く。 AWS クラウド(東京リージョン) このサイトのスタック(AWS CDK) AWS Step Functions kiro.dev RSS・sitemap・ページ EventBridge Scheduler 1 日 4 回 起動 ① 集める Lambda Translate(日本語に翻訳) S3(docs の写し) DynamoDB(項目と記録) ② 選ぶ Lambda DynamoDB(未判定) ③ 判定する Lambda 1 件ずつ AWS 版と共用 AgentCore Runtime Strands Decider 2B DynamoDB(結果を書く) ④ 公開する Lambda DynamoDB(読む) S3(画面用 JSON) CloudFront S3 の JSON と画面を配信 あなたのブラウザ
  1. ① 集める kiro.dev の RSS とサイトマップを見て、新しい項目を DynamoDB に保存し、Amazon Translate で日本語にします。ドキュメントの本文の写しは S3 に置きます。
  2. ② 選ぶ まだ判定していない項目を選びます。新着が無ければ 0 件で、判定 AI は起こしません。
  3. ③ 判定する 1 件ずつ Strands Decider 2B に 3 つの質問(注目度・重要度・カテゴリ)をし、結果を DynamoDB の同じ項目に書きます。判定 AI は AWS Update Judge と同じものを共用しています。
  4. ④ 公開する 判定 AI のセッションを止めてから、DynamoDB の項目を読んで画面用の JSON を S3 に書き出します。CloudFront がそれを配信します。

TBL.1 使っている技術(部品表)

サービス・技術このサイトでの役割料金のかかり方
Amazon Bedrock AgentCore Runtime+ Strands Decider 2B判定 AI を動かす実行環境。小型の意思決定モデルを、GPU なしで CPU だけで動かす動いている時間だけ(判定後すぐ止める)
AWS Step Functions4 つの処理の順番・1 件ずつの判定・失敗時のやり直し。判定に失敗した項目は飛ばし、次の回に(7 日以内なら)やり直します状態の移り変わり 1 回ごと
AWS LambdaPython 3.13・外部ライブラリなし集める・選ぶ・判定する・公開するの 4 つの処理呼ばれた回数と実行時間
Amazon EventBridge Scheduler1 日 4 回の起動(日本時間 0:30・6:30・12:30・18:30)起動 1 回ごと
Amazon Translateタイトル・要約・ドキュメントの追加部分を英語から日本語へ訳した文字数
Amazon DynamoDB項目・判定結果・取得の記録読み書きした回数(オンデマンド)
Amazon S3画面のファイルと JSON、ドキュメント本文の写し(どちらも非公開)保存量と読み書きの回数
Amazon CloudFront画面の配信。セキュリティ用のヘッダー(CSP など)も付ける配信量とリクエスト数
AWS CDK(TypeScript)上のサービスをまとめてコードで作る—
HTML・CSS・JavaScript画面。フレームワークや外部のスクリプトを使わない—

サーバーレス: 上の表に、常に動かしているサーバーはありません。どれも呼ばれたときだけ動き、使った分だけ料金がかかります。新着が無い回は kiro.dev に 3 回問い合わせるだけで、約 9 秒で終わります(2026-11-02 時点の実測)。

CALC.1 毎月の運営コストの目安

判定 AI

判定にかかった時間 × 約 $0.25 / 時間

$0.2〜0.9

翻訳

訳した文字数 × $15 / 100 万文字

$0.2〜2.4

そのほか

Lambda・Step Functions・S3・DynamoDB・CloudFront・Scheduler

約 $0.1 以下

合計(月)

推測

$0.4〜3.4

月額の幅($0〜$4)

新着が月 40 件・ドキュメントの変更なしなら左端、月 60 件・ドキュメントの変更が多い月は右端に近づきます。

ONE-TIME約 $2.64最初の 1 回だけ(実測・2026-11-01): 過去分 358 件の取り込みの翻訳 $1.66 + 一括判定と試験の判定 $0.98

NOTE.1 工夫している点(設計メモ)

  1. M-01

    変わっていなければ取りに行かない

    前回の目印を添えて聞き、「変わっていない」と返れば本文を受け取りません。ふだんは 1 回 3 リクエストです。

    ETag / If-None-Match / 304
  2. M-02

    履歴の無い docs も差分で追う

    サイトマップの更新日で候補を絞り、本文のハッシュと行ごとの比較で、本当に変わったページだけを項目にします。

    lastmod → SHA-256 → diff
  3. M-03

    開閉式の中身も読む

    Changelog の開閉式の部分は HTML に中身がありません。ページ末尾に埋め込まれたデータから読みます。

    React Server Components
  4. M-04

    パッチは版ごとに 1 件

    小さな版の更新を版ごとに分け、独立したページがある版は作りません。同じ更新を二重に判定しません。

    1 版 = 1 項目
  5. M-05

    robots.txt を守る

    禁止されている .md ファイルと llms.txt は取りません。名前を名乗り、1 秒以上の間隔を空けます。

    User-Agent / 1 秒以上
  6. M-06

    判定 AI はすぐ止める

    判定が終わったらセッションを止め、待ち時間の料金を防ぎます。1 回の実行の中では同じセッションを使い回します。

    StopRuntimeSession
  7. M-07

    境目はデータの分布から

    重要度は 1.1 前後に集まるため、2026-11-01 に判定した過去分 358 件の上位・下位 5% を HIGH・LOW の境目にしました。

    HIGH ≥ 1.2782 / LOW < 0.9119
  8. M-08

    消さない・開けすぎない

    データベースは削除保護付き。S3 は非公開で、各処理には必要な権限だけを与えています。

    削除保護 / 最小権限