mirror of
https://github.com/openai/codex.git
synced 2026-09-09 15:58:47 +00:00
Add remote thread store bridge
This commit is contained in:
225
codex-rs/thread-store/python/codex_thread_store_bridge.py
Normal file
225
codex-rs/thread-store/python/codex_thread_store_bridge.py
Normal file
@@ -0,0 +1,225 @@
|
||||
# @generated by scripts/generate_thread_store_bridge_python.py
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass
|
||||
from typing import Any, Protocol
|
||||
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class OpaqueBytes:
|
||||
codec: str
|
||||
contentType: str
|
||||
data: bytes
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ThreadOwner:
|
||||
chatgptUserId: str | None = None
|
||||
accountId: str | None = None
|
||||
authMode: str | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class RemoteThreadMetadata:
|
||||
threadId: str
|
||||
forkedFromId: str | None = None
|
||||
owner: ThreadOwner
|
||||
preview: str
|
||||
name: str | None = None
|
||||
modelProvider: str
|
||||
model: str | None = None
|
||||
serviceTier: Any | None = None
|
||||
reasoningEffort: Any | None = None
|
||||
createdAt: int
|
||||
updatedAt: int
|
||||
archivedAt: int | None = None
|
||||
cwd: str
|
||||
cliVersion: str
|
||||
source: Any
|
||||
agentNickname: str | None = None
|
||||
agentRole: str | None = None
|
||||
agentPath: str | None = None
|
||||
gitInfo: Any | None = None
|
||||
approvalMode: Any
|
||||
sandboxPolicy: Any
|
||||
tokenUsage: Any | None = None
|
||||
firstUserMessage: str | None = None
|
||||
memoryMode: str | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ThreadIndexPatch:
|
||||
updatedAt: int
|
||||
firstUserMessage: str | None = None
|
||||
preview: str | None = None
|
||||
name: str | None = None
|
||||
tokenUsage: Any | None = None
|
||||
memoryMode: str | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class CreateThreadRequest:
|
||||
thread: RemoteThreadMetadata
|
||||
initialItems: OpaqueBytes
|
||||
initialPayloadCodec: str
|
||||
eventPersistenceMode: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ResumeThreadRecorderRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
includeArchived: bool
|
||||
eventPersistenceMode: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class AppendThreadRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
idempotencyKey: str | None = None
|
||||
updatedAt: int | None = None
|
||||
newThreadMemoryMode: str | None = None
|
||||
eventPersistenceMode: str | None = None
|
||||
indexPatch: ThreadIndexPatch
|
||||
items: OpaqueBytes
|
||||
payloadCodec: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class LoadThreadHistoryRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
includeArchived: bool
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class LoadThreadHistoryResponse:
|
||||
threadId: str
|
||||
payloadCodec: str
|
||||
history: OpaqueBytes
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ReadThreadRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
includeArchived: bool
|
||||
includeHistory: bool
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ReadThreadResponse:
|
||||
thread: RemoteThreadMetadata
|
||||
historyPayloadCodec: str | None = None
|
||||
history: OpaqueBytes | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ListThreadsRequest:
|
||||
owner: ThreadOwner
|
||||
pageSize: int
|
||||
cursor: str | None = None
|
||||
sortKey: str
|
||||
allowedSources: list[Any]
|
||||
modelProviders: list[str] | None = None
|
||||
archived: bool
|
||||
cwd: str | None = None
|
||||
searchTerm: str | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ListThreadsResponse:
|
||||
items: list[RemoteThreadMetadata]
|
||||
nextCursor: str | None = None
|
||||
scanned: int | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class FindThreadByNameRequest:
|
||||
owner: ThreadOwner
|
||||
name: str
|
||||
includeArchived: bool
|
||||
cwd: str | None = None
|
||||
allowedSources: list[Any]
|
||||
modelProviders: list[str] | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class FindThreadByNameResponse:
|
||||
thread: RemoteThreadMetadata | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class SetThreadNameRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
name: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class UpdateThreadMetadataRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
patch: Any
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ArchiveThreadRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class DynamicToolsRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class DynamicToolsResponse:
|
||||
dynamicTools: list[Any] | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class MemoryModeRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class MemoryModeResponse:
|
||||
memoryMode: str | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class SetMemoryModeRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
memoryMode: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ThreadSpawnEdgeRecord:
|
||||
parentThreadId: str
|
||||
childThreadId: str
|
||||
status: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ListThreadSpawnEdgesRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
recursive: bool
|
||||
status: str | None = None
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class ListThreadSpawnEdgesResponse:
|
||||
edges: list[ThreadSpawnEdgeRecord]
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class FindThreadSpawnByPathRequest:
|
||||
threadId: str
|
||||
owner: ThreadOwner
|
||||
recursive: bool
|
||||
agentPath: str
|
||||
|
||||
@dataclass(frozen=True, kw_only=True)
|
||||
class FindThreadSpawnByPathResponse:
|
||||
threadId: str | None = None
|
||||
|
||||
class ThreadStoreBridgeService(Protocol):
|
||||
async def create_thread(self, request: CreateThreadRequest) -> None: ...
|
||||
async def resume_thread_recorder(self, request: ResumeThreadRecorderRequest) -> None: ...
|
||||
async def append_thread_items(self, request: AppendThreadRequest) -> None: ...
|
||||
async def load_thread_history(self, request: LoadThreadHistoryRequest) -> LoadThreadHistoryResponse: ...
|
||||
async def read_thread(self, request: ReadThreadRequest) -> ReadThreadResponse: ...
|
||||
async def list_threads(self, request: ListThreadsRequest) -> ListThreadsResponse: ...
|
||||
async def find_thread_by_name(self, request: FindThreadByNameRequest) -> FindThreadByNameResponse: ...
|
||||
async def set_thread_name(self, request: SetThreadNameRequest) -> None: ...
|
||||
async def update_thread_metadata(self, request: UpdateThreadMetadataRequest) -> ReadThreadResponse: ...
|
||||
async def archive_thread(self, request: ArchiveThreadRequest) -> None: ...
|
||||
async def unarchive_thread(self, request: ArchiveThreadRequest) -> ReadThreadResponse: ...
|
||||
async def dynamic_tools(self, request: DynamicToolsRequest) -> DynamicToolsResponse: ...
|
||||
async def memory_mode(self, request: MemoryModeRequest) -> MemoryModeResponse: ...
|
||||
async def set_memory_mode(self, request: SetMemoryModeRequest) -> None: ...
|
||||
async def mark_memory_mode_polluted(self, request: MemoryModeRequest) -> None: ...
|
||||
async def upsert_thread_spawn_edge(self, request: ThreadSpawnEdgeRecord) -> None: ...
|
||||
async def list_thread_spawn_edges(self, request: ListThreadSpawnEdgesRequest) -> ListThreadSpawnEdgesResponse: ...
|
||||
async def find_thread_spawn_by_path(self, request: FindThreadSpawnByPathRequest) -> FindThreadSpawnByPathResponse: ...
|
||||
Reference in New Issue
Block a user