すべてのプロダクト
Search
ドキュメントセンター

:エージェントの定義

最終更新日:Sep 25, 2026

エージェントは、AI エージェントのモデル、システムプロンプト、および tools を定義する再利用可能な設定テンプレートです。複数のセッションで 1 つのエージェントを共有でき、エージェントを変更しても実行中のセッションには影響しません。

重要

新しい Qoder CN ドキュメントサイトが利用可能になりました。このサイトのコンテンツは、最新の製品機能や変更を反映していない可能性があります。最新の製品ドキュメントについては、docs.qoder.cn をご参照ください。

基本概念

エージェントは「職務記述書」のようなものと考えることができます。

要素

説明

model

エージェントの知能レベル

system prompt

エージェントの行動指針

tools

エージェントが実行するアクション

Skills

エージェントが呼び出す高レベルのスキル

エージェント自体はタスクを実行しません。単なる設定です。タスクの実行は、そのエージェントにバインドされたセッションが処理します。

パラメーターリファレンス

パラメーター

タイプ

必須

説明

id

string

—

システムが生成する ID。agent_ プレフィックスの後に 32 文字の小文字の 16 進数が続きます。

type

string

—

常に "agent" です。

name

string

はい

エージェント名。推奨フォーマットはケバブケース (64 文字以下) です。

description

string

いいえ

エージェントの説明。デフォルトは "" です。

model

string

はい

モデル識別子。詳細は後述します。

system

string

いいえ

システムプロンプト。デフォルトは "" です。

instructions

string

いいえ

システムプロンプトに追加される動作指示。

tools

array

いいえ

利用可能なツールのリスト。詳細は後述します。

skills

array

いいえ

関連付けられたスキル ID のリスト。

mcp_servers

array

いいえ

MCP サーバー設定のリスト。デフォルトは [] です。

default_environment

string

いいえ

このエージェントのデフォルトの環境 ID。デフォルトは "" です。

metadata

object

いいえ

タグ付けやフィルタリングのためのカスタムキーバリューペア。

version

integer

—

バージョン番号。1 から始まり、更新ごとにインクリメントされます。

archived

boolean

—

エージェントがアーカイブ済みかどうか。デフォルトは false です。

archived_at

string|null

—

アーカイブのタイムスタンプ (ISO 8601 形式)。エージェントがアーカイブされていない場合は null です。

created_at

string

—

作成タイムスタンプ (ISO 8601 形式)。

updated_at

string

—

最終更新のタイムスタンプ。

モデル

model フィールドは、エージェントが使用するモデルを指定します。

値

説明

Auto

自動モデル選択

Qwen3.7-Max

Qwen フラッグシップ

Qwen3.7-Plus

Qwen マルチモーダル

Qwen3.6-Flash

Qwen 軽量

DeepSeek-V4-Pro

DeepSeek フラッグシップ

DeepSeek-V4-Flash

DeepSeek 軽量

GLM-5.1

Zhipu フラッグシップ

Kimi-K2.6

Moonshot AI

MiniMax-M2.7

MiniMax

ツール

tools フィールドはツールオブジェクトの配列です。現在、サポートされているツールセットは agent_toolset_20260401 のみです。enabled_tools 配列にリストすることで、このツールセット内のアトミックツールを有効にします。

{
  "tools": [
    {
      "type": "agent_toolset_20260401",
      "enabled_tools": ["Bash", "Read", "Write", "Edit", "Glob", "Grep", "WebFetch", "WebSearch"]
    }
  ]
}

enabled_tools で使用可能な値 (値は大文字と小文字を区別し、パスカルケースで指定する必要があります):

ツール名

説明

Bash

シェルコマンドを実行します。

Read

ファイルの内容を読み取ります。

Write

ファイルを作成または上書きします。

Edit

ファイルの一部を編集します。

Glob

ワイルドカードを使用してファイルを一覧表示します。

Grep

ファイル内のコンテンツを検索します。

WebFetch

単一のウェブページに対して HTTP GET リクエストを実行します。

WebSearch

ウェブを検索します。

その他のツール設定については、「エージェントのツール設定」をご参照ください。

エージェントの管理

すべての CRUD 操作については、「APIリファレンス / エージェント」をご参照ください。以下の例は、一般的なワークフローを対象としています。

作成

