Skip to main content

CodeAway

CodeAway sends commands to desktop coding agents and returns replies and live status

CodeAway is a thin, browser-based remote control for local AI coding agents. Version 0.1 supports one pairing only: Windows with Codex Desktop. The source repository is codeaway2; the Python package and command are codeaway.

Status: early alpha. The Windows/Codex Desktop phone flow has been smoke-tested; expect rough edges and breaking changes.

Install

The shortest recommended path is:

uvx codeaway

uvx is convenient, not required. You can instead install with either:

pipx install codeaway
py -m pip install codeaway

Platform support

Windows with Codex Desktop is the supported pairing. macOS and Linux can install the package, but desktop control for those platforms is not implemented yet.

Run CodeAway

The first run is laptop-only. Start CodeAway in the foreground:

uvx codeaway

It listens on 127.0.0.1:8765 and opens /setup in the laptop browser. Choose the visible Codex Desktop window and draw all three capture regions:

  • Sidebar: the projects and tasks on the left.
  • Conversation: the right pane above the input.
  • Composer: the chat box only; it may grow taller. Do not include the full-width toolbar or status row.

To enable phone access, restart with an address assigned to the laptop on your LAN or Tailscale network:

uvx codeaway --ip <IPv4-LAN-or-Tailscale-address>

The explicit address is saved only after it binds successfully. Later uvx codeaway launches reuse both that address and the saved calibration. If the saved Codex window and all three regions resolve, CodeAway prints the phone workspace URL without opening a laptop browser. The phone workspace still links to /setup when recalibration is needed.

If a cached address is no longer available, CodeAway warns, falls back to 127.0.0.1, and saves that fallback. An invalid explicit address exits instead of silently changing interfaces. Use --no-browser to suppress an otherwise necessary setup launch and --port PORT to select and cache another port. CodeAway v0.1 accepts IPv4 literals only; IPv6 addresses are rejected with an actionable startup error.

Security: A non-loopback endpoint grants full desktop mouse and keyboard input control to every device that can reach it. CodeAway v0.1 has no pairing or authentication, so expose it only on a network boundary you trust.

Architecture

CodeAway deliberately separates two independent backend axes:

Module Backends Responsibility
agents.py Codex first; Claude Code and Cursor later Owns application semantics: detection, projects and tasks, navigation, calibrated surfaces, and actions
desktop.py Windows first; macOS and Linux later Owns OS mechanics: windows, screenshots, accessibility, mouse, keyboard, and clipboard operations

The server composes one agent backend with one desktop backend. For the first release that pair is Codex Desktop on Windows. Agent backends do not contain Windows APIs, and desktop backends do not contain Codex-specific behavior.

Metadata

Release files for codeaway 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for codeaway 0.1.0
File Size Uploaded Provenance Actions
codeaway-0.1.0.tar.gz 1.4 MB With provenance Details for codeaway-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for codeaway 0.1.0
File Interpreter ABI Platform Actions
codeaway-0.1.0-py3-none-any.whl Python 3 none any Details for codeaway-0.1.0-py3-none-any.whl

Total release size: 1.4 MB

Release files / codeaway-0.1.0.tar.gz

Download URL codeaway-0.1.0.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
39f273e6945334f82c747caf3ae14ca45238a619e69ac051a58e203e47a512b8
BLAKE2b-256 checksum
How to use checksums
a8f21a57f63898e9121892e4a1a917baa665b603452f848a1648f323ba88cae9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 6, 2026.

Transparency log

Release files / codeaway-0.1.0-py3-none-any.whl

Download URL codeaway-0.1.0-py3-none-any.whl
Size 34.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f3126fbad39a5707938294e404deca29488255783d30d05b501cf0e4b706a1c8
BLAKE2b-256 checksum
How to use checksums
7d584b09185a864f349880ccf98bd7b120f3de7d6b059b0ce23765933542a49c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 6, 2026.

Transparency log

Security for codeaway 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for codeaway-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 6, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page