Skip to main content

Add your description here

Project description

codex-ipc

Python facade for running Codex app-server sessions and sharing their live conversation state over the Codex IPC owner/follower protocol.

Library usage

from pathlib import Path

from codex_ipc import CodexIpcConfig, CodexIpcSession


async def main() -> None:
    config = CodexIpcConfig(
        codex_bin=Path("/opt/homebrew/bin/codex"),
        host_id="local",
        model="gpt-5.4",
        reasoning_effort="high",
    )

    async with CodexIpcSession(config) as session:
        thread = await session.start_new_thread()
        print(f"started {thread.id}")

        async for state in session.watch_state():
            # Forward this raw conversation state to a browser over WebSocket.
            print(state)


async def resume_existing(thread_id: str) -> None:
    async with CodexIpcSession(CodexIpcConfig(thread_id=thread_id)) as session:
        await session.hydrate_initial_state()
        await session.run_prompt("Summarize the current repo", wait_for_completion=True)

If codex_bin is omitted, the Codex SDK uses its pinned runtime resolver. Pass an openai_codex.CodexConfig as codex_config when you need full control over app-server launch arguments.

SSH app-server

SSH websocket transport is a codex-ipc extension, not part of the official openai-codex SDK:

from codex_ipc import (
    AppServerConfig,
    CodexIpcConfig,
    SshConnectionConfig,
    SshWebsocketAppServerConfig,
)

config = CodexIpcConfig(
    codex_config=AppServerConfig(
        ssh_websocket=SshWebsocketAppServerConfig(
            connection=SshConnectionConfig(host="builder.example.com"),
            remote_cwd="/srv/project",
        )
    )
)

The older app_server_config argument remains available as a compatibility alias for existing consumers.

TUI demo

The TUI is a development tool and is kept out of the core dependency set:

uv run --extra tui codex-ipc-demo --codex-bin /opt/homebrew/bin/codex

Core imports such as import codex_ipc do not require textual, rich, or pillow.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codex_ipc-0.1.8.tar.gz (177.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codex_ipc-0.1.8-py3-none-any.whl (60.3 kB view details)

Uploaded Python 3

File details

Details for the file codex_ipc-0.1.8.tar.gz.

File metadata

  • Download URL: codex_ipc-0.1.8.tar.gz
  • Upload date:
  • Size: 177.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for codex_ipc-0.1.8.tar.gz
Algorithm Hash digest
SHA256 3b78046636e724ffc612e9a45a343fff8c1ba1c4672400a450c3339f2004959b
MD5 608e99893917b5ff95668339cd57e092
BLAKE2b-256 b7c27a55bd576920572f382e25622e88f1742976dcefe79c42c240b0fbe0da79

See more details on using hashes here.

Provenance

The following attestation bundles were made for codex_ipc-0.1.8.tar.gz:

Publisher: publish.yml on Sube-py/codex_ipc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codex_ipc-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: codex_ipc-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 60.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for codex_ipc-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 12cbbaa0f1c9089c58119d6e054ee664565186ff2d0919c6e9cde6531a29f2a5
MD5 9f4fd8ecbab703226b2d95f74a5aa3f9
BLAKE2b-256 c256c8f4ca777bd6b49824cd8ec35f9f462d2de188282e47b084a4f1b4bdbc66

See more details on using hashes here.

Provenance

The following attestation bundles were made for codex_ipc-0.1.8-py3-none-any.whl:

Publisher: publish.yml on Sube-py/codex_ipc

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page