@link-assistant/hive-mind 0.53.0 → 0.53.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # @link-assistant/hive-mind
2
2
 
3
+ ## 0.53.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 6d7fb43: Add --auto-continue-on-limit-reset option to hive command
8
+
9
+ The hive command was missing the --auto-continue-on-limit-reset option that is available
10
+ in the solve command. This caused yargs strict mode to reject the option with an
11
+ "Unknown arguments" error. The option is now properly defined in hive.config.lib.mjs
12
+ and passed to the solve command when spawning workers.
13
+
3
14
  ## 0.53.0
4
15
 
5
16
  ### Minor Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@link-assistant/hive-mind",
3
- "version": "0.53.0",
3
+ "version": "0.53.1",
4
4
  "description": "AI-powered issue solver and hive mind for collaborative problem solving",
5
5
  "main": "src/hive.mjs",
6
6
  "type": "module",
@@ -202,6 +202,11 @@ export const createYargsConfig = yargsInstance => {
202
202
  description: 'Pass --auto-continue to solve for each issue (continues with existing PRs instead of creating new ones)',
203
203
  default: true,
204
204
  })
205
+ .option('auto-continue-on-limit-reset', {
206
+ type: 'boolean',
207
+ description: 'Automatically continue when AI tool limit resets (calculates reset time and waits). Passed to solve command.',
208
+ default: false,
209
+ })
205
210
  .option('think', {
206
211
  type: 'string',
207
212
  description: 'Thinking level: low (Think.), medium (Think hard.), high (Think harder.), max (Ultrathink.)',
package/src/hive.mjs CHANGED
@@ -731,70 +731,24 @@ if (isDirectExecution) {
731
731
  }
732
732
 
733
733
  const startTime = Date.now();
734
- const forkFlag = argv.fork ? ' --fork' : '';
735
- const autoForkFlag = argv.autoFork ? ' --auto-fork' : '';
736
- const verboseFlag = argv.verbose ? ' --verbose' : '';
737
- const attachLogsFlag = argv.attachLogs ? ' --attach-logs' : '';
738
- const targetBranchFlag = argv.targetBranch ? ` --target-branch ${argv.targetBranch}` : '';
739
- const logDirFlag = argv.logDir ? ` --log-dir "${argv.logDir}"` : '';
740
- const dryRunFlag = argv.dryRun ? ' --dry-run' : '';
741
- const skipToolConnectionCheckFlag = argv.skipToolConnectionCheck || argv.toolConnectionCheck === false ? ' --skip-tool-connection-check' : '';
742
- const toolFlag = argv.tool ? ` --tool ${argv.tool}` : '';
743
- const autoContinueFlag = argv.autoContinue ? ' --auto-continue' : ' --no-auto-continue';
744
- const thinkFlag = argv.think ? ` --think ${argv.think}` : '';
745
- const promptPlanSubAgentFlag = argv.promptPlanSubAgent ? ' --prompt-plan-sub-agent' : '';
746
- const noSentryFlag = !argv.sentry ? ' --no-sentry' : '';
747
- const watchFlag = argv.watch ? ' --watch' : '';
748
- const prefixForkNameWithOwnerNameFlag = argv.prefixForkNameWithOwnerName ? ' --prefix-fork-name-with-owner-name' : '';
749
- const interactiveModeFlag = argv.interactiveMode ? ' --interactive-mode' : '';
750
- const promptExploreSubAgentFlag = argv.promptExploreSubAgent ? ' --prompt-explore-sub-agent' : '';
751
- const promptIssueReportingFlag = argv.promptIssueReporting ? ' --prompt-issue-reporting' : '';
752
- const promptCaseStudiesFlag = argv.promptCaseStudies ? ' --prompt-case-studies' : '';
753
- const promptPlaywrightMcpFlag = argv.promptPlaywrightMcp === true ? ' --prompt-playwright-mcp' : argv.promptPlaywrightMcp === false ? ' --no-prompt-playwright-mcp' : '';
754
734
  // Use spawn to get real-time streaming output while avoiding command-stream's automatic quote addition
755
735
  const { spawn } = await import('child_process');
756
-
757
736
  // Build arguments array to avoid shell parsing issues
758
737
  const args = [issueUrl, '--model', argv.model];
759
- if (argv.tool) {
760
- args.push('--tool', argv.tool);
761
- }
762
- if (argv.fork) {
763
- args.push('--fork');
764
- }
765
- if (argv.autoFork) {
766
- args.push('--auto-fork');
767
- }
768
- if (argv.verbose) {
769
- args.push('--verbose');
770
- }
771
- if (argv.attachLogs) {
772
- args.push('--attach-logs');
773
- }
774
- if (argv.targetBranch) {
775
- args.push('--target-branch', argv.targetBranch);
776
- }
777
- if (argv.logDir) {
778
- args.push('--log-dir', argv.logDir);
779
- }
780
- if (argv.dryRun) {
781
- args.push('--dry-run');
782
- }
783
- if (argv.skipToolConnectionCheck || argv.toolConnectionCheck === false) {
784
- args.push('--skip-tool-connection-check');
785
- }
786
- if (argv.autoContinue) {
787
- args.push('--auto-continue');
788
- } else {
789
- args.push('--no-auto-continue');
790
- }
791
- if (argv.think) {
792
- args.push('--think', argv.think);
793
- }
738
+ if (argv.tool) args.push('--tool', argv.tool);
739
+ if (argv.fork) args.push('--fork');
740
+ if (argv.autoFork) args.push('--auto-fork');
741
+ if (argv.verbose) args.push('--verbose');
742
+ if (argv.attachLogs) args.push('--attach-logs');
743
+ if (argv.targetBranch) args.push('--target-branch', argv.targetBranch);
744
+ if (argv.logDir) args.push('--log-dir', argv.logDir);
745
+ if (argv.dryRun) args.push('--dry-run');
746
+ if (argv.skipToolConnectionCheck || argv.toolConnectionCheck === false) args.push('--skip-tool-connection-check');
747
+ args.push(argv.autoContinue ? '--auto-continue' : '--no-auto-continue');
748
+ if (argv.autoContinueOnLimitReset) args.push('--auto-continue-on-limit-reset');
749
+ if (argv.think) args.push('--think', argv.think);
794
750
  if (argv.promptPlanSubAgent) args.push('--prompt-plan-sub-agent');
795
- if (!argv.sentry) {
796
- args.push('--no-sentry');
797
- }
751
+ if (!argv.sentry) args.push('--no-sentry');
798
752
  if (argv.watch) args.push('--watch');
799
753
  if (argv.prefixForkNameWithOwnerName) args.push('--prefix-fork-name-with-owner-name');
800
754
  if (argv.interactiveMode) args.push('--interactive-mode');
@@ -803,8 +757,7 @@ if (isDirectExecution) {
803
757
  if (argv.promptCaseStudies) args.push('--prompt-case-studies');
804
758
  if (argv.promptPlaywrightMcp !== undefined) args.push(argv.promptPlaywrightMcp ? '--prompt-playwright-mcp' : '--no-prompt-playwright-mcp');
805
759
  // Log the actual command being executed so users can investigate/reproduce
806
- const command = `${solveCommand} "${issueUrl}" --model ${argv.model}${toolFlag}${forkFlag}${autoForkFlag}${verboseFlag}${attachLogsFlag}${targetBranchFlag}${logDirFlag}${dryRunFlag}${skipToolConnectionCheckFlag}${autoContinueFlag}${thinkFlag}${promptPlanSubAgentFlag}${noSentryFlag}${watchFlag}${prefixForkNameWithOwnerNameFlag}${interactiveModeFlag}${promptExploreSubAgentFlag}${promptIssueReportingFlag}${promptCaseStudiesFlag}${promptPlaywrightMcpFlag}`;
807
- await log(` 📋 Command: ${command}`);
760
+ await log(` 📋 Command: ${solveCommand} ${args.join(' ')}`);
808
761
 
809
762
  let exitCode = 0;
810
763
  // Create promise to handle async spawn process