codex-multi-workspace 0.1.0

Run Codex CLI in Docker across saved single-folder or multi-folder workspaces.
Documentation
# codex-multi-workspace

Run Codex CLI in Docker with saved single-folder or multi-folder workspaces.

`codex-multi-workspace` provides the `codex-ws` command. It reads Codex provider
profiles from `cc-switch`, mounts one or more project folders into a container,
and keeps each workspace's Codex sessions under `~/.codex-ws`.

## Requirements

- Docker
- Rust/Cargo for installation
- A cc-switch database with at least one Codex provider

The default runtime image is published to GHCR and is based on
`ghcr.io/openai/codex-universal`. It includes Codex CLI and uses Codex
Universal runtime variables for language versions.

## Install

```sh
cargo install codex-multi-workspace
```

## Create a Workspace

```sh
codex-ws workspace add my-workspace
```

This creates and opens:

```text
~/.codex-ws/config/workspace/my-workspace.yaml
```

Example:

```yaml
name: my-workspace
folders:
  - /absolute/path/to/project

# Optional Codex Universal language runtimes.
# runtime:
#   - node:22
#   - python:3.13
```

List saved workspaces:

```sh
codex-ws workspace ls
```

## Run

```sh
codex-ws run \
  --provider OpenAI \
  --workspace my-workspace \
  --config-db ~/.cc-switch/cc-switch.db
```

You can also pass a manifest path directly:

```sh
codex-ws run --provider OpenAI --workspace /path/to/workspace.yaml
```

## Runtime Image

By default, `codex-ws` uses:

```text
ghcr.io/honahec/codex-multi-workspace:latest
```

Override it when needed:

```sh
codex-ws run --provider OpenAI --workspace my-workspace --image my-codex-runtime:latest
```

Welcome Stars and PRs.