コンテンツにスキップ

AI アシスタントに作らせる

AI アシスタントは、やりたいことを日本語で伝えると、フローを組み立ててくれる機能です。トリガーの設定から、必要なスクリプトノードの追加・接続、各ノードのコードとテストまでをまとめて用意できます。

AI が行った変更は 1 つずつ内容を確認してから適用します。勝手に反映されることはありません。

  1. フローの編集画面を開きます
  2. 右端のアイコン列から AI アイコン をクリックしてチャットパネルを開きます
  3. やりたいことを入力して送信します

たとえばこんな依頼ができます。

  • 「毎朝 9 時に在庫 API を呼んで、在庫切れの商品を Slack に通知するフローを作って」
  • 「Webhook で受け取った注文データを検証して、不正なら弾くノードを追加して」
  • 「2 番目のノードの処理を、3 番目のノードの前に移動して」
  • 「各ノードの名前とメモを、処理内容が分かるように整えて」

AI は作業の前に「何をするか」を 1 行で宣言し、そのあと操作カードを出します。カードには変更内容(追加するノードのコード、変更するトリガーの設定など)が表示され、**「適用」**を押すとフロー編集画面に反映されます。

適用すると、対象のノードがフロー図の上で選択され、ノード詳細では変更した箇所のタブが開きます。どこが変わったのかを追いかけられるようになっています。

送信ボタンの横の ▲ から、確認の粒度を選べます。

モード 挙動
1 件ずつ承認 既定。操作カードごとに「適用」を押して確認します
このターンは自動適用 いま進行中の依頼の残りを自動で適用します
このセッションは自動適用 このチャットの以降のやりとりを自動で適用します

自動適用にしても、フローが保存されるわけではありません(下記)。

AI はノードのテストコードを書いたあと、ランナー上で実際に deno test を実行して結果を確認します。型エラーやテストの失敗があれば、AI がそれを読んで修正します。テストは「フロー全体の設定」で選んだランナーで動きます。

AI の適用は編集画面の内容を書き換えるだけです。フローとして確定するには、これまでどおり自分で保存する必要があります。

つまり、AI の変更が気に入らなければ保存せずに画面を離れれば元に戻ります。フローを実際に動かすには、保存したあとリビジョンを公開してください。

安全のため、次の操作は AI では行えません。

  • トリガーを有効にする — AI が作ったトリガーは常に「無効」の状態です。フローを実際に動かす判断は人が行います。有効化はトリガーの設定画面で切り替えてください。
  • 認証情報・環境変数の中身を見る / 作る — AI には「どんな認証情報・環境変数があるか」(名前と ID)だけが渡され、値は渡りません。AI はコード上で synqlet:credentials/<ID> のように参照するだけです。必要な認証情報が無いときは、AI は「ありません」と答えます。事前に認証情報や環境変数を登録しておいてください。
  • HTTPリクエストトリガーのシークレットを扱う — Webhook の URL に含まれるシークレットは AI には渡らず、AI が書き換えることもできません。
  • ファンクションを編集する — ファンクションは複数のフローで共有される部品なので、フローの AI からは変更できません。ファンクション自体の編集画面でも AI アシスタントが使えるので、そちらから依頼してください。
  • アクティブなリビジョンが無いファンクションを使う — スクリプトからインポートできるのは、アクティブなリビジョンがあるファンクションだけです。アクティブなリビジョンが無いファンクションを使う依頼をすると、AI はコードを複製する代わりに「先にリビジョンを作成してアクティブにしてほしい」と案内します。手順はファンクションのリビジョンとアクティブ化を参照してください。
  • 最後のスクリプトノードを削除する — フローにはスクリプトノードが最低 1 つ必要です。
  • プレイグラウンドを書き換える — 手動で動作確認するためのプレイグラウンドは自分で管理する領域です。AI が編集するのはノードのコードとテストコードだけです。

「あのフローと同じ作りで」「別フローの◯◯ノードのロジックを流用して」といった依頼もできます。AI は組織内のフローとファンクションを名前や内容で検索して読み取り、参考にします。読み取りだけなので、参考にしたフローが書き換わることはありません。

見つからなかったときは AI が「見つかりませんでした」と答えます。存在しないフローの内容をでっち上げることはありません。

  • 何をしたいかを先に書く — 「毎朝」「Webhook を受けたら」といった起動条件と、「Slack に通知」「DB に保存」といったやることを 1 文で伝えると、AI が構成を提案しやすくなります。
  • 使うサービスと認証情報の名前を伝える — 「Slack の認証情報を使って」のように名前を挙げると、正しい synqlet: インポートを選べます。
  • 大きい依頼は分けて出す — 「まず骨組みを作って」→「1 番目のノードの処理を詳しく」のように段階を分けると、確認しやすく、間違いも早く見つかります。
  • 直したいノードを指定する — 「◯◯ノードのエラーハンドリングを直して」のようにノード名を伝えると、AI が対象を取り違えません。