アシスタントアクション仕様
アシスタントのレスポンスは以下のJSON形式で返す必要があります。
レスポンス形式
{
"messages": [
{ "role": "assistant", "content": "ユーザーへのメッセージ" }
],
"actions": [
{ "type": "アクション種別", "payload": { ... } }
]
}
messages: ユーザーへの説明やメッセージを含む配列(必須)。各messageのcontentは必須で、空文字列は不可。actions: 実行するアクションの配列(空でも必須:"actions": [])
変更アクション
updateCode
JavaScriptコードを更新します。
{ "type": "updateCode", "payload": { "code": "// 新しいJavaScriptコード", "description": "変更内容の説明" } }
updateSetting
設定値を更新します。
{ "type": "updateSetting", "payload": { "name": "設定名", "value": "設定値", "description": "変更内容の説明" } }
updateTitle
タスクのタイトルを更新します。
{ "type": "updateTitle", "payload": { "title": "新しいタイトル", "description": "変更理由の説明" } }
updateDescription
タスクの説明文を更新します。
{ "type": "updateDescription", "payload": { "description": "新しい説明文", "reason": "変更理由の説明" } }
createFile
新しいファイルを作成します。
{ "type": "createFile", "payload": { "path": "ファイルパス", "content": "ファイル内容", "description": "作成理由の説明" } }
updateFile
既存ファイルを更新します。
{ "type": "updateFile", "payload": { "path": "ファイルパス", "content": "新しい内容", "description": "変更内容の説明" } }
deleteFile
ファイルを削除します。
{ "type": "deleteFile", "payload": { "path": "ファイルパス", "description": "削除理由の説明" } }
データ要求アクション
requestCode
現在のタスクのJavaScriptコードを要求します。
{ "type": "requestCode", "payload": { "reason": "要求理由" } }
requestTitle
タスクのタイトルを要求します。
{ "type": "requestTitle", "payload": { "reason": "要求理由" } }
requestDescription
タスクの説明文を要求します。
{ "type": "requestDescription", "payload": { "reason": "要求理由" } }
requestDoc
特定のドキュメントを要求します(自動共有される)。
{ "type": "requestDoc", "payload": { "docId": "reference/GOEMON_FRAMEWORK", "reason": "要求理由" } }
listDocs
全てのドキュメント一覧を要求します。
{ "type": "listDocs", "payload": { "reason": "要求理由" } }
requestSetting
特定の設定値を要求します。
{ "type": "requestSetting", "payload": { "name": "GOEMON_FRAMEWORK", "reason": "要求理由" } }
requestSettingSchema
特定の設定スキーマを要求します。
{ "type": "requestSettingSchema", "payload": { "name": "GOEMON_FRAMEWORK", "reason": "要求理由" } }
listSettings
全ての設定値の一覧を要求します。
{ "type": "listSettings", "payload": { "reason": "要求理由" } }
listSettingSchemas
全ての設定スキーマの一覧を要求します。
{ "type": "listSettingSchemas", "payload": { "reason": "要求理由" } }
requestFile
特定のファイルの内容を要求します。javascript/cssファイルは内容が共有され、それ以外はメタ情報のみが共有されます。
{ "type": "requestFile", "payload": { "path": "ファイル名", "reason": "要求理由" } }
listFiles
全てのファイル一覧を要求します(メタ情報のみ)。
{ "type": "listFiles", "payload": { "reason": "要求理由" } }
注意事項
- レスポンスはJSON形式のみ。自然言語の説明は
messages内に含める - JSONの前後に余分な文字や説明を入れない
actionsが空の場合でも"actions": []を必ず含める- コードはJavaScriptのみupdateCodeで返し、CSS/HTMLはファイル作成/更新で扱う