Surfaces
CLI command reference
Every oxygen command, generated from the CLI's own command tree.
Every command the oxygen CLI registers — 704 commands across 85 groups — generated from the CLI's own self-index (oxygen commands --json). Run oxygen commands get "<command>" --json for one command's full description, arguments, and flags.
Markers in Notes:
| Marker | Meaning |
|---|---|
paid | Some invocation mode spends credits or performs an approval-gated external write. |
writes | Mutates workspace, provider, or account state. |
staff | OXYGEN staff only; a customer identity is refused. |
deprecated | Retired, removed, or superseded — kept listed so the replacement is discoverable. |
alias | A second spelling of another command. |
hidden | Not shown in oxygen --help. |
A blank Notes cell means the command is read-only and free.
action-column
| Command | What it does | Notes |
|---|---|---|
oxygen action-column add-provider | Add a catalog-backed provider action picker column to a workspace table. | writes |
admin
| Command | What it does | Notes |
|---|---|---|
oxygen admin costs | Show provider costs (COGS) per workspace. Staff only. | staff |
oxygen admin directory delist | Remove an organization's listing from the public directory (kill switch). | writes staff |
oxygen admin directory enable | Invite an organization to the directory, optionally prefilling its profile. | writes staff |
oxygen admin directory list | List every agency directory listing across all organizations. | staff |
oxygen admin kpis | Show company acquisition with self-reported signup-channel attribution, signup-to-CLI/MCP activation, matured seven-day trial conversion, positive-paid MRR/ARR, and paid churn separated from trial… | staff |
oxygen admin spend | Global managed-provider spend limiter: burn, ceilings, breakers. Staff only. | staff |
oxygen admin spend halt | Force a breaker OPEN — the platform kill switch for managed provider spend. | staff |
oxygen admin spend resume | Close a breaker and clear its backoff, resuming managed provider spend. | writes staff |
oxygen admin spend set-limit | Set a ceiling for one scope + window. action=warn meters only; block arms it. | writes staff |
agent
| Command | What it does | Notes |
|---|---|---|
oxygen agent approval-decide | Approve or reject one pending Workspace or custom Agent tool call, then resume its durable run. | |
oxygen agent cancel | Request cancellation of an active Workspace or custom Agent run. | writes |
oxygen agent create | Create a custom Agent and publish its first immutable version. This internal configuration write starts no chat/run and spends no credits. | writes |
oxygen agent custom | List the org's user-defined custom agents (distinct from agent list, which shows the built-in roster). | |
oxygen agent delete | Archive a custom agent (soft delete): its triggers stop firing and it leaves the roster; versions/runs are preserved. | writes |
oxygen agent disable | Disable a workspace or specialist agent so it stops new runs on the next worker tick. | writes |
oxygen agent enable | Enable a workspace or specialist agent so it resumes its governed runs. | writes |
oxygen agent file-create | Store a tenant-owned text file for Agent context and sandbox input. | writes |
oxygen agent files | List tenant-owned Agent context files. | |
oxygen agent get | Show one agent — the Workspace Agent, a specialist, or a custom agent — with its active version and recent runs. | |
oxygen agent list | List the Workspace Agent and built-in specialists with state and recent run history. | |
oxygen agent run | Start a durable chat/run for the Workspace Agent or a custom Agent on the Fly worker. | paid writes |
oxygen agent run-get | Inspect one Workspace or custom Agent run and its append-only event ledger. | writes |
oxygen agent runs | List recent runs across all agents (or one via <slug>), newest first. | |
oxygen agent set | Publish an immutable version (reconfigure) for a runtime agent: the Workspace Agent or a custom agent. | writes |
oxygen agent trigger-create | Create a cron, internal event, or signed-webhook trigger for the Workspace Agent. | paid |
oxygen agent trigger-set | Activate, pause, or archive one Workspace Agent trigger. | |
oxygen agent triggers | List Workspace Agent cron, internal event, and webhook triggers. |
api-keys
| Command | What it does | Notes |
|---|---|---|
oxygen api-keys create | Create a CLI API key. The token is shown once. | writes |
oxygen api-keys list | List active CLI API keys for the current user and organization. | |
oxygen api-keys revoke | Revoke a CLI API key for the current user and organization. | writes |
approvals
| Command | What it does | Notes |
|---|---|---|
oxygen approvals cancel | Withdraw a pending request you filed (or, as an admin, clear a stale one). | writes |
oxygen approvals client grant | Restrict a member to the client role. | writes |
oxygen approvals client list | Every member of this workspace and what they may do — the workspace role plus the Oxygen client overlay — followed by anyone invited who has not joined yet, and what they will land as. | |
oxygen approvals client revoke | Clear the client role and restore full workspace access. Works on a pending invitation too, clearing what that address would land as. | writes |
oxygen approvals decide | Answer a pending request. | writes |
oxygen approvals gate list | Which gates this workspace requires. | |
oxygen approvals gate set | Require (or stop requiring) an approval before the live action. | writes |
oxygen approvals inbox | What is waiting on YOU: pending approvals assigned to you plus open threads that name you, each with the command that answers it. This is the surface a client logs in to. | |
oxygen approvals list | Approval requests in this workspace, newest first. Use --mine for the ones assigned to you, or approvals inbox for the daily view. | |
oxygen approvals request | Ask a named second party to decide. | writes |
oxygen approvals show | One approval request by its own id: what is being asked, on what, by whom, who must decide, and whether it can still be decided at all. |
auth
| Command | What it does | Notes |
|---|---|---|
oxygen auth doctor | Diagnose the active Oxygen CLI credentials without printing token material. | |
oxygen auth use-token | Store a CLI API token non-interactively. | writes |
billing
| Command | What it does | Notes |
|---|---|---|
oxygen billing allowance | Show this billing cycle's credit pool as one breakdown: fixed spend, flexible spend, credits committed to the next renewal, and what is free to spend — the numbers behind the bar on the… | |
oxygen billing audit | Summarize where managed credits were granted, reserved, captured, released, or spent. | |
oxygen billing balance | Show the current plan, subscription entitlement, and managed credit balance: available and reserved credits, FIXED credits committed to recurring per-resource charges, and the FLEXIBLE… | |
oxygen billing cancel | Schedule the plan subscription to cancel at period end. During a trial the card is never charged; undo any time before then with billing resume. | writes |
oxygen billing change | Preview an upgrade or downgrade and return a Stripe confirmation link. Nothing changes until confirmed in Stripe. | |
oxygen billing commitments | List the fixed monthly credit commitments blocked at your subscription renewal — per connected sending mailbox, OXYGEN-sold mailbox, warm-up, deliverability, and connected LinkedIn account — with… | |
oxygen billing grant | Grant managed credits to the current organization (staff only). | writes staff |
oxygen billing resume | Remove a scheduled cancellation so the subscription renews (or the trial converts) normally. | writes |
oxygen billing set-plan | Create or update an off-Stripe custom plan for an organization (staff only). | writes staff |
oxygen billing topup | Buy a custom amount of on-demand credits at $1.25 per 1,000. Run without an amount to inspect the allowed range; checkout happens in Stripe and purchased credits never expire. | |
oxygen billing usage | Show credit ledger events (each tagged with its FIXED/FLEXIBLE spend_class), automation action usage, or connected-account seat pricing (provider_seats — LinkedIn and WhatsApp). |
blueprints
| Command | What it does | Notes |
|---|---|---|
oxygen blueprints apply | Apply a blueprint: 0 credits and no provider calls or external writes, but creates workspace tables, columns, prompts, and a disabled workflow. | writes |
oxygen blueprints archive | Archive a saved blueprint (seed blueprints cannot be archived). | writes |
oxygen blueprints describe | Describe one blueprint (seed or saved) by slug. | |
oxygen blueprints export | Build a portable blueprint JSON from an existing workflow. | |
oxygen blueprints list | List Oxygen blueprints visible in this workspace (seeds + saved). | |
oxygen blueprints marketplace | Browse the public Oxygen blueprint marketplace. | |
oxygen blueprints preflight | Preflight a blueprint (slug, local file, or shared URL) against this workspace. | |
oxygen blueprints publish | List a blueprint on the public Oxygen marketplace. Auto-creates a share URL if none exists. | paid writes |
oxygen blueprints save | Persist a blueprint envelope into this workspace's gallery. | writes |
oxygen blueprints share | Create a public share URL for a saved blueprint (oxygen-agent.com/b/<code>). | writes |
oxygen blueprints shares | List existing share URLs for this workspace. | |
oxygen blueprints tag | Replace a saved blueprint's workspace tags (whole set; --tags "" clears). Works on already-saved blueprints — no re-export needed. See oxygen tags list for the vocabulary. | writes |
oxygen blueprints unpublish | Remove a blueprint from the public marketplace. The share URL stays valid for direct visitors. | writes |
oxygen blueprints unshare | Revoke a public share URL by short code. | writes |
budget
| Command | What it does | Notes |
|---|---|---|
oxygen budget delete | Delete a standing budget policy by id. | writes |
oxygen budget list | List the organization's standing budget policies. | |
oxygen budget set | Set, raise, or lower a standing credit cap (idempotent per scope+window). | paid writes |
callables
| Command | What it does | Notes |
|---|---|---|
oxygen callables bind | Add a callable-function column to a source table with explicit input and callback mappings. | paid writes |
oxygen callables describe | Describe a callable's typed input/output contract and pinned backing columns. | |
oxygen callables disable | Disable new invocations without changing existing tables or in-flight runs. | writes |
oxygen callables enable | Enable a callable table. | writes |
oxygen callables list | List published callable tables and their current credit posture. | |
oxygen callables publish | Publish an existing table as a versioned callable function. | paid writes |
capabilities
| Command | What it does | Notes |
|---|---|---|
oxygen capabilities get | Hydrate one exact capability card by id. | |
oxygen capabilities search | Find the owning capability, boundary, gateways, and next hydration step. |
cells
| Command | What it does | Notes |
|---|---|---|
oxygen cells history | Show cell change history. | writes |
oxygen cells inspect | Inspect one cell's value, row context, and recent history. |
columns
| Command | What it does | Notes |
|---|---|---|
oxygen columns add | Add a nullable column to a workspace table. Writes the definition only — this never runs the column and never spends credits; use columns run for that, with --dry-run first to see the cost. | writes |
oxygen columns archive | Archive a workspace column without dropping physical data. Hides it indefinitely with no purge timer; for cleanup with a restorable deadline use columns delete. | writes |
oxygen columns delete | Delete workspace columns: archives now, frees the key for reuse, and schedules the physical purge (default 14 days; restorable via columns restore until then). --now purges immediately and… | writes |
oxygen columns deps | Show the column dependency graph: which columns feed which (formulas, input mappings, run conditions, waterfall targets), transitive up/downstream, and cycles. Read-only. | |
oxygen columns materialize | Copy JSON paths from a result column into existing or new target columns. | writes |
oxygen columns rename | Rename a workspace column key and optionally label. | writes |
oxygen columns reorder | Move a workspace column to a new position, by absolute index or relative to another column. | writes |
oxygen columns rerun | Re-run a single AI column cell, optionally threading a prior message review's feedback into the prompt. | paid writes |
oxygen columns restore | Restore an archived or delete-scheduled column: cancels the purge timer and reclaims its key. | writes |
oxygen columns retype | Convert a manual text column to a stronger data type, migrating stored values. | writes |
oxygen columns run | Run an executable AI, tool, formula, enrichment, bind, lookup, or local custom HTTP column for one row or a bounded batch. | paid writes |
oxygen columns update | Update workspace column display metadata. | writes |
commands
| Command | What it does | Notes |
|---|---|---|
oxygen commands | Discover CLI commands. With no subcommand, print the backwards-compatible full manifest. | |
oxygen commands get | Hydrate one exact CLI command with its arguments, flags, and safety markers. | |
oxygen commands search | Find a bounded set of CLI commands from a natural-language outcome. |
comments
| Command | What it does | Notes |
|---|---|---|
oxygen comments add | Comment on a workspace object. | writes |
oxygen comments delete | Retract one of your own comments. AUTHOR ONLY, idempotent. The row stays so the thread remains a complete audit trail; the text is redacted on every read path. | writes |
oxygen comments edit | Rewrite one of your own comments. AUTHOR ONLY. The edit stamps edited_at — a thread that decided a launch is evidence, and evidence that changes without a trace is not evidence. | writes |
oxygen comments list | Every comment thread on one object, newest first, with its comments inline. Defaults to open threads only. | |
oxygen comments resolve | Mark a thread settled, or reopen it with --reopen. Idempotent both ways: re-resolving keeps the original resolver and timestamp. This is conversation state only — it never unblocks an approval gate. | writes |
oxygen comments show | One thread by its own id, with every comment. |
companies
| Command | What it does | Notes |
|---|---|---|
oxygen companies enrich preview | Inspect missing company fields, provider routing, and credit estimates without provider calls. | |
oxygen companies enrich run | Queue a live company enrichment waterfall after explicit approval, or return a dry-run plan. | paid writes |
oxygen companies search plan | Compile a company-search prompt into ordered provider routes without provider calls. | |
oxygen companies search run | Return a dry-run request or queue a live company-search ingestion run. | paid writes |
connections
| Command | What it does | Notes |
|---|---|---|
oxygen connections import | Start (or re-arm) a connections import. | writes |
oxygen connections status | Show connections-import progress (per-sender drip status, connections ingested, last error) plus a preview of the connections table and a deep-link to open it. |
context
| Command | What it does | Notes |
|---|---|---|
oxygen context assets archive | Archive a context asset. | writes |
oxygen context assets get | Read one context asset. | |
oxygen context assets list | List workspace context assets. | |
oxygen context assets search | Full-text 'second brain' search across context assets, ranked by relevance. | |
oxygen context assets set-default | Pin a context asset as the canonical default for its type. The canonical brand/voice/positioning docs are auto-applied to AI copy generation. | writes |
oxygen context assets upsert | Create or update a context asset. | writes |
oxygen context profile get | Read the current workspace company profile. | |
oxygen context profile update | Merge one or more profile sections into workspace GTM memory. | writes |
oxygen context resolve | Resolve task-scoped workspace GTM context with readiness and revision provenance. | writes |
copilot
| Command | What it does | Notes |
|---|---|---|
oxygen copilot approve | Approve (or, with --reject, reject) an action a Workspace Copilot session is waiting on; approving re-queues the paused turn. | paid writes |
oxygen copilot attach | Attach a file to a Workspace Copilot session without sending a message yet. | writes |
oxygen copilot attachments | List the files attached to a Workspace Copilot session, sent and unsent. | |
oxygen copilot cancel | End a Workspace Copilot session for good, stopping any in-flight turn. The session cannot take new messages afterwards — to stop only the current turn, use copilot interrupt. | writes |
oxygen copilot get | Show one Workspace Copilot session: its state, turns, and event log. Use --after-seq to page through the event stream. | |
oxygen copilot interrupt | Stop the turn a Workspace Copilot session is currently working on, leaving the session open for your next message. | writes |
oxygen copilot list | List your Workspace Copilot sessions with their status, budget, and credits spent. | |
oxygen copilot send | Send a message to a Workspace Copilot session and stream the reply to stderr. | paid writes |
oxygen copilot start | Start a Workspace Copilot session. --budget-credits is your explicit approval of the session's inference spend cap; inference bills at 5x the actual model cost within it. | paid writes |
crm
| Command | What it does | Notes |
|---|---|---|
oxygen crm activity log | Log a timeline activity on a CRM record. Defaults to dry-run. | writes |
oxygen crm activity note | Log a free-text note on a CRM record. Defaults to dry-run. | writes |
oxygen crm activity timeline | Show a CRM record's activity timeline, newest first. Address the record by row id OR by any of the object's identities — a company domain, a person's email or LinkedIn URL. | |
oxygen crm assert | Create or update one CRM record by object identity. | |
oxygen crm automation audit | Show recent CRM automation rule changes, newest first. | |
oxygen crm automation rules | List the standing CRM automation templates and their armed state. | |
oxygen crm automation set | Arm or disarm a standing CRM automation template. | paid writes |
oxygen crm describe | Describe one configured CRM object. | |
oxygen crm duplicates | List ranked duplicate-candidate record pairs for one CRM object (identity-overlap + fuzzy-label). Read-only. | |
oxygen crm enrichment backfill | Enrich the records you ALREADY have. | paid writes |
oxygen crm enrichment disable | Disarm one enrichment on a CRM object and leave every other choice untouched. New records stop running its columns; already-written values stay. | writes |
oxygen crm enrichment enable | Arm one enrichment on a CRM object and leave every other choice untouched. | writes |
oxygen crm enrichment list | Show the enrichments available per CRM object: which are armed, what each costs per record, the per-record total, the per-batch credit ceiling, how much of the column allowance is spent, and how… | |
oxygen crm enrichment off | Turn automatic enrichment off for a CRM object: revokes the standing permission and clears the WHOLE configuration — every named preset plus any columns you added to it yourself, so nothing keeps… | writes |
oxygen crm enrichment set | Replace the armed enrichment set for a CRM object outright — any preset not listed is disarmed, while columns you added to the config yourself are kept. | paid writes |
oxygen crm fields | Fill the stored CRM fields (Industry, Employees, HQ, and their siblings) from enrichment data this workspace already holds. | |
oxygen crm get | Get one CRM record aggregate with row values, identities, and relationships. | |
oxygen crm merge | Merge two CRM records: survivor-wins-with-loser-fill field write + relink/tombstone. Defaults to dry-run; --live requires --confirm. | writes |
oxygen crm objects | List configured CRM objects, or create/extend custom objects. | |
oxygen crm objects add-attr | Add one attribute to an existing custom CRM object, optionally as an identity. Defaults to dry-run. | writes |
oxygen crm objects create | Create or repair a custom CRM object. Defaults to dry-run. | writes |
oxygen crm objects delete | Delete a CUSTOM CRM object: removes the object and schedules its backing table for deletion (restorable for 14 days). | writes |
oxygen crm photos | Fill CRM people photos from LinkedIn data this workspace already holds — inbox conversations, connections, followers, and post engagers. | |
oxygen crm pipeline | Show the deals pipeline grouped by stage, with per-stage counts and amount totals. | |
oxygen crm relationships define | Define a relationship (and its relation column) from a custom object to any object. Defaults to dry-run. | |
oxygen crm relationships upsert | Create or replace a CRM relationship edge. Defaults to dry-run. | writes |
oxygen crm rollup | Recompute the Open Deal column on companies (and the copy stamped on their people) from this workspace's deals. | |
oxygen crm search | Search CRM records by identity or record label. Takes ONE query; narrow the objects with --object, not a second argument. | |
oxygen crm setup | Create or repair standard CRM object-backed tables. Defaults to dry-run. | writes |
oxygen crm signals leads-today | List people to contact today, ranked by their most recent GTM intent signal. Do-not-contact filtering is best-effort (email-only leads surface unchecked). | |
oxygen crm signals record | Record one inbound GTM signal (website_visit, profile_view, post_engager, new_follower) into the CRM. Internal write — free, no approval. Idempotent on --external-event-id. | writes |
oxygen crm sync configure | Configure a standing bidirectional sync for one CRM object pair. | paid writes |
oxygen crm sync disable | Disable the scheduled sync for one CRM object pair: stops the cron trigger and revokes the standing write permission. | writes |
oxygen crm sync enable | Enable continuous (scheduled) bidirectional sync for one CRM object pair: arms the cron trigger + the standing write permission, and runs an immediate first cycle. | paid writes |
oxygen crm sync import | Import provider records into an Oxygen CRM object as a durable workflow run. Defaults to dry-run. | paid writes |
oxygen crm sync links | Show provider record links (HubSpot/Attio ids) mapped to one Oxygen CRM record. | |
oxygen crm sync run | Run one bidirectional reconciliation cycle for a configured CRM object pair as a durable workflow run. Defaults to dry-run. | paid writes |
oxygen crm sync status | Show a CRM sync status: pass --run-id for one workflow run, or --provider/--object for the standing sync config (cadence, watermarks, last-cycle counts). | |
oxygen crm tag | Add/remove workspace tags on one CRM record (Tags primitive — the same vocabulary as sequences, tables, conversations; see oxygen tags list). | writes |
custom-integrations
| Command | What it does | Notes |
|---|---|---|
oxygen custom-integrations apply | Create or update a custom HTTP integration manifest. Attach credentials with custom-integrations connect. Manifest schema + worked examples: https://oxygen-agent.com/docs/providers/custom-http | writes |
oxygen custom-integrations connect | Attach the credential (bearer token, API key, or basic password) for an applied custom HTTP integration. | writes |
oxygen custom-integrations list | List custom HTTP integrations for the active organization. |
dashboards
| Command | What it does | Notes |
|---|---|---|
oxygen dashboards summary | Show the GTM funnel summary: touches → replies → positive → meetings → deals → won, with this-period revenue, channel split, and needs-action triage counts. |
db
| Command | What it does | Notes |
|---|---|---|
oxygen db attach | Attach an existing Postgres database as the current organization's tenant database. | writes |
oxygen db backfill-table-order-indexes | Converge stable row-order indexes on existing customer tables. Staff only; the default dry-run uses 0 credits and makes no database changes. | writes staff |
oxygen db backfill-upsert-indexes | Create missing upsert-key secondary indexes on customer tables. Staff only; defaults to dry-run. | writes staff |
oxygen db cost-policy | Show tenant database cost controls and reconciliation status. | |
oxygen db migrate | Apply pending tenant database migrations for the current organization. | writes |
oxygen db migrate-all | Apply pending tenant database migrations across all ready tenants (staff only). | writes staff |
oxygen db provision | Provision a managed Neon tenant database for the current organization. Staff can pass global --org to repair another org. | writes |
oxygen db query | Run one read-only SQL statement against the current tenant database. | |
oxygen db reconcile | Inspect tenant database registry drift. Staff only; defaults to dry-run. | writes staff |
oxygen db reconcile-cost-policy | Apply tenant database cost controls to the managed Neon endpoint. | writes |
oxygen db repair-preview | Preview tenant database repair issues without mutating production state (staff only). | staff |
oxygen db status | Show the current organization's tenant database status. Staff can pass global --org to inspect another org. |
deliverability
| Command | What it does | Notes |
|---|---|---|
oxygen deliverability placement-test get | Get one directional inbox-placement test by id — status, health provider, seed inboxes, per-provider results, and score. | |
oxygen deliverability placement-test list | List recent directional inbox-placement tests with status, health provider, billing mode, seed set, score, and credits used. | |
oxygen deliverability placement-test run | Create a placement test for one sending mailbox. | paid writes |
oxygen deliverability placement-test send | Preview or send the exact EmailGuard seed message for a provider-created test. | paid writes |
directory
| Command | What it does | Notes |
|---|---|---|
oxygen directory apply | Apply to be listed in the public agency directory (reviewed by the OXYGEN team). | writes |
oxygen directory get | Read-only, 0 credits. Read the listing, publish state, and public/settings deep-links. | |
oxygen directory publish | Publish at https://oxygen-agent.com/agencies. Requires a tagline, description, and at least one contact method (website, booking link, email, or LinkedIn). | writes |
oxygen directory unpublish | Remove the listing from the public directory (keeps the draft editable). | writes |
oxygen directory update | Update listing fields. Changes to a published listing are public immediately. Only invited organizations can edit. | writes |
domains
| Command | What it does | Notes |
|---|---|---|
oxygen domains add | BYOK CLOUDFLARE: onboard a domain registered elsewhere by creating a zone in your connected Cloudflare account. For managed domain + inbox provisioning use managed-inboxes subscribe. | writes |
oxygen domains adopt | STAFF LEGACY RECOVERY: attach domains that already exist in the shared Oxygen-managed Cloudflare account to their workspace. | writes staff |
oxygen domains archive | Hide a domain from the default list — an Oxygen-side declutter flag only. | writes |
oxygen domains buy | BYOK CLOUDFLARE ONLY. | paid writes |
oxygen domains check | BYOK CLOUDFLARE: check availability and pricing for up to 20 exact domains. Free — nothing is purchased. | |
oxygen domains dns | Run a live read-only DNS health check (SPF, DKIM, DMARC, MX) against the domain's Cloudflare zone and persist the result. | |
oxygen domains dns apply | Write the planned cold-email DNS records into the domain's Cloudflare zone. | paid writes |
oxygen domains dns plan | Preview the cold-email DNS records a domain should hold for its mailbox provider (SPF, per-provider DKIM, DMARC, MX, optional tracking) as a create/update/keep/conflict diff plus a plan_hash. | |
oxygen domains forwarding get | Show the domain's current web-root forwarding destination. Read-only, 0 credits. | |
oxygen domains forwarding set | Point the domain's web root at a URL. WITHOUT --approved this previews current -> new and writes nothing. Free (0 credits), but it changes what every visitor to the domain sees. | paid writes |
oxygen domains get | Get one domain's infrastructure/readiness detail: zone state, age with provenance, mailboxes, cached sending volume, and the last DNS health check. | |
oxygen domains list | List the org's cached Cloudflare domains with cold-email metadata (age, mailboxes, warmup, sending volume, DNS health). | |
oxygen domains postmaster onboard | Register the domain with Google Postmaster Tools and publish the DNS verification TXT automatically via the domain's Cloudflare zone (or return the record for manual DNS); verification then… | writes |
oxygen domains postmaster status | Show the Google Postmaster Tools onboarding status for a domain: registration, DNS verification state, and whether reputation data is available. Read-only — 0 Oxygen credits. | |
oxygen domains registration-status | Get one domain registration's ledger state (the server performs a gated live poll when due — safe to call repeatedly). Pass --wait to poll until it settles. | |
oxygen domains registrations | List the org's domain purchase ledger: every registration attempt with status and price snapshot. | |
oxygen domains search | BYOK CLOUDFLARE: search Registrar for available domains with registration/renewal pricing. Free — nothing is purchased. | |
oxygen domains sync | Refresh the domain cache from Cloudflare: zone pages, registrar metadata, RDAP age backfill, and DNS health. Partial (paginated) syncs auto-continue until complete. | writes |
oxygen domains tag | Replace a domain's workspace tags (whole set; --tags "" clears) — e.g. pool the domains behind one campaign tag. | writes |
oxygen domains tracking setup | Provision the open/click tracking CNAME (<track-host> CNAME <tracking target>) on the domain's Cloudflare zone. | writes |
oxygen domains tracking status | Show the open/click tracking status for a domain (configured host, verification status, CNAME target, whether the tracking secret is set). Reads the cache — 0 Oxygen credits. | |
oxygen domains unarchive | Restore an archived domain to the default list. | writes |
egress
| Command | What it does | Notes |
|---|---|---|
oxygen egress assign | Assign sending mailboxes to inventoried egress IPs — least-loaded across the active pool, or pinned with --ip. | writes |
oxygen egress dedicated cancel | Cancel the dedicated sending-IP add-on. | writes |
oxygen egress dedicated request | Preview the dedicated sending-IP add-on (15,000 credits per 30-day period, $15 face value; the org's mailboxes share the one dedicated IP). | paid writes |
oxygen egress dedicated status | Show this org's dedicated sending-IP add-on state (status, quantity, activation, price). Read-only, 0 credits. | |
oxygen egress ips | List the egress IPs this org may send through (shared pool for this env + any dedicated IP). Read-only. | |
oxygen egress register | STAFF: register a manually-purchased sending IP into this environment's inventory. | writes staff |
oxygen egress rotate | Rotate a mailbox's sending IP. Approval-gated: without --approve it previews and makes no change. | writes |
oxygen egress status | Show egress mode, this org's open mailbox->IP assignments, and IP health counts. Read-only, 0 credits. |
| Command | What it does | Notes |
|---|---|---|
oxygen email send | Send ONE email right now. Without --approved, returns a preview naming the exact mailbox + transport. --from pins a mailbox; otherwise the pool's LRU rotation picks one. | paid writes |
engagement
| Command | What it does | Notes |
|---|---|---|
oxygen engagement comment | Comment on a LinkedIn post (or reply to a comment with --comment-id). | paid writes |
oxygen engagement harvest | Start (or re-arm) a harvest of a post's engagers into a workspace table you can enroll into a sequence. | paid writes |
oxygen engagement react | React to a LinkedIn post (or to a comment with --comment-id). | paid writes |
oxygen engagement status | Show an engagement harvest's progress (drip status, engagers ingested, last error) plus the workspace table it fills and a preview of harvested engagers. |
enrich-column
| Command | What it does | Notes |
|---|---|---|
oxygen enrich-column preview | Preflight an enrichment column without provider calls or credit usage. | |
oxygen enrich-column run | Create or reuse an enrichment column and queue a background run. | paid writes |
enrichment
| Command | What it does | Notes |
|---|---|---|
oxygen enrichment apply-default-cascade | Patch an existing enrichment column to the server-side default provider cascade for its intent. | writes |
feedback
| Command | What it does | Notes |
|---|---|---|
oxygen feedback | Send feedback or a bug report to the OXYGEN team. This is the same immediate, zero-credit canonical Plain Thread write as support file; transcripts are never attached unless explicitly requested. |
feeds
| Command | What it does | Notes |
|---|---|---|
oxygen feeds bind | Bind a pull feed to an existing table: freeze the provider request, then optionally arm a cadence so the table refills itself. | paid writes |
oxygen feeds deliveries | List the shared table delivery ledger: pull-feed sync cycles and inbound webhook deliveries land in the same place. | |
oxygen feeds get | Get one table feed: cadence and next run, per-cycle caps, cursor counters, last cycle, and last error. Read-only. | |
oxygen feeds list | List table feeds for the workspace, newest first. Read-only. | |
oxygen feeds pause | Pause a feed: the cron stays armed but every cycle it fires is refused, so nothing is fetched and nothing is billed until you resume. Free. | writes |
oxygen feeds resume | Resume a feed: re-activates it AND clears an error/exhausted stop, so the next cron tick can claim it again. Re-uses the cadence and spend cap already approved at bind time. Free. | writes |
oxygen feeds run | Run one sync cycle now through the feed's own cron workflow (one harvest path, one cursor). --mode dry_run (default) renders the exact next-cycle provider request with the cursor or watermark… | paid writes |
oxygen feeds unbind | Delete a feed: removes its cron FIRST, then the feed row. The table and every row it already wrote are kept. | writes |
find
| Command | What it does | Notes |
|---|---|---|
oxygen find company | Enrich a company (domain/linkedin/headcount/industry/funding/tech/hiring/profile) via a waterfall. | paid |
oxygen find email | Find a person's work email via an input-aware multi-provider waterfall: a LinkedIn URL, name+domain, or first/last+domain each select the best provider profile, with an email-pattern pre-step and… | paid |
oxygen find linkedin | Resolve a person's LinkedIn URL from name + company (or email), with identity validation. | paid |
oxygen find phone | Find a person's mobile phone via a multi-provider waterfall. | paid |
followers
| Command | What it does | Notes |
|---|---|---|
oxygen followers import | Start (or re-arm) a followers import. | writes |
oxygen followers status | Show followers-import progress (per-sender drip status, followers ingested, last error) plus a preview of the followers table and a deep-link to open it. |
formulas
| Command | What it does | Notes |
|---|---|---|
oxygen formulas functions | List every formula function (name, signature, examples) and the operator grammar. The same language powers formula columns and --run-condition gates. | |
oxygen formulas validate | Validate a formula against a table and preview its output on sample rows — free, no writes. Draft → validate → attach with oxygen columns add --kind formula. |
home
| Command | What it does | Notes |
|---|---|---|
oxygen home | Your workspace standup: what happened since you last looked, what needs you, and a year of workspace activity. |
inbox
| Command | What it does | Notes |
|---|---|---|
oxygen inbox analyze | Run analysis on a conversation now: status + a drafted reply (Oxygen's default model). The worker also does this automatically on inbound conversations. | |
oxygen inbox archive | Archive a conversation (triage it out of the inbox). --unarchive restores it. --channel linkedin/whatsapp archives a DM. | writes |
oxygen inbox auto-tagger get | Show the auto-tagger config (enabled, tag allowlist, channels). | |
oxygen inbox auto-tagger set | Update the auto-tagger. --tags replaces the whole allowlist (max 50; --tags "" clears, which pauses tagging while keeping the agent enabled). | writes |
oxygen inbox backfill | Opt-in: pull a LinkedIn account's OLDER message history into the unibox. | writes |
oxygen inbox bulk | Bulk-apply one triage action — set-status / archive / unarchive — across up to 100 hand-picked conversations (the ids inbox list returns) in one call. | |
oxygen inbox drafts edit | Edit an open draft's body before approval. Does not send. | writes |
oxygen inbox drafts list | List drafts awaiting review (queued + edited by default), across email + LinkedIn. | |
oxygen inbox drafts reject | Reject an open draft so it leaves the queue. Does not send. | writes |
oxygen inbox get | Get one conversation with its full message thread. <conversation> accepts a conversation id, Unipile chat id, or (email) Zapbox thread id. | |
oxygen inbox labels create | Create a custom status label. | writes |
oxygen inbox labels delete | Archive a custom status label (system labels and in-use labels are rejected). | writes |
oxygen inbox labels list | List status labels. | |
oxygen inbox labels restore | Restore an archived custom status label under its original key. | writes |
oxygen inbox labels update | Update a status label's name, color, bucket, description, or (custom labels only) ai-settable flag. | writes |
oxygen inbox list | List conversations newest first. --channel all merges email + LinkedIn + WhatsApp into one stream (narrow it with --channels); --channel email/linkedin/whatsapp lists a single channel. | |
oxygen inbox mark-all-read | Mark EVERY conversation matching the filters as read — the whole filtered set across email + LinkedIn + WhatsApp, not just the conversations on the page you can see. | writes |
oxygen inbox mark-read | Mark a conversation and all its messages as read. | writes |
oxygen inbox reply-agent get | Show the reply-agent config. | |
oxygen inbox reply-agent set | Configure the reply agent (enable, persona/tone, targets). | writes |
oxygen inbox rescan | Re-queue conversations for AI re-classification (status + drafted reply). | writes |
oxygen inbox send | Reply into a conversation. --channel email replies from the conversation's own mailbox (Zapbox/native Gmail/Graph, threaded); --channel whatsapp warm-replies into an existing WhatsApp… | paid writes |
oxygen inbox status | Set a conversation's status (the Instantly-style tier). A manual override that locks out AI re-classification. --channel linkedin/whatsapp sets a DM's status. | |
oxygen inbox sync | Force a backstop inbox sync from Unipile for all active sender accounts (pulls recent chats + messages into the unibox). | writes |
oxygen inbox tag | Add/remove workspace tags on a conversation (Tags primitive — the same vocabulary as sequences, tables, posts; see oxygen tags list). | writes |
integrations
| Command | What it does | Notes |
|---|---|---|
oxygen integrations actions | List actions available for a connected integration — Composio toolkits and native providers (e.g. Instantly) alike. | |
oxygen integrations connect | Connect an integration. | writes |
oxygen integrations destinations | List where a connected integration can send — for Microsoft Teams, your teams and your chats, plus one team's channels with --team-id. | |
oxygen integrations disconnect | Disconnect an integration. LinkedIn and WhatsApp remove the Unipile connected account; pass --connection-id when more than one is connected. | writes |
oxygen integrations events deliveries | List recent provider webhook deliveries (Composio triggers, HubSpot webhooks, etc.) and the workflow runs they kicked off. | |
oxygen integrations events disable | Disable a provider event for a connected integration account. | writes |
oxygen integrations events enable | Enable a provider event for a connected integration account. | writes |
oxygen integrations events list | List raw provider event definitions and this org's enabled subscriptions. To choose a workflow trigger, use oxygen workflows events list. | |
oxygen integrations list | List supported integrations and this org's connections. | |
oxygen integrations run | Run an action for a connected integration — Composio toolkits and native providers alike. | paid writes |
oxygen integrations test | Re-validate a stored integration API key against the provider and heal the connection when it passes (recovers benched or scope-degraded connections without re-pasting the key). |
knowledge
| Command | What it does | Notes |
|---|---|---|
oxygen knowledge agent get | Show the synthesis-agent config (enabled, cadence, per-day credit cap). | |
oxygen knowledge agent set | Configure the synthesis agent. Enabling lets the background worker distill new sources on the cadence; it only writes working learnings pages. | paid writes |
oxygen knowledge graph | Knowledge graph of pages and their [[wikilink]] edges. Pass --center to render one page's local neighborhood instead of the whole graph. | |
oxygen knowledge index | Compact wiki index: every page's slug, one-liner, tags, link degree, plus type/status counts. | |
oxygen knowledge lint | Structural wiki health report: orphans, dead-ends, unresolved links, missing canonicals, untagged pages, duplicate titles, oversized hubs, unfilled seed stubs, decisions missing a reversal… | |
oxygen knowledge lint relink | Recompute [[wikilink]] edges (and gap-fill unlinked mentions) across wiki pages. | writes |
oxygen knowledge log append | Append an entry to the knowledge log. | |
oxygen knowledge log list | List knowledge log entries, newest first. | |
oxygen knowledge page archive | Archive a knowledge wiki page. | writes |
oxygen knowledge page get | Read one knowledge wiki page by slug or UUID. | |
oxygen knowledge page list | List knowledge wiki pages. | |
oxygen knowledge page pin | Pin a knowledge wiki page as the canonical default for its type. Canonical voice/brand/positioning pages are auto-applied to AI copy generation. | paid writes |
oxygen knowledge page revision | Read one full revision snapshot of a knowledge wiki page. | |
oxygen knowledge page revisions | List the revision history of a knowledge wiki page, newest first. | |
oxygen knowledge page upsert | Create or update a knowledge wiki page. | paid writes |
oxygen knowledge profile | Company profile and ICP memory. | |
oxygen knowledge profile update | Merge one or more profile sections into workspace GTM memory. | writes |
oxygen knowledge proposals | Draft change proposals against wiki pages, awaiting human review. | |
oxygen knowledge proposals approve | Approve a knowledge proposal and apply it to the target page. | writes |
oxygen knowledge proposals reject | Reject a knowledge proposal without changing the target page. | writes |
oxygen knowledge purge | Delete the whole local knowledge mirror for the active API host and organization. | writes |
oxygen knowledge push | Push locally edited or newly created mirror pages back to the workspace wiki. Edits to canonical voice/brand/positioning pages become approval proposals instead of writing live. | writes |
oxygen knowledge resolve | Resolve task-scoped workspace GTM context with readiness and revision provenance. | writes |
oxygen knowledge search | Full-text search across knowledge wiki pages, ranked by relevance. | |
oxygen knowledge seed | Seed or upgrade the knowledge wiki scaffold: on first run creates the starter page set — a start-here guide, a conventions schema page, and stub hubs (icp, positioning, offers, competitors… | writes |
oxygen knowledge status | Report the local knowledge mirror: path, page count, last sync, quarantined conflicts. Pass --all to report every locally mirrored workspace for the active API host. | |
oxygen knowledge sync | Clone or refresh the local knowledge mirror: server-rendered page markdown under the CLI config dir. Pass --all to mirror every workspace the credential can access. | writes |
oxygen knowledge synthesize | Synthesize knowledge from workspace evidence (one low-cost AI call): campaign learnings from auto-filed outreach outcomes, or a voice guide from sent messages. | paid writes |
lead-sourcing
| Command | What it does | Notes |
|---|---|---|
oxygen lead-sourcing audit | Audit a sourced lead table against a lead-sourcing spec. | |
oxygen lead-sourcing plan | Compile a natural-language ICP into an account-first lead sourcing plan. |
limits
| Command | What it does | Notes |
|---|---|---|
oxygen limits provider delete | Remove a per-provider override (falls back to the plan-tier default). | writes |
oxygen limits provider list | List enforced provider overrides and the plan-tier BYOK daily threshold with its enforcement mode. | |
oxygen limits provider set | Set an enforced per-provider call ceiling. Use --window-seconds 86400 for an explicit daily policy. | writes |
oxygen limits show | Show effective plan-tier limits, spend-safety defaults, and uncapped-by-plan storage posture. |
| Command | What it does | Notes |
|---|---|---|
oxygen linkedin connections invite | Send a LinkedIn connection invitation. | paid writes |
oxygen linkedin ingestion status | Unified status of every LinkedIn ingestion drip (connections import, engagement harvest, message-history backfill) plus each account's remaining ingest read budget for the day. | |
oxygen linkedin intent setup | Create/reuse the canonical OXYGEN Tables, link them, and arm capture-only worker-backed engagement workflows for profile viewers, followers, and connections. | writes |
oxygen linkedin intent status | Show the canonical intent tables, their linked-table deep-links, and the capture feeds filling them. | |
oxygen linkedin invitations list | List the account's pending sent LinkedIn invitations with their invitation ids — the ids linkedin invitations withdraw --ids cancels. Read-only: no provider write, no credits. | |
oxygen linkedin invitations withdraw | Withdraw pending sent LinkedIn invitations. | paid writes |
login
| Command | What it does | Notes |
|---|---|---|
oxygen login | Connect this terminal to Oxygen. Opens the browser to approve this terminal (matching confirmation code shown in both); paste a token with --token instead if you prefer. | writes |
logout
| Command | What it does | Notes |
|---|---|---|
oxygen logout | Remove the active stored CLI API token. | writes |
mailboxes
| Command | What it does | Notes |
|---|---|---|
oxygen mailboxes cap set | Set one sending mailbox's daily send cap (sends per day). --daily-cap must be a positive whole number. Consumes no Oxygen credits. <mailbox> accepts a mailbox id or email address. | writes |
oxygen mailboxes compatibility | Read-only compatibility report for every selected mailbox: generic origin class, real infrastructure tier (including InboxKit Azure), OXYGEN native-send connection quality, OXYGEN Warm-up path… | |
oxygen mailboxes connect-oauth | Connect Google/Microsoft mailboxes to OXYGEN native send. | paid writes |
oxygen mailboxes delegation | Google sending-domain delegation only — not Microsoft OAuth and not a credential-file handoff to OXYGEN Warm-up or EmailGuard. | |
oxygen mailboxes delete | Preview or approve removal of exact mailboxes from Oxygen at 0 credits. | writes |
oxygen mailboxes emailguard connect | Preview or connect selected mailboxes to EmailGuard. | paid writes |
oxygen mailboxes emailguard disconnect | Preview or remove selected mailboxes from EmailGuard and cancel their recurring monitoring subscription. Remote absence is confirmed before billing stops. | paid writes |
oxygen mailboxes get | Get one sending mailbox's configuration/readiness detail (provider, status, daily cap, warmup state, auth mode, and source — managed vs bring-your-own) plus a one-row pool summary. | |
oxygen mailboxes health | Fleet email-health: the sending pool rolled up by external deliverability reputation (healthy/degraded/critical/unknown), per-mailbox scores, connected health providers, and DIRECTIONAL… | |
oxygen mailboxes import | Register (or refresh) sending mailboxes in bulk. | writes |
oxygen mailboxes list | List the org's sending mailboxes with provider, status, warmup state, source (managed = bought through Oxygen, byok = bring-your-own), and a pool overview (including counts by source). | |
oxygen mailboxes oauth-health | Show every Google/Microsoft inbox with neither a usable per-mailbox OAuth token nor verified delegation/application access. | |
oxygen mailboxes order | RETIRED — managed mailboxes are now purchased as monthly subscriptions via oxygen managed-inboxes subscribe (InboxKit-backed). | writes deprecated |
oxygen mailboxes ramp set | Set one mailbox's warm-up ramp: --start-per-day (day-0 ceiling), --increase-every-days (>=1), --step (added each period), --cap (ceiling). | writes |
oxygen mailboxes status | Set a sending mailbox's status. Pausing/disabling takes the inbox out of the rotation pool without losing its warmup state. | |
oxygen mailboxes tag | Replace a sending mailbox's workspace tags (whole set; --tags "" clears) — e.g. pool the mailboxes behind one campaign tag. See oxygen tags list for the vocabulary. | writes |
oxygen mailboxes update | Update a sending mailbox's rich-content profile: the From display name and/or the HTML signature appended to its sends. | writes |
oxygen mailboxes warmup config | Show or OVERRIDE one mailbox's warmup ramp. | |
oxygen mailboxes warmup disable | Disable warmup and unenroll each mailbox from the rail that actually enrolled it. | writes |
oxygen mailboxes warmup enable | STANDALONE ENROLLMENT: enroll BYOK/imported mailboxes, a managed order that opted out, or mailboxes being added to warmup later. | paid writes |
oxygen mailboxes warmup microsoft | NON-INBOXKIT FALLBACK ONLY: authorize eligible Microsoft/Outlook mailboxes for OXYGEN Warm-up with ONE browser consent PER MAILBOX, never a password or app password. | paid |
oxygen mailboxes warmup pause | Pause warmup at the rail that actually enrolled each mailbox — OXYGEN Warm-up for current enrollments, TrulyInbox for inboxes still warming there. | writes |
oxygen mailboxes warmup resume | Resume paused warmup at each mailbox's recorded rail (OXYGEN Warm-up, or TrulyInbox for inboxes still warming there). | writes |
oxygen mailboxes warmup status | Read warmup analytics back from the rail each mailbox is enrolled on and update its state in the pool. Read-only at the vendor, 0 Oxygen credits. Targets the whole pool unless --mailboxes is given. |
managed-inboxes
| Command | What it does | Notes |
|---|---|---|
oxygen managed-inboxes add-inboxes | Add mailboxes to a managed domain you ALREADY own — no new domain is registered and there is NO domain registration charge, only the extra inboxes' monthly rate (plus their add-ons). | paid writes |
oxygen managed-inboxes cancel | Cancel a managed inbox order by domain: the inboxes AND every recurring add-on on them (warm-up, inbox placement). | paid writes |
oxygen managed-inboxes get | Get one managed inbox subscription by domain (vendor, platform, mailbox count, monthly USD price, vendor order id, lifecycle status, auto-renew, period end, internal billing status). | |
oxygen managed-inboxes list | List the org's managed inbox orders: vendor, platform, live inbox count, lifecycle status, internal billing posture, and each order's FULL monthly cost — the inbox line plus the warm-up and… | |
oxygen managed-inboxes registrant | Show the registrant (WHOIS) contact this workspace files domain registrations under, or null if it has never bought one. | |
oxygen managed-inboxes subscribe | Subscribe a NEW domain + mailboxes as a managed monthly inbox subscription. | paid writes |
oxygen managed-inboxes upload-avatar | Host a mailbox profile picture and print the URL to pass as profile_picture_url. | writes |
oxygen managed-inboxes verify | Check that OXYGEN, STRIPE, and the VENDOR agree about what this org is buying. |
messages
| Command | What it does | Notes |
|---|---|---|
oxygen messages query | Query messages across channels newest first, or relevance-ranked when -q is set. --channel all merges email + LinkedIn + WhatsApp (narrow with --channels); a campaign filter (--sequence-id)… | |
oxygen messages stats | Unibox/Message-ledger analytics: outbound/inbound totals, heuristic reply rate by channel + campaign, status breakdowns, response-time percentiles, top counterpart domains, and winning openers. |
notetaker
| Command | What it does | Notes |
|---|---|---|
oxygen notetaker schedule | Schedule an invited meeting bot. Defaults to dry-run. | paid writes |
oxygen notetaker setup | Configure the Recall-backed Oxygen Notetaker. Defaults to dry-run. | writes |
oxygen notetaker status | Get one notetaker session with artifacts and credit state. |
observability
| Command | What it does | Notes |
|---|---|---|
oxygen observability approvals | List everything waiting for a human decision across workflows, publishing, message reviews, inbox reply drafts, and collaboration approval requests — the cross-primitive approvals inbox. | |
oxygen observability events | List recent redacted OXYGEN operation events and failures. Customer support triage and support-event history live in Plain Inbox. | |
oxygen observability runs | List active and failed runs across workflows and table action/ingestion runs — the cross-primitive runs lens. Read-only; each failed item carries the command that resolves it. |
orgs
| Command | What it does | Notes |
|---|---|---|
oxygen orgs billing-link | Cover a workspace with a plan you already pay for in another organization (one plan, many workspaces) instead of buying a second subscription. | writes |
oxygen orgs billing-owners | List the organizations that could pay for this workspace: which of the organizations you belong to can cover another workspace's credits, and for each of the rest, why it cannot. | |
oxygen orgs billing-unlink | Return a workspace to owning its own billing: it stops being covered by another organization's plan and needs a subscription of its own again. | writes |
oxygen orgs list | List organizations available to the current CLI identity. | |
oxygen orgs member-role | Move a member between the admin and member workspace roles. | |
oxygen orgs select | Alias for orgs use. | writes alias |
oxygen orgs use | Select the active organization for this CLI profile. | writes |
people
| Command | What it does | Notes |
|---|---|---|
oxygen people search plan | Compile a people-search prompt and optional typed persona filters into ordered provider routes without provider calls. | |
oxygen people search run | Return a dry-run request or queue a live people-search ingestion run. Upsert dedup is on linkedin_url. | paid writes |
posts
| Command | What it does | Notes |
|---|---|---|
oxygen posts comments | Read one post's comments live from LinkedIn (or one comment's replies with --comment-id). | |
oxygen posts create | Publish a LinkedIn post from the connected account. | paid writes |
oxygen posts delete | Delete a LinkedIn post the connected account authored — a REAL, irreversible public write. | paid writes |
oxygen posts get | LIVE provider read of one LinkedIn post. | |
oxygen posts reactions | List a post's reactions (or a comment's reactions with --comment-id). --post MUST be the composite social_id from posts get. Metered as an account read. |
profiles
| Command | What it does | Notes |
|---|---|---|
oxygen profiles current | Show the profile the next command will use, and where it came from. | |
oxygen profiles env | Print shell export lines that pin this terminal to a stored CLI profile. | |
oxygen profiles list | List stored CLI credential profiles. | |
oxygen profiles remove | Remove one stored CLI credential profile. | writes |
oxygen profiles use | Switch the active CLI credential profile. | writes |
projects
| Command | What it does | Notes |
|---|---|---|
oxygen projects create | Create a schema-backed table project. | writes |
oxygen projects delete | Delete an empty non-General table project. Defaults to dry-run; --live requires --confirm. | writes |
oxygen projects list | List table projects in the current tenant database. | |
oxygen projects rename | Rename a table project's display name and slug without changing its tables. | writes |
oxygen projects tag | Replace a project's workspace tags (whole set; --tags "" clears). See oxygen tags list for the vocabulary. | writes |
prompts
| Command | What it does | Notes |
|---|---|---|
oxygen prompts archive | Archive a prompt template. Seeded templates cannot be archived. | writes |
oxygen prompts get | Read one prompt template by id or slug. | |
oxygen prompts list | List prompt templates in the workspace. | |
oxygen prompts upsert | Create or update a prompt template. | writes |
publishing
| Command | What it does | Notes |
|---|---|---|
oxygen publishing amplification actions | The policy's action ledger: what each participant account did (or is about to do) on which post, with status and cost. | |
oxygen publishing amplification create | Create an amplification policy. | paid writes |
oxygen publishing amplification delete | Delete a policy. | writes |
oxygen publishing amplification disable | Disarm a policy and skip every action it had already planned. Always allowed — the off switch is never gated. | writes |
oxygen publishing amplification enable | Arm a policy. | paid writes |
oxygen publishing amplification get | Get one policy: scope, participants, caps, pacing, enabled state, and standing approval. | |
oxygen publishing amplification list | List amplification policies with their scope, caps, and enabled state. | |
oxygen publishing amplification update | Update a policy's participants, actions, caps, or pacing. Tightening a cap takes effect on the next cycle. | paid writes |
oxygen publishing analytics account | Stored per-account metric series for connected publishing accounts. Read-only: no provider call, 0 credits. | |
oxygen publishing analytics emv | Set the workspace CPM used for earned-media value, per channel. EMV stays null on any channel whose provider does not expose impressions. | |
oxygen publishing analytics post | One post's stored daily metric series, totals, and earned-media value. | |
oxygen publishing analytics summary | Workspace LinkedIn or X analytics. | |
oxygen publishing comments approve | Post one exact previewed reply publicly. A REAL LinkedIn write; refused without --approved and the preview's content hash. | paid writes |
oxygen publishing comments get | Get one stored public comment with its provider thread and immutable reply-action history. Read-only: no provider call, 0 credits. | |
oxygen publishing comments list | List the Publishing Community work queue, oldest first, with polling freshness/backoff even when empty. | |
oxygen publishing comments reply | Preview an exact public reply and return its action_id + content_hash. Makes no provider call, posts nothing, and uses 0 credits. | writes |
oxygen publishing comments resolve | Resolve, ignore, mark spam, or reopen one local public-comment work item. No provider write, 0 credits. | writes |
oxygen publishing comments update | Save local draft, notes, assignment, or triage state. Nothing is posted publicly and no credits are used. | writes |
oxygen publishing drafts accept | Accept a draft variant into the publish queue. The post is created needs-approval — approve it separately before it can publish. | writes |
oxygen publishing drafts edit | Rewrite one variant's text. The first edit snapshots the AI's original copy, so accepting it teaches the Knowledge Graph what you changed. | writes |
oxygen publishing drafts list | List post drafts. Defaults to the open queue (queued + edited). | |
oxygen publishing drafts reject | Reject a draft. The reason is filed to the Knowledge Graph so the next drafts learn from it. | writes |
oxygen publishing ideas add | File an idea into the backlog. Free — no AI call, nothing scheduled. Turn one into a post later with publishing drafts accept --publish-at. | writes |
oxygen publishing ideas list | List the idea backlog. | |
oxygen publishing import | Bulk-load scheduled posts from a .csv or .json file. | paid writes |
oxygen publishing media upload-url | Create a Publishing media asset and presigned upload URL with required upload headers. | writes |
oxygen publishing media uploaded | Verify an uploaded Publishing media object and mark the media asset uploaded. | |
oxygen publishing mentions resolve | Resolve @handles, LinkedIn profile/company links, provider ids, and URNs — through a connected sender (notify=false, free) or the managed scraper (--source scraper, paid, no sender/window needed). | paid writes |
oxygen publishing posts approve | Approve a scheduled post so the worker can publish it when due. LinkedIn approval resolves every inline @<public-identifier> and blocks with inspectable details if any mention cannot be verified. | writes |
oxygen publishing posts boost | Boost ONE post: your teammates' connected accounts react to and comment on it, once. | paid |
oxygen publishing posts cancel | Cancel a draft, scheduled, queued, or failed post. | writes |
oxygen publishing posts create | Create a scheduled post. Publishing requires approval before the worker can send. | paid writes |
oxygen publishing posts delete | Delete a never-attempted post from the queue (draft, scheduled, or queued with no publish attempts). | writes |
oxygen publishing posts draft | Draft posts with AI, grounded in the workspace Knowledge Graph. | paid writes |
oxygen publishing posts get | Get one scheduled post with resolved media previews and attempt history. | |
oxygen publishing posts list | List scheduled posts. | |
oxygen publishing posts note | Leave an internal review note on a post, or reply to one with --parent. Never published. | writes |
oxygen publishing posts notes | List the internal review notes on a post. Notes are workspace-only — they are never published. | |
oxygen publishing posts resolve-note | Mark a review note handled. | writes |
oxygen publishing posts restore | Roll a post's TEXT back to an earlier revision (see publishing posts revisions). | writes |
oxygen publishing posts retry | Move a failed post back to scheduled for another worker attempt. | writes |
oxygen publishing posts review | Pre-publish review of a post: deterministic channel lint (free, and blocking at approve) plus an AI voice/claims check against the Knowledge Graph. | paid |
oxygen publishing posts revisions | List a post's content history: every revision with its number, title, text, author, and time. | |
oxygen publishing posts uncancel | Reopen a canceled post as an unapproved draft, keeping its publish time and its attempt history. | |
oxygen publishing posts update | Update an editable draft, scheduled, or failed post. | writes |
oxygen publishing tags set | Add and/or remove workspace tags on a post. | writes |
recipes
| Command | What it does | Notes |
|---|---|---|
oxygen recipes install | Install a recipe into the workspace wiki as a playbook page (revisioned, retrieval-grounded, with per-version provenance). | |
oxygen recipes list | List recipes, optionally filtered by text, business-case category, journey stage, or audience. | |
oxygen recipes show | Show one recipe: the full playbook body plus prerequisites, credits, and approval gates. |
reviews
| Command | What it does | Notes |
|---|---|---|
oxygen reviews accept | Accept a pending message review. | writes |
oxygen reviews list | List message reviews. | |
oxygen reviews next | Read the oldest pending review. | |
oxygen reviews reject | Reject a pending message review with optional highlights and auto-rerun. | writes |
rows
| Command | What it does | Notes |
|---|---|---|
oxygen rows history | Show row change history. | writes |
runs
| Command | What it does | Notes |
|---|---|---|
oxygen runs get | Get one run with events. | |
oxygen runs list | List recent tenant runs. |
search
| Command | What it does | Notes |
|---|---|---|
oxygen search plan | Plan an Oxygen search or scrape route before running provider jobs. | |
oxygen search run | Preview or enqueue a durable table-backed search/scrape job from a search plan. | paid writes |
oxygen search runs cancel | Request cancellation for a queued or running search/scrape run. | writes |
oxygen search runs get | Get one durable search/scrape run. | |
oxygen search runs items | List search/scrape run items. | |
oxygen search runs retry-failed | Requeue failed search/scrape run items. | writes |
oxygen search runs wait | Poll a durable search/scrape run until it finishes. |
senders
| Command | What it does | Notes |
|---|---|---|
oxygen senders checkpoint resend | Ask LinkedIn to resend the checkpoint code so you can read a fresh one, then submit it with senders checkpoint solve. <id> accepts a sender account id, connection id, or Unipile account id. | writes |
oxygen senders checkpoint solve | Submit the LinkedIn checkpoint code Unipile is waiting on to finish authentication. <id> accepts a sender account id, connection id, or Unipile account id; <code> is the verification code LinkedIn… | writes |
oxygen senders checkpoints | List LinkedIn senders stuck on a security checkpoint (2FA / OTP / in-app validation), each with status, warm-up day, today's usage vs. caps, and the latest error — plus a fleet tally of every… | |
oxygen senders connect | Get a Unipile hosted-auth URL to connect a new LinkedIn account (or reconnect with --reconnect). | writes |
oxygen senders disconnect | Disconnect a LinkedIn sender account so it stops sending. <id> accepts a sender account id, connection id, or Unipile account id. | writes |
oxygen senders get | Get one LinkedIn sender account with status, limits, daily-reset timezone, and usage. <id> accepts a sender account id, connection id, or Unipile account id. | |
oxygen senders health | Show a one-call health snapshot for a LinkedIn sender: status, the latest error reason, any open security checkpoint, today's usage, the warm-up ramp, and when the daily quota resets. | |
oxygen senders inbox-scope get | Show whether a sender syncs only OXYGEN-started conversations or its entire LinkedIn inbox. | |
oxygen senders inbox-scope set | Set LinkedIn inbox privacy. oxygen_initiated hides and stops ingesting unrelated chats; all opts into the full inbox. | writes |
oxygen senders inmail-balance | Show remaining LinkedIn InMail credits for a sender (Premium / Sales Navigator / Recruiter each hold a separate pool). | |
oxygen senders limits get | Show current limits, overrides, daily-reset timezone, defaults, and safe maximums for an account. <id> accepts a sender account id, connection id, or Unipile account id. | |
oxygen senders limits set | Adjust per-account daily action limits and the daily-reset timezone. | writes |
oxygen senders list | List connected LinkedIn sender accounts with health status, rate limits, and today's usage. | |
oxygen senders profiles attach | Attach senders and/or inboxes to a profile. An account belongs to one profile at a time — attaching moves it. | writes |
oxygen senders profiles create | Create a sender profile. --from-linkedin seeds the name + avatar from a LinkedIn account and attaches it (the person's identity); then assign inboxes and WhatsApp with --mailboxes / --senders. | writes |
oxygen senders profiles delete | Delete a sender profile. Its accounts detach (return to the pool); they are never deleted. | writes |
oxygen senders profiles detach | Detach senders and/or inboxes from a profile, returning them to the unassigned pool. | |
oxygen senders profiles get | Get one sender profile with the LinkedIn/WhatsApp senders and inboxes attached to it. | |
oxygen senders profiles list | List sender profiles with their per-channel account counts (LinkedIn / WhatsApp / inboxes). | |
oxygen senders profiles tag | Replace a sender profile's workspace tags (whole set; --tags "" clears) — one edit pools the whole sending identity behind a campaign tag. | writes |
oxygen senders profiles update | Update a sender profile's own fields (name, avatar, status). Use attach/detach to change its accounts. | writes |
oxygen senders sync | Refresh LinkedIn account state (status, profile) from Unipile. Pass --connection-id to sync one account, or omit it to sync all. | writes |
oxygen senders tag | Replace a sender account's workspace tags (whole set; --tags "" clears) — e.g. pool the senders behind one campaign tag. See oxygen tags list for the vocabulary. | writes |
sequences
| Command | What it does | Notes |
|---|---|---|
oxygen sequences analytics | Show organization-level sequencer analytics, per-sequence funnels, and native email attribution under analytics.emailAttribution: byMailbox, byDomain, and explicit unattributed facts. | |
oxygen sequences archive | Archive a sequence (terminal; cannot be reactivated). | writes |
oxygen sequences create | Create a draft multichannel sequence from a steps JSON file. | paid writes |
oxygen sequences delete | Permanently delete a sequence and everything it owns (enrollments, actions, sender links, schedules) — not a reversible archive. | paid writes |
oxygen sequences draft | Draft an email outreach sequence with AI, grounded in the workspace Knowledge Graph (voice, positioning, campaign learnings) — Instantly's AI sequence generator, with provenance. | paid writes |
oxygen sequences duplicate | Duplicate a sequence as a new DRAFT: copies the step definition, settings, channels, source table, and sender pool. | writes |
oxygen sequences enroll | Enroll leads into a sequence. | writes |
oxygen sequences enrollments | List per-lead enrollment state plus the latest action status, error, attempts, and retry time. | |
oxygen sequences esp | ESP breakdown of this sequence's email sending scope: which provider each enrolled lead's mail routes through (google/microsoft, plus named gateways like Proofpoint/Mimecast and non-matchable… | |
oxygen sequences events | Chronological activity feed for a sequence (like Instantly's Sending Activities): sends, failures, deferrals, opens, clicks, replies, bounces, unsubscribes, and positive reply-status transitions… | |
oxygen sequences get | Get a sequence's definition, senders, status, and credit usage. | |
oxygen sequences hubspot-list-import configure | Preview or start a scheduled HubSpot-list import. Preview first; then pass its reviewed fingerprint with --live --approved. The complete DNC list is applied before leads are read or enrolled. | paid writes |
oxygen sequences hubspot-list-import lists | List saved HubSpot contact/company segments and readable identity fields available for a Sequence import. | |
oxygen sequences hubspot-sync configure | Preview or save the workspace-wide HubSpot projection. Existing fields need no new grant; creating missing properties requires --approved and HubSpot property-creation access. | paid writes |
oxygen sequences hubspot-sync show | Show the connected portal, live contact schema, activity/status configuration, component health, and enabled state. | |
oxygen sequences list | List sequences with status, channels, tags, and credit usage. --stats joins each row's LIFETIME funnel (enrolled, sent, replies, reply rate, email opens/clicks, opportunities) — the same shape… | |
oxygen sequences pause | Pause an active sequence (stops new dispatches; enrollments resume on un-pause). | writes |
oxygen sequences reconcile | Safely reconcile one ambiguous LinkedIn invite/message from provider reads. Preview-only unless --approved; never resends. | paid writes |
oxygen sequences resume | Resume a paused sequence. | writes |
oxygen sequences retry-deferred | Preview or re-ready pending outside-working-hours actions on a PAUSED sequence. | paid writes |
oxygen sequences send | Initiate one net-new LinkedIn message through a one-recipient, one-step hosted Sequence. | paid writes |
oxygen sequences signal | Record an external GTM signal (e.g. linkedin_connected, email_replied, company_raised_funds, job_change, web_visit, intent) onto a running sequence's enrollment(s) to drive signal-triggered… | |
oxygen sequences start | Preview or start a sequence. | paid writes |
oxygen sequences stats | Show the sequence funnel: enrolled, invites sent, connected, replied, with acceptance and reply rates. | |
oxygen sequences update | Update a sequence. | paid writes |
oxygen sequences variants | A/B scoreboard for one sequence: per-step/per-variant results plus native email by_mailbox, by_domain, reply types, rates, and explicit unattributed facts. | |
oxygen sequences workflows configure | Preview or maintain an existing legacy preset. | paid writes |
oxygen sequences workflows list | List the two legacy sequencer presets with armed state, editable config, and ordinary workflow deep-links. |
session
| Command | What it does | Notes |
|---|---|---|
oxygen session output | Register a local session output file or table. | |
oxygen session start | Start a local Oxygen agent session or update a step. | writes |
oxygen session status | Attach a live status message to the current local session. | |
oxygen session usage | Summarize the current local session. Org credit usage is available through billing usage. |
signals
| Command | What it does | Notes |
|---|---|---|
oxygen signals leads-today | List people to contact today, ranked by their most recent GTM intent signal. Do-not-contact filtering is best-effort (email-only leads surface unchecked). | |
oxygen signals list | List the raw GTM signal-event feed newest-first (website_visit / profile_view / post_reaction / new_follower), each resolved onto the person it attached to. Read-only. | |
oxygen signals record | Record one inbound GTM signal (website_visit, profile_view, post_engager, new_follower). Internal write — free, no approval. Idempotent on --external-event-id. | writes |
oxygen signals registry | Show the signal-type registry: each registered type with its intent weight and capture status (all four registered types are live end-to-end — website_visit via the RB2B webhook, the engagement… | |
oxygen signals search plan | Compile a signal-sourcing request into ordered provider routes without provider calls: the chain, per-route applied/dropped filters, credit estimate, table blueprint, and whether the route can be… | |
oxygen signals search run | Return a dry-run request or queue a live signal-search ingestion run. | paid writes |
signup-leads
| Command | What it does | Notes |
|---|---|---|
oxygen signup-leads deliveries get | Get one signup lead webhook delivery by delivery id or event id. | |
oxygen signup-leads deliveries list | List signup lead webhook deliveries for the current organization. | |
oxygen signup-leads deliveries retry | Retry one failed signup lead webhook delivery. | writes |
skills
| Command | What it does | Notes |
|---|---|---|
oxygen skills doctor | Check Oxygen skill index reachability and local installer prerequisites. | |
oxygen skills get | Hydrate one exact Oxygen skill entrypoint and its document index. | |
oxygen skills install | Install Oxygen agent skills into local agent skill directories only; uses 0 credits and does not change the Oxygen workspace or call a provider. | |
oxygen skills list | List Oxygen agent skills available from the hosted skill index. | |
oxygen skills search | Find a bounded set of Oxygen skills and matching documents from an outcome. |
sourcing
| Command | What it does | Notes |
|---|---|---|
oxygen sourcing plan | Classify a sourcing request and recommend provider routes without executing paid tools. |
status
| Command | What it does | Notes |
|---|---|---|
oxygen status | Compare the local Oxygen CLI version against the active profile's deployed Oxygen API. |
support
| Command | What it does | Notes |
|---|---|---|
oxygen support ack | Legacy command; Plain owns delivery and read state. | writes deprecated hidden |
oxygen support admin events | Read-only poll of legacy OXYGEN archive events for cutover compatibility; never use it as the live queue (staff only). | staff |
oxygen support admin file | Retired legacy write; always returns the Plain-cutover error (staff only). | writes staff deprecated |
oxygen support admin get | Show one legacy archived ticket snapshot; Plain is authoritative for live cases (staff only). | staff |
oxygen support admin list | Read the legacy OXYGEN ticket archive across organizations; Plain is the live queue (staff only). | staff |
oxygen support admin reply | Retired legacy write; always returns the Plain-cutover error. | writes deprecated |
oxygen support admin resolve | Retired legacy write; always returns the Plain-cutover error (staff only). | writes staff deprecated |
oxygen support admin update | Retired legacy write; Plain owns status, assignee, and notes (staff only). | writes staff deprecated |
oxygen support admin workflow | Retired legacy write; Plain notes and downstream engineering work own triage (staff only). | staff deprecated |
oxygen support file | Create a real, zero-credit Plain support Thread immediately. | writes |
oxygen support get | Show one Plain support Thread and its customer-visible timeline. | |
oxygen support list | List Plain support Threads for the active organization. | |
oxygen support reply | Reply to a Plain Chat thread; migrated or native-channel history continues in one linked Chat thread. | writes |
suppressions
| Command | What it does | Notes |
|---|---|---|
oxygen suppressions add | Add (or refresh) a lead provider id on the org do-not-contact list so the sequencer never enrolls them again. Idempotent. --reason defaults to manual. | writes |
oxygen suppressions addresses | List the org's blocked email ADDRESSES, newest first (bounces, unsubscribes, and suppressions import land here). | |
oxygen suppressions companies | List explicit company-domain and LinkedIn-company suppressions. These stop every Sequence channel. | |
oxygen suppressions domains | List the org's whole-domain email blocks, newest first. Filter by --reason (manual | complaint | policy) or --search (case-insensitive substring of the domain). | |
oxygen suppressions hubspot lists | List contact/company saved lists and readable identity properties. Reads definitions only; no memberships or writes. | |
oxygen suppressions hubspot sync | Preview or arm additive HubSpot → DNC sync. Requires at least one contact/company list. Live requires the exact dry-run fingerprint and approval; never enrolls or sends. | paid writes |
oxygen suppressions import | Bulk-import a do-not-contact blocklist from a file (newline / comma / whitespace separated, max 5000). | writes |
oxygen suppressions import-identities | Import a source-neutral typed JSON array into DNC. | writes |
oxygen suppressions list | List the org's do-not-contact suppressions, newest first. Filter by --reason or by --search (case-insensitive substring of the lead provider id). | |
oxygen suppressions phones | List phone suppressions (strict E.164) used by call, WhatsApp, and Sequence safety gates. | |
oxygen suppressions remove | Remove a lead provider id from the org do-not-contact list (re-enable contact). | writes |
oxygen suppressions remove-address | Remove one blocked email ADDRESS from the do-not-contact ledger (re-enables sending to it). | writes |
oxygen suppressions remove-company | Deliberately remove one explicit company suppression. | writes |
oxygen suppressions remove-domain | Remove a whole-domain email block (re-enable sending to the domain). | writes |
oxygen suppressions remove-phone | Deliberately remove one strict E.164 phone suppression. | writes |
table-ingestions
| Command | What it does | Notes |
|---|---|---|
oxygen table-ingestions cancel | Request cancellation for a durable table ingestion run. | writes |
oxygen table-ingestions create-tool-page | Create a paged tool-source ingestion run for a workspace table. | writes |
oxygen table-ingestions get | Get one durable table ingestion run. | |
oxygen table-ingestions items | List items for a durable table ingestion run. | |
oxygen table-ingestions retry-failed | Requeue failed items for a durable table ingestion run. | writes |
oxygen table-ingestions wait | Poll a durable table ingestion run until it finishes. |
table-runs
| Command | What it does | Notes |
|---|---|---|
oxygen table-runs cancel | Request cancellation for a durable table action run. | writes |
oxygen table-runs create | Create a durable background run for table tool-column actions. | paid writes |
oxygen table-runs get | Get one durable table action run. | |
oxygen table-runs items | List row items for a durable table action run. | |
oxygen table-runs list | List durable table action runs for one table. | |
oxygen table-runs pause | Pause a durable table action run before it starts more row jobs. | writes |
oxygen table-runs provider-summary | Summarize provider attempts, upstream request events, and credit capture/release for a table action run. | |
oxygen table-runs resume | Resume a paused durable table action run. | writes |
oxygen table-runs retry-failed | Requeue failed items for a durable table action run. Items with an unconfirmed external effect stay blocked until their destination is verified and explicitly approved. | paid writes |
oxygen table-runs wait | Poll a durable table action run until it finishes. |
tables
| Command | What it does | Notes |
|---|---|---|
oxygen tables activity | Show background runs active on a workspace table right now, with a worker-queue health rollup. | |
oxygen tables archive | Archive a workspace table without dropping physical data. Hides it indefinitely with no purge timer; for cleanup with a restorable deadline use tables delete. | writes |
oxygen tables auto-dedupe disable | Disable (clear) a table's standing auto-dedupe configuration. | writes |
oxygen tables auto-dedupe get | Show a table's standing auto-dedupe configuration. | |
oxygen tables auto-dedupe set | Enable a standing auto-dedupe: after every write (insert, upsert, import, send, webhook), duplicate groups containing a just-written row are collapsed by the keep policy — losers are DELETED… | writes |
oxygen tables auto-run disable | Disable (clear) a table's standing auto-run configuration. | writes |
oxygen tables auto-run get | Show a table's standing auto-run configuration (columns queued automatically when new rows are written). | |
oxygen tables auto-run set | Enable a standing auto-run: automatically queue the given columns for rows written to this table (imports, inserts, upserts). Default off. | paid writes |
oxygen tables create | Create a real Postgres-backed workspace table. | writes |
oxygen tables dedupe | Collapse duplicate rows by normalized (email/domain/linkedin) or fuzzy-label keys, or cross-check a column against another table. | paid |
oxygen tables delete | Delete workspace tables: archives now and schedules the physical purge (default 14 days; restorable via tables restore until then). --now purges immediately and permanently — it previews and… | writes |
oxygen tables delete-row | Delete one workspace table row. | writes |
oxygen tables delete-rows | Delete multiple workspace table rows. | writes |
oxygen tables describe | Describe a workspace table and its columns. | |
oxygen tables duplicate | Duplicate a workspace table. Copies row values unless --schema-only is set. | writes |
oxygen tables export | Export workspace table rows as JSON, JSONL, CSV, or a human-readable table. | |
oxygen tables export-bundle | Export a workspace table as a portable bundle (schema + every row) for cross-environment / cross-org copies. | |
oxygen tables import | Import JSON, JSONL, CSV, or XLSX rows into a workspace table. | writes |
oxygen tables import-bundle | Recreate a workspace table from an export-bundle file in this org. | writes |
oxygen tables insert | Insert rows into a workspace table. | writes |
oxygen tables link | Link two tables: Oxygen finds the column that joins them, works out the direction, shows you how many rows will match, and on approval links every row. | paid |
oxygen tables list | List workspace tables in the current tenant database. | |
oxygen tables move | Move a workspace table to a different project. | writes |
oxygen tables preview | Preview a workspace table with projected rows and summary stats. | |
oxygen tables promote | Write bound rows' columns onto their matched CRM records (Records<->Tables). | paid |
oxygen tables query | Query a workspace table by id or slug. | |
oxygen tables recover-pending | Re-poll BetterContact async enrichments that timed out mid-poll and write any newly-found phones back to the table. | writes |
oxygen tables relate | Relate two tables: define empty Tables-owned relation columns on the source and target. | |
oxygen tables relations archive | Archive a native relation, its active links, and both relation columns while preserving history. Previews by default. | paid writes |
oxygen tables relations list | List the native relations visible from one table, including cardinality, target, and active link count. | |
oxygen tables relations update | Rename either side of a relation or change its cardinality. Endpoints and slugs stay immutable. Previews by default. | paid writes |
oxygen tables rename | Rename a workspace table display name and slug. | writes |
oxygen tables restore | Restore an archived or delete-scheduled table: cancels the purge timer and reclaims its slug. | writes |
oxygen tables schedule list | List a table's scheduled column refreshes. | |
oxygen tables schedule remove | Remove a column's scheduled refresh (deletes the backing cron workflow; future scheduled runs stop). | writes |
oxygen tables schedule set | Create or replace a column's scheduled refresh (a cron-triggered hosted workflow; visible via oxygen workflows list). | paid writes |
oxygen tables send | Copy rows from one table into another as a durable background run (free, resumable). | writes |
oxygen tables tag | Replace a table's workspace tags (Tags primitive; "" clears). Tags link the table to sequences, wiki pages, and workflows carrying the same tag — browse with oxygen tags get <tag>. | writes |
oxygen tables tidy-suggest | Read-only tidy analysis for a workspace table: duplicate columns, formatting issues, hide candidates, and value-sanity findings. | |
oxygen tables unlink | Unlink one exact pair of rows by archiving their relation edge. The relation definition and both rows remain. Previews by default. | paid |
oxygen tables update | Update one workspace table row. | writes |
oxygen tables upsert | Insert or update rows in a workspace table by a column key. | writes |
oxygen tables views create | Create a saved view. | writes |
oxygen tables views delete | Delete a saved view by id. | writes |
oxygen tables views get | Get one saved view by id. | |
oxygen tables views list | List a table's saved views. | |
oxygen tables views update | Update a saved view. | writes |
oxygen tables webhook create | Create a direct webhook endpoint that writes inbound JSON into a table (600 requests/60s per endpoint and sender IP; 429 returns Retry-After). | writes |
oxygen tables webhook deliveries | List direct table webhook deliveries and auto-run enqueue status. | |
oxygen tables webhook get | Get one direct table webhook by endpoint id. | |
oxygen tables webhook list | List direct table webhooks. | |
oxygen tables webhook update | Update a direct table webhook endpoint. | writes |
tags
| Command | What it does | Notes |
|---|---|---|
oxygen tags create | Declare a tag before anything carries it, with an optional description, color, and pin. Idempotent: run it on a tag already in use to annotate it — carriers are never touched. | writes |
oxygen tags delete | Delete one or more tags: strips them from EVERY carrier (archived and finished items included) and removes their declaration. | writes |
oxygen tags get | Everything carrying one tag — publishing posts, knowledge pages, sequences, tables, workflows, recipes, inbox conversations, CRM records, mailboxes, sender accounts, sending domains, projects… | |
oxygen tags list | List every workspace tag with per-primitive counts, most-used first. | |
oxygen tags merge | Merge one or more tags into a single target, EVERYWHERE they appear (archived rows included). | writes |
oxygen tags rename | Rename one tag EVERYWHERE it appears (every primitive, archived rows included). | writes |
oxygen tags update | Change a tag's description, color, or pin. Only the flags you pass change; use the --clear-* flags to remove a value. To change the LABEL use tags rename. | writes |
tools
| Command | What it does | Notes |
|---|---|---|
oxygen tools enums get | Fetch the accepted values for one provider enum catalog. Use this before drafting payloads with enumRef fields. | |
oxygen tools enums list | List enum catalogs for a provider (or all providers). | |
oxygen tools get | Get a tool descriptor. | |
oxygen tools run | Run an executable Oxygen tool through the HTTPS API. | paid writes |
oxygen tools search | Search a bounded, compact provider-operation catalog; hydrate one result with tools get. |
update
| Command | What it does | Notes |
|---|---|---|
oxygen update | Update the Oxygen CLI from npm. | writes |
verify
| Command | What it does | Notes |
|---|---|---|
oxygen verify email | Verify one or more email addresses. | paid |
viewers
| Command | What it does | Notes |
|---|---|---|
oxygen viewers import | Start (or re-arm) a durable profile-viewers (WVMP) import. | writes |
oxygen viewers status | Show durable profile-viewers (WVMP) import progress (per-sender drip status, viewers ingested, last error, the preserved privacy ceiling note) plus a preview of the viewers table and a deep-link… |
voice
| Command | What it does | Notes |
|---|---|---|
oxygen voice numbers list | List the org's phone numbers with warm-up state, daily cap, and what each one costs per month. Optional --tag narrows to one campaign's numbers. | |
oxygen voice numbers release | Give a number back to the carrier and stop its monthly charge. | paid |
oxygen voice numbers tag | Replace a phone number's workspace tags (whole set; --tags "" clears) — e.g. pool the numbers dialing one campaign behind its tag. See oxygen tags list for the vocabulary. | writes |
oxygen voice tasks claim | Take the next due call task, or a specific one with --task. | |
oxygen voice tasks complete | Record the outcome of a claimed call. Lease-guarded: a lease reclaimed mid-call fails with 409 rather than overwriting the new holder's outcome. | |
oxygen voice tasks extend | Renew a claimed task's 15-minute lease. Completing needs a live lease, so a longer call must heartbeat or its outcome and notes are rejected as stale. | |
oxygen voice tasks list | List the call queue, best-first (highest priority, then earliest due). Defaults to every status; filter with --status. | |
oxygen voice tasks override | Waive a guardrail for ONE lead — the exception path for a prospect who asked to be called outside their window, or one whose timezone you know you do not have. | |
oxygen voice tasks queue | Put a lead INTO the call queue. | |
oxygen voice tasks skip | Drop a task out of the queue without dialing (bad data, a rep pass, a guardrail block). Needs no lease — the guardrail gate skips tasks it never claimed. |
| Command | What it does | Notes |
|---|---|---|
oxygen whatsapp accounts | List connected WhatsApp accounts with health status, warm-up ramp state, limits, and today's usage. | |
oxygen whatsapp chat-action | Act on one WhatsApp chat: read/mute/archive/pin state, labels, group membership, or the group invite link. | paid writes |
oxygen whatsapp connect | Get a Unipile hosted-auth URL to connect a new WhatsApp account by scanning a QR in WhatsApp → Linked Devices (or reconnect with --reconnect). Newly connected accounts start a mandatory warm-up ramp. | writes |
oxygen whatsapp disconnect | Disconnect a WhatsApp account so it stops sending. <id> accepts an account id, connection id, or Unipile account id. | writes |
oxygen whatsapp forward | Forward an existing WhatsApp message into another chat. This delivers a new message, so it spends send budget and is approval-gated: omit --approved for a preview. | paid writes |
oxygen whatsapp get | Get one WhatsApp account with limits, warm-up ramp state (account age + today's effective send floor), daily-reset timezone, and usage. <id> accepts an account id, connection id, or Unipile… | |
oxygen whatsapp history | Backfill one WhatsApp conversation's full message history. | writes |
oxygen whatsapp limits get | Show current WhatsApp limits, the warm-up ramp state, daily-reset timezone, defaults, and safe maximums. <id> accepts an account id, connection id, or Unipile account id. | |
oxygen whatsapp limits set | Adjust per-account WhatsApp daily limits and the daily-reset timezone. | writes |
oxygen whatsapp profile edit | Edit the connected number's WhatsApp profile. Every contact who has the number sees the change, so this is approval-gated: omit --approved for a preview. | paid writes |
oxygen whatsapp profile show | Show the connected number's WhatsApp profile. | |
oxygen whatsapp sync | Refresh WhatsApp account state (status) from Unipile. Pass --connection-id to sync one account, or omit to sync all. | writes |
oxygen whatsapp warm-send | Send ONE warm WhatsApp message into an EXISTING conversation (warm-only; a cold phone number with no prior conversation is rejected). | paid writes |
whoami
| Command | What it does | Notes |
|---|---|---|
oxygen whoami | Show the current Oxygen CLI identity. |
worker
| Command | What it does | Notes |
|---|---|---|
oxygen worker failures | List failed background action and ingestion items. | |
oxygen worker queue-stats | Show background action and ingestion queue health. | |
oxygen worker repair | Repair stale background action, ingestion, and workflow queue state. | |
oxygen worker run-once | Compatibility alias for worker repair; repairs Postgres-backed worker state for the current organization. | writes alias |
workflows
| Command | What it does | Notes |
|---|---|---|
oxygen workflows apply | Compile and publish a workflow definition. Apply costs 0 credits, calls no graph nodes, creates no run, and preserves disabled status; call or enable separately to execute. | paid writes |
oxygen workflows approvals | List workflow runs awaiting a human approval decision (the mid-run approval inbox). | |
oxygen workflows call | Enqueue a workflow run asynchronously through its API trigger. Follow the returned run_id with oxygen workflows tail <run_id>. | paid writes |
oxygen workflows cancel | Cancel a queued or running workflow run. | writes |
oxygen workflows delete | Preview or permanently delete one or more workflow automations. | writes |
oxygen workflows disable | Disable one or more workflow automations and their current triggers. | writes |
oxygen workflows duplicate | Duplicate a workflow automation as a disabled copy by default. | writes |
oxygen workflows enable | Enable one or more workflow automations and their current triggers. | paid writes |
oxygen workflows events emit | Emit a normalized workflow event and enqueue matching event-triggered workflows. | paid writes |
oxygen workflows events get | Get one curated workspace-event preset and its ready-to-copy trigger object. | |
oxygen workflows events list | Search and filter every app-native and connected event this workspace can use as a workflow trigger. | |
oxygen workflows export | Export one graph-native workflow as a portable, editable definition with source account ids and trigger authority removed. | |
oxygen workflows failures | List failed workflow runs and trigger scheduler failures. | |
oxygen workflows get | Get one workflow automation. | |
oxygen workflows import | Preflight or install a portable workflow definition. Imports are create-only and always disabled. | writes |
oxygen workflows init | Create a local editable workflow graph. Use --format recipe only for the legacy durable-recipe authoring path. | |
oxygen workflows lint | Compile and lint a workflow file without saving it. | |
oxygen workflows list | List workflow automations. | |
oxygen workflows mcp disable | Unpublish a workflow's MCP tool. The workflow stays active and callable via oxygen workflows call. | writes |
oxygen workflows mcp enable | Publish an active workflow as a callable MCP tool so any MCP client can run it. The published tool appears to MCP clients as oxygen_workflow_<slug>. | writes |
oxygen workflows mcp list | List workflows currently published as MCP tools. | |
oxygen workflows rename | Rename a workflow automation's display name only — its id and slug are unchanged, and the next workflows apply from source overwrites the name. | writes |
oxygen workflows resume | Approve or reject a paused mid-run workflow approval, resuming the run. | writes |
oxygen workflows retry | Preview retrying a failed run from its first failed step. Completed steps stay preserved; ambiguous external writes are refused. | paid writes |
oxygen workflows revisions | Published version history for one workflow, newest first — every save cuts a revision, and this is how you find the one to go back to. | |
oxygen workflows revisions restore | Re-publish an earlier version as the newest one. | paid writes |
oxygen workflows run | Get one workflow run, including waiting and awaiting_approval pause state. | writes |
oxygen workflows runs | List workflow runs. | |
oxygen workflows schema | Print workflow JSON schemas. | |
oxygen workflows tag | Replace a workflow's workspace tags (Tags primitive; "" clears). | writes |
oxygen workflows tail | Poll until a workflow finishes or parks in waiting/awaiting_approval; clock waits resume automatically. | |
oxygen workflows templates apply | Deprecated alias for oxygen blueprints apply. Creates a disabled workflow (plus its tables, columns, and prompts) from a blueprint. | paid writes deprecated |
oxygen workflows templates describe | Deprecated alias for oxygen blueprints describe. | deprecated |
oxygen workflows templates preflight | Deprecated alias for oxygen blueprints preflight. Validates inputs and previews effects without running. | paid deprecated |
oxygen workflows templates run | Removed: returns a typed 410 deprecation. Use oxygen blueprints apply <slug> then oxygen workflows call <workflow>. | paid writes deprecated |
oxygen workflows templates search | Deprecated alias for oxygen blueprints list. Searches Oxygen blueprints (seed templates plus saved blueprints). | deprecated |
oxygen workflows webhooks deliveries | List workflow webhook deliveries: what arrived, whether it verified, and the run it started. |