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

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>

abort された場合にサーバーを停止し、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>

abort された場合に TUI を停止するシグナル。

Returns:

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

Type: 
Object