@pandi-coding-agent/pi-cante 0.80.2 → 0.80.3-cante.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 +35 -1
- package/dist/core/agent-session.d.ts +2 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +30 -3
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts +0 -2
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +1 -9
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/extensions/index.d.ts +1 -1
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/types.d.ts +8 -1
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +28 -1
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/settings-manager.d.ts +3 -3
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +8 -8
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +3 -1
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +15 -7
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +2 -0
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +13 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts +28 -0
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -0
- package/dist/modes/interactive/components/status-indicator.js +60 -0
- package/dist/modes/interactive/components/status-indicator.js.map +1 -0
- package/dist/modes/interactive/components/user-message.d.ts +6 -2
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js +18 -5
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +5 -7
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +88 -116
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/extensions.md +14 -0
- package/docs/settings.md +1 -0
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/gondolin/package-lock.json +2 -2
- package/examples/extensions/gondolin/package.json +1 -1
- package/examples/extensions/sandbox/package-lock.json +2 -2
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/npm-shrinkwrap.json +44 -44
- package/package.json +14 -14
|
@@ -120,6 +120,7 @@ export class AgentSession {
|
|
|
120
120
|
// Base system prompt (without extension appends) - used to apply fresh appends each turn
|
|
121
121
|
_baseSystemPrompt = "";
|
|
122
122
|
_baseSystemPromptOptions;
|
|
123
|
+
_systemPromptOverride;
|
|
123
124
|
constructor(config) {
|
|
124
125
|
this.agent = config.agent;
|
|
125
126
|
this.sessionManager = config.sessionManager;
|
|
@@ -139,6 +140,7 @@ export class AgentSession {
|
|
|
139
140
|
// (session persistence, extensions, auto-compaction, retry logic)
|
|
140
141
|
this._unsubscribeAgent = this.agent.subscribe(this._handleAgentEvent);
|
|
141
142
|
this._installAgentToolHooks();
|
|
143
|
+
this._installAgentNextTurnRefresh();
|
|
142
144
|
this._buildRuntime({
|
|
143
145
|
activeToolNames: this._initialActiveToolNames,
|
|
144
146
|
includeAllExtensionTools: true,
|
|
@@ -227,6 +229,26 @@ export class AgentSession {
|
|
|
227
229
|
};
|
|
228
230
|
};
|
|
229
231
|
}
|
|
232
|
+
_installAgentNextTurnRefresh() {
|
|
233
|
+
const previousPrepareNextTurnWithContext = this.agent.prepareNextTurnWithContext ??
|
|
234
|
+
(this.agent.prepareNextTurn
|
|
235
|
+
? async (_turn, signal) => await this.agent.prepareNextTurn?.(signal)
|
|
236
|
+
: undefined);
|
|
237
|
+
this.agent.prepareNextTurnWithContext = async (turn, signal) => {
|
|
238
|
+
const previousSnapshot = await previousPrepareNextTurnWithContext?.(turn, signal);
|
|
239
|
+
const previousContext = previousSnapshot?.context ?? turn.context;
|
|
240
|
+
return {
|
|
241
|
+
...previousSnapshot,
|
|
242
|
+
context: {
|
|
243
|
+
...previousContext,
|
|
244
|
+
systemPrompt: this._systemPromptOverride ?? this._baseSystemPrompt,
|
|
245
|
+
tools: this.agent.state.tools.slice(),
|
|
246
|
+
},
|
|
247
|
+
model: this.agent.state.model,
|
|
248
|
+
thinkingLevel: this.agent.state.thinkingLevel,
|
|
249
|
+
};
|
|
250
|
+
};
|
|
251
|
+
}
|
|
230
252
|
// =========================================================================
|
|
231
253
|
// Event Subscription
|
|
232
254
|
// =========================================================================
|
|
@@ -560,7 +582,7 @@ export class AgentSession {
|
|
|
560
582
|
this.agent.state.tools = tools;
|
|
561
583
|
// Rebuild base system prompt with new tool set
|
|
562
584
|
this._baseSystemPrompt = this._rebuildSystemPrompt(validToolNames);
|
|
563
|
-
this.agent.state.systemPrompt = this._baseSystemPrompt;
|
|
585
|
+
this.agent.state.systemPrompt = this._systemPromptOverride ?? this._baseSystemPrompt;
|
|
564
586
|
}
|
|
565
587
|
/** Whether compaction or branch summarization is currently running */
|
|
566
588
|
get isCompacting() {
|
|
@@ -668,6 +690,7 @@ export class AgentSession {
|
|
|
668
690
|
}
|
|
669
691
|
}
|
|
670
692
|
finally {
|
|
693
|
+
this._systemPromptOverride = undefined;
|
|
671
694
|
this._flushPendingBashMessages();
|
|
672
695
|
}
|
|
673
696
|
}
|
|
@@ -808,11 +831,13 @@ export class AgentSession {
|
|
|
808
831
|
}
|
|
809
832
|
}
|
|
810
833
|
// Apply extension-modified system prompt, or reset to base
|
|
811
|
-
if (result?.systemPrompt) {
|
|
834
|
+
if (result?.systemPrompt !== undefined) {
|
|
835
|
+
this._systemPromptOverride = result.systemPrompt;
|
|
812
836
|
this.agent.state.systemPrompt = result.systemPrompt;
|
|
813
837
|
}
|
|
814
838
|
else {
|
|
815
839
|
// Ensure we're using the base prompt (in case previous turn had modifications)
|
|
840
|
+
this._systemPromptOverride = undefined;
|
|
816
841
|
this.agent.state.systemPrompt = this._baseSystemPrompt;
|
|
817
842
|
}
|
|
818
843
|
}
|
|
@@ -2137,7 +2162,9 @@ export class AgentSession {
|
|
|
2137
2162
|
*/
|
|
2138
2163
|
setSessionName(name) {
|
|
2139
2164
|
this.sessionManager.appendSessionInfo(name);
|
|
2140
|
-
|
|
2165
|
+
const event = { type: "session_info_changed", name: this.sessionManager.getSessionName() };
|
|
2166
|
+
this._emit(event);
|
|
2167
|
+
void this._extensionRunner.emit(event);
|
|
2141
2168
|
}
|
|
2142
2169
|
// =========================================================================
|
|
2143
2170
|
// Tree Navigation
|