Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/aws-samples/sample-text2sql-agent --skill agent-chat명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | agent-chat |
| description | Agent に自然言語で質問を送り、データを SQL で分析した結果を返す。 |
このスキルは DWH(データウェアハウス)のデータを自然言語で分析するためのものです。Amazon Bedrock AgentCore Runtime 上で動作する Agent に質問を送り、データを SQL で分析した結果を返します。
Admin UI やブラウザ版の Agent UI と同等のチャット操作を、同梱の Python スクリプト経由で CLI から実行できます。
uv (Python tool manager) がインストールされていること各スクリプトは PEP 723 のインラインメタデータで boto3 を宣言しているため、uv run が初回実行時に依存を自動解決します。pyproject.toml や venv のセットアップは不要です。
このスキルを初めて使うとき、ユーザーに以下を聞いてください:
arn:aws:bedrock:ap-northeast-1:<AccountId12桁>:agent-runtime/dwh_agentap-northeast-1一度教えてもらったら、以降の会話ではそのまま使い回してください。以下のコマンド例では $RUNTIME_ARN / $REGION をそれぞれの値で置き換えてください。
Agent ID はデフォルトで "default" を使用します。ユーザーが別の Agent を指定したい場合のみ Agent ID を聞いてください。
| スクリプト | 目的 |
|---|---|
.kiro/skills/agent-chat/scripts/chat.py | 質問を送り、AgentCore Runtime のレスポンスを 1 回の呼び出しで構造化 JSON として返す |
レスポンスは内部で SSE を読み取り、トークン連結・ツール呼び出し抽出・チャート情報の集約までやります。Kiro は中間ファイルを扱う必要も、SSE を自前でパースする必要もありません。
プロンプト JSON ファイルは必ず Kiro の native fsWrite ツール で作成してください。
echo ... >, cat <<EOF >, ヒアドキュメントなどのシェル経由のファイル作成は 使わないfsWrite ならそのまま書けるユーザーの質問を受け取ったら:
fsWrite で ./tmp/dwh-payload.json を作成します。内容例:
{
"prompt": "先月の売上上位 5 商品は?",
"user_id": "kiro-user",
"agent_id": "default",
}
prompt (必須): エージェントへの質問文user_id (任意): 省略時は呼び出し側が自由に決めてよい。kiro-user などを推奨agent_id (任意): 省略時は AgentCore Runtime が "default" をフォールバックとして使用uv run .kiro/skills/agent-chat/scripts/chat.py \
--runtime-arn "$RUNTIME_ARN" \
--region "$REGION" \
--session-id "<SESSION_ID>" \
--prompt-file ./tmp/dwh-payload.json
--session-id は 33 文字以上の文字列。例: kiro-dwh-session-<YYYYmmddHHMMSS>-<8桁hex> (33 文字以上になる)成功時 stdout は 1 つの JSON で以下の形:
{
"session_id": "...",
"text": "<連結された回答テキスト>",
"tool_uses": [
{"tool": "_redshift_query", "description": "...", "sql": "..."}
],
"charts": [
{"title": "..."}
],
"errors": [],
"elapsed_seconds": <実行にかかった秒数>
}
text をそのままユーザーへの回答として使うtool_uses に _redshift_query があれば「SQL を実行しました(説明: ...)」と要約を補足するcharts が空でなければ「チャート「...」が生成されました。チャートはブラウザの Agent UI でのみ表示可能です」と伝えるerrors が空でなければその内容を伝える--session-id を同じ値で呼び出すagent_id に切り替えたり、異なる会話を開始する場合は新しいセッション ID を使うこと失敗時は stderr の内容をそのまま読めば原因がわかる形で返します。