Provides API endpoints related to v2
Summary
Functions
Compact v2 session
Get v2 session context
List v2 sessions
Send v2 message
Wait for v2 session
Types
@type v2_session_context_200_json_resp() :: %{ data: [ OpenCode.Generated.SessionMessageAgentSwitched.t() | OpenCode.Generated.SessionMessageAssistant.t() | OpenCode.Generated.SessionMessageCompaction.t() | OpenCode.Generated.SessionMessageModelSwitched.t() | OpenCode.Generated.SessionMessageShell.t() | OpenCode.Generated.SessionMessageSynthetic.t() | OpenCode.Generated.SessionMessageUser.t() ] }
@type v2_session_prompt_200_json_resp() :: %{ data: OpenCode.Generated.SessionMessageUser.t() }
Functions
@spec v2_session_compact(sessionID :: String.t(), opts :: keyword()) :: :ok | {:error, OpenCode.Generated.InvalidRequestError.t() | OpenCode.Generated.ServiceUnavailableError.t() | OpenCode.Generated.SessionNotFoundError.t() | OpenCode.Generated.UnauthorizedError.t()}
Compact v2 session
Compact a v2 session conversation.
@spec v2_session_context(sessionID :: String.t(), opts :: keyword()) :: {:ok, v2_session_context_200_json_resp()} | {:error, OpenCode.Generated.InvalidRequestError.t() | OpenCode.Generated.SessionNotFoundError.t() | OpenCode.Generated.UnauthorizedError.t() | OpenCode.Generated.UnknownError1.t()}
Get v2 session context
Retrieve the active context messages for a v2 session (all messages after the last compaction).
@spec v2_session_list(opts :: keyword()) :: {:ok, OpenCode.Generated.V2SessionsResponse.t()} | {:error, OpenCode.Generated.InvalidCursorError.t() | OpenCode.Generated.InvalidRequestError.t() | OpenCode.Generated.UnauthorizedError.t()}
List v2 sessions
Retrieve sessions in the requested order. Items keep that order across pages; use cursor.next or cursor.previous to move through the ordered list.
Options
workspacelimitordersearchdirectoryprojectsubpathcursor
@spec v2_session_prompt(sessionID :: String.t(), body :: map(), opts :: keyword()) :: {:ok, v2_session_prompt_200_json_resp()} | {:error, OpenCode.Generated.ConflictError.t() | OpenCode.Generated.InvalidRequestError.t() | OpenCode.Generated.SessionNotFoundError.t() | OpenCode.Generated.UnauthorizedError.t()}
Send v2 message
Durably admit one v2 session input and schedule agent-loop execution unless resume is false.
Request Body
Content Types: application/json
@spec v2_session_wait(sessionID :: String.t(), opts :: keyword()) :: :ok | {:error, OpenCode.Generated.InvalidRequestError.t() | OpenCode.Generated.ServiceUnavailableError.t() | OpenCode.Generated.SessionNotFoundError.t() | OpenCode.Generated.UnauthorizedError.t()}
Wait for v2 session
Wait for a v2 session agent loop to become idle.