Skip to main content

turns

turns is the Moxi module that drives a coding agent's session. Other modules call it to put input into a session (a new turn, a delivery held until the running turn ends, a steer into the running turn, /clear and /exit) and to take session events out: the session ready, a turn started or ended, the session gone. A holder can be asked at each Stop before the turn ends, and a registered module can add context at a session's start or at a prompt. Each session turns can reach has an endpoint with a Unix socket and a ledger of the session's turns (a small process of its own for a Claude Code session, and part of the process that called launch() for a Codex or OpenCode session), so whether a session is idle and whether a delivered turn ran are read from the harness's own turn events. Claude Code sessions are reached through two Claude Code plugins that ship inside the package; Codex sessions run under a host turns launches; OpenCode sessions run under an experimental host. turns is a library with no command of its own. Its API is the moxi_turns package, and the wire under it is described in contracts/socket-protocol.md.

Install

uv tool install moxi
moxi install turns

moxi install turns installs turns with moxi, runs its setup, and offers the codex extra. The setup writes the Claude plugin's endpoint.json and installs both Claude Code plugins at user scope with claude plugin, so it needs claude on PATH for that step. A launcher can instead load the plugins for one launch with --plugin-dir, using moxi_turns.claude_plugin_dirs().

Before turns is on PyPI

Install the core from git, then name turns' repo with --from:

uv tool install git+https://github.com/moxihq/moxi
moxi install turns --from 'moxi-turns @ git+https://github.com/moxihq/turns'

Requirements

  • Linux and Python 3.11 or later.
  • moxi (0.1).
  • The codex extra adds websockets, which the Codex host needs; it also needs codex on PATH.
  • Claude Code sessions need Claude Code with the two plugins loaded; OpenCode sessions need opencode on PATH or in ~/.opencode/bin.

License

MIT. See LICENSE.

Metadata

Release files for moxi-turns 0.1.1

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

Source distribution (sdist)

Source distribution for moxi-turns 0.1.1
File Size Uploaded Provenance
moxi_turns-0.1.1.tar.gz 176.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for moxi-turns 0.1.1
File Interpreter ABI Platform
moxi_turns-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 296.4 kB

Release files / moxi_turns-0.1.1.tar.gz

Download URL moxi_turns-0.1.1.tar.gz
Size 176.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e538360e0676e155f758bf28b056c3b073db7d3806439a0d6827338d18517b39
BLAKE2b-256 checksum
How to use checksums
c1c193e58765fcdbc712050e5ed07b0f4822f8234128d60210f5b324c4104778
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / moxi_turns-0.1.1-py3-none-any.whl

Download URL moxi_turns-0.1.1-py3-none-any.whl
Size 120.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1174cc06a763780bb633f861b497c9007d03979f637e07a3092494c4d5fded2
BLAKE2b-256 checksum
How to use checksums
d24083059e157eb0d7dd05826e2819abf17638255ba8b4fdddf5b02ba8ed3ba9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.19 {"installer":{"name":"uv","version":"0.12.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for moxi-turns 0.1.1

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.1 This release

2 release files No 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