@oxygen-agent/cli 1.836.1 → 1.836.4

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
@@ -34,4 +34,4 @@ oxygen update
34
34
 
35
35
  For product documentation, visit https://oxygen-agent.com/docs. For support, visit https://oxygen-agent.com.
36
36
 
37
- Version: 1.836.1
37
+ Version: 1.836.4
package/dist/index.js CHANGED
@@ -2929,6 +2929,33 @@ export function createProgram() {
2929
2929
  method: "POST",
2930
2930
  body: { action: "claim", as_machine_user: options.agent === true },
2931
2931
  }));
2932
+ }))
2933
+ .addCommand(new Command("start")
2934
+ .description("Set a live Plain Thread to Plain TODO with the In progress detail when OXYGEN work remains after a reply, preserving its assignee (staff only).")
2935
+ .argument("<ticketId>", "Plain Thread ID (th_...).")
2936
+ .requiredOption("--agent", "Required safety declaration: reconcile this Thread's status as the Oxygen Support machine user.")
2937
+ .requiredOption("--confirm-message <messageId>", "Apply only while this is still the exact latest customer-visible conversation-head message ID. From support admin get --json, use the id of the data.messages[] entry with the greatest created_at.")
2938
+ .option("--json", "Print a JSON envelope.")
2939
+ .addHelpText("after", `
2940
+ Safety: 0 credits, but this is a real Plain queue write. It preserves the current assignee and changes only the lifecycle to plain_status TODO with plain_status_detail ThreadStatusDetailInProgress (projected as ticket.status triaging).
2941
+
2942
+ Safe sequence:
2943
+ oxygen support admin get <thread-id> --json
2944
+ # Select the data.messages[] entry with the greatest created_at and copy its id.
2945
+ oxygen support admin start <thread-id> --agent --confirm-message <latest-message-id> --json
2946
+ oxygen support admin get <thread-id> --json
2947
+
2948
+ The final readback must show ticket.status triaging, plain_status TODO, the In progress detail, the same conversation head, and an unchanged assignee.
2949
+ `)
2950
+ .action(async (ticketId, options) => {
2951
+ await handleAsyncAction("support admin start", options, () => requestOxygen(`/api/cli/admin/support/tickets/${encodeURIComponent(ticketId)}/update`, {
2952
+ method: "POST",
2953
+ body: {
2954
+ action: "start",
2955
+ as_agent: true,
2956
+ confirm_message_id: readOption(options.confirmMessage),
2957
+ },
2958
+ }));
2932
2959
  }))
2933
2960
  .addCommand(new Command("priority")
2934
2961
  .description("Set the native Plain priority for a live Thread (staff only).")
@@ -1,4 +1,4 @@
1
- export declare const OXYGEN_VERSION = "1.836.1";
1
+ export declare const OXYGEN_VERSION = "1.836.4";
2
2
  export declare const OXYGEN_MINIMUM_CLI_VERSION = "1.181.0";
3
3
  export declare const MANAGED_INBOX_MINIMUM_CLI_VERSION = "1.326.2";
4
4
  export declare const SUPPORT_AGENT_REPLY_MINIMUM_CLI_VERSION = "1.747.0";
@@ -1,4 +1,4 @@
1
- export const OXYGEN_VERSION = "1.836.1";
1
+ export const OXYGEN_VERSION = "1.836.4";
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:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxygen-agent/cli",
3
- "version": "1.836.1",
3
+ "version": "1.836.4",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",