@probelabs/visor 0.1.158 → 0.1.159
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/defaults/assistant.yaml +9 -0
- package/dist/defaults/assistant.yaml +9 -0
- package/dist/index.js +100 -207
- package/dist/output/traces/{run-2026-03-05T09-35-31-694Z.ndjson → run-2026-03-05T15-45-37-714Z.ndjson} +84 -84
- package/dist/output/traces/{run-2026-03-05T09-36-16-833Z.ndjson → run-2026-03-05T15-46-23-118Z.ndjson} +1858 -1858
- package/dist/sdk/{check-provider-registry-IRHRMYUJ.mjs → check-provider-registry-74VLAETF.mjs} +5 -5
- package/dist/sdk/{check-provider-registry-LVXLROAJ.mjs → check-provider-registry-CZLHVHZZ.mjs} +5 -5
- package/dist/sdk/{check-provider-registry-2GTN7M37.mjs → check-provider-registry-UVLGKORU.mjs} +5 -5
- package/dist/sdk/{chunk-FRVHW725.mjs → chunk-5N33URMM.mjs} +3 -3
- package/dist/sdk/{chunk-FRTHLKIG.mjs → chunk-A3B4LEGZ.mjs} +15 -15
- package/dist/sdk/{chunk-ZWPQV2VT.mjs → chunk-AW3IHBCI.mjs} +15 -15
- package/dist/sdk/{chunk-ILIWDV37.mjs → chunk-ITZWA2RF.mjs} +2 -2
- package/dist/sdk/{chunk-QRTO7XNW.mjs → chunk-IVTSD7ZW.mjs} +15 -15
- package/dist/sdk/{chunk-IJGA5TFA.mjs → chunk-PSZI5NZL.mjs} +2 -2
- package/dist/sdk/{chunk-TLXAIQLH.mjs → chunk-PZONH3RK.mjs} +3 -3
- package/dist/sdk/{chunk-TLXAIQLH.mjs.map → chunk-PZONH3RK.mjs.map} +1 -1
- package/dist/sdk/{chunk-SPCGI24K.mjs → chunk-QSY3XLA3.mjs} +3 -3
- package/dist/sdk/{chunk-GQ7H7E4Y.mjs → chunk-WYD5ISLQ.mjs} +2 -2
- package/dist/sdk/{chunk-GQ7H7E4Y.mjs.map → chunk-WYD5ISLQ.mjs.map} +1 -1
- package/dist/sdk/{failure-condition-evaluator-ORMMBR23.mjs → failure-condition-evaluator-5DJZEGYT.mjs} +3 -3
- package/dist/sdk/{failure-condition-evaluator-LYFZMQ6Y.mjs → failure-condition-evaluator-LQ5NUFZN.mjs} +3 -3
- package/dist/sdk/{github-frontend-NNWL7IXV.mjs → github-frontend-TJ6TGLUW.mjs} +3 -3
- package/dist/sdk/{github-frontend-XKPAYXOT.mjs → github-frontend-YSRVB5FS.mjs} +3 -3
- package/dist/sdk/{host-MICUIU7J.mjs → host-VJWSCD7X.mjs} +2 -2
- package/dist/sdk/{host-YKTAWW33.mjs → host-YG6LPL6H.mjs} +2 -2
- package/dist/sdk/{routing-L224WQSY.mjs → routing-7JFYIXHU.mjs} +4 -4
- package/dist/sdk/{routing-SVLHRQEW.mjs → routing-ZJSROSUU.mjs} +4 -4
- package/dist/sdk/{schedule-tool-6KIQPMWM.mjs → schedule-tool-2GSWLIWA.mjs} +5 -5
- package/dist/sdk/{schedule-tool-JNL6TFP4.mjs → schedule-tool-QCJWLYS3.mjs} +5 -5
- package/dist/sdk/{schedule-tool-526VUPMF.mjs → schedule-tool-Y2R3YZL6.mjs} +5 -5
- package/dist/sdk/{schedule-tool-handler-4SG6HYLF.mjs → schedule-tool-handler-5FGL2VQ5.mjs} +5 -5
- package/dist/sdk/{schedule-tool-handler-IYK54BWK.mjs → schedule-tool-handler-HWHHAHJD.mjs} +5 -5
- package/dist/sdk/{schedule-tool-handler-Z5VWUB76.mjs → schedule-tool-handler-K2LO33KU.mjs} +5 -5
- package/dist/sdk/sdk.js +2 -2
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/sdk.mjs +4 -4
- package/dist/sdk/{trace-helpers-AWTAWKRA.mjs → trace-helpers-23KC3NGK.mjs} +2 -2
- package/dist/sdk/{trace-helpers-TOEA67GA.mjs → trace-helpers-VPGAR5ZR.mjs} +2 -2
- package/dist/sdk/{workflow-check-provider-MVDV4U7F.mjs → workflow-check-provider-23RPALNF.mjs} +5 -5
- package/dist/sdk/{workflow-check-provider-V5QHQPTG.mjs → workflow-check-provider-DHNWJKYK.mjs} +5 -5
- package/dist/sdk/{workflow-check-provider-5G6BGZEX.mjs → workflow-check-provider-OUREVWAI.mjs} +5 -5
- package/dist/traces/{run-2026-03-05T09-35-31-694Z.ndjson → run-2026-03-05T15-45-37-714Z.ndjson} +84 -84
- package/dist/traces/{run-2026-03-05T09-36-16-833Z.ndjson → run-2026-03-05T15-46-23-118Z.ndjson} +1858 -1858
- package/package.json +2 -2
- /package/dist/sdk/{check-provider-registry-2GTN7M37.mjs.map → check-provider-registry-74VLAETF.mjs.map} +0 -0
- /package/dist/sdk/{check-provider-registry-IRHRMYUJ.mjs.map → check-provider-registry-CZLHVHZZ.mjs.map} +0 -0
- /package/dist/sdk/{check-provider-registry-LVXLROAJ.mjs.map → check-provider-registry-UVLGKORU.mjs.map} +0 -0
- /package/dist/sdk/{chunk-FRVHW725.mjs.map → chunk-5N33URMM.mjs.map} +0 -0
- /package/dist/sdk/{chunk-FRTHLKIG.mjs.map → chunk-A3B4LEGZ.mjs.map} +0 -0
- /package/dist/sdk/{chunk-QRTO7XNW.mjs.map → chunk-AW3IHBCI.mjs.map} +0 -0
- /package/dist/sdk/{chunk-IJGA5TFA.mjs.map → chunk-ITZWA2RF.mjs.map} +0 -0
- /package/dist/sdk/{chunk-ZWPQV2VT.mjs.map → chunk-IVTSD7ZW.mjs.map} +0 -0
- /package/dist/sdk/{chunk-ILIWDV37.mjs.map → chunk-PSZI5NZL.mjs.map} +0 -0
- /package/dist/sdk/{chunk-SPCGI24K.mjs.map → chunk-QSY3XLA3.mjs.map} +0 -0
- /package/dist/sdk/{failure-condition-evaluator-LYFZMQ6Y.mjs.map → failure-condition-evaluator-5DJZEGYT.mjs.map} +0 -0
- /package/dist/sdk/{failure-condition-evaluator-ORMMBR23.mjs.map → failure-condition-evaluator-LQ5NUFZN.mjs.map} +0 -0
- /package/dist/sdk/{github-frontend-NNWL7IXV.mjs.map → github-frontend-TJ6TGLUW.mjs.map} +0 -0
- /package/dist/sdk/{github-frontend-XKPAYXOT.mjs.map → github-frontend-YSRVB5FS.mjs.map} +0 -0
- /package/dist/sdk/{host-MICUIU7J.mjs.map → host-VJWSCD7X.mjs.map} +0 -0
- /package/dist/sdk/{host-YKTAWW33.mjs.map → host-YG6LPL6H.mjs.map} +0 -0
- /package/dist/sdk/{routing-L224WQSY.mjs.map → routing-7JFYIXHU.mjs.map} +0 -0
- /package/dist/sdk/{routing-SVLHRQEW.mjs.map → routing-ZJSROSUU.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-526VUPMF.mjs.map → schedule-tool-2GSWLIWA.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-6KIQPMWM.mjs.map → schedule-tool-QCJWLYS3.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-JNL6TFP4.mjs.map → schedule-tool-Y2R3YZL6.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-handler-4SG6HYLF.mjs.map → schedule-tool-handler-5FGL2VQ5.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-handler-IYK54BWK.mjs.map → schedule-tool-handler-HWHHAHJD.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-handler-Z5VWUB76.mjs.map → schedule-tool-handler-K2LO33KU.mjs.map} +0 -0
- /package/dist/sdk/{trace-helpers-AWTAWKRA.mjs.map → trace-helpers-23KC3NGK.mjs.map} +0 -0
- /package/dist/sdk/{trace-helpers-TOEA67GA.mjs.map → trace-helpers-VPGAR5ZR.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-5G6BGZEX.mjs.map → workflow-check-provider-23RPALNF.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-MVDV4U7F.mjs.map → workflow-check-provider-DHNWJKYK.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-V5QHQPTG.mjs.map → workflow-check-provider-OUREVWAI.mjs.map} +0 -0
package/defaults/assistant.yaml
CHANGED
|
@@ -734,6 +734,15 @@ steps:
|
|
|
734
734
|
5. If a tool returned an error or empty result, acknowledge it honestly
|
|
735
735
|
6. Never claim success if you only PLANNED to do something but didn't execute it
|
|
736
736
|
|
|
737
|
+
Tool usage policy for this validation step:
|
|
738
|
+
7. Do NOT call code exploration tools (code-talk, search, delegate) unless
|
|
739
|
+
you found a SPECIFIC factual claim in your response that is unsupported
|
|
740
|
+
by any tool output in the conversation history above
|
|
741
|
+
8. If the conversation already contains tool results that answer the question,
|
|
742
|
+
use those results — do NOT re-explore the same codebase topics
|
|
743
|
+
9. Only call a tool if you can state exactly which claim needs verification
|
|
744
|
+
and why existing tool results are insufficient
|
|
745
|
+
|
|
737
746
|
If you find discrepancies:
|
|
738
747
|
- Correct your response to reflect what actually happened
|
|
739
748
|
- If you couldn't complete an action, explain why and what the user can do
|
|
@@ -734,6 +734,15 @@ steps:
|
|
|
734
734
|
5. If a tool returned an error or empty result, acknowledge it honestly
|
|
735
735
|
6. Never claim success if you only PLANNED to do something but didn't execute it
|
|
736
736
|
|
|
737
|
+
Tool usage policy for this validation step:
|
|
738
|
+
7. Do NOT call code exploration tools (code-talk, search, delegate) unless
|
|
739
|
+
you found a SPECIFIC factual claim in your response that is unsupported
|
|
740
|
+
by any tool output in the conversation history above
|
|
741
|
+
8. If the conversation already contains tool results that answer the question,
|
|
742
|
+
use those results — do NOT re-explore the same codebase topics
|
|
743
|
+
9. Only call a tool if you can state exactly which claim needs verification
|
|
744
|
+
and why existing tool results are insufficient
|
|
745
|
+
|
|
737
746
|
If you find discrepancies:
|
|
738
747
|
- Correct your response to reflect what actually happened
|
|
739
748
|
- If you couldn't complete an action, explain why and what the user can do
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
process.env.VISOR_VERSION = '0.1.
|
|
3
|
-
process.env.PROBE_VERSION = '0.6.0-
|
|
4
|
-
process.env.VISOR_COMMIT_SHA = '
|
|
5
|
-
process.env.VISOR_COMMIT_SHORT = '
|
|
2
|
+
process.env.VISOR_VERSION = '0.1.159';
|
|
3
|
+
process.env.PROBE_VERSION = '0.6.0-rc274';
|
|
4
|
+
process.env.VISOR_COMMIT_SHA = '345101301086b988952a5425033fc0ca9cbaafe1';
|
|
5
|
+
process.env.VISOR_COMMIT_SHORT = '345101301';
|
|
6
6
|
/******/ (() => { // webpackBootstrap
|
|
7
7
|
/******/ var __webpack_modules__ = ({
|
|
8
8
|
|
|
@@ -260667,22 +260667,16 @@ var init_JsonShapeDeserializer = __esm({
|
|
|
260667
260667
|
if (Array.isArray(value) && ns.isListSchema()) {
|
|
260668
260668
|
const listMember = ns.getValueSchema();
|
|
260669
260669
|
const out = [];
|
|
260670
|
-
const sparse = !!ns.getMergedTraits().sparse;
|
|
260671
260670
|
for (const item of value) {
|
|
260672
|
-
|
|
260673
|
-
out.push(this._read(listMember, item));
|
|
260674
|
-
}
|
|
260671
|
+
out.push(this._read(listMember, item));
|
|
260675
260672
|
}
|
|
260676
260673
|
return out;
|
|
260677
260674
|
}
|
|
260678
260675
|
if (ns.isMapSchema()) {
|
|
260679
260676
|
const mapMember = ns.getValueSchema();
|
|
260680
260677
|
const out = {};
|
|
260681
|
-
const sparse = !!ns.getMergedTraits().sparse;
|
|
260682
260678
|
for (const [_k, _v] of Object.entries(value)) {
|
|
260683
|
-
|
|
260684
|
-
out[_k] = this._read(mapMember, _v);
|
|
260685
|
-
}
|
|
260679
|
+
out[_k] = this._read(mapMember, _v);
|
|
260686
260680
|
}
|
|
260687
260681
|
return out;
|
|
260688
260682
|
}
|
|
@@ -262331,18 +262325,18 @@ var init_XmlShapeDeserializer = __esm({
|
|
|
262331
262325
|
return value;
|
|
262332
262326
|
}
|
|
262333
262327
|
if (typeof value === "object") {
|
|
262334
|
-
const sparse = !!traits.sparse;
|
|
262335
262328
|
const flat = !!traits.xmlFlattened;
|
|
262336
262329
|
if (ns.isListSchema()) {
|
|
262337
262330
|
const listValue = ns.getValueSchema();
|
|
262338
262331
|
const buffer2 = [];
|
|
262339
262332
|
const sourceKey = listValue.getMergedTraits().xmlName ?? "member";
|
|
262340
262333
|
const source = flat ? value : (value[0] ?? value)[sourceKey];
|
|
262334
|
+
if (source == null) {
|
|
262335
|
+
return buffer2;
|
|
262336
|
+
}
|
|
262341
262337
|
const sourceArray = Array.isArray(source) ? source : [source];
|
|
262342
262338
|
for (const v5 of sourceArray) {
|
|
262343
|
-
|
|
262344
|
-
buffer2.push(this.readSchema(listValue, v5));
|
|
262345
|
-
}
|
|
262339
|
+
buffer2.push(this.readSchema(listValue, v5));
|
|
262346
262340
|
}
|
|
262347
262341
|
return buffer2;
|
|
262348
262342
|
}
|
|
@@ -262361,9 +262355,7 @@ var init_XmlShapeDeserializer = __esm({
|
|
|
262361
262355
|
for (const entry of entries) {
|
|
262362
262356
|
const key = entry[keyProperty];
|
|
262363
262357
|
const value2 = entry[valueProperty];
|
|
262364
|
-
|
|
262365
|
-
buffer[key] = this.readSchema(memberNs, value2);
|
|
262366
|
-
}
|
|
262358
|
+
buffer[key] = this.readSchema(memberNs, value2);
|
|
262367
262359
|
}
|
|
262368
262360
|
return buffer;
|
|
262369
262361
|
}
|
|
@@ -266705,7 +266697,7 @@ var require_package2 = __commonJS({
|
|
|
266705
266697
|
module2.exports = {
|
|
266706
266698
|
name: "@aws-sdk/client-bedrock-runtime",
|
|
266707
266699
|
description: "AWS SDK for JavaScript Bedrock Runtime Client for Node.js, Browser and React Native",
|
|
266708
|
-
version: "3.
|
|
266700
|
+
version: "3.1002.0",
|
|
266709
266701
|
scripts: {
|
|
266710
266702
|
build: "concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs",
|
|
266711
266703
|
"build:cjs": "node ../../scripts/compilation/inline client-bedrock-runtime",
|
|
@@ -266729,21 +266721,21 @@ var require_package2 = __commonJS({
|
|
|
266729
266721
|
dependencies: {
|
|
266730
266722
|
"@aws-crypto/sha256-browser": "5.2.0",
|
|
266731
266723
|
"@aws-crypto/sha256-js": "5.2.0",
|
|
266732
|
-
"@aws-sdk/core": "^3.973.
|
|
266733
|
-
"@aws-sdk/credential-provider-node": "^3.972.
|
|
266724
|
+
"@aws-sdk/core": "^3.973.17",
|
|
266725
|
+
"@aws-sdk/credential-provider-node": "^3.972.16",
|
|
266734
266726
|
"@aws-sdk/eventstream-handler-node": "^3.972.9",
|
|
266735
266727
|
"@aws-sdk/middleware-eventstream": "^3.972.6",
|
|
266736
266728
|
"@aws-sdk/middleware-host-header": "^3.972.6",
|
|
266737
266729
|
"@aws-sdk/middleware-logger": "^3.972.6",
|
|
266738
266730
|
"@aws-sdk/middleware-recursion-detection": "^3.972.6",
|
|
266739
|
-
"@aws-sdk/middleware-user-agent": "^3.972.
|
|
266731
|
+
"@aws-sdk/middleware-user-agent": "^3.972.17",
|
|
266740
266732
|
"@aws-sdk/middleware-websocket": "^3.972.11",
|
|
266741
266733
|
"@aws-sdk/region-config-resolver": "^3.972.6",
|
|
266742
|
-
"@aws-sdk/token-providers": "3.
|
|
266734
|
+
"@aws-sdk/token-providers": "3.1002.0",
|
|
266743
266735
|
"@aws-sdk/types": "^3.973.4",
|
|
266744
266736
|
"@aws-sdk/util-endpoints": "^3.996.3",
|
|
266745
266737
|
"@aws-sdk/util-user-agent-browser": "^3.972.6",
|
|
266746
|
-
"@aws-sdk/util-user-agent-node": "^3.973.
|
|
266738
|
+
"@aws-sdk/util-user-agent-node": "^3.973.2",
|
|
266747
266739
|
"@smithy/config-resolver": "^4.4.9",
|
|
266748
266740
|
"@smithy/core": "^3.23.7",
|
|
266749
266741
|
"@smithy/eventstream-serde-browser": "^4.2.10",
|
|
@@ -267492,7 +267484,7 @@ var init_package = __esm({
|
|
|
267492
267484
|
"node_modules/@aws-sdk/nested-clients/package.json"() {
|
|
267493
267485
|
package_default = {
|
|
267494
267486
|
name: "@aws-sdk/nested-clients",
|
|
267495
|
-
version: "3.996.
|
|
267487
|
+
version: "3.996.5",
|
|
267496
267488
|
description: "Nested clients for AWS SDK packages.",
|
|
267497
267489
|
main: "./dist-cjs/index.js",
|
|
267498
267490
|
module: "./dist-es/index.js",
|
|
@@ -267521,16 +267513,16 @@ var init_package = __esm({
|
|
|
267521
267513
|
dependencies: {
|
|
267522
267514
|
"@aws-crypto/sha256-browser": "5.2.0",
|
|
267523
267515
|
"@aws-crypto/sha256-js": "5.2.0",
|
|
267524
|
-
"@aws-sdk/core": "^3.973.
|
|
267516
|
+
"@aws-sdk/core": "^3.973.17",
|
|
267525
267517
|
"@aws-sdk/middleware-host-header": "^3.972.6",
|
|
267526
267518
|
"@aws-sdk/middleware-logger": "^3.972.6",
|
|
267527
267519
|
"@aws-sdk/middleware-recursion-detection": "^3.972.6",
|
|
267528
|
-
"@aws-sdk/middleware-user-agent": "^3.972.
|
|
267520
|
+
"@aws-sdk/middleware-user-agent": "^3.972.17",
|
|
267529
267521
|
"@aws-sdk/region-config-resolver": "^3.972.6",
|
|
267530
267522
|
"@aws-sdk/types": "^3.973.4",
|
|
267531
267523
|
"@aws-sdk/util-endpoints": "^3.996.3",
|
|
267532
267524
|
"@aws-sdk/util-user-agent-browser": "^3.972.6",
|
|
267533
|
-
"@aws-sdk/util-user-agent-node": "^3.973.
|
|
267525
|
+
"@aws-sdk/util-user-agent-node": "^3.973.2",
|
|
267534
267526
|
"@smithy/config-resolver": "^4.4.9",
|
|
267535
267527
|
"@smithy/core": "^3.23.7",
|
|
267536
267528
|
"@smithy/fetch-http-handler": "^5.3.12",
|
|
@@ -283179,20 +283171,15 @@ var init_zod = __esm({
|
|
|
283179
283171
|
|
|
283180
283172
|
// src/agent/tasks/taskTool.js
|
|
283181
283173
|
function createTaskCompletionBlockedMessage(taskSummary) {
|
|
283182
|
-
return
|
|
283183
|
-
You cannot complete yet. The following tasks are still unresolved:
|
|
283174
|
+
return `You cannot complete yet. The following tasks are still unresolved:
|
|
283184
283175
|
|
|
283185
283176
|
${taskSummary}
|
|
283186
283177
|
|
|
283187
|
-
|
|
283188
|
-
|
|
283189
|
-
|
|
283190
|
-
- Or cancel if no longer needed: <task><action>update</action><id>task-X</id><status>cancelled</status></task>
|
|
283178
|
+
For each pending/in_progress task, either:
|
|
283179
|
+
- Complete it: call task tool with action="complete", id="task-X"
|
|
283180
|
+
- Cancel it: call task tool with action="update", id="task-X", status="cancelled"
|
|
283191
283181
|
|
|
283192
|
-
|
|
283193
|
-
|
|
283194
|
-
Use <task><action>list</action></task> to review current status.
|
|
283195
|
-
</task_completion_blocked>`;
|
|
283182
|
+
After all tasks are resolved, call attempt_completion again.`;
|
|
283196
283183
|
}
|
|
283197
283184
|
function createTaskTool(options = {}) {
|
|
283198
283185
|
const { taskManager, tracer, debug = false } = options;
|
|
@@ -283415,145 +283402,46 @@ var init_taskTool = __esm({
|
|
|
283415
283402
|
dependencies: external_exports.array(external_exports.string()).optional(),
|
|
283416
283403
|
after: external_exports.string().optional()
|
|
283417
283404
|
});
|
|
283418
|
-
taskSystemPrompt = `[Task Management
|
|
283419
|
-
|
|
283420
|
-
|
|
283421
|
-
|
|
283422
|
-
## When to
|
|
283423
|
-
|
|
283424
|
-
CREATE
|
|
283425
|
-
- "Fix bug A AND add feature B" \u2192
|
|
283426
|
-
- "Investigate auth, payments, AND notifications" \u2192
|
|
283427
|
-
- "Implement X, then add tests, then update docs" \u2192
|
|
283428
|
-
|
|
283429
|
-
|
|
283430
|
-
|
|
283431
|
-
- "
|
|
283432
|
-
|
|
283433
|
-
|
|
283434
|
-
|
|
283435
|
-
|
|
283436
|
-
|
|
283437
|
-
|
|
283438
|
-
|
|
283439
|
-
|
|
283440
|
-
|
|
283441
|
-
|
|
283442
|
-
|
|
283443
|
-
|
|
283444
|
-
|
|
283445
|
-
|
|
283446
|
-
|
|
283447
|
-
|
|
283448
|
-
|
|
283449
|
-
-
|
|
283450
|
-
-
|
|
283451
|
-
-
|
|
283452
|
-
|
|
283453
|
-
**Good patterns**:
|
|
283454
|
-
- One task per distinct deliverable \u2713
|
|
283455
|
-
- One task per phase (implement, test, document) \u2713
|
|
283456
|
-
- One task per different type of work \u2713
|
|
283457
|
-
|
|
283458
|
-
MODIFY TASKS when (during execution):
|
|
283459
|
-
- You discover the problem is more complex than expected \u2192 Add new tasks
|
|
283460
|
-
- A single task covers too much scope \u2192 Split into smaller tasks
|
|
283461
|
-
- You find related work that needs attention \u2192 Add dependent tasks
|
|
283462
|
-
- A task becomes irrelevant based on findings \u2192 Cancel it
|
|
283463
|
-
- Task priorities change based on discoveries \u2192 Update priority
|
|
283464
|
-
- You learn new context \u2192 Update task description
|
|
283465
|
-
|
|
283466
|
-
## Task Workflow
|
|
283467
|
-
|
|
283468
|
-
**STEP 1 - Plan (at start):**
|
|
283469
|
-
Analyze the request and create tasks for each logical step:
|
|
283470
|
-
|
|
283471
|
-
<task>
|
|
283472
|
-
<action>create</action>
|
|
283473
|
-
<tasks>[
|
|
283474
|
-
{"title": "Search for authentication module", "priority": "high"},
|
|
283475
|
-
{"title": "Analyze login flow implementation", "dependencies": ["task-1"]},
|
|
283476
|
-
{"title": "Find session management code", "dependencies": ["task-1"]},
|
|
283477
|
-
{"title": "Summarize authentication architecture", "dependencies": ["task-2", "task-3"]}
|
|
283478
|
-
]</tasks>
|
|
283479
|
-
</task>
|
|
283480
|
-
|
|
283481
|
-
**STEP 2 - Execute (during work):**
|
|
283482
|
-
Update task status as you work:
|
|
283483
|
-
|
|
283484
|
-
<task>
|
|
283485
|
-
<action>update</action>
|
|
283486
|
-
<id>task-1</id>
|
|
283487
|
-
<status>in_progress</status>
|
|
283488
|
-
</task>
|
|
283489
|
-
|
|
283490
|
-
... do the work (search, extract, etc.) ...
|
|
283491
|
-
|
|
283492
|
-
<task>
|
|
283493
|
-
<action>complete</action>
|
|
283494
|
-
<id>task-1</id>
|
|
283495
|
-
</task>
|
|
283496
|
-
|
|
283497
|
-
**STEP 2b - Adapt (when you discover new work):**
|
|
283498
|
-
As you work, you may discover that:
|
|
283499
|
-
- A task is more complex than expected \u2192 Split it into subtasks
|
|
283500
|
-
- New areas need investigation \u2192 Add new tasks
|
|
283501
|
-
- Some tasks are no longer needed \u2192 Cancel them
|
|
283502
|
-
- Task order should change \u2192 Update dependencies
|
|
283503
|
-
|
|
283504
|
-
*Adding a new task when you discover more work:*
|
|
283505
|
-
<task>
|
|
283506
|
-
<action>create</action>
|
|
283507
|
-
<title>Investigate caching layer</title>
|
|
283508
|
-
<description>Found references to Redis caching in auth module</description>
|
|
283509
|
-
</task>
|
|
283510
|
-
|
|
283511
|
-
*Inserting a task after a specific task (to maintain logical order):*
|
|
283512
|
-
<task>
|
|
283513
|
-
<action>create</action>
|
|
283514
|
-
<title>Check rate limiting</title>
|
|
283515
|
-
<after>task-2</after>
|
|
283516
|
-
</task>
|
|
283517
|
-
|
|
283518
|
-
*Cancelling and splitting a complex task:*
|
|
283519
|
-
<task>
|
|
283520
|
-
<action>update</action>
|
|
283521
|
-
<id>task-3</id>
|
|
283522
|
-
<status>cancelled</status>
|
|
283523
|
-
</task>
|
|
283524
|
-
<task>
|
|
283525
|
-
<action>create</action>
|
|
283526
|
-
<tasks>[
|
|
283527
|
-
{"title": "Review JWT token generation", "priority": "high"},
|
|
283528
|
-
{"title": "Review token refresh logic"}
|
|
283529
|
-
]</tasks>
|
|
283530
|
-
</task>
|
|
283531
|
-
|
|
283532
|
-
**STEP 3 - Finish (before completion):**
|
|
283533
|
-
Before calling attempt_completion, ensure ALL tasks are either:
|
|
283534
|
-
- \`completed\` - you finished the work
|
|
283535
|
-
- \`cancelled\` - no longer needed
|
|
283536
|
-
|
|
283537
|
-
If you created tasks, you MUST resolve them all before completing.
|
|
283538
|
-
|
|
283539
|
-
## Key Rules
|
|
283540
|
-
|
|
283541
|
-
1. **Dependencies are enforced**: A task cannot start until its dependencies are completed
|
|
283542
|
-
2. **Circular dependencies are rejected**: task-1 \u2192 task-2 \u2192 task-1 is invalid
|
|
283543
|
-
3. **Completion is blocked**: attempt_completion will fail if tasks remain unresolved
|
|
283544
|
-
4. **List to review**: Use <task><action>list</action></task> to see current task status
|
|
283545
|
-
5. **Tasks are living documents**: Add, split, or cancel tasks as you learn more about the problem
|
|
283405
|
+
taskSystemPrompt = `[Task Management]
|
|
283406
|
+
|
|
283407
|
+
Use the task tool to track progress on complex requests with multiple distinct goals.
|
|
283408
|
+
|
|
283409
|
+
## When to Use Tasks
|
|
283410
|
+
|
|
283411
|
+
CREATE tasks when the request has **multiple separate deliverables**:
|
|
283412
|
+
- "Fix bug A AND add feature B" \u2192 two tasks
|
|
283413
|
+
- "Investigate auth, payments, AND notifications" \u2192 three tasks
|
|
283414
|
+
- "Implement X, then add tests, then update docs" \u2192 three sequential tasks
|
|
283415
|
+
|
|
283416
|
+
SKIP tasks for single-goal requests, even complex ones:
|
|
283417
|
+
- "How does ranking work?" \u2014 just investigate and answer
|
|
283418
|
+
- "Explain the authentication flow" \u2014 just trace and explain
|
|
283419
|
+
Multiple internal steps (search, read, analyze) for one goal \u2260 multiple tasks.
|
|
283420
|
+
|
|
283421
|
+
## Granularity
|
|
283422
|
+
|
|
283423
|
+
Tasks = logical units of work, not files or steps.
|
|
283424
|
+
- "Fix 8 similar test files" \u2192 ONE task (same fix repeated)
|
|
283425
|
+
- "Update API + tests + docs" \u2192 THREE tasks (different work types)
|
|
283426
|
+
- Max 3\u20134 tasks. More means you're too granular.
|
|
283427
|
+
|
|
283428
|
+
## Workflow
|
|
283429
|
+
|
|
283430
|
+
1. **Plan**: Call task tool with action="create" and a tasks array up front
|
|
283431
|
+
2. **Execute**: Update status to "in_progress" / "completed" as you work. Add, split, or cancel tasks as you learn more.
|
|
283432
|
+
3. **Finish**: All tasks must be "completed" or "cancelled" before calling attempt_completion.
|
|
283433
|
+
|
|
283434
|
+
## Rules
|
|
283435
|
+
|
|
283436
|
+
- Dependencies are enforced: a task cannot start until its dependencies are completed
|
|
283437
|
+
- Circular dependencies are rejected
|
|
283438
|
+
- attempt_completion is blocked while tasks remain unresolved
|
|
283546
283439
|
`;
|
|
283547
|
-
taskGuidancePrompt =
|
|
283548
|
-
Does this request have MULTIPLE DISTINCT GOALS?
|
|
283440
|
+
taskGuidancePrompt = `Does this request have MULTIPLE DISTINCT GOALS?
|
|
283549
283441
|
- "Do A AND B AND C" (multiple goals) \u2192 Create tasks for each goal
|
|
283550
283442
|
- "Investigate/explain/find X" (single goal) \u2192 Skip tasks, just answer directly
|
|
283551
|
-
|
|
283552
|
-
|
|
283553
|
-
Only create tasks when there are separate deliverables the user is asking for.
|
|
283554
|
-
|
|
283555
|
-
If creating tasks, use the task tool with action="create" first.
|
|
283556
|
-
</task_guidance>`;
|
|
283443
|
+
Multiple internal steps for ONE goal = NO tasks needed.
|
|
283444
|
+
If creating tasks, use the task tool with action="create" first.`;
|
|
283557
283445
|
}
|
|
283558
283446
|
});
|
|
283559
283447
|
|
|
@@ -330052,9 +329940,10 @@ If the solution is clear, you can jump to implementation right away. If not, ask
|
|
|
330052
329940
|
- After every significant change, verify the project still builds and passes linting. Do not wait until the end to discover breakage.
|
|
330053
329941
|
|
|
330054
329942
|
# After Implementation
|
|
330055
|
-
-
|
|
330056
|
-
- Run lint and typecheck commands if known for the project.
|
|
330057
|
-
-
|
|
329943
|
+
- Verify the project builds successfully. If it doesn't, fix the build before moving on.
|
|
329944
|
+
- Run lint and typecheck commands if known for the project. Fix any new warnings or errors you introduced.
|
|
329945
|
+
- Add tests for any new or changed functionality. Tests must cover the main path and important edge cases.
|
|
329946
|
+
- Run the project's full test suite. If any tests fail (including pre-existing ones you may have broken), fix them before finishing.
|
|
330058
329947
|
- When the task is done, respond to the user with a concise summary of what was implemented, what files were changed, and any relevant details. Include links (e.g. pull request URL) so the user has everything they need.
|
|
330059
329948
|
|
|
330060
329949
|
# GitHub Integration
|
|
@@ -339267,6 +339156,19 @@ function isContextLimitError(error2) {
|
|
|
339267
339156
|
}
|
|
339268
339157
|
return false;
|
|
339269
339158
|
}
|
|
339159
|
+
function messageContainsCompletion(msg) {
|
|
339160
|
+
if (Array.isArray(msg.toolInvocations)) {
|
|
339161
|
+
if (msg.toolInvocations.some((t5) => t5.toolName === "attempt_completion")) return true;
|
|
339162
|
+
}
|
|
339163
|
+
if (Array.isArray(msg.tool_calls)) {
|
|
339164
|
+
if (msg.tool_calls.some((t5) => t5.function?.name === "attempt_completion")) return true;
|
|
339165
|
+
}
|
|
339166
|
+
if (Array.isArray(msg.content)) {
|
|
339167
|
+
if (msg.content.some((p5) => p5.type === "tool-call" && p5.toolName === "attempt_completion")) return true;
|
|
339168
|
+
}
|
|
339169
|
+
const text = typeof msg.content === "string" ? msg.content : "";
|
|
339170
|
+
return text.includes("attempt_completion");
|
|
339171
|
+
}
|
|
339270
339172
|
function identifyMessageSegments(messages) {
|
|
339271
339173
|
const segments = [];
|
|
339272
339174
|
let currentSegment = null;
|
|
@@ -339275,27 +339177,23 @@ function identifyMessageSegments(messages) {
|
|
|
339275
339177
|
if (msg.role === "system") {
|
|
339276
339178
|
continue;
|
|
339277
339179
|
}
|
|
339180
|
+
if (msg.role === "tool" && currentSegment) {
|
|
339181
|
+
currentSegment.monologueIndices.push(i5);
|
|
339182
|
+
continue;
|
|
339183
|
+
}
|
|
339278
339184
|
if (msg.role === "user") {
|
|
339279
|
-
|
|
339280
|
-
const isToolResult = content.includes("<tool_result>");
|
|
339281
|
-
if (isToolResult && currentSegment) {
|
|
339282
|
-
currentSegment.finalIndex = i5;
|
|
339185
|
+
if (currentSegment) {
|
|
339283
339186
|
segments.push(currentSegment);
|
|
339284
|
-
currentSegment = null;
|
|
339285
|
-
} else {
|
|
339286
|
-
if (currentSegment) {
|
|
339287
|
-
segments.push(currentSegment);
|
|
339288
|
-
}
|
|
339289
|
-
currentSegment = {
|
|
339290
|
-
userIndex: i5,
|
|
339291
|
-
monologueIndices: [],
|
|
339292
|
-
finalIndex: null
|
|
339293
|
-
};
|
|
339294
339187
|
}
|
|
339188
|
+
currentSegment = {
|
|
339189
|
+
userIndex: i5,
|
|
339190
|
+
monologueIndices: [],
|
|
339191
|
+
finalIndex: null
|
|
339192
|
+
};
|
|
339295
339193
|
}
|
|
339296
339194
|
if (msg.role === "assistant" && currentSegment) {
|
|
339297
|
-
const
|
|
339298
|
-
if (
|
|
339195
|
+
const hasCompletion = messageContainsCompletion(msg);
|
|
339196
|
+
if (hasCompletion) {
|
|
339299
339197
|
currentSegment.monologueIndices.push(i5);
|
|
339300
339198
|
currentSegment.finalIndex = i5;
|
|
339301
339199
|
segments.push(currentSegment);
|
|
@@ -357402,8 +357300,7 @@ Instructions:
|
|
|
357402
357300
|
- Format as a structured list if multiple items found
|
|
357403
357301
|
- If nothing relevant is found in this chunk, respond with "No relevant items found in this chunk."
|
|
357404
357302
|
- Do NOT summarize the code - extract the specific information requested
|
|
357405
|
-
-
|
|
357406
|
-
- Do NOT use the shorthand <attempt_complete></attempt_complete> format`;
|
|
357303
|
+
- When done, use the attempt_completion tool with your answer as the result.`;
|
|
357407
357304
|
try {
|
|
357408
357305
|
const result = await delegate({
|
|
357409
357306
|
task,
|
|
@@ -357468,7 +357365,7 @@ async function aggregateResults(chunkResults2, aggregation, extractionPrompt, op
|
|
|
357468
357365
|
${stripResultTags(r5.result)}`).join("\n\n");
|
|
357469
357366
|
const completionNote = `
|
|
357470
357367
|
|
|
357471
|
-
|
|
357368
|
+
When done, use the attempt_completion tool with your answer as the result.`;
|
|
357472
357369
|
const aggregationPrompts = {
|
|
357473
357370
|
summarize: `Synthesize these analyses into a comprehensive summary. Combine related findings, remove redundancy, and present a coherent overview.
|
|
357474
357371
|
|
|
@@ -357626,7 +357523,7 @@ Your answer should:
|
|
|
357626
357523
|
|
|
357627
357524
|
Format your response as a well-structured document that fully answers: "${question}"
|
|
357628
357525
|
|
|
357629
|
-
|
|
357526
|
+
When done, use the attempt_completion tool with your answer as the result.`;
|
|
357630
357527
|
try {
|
|
357631
357528
|
const result = await delegate({
|
|
357632
357529
|
task: synthesisTask,
|
|
@@ -357957,7 +357854,7 @@ function buildSearchDelegateTask({ searchQuery, searchPath, exact, language, all
|
|
|
357957
357854
|
"",
|
|
357958
357855
|
"Strategy for complex queries:",
|
|
357959
357856
|
"1. Analyze the query - identify key concepts, entities, and relationships",
|
|
357960
|
-
'2. Run focused searches for each concept (e.g., "
|
|
357857
|
+
'2. Run focused searches for each independent concept (e.g., for "how do payments work and how are emails sent", search "payments" and "emails" separately since they are unrelated)',
|
|
357961
357858
|
"3. Use extract to verify relevance of promising results",
|
|
357962
357859
|
"4. Combine all relevant targets in your final response",
|
|
357963
357860
|
"",
|
|
@@ -358696,9 +358593,7 @@ Example: <edit><file_path>${file_path}</file_path><symbol>${allMatches[0].qualif
|
|
|
358696
358593
|
if (fileTracker) {
|
|
358697
358594
|
const check = fileTracker.checkSymbolContent(resolvedPath2, symbol15, symbolInfo.code);
|
|
358698
358595
|
if (!check.ok && check.reason === "stale") {
|
|
358699
|
-
return `Error editing ${file_path}: Symbol "${symbol15}" has changed since you last read it. Use extract to re-read the current content, then retry
|
|
358700
|
-
|
|
358701
|
-
Example: <extract><targets>${file_path}#${symbol15}</targets></extract>`;
|
|
358596
|
+
return `Error editing ${file_path}: Symbol "${symbol15}" has changed since you last read it. Use the extract tool with targets="${file_path}#${symbol15}" to re-read the current content, then retry.`;
|
|
358702
358597
|
}
|
|
358703
358598
|
}
|
|
358704
358599
|
const content = await import_fs12.promises.readFile(resolvedPath2, "utf-8");
|
|
@@ -358936,9 +358831,7 @@ Parameters:
|
|
|
358936
358831
|
}
|
|
358937
358832
|
if (options.fileTracker && !options.fileTracker.isFileSeen(resolvedPath2)) {
|
|
358938
358833
|
const displayPath = toRelativePath(resolvedPath2, workspaceRoot);
|
|
358939
|
-
return `Error editing ${displayPath}: This file has not been read yet in this session. Use
|
|
358940
|
-
|
|
358941
|
-
Example: <extract><targets>${displayPath}</targets></extract>`;
|
|
358834
|
+
return `Error editing ${displayPath}: This file has not been read yet in this session. Use the extract tool with targets="${displayPath}" to read the file first, then retry your edit.`;
|
|
358942
358835
|
}
|
|
358943
358836
|
if (symbol15 !== void 0 && symbol15 !== null) {
|
|
358944
358837
|
return await handleSymbolEdit({ resolvedPath: resolvedPath2, file_path, symbol: symbol15, new_string, position, debug, cwd, fileTracker: options.fileTracker });
|
|
@@ -358958,7 +358851,7 @@ Example: <extract><targets>${displayPath}</targets></extract>`;
|
|
|
358958
358851
|
const displayPath = toRelativePath(resolvedPath2, workspaceRoot);
|
|
358959
358852
|
return `Error editing ${displayPath}: ${staleCheck.message}
|
|
358960
358853
|
|
|
358961
|
-
|
|
358854
|
+
Use the extract tool with targets="${displayPath}" to re-read the file, then retry.`;
|
|
358962
358855
|
}
|
|
358963
358856
|
}
|
|
358964
358857
|
const content = await import_fs12.promises.readFile(resolvedPath2, "utf-8");
|
|
@@ -395622,7 +395515,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"100":"Continue","101":"Switching Pro
|
|
|
395622
395515
|
/***/ ((module) => {
|
|
395623
395516
|
|
|
395624
395517
|
"use strict";
|
|
395625
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@probelabs/visor","version":"0.1.
|
|
395518
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@probelabs/visor","version":"0.1.159","main":"dist/index.js","bin":{"visor":"./dist/index.js"},"exports":{".":{"require":"./dist/index.js","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/sdk.d.ts","import":"./dist/sdk/sdk.mjs","require":"./dist/sdk/sdk.js"},"./cli":{"require":"./dist/index.js"}},"files":["dist/","defaults/","action.yml","README.md","LICENSE"],"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"build:cli":"ncc build src/index.ts -o dist && cp -r defaults dist/ && cp -r output dist/ && cp -r docs dist/ && cp -r examples dist/ && cp -r src/debug-visualizer/ui dist/debug-visualizer/ && node scripts/inject-version.js && echo \'#!/usr/bin/env node\' | cat - dist/index.js > temp && mv temp dist/index.js && chmod +x dist/index.js","build:sdk":"tsup src/sdk.ts --dts --sourcemap --format esm,cjs --out-dir dist/sdk","build":"./scripts/build-oss.sh","build:ee":"npm run build:cli && npm run build:sdk","test":"jest && npm run test:yaml","test:unit":"jest","prepublishOnly":"npm run build","test:watch":"jest --watch","test:coverage":"jest --coverage","test:ee":"jest --testPathPatterns=\'tests/ee\' --testPathIgnorePatterns=\'/node_modules/\' --no-coverage","test:manual:bash":"RUN_MANUAL_TESTS=true jest tests/manual/bash-config-manual.test.ts","lint":"eslint src tests --ext .ts","lint:fix":"eslint src tests --ext .ts --fix","format":"prettier --write src tests","format:check":"prettier --check src tests","clean":"","clean:traces":"node scripts/clean-traces.js","prebuild":"npm run clean && node scripts/generate-config-schema.js","pretest":"npm run clean:traces && node scripts/generate-config-schema.js && npm run build:cli","pretest:unit":"npm run clean:traces && node scripts/generate-config-schema.js && npm run build:cli","test:with-build":"npm run build:cli && jest","test:yaml":"node dist/index.js test --progress compact","test:yaml:parallel":"node dist/index.js test --progress compact --max-parallel 4","prepare":"husky","pre-commit":"lint-staged","deploy:site":"cd site && npx wrangler pages deploy . --project-name=visor-site --commit-dirty=true","deploy:worker":"npx wrangler deploy","deploy":"npm run deploy:site && npm run deploy:worker","publish:ee":"./scripts/publish-ee.sh","release":"./scripts/release.sh","release:patch":"./scripts/release.sh patch","release:minor":"./scripts/release.sh minor","release:major":"./scripts/release.sh major","release:prerelease":"./scripts/release.sh prerelease","docs:validate":"node scripts/validate-readme-links.js","workshop:setup":"npm install -D reveal-md@6.1.2","workshop:serve":"cd workshop && reveal-md slides.md -w","workshop:export":"reveal-md workshop/slides.md --static workshop/build","workshop:pdf":"reveal-md workshop/slides.md --print workshop/Visor-Workshop.pdf --print-size letter","workshop:pdf:ci":"reveal-md workshop/slides.md --print workshop/Visor-Workshop.pdf --print-size letter --puppeteer-launch-args=\\"--no-sandbox --disable-dev-shm-usage\\"","workshop:pdf:a4":"reveal-md workshop/slides.md --print workshop/Visor-Workshop-A4.pdf --print-size A4","workshop:build":"npm run workshop:export && npm run workshop:pdf","simulate:issue":"TS_NODE_TRANSPILE_ONLY=1 ts-node scripts/simulate-gh-run.ts --event issues --action opened --debug","simulate:comment":"TS_NODE_TRANSPILE_ONLY=1 ts-node scripts/simulate-gh-run.ts --event issue_comment --action created --debug"},"keywords":["code-review","ai","github-action","cli","pr-review","visor"],"author":"Probe Labs","license":"MIT","description":"AI workflow engine for code review, assistants, and automation — orchestrate checks, MCP tools, and AI providers with YAML-driven pipelines","repository":{"type":"git","url":"git+https://github.com/probelabs/visor.git"},"bugs":{"url":"https://github.com/probelabs/visor/issues"},"homepage":"https://github.com/probelabs/visor#readme","dependencies":{"@actions/core":"^1.11.1","@apidevtools/swagger-parser":"^12.1.0","@modelcontextprotocol/sdk":"^1.25.3","@nyariv/sandboxjs":"github:probelabs/SandboxJS#f1c13b8eee98734a8ea024061eada4aa9a9ff2e9","@octokit/action":"^8.0.2","@octokit/auth-app":"^8.1.0","@octokit/core":"^7.0.3","@octokit/rest":"^22.0.0","@opentelemetry/api":"^1.9.0","@opentelemetry/core":"^1.30.1","@opentelemetry/exporter-trace-otlp-grpc":"^0.203.0","@opentelemetry/exporter-trace-otlp-http":"^0.203.0","@opentelemetry/instrumentation":"^0.203.0","@opentelemetry/resources":"^1.30.1","@opentelemetry/sdk-metrics":"^1.30.1","@opentelemetry/sdk-node":"^0.203.0","@opentelemetry/sdk-trace-base":"^1.30.1","@opentelemetry/semantic-conventions":"^1.30.1","@probelabs/probe":"^0.6.0-rc274","@types/commander":"^2.12.0","@types/uuid":"^10.0.0","acorn":"^8.16.0","acorn-walk":"^8.3.5","ajv":"^8.17.1","ajv-formats":"^3.0.1","better-sqlite3":"^11.0.0","blessed":"^0.1.81","cli-table3":"^0.6.5","commander":"^14.0.0","deepmerge":"^4.3.1","dotenv":"^17.2.3","ignore":"^7.0.5","js-yaml":"^4.1.0","jsonpath-plus":"^10.4.0","liquidjs":"^10.21.1","minimatch":"^10.2.2","node-cron":"^3.0.3","open":"^9.1.0","simple-git":"^3.28.0","uuid":"^11.1.0","ws":"^8.18.3"},"optionalDependencies":{"@anthropic/claude-code-sdk":"npm:null@*","@open-policy-agent/opa-wasm":"^1.10.0","knex":"^3.1.0","mysql2":"^3.11.0","pg":"^8.13.0","tedious":"^19.0.0"},"devDependencies":{"@eslint/js":"^9.34.0","@kie/act-js":"^2.6.2","@kie/mock-github":"^2.0.1","@swc/core":"^1.13.2","@swc/jest":"^0.2.37","@types/better-sqlite3":"^7.6.0","@types/blessed":"^0.1.27","@types/jest":"^30.0.0","@types/js-yaml":"^4.0.9","@types/node":"^24.3.0","@types/node-cron":"^3.0.11","@types/ws":"^8.18.1","@typescript-eslint/eslint-plugin":"^8.42.0","@typescript-eslint/parser":"^8.42.0","@vercel/ncc":"^0.38.4","eslint":"^9.34.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","husky":"^9.1.7","jest":"^30.1.3","lint-staged":"^16.1.6","prettier":"^3.6.2","reveal-md":"^6.1.2","ts-json-schema-generator":"^1.5.1","ts-node":"^10.9.2","tsup":"^8.5.0","typescript":"^5.9.2","wrangler":"^3.0.0"},"peerDependenciesMeta":{"@anthropic/claude-code-sdk":{"optional":true}},"directories":{"test":"tests"},"lint-staged":{"src/**/*.{ts,js}":["eslint --fix","prettier --write"],"tests/**/*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml}":["prettier --write"]}}');
|
|
395626
395519
|
|
|
395627
395520
|
/***/ })
|
|
395628
395521
|
|