agentic-engineering-harness 0.6.7 → 0.6.8
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/operations/mcp.d.ts
CHANGED
|
@@ -1 +1,7 @@
|
|
|
1
|
+
export type ContextAgentIdentitySource = "argument" | "environment" | "lead-state";
|
|
2
|
+
export interface ContextAgentIdentity {
|
|
3
|
+
agentId: string;
|
|
4
|
+
source: ContextAgentIdentitySource;
|
|
5
|
+
}
|
|
1
6
|
export declare function serveOperationMcp(): Promise<void>;
|
|
7
|
+
export declare function resolveContextAgentIdentity(root: string, explicitAgentId?: string, env?: NodeJS.ProcessEnv): Promise<ContextAgentIdentity>;
|
package/dist/operations/mcp.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
import fs from "node:fs/promises";
|
|
1
2
|
import readline from "node:readline";
|
|
2
3
|
import path from "node:path";
|
|
3
4
|
import process from "node:process";
|
|
4
5
|
import { loadProjectConfig } from "../core/config.js";
|
|
5
6
|
import { statusLeadContext } from "../paseo/context.js";
|
|
7
|
+
import { PASEO_BOOTSTRAP_VERSION } from "../paseo/start.js";
|
|
8
|
+
import { recordPaseoTrace } from "../paseo/trace.js";
|
|
9
|
+
import { VERSION } from "../version.js";
|
|
6
10
|
import { cancelOperation, startDetachedOperation } from "./controller.js";
|
|
7
11
|
import { loadOperation } from "./state.js";
|
|
8
12
|
const tools = [
|
|
@@ -54,7 +58,7 @@ const tools = [
|
|
|
54
58
|
},
|
|
55
59
|
{
|
|
56
60
|
name: "aeh_context_status",
|
|
57
|
-
description: "Read
|
|
61
|
+
description: "Read the managed lead's current Paseo AgentSnapshot usage and evaluate AEH context-pressure policy without shell/log parsing. No agentId is required for a normal managed lead: AEH resolves its durable lead-session identity when the MCP host does not propagate PASEO_AGENT_ID. Pass agentId only for explicit diagnostics/non-lead callers.",
|
|
58
62
|
inputSchema: {
|
|
59
63
|
type: "object",
|
|
60
64
|
properties: { agentId: { type: "string" } },
|
|
@@ -123,14 +127,56 @@ async function callTool(params) {
|
|
|
123
127
|
if (name === "aeh_operation_cancel")
|
|
124
128
|
return toolResult(await cancelOperation(root, string(args.operationId, "operationId")));
|
|
125
129
|
if (name === "aeh_context_status") {
|
|
126
|
-
const
|
|
127
|
-
|
|
128
|
-
throw new Error("aeh_context_status requires agentId because PASEO_AGENT_ID is not available to this MCP subprocess.");
|
|
130
|
+
const identity = await resolveContextAgentIdentity(root, optionalString(args.agentId));
|
|
131
|
+
await recordPaseoTrace(root, "context.identity", { agentId: identity.agentId, source: identity.source });
|
|
129
132
|
const config = await loadProjectConfig(root);
|
|
130
|
-
return toolResult(await statusLeadContext(root, config, agentId));
|
|
133
|
+
return toolResult(await statusLeadContext(root, config, identity.agentId));
|
|
131
134
|
}
|
|
132
135
|
throw new Error(`Unknown AEH operation tool '${name}'.`);
|
|
133
136
|
}
|
|
137
|
+
export async function resolveContextAgentIdentity(root, explicitAgentId, env = process.env) {
|
|
138
|
+
const explicit = optionalString(explicitAgentId);
|
|
139
|
+
if (explicit)
|
|
140
|
+
return { agentId: explicit, source: "argument" };
|
|
141
|
+
const environment = optionalString(env.PASEO_AGENT_ID);
|
|
142
|
+
if (environment)
|
|
143
|
+
return { agentId: environment, source: "environment" };
|
|
144
|
+
const absoluteRoot = path.resolve(root);
|
|
145
|
+
const config = await loadProjectConfig(absoluteRoot);
|
|
146
|
+
const stateDir = path.resolve(absoluteRoot, config.orchestration?.interactive?.stateDir ?? ".harness/paseo");
|
|
147
|
+
const stateFile = path.join(stateDir, "lead-session.json");
|
|
148
|
+
let value;
|
|
149
|
+
try {
|
|
150
|
+
value = JSON.parse(await fs.readFile(stateFile, "utf8"));
|
|
151
|
+
}
|
|
152
|
+
catch (error) {
|
|
153
|
+
throw new Error(`aeh_context_status could not resolve the current lead agent: neither an explicit agentId nor PASEO_AGENT_ID is available, and ${stateFile} could not be read as durable lead state. Start a fresh managed lead with aeh start or pass agentId explicitly. (${error instanceof Error ? error.message : String(error)})`);
|
|
154
|
+
}
|
|
155
|
+
const state = object(value);
|
|
156
|
+
const agentId = optionalString(state.agentId);
|
|
157
|
+
const projectRoot = optionalString(state.projectRoot);
|
|
158
|
+
const projectName = optionalString(state.projectName);
|
|
159
|
+
const aehVersion = optionalString(state.aehVersion);
|
|
160
|
+
const version = typeof state.version === "number" ? state.version : undefined;
|
|
161
|
+
const bootstrapVersion = typeof state.bootstrapVersion === "number" ? state.bootstrapVersion : undefined;
|
|
162
|
+
const mismatches = [];
|
|
163
|
+
if (version !== 2)
|
|
164
|
+
mismatches.push(`state version ${String(version ?? "missing")} != 2`);
|
|
165
|
+
if (bootstrapVersion !== PASEO_BOOTSTRAP_VERSION)
|
|
166
|
+
mismatches.push(`bootstrap ${String(bootstrapVersion ?? "missing")} != ${PASEO_BOOTSTRAP_VERSION}`);
|
|
167
|
+
if (aehVersion !== VERSION)
|
|
168
|
+
mismatches.push(`AEH ${aehVersion ?? "missing"} != ${VERSION}`);
|
|
169
|
+
if (!projectRoot || path.resolve(projectRoot) !== absoluteRoot)
|
|
170
|
+
mismatches.push("project root does not match AEH_CONTROL_ROOT");
|
|
171
|
+
if (projectName !== config.project.name)
|
|
172
|
+
mismatches.push(`project ${projectName ?? "missing"} != ${config.project.name}`);
|
|
173
|
+
if (!agentId)
|
|
174
|
+
mismatches.push("agentId is missing");
|
|
175
|
+
if (mismatches.length) {
|
|
176
|
+
throw new Error(`aeh_context_status refused incompatible durable lead state at ${stateFile}: ${mismatches.join("; ")}. Start a fresh managed lead with aeh start or pass agentId explicitly for diagnostics.`);
|
|
177
|
+
}
|
|
178
|
+
return { agentId: agentId, source: "lead-state" };
|
|
179
|
+
}
|
|
134
180
|
function controlRoot() { return path.resolve(process.env.AEH_CONTROL_ROOT?.trim() || process.cwd()); }
|
|
135
181
|
function toolResult(value) { return { content: [{ type: "text", text: JSON.stringify(value, null, 2) }], structuredContent: value }; }
|
|
136
182
|
function write(value) { process.stdout.write(`${JSON.stringify(value)}\n`); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/operations/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAwD,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/operations/mcp.ts"],"names":[],"mappings":"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"}
|
package/docs/PASEO_NATIVE.md
CHANGED
|
@@ -51,7 +51,9 @@ HARD_HANDOFF
|
|
|
51
51
|
ratio >= hardHandoffThreshold (default 90%)
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
-
Managed leads receive the preapproved `aeh_context_status` tool. `
|
|
54
|
+
Managed leads receive the preapproved `aeh_context_status` tool. A normal managed lead calls it without an `agentId`. AEH resolves the context target in strict order: explicit diagnostic `agentId`, host-provided `PASEO_AGENT_ID`, then the compatible project-local `lead-session.json` written by `aeh start`. The durable fallback respects configured `orchestration.interactive.stateDir` and validates the lead-state schema version, current bootstrap/runtime version, project root, project name and agent id before use. It fails closed on stale or mismatched state and never guesses by listing agents. The selected identity source is traced as `harness.paseo.context.identity`.
|
|
55
|
+
|
|
56
|
+
`aeh context guard --agent ...` remains the CLI compatibility/non-interactive surface and owns handoff-artifact/rotation side effects.
|
|
55
57
|
|
|
56
58
|
## Event-driven completion
|
|
57
59
|
|
|
@@ -153,6 +155,7 @@ harness.paseo.agent.snapshot
|
|
|
153
155
|
harness.paseo.agent.wait
|
|
154
156
|
harness.paseo.agent.wait.completed
|
|
155
157
|
harness.paseo.agent.wait.fallback
|
|
158
|
+
harness.paseo.context.identity
|
|
156
159
|
harness.paseo.context.status
|
|
157
160
|
harness.paseo.context.handoff
|
|
158
161
|
harness.paseo.fallback.cli
|
|
@@ -164,6 +167,7 @@ A useful trace answers:
|
|
|
164
167
|
|
|
165
168
|
- which transport was selected (`sdk` or `cli`);
|
|
166
169
|
- which observation source was used (`subscription`, snapshot, sdk-wait, cli-wait);
|
|
170
|
+
- how the managed lead identity was resolved (`argument`, `environment`, `lead-state`);
|
|
167
171
|
- whether a fallback was exceptional or an intentional SDK parity gap;
|
|
168
172
|
- why the fallback occurred;
|
|
169
173
|
- the associated agent/operation/provider/model/workspace;
|
|
@@ -178,4 +182,4 @@ When Paseo adds public SDK parity for a CLI-only operation:
|
|
|
178
182
|
3. retain CLI only as version-negotiated compatibility if still necessary;
|
|
179
183
|
4. add a regression proving SDK use;
|
|
180
184
|
5. keep a fallback trace until the compatibility floor makes CLI removable;
|
|
181
|
-
6. remove any capability inference based on parsing help text when it no longer serves a compatibility path.
|
|
185
|
+
6. remove any capability inference based on parsing help text when it no longer serves a compatibility path.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentic-engineering-harness",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.8",
|
|
4
4
|
"description": "OSS-first engineering harness for deterministic, spec-driven, issue-driven, audit-governed and orchestration-first multi-agent software delivery.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|