impel-cli 0.20.9 → 0.20.11
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/RELEASE_NOTES.md +17 -0
- package/package.json +1 -1
- package/src/agents.js +5 -3
- package/src/nativeAgentTransport.js +5 -1
package/RELEASE_NOTES.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Release notes
|
|
2
2
|
|
|
3
|
+
## 0.20.11 — Managed profile upgrade compatibility
|
|
4
|
+
|
|
5
|
+
- Recognizes every discovery-root manifest from v2 through the current schema
|
|
6
|
+
when refreshing generated native agents.
|
|
7
|
+
- Preserves collision protection for files absent from the prior managed
|
|
8
|
+
manifest while allowing v8 profiles to regenerate onto v9.
|
|
9
|
+
- Adds a regression test for upgrading the immediately previous manifest.
|
|
10
|
+
|
|
11
|
+
## 0.20.10 — Direct-answer continuation surface
|
|
12
|
+
|
|
13
|
+
- Limits answer-only native agents to the exact answer and resume tools.
|
|
14
|
+
- Removes the unnecessary recovery branch after an authoritative continuation
|
|
15
|
+
handle exists, keeping healthy long-running answers within four inference
|
|
16
|
+
rounds while durable profiles retain ambiguous-start recovery.
|
|
17
|
+
- Regenerates managed agent profiles so the eager allowlist matches the
|
|
18
|
+
fail-closed local MCP surface.
|
|
19
|
+
|
|
3
20
|
## 0.20.9 — Claude managed-tool permissions
|
|
4
21
|
|
|
5
22
|
- Lets eager Claude custom agents execute their fixed, tenant-bound MCP tools
|
package/package.json
CHANGED
package/src/agents.js
CHANGED
|
@@ -51,7 +51,7 @@ export const NATIVE_AGENT_RUN_TOOL = "run_native_agent";
|
|
|
51
51
|
export const NATIVE_AGENT_RESUME_TOOL = "resume_native_agent_run";
|
|
52
52
|
export const NATIVE_AGENT_RECOVER_TOOL = "recover_native_agent_runs";
|
|
53
53
|
export const MANAGED_AGENT_MCP_SERVER = "impel_agent";
|
|
54
|
-
export const MANAGED_AGENT_MANIFEST_VERSION =
|
|
54
|
+
export const MANAGED_AGENT_MANIFEST_VERSION = 9;
|
|
55
55
|
|
|
56
56
|
const NATIVE_AGENT_TOOL_NAMES = [
|
|
57
57
|
NATIVE_AGENT_RUN_TOOL,
|
|
@@ -61,7 +61,7 @@ const NATIVE_AGENT_TOOL_NAMES = [
|
|
|
61
61
|
const NATIVE_AGENT_RECOVERY_TOOL_NAMES = [NATIVE_AGENT_RESUME_TOOL, NATIVE_AGENT_RECOVER_TOOL];
|
|
62
62
|
function nativeAgentToolNames(agent) {
|
|
63
63
|
return usesDirectAnswer(agent)
|
|
64
|
-
? [NATIVE_AGENT_ANSWER_TOOL,
|
|
64
|
+
? [NATIVE_AGENT_ANSWER_TOOL, NATIVE_AGENT_RESUME_TOOL]
|
|
65
65
|
: NATIVE_AGENT_TOOL_NAMES;
|
|
66
66
|
}
|
|
67
67
|
function eagerNativeAgentTransportEnabled() {
|
|
@@ -949,7 +949,9 @@ export function syncAgentProfile({
|
|
|
949
949
|
throw new Error("generated native-agent destinations are not unique");
|
|
950
950
|
}
|
|
951
951
|
const priorFiles = new Set(prior?.files || []);
|
|
952
|
-
const priorUsesDiscoveryRoot =
|
|
952
|
+
const priorUsesDiscoveryRoot = Number.isInteger(prior?.version)
|
|
953
|
+
&& prior.version >= 2
|
|
954
|
+
&& prior.version <= MANAGED_AGENT_MANIFEST_VERSION;
|
|
953
955
|
|
|
954
956
|
// Native clients discover standalone definitions directly under `agents/`.
|
|
955
957
|
// Preflight every destination before writing so an unmanaged file with the
|
|
@@ -2193,7 +2193,11 @@ export function nativeAgentCompositeTools({ mode = "durable" } = {}) {
|
|
|
2193
2193
|
},
|
|
2194
2194
|
];
|
|
2195
2195
|
if (mode === "answer") {
|
|
2196
|
-
|
|
2196
|
+
// A bounded answer either returns terminal text or the authoritative
|
|
2197
|
+
// continuation handle. Once that handle exists, resume is the only valid
|
|
2198
|
+
// next action; exposing recovery here gives the wrapper model an
|
|
2199
|
+
// unnecessary branch and can add a fifth inference round to healthy runs.
|
|
2200
|
+
return [answerTool, tools.find(({ name }) => name === NATIVE_AGENT_RESUME_TOOL)];
|
|
2197
2201
|
}
|
|
2198
2202
|
return mode === "recovery" ? tools.filter(({ name }) => name !== NATIVE_AGENT_RUN_TOOL) : tools;
|
|
2199
2203
|
}
|