Simon Willison Blog の「datasette-agent 0.2a0」リリース
Simon Willison が公開した datasette-agent の新バージョンは、実行中の対話によるユーザー確認機能と、SQL クエリの保存機能を実装し、AI エージェントの安全性と実用性を大幅に向上させた。
キーポイント
実行中ユーザー対話機能の実装
ツールが実行中にユーザーへ質問(Yes/No、選択肢、自由入力)を行う機能が追加され、サーバー再起動後も会話履歴が保存されるため中断から再開可能になった。
SQL クエリ保存機能の導入
エージェントが生成した SQL を Datasette の保存クエリとして保存する新ツールが追加され、必ず人間による承認(名前、データベース、可視性の確認)が必要となった。
副作用防止のための設計思想
ユーザーの回答を待ってから実行を再開するため、重要な処理や副作用を伴う操作の前に必ず `ask_user()` を呼び出すことが推奨されている。
影響分析・編集コメントを表示
影響分析
このアップデートは、AI エージェントが単なる自動化ツールから、人間の介入を前提とした安全な協働パートナーへと進化することを示す重要なマイルストーンです。特にデータ分析領域において、AI が生成したコードの実行前に人間が確認するプロセスをシステムレベルで標準化できる点は、実務導入におけるリスク管理の観点から極めて重要です。
編集コメント
AI エージェントの実用化において最も課題となる「安全性」と「信頼性」を、技術的な仕組み(コンテキスト保存や承認フロー)で解決した点が高く評価されます。特に SQL 生成のようなリスクの高いタスクにおけるヒューマン・イン・ザ・ループの標準化は、業界全体にとって有益なベストプラクティスです。
リリース: datasette-agent 0.2a0
リリースノートからのハイライト:
- ツールは、実行の途中でユーザーに質問できるようになりました。コンテキストパラメータを宣言するツールは ToolContext オブジェクトを受け取り、
await context.ask_user(...)を使用して、yes/no 形式、複数選択形式(options=[...])、または自由記述形式(free_text=True)の質問を行うことができます。質問への回答が待機している間、エージェントのターンは一時停止され、その質問はチャット UI でフォームとして表示され、内部データベースに永続化されるため、サーバー再起動後も一時停止された会話は維持されます。回答されると、ツールは保存された回答を再生しながら先頭から再実行されるため、副作用が発生する前にask_user()を呼び出す必要があります。#20
- 新しい組み込みの save_query ツール: エージェントが作成した SQL を Datasette の格納済みクエリとして保存できるようになりました。保存には常に人間の承認が必要です - エージェントは完全な SQL と提案された名前、データベース、および可視性を表示し、ユーザーが「はい」をクリックするまで何も保存されません。#20
この ask_user() 機能は、私が昨日 構築した 新しい LLM アルファ版によって可能になりました。
Tags: ai, datasette, generative-ai, llms, datasette-agent
⟦CODE_0⟧
⟦CODE_1⟧
原文を表示
Release: datasette-agent 0.2a0
Highlights from the release notes:
Tools can now ask the user questions mid-execution. Tools that declare a context parameter receive a ToolContext object, and await context.ask_user(...) can ask a yes/no, multiple-choice (options=[...]) or free-text (free_text=True) question. While a question is unanswered the agent turn suspends: the question renders as a form in the chat UI and persists to the internal database, so suspended conversations survive a server restart. Once answered, the tool re-executes from the top with stored answers replayed, so call ask_user() before performing side effects. #20
New built-in save_query tool: the agent can save SQL it has written as a Datasette stored query. Saving always requires human approval - the agent shows the full SQL plus the proposed name, database and visibility, and nothing is stored until you click Yes. #20
The ask_user() feature was enabled by the new LLM alpha I built yesterday with the help of Claude Fable 5.
Tags: ai, datasette, generative-ai, llms, datasette-agent
関連記事
[AINews] 今日特に大きな出来事はありませんでした
Latent Space は、GLM 5.2 が依然として注目されていると指摘しつつ、AIE WF 2026 の通常チケットが月曜日に完売すると発表しました。同サイト購読者向けに限定割引を提供し、参加者には Warp や Datadog などからのスポンサークレジットも付与されます。
米国がアンソロピックの「Fable 5」発売を禁止、しかし市場は動じず
米国政府は国家安全保障上の懸念から、アマゾンの研究者らがガードレール回避手法を発見したとして、アンソロピックに対し最新モデル「Fable 5」と「Mythos 5」の販売差し止めを命じた。サイバーセキュリティ研究者らはこの措置が危険だとする公開書簡に署名し、同社も他モデルでも同様の抜け道が存在すると指摘している。
社内データ分析エージェントの構築方法について
GitHub は、大規模なデータ組織が直面する自己完結型のデータアクセスと洞察提供の課題に対し、AI を活用した信頼性の高い解決策として、社内でデータ分析エージェントを構築したことを発表した。
今日のまとめ
AI日報で今日の重要ニュースをまとめ読み