replicas-cli 0.3.27 → 0.3.29

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.
Files changed (2) hide show
  1. package/dist/index.cjs +59 -55
  2. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -23676,27 +23676,6 @@ var SUBAGENT_MCP_TOOLS = {
23676
23676
  };
23677
23677
  var SUBAGENT_MCP_TOOL_NAMES = Object.values(SUBAGENT_MCP_TOOLS);
23678
23678
 
23679
- // ../shared/src/frontmatter.ts
23680
- var import_yaml = __toESM(require_dist());
23681
-
23682
- // ../shared/src/learned-skills.ts
23683
- var LEARNED_SKILLS_ROOT = `${SANDBOX_PATHS.REPLICAS_DIR}/learned-skills`;
23684
- var LEARNED_SKILLS_MANIFEST_PATH = `${LEARNED_SKILLS_ROOT}/manifest.json`;
23685
- var learnedSkillsManifestSchema = external_exports.object({
23686
- skills: external_exports.array(external_exports.object({ name: external_exports.string(), sha256: external_exports.string() }))
23687
- });
23688
- var dreamVerdictChecksSchema = external_exports.object({
23689
- repeatable: external_exports.boolean(),
23690
- realInstruction: external_exports.boolean(),
23691
- noContradiction: external_exports.boolean(),
23692
- formatExact: external_exports.boolean(),
23693
- humanOnly: external_exports.boolean(),
23694
- actionable: external_exports.boolean(),
23695
- durable: external_exports.boolean()
23696
- });
23697
- var DREAM_VERDICT_CHECKS = dreamVerdictChecksSchema.keyof().options;
23698
- var dreamVerdictSchema = dreamVerdictChecksSchema.extend({ approve: external_exports.boolean(), reason: external_exports.string() });
23699
-
23700
23679
  // ../shared/src/uuid.ts
23701
23680
  var UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
23702
23681
 
@@ -26042,7 +26021,8 @@ var REPLICAS_MCP_TOOLS = {
26042
26021
  messageSubagent: "message_subagent",
26043
26022
  listSubagents: "list_subagents",
26044
26023
  readSubagent: "read_subagent",
26045
- archiveSubagent: "archive_subagent"
26024
+ archiveSubagent: "archive_subagent",
26025
+ waitForSubagents: "wait_for_subagents"
26046
26026
  };
