open-agents-ai 0.104.15 → 0.104.17
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/index.js +66 -12
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -34560,6 +34560,14 @@ import { execSync as execSync26 } from "node:child_process";
|
|
|
34560
34560
|
function isNeovimActive() {
|
|
34561
34561
|
return _state !== null && !_state.cleanedUp;
|
|
34562
34562
|
}
|
|
34563
|
+
function isNeovimFocused() {
|
|
34564
|
+
return _state?.focused ?? false;
|
|
34565
|
+
}
|
|
34566
|
+
function refocusNeovim() {
|
|
34567
|
+
if (!_state || _state.cleanedUp || _state.focused)
|
|
34568
|
+
return;
|
|
34569
|
+
toggleFocus(_state);
|
|
34570
|
+
}
|
|
34563
34571
|
async function startNeovimMode(opts) {
|
|
34564
34572
|
if (_state && !_state.cleanedUp) {
|
|
34565
34573
|
return "Neovim mode is already active. Use /neovim to exit first.";
|
|
@@ -38008,6 +38016,7 @@ async function handleSlashCommand(input, ctx) {
|
|
|
38008
38016
|
ctx.clearScreen();
|
|
38009
38017
|
renderInfo("Neovim mode stopped. Main waterfall restored.");
|
|
38010
38018
|
} else {
|
|
38019
|
+
ctx.retireCarousel?.();
|
|
38011
38020
|
const contentRows = ctx.availableContentRows?.() ?? Math.max(5, (process.stdout.rows ?? 24) - 6);
|
|
38012
38021
|
const cols = process.stdout.columns ?? 80;
|
|
38013
38022
|
const err = await startNeovimMode({
|
|
@@ -38023,8 +38032,6 @@ async function handleSlashCommand(input, ctx) {
|
|
|
38023
38032
|
});
|
|
38024
38033
|
if (err) {
|
|
38025
38034
|
renderError(err);
|
|
38026
|
-
} else {
|
|
38027
|
-
renderInfo("Neovim mode started. Ctrl+N toggles focus between editor and input.");
|
|
38028
38035
|
}
|
|
38029
38036
|
}
|
|
38030
38037
|
return "handled";
|
|
@@ -47723,22 +47730,47 @@ var init_status_bar = __esm({
|
|
|
47723
47730
|
}
|
|
47724
47731
|
/** Expose gateway status — shown after capability emojis */
|
|
47725
47732
|
_expose = null;
|
|
47726
|
-
/** Blink state for expose icon during active inference */
|
|
47733
|
+
/** Blink state for expose icon during active inference — router LED pattern */
|
|
47727
47734
|
_exposeBlinkOn = true;
|
|
47728
47735
|
_exposeBlinkTimer = null;
|
|
47736
|
+
/** Trail timer — keeps blinking briefly after connections drop */
|
|
47737
|
+
_exposeTrailTimer = null;
|
|
47738
|
+
/** Rolling request count for activity-based trail duration */
|
|
47739
|
+
_exposeRecentReqs = 0;
|
|
47740
|
+
_exposeLastReqCount = 0;
|
|
47729
47741
|
/** Update expose gateway status */
|
|
47730
47742
|
setExposeStatus(status) {
|
|
47731
47743
|
this._expose = status;
|
|
47732
|
-
|
|
47733
|
-
|
|
47734
|
-
|
|
47744
|
+
const newReqs = status.totalRequests - this._exposeLastReqCount;
|
|
47745
|
+
if (newReqs > 0) {
|
|
47746
|
+
this._exposeRecentReqs = Math.min(this._exposeRecentReqs + newReqs, 50);
|
|
47747
|
+
this._exposeLastReqCount = status.totalRequests;
|
|
47748
|
+
}
|
|
47749
|
+
if (status.activeConnections > 0) {
|
|
47750
|
+
if (this._exposeTrailTimer) {
|
|
47751
|
+
clearTimeout(this._exposeTrailTimer);
|
|
47752
|
+
this._exposeTrailTimer = null;
|
|
47753
|
+
}
|
|
47754
|
+
if (!this._exposeBlinkTimer) {
|
|
47755
|
+
this._exposeBlinkTimer = setInterval(() => {
|
|
47756
|
+
this._exposeBlinkOn = !this._exposeBlinkOn;
|
|
47757
|
+
if (this.active)
|
|
47758
|
+
this.renderFooterPreserveCursor();
|
|
47759
|
+
}, 100);
|
|
47760
|
+
}
|
|
47761
|
+
} else if (this._exposeBlinkTimer && !this._exposeTrailTimer) {
|
|
47762
|
+
const trailMs = Math.min(1e3 + this._exposeRecentReqs * 40, 3e3);
|
|
47763
|
+
this._exposeTrailTimer = setTimeout(() => {
|
|
47764
|
+
if (this._exposeBlinkTimer) {
|
|
47765
|
+
clearInterval(this._exposeBlinkTimer);
|
|
47766
|
+
this._exposeBlinkTimer = null;
|
|
47767
|
+
}
|
|
47768
|
+
this._exposeBlinkOn = true;
|
|
47769
|
+
this._exposeTrailTimer = null;
|
|
47770
|
+
this._exposeRecentReqs = Math.max(0, this._exposeRecentReqs - 5);
|
|
47735
47771
|
if (this.active)
|
|
47736
47772
|
this.renderFooterPreserveCursor();
|
|
47737
|
-
},
|
|
47738
|
-
} else if (status.activeConnections === 0 && this._exposeBlinkTimer) {
|
|
47739
|
-
clearInterval(this._exposeBlinkTimer);
|
|
47740
|
-
this._exposeBlinkTimer = null;
|
|
47741
|
-
this._exposeBlinkOn = true;
|
|
47773
|
+
}, trailMs);
|
|
47742
47774
|
}
|
|
47743
47775
|
if (this.active)
|
|
47744
47776
|
this.renderFooterPreserveCursor();
|
|
@@ -47749,8 +47781,13 @@ var init_status_bar = __esm({
|
|
|
47749
47781
|
if (this._exposeBlinkTimer) {
|
|
47750
47782
|
clearInterval(this._exposeBlinkTimer);
|
|
47751
47783
|
this._exposeBlinkTimer = null;
|
|
47752
|
-
this._exposeBlinkOn = true;
|
|
47753
47784
|
}
|
|
47785
|
+
if (this._exposeTrailTimer) {
|
|
47786
|
+
clearTimeout(this._exposeTrailTimer);
|
|
47787
|
+
this._exposeTrailTimer = null;
|
|
47788
|
+
}
|
|
47789
|
+
this._exposeBlinkOn = true;
|
|
47790
|
+
this._exposeRecentReqs = 0;
|
|
47754
47791
|
if (this.active)
|
|
47755
47792
|
this.renderFooterPreserveCursor();
|
|
47756
47793
|
}
|
|
@@ -51463,6 +51500,14 @@ Respond concisely and safely. Remember: you are talking to the general public.`;
|
|
|
51463
51500
|
showPrompt() {
|
|
51464
51501
|
showPrompt();
|
|
51465
51502
|
},
|
|
51503
|
+
retireCarousel() {
|
|
51504
|
+
if (!carouselRetired && carousel.isRunning) {
|
|
51505
|
+
carousel.stop();
|
|
51506
|
+
carouselRetired = true;
|
|
51507
|
+
if (statusBar.isActive)
|
|
51508
|
+
statusBar.setScrollRegionTop(1);
|
|
51509
|
+
}
|
|
51510
|
+
},
|
|
51466
51511
|
destroyProject() {
|
|
51467
51512
|
const oaPath = join51(repoRoot, OA_DIR);
|
|
51468
51513
|
if (existsSync42(oaPath)) {
|
|
@@ -51797,6 +51842,9 @@ Execute this skill now. Follow the behavioral guidance above.`;
|
|
|
51797
51842
|
}, currentTaskType, resolvedContextWindowSize, resolvedCaps, currentStyle, deepContextEnabled, compactionSNRCallback(), emotionEngine, flowEnabled, buildSlashCommandHandler(), thinkingEnabled, handleAskUser);
|
|
51798
51843
|
activeTask = task;
|
|
51799
51844
|
showPrompt();
|
|
51845
|
+
if (isNeovimActive() && !isNeovimFocused()) {
|
|
51846
|
+
refocusNeovim();
|
|
51847
|
+
}
|
|
51800
51848
|
await task.promise;
|
|
51801
51849
|
} catch (err) {
|
|
51802
51850
|
const errMsg = err instanceof Error ? err.message : String(err);
|
|
@@ -51857,6 +51905,9 @@ ${result.text}`;
|
|
|
51857
51905
|
} else {
|
|
51858
51906
|
writeContent(() => renderUserInterrupt(input));
|
|
51859
51907
|
}
|
|
51908
|
+
if (isNeovimActive() && !isNeovimFocused()) {
|
|
51909
|
+
refocusNeovim();
|
|
51910
|
+
}
|
|
51860
51911
|
const steerRunner = activeTask.runner;
|
|
51861
51912
|
const steerTaskGoal = lastSubmittedPrompt;
|
|
51862
51913
|
const steerFeed = getActivityFeed();
|
|
@@ -52041,6 +52092,9 @@ NEW TASK: ${fullInput}`;
|
|
|
52041
52092
|
}, currentTaskType, resolvedContextWindowSize, resolvedCaps, currentStyle, deepContextEnabled, compactionSNRCallback(), emotionEngine, flowEnabled, buildSlashCommandHandler(), thinkingEnabled, handleAskUser);
|
|
52042
52093
|
activeTask = task;
|
|
52043
52094
|
showPrompt();
|
|
52095
|
+
if (isNeovimActive() && !isNeovimFocused()) {
|
|
52096
|
+
refocusNeovim();
|
|
52097
|
+
}
|
|
52044
52098
|
await task.promise;
|
|
52045
52099
|
} catch (err) {
|
|
52046
52100
|
const errMsg = err instanceof Error ? err.message : String(err);
|
package/package.json
CHANGED