curl -s -X POST https://api.qoder.com.cn/api/v1/cloud/agents \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "code-reviewer",
    "model": "auto",
    "instructions": "あなたはコードレビューの専門家です。コードを行ごとにレビューし、問題点と改善案を Markdown 形式で出力してください。",
    "tools": [
      {
        "type": "agent_toolset_20260401",
        "enabled_tools": ["Bash", "Read", "Write"]
      }
    ],
    "metadata": {
      "team": "backend",
      "purpose": "code-review"
    }
  }' | jq .

リクエストが成功すると、201 Created が返ります。version は 1 から始まります。

取得

# 単一のエージェントを取得
curl -s https://api.qoder.com.cn/api/v1/cloud/agents/agent_xxx \
  -H "Authorization: Bearer $QODER_PAT"

# ページネーション付きでエージェントを一覧表示
curl -s "https://api.qoder.com.cn/api/v1/cloud/agents?limit=20" \
  -H "Authorization: Bearer $QODER_PAT"

更新

エージェントを更新する際は、現在の version を必ず指定する必要があります。詳細については、以下の「バージョン管理」をご参照ください。

curl -s -X PUT https://api.qoder.com.cn/api/v1/cloud/agents/agent_xxx \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "code-reviewer",
    "model": "auto",
    "instructions": "あなたはシニアコードレビューの専門家です。セキュリティの脆弱性とパフォーマンスの問題に焦点を当ててください。",
    "version": 1
  }' | jq .

リクエストが成功すると、200 OK が返り、version が 1 ずつインクリメントされます。

削除

curl -s -X DELETE https://api.qoder.com.cn/api/v1/cloud/agents/agent_xxx \
  -H "Authorization: Bearer $QODER_PAT"

エージェントを削除しても、それにバインドされているアクティブセッションは終了しません。セッションは作成時にエージェントの設定をスナップショットとして保存します。

バージョン管理

エージェント API は、オプティミスティック同時実行制御 (OCC) を使用します。

  • version は作成時に 1 から始まります。

  • 更新が成功するたびに、version は自動的に 1 ずつインクリメントされます。

  • 更新リクエストには、現在の version を必ず含める必要があります。失敗するシナリオは 2 つあります。

    • version フィールドが欠落している場合 — 400 invalid_request_error ("Field 'version' is required.") が返ります。

    • 指定された version がサーバー側のバージョンと一致しない場合、409 conflict_error が返されます。

これにより、同時実行される変更がお互いを上書きすることを防ぎます。

409競合の処理

バージョンが古いためにリクエストが失敗した場合、次のエラーが表示されます。

{
  "type": "error",
  "error": {
    "type": "conflict_error",
    "message": "Version conflict. Expected version 2, got 1."
  }
}

競合を解決するには、以下の手順を実行します。

  1. GET で最新のエージェントを取得し、現在の version を取得します。

  2. 最新のオブジェクトデータに、目的の変更を再適用します。

  3. 新しい version を使用して、再度 PUT を実行します。

ベストプラクティス

  1. 命名規則 — backend-code-review や frontend-test-gen のように、team-purpose 形式を使用します。

  2. プロンプトの改良 — system フィールドで役割、出力形式、制約を指定します。

  3. 最小権限の原則の適用 — リスクを最小限に抑えるため、タスクに不可欠な tools のみを付与してください。

  4. メタデータの効果的な使用 — キーバリューペアを追加してエージェントを分類し、フィルタリングや監査を容易にします。

  5. 本番環境でのバージョンロック — セッションを作成する際に {"id": ..., "version": ...} 形式を使用してエージェントのバージョンをロックしてください。これにより、新しいバージョンがオンラインサービスに影響を与えるのを防げます。

よくある質問

Q: エージェントを更新すると、現在実行中のセッションに影響しますか? いいえ。セッションは作成時に特定のエージェントバージョンにバインドされます。 Q: tools 配列は空にできますか? はい。tools のないエージェントは、テキストベースの対話しかできず、アクションを実行できません。 Q: name フィールドに長さの制限はありますか? 64 文字未満に保ち、小文字、数字、ハイフンを使用してください。 Q: 古いバージョンのエージェントにロールバックするにはどうすればよいですか? 自動ロールバックはサポートされていません。更新する前にエージェントの設定を保存してください。元に戻すには、最新の version 番号で古い設定を PUT してください。