26047
26027
  var automationToolInputSchema = external_exports.object({
26048
26028
  name: external_exports.string().describe("Short automation name."),
@@ -26082,31 +26062,6 @@ var updateEnvironmentMcpToolInputSchema = external_exports.object({
26082
26062
  ...updateEnvironmentMcpRequestSchema.shape
26083
26063
  });
26084
26064
 
26085
- // ../shared/src/user-message-matching.ts
26086
- function parseTimestampMs(timestamp) {
26087
- const value = typeof timestamp === "number" ? timestamp : Date.parse(timestamp);
26088
- return Number.isFinite(value) ? value : 0;
26089
- }
26090
- function areUserMessagesWithinMatchWindow(a, b) {
26091
- return a.content === b.content && Math.abs(parseTimestampMs(a.timestamp) - parseTimestampMs(b.timestamp)) <= USER_MESSAGE_MATCH_GRACE_PERIOD_MS;
26092
- }
26093
-
26094
- // ../shared/src/display-message/steps.ts
26095
- var SUBAGENT_STEPS = {
26096
- [SUBAGENT_MCP_TOOLS.messageAgent]: { icon: "message", live: "Messaging", done: "Messaged" },
26097
- [SUBAGENT_MCP_TOOLS.waitAgent]: { icon: "clock", live: "Waiting for", done: "Waited for" },
26098
- [SUBAGENT_MCP_TOOLS.getAgent]: { icon: "search", live: "Checking", done: "Checked" },
26099
- [SUBAGENT_MCP_TOOLS.deleteAgent]: { icon: "trash", live: "Deleting", done: "Deleted" },
26100
- [SUBAGENT_MCP_TOOLS.getProviders]: { icon: "list", live: "Listing available providers", done: "Listed available providers" }
26101
- };
26102
- var MULTITASK_TOOL_ACTIONS = {
26103
- [REPLICAS_MCP_TOOLS.spawnSubagent]: "spawn",
26104
- [REPLICAS_MCP_TOOLS.messageSubagent]: "send",
26105
- [REPLICAS_MCP_TOOLS.listSubagents]: "list",
26106
- [REPLICAS_MCP_TOOLS.readSubagent]: "read",
26107
- [REPLICAS_MCP_TOOLS.archiveSubagent]: "archive"
26108
- };
26109
-
26110
26065
  // ../shared/src/routes/preferences.ts
26111
26066
  var EMPTY_AGENT_DEFAULT_SETTINGS = {
26112
26067
  agent_provider: null,
@@ -26191,15 +26146,14 @@ var TAG = "multitask_event";
26191
26146
  var BLOCK = new RegExp(`<${TAG}((?:\\s+\\w+="[^"]*")*)>\\n?([\\s\\S]*?)\\n?</${TAG}>`, "g");
26192
26147
  var ATTRIBUTE = /(\w+)="([^"]*)"/g;
26193
26148
  var unescapeAttribute = (value) => value.replace(/&lt;/g, "<").replace(/&quot;/g, '"').replace(/&amp;/g, "&");
26194
- function parseMultitaskEvents(text2) {
26195
- const events = [];
26196
- for (const match of text2.matchAll(BLOCK)) {
26149
+ function extractMultitaskEvents(text2) {
26150
+ return [...text2.matchAll(BLOCK)].flatMap((match) => {
26197
26151
  const attributes = Object.fromEntries([...match[1].matchAll(ATTRIBUTE)].map(([, key, value]) => [key, unescapeAttribute(value)]));
26198
26152
  const kind = MULTITASK_EVENT_KINDS.find((candidate) => candidate === attributes.kind);
26199
- if (!kind || !attributes.id || !attributes.agent_id) return null;
26153
+ if (!kind || !attributes.id || !attributes.agent_id) return [];
26200
26154
  const [summary, ...rest] = match[2].replaceAll(`<\\/${TAG}`, `</${TAG}`).split("\n\n");
26201
26155
  const detail = rest.join("\n\n").trim();
26202
- events.push({
26156
+ return [{
26203
26157
  id: attributes.id,
26204
26158
  at: attributes.at ?? "",
26205
26159
  kind,
@@ -26208,11 +26162,61 @@ function parseMultitaskEvents(text2) {
26208
26162
  summary: summary.trim(),
26209
26163
  ...detail ? { detail } : {},
26210
26164
  ...attributes.noticed === "true" ? { noticed: true } : {}
26211
- });
26212
- }
26165
+ }];
26166
+ });
26167
+ }
26168
+ function parseMultitaskEvents(text2) {
26169
+ const events = extractMultitaskEvents(text2);
26213
26170
  return events.length > 0 && text2.replace(BLOCK, "").replaceAll(MERGED_MESSAGE_SEPARATOR.trim(), "").trim() === "" ? events : null;
26214
26171
  }
26215
26172
 
26173
+ // ../shared/src/frontmatter.ts
26174
+ var import_yaml = __toESM(require_dist());
26175
+
26176
+ // ../shared/src/learned-skills.ts
26177
+ var LEARNED_SKILLS_ROOT = `${SANDBOX_PATHS.REPLICAS_DIR}/learned-skills`;
26178
+ var LEARNED_SKILLS_MANIFEST_PATH = `${LEARNED_SKILLS_ROOT}/manifest.json`;
26179
+ var learnedSkillsManifestSchema = external_exports.object({
26180
+ skills: external_exports.array(external_exports.object({ name: external_exports.string(), sha256: external_exports.string() }))
26181
+ });
26182
+ var dreamVerdictChecksSchema = external_exports.object({
26183
+ repeatable: external_exports.boolean(),
26184
+ realInstruction: external_exports.boolean(),
26185
+ noContradiction: external_exports.boolean(),
26186
+ formatExact: external_exports.boolean(),
26187
+ humanOnly: external_exports.boolean(),
26188
+ actionable: external_exports.boolean(),
26189
+ durable: external_exports.boolean()
26190
+ });
26191
+ var DREAM_VERDICT_CHECKS = dreamVerdictChecksSchema.keyof().options;
26192
+ var dreamVerdictSchema = dreamVerdictChecksSchema.extend({ approve: external_exports.boolean(), reason: external_exports.string() });
26193
+
26194
+ // ../shared/src/user-message-matching.ts
26195
+ function parseTimestampMs(timestamp) {
26196
+ const value = typeof timestamp === "number" ? timestamp : Date.parse(timestamp);
26197
+ return Number.isFinite(value) ? value : 0;
26198
+ }
26199
+ function areUserMessagesWithinMatchWindow(a, b) {
26200
+ return a.content === b.content && Math.abs(parseTimestampMs(a.timestamp) - parseTimestampMs(b.timestamp)) <= USER_MESSAGE_MATCH_GRACE_PERIOD_MS;
26201
+ }
26202
+
26203
+ // ../shared/src/display-message/steps.ts
26204
+ var SUBAGENT_STEPS = {
26205
+ [SUBAGENT_MCP_TOOLS.messageAgent]: { icon: "message", live: "Messaging", done: "Messaged" },
26206
+ [SUBAGENT_MCP_TOOLS.waitAgent]: { icon: "clock", live: "Waiting for", done: "Waited for" },
26207
+ [SUBAGENT_MCP_TOOLS.getAgent]: { icon: "search", live: "Checking", done: "Checked" },
26208
+ [SUBAGENT_MCP_TOOLS.deleteAgent]: { icon: "trash", live: "Deleting", done: "Deleted" },
26209
+ [SUBAGENT_MCP_TOOLS.getProviders]: { icon: "list", live: "Listing available providers", done: "Listed available providers" }
26210
+ };
26211
+ var MULTITASK_TOOL_ACTIONS = {
26212
+ [REPLICAS_MCP_TOOLS.spawnSubagent]: "spawn",
26213
+ [REPLICAS_MCP_TOOLS.messageSubagent]: "send",
26214
+ [REPLICAS_MCP_TOOLS.listSubagents]: "list",
26215
+ [REPLICAS_MCP_TOOLS.readSubagent]: "read",
26216
+ [REPLICAS_MCP_TOOLS.archiveSubagent]: "archive",
26217
+ [REPLICAS_MCP_TOOLS.waitForSubagents]: "wait"
26218
+ };
26219
+
26216
26220
  // ../shared/src/user-message-attachments.ts
26217
26221
  var ATTACHMENT_PLACEHOLDER_REGEX = /^\[\d+ (?:(?:images?|files?)(?: and \d+ files?)? attached|(?:image )?attachments?)\]$/;
26218
26222
  var WALKTHROUGH_NOTE_REGEX = /(?:^|\n\n)<replicas_walkthrough path="([^"\n]+)" duration_seconds="(\d+)" audio="(true|false)">\n[^<]*\n<\/replicas_walkthrough>$/;
@@ -28426,7 +28430,7 @@ var headlessAgentRequestSchema = external_exports.object({
28426
28430
  });
28427
28431
 
28428
28432
  // ../shared/src/cli-version.ts
28429
- var CLI_VERSION = "0.3.27";
28433
+ var CLI_VERSION = "0.3.29";
28430
28434
 
28431
28435
  // ../shared/src/version.ts
28432
28436
  function compareVersions(v1, v2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "replicas-cli",
3
- "version": "0.3.27",
3
+ "version": "0.3.29",
4
4
  "description": "CLI for managing Replicas workspaces - SSH into cloud dev environments with automatic port forwarding",
5
5
  "main": "dist/index.cjs",
6
6
  "bin": {