orquesta-cli 0.2.38 → 0.2.39

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.
@@ -437,10 +437,19 @@ ${executorLines}
437
437
  };
438
438
  }
439
439
  if (context.onShowProjectSelector) {
440
+ const currentLine = orquestaConfig.projectName
441
+ ? `📁 Current project: ${orquestaConfig.projectName}${orquestaConfig.organizationName ? ` (${orquestaConfig.organizationName})` : ''}`
442
+ : '📁 No project selected yet — pick one below.';
443
+ const updatedMessages = [
444
+ ...context.messages,
445
+ { role: 'assistant', content: currentLine },
446
+ ];
447
+ context.setMessages(updatedMessages);
440
448
  context.onShowProjectSelector();
441
449
  return {
442
450
  handled: true,
443
451
  shouldContinue: false,
452
+ updatedContext: { messages: updatedMessages },
444
453
  };
445
454
  }
446
455
  const projectMessage = `Use /project in interactive mode to switch between projects.\n\nCurrent project: ${orquestaConfig.projectName || 'Unknown'}`;
@@ -550,24 +559,24 @@ ${executorLines}
550
559
  const binding = readHookConfig(process.cwd());
551
560
  if (sub === 'status') {
552
561
  if (!binding)
553
- return reply('🔌 Claude Code hook: not enabled in this directory.\nEnable it with /hook enable.');
562
+ return reply('🔌 Session hook: not enabled in this directory.\nEnable it with /hook enable — claude AND orquesta sessions here will stream into your Orquesta project.');
554
563
  const name = binding.projectName
555
564
  || (oc?.projectId === binding.projectId && oc?.projectName ? oc.projectName : binding.projectId);
556
- return reply(`🟢 Claude Code hook: enabled here → streaming into ${name}\n Project ID: ${binding.projectId}\n Disable with /hook disable.`);
565
+ return reply(`🟢 Session hook: enabled here → claude & orquesta sessions stream into ${name}\n Project ID: ${binding.projectId}\n Disable with /hook disable.`);
557
566
  }
558
567
  if (sub === 'disable') {
559
568
  if (!binding)
560
569
  return reply('Nothing to do — no Orquesta hook is configured in this directory.');
561
570
  const changed = disableHooks(process.cwd(), { quiet: true });
562
571
  return reply(changed
563
- ? '✅ Hook disabled. Claude Code runs in this directory no longer report to Orquesta.'
572
+ ? '✅ Hook disabled. Sessions in this directory (claude or orquesta) no longer report to Orquesta.'
564
573
  : 'Nothing to do — no Orquesta hook was configured here.');
565
574
  }
566
575
  if (sub === 'enable') {
567
576
  if (!oc?.token)
568
577
  return reply('❌ Not logged in. Run /login first, then /hook enable.');
569
578
  if (!oc.projectId) {
570
- return reply('⚠️ No project selected for this session.\nRun `orquesta hook enable` (or `orquesta hook switch`) in a shell to pick one — it can show the project list interactively.');
579
+ return reply('⚠️ No project selected for this session.\nRun /project to pick one, or `orquesta hook enable` in a shell for the interactive list.');
571
580
  }
572
581
  const ok = writeHookFiles({
573
582
  projectId: oc.projectId,
@@ -577,10 +586,10 @@ ${executorLines}
577
586
  quiet: true,
578
587
  });
579
588
  return reply(ok
580
- ? `🟢 Hook enabled → streaming into ${oc.projectName || oc.projectId}.\nRun \`claude\` in this directory and sessions stream into Orquesta.`
589
+ ? `🟢 Session hook enabled → streaming into ${oc.projectName || oc.projectId}.\nEvery claude or orquesta session in this directory now streams into Orquesta.`
581
590
  : '❌ Could not write hook files (check directory permissions).');
582
591
  }
