digitalocean/CodexPlugin

Python

Open original ↗

Captured source

source ↗
published Jun 19, 2026seen 6dcaptured 1dhttp 200method plain

digitalocean/CodexPlugin

Language: Python

Stars: 1

Forks: 1

Open issues: 1

Created: 2026-06-19T14:03:23Z

Pushed: 2026-06-25T04:29:05Z

Default branch: main

Fork: no

Archived: no

README:

droplet-workspace

A Codex plugin that provisions a DigitalOcean droplet from the Codex Universal image (id 233103029) and wires it up as a remote SSH workspace for the Codex desktop app. It uses the installed Codex DigitalOcean app, creates and boots the droplet without doctl or API tokens, configures local SSH access, and hands off to Codex. The user picks the region and size interactively (with sensible defaults), and the droplet is billed hourly until deleted.

Components

droplet-workspace/
.codex-plugin/plugin.json # plugin manifest (name, version, skills/apps paths)
.app.json # connected DigitalOcean app manifest
skills/provision-droplet/
SKILL.md # the step-by-step workflow Codex follows
ssh_config.tmpl # ~/.ssh/config Host block template
scripts/
keygen.py # generates a unique name + ed25519 SSH key pair
configure_ssh.py # writes SSH config, scans host keys, waits for cloud-init
  • Codex DigitalOcean app — one required external app integration. Install

and authenticate it in Codex before running this plugin. It provides both the SSH key tools (key-create, key-list, key-delete) and the droplet tools (droplet-create, droplet-get, droplet-delete).

  • `.app.json` — the plugin-local app dependency manifest. It binds this

plugin to the DigitalOcean app id asdk_app_6a3c278c93ac8191b29768648d63a754.

  • `SKILL.md` — the orchestration guide. It drives the Codex DigitalOcean app

tools and the two scripts in order, prompts the user for region/size, and explains the one manual Codex step at the end.

  • `scripts/keygen.py` — stdlib-only; mints a unique adjective-noun-hex4

prefix, derives the droplet name / DO key label, and creates the local SSH key.

  • `scripts/configure_ssh.py` — stdlib-only; renders ssh_config.tmpl into

~/.ssh/config, refreshes known_hosts, and probes SSH login until cloud-init finishes before printing the DROPLET READY handoff.

  • `ssh_config.tmpl` — the Host block template ({{ALIAS}}, {{IP}},

{{USER}}, {{IDENTITY_FILE}}).

The one manual step

There is no supported CLI to register a desktop remote SSH project in Codex (tracking: openai/codex#21554). After provisioning, add the host via Codex App → Settings → Connections → Add SSH Host → pick the alias → choose the remote folder.

Notability

notability 2.0/10

Routine new plugin repo, not AI-lab notable.