archondev 2.19.17 → 2.19.18

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.
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  listLocalAtoms
3
- } from "./chunk-VUT5XLKM.js";
3
+ } from "./chunk-PSUBO3TR.js";
4
4
 
5
5
  // src/cli/list.ts
6
6
  import chalk from "chalk";
@@ -7,7 +7,7 @@ import {
7
7
  UsageRecorder,
8
8
  handleInsufficientCreditsRecovery,
9
9
  loadAtom
10
- } from "./chunk-VUT5XLKM.js";
10
+ } from "./chunk-PSUBO3TR.js";
11
11
  import {
12
12
  transitionAtom
13
13
  } from "./chunk-PCTP3LKJ.js";
@@ -4797,7 +4797,7 @@ function createPrompt() {
4797
4797
  }
4798
4798
  async function execute(atomId, options) {
4799
4799
  if (options.parallel && options.parallel.length > 0) {
4800
- const { parallelExecute } = await import("./parallel-3JTGAHOS.js");
4800
+ const { parallelExecute } = await import("./parallel-DBPSYNE4.js");
4801
4801
  const allAtomIds = [atomId, ...options.parallel];
4802
4802
  await parallelExecute(allAtomIds, { skipGates: options.skipGates === true });
4803
4803
  return;
@@ -954,6 +954,30 @@ async function plan(description, options) {
954
954
  Atom created: ${atom.externalId}`));
955
955
  console.log(chalk2.dim(`Title: ${atom.title}`));
956
956
  console.log(chalk2.dim(`Acceptance Criteria: ${atom.acceptanceCriteria.length} items`));
957
+ if (conversational) {
958
+ atom.plan = classification.kind === "content" ? buildContentPlan({
959
+ description,
960
+ requirements,
961
+ referencedFiles: references,
962
+ deliverableTarget,
963
+ missingFiles
964
+ }) : buildConversationalFallbackPlan({
965
+ description,
966
+ requirements,
967
+ references,
968
+ deliverableTarget
969
+ });
970
+ atom.status = "READY";
971
+ await saveAtom(atom);
972
+ console.log(chalk2.green(`
973
+ \u2705 Atom saved: ${atom.externalId}`));
974
+ console.log(chalk2.dim(`Status: ${atom.status}`));
975
+ console.log(chalk2.dim(`
976
+ Next steps:`));
977
+ console.log(chalk2.dim(` - Execute: archon execute ${atom.externalId}`));
978
+ console.log(chalk2.dim(` - View: archon show ${atom.externalId}`));
979
+ return;
980
+ }
957
981
  if (isContentOnlyTask) {
958
982
  console.log(chalk2.blue("\nContent task detected. Creating a lightweight plan (no adversarial loop)."));
959
983
  atom.plan = buildContentPlan({
@@ -1007,7 +1031,11 @@ Atom saved: ${atom.externalId}`));
1007
1031
  }
1008
1032
  const planner = billingContext ? new TrackedAdversarialPlanner({ apiKey, billing: billingContext }) : new AdversarialPlanner({ apiKey });
1009
1033
  if (billingContext && planner instanceof TrackedAdversarialPlanner) {
1010
- let balanceCheck = await planner.checkBalance();
1034
+ let balanceCheck = await withTimeout(
1035
+ planner.checkBalance(),
1036
+ conversational ? 15e3 : 3e4,
1037
+ "Balance check timed out"
1038
+ );
1011
1039
  if (balanceCheck.tier === "CREDITS") {
1012
1040
  console.log(chalk2.dim(`Estimated planning cost: $${(balanceCheck.estimatedCostCents / 100).toFixed(2)} | Balance: $${(balanceCheck.balance / 100).toFixed(2)}`));
1013
1041
  }
@@ -1020,7 +1048,11 @@ Atom saved: ${atom.externalId}`));
1020
1048
  if (recovery === "abort") {
1021
1049
  return;
1022
1050
  }
1023
- balanceCheck = await planner.checkBalance();
1051
+ balanceCheck = await withTimeout(
1052
+ planner.checkBalance(),
1053
+ conversational ? 15e3 : 3e4,
1054
+ "Balance re-check timed out"
1055
+ );
1024
1056
  if (!balanceCheck.sufficient && balanceCheck.tier === "CREDITS") {
1025
1057
  console.log(chalk2.red("\nStill insufficient credits after recovery action."));
1026
1058
  console.log(chalk2.dim("Please add more credits with: archon credits add"));
@@ -1029,7 +1061,35 @@ Atom saved: ${atom.externalId}`));
1029
1061
  }
