@bike4mind/cli 0.2.36-propagate-thinking-option-to-agents.20068 → 0.2.36
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/dist/{artifactExtractor-WKVBHWHG.js → artifactExtractor-QIDCYO4J.js} +1 -1
- package/dist/{chunk-SLX2KTAZ.js → chunk-5YLGNW2B.js} +41 -134
- package/dist/{chunk-Q6LSPKZF.js → chunk-AOP6RYDY.js} +2 -2
- package/dist/{chunk-63ROENM5.js → chunk-EY65E4W4.js} +11 -1
- package/dist/{chunk-WVER5CH6.js → chunk-H7RVLAQD.js} +1 -1
- package/dist/{chunk-UEBWSMWG.js → chunk-HEUKY54H.js} +6 -6
- package/dist/{chunk-YK643YJM.js → chunk-LJG44UT3.js} +2 -2
- package/dist/{chunk-IG2XD7EO.js → chunk-NJQYWIDJ.js} +2 -2
- package/dist/{chunk-VZRKTECL.js → chunk-XIB66EG7.js} +37 -24
- package/dist/commands/doctorCommand.js +1 -1
- package/dist/commands/headlessCommand.js +7 -7
- package/dist/commands/mcpCommand.js +2 -2
- package/dist/commands/updateCommand.js +1 -1
- package/dist/{create-ORKTPHOV.js → create-IFIWNV4T.js} +3 -3
- package/dist/index.js +8 -11
- package/dist/{llmMarkdownGenerator-AQTV6MS3.js → llmMarkdownGenerator-7D3C33BP.js} +1 -1
- package/dist/{markdownGenerator-NZPYKJR3.js → markdownGenerator-C2QW7FBH.js} +1 -1
- package/dist/{mementoService-6XPXJFOI.js → mementoService-ABCCDW6T.js} +3 -3
- package/dist/{src-UGWZUEH4.js → src-D6KSYF2W.js} +2 -2
- package/dist/{src-DFT3K7YI.js → src-ZPD2SIIU.js} +1 -1
- package/dist/{subtractCredits-QIOFWBQZ.js → subtractCredits-QKF6HTX3.js} +3 -3
- package/package.json +6 -6
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
CurationArtifactType
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-EY65E4W4.js";
|
|
5
5
|
|
|
6
6
|
// ../../b4m-core/packages/services/dist/src/notebookCurationService/artifactExtractor.js
|
|
7
7
|
var ARTIFACT_TAG_REGEX = /<artifact\s+(.*?)>([\s\S]*?)<\/artifact>/gi;
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
dayjsConfig_default,
|
|
20
20
|
extractSnippetMeta,
|
|
21
21
|
settingsMap
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-EY65E4W4.js";
|
|
23
23
|
|
|
24
24
|
// ../../b4m-core/packages/utils/dist/src/storage/S3Storage.js
|
|
25
25
|
import { S3Client, PutObjectCommand, DeleteObjectCommand, GetObjectCommand, HeadObjectCommand } from "@aws-sdk/client-s3";
|
|
@@ -2643,7 +2643,7 @@ var AnthropicBackend = class {
|
|
|
2643
2643
|
rank: 5,
|
|
2644
2644
|
supportsTools: true,
|
|
2645
2645
|
trainingCutoff: "2024-07-01",
|
|
2646
|
-
deprecationDate: "
|
|
2646
|
+
deprecationDate: "2026-02-19",
|
|
2647
2647
|
description: "Anthropic's fast and efficient Claude 3.5 Haiku model with improved reasoning capabilities. Cost-effective for high-volume tasks."
|
|
2648
2648
|
},
|
|
2649
2649
|
{
|
|
@@ -2995,7 +2995,7 @@ IMPORTANT! Only when someone asks, remember that you are specifically the ${mode
|
|
|
2995
2995
|
const modelInfo = await this.getModelInfo();
|
|
2996
2996
|
const currentModelInfo = modelInfo.find((m) => m.id === model);
|
|
2997
2997
|
if (currentModelInfo?.can_think) {
|
|
2998
|
-
if (options.thinking?.enabled
|
|
2998
|
+
if (options.thinking?.enabled !== false) {
|
|
2999
2999
|
const thinkingBudget = options.thinking?.budget_tokens ?? 16e3;
|
|
3000
3000
|
apiParams.max_tokens = Math.max(apiParams.max_tokens ?? 4096, thinkingBudget + 1e3);
|
|
3001
3001
|
apiParams.temperature = 1;
|
|
@@ -3700,9 +3700,6 @@ var AWSBackend = class {
|
|
|
3700
3700
|
this.currentModel = model;
|
|
3701
3701
|
throw new Error("AWSBackend does not support text completion, only speech-to-text transcription");
|
|
3702
3702
|
}
|
|
3703
|
-
pushToolMessages(_messages, _tool, _result) {
|
|
3704
|
-
throw new Error("AWSBackend does not support tool messages");
|
|
3705
|
-
}
|
|
3706
3703
|
async getModelInfo() {
|
|
3707
3704
|
return [
|
|
3708
3705
|
{
|
|
@@ -4044,7 +4041,7 @@ var AnthropicBedrockBackend = class extends BaseBedrockBackend {
|
|
|
4044
4041
|
rank: 5,
|
|
4045
4042
|
supportsTools: true,
|
|
4046
4043
|
trainingCutoff: "2024-07-01",
|
|
4047
|
-
deprecationDate: "
|
|
4044
|
+
deprecationDate: "2026-02-19",
|
|
4048
4045
|
description: "Anthropic's Claude 3.5 Haiku model via AWS Bedrock. Fast and efficient with improved reasoning capabilities."
|
|
4049
4046
|
},
|
|
4050
4047
|
{
|
|
@@ -4354,7 +4351,7 @@ ${modelIdentity}` : modelIdentity;
|
|
|
4354
4351
|
}
|
|
4355
4352
|
const supportsThinking = model.includes("claude-3-7") || model.includes("claude-opus-4") || model.includes("claude-sonnet-4");
|
|
4356
4353
|
if (supportsThinking) {
|
|
4357
|
-
if (options.thinking?.enabled
|
|
4354
|
+
if (options.thinking?.enabled !== false) {
|
|
4358
4355
|
const thinkingBudget = options.thinking?.budget_tokens ?? 16e3;
|
|
4359
4356
|
body.max_tokens = Math.max(maxTokens, thinkingBudget + 1e3);
|
|
4360
4357
|
body.temperature = 1;
|
|
@@ -5297,9 +5294,6 @@ var BFLBackend = class {
|
|
|
5297
5294
|
this.currentModel = model;
|
|
5298
5295
|
throw new Error("BFLBackend does not support text completion, only image generation");
|
|
5299
5296
|
}
|
|
5300
|
-
pushToolMessages(_messages, _tool, _result) {
|
|
5301
|
-
throw new Error("BFLBackend does not support tool messages");
|
|
5302
|
-
}
|
|
5303
5297
|
async getModelInfo() {
|
|
5304
5298
|
return [
|
|
5305
5299
|
// BFL Models first - modern, state-of-the-art image generation
|
|
@@ -5485,17 +5479,15 @@ var GeminiBackend = class {
|
|
|
5485
5479
|
} else {
|
|
5486
5480
|
this.logger.warn("[Gemini] Missing thought_signature for tool call:", { toolName });
|
|
5487
5481
|
}
|
|
5488
|
-
const toolId = uuidv4();
|
|
5489
5482
|
toolCalls.push({
|
|
5490
|
-
id:
|
|
5483
|
+
id: uuidv4(),
|
|
5491
5484
|
name: toolName,
|
|
5492
5485
|
parameters: toolArgs,
|
|
5493
5486
|
thought_signature: thoughtSignature
|
|
5494
5487
|
});
|
|
5495
5488
|
toolsUsed.push({
|
|
5496
5489
|
name: toolName,
|
|
5497
|
-
arguments: JSON.stringify(toolArgs)
|
|
5498
|
-
id: toolId
|
|
5490
|
+
arguments: JSON.stringify(toolArgs)
|
|
5499
5491
|
});
|
|
5500
5492
|
}
|
|
5501
5493
|
async getModelInfo() {
|
|
@@ -5870,9 +5862,8 @@ var GeminiBackend = class {
|
|
|
5870
5862
|
description: tool.toolSchema.description,
|
|
5871
5863
|
parameters: {
|
|
5872
5864
|
...params,
|
|
5873
|
-
type: params.type.toUpperCase()
|
|
5865
|
+
type: params.type.toUpperCase()
|
|
5874
5866
|
// "object" -> "OBJECT"
|
|
5875
|
-
properties: params.properties ? this.sanitizeProperties(params.properties) : params.properties
|
|
5876
5867
|
}
|
|
5877
5868
|
};
|
|
5878
5869
|
})
|
|
@@ -6055,24 +6046,7 @@ var GeminiBackend = class {
|
|
|
6055
6046
|
logCacheStats(this.logger, cacheStats, { streaming: false });
|
|
6056
6047
|
}
|
|
6057
6048
|
}
|
|
6058
|
-
|
|
6059
|
-
r.candidates?.forEach((candidate) => {
|
|
6060
|
-
candidate.content?.parts?.forEach((part) => {
|
|
6061
|
-
if (part.text) {
|
|
6062
|
-
textParts.push(part.text);
|
|
6063
|
-
}
|
|
6064
|
-
if (part.functionCall) {
|
|
6065
|
-
this.registerToolCall(part.functionCall, part, toolCalls, toolsUsed);
|
|
6066
|
-
}
|
|
6067
|
-
if (part.function_call) {
|
|
6068
|
-
this.registerToolCall(part.function_call, part, toolCalls, toolsUsed);
|
|
6069
|
-
}
|
|
6070
|
-
if (part.name && part.args && !part.text) {
|
|
6071
|
-
this.registerToolCall({ name: part.name, args: part.args }, part, toolCalls, toolsUsed);
|
|
6072
|
-
}
|
|
6073
|
-
});
|
|
6074
|
-
});
|
|
6075
|
-
await callback(textParts.length ? textParts : [], {
|
|
6049
|
+
await callback(r.candidates?.map((candidate) => candidate.content?.parts?.[0]?.text) ?? [], {
|
|
6076
6050
|
inputTokens: r.usageMetadata?.promptTokenCount ?? 0,
|
|
6077
6051
|
outputTokens: r.usageMetadata?.candidatesTokenCount ?? 0,
|
|
6078
6052
|
toolsUsed,
|
|
@@ -6278,80 +6252,12 @@ var GeminiBackend = class {
|
|
|
6278
6252
|
}
|
|
6279
6253
|
];
|
|
6280
6254
|
}
|
|
6281
|
-
/**
|
|
6282
|
-
* Strip JSON Schema fields that Gemini's API doesn't support
|
|
6283
|
-
* (e.g., exclusiveMinimum, exclusiveMaximum, additionalProperties on nested objects).
|
|
6284
|
-
*/
|
|
6285
|
-
sanitizeProperties(properties) {
|
|
6286
|
-
const unsupportedFields = [
|
|
6287
|
-
"exclusiveMinimum",
|
|
6288
|
-
"exclusiveMaximum",
|
|
6289
|
-
"minLength",
|
|
6290
|
-
"maxLength",
|
|
6291
|
-
"pattern",
|
|
6292
|
-
"minItems",
|
|
6293
|
-
"maxItems",
|
|
6294
|
-
"uniqueItems",
|
|
6295
|
-
"additionalProperties",
|
|
6296
|
-
"default",
|
|
6297
|
-
"$schema"
|
|
6298
|
-
];
|
|
6299
|
-
const sanitized = {};
|
|
6300
|
-
for (const [key, value] of Object.entries(properties)) {
|
|
6301
|
-
if (value && typeof value === "object" && !Array.isArray(value)) {
|
|
6302
|
-
const prop = { ...value };
|
|
6303
|
-
for (const field of unsupportedFields) {
|
|
6304
|
-
delete prop[field];
|
|
6305
|
-
}
|
|
6306
|
-
if (prop.properties && typeof prop.properties === "object") {
|
|
6307
|
-
prop.properties = this.sanitizeProperties(prop.properties);
|
|
6308
|
-
}
|
|
6309
|
-
if (prop.items && typeof prop.items === "object") {
|
|
6310
|
-
const items = { ...prop.items };
|
|
6311
|
-
for (const field of unsupportedFields) {
|
|
6312
|
-
delete items[field];
|
|
6313
|
-
}
|
|
6314
|
-
if (items.properties && typeof items.properties === "object") {
|
|
6315
|
-
items.properties = this.sanitizeProperties(items.properties);
|
|
6316
|
-
}
|
|
6317
|
-
prop.items = items;
|
|
6318
|
-
}
|
|
6319
|
-
sanitized[key] = prop;
|
|
6320
|
-
} else {
|
|
6321
|
-
sanitized[key] = value;
|
|
6322
|
-
}
|
|
6323
|
-
}
|
|
6324
|
-
return sanitized;
|
|
6325
|
-
}
|
|
6326
6255
|
getGenerationConfig(model, options) {
|
|
6327
6256
|
return {
|
|
6328
6257
|
temperature: options.temperature ?? 0.9,
|
|
6329
6258
|
maxOutputTokens: options.maxTokens ?? 8192
|
|
6330
6259
|
};
|
|
6331
6260
|
}
|
|
6332
|
-
pushToolMessages(messages, tool, result) {
|
|
6333
|
-
messages.push({
|
|
6334
|
-
role: "assistant",
|
|
6335
|
-
content: [
|
|
6336
|
-
{
|
|
6337
|
-
type: "tool_use",
|
|
6338
|
-
id: tool.id,
|
|
6339
|
-
name: tool.name,
|
|
6340
|
-
input: JSON.parse(tool.parameters || "{}")
|
|
6341
|
-
}
|
|
6342
|
-
]
|
|
6343
|
-
});
|
|
6344
|
-
messages.push({
|
|
6345
|
-
role: "tool",
|
|
6346
|
-
content: [
|
|
6347
|
-
{
|
|
6348
|
-
type: "tool_result",
|
|
6349
|
-
tool_use_id: tool.id,
|
|
6350
|
-
content: result
|
|
6351
|
-
}
|
|
6352
|
-
]
|
|
6353
|
-
});
|
|
6354
|
-
}
|
|
6355
6261
|
};
|
|
6356
6262
|
|
|
6357
6263
|
// ../../b4m-core/packages/utils/dist/src/llm/ollamaBackend.js
|
|
@@ -6475,27 +6381,29 @@ var OllamaBackend = class {
|
|
|
6475
6381
|
};
|
|
6476
6382
|
});
|
|
6477
6383
|
}
|
|
6478
|
-
|
|
6479
|
-
|
|
6480
|
-
|
|
6481
|
-
|
|
6482
|
-
|
|
6483
|
-
|
|
6484
|
-
|
|
6485
|
-
|
|
6486
|
-
|
|
6487
|
-
|
|
6488
|
-
|
|
6489
|
-
|
|
6490
|
-
|
|
6491
|
-
|
|
6492
|
-
|
|
6493
|
-
|
|
6494
|
-
|
|
6495
|
-
|
|
6496
|
-
|
|
6497
|
-
|
|
6498
|
-
}
|
|
6384
|
+
// TODO: Tool support will be added in a future epic
|
|
6385
|
+
// private pushToolMessages(messages: IMessage[], tool: IChoiceEndToolUse['tool'], result: string) {
|
|
6386
|
+
// const toolCallMessage: ExtendedIMessage = {
|
|
6387
|
+
// content: '',
|
|
6388
|
+
// role: 'assistant',
|
|
6389
|
+
// tool_calls: [
|
|
6390
|
+
// {
|
|
6391
|
+
// id: tool.id,
|
|
6392
|
+
// type: 'function',
|
|
6393
|
+
// function: {
|
|
6394
|
+
// name: tool.name,
|
|
6395
|
+
// arguments: tool.parameters,
|
|
6396
|
+
// },
|
|
6397
|
+
// },
|
|
6398
|
+
// ],
|
|
6399
|
+
// };
|
|
6400
|
+
// const resultMessage: ExtendedIMessage = {
|
|
6401
|
+
// role: 'tool',
|
|
6402
|
+
// content: JSON.stringify({ result }),
|
|
6403
|
+
// tool_call_id: tool.id,
|
|
6404
|
+
// };
|
|
6405
|
+
// messages.push(toolCallMessage, resultMessage);
|
|
6406
|
+
// }
|
|
6499
6407
|
// private formatTools(tools: ICompletionOptionTools[]): Tool[] {
|
|
6500
6408
|
// return tools.map(tool => ({
|
|
6501
6409
|
// type: 'function' as const,
|
|
@@ -7261,8 +7169,7 @@ var OpenAIBackend = class {
|
|
|
7261
7169
|
if (toolCall.function.arguments) {
|
|
7262
7170
|
toolsUsed.push({
|
|
7263
7171
|
name: toolCall.function.name,
|
|
7264
|
-
arguments: toolCall.function.arguments
|
|
7265
|
-
id: toolCall.id
|
|
7172
|
+
arguments: toolCall.function.arguments
|
|
7266
7173
|
});
|
|
7267
7174
|
}
|
|
7268
7175
|
}
|
|
@@ -7436,8 +7343,7 @@ var OpenAIBackend = class {
|
|
|
7436
7343
|
if (tool.name && tool.parameters) {
|
|
7437
7344
|
toolsUsed.push({
|
|
7438
7345
|
name: tool.name,
|
|
7439
|
-
arguments: tool.parameters
|
|
7440
|
-
id: tool.id
|
|
7346
|
+
arguments: tool.parameters
|
|
7441
7347
|
});
|
|
7442
7348
|
}
|
|
7443
7349
|
}
|
|
@@ -7820,7 +7726,7 @@ var XAIBackend = class {
|
|
|
7820
7726
|
parameters.tools = this.formatTools(options.tools);
|
|
7821
7727
|
}
|
|
7822
7728
|
const supportsThinking = await this.modelSupportsThinking(model);
|
|
7823
|
-
const thinkingEnabled = supportsThinking && options.thinking?.enabled
|
|
7729
|
+
const thinkingEnabled = supportsThinking && options.thinking?.enabled !== false;
|
|
7824
7730
|
const cacheStrategy = options.cacheStrategy;
|
|
7825
7731
|
let headers = {};
|
|
7826
7732
|
if (cacheStrategy?.enableCaching) {
|
|
@@ -7858,8 +7764,7 @@ var XAIBackend = class {
|
|
|
7858
7764
|
if (toolCall.function.arguments) {
|
|
7859
7765
|
toolsUsed.push({
|
|
7860
7766
|
name: toolCall.function.name,
|
|
7861
|
-
arguments: toolCall.function.arguments
|
|
7862
|
-
id: toolCall.id
|
|
7767
|
+
arguments: toolCall.function.arguments
|
|
7863
7768
|
});
|
|
7864
7769
|
}
|
|
7865
7770
|
}
|
|
@@ -8000,12 +7905,11 @@ var XAIBackend = class {
|
|
|
8000
7905
|
}
|
|
8001
7906
|
if (func.length > 0) {
|
|
8002
7907
|
for await (const tool of func) {
|
|
8003
|
-
const { name, parameters: parameters2
|
|
7908
|
+
const { name, parameters: parameters2 } = tool;
|
|
8004
7909
|
if (name) {
|
|
8005
7910
|
toolsUsed.push({
|
|
8006
7911
|
name,
|
|
8007
|
-
arguments: parameters2 || "{}"
|
|
8008
|
-
id
|
|
7912
|
+
arguments: parameters2 || "{}"
|
|
8009
7913
|
});
|
|
8010
7914
|
}
|
|
8011
7915
|
}
|
|
@@ -12294,6 +12198,9 @@ function findAutomaticFallback(originalModel, availableModels, apiKeyTable, logg
|
|
|
12294
12198
|
"claude-opus-4-6": ["claude-sonnet-4-6", "claude-sonnet-4-5-20250929", "gpt-5", "claude-haiku-4-5-20251001"],
|
|
12295
12199
|
"claude-sonnet-4-6": ["claude-sonnet-4-5-20250929", "claude-opus-4-5-20251101", "gpt-5"],
|
|
12296
12200
|
"claude-sonnet-4-5-20250929": ["claude-sonnet-4-6", "claude-haiku-4-5-20251001", "gpt-5"],
|
|
12201
|
+
// Deprecated Claude models fallback to newer versions
|
|
12202
|
+
"claude-3-5-haiku-20241022": ["claude-haiku-4-5-20251001", "gpt-4o-mini"],
|
|
12203
|
+
"us.anthropic.claude-3-5-haiku-20241022-v1:0": ["us.anthropic.claude-haiku-4-5-20251001-v1:0", "gpt-4o-mini"],
|
|
12297
12204
|
// Claude models fallback to other Claude models or GPT
|
|
12298
12205
|
"claude-3-5-sonnet-20241022": ["claude-3-opus-20240229", "gpt-4o", "claude-3-sonnet-20240229"],
|
|
12299
12206
|
"claude-3-opus-20240229": ["claude-3-5-sonnet-20241022", "gpt-4o", "claude-3-sonnet-20240229"],
|
|
@@ -7,11 +7,11 @@ import {
|
|
|
7
7
|
getSettingsMap,
|
|
8
8
|
getSettingsValue,
|
|
9
9
|
secureParameters
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-5YLGNW2B.js";
|
|
11
11
|
import {
|
|
12
12
|
KnowledgeType,
|
|
13
13
|
SupportedFabFileMimeTypes
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-EY65E4W4.js";
|
|
15
15
|
|
|
16
16
|
// ../../b4m-core/packages/services/dist/src/fabFileService/create.js
|
|
17
17
|
import { z } from "zod";
|
|
@@ -9170,7 +9170,17 @@ var atlassianDescriptions = {
|
|
|
9170
9170
|
jira_get_current_user: "Get information about the currently authenticated Jira user. Returns user account details.",
|
|
9171
9171
|
jira_list_watchers: "Get all watchers for a Jira issue. Returns the list of users watching the issue and the total watcher count.",
|
|
9172
9172
|
jira_add_watcher: "Add a user as a watcher to a Jira issue. Requires the user's Atlassian account ID.",
|
|
9173
|
-
jira_remove_watcher: "Remove a watcher from a Jira issue. Requires the user's Atlassian account ID."
|
|
9173
|
+
jira_remove_watcher: "Remove a watcher from a Jira issue. Requires the user's Atlassian account ID.",
|
|
9174
|
+
// Jira Attachment tools
|
|
9175
|
+
jira_list_attachments: "List all attachments on a Jira issue. Returns filenames, sizes, MIME types, authors, and download URLs.",
|
|
9176
|
+
jira_upload_attachment: "Upload a file attachment to a Jira issue. Supports Slack files and base64-encoded content (max 20MB).",
|
|
9177
|
+
jira_download_attachment: "Download a Jira attachment by ID. Returns base64-encoded content.",
|
|
9178
|
+
jira_delete_attachment: "\u26A0\uFE0F DESTRUCTIVE PREVIEW-FIRST TOOL: ALWAYS call TWICE. First call: MUST use confirmed=false (or omit) to show preview. Second call: Use confirmed=true ONLY after user explicitly confirms. Delete an attachment from a Jira issue.",
|
|
9179
|
+
// Confluence Attachment tools
|
|
9180
|
+
confluence_list_attachments: "List all attachments on a Confluence page. Returns filenames, sizes, and MIME types.",
|
|
9181
|
+
confluence_upload_attachment: "Upload a file to a Confluence page. Supports Slack files and base64 (max 25MB). Auto-embeds in page.",
|
|
9182
|
+
confluence_download_attachment: "Download a Confluence attachment by ID. Returns base64-encoded content.",
|
|
9183
|
+
confluence_delete_attachment: "\u26A0\uFE0F DESTRUCTIVE PREVIEW-FIRST TOOL: ALWAYS call TWICE. First call: MUST use confirmed=false (or omit) to show preview. Second call: Use confirmed=true ONLY after user explicitly confirms. Delete an attachment from a Confluence page."
|
|
9174
9184
|
};
|
|
9175
9185
|
var MCP_PROVIDER_METADATA = {
|
|
9176
9186
|
atlassian: {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// package.json
|
|
4
4
|
var package_default = {
|
|
5
5
|
name: "@bike4mind/cli",
|
|
6
|
-
version: "0.2.36
|
|
6
|
+
version: "0.2.36",
|
|
7
7
|
type: "module",
|
|
8
8
|
description: "Interactive CLI tool for Bike4Mind with ReAct agents",
|
|
9
9
|
license: "UNLICENSED",
|
|
@@ -114,10 +114,10 @@ var package_default = {
|
|
|
114
114
|
},
|
|
115
115
|
devDependencies: {
|
|
116
116
|
"@bike4mind/agents": "0.1.0",
|
|
117
|
-
"@bike4mind/common": "2.
|
|
118
|
-
"@bike4mind/mcp": "1.32.5
|
|
119
|
-
"@bike4mind/services": "2.54.1
|
|
120
|
-
"@bike4mind/utils": "2.
|
|
117
|
+
"@bike4mind/common": "2.58.0",
|
|
118
|
+
"@bike4mind/mcp": "1.32.5",
|
|
119
|
+
"@bike4mind/services": "2.54.1",
|
|
120
|
+
"@bike4mind/utils": "2.11.0",
|
|
121
121
|
"@types/better-sqlite3": "^7.6.13",
|
|
122
122
|
"@types/diff": "^5.0.9",
|
|
123
123
|
"@types/jsonwebtoken": "^9.0.4",
|
|
@@ -138,7 +138,7 @@ var package_default = {
|
|
|
138
138
|
optionalDependencies: {
|
|
139
139
|
"@vscode/ripgrep": "^1.17.0"
|
|
140
140
|
},
|
|
141
|
-
gitHead: "
|
|
141
|
+
gitHead: "06f1ccd1ed28502c0fd1de725763584658e9c014"
|
|
142
142
|
};
|
|
143
143
|
|
|
144
144
|
// src/utils/updateChecker.ts
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
BadRequestError,
|
|
4
4
|
secureParameters
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-5YLGNW2B.js";
|
|
6
6
|
import {
|
|
7
7
|
CompletionApiUsageTransaction,
|
|
8
8
|
GenericCreditDeductTransaction,
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
ToolUsageTransaction,
|
|
14
14
|
TransferCreditTransaction,
|
|
15
15
|
VideoGenerationUsageTransaction
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-EY65E4W4.js";
|
|
17
17
|
|
|
18
18
|
// ../../b4m-core/packages/services/dist/src/creditService/subtractCredits.js
|
|
19
19
|
import { z } from "zod";
|
|
@@ -6,12 +6,12 @@ import {
|
|
|
6
6
|
getSettingsByNames,
|
|
7
7
|
obfuscateApiKey,
|
|
8
8
|
secureParameters
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5YLGNW2B.js";
|
|
10
10
|
import {
|
|
11
11
|
ApiKeyType,
|
|
12
12
|
MementoTier,
|
|
13
13
|
isSupportedEmbeddingModel
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-EY65E4W4.js";
|
|
15
15
|
|
|
16
16
|
// ../../b4m-core/packages/services/dist/src/apiKeyService/get.js
|
|
17
17
|
import { z } from "zod";
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
getOpenWeatherKey,
|
|
5
5
|
getSerperKey,
|
|
6
6
|
getWolframAlphaKey
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-NJQYWIDJ.js";
|
|
8
8
|
import {
|
|
9
9
|
BFLImageService,
|
|
10
10
|
BaseStorage,
|
|
@@ -16,14 +16,14 @@ import {
|
|
|
16
16
|
OpenAIBackend,
|
|
17
17
|
OpenAIImageService,
|
|
18
18
|
XAIImageService
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-5YLGNW2B.js";
|
|
20
20
|
import {
|
|
21
21
|
Logger
|
|
22
22
|
} from "./chunk-PFBYGCOW.js";
|
|
23
23
|
import {
|
|
24
24
|
ConfigStore,
|
|
25
25
|
logger
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-H7RVLAQD.js";
|
|
27
27
|
import {
|
|
28
28
|
AiEvents,
|
|
29
29
|
ApiKeyEvents,
|
|
@@ -80,7 +80,7 @@ import {
|
|
|
80
80
|
getMcpProviderMetadata,
|
|
81
81
|
getViewById,
|
|
82
82
|
resolveNavigationIntents
|
|
83
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-EY65E4W4.js";
|
|
84
84
|
|
|
85
85
|
// src/utils/fileSearch.ts
|
|
86
86
|
import * as fs from "fs";
|
|
@@ -2146,19 +2146,34 @@ Remember: You are an autonomous AGENT. Act independently and solve problems proa
|
|
|
2146
2146
|
}
|
|
2147
2147
|
}
|
|
2148
2148
|
/**
|
|
2149
|
-
* Build and append tool call/result messages for the conversation history
|
|
2150
|
-
* Delegates to the backend's pushToolMessages so each provider formats
|
|
2151
|
-
* messages according to its own API requirements.
|
|
2149
|
+
* Build and append tool call/result messages for the conversation history
|
|
2152
2150
|
*/
|
|
2153
|
-
appendToolMessages(messages, toolUse, observation,
|
|
2151
|
+
appendToolMessages(messages, toolUse, observation, thinkingBlocks) {
|
|
2154
2152
|
const params = this.parseToolArguments(toolUse.arguments);
|
|
2155
|
-
const
|
|
2156
|
-
const
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2153
|
+
const msgToolCallId = `${toolUse.name}_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
|
|
2154
|
+
const assistantContent = [
|
|
2155
|
+
...thinkingBlocks,
|
|
2156
|
+
{
|
|
2157
|
+
type: "tool_use",
|
|
2158
|
+
id: msgToolCallId,
|
|
2159
|
+
name: toolUse.name,
|
|
2160
|
+
input: params
|
|
2161
|
+
}
|
|
2162
|
+
];
|
|
2163
|
+
messages.push({
|
|
2164
|
+
role: "assistant",
|
|
2165
|
+
content: assistantContent
|
|
2166
|
+
});
|
|
2167
|
+
messages.push({
|
|
2168
|
+
role: "user",
|
|
2169
|
+
content: [
|
|
2170
|
+
{
|
|
2171
|
+
type: "tool_result",
|
|
2172
|
+
tool_use_id: msgToolCallId,
|
|
2173
|
+
content: observation
|
|
2174
|
+
}
|
|
2175
|
+
]
|
|
2176
|
+
});
|
|
2162
2177
|
}
|
|
2163
2178
|
};
|
|
2164
2179
|
|
|
@@ -13313,7 +13328,7 @@ Focus on actionable, specific feedback referencing exact code locations. Your re
|
|
|
13313
13328
|
// ../../b4m-core/packages/services/dist/src/llm/agents/ProjectManagerAgent.js
|
|
13314
13329
|
var ProjectManagerAgent = (config) => ({
|
|
13315
13330
|
name: "project_manager",
|
|
13316
|
-
description: "Project management via Jira and Confluence (create issues, search, update status, write docs). ALWAYS delegate Jira/Confluence requests to this agent \u2014 you do not have direct access to these tools",
|
|
13331
|
+
description: "Project management via Jira and Confluence (create issues, search, update status, manage attachments, write docs). ALWAYS delegate Jira/Confluence requests to this agent \u2014 you do not have direct access to these tools",
|
|
13317
13332
|
model: config?.model ?? ChatModels.CLAUDE_4_6_SONNET_BEDROCK,
|
|
13318
13333
|
fallbackModels: [ChatModels.GPT4_1, ChatModels.GPT4_1_MINI],
|
|
13319
13334
|
defaultThoroughness: config?.defaultThoroughness ?? "medium",
|
|
@@ -13330,11 +13345,13 @@ var ProjectManagerAgent = (config) => ({
|
|
|
13330
13345
|
- Create, update, and transition issues
|
|
13331
13346
|
- Add comments and manage watchers
|
|
13332
13347
|
- List projects and issue types
|
|
13348
|
+
- List, upload, download, and delete attachments on issues
|
|
13333
13349
|
|
|
13334
13350
|
### Confluence
|
|
13335
13351
|
- Search for documentation
|
|
13336
13352
|
- Create and update pages
|
|
13337
13353
|
- Browse spaces and page hierarchies
|
|
13354
|
+
- List, upload, download, and delete attachments on pages
|
|
13338
13355
|
|
|
13339
13356
|
### Account & Identity
|
|
13340
13357
|
- Check connected Jira account using \`atlassian__jira_get_current_user\`
|
|
@@ -13349,6 +13366,7 @@ var ProjectManagerAgent = (config) => ({
|
|
|
13349
13366
|
5. Always confirm destructive operations (delete) with the user before proceeding
|
|
13350
13367
|
6. When asked about the connected Atlassian account call BOTH \`atlassian__jira_get_current_user\` and \`atlassian__confluence_get_current_user\` to show the full picture. Present results clearly labeled by product, and note if either service is not connected. NEVER say you don't have access to account information \u2014 you DO have these tools.
|
|
13351
13368
|
7. When asked specifically about "Jira account" or "Confluence account" only, use the respective tool alone.
|
|
13369
|
+
8. When asked about attachments, ALWAYS use the attachment tools \u2014 never guess or fabricate attachment details. For uploading files shared in Slack, pass the \`fabFileId\` from the message context to \`atlassian__jira_upload_attachment\` or \`atlassian__confluence_upload_attachment\`.
|
|
13352
13370
|
|
|
13353
13371
|
## Output Format
|
|
13354
13372
|
Provide a clear summary of actions taken:
|
|
@@ -13364,6 +13382,7 @@ var GithubManagerAgent = (config) => ({
|
|
|
13364
13382
|
name: "github_manager",
|
|
13365
13383
|
description: "GitHub operations (issues, pull requests, code search, branches, workflows, reviews). ALWAYS delegate GitHub requests to this agent \u2014 you do not have direct access to these tools",
|
|
13366
13384
|
model: config?.model ?? ChatModels.CLAUDE_4_6_SONNET_BEDROCK,
|
|
13385
|
+
fallbackModels: [ChatModels.GPT4_1, ChatModels.GPT4_1_MINI],
|
|
13367
13386
|
defaultThoroughness: config?.defaultThoroughness ?? "medium",
|
|
13368
13387
|
maxIterations: { quick: 3, medium: 8, very_thorough: 15 },
|
|
13369
13388
|
allowedTools: [...config?.extraAllowedTools ?? []],
|
|
@@ -15885,9 +15904,6 @@ var ServerLlmBackend = class {
|
|
|
15885
15904
|
});
|
|
15886
15905
|
});
|
|
15887
15906
|
}
|
|
15888
|
-
pushToolMessages(_messages, _tool, _result) {
|
|
15889
|
-
throw new Error("ServerLlmBackend does not support pushToolMessages \u2014 tools are executed server-side");
|
|
15890
|
-
}
|
|
15891
15907
|
/**
|
|
15892
15908
|
* Get available models from server
|
|
15893
15909
|
* Fetches from /api/models and filters for CLI-compatible models
|
|
@@ -16107,9 +16123,6 @@ var WebSocketLlmBackend = class {
|
|
|
16107
16123
|
});
|
|
16108
16124
|
});
|
|
16109
16125
|
}
|
|
16110
|
-
pushToolMessages(_messages, _tool, _result) {
|
|
16111
|
-
throw new Error("WebSocketLlmBackend does not support pushToolMessages \u2014 tools are executed server-side");
|
|
16112
|
-
}
|
|
16113
16126
|
/**
|
|
16114
16127
|
* Get available models from server (REST call, not streaming).
|
|
16115
16128
|
* Delegates to ApiClient -- same as ServerLlmBackend.
|
|
@@ -17158,7 +17171,7 @@ var MODEL_ALIASES = {
|
|
|
17158
17171
|
"claude-4.1-opus": ChatModels.CLAUDE_4_1_OPUS,
|
|
17159
17172
|
"claude-3.7-sonnet": ChatModels.CLAUDE_3_7_SONNET_ANTHROPIC,
|
|
17160
17173
|
"claude-3.5-sonnet": ChatModels.CLAUDE_3_5_SONNET_ANTHROPIC,
|
|
17161
|
-
"claude-3.5-haiku": ChatModels.
|
|
17174
|
+
"claude-3.5-haiku": ChatModels.CLAUDE_4_5_HAIKU,
|
|
17162
17175
|
"claude-3-opus": ChatModels.CLAUDE_3_OPUS,
|
|
17163
17176
|
// ===================
|
|
17164
17177
|
// OpenAI Models
|
|
@@ -17436,7 +17449,7 @@ var AgentStore = class {
|
|
|
17436
17449
|
await fs13.mkdir(targetDir, { recursive: true });
|
|
17437
17450
|
const template = `---
|
|
17438
17451
|
description: ${name} agent description
|
|
17439
|
-
model: ${ChatModels.
|
|
17452
|
+
model: ${ChatModels.CLAUDE_4_5_HAIKU}
|
|
17440
17453
|
allowed-tools:
|
|
17441
17454
|
- file_read
|
|
17442
17455
|
- grep_search
|
|
@@ -36,20 +36,20 @@ import {
|
|
|
36
36
|
isReadOnlyTool,
|
|
37
37
|
loadContextFiles,
|
|
38
38
|
setWebSocketToolExecutor
|
|
39
|
-
} from "../chunk-
|
|
39
|
+
} from "../chunk-XIB66EG7.js";
|
|
40
40
|
import "../chunk-BDQBOLYG.js";
|
|
41
|
-
import "../chunk-
|
|
41
|
+
import "../chunk-NJQYWIDJ.js";
|
|
42
42
|
import "../chunk-GQGOWACU.js";
|
|
43
|
-
import "../chunk-
|
|
44
|
-
import "../chunk-
|
|
45
|
-
import "../chunk-
|
|
43
|
+
import "../chunk-LJG44UT3.js";
|
|
44
|
+
import "../chunk-AOP6RYDY.js";
|
|
45
|
+
import "../chunk-5YLGNW2B.js";
|
|
46
46
|
import "../chunk-PFBYGCOW.js";
|
|
47
47
|
import "../chunk-BPFEGDC7.js";
|
|
48
48
|
import {
|
|
49
49
|
ConfigStore,
|
|
50
50
|
logger
|
|
51
|
-
} from "../chunk-
|
|
52
|
-
import "../chunk-
|
|
51
|
+
} from "../chunk-H7RVLAQD.js";
|
|
52
|
+
import "../chunk-EY65E4W4.js";
|
|
53
53
|
import {
|
|
54
54
|
DEFAULT_SANDBOX_CONFIG
|
|
55
55
|
} from "../chunk-4BIBE3J7.js";
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
createFabFile,
|
|
4
4
|
createFabFileSchema
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-AOP6RYDY.js";
|
|
6
|
+
import "./chunk-5YLGNW2B.js";
|
|
7
7
|
import "./chunk-PFBYGCOW.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-EY65E4W4.js";
|
|
9
9
|
export {
|
|
10
10
|
createFabFile,
|
|
11
11
|
createFabFileSchema
|
package/dist/index.js
CHANGED
|
@@ -46,23 +46,23 @@ import {
|
|
|
46
46
|
setWebSocketToolExecutor,
|
|
47
47
|
substituteArguments,
|
|
48
48
|
warmFileCache
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-XIB66EG7.js";
|
|
50
50
|
import "./chunk-BDQBOLYG.js";
|
|
51
|
-
import "./chunk-
|
|
51
|
+
import "./chunk-NJQYWIDJ.js";
|
|
52
52
|
import "./chunk-GQGOWACU.js";
|
|
53
|
-
import "./chunk-
|
|
54
|
-
import "./chunk-
|
|
55
|
-
import "./chunk-
|
|
53
|
+
import "./chunk-LJG44UT3.js";
|
|
54
|
+
import "./chunk-AOP6RYDY.js";
|
|
55
|
+
import "./chunk-5YLGNW2B.js";
|
|
56
56
|
import "./chunk-PFBYGCOW.js";
|
|
57
57
|
import "./chunk-BPFEGDC7.js";
|
|
58
58
|
import {
|
|
59
59
|
ConfigStore,
|
|
60
60
|
logger
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-H7RVLAQD.js";
|
|
62
62
|
import {
|
|
63
63
|
checkForUpdate,
|
|
64
64
|
package_default
|
|
65
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-HEUKY54H.js";
|
|
66
66
|
import {
|
|
67
67
|
selectActiveBackgroundAgents,
|
|
68
68
|
useCliStore
|
|
@@ -70,7 +70,7 @@ import {
|
|
|
70
70
|
import {
|
|
71
71
|
CREDIT_DEDUCT_TRANSACTION_TYPES,
|
|
72
72
|
ChatModels
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-EY65E4W4.js";
|
|
74
74
|
import "./chunk-4BIBE3J7.js";
|
|
75
75
|
|
|
76
76
|
// src/index.tsx
|
|
@@ -2454,9 +2454,6 @@ Please acknowledge these background agent results and incorporate them into your
|
|
|
2454
2454
|
}
|
|
2455
2455
|
return this.inner.complete(model, effectiveMessages, options, callback);
|
|
2456
2456
|
}
|
|
2457
|
-
pushToolMessages(messages, tool, result) {
|
|
2458
|
-
return this.inner.pushToolMessages(messages, tool, result);
|
|
2459
|
-
}
|
|
2460
2457
|
async getModelInfo() {
|
|
2461
2458
|
return this.inner.getModelInfo();
|
|
2462
2459
|
}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
findMostSimilarMemento,
|
|
4
4
|
getRelevantMementos
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-NJQYWIDJ.js";
|
|
6
|
+
import "./chunk-5YLGNW2B.js";
|
|
7
7
|
import "./chunk-PFBYGCOW.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-EY65E4W4.js";
|
|
9
9
|
export {
|
|
10
10
|
findMostSimilarMemento,
|
|
11
11
|
getRelevantMementos
|
|
@@ -139,7 +139,7 @@ import {
|
|
|
139
139
|
validateUrlForFetch,
|
|
140
140
|
warmUpSettingsCache,
|
|
141
141
|
withRetry
|
|
142
|
-
} from "./chunk-
|
|
142
|
+
} from "./chunk-5YLGNW2B.js";
|
|
143
143
|
import {
|
|
144
144
|
Logger,
|
|
145
145
|
NotificationDeduplicator,
|
|
@@ -152,7 +152,7 @@ import {
|
|
|
152
152
|
buildRateLimitLogEntry,
|
|
153
153
|
isNearLimit,
|
|
154
154
|
parseRateLimitHeaders
|
|
155
|
-
} from "./chunk-
|
|
155
|
+
} from "./chunk-EY65E4W4.js";
|
|
156
156
|
export {
|
|
157
157
|
AIVideoService,
|
|
158
158
|
AWSBackend,
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
SubtractCreditsSchema,
|
|
4
4
|
subtractCredits
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-LJG44UT3.js";
|
|
6
|
+
import "./chunk-5YLGNW2B.js";
|
|
7
7
|
import "./chunk-PFBYGCOW.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-EY65E4W4.js";
|
|
9
9
|
export {
|
|
10
10
|
SubtractCreditsSchema,
|
|
11
11
|
subtractCredits
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bike4mind/cli",
|
|
3
|
-
"version": "0.2.36
|
|
3
|
+
"version": "0.2.36",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Interactive CLI tool for Bike4Mind with ReAct agents",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -111,10 +111,10 @@
|
|
|
111
111
|
},
|
|
112
112
|
"devDependencies": {
|
|
113
113
|
"@bike4mind/agents": "0.1.0",
|
|
114
|
-
"@bike4mind/common": "2.
|
|
115
|
-
"@bike4mind/mcp": "1.32.5
|
|
116
|
-
"@bike4mind/services": "2.54.1
|
|
117
|
-
"@bike4mind/utils": "2.
|
|
114
|
+
"@bike4mind/common": "2.58.0",
|
|
115
|
+
"@bike4mind/mcp": "1.32.5",
|
|
116
|
+
"@bike4mind/services": "2.54.1",
|
|
117
|
+
"@bike4mind/utils": "2.11.0",
|
|
118
118
|
"@types/better-sqlite3": "^7.6.13",
|
|
119
119
|
"@types/diff": "^5.0.9",
|
|
120
120
|
"@types/jsonwebtoken": "^9.0.4",
|
|
@@ -135,5 +135,5 @@
|
|
|
135
135
|
"optionalDependencies": {
|
|
136
136
|
"@vscode/ripgrep": "^1.17.0"
|
|
137
137
|
},
|
|
138
|
-
"gitHead": "
|
|
138
|
+
"gitHead": "06f1ccd1ed28502c0fd1de725763584658e9c014"
|
|
139
139
|
}
|