소스 정보
- 저장소
- aws-samples/sample-text2sql-agent
- 최근 소스 활동
- 2026년 4월 22일 08:19
- 감지된 SKILL.md 언어
- 일본어
- 스타
- 8
- 포크
- 3
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
SOC 직업 분류 기준
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/aws-samples/sample-text2sql-agent --skill agent-admin명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
| name | agent-admin |
| description | Agent の system_prompt、Knowledge の参照・変更、Agent の新規作成に使う。 |
このスキルは Agent 設定(system_prompt, db_schema, Knowledge)を CLI から参照・変更するためのものです。Admin UI と同じ操作の一部を、同梱の Python スクリプト経由で実行できます。
uv (Python tool manager) がインストールされていること各スクリプトは PEP 723 のインラインメタデータで boto3 を宣言しているため、uv run が初回実行時に依存を自動解決します。pyproject.toml や venv のセットアップは不要です。
このスキルを初めて使うとき、ユーザーに以下を聞いてください:
DwhAgentStack-DatabaseConfigTableXXXXXX-YYYYYYap-northeast-1一度教えてもらったら、以降の会話ではそのまま使い回してください。以下のコマンド例では $TABLE / $REGION をそれぞれの値で置き換えてください。
すべて .kiro/skills/agent-admin/scripts/ 配下にあります。Kiro が実行するときはワークスペース相対パスで呼び出してください。
| スクリプト | 目的 |
|---|---|
list_agents.py | Agent 一覧を取得 |
create_agent.py | 新規 Agent を作成 |
get_agent.py | 1 Agent の全属性(system_prompt, db_schema, Knowledge, メタ情報)を取得 |
update_system_prompt.py | system_prompt を差し替え |
upsert_knowledge.py | Knowledge エントリ 1 件を追加または差し替え |
delete_knowledge.py | Knowledge エントリ 1 件を name で削除 |
各スクリプトは成功時 stdout に JSON を返し、失敗時 stderr にメッセージを出して非ゼロで終了します。成功時だけ json.loads(stdout) してください。
UI・スクリプト・このドキュメントではすべて Knowledge と呼びます。
system_prompt や Knowledge エントリのように改行・引用符を含みうるテキストを渡すときは、必ず Kiro の native fsWrite ツール で一時ファイルを作成し、そのパスを --*-file 引数に渡してください。
echo ... >, cat <<EOF >, ヒアドキュメントなどのシェル経由のファイル作成は 使わないfsWrite はシェルを介さないので、クォート・エスケープ・EOF マーカーの問題が原理的に発生しないuv run .kiro/skills/agent-admin/scripts/list_agents.py \
--table-name "$TABLE" --region "$REGION"
ユーザーが新しい Agent を追加したいと言ったら:
agent_name(表示名)と system_prompt をユーザの要望にあわせて決定し、system_prompt を fsWrite で一時ファイルに書き出す# system_prompt をファイルから読ませる場合
uv run .kiro/skills/agent-admin/scripts/create_agent.py \
--table-name "$TABLE" --region "$REGION" \
--agent-name "売上分析 Agent" \
--system-prompt-file ./tmp/new_prompt.txt
# system_prompt を空で作る場合
uv run .kiro/skills/agent-admin/scripts/create_agent.py \
--table-name "$TABLE" --region "$REGION" \
--agent-name "売上分析 Agent"
db_schema は空で作成されます。Agent 実行時に db_schema が空の場合、Agent Runtime が自動的に "default" Agent の db_schema をフォールバックとして使用します。
# default Agent
uv run .kiro/skills/agent-admin/scripts/get_agent.py \
--table-name "$TABLE" --region "$REGION"
# 指定した Agent
uv run .kiro/skills/agent-admin/scripts/get_agent.py \
--table-name "$TABLE" --region "$REGION" --id 3f2c1d4e-...
get_agent.py は 1 回の呼び出しで agent_name, system_prompt, db_schema, knowledge(配列), created_at, updated_at をすべて返します。--field のような絞り込みはありません(必要な部分だけ Kiro 側で取り出してください)。
db_schema フォールバックに注意: 対象 Agent の db_schema が空のとき、get_agent.py は自動的に id="default" の db_schema を返し、出力 JSON に db_schema_source: "default" を付けます(通常は "self")。Agent Runtime と同じ挙動です。今見ている db_schema が自前のものか default 由来かは db_schema_source で判別してください。
fsWrite で新しい system_prompt を一時ファイルに書く(例: ./tmp/new_prompt.txt)uv run .kiro/skills/agent-admin/scripts/update_system_prompt.py \
--table-name "$TABLE" --region "$REGION" \
--id 3f2c1d4e-... --prompt-file ./tmp/new_prompt.txt
--id は Agent の ID です。省略時は default を対象にします。
Knowledge エントリは以下の形式の Markdown 文字列です:
---
name: <kebab-case の識別子>
description: <説明と、どの様な会話でこのknowledgeを使うかについて簡潔に>
---
<Markdown 形式の指示内容>
fsWrite で 1 エントリ分を一時ファイルに書く(例: ./tmp/k1.md)uv run .kiro/skills/agent-admin/scripts/upsert_knowledge.py \
--table-name "$TABLE" --region "$REGION" \
--id 3f2c1d4e-... --knowledge-file ./tmp/k1.md
--id は Agent の ID です。省略時は default を対象にします。
動作:
--- で挟まれた YAML メタデータブロック)から name を抽出name があれば その場で差し替え、なければ 末尾に追加action が "updated" か "added" かで結果がわかる制約:
name は空でない文字列であること(空白のみも不可)--- で連結したファイルは非対応)upsert_knowledge.py を順に呼ぶuv run .kiro/skills/agent-admin/scripts/delete_knowledge.py \
--table-name "$TABLE" --region "$REGION" \
--id 3f2c1d4e-... --name k1
--id は Agent の ID です。省略時は default を対象にします。
--name は削除対象の frontmatter の name と完全一致する必要があります。存在しなければエラー終了します。
⛔ db_schema の変更は厳禁。このスキルからは変更手段を提供していません。
db_schema は Admin UI の CSV アップロード → AI 分析 → Apply フローによってのみ管理されます。CLI やスクリプトから db_schema を変更すると、Redshift 上の実テーブル定義との不整合が発生し、Agent が誤った SQL を生成する原因となります。
ユーザーから db_schema の変更を依頼された場合:
get_agent.py 経由)のみ可能get_agent.py で現在の値を確認することを推奨するfsWrite で一時ファイルに書いてから --*-file で渡すこと失敗時は stderr の内容をそのまま読めば原因がわかる形で返します。get_agent.py で fallback が必要な状況で default Agent が存在しなかった場合は、stderr に警告を出しつつ exit 0 で返します(db_schema_source: "default", db_schema: "")。Kiro は stdout の db_schema_source を見れば判別できます。