1030
1062
  }
1031
1063
  }
1032
- const planResult = await planner.planAtom(atom, parseResult.schema);
1064
+ let planResult;
1065
+ try {
1066
+ planResult = await withTimeout(
1067
+ planner.planAtom(atom, parseResult.schema),
1068
+ conversational ? 45e3 : 12e4,
1069
+ "Planning timed out"
1070
+ );
1071
+ } catch (error) {
1072
+ if (!conversational) {
1073
+ throw error;
1074
+ }
1075
+ console.log(chalk2.yellow("\nPlanner is taking too long. Switching to a quick fallback plan."));
1076
+ atom.plan = buildConversationalFallbackPlan({
1077
+ description,
1078
+ requirements,
1079
+ references,
1080
+ deliverableTarget
1081
+ });
1082
+ atom.status = "READY";
1083
+ await saveAtom(atom);
1084
+ console.log(chalk2.green(`
1085
+ \u2705 Atom saved: ${atom.externalId}`));
1086
+ console.log(chalk2.dim(`Status: ${atom.status}`));
1087
+ console.log(chalk2.dim(`
1088
+ Next steps:`));
1089
+ console.log(chalk2.dim(` - Execute: archon execute ${atom.externalId}`));
1090
+ console.log(chalk2.dim(` - View: archon show ${atom.externalId}`));
1091
+ return;
1092
+ }
1033
1093
  if (!planResult.approved) {
1034
1094
  console.log(chalk2.red("\n\u274C Plan not approved after maximum iterations."));
1035
1095
  console.log(chalk2.yellow("Issues found:"));
@@ -1067,8 +1127,27 @@ Next steps:`));
1067
1127
  console.log(chalk2.dim(` - View: archon show ${atom.externalId}`));
1068
1128
  return;
1069
1129
  }
1070
- const answer2 = await prompt2.ask("\nSave as draft anyway? (y/N): ");
1071
- const normalized = answer2.toLowerCase();
1130
+ if (conversational) {
1131
+ console.log(chalk2.yellow("\nPlan was not fully approved. Saving a pragmatic fallback plan so you can continue."));
1132
+ atom.plan = buildConversationalFallbackPlan({
1133
+ description,
1134
+ requirements,
1135
+ references,
1136
+ deliverableTarget
1137
+ });
1138
+ atom.status = "READY";
1139
+ await saveAtom(atom);
1140
+ console.log(chalk2.green(`
1141
+ \u2705 Atom saved: ${atom.externalId}`));
1142
+ console.log(chalk2.dim(`Status: ${atom.status}`));
1143
+ console.log(chalk2.dim(`
1144
+ Next steps:`));
1145
+ console.log(chalk2.dim(` - Execute: archon execute ${atom.externalId}`));
1146
+ console.log(chalk2.dim(` - View: archon show ${atom.externalId}`));
1147
+ return;
1148
+ }
1149
+ const answer = await prompt2.ask("\nSave as draft anyway? (y/N): ");
1150
+ const normalized = answer.toLowerCase();
1072
1151
  if (normalized.includes("wrong") || normalized.includes("content") || normalized.includes("not a code")) {
1073
1152
  console.log(chalk2.blue("\nReclassifying as content task and creating a lightweight plan."));
1074
1153
  atom.plan = buildContentPlan({
@@ -1113,16 +1192,26 @@ Token usage: ${planResult.totalUsage.inputTokens} input, ${planResult.totalUsage
1113
1192
  }
1114
1193
  }
1115
1194
  }
1116
- const answer = await prompt2.ask("\nApprove this plan? (y/N/e for edit): ");
1117
- if (answer.toLowerCase() === "e") {
1118
- console.log(chalk2.yellow("Edit mode not yet implemented. Saving as draft."));
1119
- atom.status = "DRAFT";
1120
- } else if (answer.toLowerCase() !== "y") {
1121
- console.log(chalk2.dim("Atom discarded."));
1122
- return;
1123
- } else {
1124
- atom.plan = planResult.finalPlan;
1195
+ if (conversational) {
1196
+ atom.plan = planResult.finalPlan ?? buildConversationalFallbackPlan({
1197
+ description,
1198
+ requirements,
1199
+ references,
1200
+ deliverableTarget
1201
+ });
1125
1202
  atom.status = "READY";
1203
+ } else {
1204
+ const answer = await prompt2.ask("\nApprove this plan? (y/N/e for edit): ");
1205
+ if (answer.toLowerCase() === "e") {
1206
+ console.log(chalk2.yellow("Edit mode not yet implemented. Saving as draft."));
1207
+ atom.status = "DRAFT";
1208
+ } else if (answer.toLowerCase() !== "y") {
1209
+ console.log(chalk2.dim("Atom discarded."));
1210
+ return;
1211
+ } else {
1212
+ atom.plan = planResult.finalPlan;
1213
+ atom.status = "READY";
1214
+ }
1126
1215
  }
1127
1216
  await saveAtom(atom);
1128
1217
  console.log(chalk2.green(`
@@ -1137,6 +1226,17 @@ Next steps:`));
1137
1226
  prompt2.close();
1138
1227
  }
1139
1228
  }
1229
+ function withTimeout(promise, ms, message) {
1230
+ let timeoutHandle;
1231
+ const timeoutPromise = new Promise((_, reject) => {
1232
+ timeoutHandle = setTimeout(() => reject(new Error(message)), ms);
1233
+ });
1234
+ return Promise.race([promise, timeoutPromise]).finally(() => {
1235
+ if (timeoutHandle) {
1236
+ clearTimeout(timeoutHandle);
1237
+ }
1238
+ });
1239
+ }
1140
1240
  function printPlanNextActions(atomExternalId, success) {
1141
1241
  console.log();
1142
1242
  console.log(chalk2.bold("Next best action:"));
@@ -1363,6 +1463,34 @@ function buildContentPlan(input) {
1363
1463
  estimated_complexity: steps.length > 6 ? "MEDIUM" : "LOW"
1364
1464
  };
1365
1465
  }
1466
+ function buildConversationalFallbackPlan(input) {
1467
+ const steps = [];
1468
+ if (input.references.length > 0) {
1469
+ steps.push(`Review referenced inputs: ${input.references.join(", ")}`);
1470
+ } else {
1471
+ steps.push("Review current project files relevant to the request");
1472
+ }
1473
+ if (input.requirements.length > 0) {
1474
+ steps.push("Draft implementation outline directly from the detected requirements");
1475
+ } else {
1476
+ steps.push("Define a concrete implementation outline for the requested outcome");
1477
+ }
1478
+ steps.push("Create the first deliverable increment and validate against user intent");
1479
+ steps.push("Summarize the plan and execution-ready next action");
1480
+ if (input.deliverableTarget) {
1481
+ steps.push(`Write output to ${input.deliverableTarget}`);
1482
+ }
1483
+ return {
1484
+ steps,
1485
+ files_to_modify: input.references,
1486
+ dependencies: [],
1487
+ risks: [
1488
+ "Reference mismatch risk: confirm inferred requirements against provided source documents.",
1489
+ "Scope drift risk: keep first increment focused on the requested sample deliverable."
1490
+ ],
1491
+ estimated_complexity: "LOW"
1492
+ };
1493
+ }
1366
1494
  function extractReferencedFiles(description) {
1367
1495
  const references = /* @__PURE__ */ new Set();
1368
1496
  const barePattern = /\b[\w./-]+\.(md|txt|json|yaml|yml|png|jpg|jpeg|gif|svg|pdf)\b/gi;
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  listLocalAtoms,
8
8
  loadAtom
9
- } from "./chunk-VUT5XLKM.js";
9
+ } from "./chunk-PSUBO3TR.js";
10
10
  import {
11
11
  loadConfig
12
12
  } from "./chunk-SVU7MLG6.js";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  execute
3
- } from "./chunk-HVXBKZDF.js";
3
+ } from "./chunk-LWNFP7BL.js";
4
4
  import "./chunk-EBHHIUCB.js";
5
- import "./chunk-VUT5XLKM.js";
5
+ import "./chunk-PSUBO3TR.js";
6
6
  import "./chunk-PCTP3LKJ.js";
7
7
  import "./chunk-PJRQI5UN.js";
8
8
  import "./chunk-EIEU3IIY.js";
package/dist/index.js CHANGED
@@ -47,13 +47,13 @@ import {
47
47
  parallelRunWaves,
48
48
  parallelSchedule,
49
49
  parallelStatus
50
- } from "./chunk-BUFMPKXX.js";
50
+ } from "./chunk-RWNRCLN5.js";
51
51
  import {
52
52
  DependencyParser,
53
53
  EnvironmentConfigLoader,
54
54
  EnvironmentValidator,
55
55
  execute
56
- } from "./chunk-HVXBKZDF.js";
56
+ } from "./chunk-LWNFP7BL.js";
57
57
  import {
58
58
  cloudCancel,
59
59
  cloudLogs,
@@ -61,12 +61,12 @@ import {
61
61
  } from "./chunk-EBHHIUCB.js";
62
62
  import {
63
63
  list
64
- } from "./chunk-GU7OQ5EV.js";
64
+ } from "./chunk-6KE53F2W.js";
65
65
  import {
66
66
  listLocalAtoms,
67
67
  loadAtom,
68
68
  plan
69
- } from "./chunk-VUT5XLKM.js";
69
+ } from "./chunk-PSUBO3TR.js";
70
70
  import "./chunk-PCTP3LKJ.js";
71
71
  import "./chunk-PJRQI5UN.js";
72
72
  import {
@@ -3320,7 +3320,7 @@ async function handleNewProject(cwd, _state) {
3320
3320
  }
3321
3321
  if (intent.mode === "ad_hoc" && intent.confidence >= 0.7) {
3322
3322
  console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
3323
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3323
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3324
3324
  await plan2(initialResponse, { conversational: true });
3325
3325
  return;
3326
3326
  }
@@ -3345,7 +3345,7 @@ async function handleNewProject(cwd, _state) {
3345
3345
  }
3346
3346
  if (trimmed === "2") {
3347
3347
  console.log(chalk6.dim("\n> Creating a task for this...\n"));
3348
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3348
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3349
3349
  await plan2(initialResponse, { conversational: true });
3350
3350
  return;
3351
3351
  }
@@ -3384,7 +3384,7 @@ async function showNewProjectMenu(cwd) {
3384
3384
  case "3": {
3385
3385
  const description = await promptWithCommands("Describe what you want to do", { allowMultiline: true });
3386
3386
  if (description.trim()) {
3387
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3387
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3388
3388
  await plan2(description, { conversational: true });
3389
3389
  }
3390
3390
  break;
@@ -3449,7 +3449,6 @@ async function runExploreFlow(cwd, followUpInput) {
3449
3449
  const request = actionableFollowUp ?? originalFollowUp;
3450
3450
  console.log(chalk6.dim("I finished the project scan. Continuing with your requested task...\n"));
3451
3451
  await handlePostExploreAction(cwd, request);
3452
- await showMainMenu();
3453
3452
  return;
3454
3453
  }
3455
3454
  console.log(chalk6.bold("What would you like to do next?\n"));
@@ -3466,7 +3465,7 @@ async function runExploreFlow(cwd, followUpInput) {
3466
3465
  case "1": {
3467
3466
  const description = await promptWithCommands("Describe what you want to do", { allowMultiline: true });
3468
3467
  if (description.trim()) {
3469
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3468
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3470
3469
  await plan2(description, { conversational: true });
3471
3470
  }
3472
3471
  await showMainMenu();
@@ -3711,7 +3710,7 @@ ${state.forbiddenPatterns?.length ? `- **Forbidden patterns:** ${state.forbidden
3711
3710
  const hintedTask = initialTaskHint?.trim() ?? "";
3712
3711
  if (hintedTask) {
3713
3712
  console.log(chalk6.dim("Using your request above as the first task.\n"));
3714
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3713
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3715
3714
  await plan2(hintedTask, { conversational: true });
3716
3715
  return;
3717
3716
  }
@@ -3736,7 +3735,7 @@ ${state.forbiddenPatterns?.length ? `- **Forbidden patterns:** ${state.forbidden
3736
3735
  description = continueAnswer.trim();
3737
3736
  }
3738
3737
  if (description.trim()) {
3739
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3738
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3740
3739
  await plan2(description, { conversational: true });
3741
3740
  }
3742
3741
  }
@@ -3862,7 +3861,7 @@ async function handleAdaptExisting(cwd, state) {
3862
3861
  }
3863
3862
  if (intent.mode === "ad_hoc" && intent.confidence >= 0.7) {
3864
3863
  console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
3865
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3864
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3866
3865
  await plan2(response, { conversational: true });
3867
3866
  return;
3868
3867
  }
@@ -3900,7 +3899,7 @@ async function showAdaptExistingMenu(cwd, state) {
3900
3899
  case "2": {
3901
3900
  const description = await promptWithCommands("Describe what you want to do", { allowMultiline: true });
3902
3901
  if (description.trim()) {
3903
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
3902
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
3904
3903
  await plan2(description, { conversational: true });
3905
3904
  }
3906
3905
  break;
@@ -4022,7 +4021,7 @@ function isContinuationDirective(input) {
4022
4021
  return normalized === "continue" || normalized === "continue." || normalized === "go on" || normalized === "go ahead" || normalized === "next" || normalized === "proceed" || normalized === "do it";
4023
4022
  }
4024
4023
  async function continueWithCurrentTask(cwd) {
4025
- const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-3UKVNQDT.js");
4024
+ const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-W4WQY7BR.js");
4026
4025
  const atoms = await listLocalAtoms2();
4027
4026
  const pending = atoms.filter((a) => a.status === "READY" || a.status === "IN_PROGRESS").sort((a, b) => a.externalId.localeCompare(b.externalId));
4028
4027
  if (pending.length === 0) {
@@ -4037,7 +4036,7 @@ async function continueWithCurrentTask(cwd) {
4037
4036
  console.log(chalk6.dim(`
4038
4037
  Continuing with ${nextAtom.externalId}...
4039
4038
  `));
4040
- const { execute: execute2 } = await import("./execute-LJNJEXWD.js");
4039
+ const { execute: execute2 } = await import("./execute-3IUO33KY.js");
4041
4040
  await execute2(nextAtom.externalId, {});
4042
4041
  }
4043
4042
  function checkForHandoff(cwd) {
@@ -4130,7 +4129,7 @@ async function handleFreeformJourneyInput(cwd, input) {
4130
4129
  const state = detectProjectState(cwd);
4131
4130
  if (state.hasArchitecture) {
4132
4131
  console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
4133
- const { plan: plan3 } = await import("./plan-3UKVNQDT.js");
4132
+ const { plan: plan3 } = await import("./plan-W4WQY7BR.js");
4134
4133
  await plan3(freeform, { conversational: true });
4135
4134
  return true;
4136
4135
  }
@@ -4139,7 +4138,7 @@ async function handleFreeformJourneyInput(cwd, input) {
4139
4138
  return true;
4140
4139
  }
4141
4140
  console.log(chalk6.dim("\n> Got it! Creating a task for this...\n"));
4142
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
4141
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
4143
4142
  await plan2(freeform, { conversational: true });
4144
4143
  return true;
4145
4144
  }
@@ -4189,7 +4188,7 @@ async function handlePostExploreAction(cwd, request) {
4189
4188
  } else {
4190
4189
  console.log(chalk6.dim("> Got it! Creating a task for this...\n"));
4191
4190
  }
4192
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
4191
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
4193
4192
  await plan2(request, { conversational: true });
4194
4193
  }
4195
4194
  async function showReviewProgress(cwd) {
@@ -4211,18 +4210,18 @@ async function showReviewProgress(cwd) {
4211
4210
  }
4212
4211
  }
4213
4212
  async function planTask() {
4214
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
4213
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
4215
4214
  const description = await promptWithCommands("Describe what you want to build", { allowMultiline: true });
4216
4215
  if (description.trim()) {
4217
4216
  await plan2(description, { conversational: true });
4218
4217
  }
4219
4218
  }
4220
4219
  async function listAtoms() {
4221
- const { list: list2 } = await import("./list-53NTME4Q.js");
4220
+ const { list: list2 } = await import("./list-P5H2N6WT.js");
4222
4221
  await list2({});
4223
4222
  }
4224
4223
  async function executeNext() {
4225
- const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-3UKVNQDT.js");
4224
+ const { listLocalAtoms: listLocalAtoms2 } = await import("./plan-W4WQY7BR.js");
4226
4225
  const { analyzeProject, getComplexityDescription, getModeDescription } = await import("./orchestration-HIF3KP25.js");
4227
4226
  const { loadExecutionPreferences } = await import("./preferences-4V4C7MVD.js");
4228
4227
  const cwd = process.cwd();
@@ -4293,11 +4292,11 @@ async function executeNext() {
4293
4292
  }
4294
4293
  }
4295
4294
  if (selectedMode === "parallel-cloud") {
4296
- const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-3JTGAHOS.js");
4295
+ const { parallelExecuteCloud: parallelExecuteCloud2 } = await import("./parallel-DBPSYNE4.js");
4297
4296
  await parallelExecuteCloud2(runIds);
4298
4297
  return;
4299
4298
  }
4300
- const { parallelExecute } = await import("./parallel-3JTGAHOS.js");
4299
+ const { parallelExecute } = await import("./parallel-DBPSYNE4.js");
4301
4300
  await parallelExecute(runIds);
4302
4301
  return;
4303
4302
  }
@@ -4305,7 +4304,7 @@ async function executeNext() {
4305
4304
  const atomId = await prompt("Enter atom ID to execute (or press Enter for first pending)");
4306
4305
  const targetId = atomId.trim() || pendingAtoms[0]?.id;
4307
4306
  if (targetId) {
4308
- const { execute: execute2 } = await import("./execute-LJNJEXWD.js");
4307
+ const { execute: execute2 } = await import("./execute-3IUO33KY.js");
4309
4308
  await execute2(targetId, {});
4310
4309
  } else {
4311
4310
  console.log(chalk6.yellow("No atom to execute."));
@@ -4452,7 +4451,7 @@ async function handleSlashCommand(input) {
4452
4451
  const arg = parts.slice(1).join(" ").trim();
4453
4452
  switch (command) {
4454
4453
  case "/plan": {
4455
- const { plan: plan2 } = await import("./plan-3UKVNQDT.js");
4454
+ const { plan: plan2 } = await import("./plan-W4WQY7BR.js");
4456
4455
  if (arg) {
4457
4456
  await plan2(arg, { conversational: true });
4458
4457
  } else {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  list
3
- } from "./chunk-GU7OQ5EV.js";
4
- import "./chunk-VUT5XLKM.js";
3
+ } from "./chunk-6KE53F2W.js";
4
+ import "./chunk-PSUBO3TR.js";
5
5
  import "./chunk-PCTP3LKJ.js";
6
6
  import "./chunk-PJRQI5UN.js";
7
7
  import "./chunk-EIEU3IIY.js";
@@ -6,9 +6,9 @@ import {
6
6
  parallelRunWaves,
7
7
  parallelSchedule,
8
8
  parallelStatus
9
- } from "./chunk-BUFMPKXX.js";
9
+ } from "./chunk-RWNRCLN5.js";
10
10
  import "./chunk-EBHHIUCB.js";
11
- import "./chunk-VUT5XLKM.js";
11
+ import "./chunk-PSUBO3TR.js";
12
12
  import "./chunk-PCTP3LKJ.js";
13
13
  import "./chunk-PJRQI5UN.js";
14
14
  import "./chunk-EIEU3IIY.js";
@@ -3,7 +3,7 @@ import {
3
3
  loadAtom,
4
4
  parseAtomDescription,
5
5
  plan
6
- } from "./chunk-VUT5XLKM.js";
6
+ } from "./chunk-PSUBO3TR.js";
7
7
  import "./chunk-PCTP3LKJ.js";
8
8
  import "./chunk-PJRQI5UN.js";
9
9
  import "./chunk-EIEU3IIY.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "archondev",
3
- "version": "2.19.17",
3
+ "version": "2.19.18",
4
4
  "description": "Local-first AI-powered development governance system",
5
5
  "main": "dist/index.js",
6
6
  "bin": {