v2 SDK のプロセスランチャー。closedcode バイナリをヘッドレス HTTP サーバー(createOpencodeServer)またはインタラクティブな TUI(createOpencodeTui)として起動し、環境変数経由で設定を渡し、中断を転送する。

Methods

(static) createOpencodeServer(optionsopt) → {Promise.<{url: string, close: function()}>}

ヘッドレスの closedcode サーバープロセスを起動し、リッスン開始後に解決する。

Parameters:
NameTypeAttributesDescription
optionsObject<optional>

サーバーオプション。

Properties
NameTypeAttributesDefaultDescription
hostnamestring<optional>
"127.0.0.1"

バインドするインターフェース。

portnumber<optional>
4096

リッスンするポート。

timeoutnumber<optional>
5000

サーバーがリッスン開始を報告するまで待機するミリ秒数。これを超えると reject する。

configObject<optional>

CLOSEDCODE_CONFIG_CONTENT へシリアライズされるサーバー設定。config.logLevel--log-level としても渡される。

signalAbortSignal<optional>

中断されるとサーバーを停止し、Promise を reject するシグナル。

Returns:

サーバー URL とクローズハンドル。

Type: 
Promise.<{url: string, close: function()}>

(static) createOpencodeTui(optionsopt) → {Object}

現在の stdio を継承するインタラクティブな closedcode TUI プロセスを起動する。

Parameters:
NameTypeAttributesDescription
optionsObject<optional>

TUI オプション。

Properties
NameTypeAttributesDescription
projectstring<optional>

開くプロジェクトディレクトリ(--project)。

modelstring<optional>

使用するモデル(--model)。

sessionstring<optional>

再開するセッション ID(--session)。

agentstring<optional>

起動時に使用するエージェント(--agent)。

configObject<optional>

CLOSEDCODE_CONFIG_CONTENT へシリアライズされる設定。

signalAbortSignal<optional>

中断されると TUI を停止するシグナル。

Returns:

TUI プロセスを終了させるハンドル。

Type: 
Object