@oxygen-agent/cli 1.696.2 → 1.700.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -12766,7 +12766,7 @@ fixed scan; watermark_cursor starts a later bounded replay. Consumers must retai
|
|
|
12766
12766
|
program.addCommand(new Command("mailboxes")
|
|
12767
12767
|
.description("Native email sending pool: register/refresh Google/Microsoft mailboxes (including secure local credential-file transfer), pause/disable inboxes, connect EmailGuard monitoring, and inspect/control managed SendKit warmup. Fresh managed InboxKit Google/Microsoft/Azure orders activate exact native Sequencer exports automatically after provisioning under their approved default-on add-on. Standalone warmup plans and credit caps are for BYOK/imported mailboxes, managed opt-outs, or later separate enrollment. SendKit warms them but never owns campaign dispatch. Safe import preflight: run `oxygen mailboxes compatibility --catalog-only --json`, then `oxygen mailboxes import --file <path> --validate-only --json` (add the credential source flags shown by import help when the file contains credentials).")
|
|
12768
12768
|
.addCommand(new Command("list")
|
|
12769
|
-
.description("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).")
|
|
12769
|
+
.description("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). To see only Google/Microsoft mailboxes that still need OAuth connection and the right remedy for each, use `oxygen mailboxes oauth-health --json`.")
|
|
12770
12770
|
.option("--status <status>", "Filter by status: active, paused, or disabled.")
|
|
12771
12771
|
.option("--tag <tags>", "Comma-separated workspace tags — matches mailboxes carrying ANY of these tags (see `oxygen tags list`).")
|
|
12772
12772
|
.option("--json", "Print a JSON envelope.")
|
|
@@ -13059,7 +13059,7 @@ fixed scan; watermark_cursor starts a later bounded replay. Consumers must retai
|
|
|
13059
13059
|
});
|
|
13060
13060
|
}))
|
|
13061
13061
|
.addCommand(new Command("connect-oauth")
|
|
13062
|
-
.description("Connect Google/Microsoft mailboxes to OXYGEN native send with fresh destination-bound OAuth. Preview by default; pass --approved only after reviewing exact candidates. --vendor oxygen handles imported, external, or manual mailboxes: it requires an exact address list (max 10 per command; no domain or directory discovery), returns one OXYGEN browser link per candidate, and stores a grant only after that exact mailbox completes provider
|
|
13062
|
+
.description("Connect Google/Microsoft mailboxes to OXYGEN native send with fresh destination-bound OAuth. Preview by default; pass --approved only after reviewing exact candidates. --vendor oxygen handles imported, external, or manual mailboxes: it requires an exact address list (max 10 per reviewed command; no domain or directory discovery), returns one OXYGEN browser link per candidate, and stores a grant only after that exact mailbox completes provider sign-in/MFA. Microsoft also returns one tenant-admin fallback per resolved Entra tenant: try exact-account links first, and use setup only if Microsoft requests admin approval. Tenant approval covers app permissions but never imports or authorizes the directory. The 10-address boundary limits one human consent run, not the mailbox pool. Source tokens, passwords, authenticator seeds, and one-time codes never transfer. --vendor zapmail (default) hands a provisioned pool to Zapmail Custom OAuth; --vendor inboxkit requests domain-gated consent with one canary on unproven domains and a 10-write live cap. All paths cost 0 Oxygen credits. Poll --status <id>; connected means an encrypted refresh token actually landed, never merely that a request was accepted.")
|
|
13063
13063
|
.option("--provider <provider>", "Mailbox provider to provision: google or microsoft.")
|
|
13064
13064
|
.option("--vendor <vendor>", "Authorization path: oxygen for imported/manual mailboxes, zapmail (default), or inboxkit.")
|
|
13065
13065
|
.option("--mailboxes <list>", "Comma-separated mailbox addresses. Required for vendor=oxygen (max 10); omit for vendor-provisioned whole-pool flows.")
|
|
@@ -13112,7 +13112,7 @@ fixed scan; watermark_cursor starts a later bounded replay. Consumers must retai
|
|
|
13112
13112
|
});
|
|
13113
13113
|
}))
|
|
13114
13114
|
.addCommand(new Command("oauth-health")
|
|
13115
|
-
.description("Show every Google/Microsoft inbox with neither a per-mailbox OAuth token nor covered Google delegation. Remedies are connect_oauth for Zapmail, connect_oauth_inboxkit for InboxKit, and connect_oauth_oxygen for imported/manual mailboxes. Zapmail rows include their 3-per-7-day export budget; OXYGEN direct rows require exact browser
|
|
13115
|
+
.description("Show every Google/Microsoft inbox with neither a per-mailbox OAuth token nor covered Google delegation. Remedies are connect_oauth for Zapmail, connect_oauth_inboxkit for InboxKit, and connect_oauth_oxygen for imported/manual mailboxes. Zapmail rows include their 3-per-7-day export budget; OXYGEN direct rows require exact browser authorization and may invoke provider MFA. For Microsoft, the connect-oauth remedy returns a per-tenant admin fallback to use only if exact authorization asks for approval. Read-only — 0 Oxygen credits.")
|
|
13116
13116
|
.option("--json", "Print a JSON envelope.")
|
|
13117
13117
|
.action(async (options) => {
|
|
13118
13118
|
await handleAsyncAction("mailboxes oauth-health", options, () => requestOxygen("/api/cli/mailboxes/oauth-health"));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const MICROSOFT_LOGIN_HOST = "login.microsoftonline.com";
|
|
2
|
-
const ADMIN_CONSENT_PATH = /^\/(?:[^/]+\/)?adminconsent\/?$/i;
|
|
2
|
+
const ADMIN_CONSENT_PATH = /^\/(?:[^/]+\/)?(?:v2\.0\/)?adminconsent\/?$/i;
|
|
3
3
|
/**
|
|
4
4
|
* Normalize a Microsoft Entra admin-consent URL for an operator handoff.
|
|
5
5
|
*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const OXYGEN_VERSION = "1.
|
|
1
|
+
export const OXYGEN_VERSION = "1.700.10";
|
|
2
2
|
// The GLOBAL CLI compatibility floor: the oldest CLI allowed to call any
|
|
3
3
|
// operational route. Raising it hard-rejects every older CLI from the entire
|
|
4
4
|
// product, so it obeys one law, enforced by scripts/ci/cli-min-version-gate.mjs:
|