Dropstone Docs

サーバー

HTTP経由でDropstoneサーバーと対話します。

dropstone serve コマンドは、Dropstoneクライアントが使用できるOpenAPIエンドポイントを公開するヘッドレスHTTPサーバーを実行します。


使用方法

dropstone serve [--port <number>] [--hostname <string>] [--cors <origin>]

オプション

フラグ説明デフォルト
--portリッスンするポート4096
--hostnameリッスンするホスト名127.0.0.1
--mdnsmDNS検出を有効にするfalse
--mdns-domainmDNSサービスのカスタムドメイン名dropstone.local
--cors許可する追加のブラウザオリジン[]

--cors は複数回渡すことができます:

dropstone serve --cors http://localhost:5173 --cors https://app.example.com

認証

DROPSTONE_SERVER_PASSWORD を設定してHTTP基本認証でサーバーを保護します。ユーザー名のデフォルトは dropstone です。DROPSTONE_SERVER_USERNAME を設定してオーバーライドできます。これは dropstone servedropstone web の両方に適用されます。

DROPSTONE_SERVER_PASSWORD=your-password dropstone serve

仕組み

dropstone serve はOpenAPI 3.1 HTTPエンドポイント経由でDropstoneの機能を公開します。同じエンドポイントは SDK を生成するために使用されます。

プログラムでDropstoneを駆動したい場合にサーバーを使用します:スクリプト、CIパイプライン、または独自の統合から。インタラクティブセッションとサーバーは独立しています。dropstone serve を実行すると、インタラクティブセッションが開いているかどうかに関わらず、新しいスタンドアロンサーバーが起動します。

バインドアドレスは --hostname および --port フラグ でオーバーライドできます。


仕様

サーバーはOpenAPI 3.1仕様を公開しており、以下で表示できます:

http://<hostname>:<port>/doc

例えば、http://localhost:4096/doc。仕様を使用してクライアントを生成したり、リクエストとレスポンスの型を検査したりできます。またはSwaggerエクスプローラーで表示できます。


API

dropstoneサーバーは以下のAPIを公開します。


グローバル

メソッドパス説明レスポンス
GET/global/healthサーバーのヘルスとバージョンを取得{ healthy: true, version: string }
GET/global/eventグローバルイベント(SSEストリーム)を取得イベントストリーム

プロジェクト

メソッドパス説明レスポンス
GET/projectすべてのプロジェクトをリストProject[]
GET/project/current現在のプロジェクトを取得Project

パス & VCS

メソッドパス説明レスポンス
GET/path現在のパスを取得Path
GET/vcs現在のプロジェクトのVCS情報を取得VcsInfo

設定

メソッドパス説明レスポンス
GET/config設定情報を取得Config
PATCH/config設定を更新Config

セッション

メソッドパス説明注記
GET/sessionすべてのセッションをリストSession[] を返す
POST/session新しいセッションを作成body: { parentID?, title? }Session を返す
GET/session/statusすべてのセッションのセッションステータスを取得{ [sessionID: string]: SessionStatus } を返す
GET/session/:idセッション詳細を取得Session を返す
DELETE/session/:idセッションとそのすべてのデータを削除boolean を返す
PATCH/session/:idセッションプロパティを更新body: { title? }Session を返す
GET/session/:id/childrenセッションの子セッションを取得Session[] を返す
GET/session/:id/todoセッションのTODOリストを取得Todo[] を返す
POST/session/:id/initアプリを分析して AGENTS.md を作成body: { messageID, providerID, modelID }boolean を返す
POST/session/:id/forkメッセージでセッションをフォークbody: { messageID? }Session を返す
POST/session/:id/abort実行中のセッションを中止boolean を返す
GET/session/:id/diffこのセッションのdiffを取得query: messageID?FileDiff[] を返す
POST/session/:id/summarizeセッションを要約body: { providerID, modelID }boolean を返す
POST/session/:id/revertメッセージを元に戻すbody: { messageID, partID? }boolean を返す
POST/session/:id/unrevertすべての元に戻したメッセージを復元boolean を返す
POST/session/:id/permissions/:permissionIDパーミッションリクエストに応答body: { response, remember? }boolean を返す

メッセージ

メソッドパス説明注記
GET/session/:id/messageセッション内のメッセージをリストquery: limit?{ info: Message, parts: Part[]}[] を返す
POST/session/:id/messageメッセージを送信して応答を待つbody: { messageID?, model?, agent?, noReply?, system?, tools?, parts }{ info: Message, parts: Part[]} を返す
GET/session/:id/message/:messageIDメッセージ詳細を取得{ info: Message, parts: Part[]} を返す
POST/session/:id/prompt_asyncメッセージを非同期で送信(待たない)body: /session/:id/message と同じ、204 No Content を返す
POST/session/:id/commandスラッシュコマンドを実行body: { messageID?, agent?, model?, command, arguments }{ info: Message, parts: Part[]} を返す
POST/session/:id/shellシェルコマンドを実行body: { agent, model?, command }{ info: Message, parts: Part[]} を返す

コマンド

メソッドパス説明レスポンス
GET/commandすべてのコマンドをリストCommand[]

ファイル

メソッドパス説明レスポンス
GET/find?pattern=<pat>ファイル内のテキストを検索pathlinesline_numberabsolute_offsetsubmatches を含むマッチオブジェクトの配列
GET/find/file?query=<q>ファイルとディレクトリを名前で検索string[](パス)
GET/find/symbol?query=<q>ワークスペースシンボルを検索Symbol[]
GET/file?path=<path>ファイルとディレクトリをリストFileNode[]
GET/file/content?path=<p>ファイルを読むFileContent
GET/file/status追跡されたファイルのステータスを取得File[]

/find/file クエリパラメータ

  • query(必須):検索文字列(ファジーマッチ)
  • type(オプション):結果を "file" または "directory" に制限
  • directory(オプション):検索のプロジェクトルートをオーバーライド
  • limit(オプション):最大結果数(1~200)
  • dirs(オプション):レガシーフラグ("false" はファイルのみを返す)

LSP、フォーマッター & MCP

メソッドパス説明レスポンス
GET/lspLSPサーバーのステータスを取得LSPStatus[]
GET/formatterフォーマッターのステータスを取得FormatterStatus[]
GET/mcpMCPサーバーのステータスを取得{ [name: string]: MCPStatus }
POST/mcpMCPサーバーを動的に追加body: { name, config }、MCPステータスオブジェクトを返す

エージェント

メソッドパス説明レスポンス
GET/agent利用可能なすべてのエージェントをリストAgent[]

ロギング

メソッドパス説明レスポンス
POST/logログエントリを書き込む。Body: { service, level, message, extra? }boolean

認証

メソッドパス説明レスポンス
PUT/auth/:id指定されたターゲットの認証資格情報を設定します。boolean

イベント

メソッドパス説明レスポンス
GET/eventサーバー送信イベントストリーム。最初のイベントは server.connected、その後バスイベントサーバー送信イベントストリーム

ドキュメント

メソッドパス説明レスポンス
GET/docOpenAPI 3.1仕様OpenAPI仕様を含むHTMLページ
Ctrl+I