583
- return reply('Usage: /hook status | /hook enable | /hook disable\n(To move a directory to a different project, run `orquesta hook switch` in a shell.)');
592
+ return reply('Usage: /hook status | /hook enable | /hook disable\nThe hook mirrors claude AND orquesta sessions in this directory into your project.\n(To move a directory to a different project, run `orquesta hook switch` in a shell.)');
584
593
  }
585
594
  if (trimmedCommand === '/help') {
586
595
  const helpMessage = `
@@ -1415,7 +1415,7 @@ export const PlanExecuteApp = ({ llmClient: initialLlmClient, modelInfo }) => {
1415
1415
  "%)"),
1416
1416
  React.createElement(Text, { color: "gray" }, " \u2502 ")));
1417
1417
  })(),
1418
- React.createElement(Text, { color: "cyan" }, currentModelInfo.model)))) : (React.createElement(React.Fragment, null,
1418
+ React.createElement(Text, { color: "cyan" }, currentModelInfo.model)))) : (React.createElement(Box, { flexDirection: "column", width: "100%" },
1419
1419
  React.createElement(Box, null,
1420
1420
  React.createElement(Text, { color: executionMode === 'auto' ? 'green' : 'yellow', bold: true },
1421
1421
  "[",
@@ -1438,17 +1438,22 @@ export const PlanExecuteApp = ({ llmClient: initialLlmClient, modelInfo }) => {
1438
1438
  getHealthIndicator(),
1439
1439
  " "),
1440
1440
  React.createElement(Text, { color: "cyan" }, currentModelInfo.model),
1441
- React.createElement(Text, { color: "gray" }, " \u2502 "),
1441
+ (planExecutionState.todos.length > 0 || batutaUsage) && (React.createElement(React.Fragment, null,
1442
+ React.createElement(Text, { color: "gray" }, " \u2502 "),
1443
+ React.createElement(TodoStatusBar, { todos: planExecutionState.todos, projectName: configManager.getOrquestaConfig()?.projectName, batutaUsage: batutaUsage, isProcessing: isProcessing })))),
1444
+ React.createElement(Box, null,
1445
+ configManager.getOrquestaConfig()?.projectName && (React.createElement(React.Fragment, null,
1446
+ React.createElement(Text, { color: "magenta" },
1447
+ "\u26ED ",
1448
+ configManager.getOrquestaConfig()?.projectName),
1449
+ React.createElement(Text, { color: "gray" }, " \u2502 "))),
1442
1450
  React.createElement(Text, { color: "gray" }, shortenPath(process.cwd())),
1443
1451
  hookBinding && (React.createElement(React.Fragment, null,
1444
1452
  React.createElement(Text, { color: "gray" }, " \u2502 "),
1445
1453
  React.createElement(Text, { color: "green" },
1446
1454
  "\u2B21 hook \u2192 ",
1447
1455
  hookBinding.projectName))),
1448
- (planExecutionState.todos.length > 0 || batutaUsage) && (React.createElement(React.Fragment, null,
1449
- React.createElement(Text, { color: "gray" }, " \u2502 "),
1450
- React.createElement(TodoStatusBar, { todos: planExecutionState.todos, projectName: configManager.getOrquestaConfig()?.projectName, batutaUsage: batutaUsage, isProcessing: isProcessing })))),
1451
- React.createElement(Text, { color: "gray", dimColor: true }, "Tab: mode \u2502 /help")))),
1456
+ React.createElement(Text, { color: "gray", dimColor: true }, " \u2502 Tab: mode \u2502 /help"))))),
1452
1457
  showLogFiles && (React.createElement(Box, { marginTop: 0 },
1453
1458
  React.createElement(LogBrowser, { onClose: () => setShowLogFiles(false) })))));
1454
1459
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orquesta-cli",
3
- "version": "0.2.38",
3
+ "version": "0.2.39",
4
4
  "description": "Orquesta CLI - AI-powered coding assistant with team collaboration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",