replicas-cli 0.2.330 → 0.2.331
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/dist/index.mjs +14 -6
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -9537,7 +9537,7 @@ var HOOK_EXEC_MAX_BUFFER_BYTES = 10 * 1024 * 1024;
|
|
|
9537
9537
|
var REPLICAS_CONFIG_FILENAMES = ["replicas.json", "replicas.yaml", "replicas.yml"];
|
|
9538
9538
|
|
|
9539
9539
|
// ../shared/src/cli-version.ts
|
|
9540
|
-
var CLI_VERSION = "0.2.
|
|
9540
|
+
var CLI_VERSION = "0.2.331";
|
|
9541
9541
|
|
|
9542
9542
|
// ../shared/src/engine/environment.ts
|
|
9543
9543
|
var DESKTOP_NOVNC_PORT = 6080;
|
|
@@ -13563,6 +13563,14 @@ function parseWorkspaceLifecyclePolicyOption(value) {
|
|
|
13563
13563
|
console.log(chalk18.gray(`Valid options: ${VALID_LIFECYCLE_POLICIES.join(", ")}`));
|
|
13564
13564
|
process.exit(1);
|
|
13565
13565
|
}
|
|
13566
|
+
function parseAutomationLifecycleOptions(options) {
|
|
13567
|
+
if (options.sleepWhenDone && options.lifecycle && options.lifecycle !== "sleep_when_done") {
|
|
13568
|
+
console.log(chalk18.red("--sleep-when-done cannot be combined with a different --lifecycle value"));
|
|
13569
|
+
process.exit(1);
|
|
13570
|
+
}
|
|
13571
|
+
if (options.sleepWhenDone) return "sleep_when_done";
|
|
13572
|
+
return parseWorkspaceLifecyclePolicyOption(options.lifecycle);
|
|
13573
|
+
}
|
|
13566
13574
|
function applyAgentSelection(body, existing) {
|
|
13567
13575
|
const result = validateAgentSelection(body, existing);
|
|
13568
13576
|
if (!result.ok) {
|
|
@@ -13852,7 +13860,7 @@ async function promptForTriggers(repositories) {
|
|
|
13852
13860
|
}
|
|
13853
13861
|
async function automationCreateCommand(name, options) {
|
|
13854
13862
|
ensureOrgApiAuthenticated();
|
|
13855
|
-
const lifecyclePolicy =
|
|
13863
|
+
const lifecyclePolicy = parseAutomationLifecycleOptions(options);
|
|
13856
13864
|
if (options.autoStopMinutes && !lifecyclePolicySupportsAutoStop(lifecyclePolicy ?? "default")) {
|
|
13857
13865
|
console.log(chalk18.red("--auto-stop-minutes requires --lifecycle default or delete_after_inactivity"));
|
|
13858
13866
|
process.exit(1);
|
|
@@ -14016,7 +14024,7 @@ Created automation: ${automation2.name}`));
|
|
|
14016
14024
|
}
|
|
14017
14025
|
async function automationEditCommand(id, options) {
|
|
14018
14026
|
ensureOrgApiAuthenticated();
|
|
14019
|
-
const lifecyclePolicy =
|
|
14027
|
+
const lifecyclePolicy = parseAutomationLifecycleOptions(options);
|
|
14020
14028
|
if (options.autoStopMinutes) {
|
|
14021
14029
|
const minutes = parseInt(options.autoStopMinutes, 10);
|
|
14022
14030
|
if (isNaN(minutes) || minutes < 3 || minutes > 1440) {
|
|
@@ -14041,7 +14049,7 @@ async function automationEditCommand(id, options) {
|
|
|
14041
14049
|
model: existing.automation.model
|
|
14042
14050
|
});
|
|
14043
14051
|
const body = {};
|
|
14044
|
-
const hasOptions = options.name || options.prompt || options.enabled !== void 0 || options.prFollowups !== void 0 || options.triggerCron || options.triggerGithub || options.triggerGitlab || options.environment || options.lifecycle || options.autoStopMinutes || options.agentProvider !== void 0 || options.model !== void 0 || options.thinkingLevel !== void 0 || options.planMode !== void 0 || options.goalMode !== void 0 || options.fastMode !== void 0;
|
|
14052
|
+
const hasOptions = options.name || options.prompt || options.enabled !== void 0 || options.prFollowups !== void 0 || options.triggerCron || options.triggerGithub || options.triggerGitlab || options.environment || options.lifecycle || options.sleepWhenDone || options.autoStopMinutes || options.agentProvider !== void 0 || options.model !== void 0 || options.thinkingLevel !== void 0 || options.planMode !== void 0 || options.goalMode !== void 0 || options.fastMode !== void 0;
|
|
14045
14053
|
if (!hasOptions) {
|
|
14046
14054
|
const nameResponse = await prompts4({
|
|
14047
14055
|
type: "text",
|
|
@@ -19996,7 +20004,7 @@ automation.command("get <id>").description("Get automation details by ID").actio
|
|
|
19996
20004
|
process.exit(1);
|
|
19997
20005
|
}
|
|
19998
20006
|
});
|
|
19999
|
-
automation.command("create [name]").description("Create a new automation").option("-p, --prompt <prompt>", "Prompt for the automation").option("-e, --environment <environment>", "Environment name or ID").option("--trigger-cron <schedule>", 'Cron schedule expression (e.g. "0 9 * * 1-5")').option("--trigger-cron-timezone <timezone>", "Timezone for cron trigger (default: UTC)").option("--trigger-github <event>", 'GitHub event (e.g. "pull_request.opened")').option("--trigger-github-repos <repos>", "Comma-separated repo names to filter GitHub trigger").option("--trigger-gitlab <event>", 'GitLab event (e.g. "merge_request.opened")').option("--trigger-gitlab-repos <repos>", "Comma-separated repo names to filter GitLab trigger").option("--lifecycle <policy>", "Workspace lifecycle: archive_when_done, sleep_when_done, delete_after_inactivity, default").option("--auto-stop-minutes <minutes>", "Inactivity timeout in minutes (3-1440, requires --lifecycle default or delete_after_inactivity)").option("--pr-followups", "Allow follow-up actions on matching PRs").option("--agent-provider <provider>", 'Coding agent to use: claude, codex, cursor, relay (or "none" to inherit org default)').option("--model <model>", 'Model identifier (must be valid for --agent-provider; pass "none" to clear)').option("--thinking-level <level>", 'Thinking/reasoning level: low, medium, high, max (or "none" to clear)').option("--plan-mode", "Run automation messages in plan mode").option("--goal-mode", "Set automation messages as Codex goals").option("--fast-mode", "Run automation messages in fast mode").option("--personal", "Create a personal automation owned by the authenticated user").option("--disabled", "Create in disabled state").action(async (name, options) => {
|
|
20007
|
+
automation.command("create [name]").description("Create a new automation").option("-p, --prompt <prompt>", "Prompt for the automation").option("-e, --environment <environment>", "Environment name or ID").option("--trigger-cron <schedule>", 'Cron schedule expression (e.g. "0 9 * * 1-5")').option("--trigger-cron-timezone <timezone>", "Timezone for cron trigger (default: UTC)").option("--trigger-github <event>", 'GitHub event (e.g. "pull_request.opened")').option("--trigger-github-repos <repos>", "Comma-separated repo names to filter GitHub trigger").option("--trigger-gitlab <event>", 'GitLab event (e.g. "merge_request.opened")').option("--trigger-gitlab-repos <repos>", "Comma-separated repo names to filter GitLab trigger").option("--lifecycle <policy>", "Workspace lifecycle: archive_when_done, sleep_when_done, delete_after_inactivity, default").option("--sleep-when-done", "Sleep automation workspaces as soon as the agent finishes").option("--auto-stop-minutes <minutes>", "Inactivity timeout in minutes (3-1440, requires --lifecycle default or delete_after_inactivity)").option("--pr-followups", "Allow follow-up actions on matching PRs").option("--agent-provider <provider>", 'Coding agent to use: claude, codex, cursor, relay (or "none" to inherit org default)').option("--model <model>", 'Model identifier (must be valid for --agent-provider; pass "none" to clear)').option("--thinking-level <level>", 'Thinking/reasoning level: low, medium, high, max (or "none" to clear)').option("--plan-mode", "Run automation messages in plan mode").option("--goal-mode", "Set automation messages as Codex goals").option("--fast-mode", "Run automation messages in fast mode").option("--personal", "Create a personal automation owned by the authenticated user").option("--disabled", "Create in disabled state").action(async (name, options) => {
|
|
20000
20008
|
try {
|
|
20001
20009
|
await automationCreateCommand(name, {
|
|
20002
20010
|
...options,
|
|
@@ -20011,7 +20019,7 @@ automation.command("create [name]").description("Create a new automation").optio
|
|
|
20011
20019
|
process.exit(1);
|
|
20012
20020
|
}
|
|
20013
20021
|
});
|
|
20014
|
-
automation.command("edit <id>").description("Edit an existing automation").option("-n, --name <name>", "New name").option("-p, --prompt <prompt>", "New prompt").option("-e, --enabled <enabled>", "Enable or disable (true/false)").option("--trigger-cron <schedule>", "Set cron schedule (replaces existing triggers)").option("--trigger-cron-timezone <timezone>", "Timezone for cron trigger").option("--trigger-github <event>", "Set GitHub event (replaces existing triggers)").option("--trigger-github-repos <repos>", "Comma-separated repo names to filter GitHub trigger").option("--trigger-gitlab <event>", "Set GitLab event (replaces existing triggers)").option("--trigger-gitlab-repos <repos>", "Comma-separated repo names to filter GitLab trigger").option("--environment <environment>", "Environment name or ID").option("--lifecycle <policy>", "Workspace lifecycle: archive_when_done, sleep_when_done, delete_after_inactivity, default").option("--auto-stop-minutes <minutes>", "Inactivity timeout in minutes (3-1440, requires --lifecycle default or delete_after_inactivity)").option("--pr-followups <enabled>", "Allow follow-up actions on matching PRs (true/false)", parseBooleanOption).option("--agent-provider <provider>", 'Coding agent to use: claude, codex, cursor, relay (or "none" to inherit org default)').option("--model <model>", 'Model identifier (must be valid for --agent-provider; pass "none" to clear)').option("--thinking-level <level>", 'Thinking/reasoning level: low, medium, high, max (or "none" to clear)').option("--plan-mode <enabled>", "Run automation messages in plan mode (true/false)", parseBooleanOption).option("--goal-mode <enabled>", "Set automation messages as Codex goals (true/false)", parseBooleanOption).option("--fast-mode <enabled>", "Run automation messages in fast mode (true/false)", parseBooleanOption).action(async (id, options) => {
|
|
20022
|
+
automation.command("edit <id>").description("Edit an existing automation").option("-n, --name <name>", "New name").option("-p, --prompt <prompt>", "New prompt").option("-e, --enabled <enabled>", "Enable or disable (true/false)").option("--trigger-cron <schedule>", "Set cron schedule (replaces existing triggers)").option("--trigger-cron-timezone <timezone>", "Timezone for cron trigger").option("--trigger-github <event>", "Set GitHub event (replaces existing triggers)").option("--trigger-github-repos <repos>", "Comma-separated repo names to filter GitHub trigger").option("--trigger-gitlab <event>", "Set GitLab event (replaces existing triggers)").option("--trigger-gitlab-repos <repos>", "Comma-separated repo names to filter GitLab trigger").option("--environment <environment>", "Environment name or ID").option("--lifecycle <policy>", "Workspace lifecycle: archive_when_done, sleep_when_done, delete_after_inactivity, default").option("--sleep-when-done", "Sleep automation workspaces as soon as the agent finishes").option("--auto-stop-minutes <minutes>", "Inactivity timeout in minutes (3-1440, requires --lifecycle default or delete_after_inactivity)").option("--pr-followups <enabled>", "Allow follow-up actions on matching PRs (true/false)", parseBooleanOption).option("--agent-provider <provider>", 'Coding agent to use: claude, codex, cursor, relay (or "none" to inherit org default)').option("--model <model>", 'Model identifier (must be valid for --agent-provider; pass "none" to clear)').option("--thinking-level <level>", 'Thinking/reasoning level: low, medium, high, max (or "none" to clear)').option("--plan-mode <enabled>", "Run automation messages in plan mode (true/false)", parseBooleanOption).option("--goal-mode <enabled>", "Set automation messages as Codex goals (true/false)", parseBooleanOption).option("--fast-mode <enabled>", "Run automation messages in fast mode (true/false)", parseBooleanOption).action(async (id, options) => {
|
|
20015
20023
|
try {
|
|
20016
20024
|
await automationEditCommand(id, options);
|
|
20017
20025
|
} catch (error) {
|