@link-assistant/hive-mind 1.34.0 → 1.34.2

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,19 @@
1
1
  # @link-assistant/hive-mind
2
2
 
3
+ ## 1.34.2
4
+
5
+ ### Patch Changes
6
+
7
+ - dc92237: Set `opus` alias to target Opus 4.6 instead of Opus 4.5 (Issue #1433). Opus 4.6 offers a 1M token context window and comparable cost efficiency. The `isOpus46OrLater` function is updated to recognise the `opus` alias directly so Opus 4.6 features (128K output tokens, effort-level thinking) are applied automatically when using the default alias.
8
+
9
+ ## 1.34.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 0f02dc5: Better wording for auto-restart comment
14
+
15
+ Updated the auto-restart comment to say "Starting new session to review and commit or discard them" instead of "Starting new session to review and commit them". This makes the wording consistent with the system prompts that already instruct the AI to either COMMIT or REVERT (discard) uncommitted changes.
16
+
3
17
  ## 1.34.0
4
18
 
5
19
  ### Minor Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@link-assistant/hive-mind",
3
- "version": "1.34.0",
3
+ "version": "1.34.2",
4
4
  "description": "AI-powered issue solver and hive mind for collaborative problem solving",
5
5
  "main": "src/hive.mjs",
6
6
  "type": "module",
@@ -115,7 +115,7 @@ export const retryLimits = {
115
115
  // Claude Code CLI configurations
116
116
  // See: https://github.com/link-assistant/hive-mind/issues/1076
117
117
  // Claude models support different max output tokens:
118
- // - Opus 4.6: 128K tokens (Issue #1221)
118
+ // - Opus 4.6 (default 'opus' alias): 128K tokens (Issue #1221, Issue #1433)
119
119
  // - Sonnet 4.5, Opus 4.5, Haiku 4.5: 64K tokens
120
120
  // Setting a higher limit allows Claude to generate longer responses without hitting the limit
121
121
  export const claudeCode = {
@@ -158,8 +158,8 @@ export const isOpus46OrLater = model => {
158
158
  if (!model) return false;
159
159
  const normalizedModel = model.toLowerCase();
160
160
  // Check for explicit opus-4-6 or later versions
161
- // Note: The 'opus' alias now maps to Opus 4.5 (Issue #1238), so we only check explicit version identifiers
162
- return normalizedModel.includes('opus-4-6') || normalizedModel.includes('opus-4-7') || normalizedModel.includes('opus-5');
161
+ // Note: The 'opus' alias now maps to Opus 4.6 (Issue #1433), so we also check for the alias directly
162
+ return normalizedModel === 'opus' || normalizedModel.includes('opus-4-6') || normalizedModel.includes('opus-4-7') || normalizedModel.includes('opus-5');
163
163
  };
164
164
 
165
165
  /**
@@ -259,7 +259,7 @@ export const resolveModelId = (requestedModel, tool) => {
259
259
  const modelMaps = {
260
260
  claude: {
261
261
  sonnet: 'claude-sonnet-4-6',
262
- opus: 'claude-opus-4-5-20251101',
262
+ opus: 'claude-opus-4-6',
263
263
  haiku: 'claude-haiku-4-5-20251001',
264
264
  'opus-4-6': 'claude-opus-4-6',
265
265
  'opus-4-5': 'claude-opus-4-5-20251101',
@@ -6,10 +6,10 @@
6
6
  */
7
7
 
8
8
  // Claude models (Anthropic API)
9
- // Updated for Opus 4.5/4.6 and Sonnet 4.6 support (Issue #1221, Issue #1238, Issue #1329)
9
+ // Updated for Opus 4.5/4.6 and Sonnet 4.6 support (Issue #1221, Issue #1238, Issue #1329, Issue #1433)
10
10
  export const claudeModels = {
11
11
  sonnet: 'claude-sonnet-4-6', // Sonnet 4.6 (default, Issue #1329)
12
- opus: 'claude-opus-4-5-20251101', // Opus 4.5 (Issue #1238)
12
+ opus: 'claude-opus-4-6', // Opus 4.6 (Issue #1433)
13
13
  haiku: 'claude-haiku-4-5-20251001', // Haiku 4.5
14
14
  'haiku-3-5': 'claude-3-5-haiku-20241022', // Haiku 3.5
15
15
  'haiku-3': 'claude-3-haiku-20240307', // Haiku 3
@@ -15,7 +15,7 @@ import { log } from './lib.mjs';
15
15
  export const CLAUDE_MODELS = {
16
16
  // Short aliases (single word)
17
17
  sonnet: 'claude-sonnet-4-6', // Sonnet 4.6 (default, Issue #1329)
18
- opus: 'claude-opus-4-5-20251101', // Opus 4.5 (Issue #1238)
18
+ opus: 'claude-opus-4-6', // Opus 4.6 (Issue #1433)
19
19
  haiku: 'claude-haiku-4-5-20251001',
20
20
  'haiku-3-5': 'claude-3-5-haiku-20241022',
21
21
  'haiku-3': 'claude-3-haiku-20240307',
package/src/review.mjs CHANGED
@@ -73,7 +73,7 @@ const argv = yargs()
73
73
  description: 'Model to use (opus, sonnet, or full model ID like claude-sonnet-4-5-20250929)',
74
74
  alias: 'm',
75
75
  default: 'opus',
76
- choices: ['opus', 'sonnet', 'claude-sonnet-4-5-20250929', 'claude-opus-4-5-20251101'],
76
+ choices: ['opus', 'sonnet', 'claude-sonnet-4-5-20250929', 'claude-opus-4-6', 'claude-opus-4-5-20251101'],
77
77
  })
78
78
  .option('focus', {
79
79
  type: 'string',
package/src/solve.mjs CHANGED
@@ -1265,8 +1265,8 @@ try {
1265
1265
  await log('');
1266
1266
  await log('🔄 AUTO-RESTART: Uncommitted changes detected');
1267
1267
  await log(' Starting temporary monitoring cycle (NOT --watch mode)');
1268
- await log(' The tool will run once more to commit the changes');
1269
- await log(' Will exit automatically after changes are committed');
1268
+ await log(' The tool will run once more to commit or discard the changes');
1269
+ await log(' Will exit automatically after changes are committed or discarded');
1270
1270
  await log('');
1271
1271
  }
1272
1272
 
@@ -189,7 +189,7 @@ export const watchForFeedback = async params => {
189
189
  uncommittedFilesList = '\n\n**Uncommitted files:**\n```\n' + changes.join('\n') + '\n```';
190
190
  }
191
191
 
192
- const commentBody = `## 🔄 Auto-restart ${autoRestartCount}/${maxAutoRestartIterations}\n\nDetected uncommitted changes from previous run. Starting new session to review and commit them.${uncommittedFilesList}\n\n---\n*Auto-restart will stop after changes are committed or after ${remainingIterations} more iteration${remainingIterations !== 1 ? 's' : ''}. Please wait until working session will end and give your feedback.*`;
192
+ const commentBody = `## 🔄 Auto-restart ${autoRestartCount}/${maxAutoRestartIterations}\n\nDetected uncommitted changes from previous run. Starting new session to review and commit or discard them.${uncommittedFilesList}\n\n---\n*Auto-restart will stop after changes are committed or discarded, or after ${remainingIterations} more iteration${remainingIterations !== 1 ? 's' : ''}. Please wait until working session will end and give your feedback.*`;
193
193
  await $`gh pr comment ${prNumber} --repo ${owner}/${repo} --body ${commentBody}`;
194
194
  await log(formatAligned('', '💬 Posted auto-restart notification to PR', '', 2));
195
195
  } catch (commentError) {
package/src/task.mjs CHANGED
@@ -109,7 +109,7 @@ const argv = yargs()
109
109
  description: 'Model to use (opus, sonnet, or full model ID like claude-sonnet-4-5-20250929)',
110
110
  alias: 'm',
111
111
  default: 'sonnet',
112
- choices: ['opus', 'sonnet', 'claude-sonnet-4-5-20250929', 'claude-opus-4-5-20251101'],
112
+ choices: ['opus', 'sonnet', 'claude-sonnet-4-5-20250929', 'claude-opus-4-6', 'claude-opus-4-5-20251101'],
113
113
  })
114
114
  .option('verbose', {
115
115
  type: 'boolean',