agentic-engineering-harness 0.6.27 → 0.6.29
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/README.md +3 -3
- package/dist/agents/permissions.js +12 -0
- package/dist/agents/permissions.js.map +1 -1
- package/dist/audit/run.js +2 -0
- package/dist/audit/run.js.map +1 -1
- package/dist/cli.js +12 -13
- package/dist/cli.js.map +1 -1
- package/dist/context/budget.d.ts +4 -0
- package/dist/context/budget.js +19 -0
- package/dist/context/budget.js.map +1 -0
- package/dist/context/classifier.d.ts +4 -0
- package/dist/context/classifier.js +14 -0
- package/dist/context/classifier.js.map +1 -0
- package/dist/context/compression/headroom.d.ts +18 -0
- package/dist/context/compression/headroom.js +53 -0
- package/dist/context/compression/headroom.js.map +1 -0
- package/dist/context/compression/index.d.ts +3 -0
- package/dist/context/compression/index.js +4 -0
- package/dist/context/compression/index.js.map +1 -0
- package/dist/context/compression/lifecycle.d.ts +20 -0
- package/dist/context/compression/lifecycle.js +70 -0
- package/dist/context/compression/lifecycle.js.map +1 -0
- package/dist/context/compression/types.d.ts +27 -0
- package/dist/context/compression/types.js +2 -0
- package/dist/context/compression/types.js.map +1 -0
- package/dist/context/envelope.d.ts +4 -0
- package/dist/context/envelope.js +20 -0
- package/dist/context/envelope.js.map +1 -0
- package/dist/context/estimator.d.ts +3 -0
- package/dist/context/estimator.js +10 -0
- package/dist/context/estimator.js.map +1 -0
- package/dist/context/eval.d.ts +19 -0
- package/dist/context/eval.js +12 -0
- package/dist/context/eval.js.map +1 -0
- package/dist/context/gateway.d.ts +22 -0
- package/dist/context/gateway.js +202 -0
- package/dist/context/gateway.js.map +1 -0
- package/dist/context/index.d.ts +15 -0
- package/dist/context/index.js +16 -0
- package/dist/context/index.js.map +1 -0
- package/dist/context/policy.d.ts +6 -0
- package/dist/context/policy.js +40 -0
- package/dist/context/policy.js.map +1 -0
- package/dist/context/preflight.d.ts +13 -0
- package/dist/context/preflight.js +25 -0
- package/dist/context/preflight.js.map +1 -0
- package/dist/context/projectors/audit.d.ts +2 -0
- package/dist/context/projectors/audit.js +30 -0
- package/dist/context/projectors/audit.js.map +1 -0
- package/dist/context/projectors/diff.d.ts +2 -0
- package/dist/context/projectors/diff.js +8 -0
- package/dist/context/projectors/diff.js.map +1 -0
- package/dist/context/projectors/explorer.d.ts +2 -0
- package/dist/context/projectors/explorer.js +5 -0
- package/dist/context/projectors/explorer.js.map +1 -0
- package/dist/context/projectors/index.d.ts +8 -0
- package/dist/context/projectors/index.js +9 -0
- package/dist/context/projectors/index.js.map +1 -0
- package/dist/context/projectors/operation.d.ts +3 -0
- package/dist/context/projectors/operation.js +26 -0
- package/dist/context/projectors/operation.js.map +1 -0
- package/dist/context/projectors/planner.d.ts +2 -0
- package/dist/context/projectors/planner.js +5 -0
- package/dist/context/projectors/planner.js.map +1 -0
- package/dist/context/projectors/source.d.ts +2 -0
- package/dist/context/projectors/source.js +5 -0
- package/dist/context/projectors/source.js.map +1 -0
- package/dist/context/projectors/structured.d.ts +2 -0
- package/dist/context/projectors/structured.js +24 -0
- package/dist/context/projectors/structured.js.map +1 -0
- package/dist/context/projectors/validation.d.ts +3 -0
- package/dist/context/projectors/validation.js +25 -0
- package/dist/context/projectors/validation.js.map +1 -0
- package/dist/context/provenance.d.ts +3 -0
- package/dist/context/provenance.js +13 -0
- package/dist/context/provenance.js.map +1 -0
- package/dist/context/repository/graphify.d.ts +3 -0
- package/dist/context/repository/graphify.js +7 -0
- package/dist/context/repository/graphify.js.map +1 -0
- package/dist/context/repository/index.d.ts +6 -0
- package/dist/context/repository/index.js +7 -0
- package/dist/context/repository/index.js.map +1 -0
- package/dist/context/repository/map.d.ts +6 -0
- package/dist/context/repository/map.js +34 -0
- package/dist/context/repository/map.js.map +1 -0
- package/dist/context/repository/rank.d.ts +3 -0
- package/dist/context/repository/rank.js +43 -0
- package/dist/context/repository/rank.js.map +1 -0
- package/dist/context/repository/render.d.ts +8 -0
- package/dist/context/repository/render.js +21 -0
- package/dist/context/repository/render.js.map +1 -0
- package/dist/context/repository/serena.d.ts +11 -0
- package/dist/context/repository/serena.js +26 -0
- package/dist/context/repository/serena.js.map +1 -0
- package/dist/context/repository/types.d.ts +34 -0
- package/dist/context/repository/types.js +2 -0
- package/dist/context/repository/types.js.map +1 -0
- package/dist/context/retrieval/authorization.d.ts +11 -0
- package/dist/context/retrieval/authorization.js +9 -0
- package/dist/context/retrieval/authorization.js.map +1 -0
- package/dist/context/retrieval/gateway.d.ts +33 -0
- package/dist/context/retrieval/gateway.js +69 -0
- package/dist/context/retrieval/gateway.js.map +1 -0
- package/dist/context/retrieval/index.d.ts +5 -0
- package/dist/context/retrieval/index.js +6 -0
- package/dist/context/retrieval/index.js.map +1 -0
- package/dist/context/retrieval/mcp.d.ts +3 -0
- package/dist/context/retrieval/mcp.js +8 -0
- package/dist/context/retrieval/mcp.js.map +1 -0
- package/dist/context/retrieval/persisted.d.ts +3 -0
- package/dist/context/retrieval/persisted.js +22 -0
- package/dist/context/retrieval/persisted.js.map +1 -0
- package/dist/context/retrieval/server.d.ts +1 -0
- package/dist/context/retrieval/server.js +52 -0
- package/dist/context/retrieval/server.js.map +1 -0
- package/dist/context/telemetry.d.ts +3 -0
- package/dist/context/telemetry.js +9 -0
- package/dist/context/telemetry.js.map +1 -0
- package/dist/context/types.d.ts +243 -0
- package/dist/context/types.js +29 -0
- package/dist/context/types.js.map +1 -0
- package/dist/core/config.js +19 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/doctor.js +23 -2
- package/dist/core/doctor.js.map +1 -1
- package/dist/core/run.js +35 -14
- package/dist/core/run.js.map +1 -1
- package/dist/core/types.d.ts +52 -0
- package/dist/core/verify.d.ts +2 -0
- package/dist/core/verify.js +1 -1
- package/dist/core/verify.js.map +1 -1
- package/dist/entry.js +30 -0
- package/dist/entry.js.map +1 -1
- package/dist/evals/fullStack.d.ts +17 -0
- package/dist/evals/fullStack.js +42 -0
- package/dist/evals/fullStack.js.map +1 -0
- package/dist/main.js +1 -0
- package/dist/main.js.map +1 -1
- package/dist/operations/change.js +2 -0
- package/dist/operations/change.js.map +1 -1
- package/dist/paseo/launchSpec.d.ts +3 -0
- package/dist/paseo/launchSpec.js +17 -0
- package/dist/paseo/launchSpec.js.map +1 -1
- package/dist/provenance/generate.d.ts +19 -0
- package/dist/provenance/generate.js +94 -8
- package/dist/provenance/generate.js.map +1 -1
- package/dist/providers/engram.d.ts +26 -1
- package/dist/providers/engram.js +110 -6
- package/dist/providers/engram.js.map +1 -1
- package/dist/providers/graphify.d.ts +9 -1
- package/dist/providers/graphify.js +34 -16
- package/dist/providers/graphify.js.map +1 -1
- package/dist/providers/graphifyModel.d.ts +23 -0
- package/dist/providers/graphifyModel.js +101 -0
- package/dist/providers/graphifyModel.js.map +1 -0
- package/dist/providers/headroom.d.ts +2 -0
- package/dist/providers/headroom.js +3 -0
- package/dist/providers/headroom.js.map +1 -0
- package/dist/providers/memory.d.ts +1 -0
- package/dist/providers/memory.js +2 -0
- package/dist/providers/memory.js.map +1 -0
- package/dist/providers/serena.d.ts +1 -0
- package/dist/providers/serena.js +2 -0
- package/dist/providers/serena.js.map +1 -0
- package/dist/providers/types.d.ts +25 -2
- package/dist/telemetry/events.d.ts +1 -0
- package/dist/telemetry/events.js +19 -2
- package/dist/telemetry/events.js.map +1 -1
- package/dist/telemetry/otlp.d.ts +6 -1
- package/dist/telemetry/otlp.js +2 -2
- package/dist/telemetry/otlp.js.map +1 -1
- package/dist/toolchain/config.js +10 -1
- package/dist/toolchain/config.js.map +1 -1
- package/dist/toolchain/resolve.js +8 -0
- package/dist/toolchain/resolve.js.map +1 -1
- package/dist/validators/external.js +24 -3
- package/dist/validators/external.js.map +1 -1
- package/dist/validators/graphify.js +5 -73
- package/dist/validators/graphify.js.map +1 -1
- package/dist/validators/opa.d.ts +14 -1
- package/dist/validators/opa.js +6 -2
- package/dist/validators/opa.js.map +1 -1
- package/dist/validators/toolEvidence.d.ts +29 -0
- package/dist/validators/toolEvidence.js +104 -0
- package/dist/validators/toolEvidence.js.map +1 -0
- package/dist/workers/agentPrompt.d.ts +9 -0
- package/dist/workers/agentPrompt.js +133 -4
- package/dist/workers/agentPrompt.js.map +1 -1
- package/docs/ARCHITECTURE.md +20 -1
- package/docs/COMPONENT_MATURITY.md +43 -0
- package/docs/CONTEXT_EFFICIENCY.md +48 -0
- package/docs/MEMORY.md +9 -0
- package/docs/OBSERVABILITY.md +6 -1
- package/docs/OSS_STACK.md +10 -2
- package/docs/SECURITY.md +12 -0
- package/package.json +2 -2
- package/policies/core/trust-boundary.rego +14 -4
- package/presets/agents/default.jsonc +4 -4
- package/presets/agents/orchestration.jsonc +2 -2
- package/schemas/project.schema.json +14 -0
- package/templates/project.yaml +42 -0
- package/templates/toolchain.yaml +34 -1
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"temperature": 0.2
|
|
42
42
|
},
|
|
43
43
|
"architecture-reviewer": {
|
|
44
|
-
"execution": { "model": "@
|
|
44
|
+
"execution": { "model": "@workhorse" },
|
|
45
45
|
"temperature": 0.1
|
|
46
46
|
},
|
|
47
47
|
"security-reviewer": {
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
"profiles": {
|
|
101
101
|
"balanced": {
|
|
102
102
|
"agents": {
|
|
103
|
-
"architecture-reviewer": { "execution": { "model": "@
|
|
103
|
+
"architecture-reviewer": { "execution": { "model": "@workhorse" } },
|
|
104
104
|
"security-reviewer": { "execution": { "model": "@workhorse" } },
|
|
105
105
|
"requirements-reviewer": { "execution": { "model": "@workhorse" } }
|
|
106
106
|
}
|
|
@@ -48,6 +48,19 @@
|
|
|
48
48
|
"delivery": { "type": "object", "properties": { "stateDir": { "type": "string" }, "github": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "tokenEnv": { "type": "string", "minLength": 1 }, "repository": { "type": "string", "pattern": "^[^/]+/[^/]+$" }, "apiBaseUrl": { "type": "string", "format": "uri" }, "assignTokenOwner": { "type": "boolean" }, "labels": { "type": "array", "items": { "type": "string" } }, "branchPattern": { "type": "string", "minLength": 1 }, "finalizeOnAcceptance": { "type": "boolean" }, "pullRequestDraft": { "type": "boolean" } } }, "paseo": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "createWorkspace": { "type": "boolean" }, "autoUseWorkspace": { "type": "boolean" }, "worktreeSlugPattern": { "type": "string", "minLength": 1 } } } } },
|
|
49
49
|
"memory": { "type": "object" },
|
|
50
50
|
"codeIntelligence": { "type": "object", "properties": { "provider": { "type": "string" }, "required": { "type": "boolean" }, "graphPath": { "type": "string" }, "snapshotDir": { "type": "string" }, "refreshCommand": { "type": "string" }, "scheduling": { "type": "object", "properties": { "useEdges": { "type": "boolean" }, "maxGraphHops": { "type": "integer", "minimum": 1 }, "maxSharedNodes": { "type": "integer", "minimum": 0 }, "centralityConflictThreshold": { "type": "number", "minimum": 0 } } } } },
|
|
51
|
+
"context": { "type": "object", "properties": {
|
|
52
|
+
"mode": { "enum": ["observe", "enforce"] },
|
|
53
|
+
"budgets": { "type": "object", "properties": {
|
|
54
|
+
"default": { "$ref": "#/$defs/contextBudget" },
|
|
55
|
+
"agents": { "type": "object", "additionalProperties": { "$ref": "#/$defs/contextBudget" } },
|
|
56
|
+
"phases": { "type": "object", "additionalProperties": { "$ref": "#/$defs/contextBudget" } }
|
|
57
|
+
} },
|
|
58
|
+
"repositoryMap": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "tokenBudget": { "type": "integer", "minimum": 1 }, "maxGraphHops": { "type": "integer", "minimum": 1 } } },
|
|
59
|
+
"semanticRetrieval": { "type": "object", "properties": { "provider": { "type": "string", "const": "serena" }, "required": { "const": true }, "editing": { "type": "boolean" } } },
|
|
60
|
+
"compression": { "type": "object", "properties": { "provider": { "type": "string", "const": "headroom" }, "required": { "const": true }, "minTokens": { "type": "integer", "minimum": 1 }, "reversible": { "type": "boolean" }, "command": { "type": "string", "minLength": 1 } } },
|
|
61
|
+
"retrieval": { "type": "object", "properties": { "maxRequestsPerTurn": { "type": "integer", "minimum": 1 }, "maxTokensPerRequest": { "type": "integer", "minimum": 1 }, "maxTotalTokensPerTurn": { "type": "integer", "minimum": 1 } } },
|
|
62
|
+
"outputPolicy": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "modes": { "type": "object", "additionalProperties": { "enum": ["terse", "compact", "normal"] } } } }
|
|
63
|
+
} },
|
|
51
64
|
"evidence": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "outputDir": { "type": "string" }, "requireComplete": { "type": "boolean" } } },
|
|
52
65
|
"organization": { "type": "object", "properties": { "policyBundles": { "type": "object", "properties": { "cacheDir": { "type": "string" }, "required": { "type": "boolean" }, "sources": { "type": "array", "items": { "$ref": "#/$defs/policyBundleSource" } } } } } },
|
|
53
66
|
"distributed": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "provider": { "type": "string" }, "queueDir": { "type": "string" }, "endpoint": { "type": "string", "format": "uri" }, "tokenEnv": { "type": "string" }, "pollIntervalMs": { "type": "integer", "minimum": 1 }, "leaseSeconds": { "type": "integer", "minimum": 1 }, "workerId": { "type": "string" } } },
|
|
@@ -60,6 +73,7 @@
|
|
|
60
73
|
},
|
|
61
74
|
"$defs": {
|
|
62
75
|
"severityNumbers": { "type": "object", "properties": { "critical": { "type": "integer", "minimum": 0 }, "high": { "type": "integer", "minimum": 0 }, "medium": { "type": "integer", "minimum": 0 }, "low": { "type": "integer", "minimum": 0 }, "note": { "type": "integer", "minimum": 0 } } },
|
|
76
|
+
"contextBudget": { "type": "object", "properties": { "inputTokens": { "type": "integer", "minimum": 1 }, "maxTokens": { "type": "integer", "minimum": 1 }, "reserved": { "type": "object", "properties": { "instructions": { "type": "integer", "minimum": 0 }, "normative": { "type": "integer", "minimum": 0 }, "evidence": { "type": "integer", "minimum": 0 }, "response": { "type": "integer", "minimum": 0 } } } } },
|
|
63
77
|
"policyBundleSource": { "type": "object", "required": ["name"], "properties": { "name": { "type": "string", "minLength": 1 }, "path": { "type": "string" }, "url": { "type": "string", "format": "uri" }, "sha256": { "type": "string", "pattern": "^[a-f0-9]{64}$" }, "required": { "type": "boolean" }, "publicKey": { "type": "string" }, "signature": { "type": "string" } } }
|
|
64
78
|
},
|
|
65
79
|
"additionalProperties": false
|
package/templates/project.yaml
CHANGED
|
@@ -196,6 +196,44 @@ codeIntelligence:
|
|
|
196
196
|
maxSharedNodes: 0
|
|
197
197
|
centralityConflictThreshold: 0.35
|
|
198
198
|
|
|
199
|
+
context:
|
|
200
|
+
mode: enforce
|
|
201
|
+
budgets:
|
|
202
|
+
default:
|
|
203
|
+
inputTokens: 16000
|
|
204
|
+
agents:
|
|
205
|
+
explorer:
|
|
206
|
+
inputTokens: 12000
|
|
207
|
+
planner:
|
|
208
|
+
inputTokens: 10000
|
|
209
|
+
spec-manager:
|
|
210
|
+
inputTokens: 18000
|
|
211
|
+
implementer:
|
|
212
|
+
inputTokens: 24000
|
|
213
|
+
reviewer:
|
|
214
|
+
inputTokens: 14000
|
|
215
|
+
operation-supervisor:
|
|
216
|
+
inputTokens: 1500
|
|
217
|
+
repositoryMap:
|
|
218
|
+
enabled: true
|
|
219
|
+
tokenBudget: 2000
|
|
220
|
+
maxGraphHops: 2
|
|
221
|
+
semanticRetrieval:
|
|
222
|
+
provider: serena
|
|
223
|
+
required: true
|
|
224
|
+
editing: false
|
|
225
|
+
compression:
|
|
226
|
+
provider: headroom
|
|
227
|
+
required: true
|
|
228
|
+
minTokens: 2000
|
|
229
|
+
reversible: true
|
|
230
|
+
retrieval:
|
|
231
|
+
maxRequestsPerTurn: 8
|
|
232
|
+
maxTokensPerRequest: 6000
|
|
233
|
+
maxTotalTokensPerTurn: 20000
|
|
234
|
+
outputPolicy:
|
|
235
|
+
enabled: true
|
|
236
|
+
|
|
199
237
|
evidence:
|
|
200
238
|
enabled: true
|
|
201
239
|
outputDir: .harness/evidence
|
|
@@ -268,6 +306,10 @@ evals:
|
|
|
268
306
|
workspacesDir: .harness/evals/workspaces
|
|
269
307
|
defaultRuns: 5
|
|
270
308
|
confidenceLevel: 0.95
|
|
309
|
+
fullStack:
|
|
310
|
+
enabled: false
|
|
311
|
+
required: false
|
|
312
|
+
strictSupplyChain: false
|
|
271
313
|
|
|
272
314
|
provenance:
|
|
273
315
|
outputDir: .harness/provenance
|
package/templates/toolchain.yaml
CHANGED
|
@@ -22,7 +22,7 @@ profiles:
|
|
|
22
22
|
tools: [openspec]
|
|
23
23
|
intelligence:
|
|
24
24
|
extends: [core]
|
|
25
|
-
tools: [uv, graphify]
|
|
25
|
+
tools: [python, uv, graphify, serena, headroom]
|
|
26
26
|
validation:
|
|
27
27
|
extends: [core]
|
|
28
28
|
tools: [opa, opengrep, trivy, cosign]
|
|
@@ -94,6 +94,14 @@ tools:
|
|
|
94
94
|
version: latest
|
|
95
95
|
activateWhen: [code-intelligence:graphify, project:python]
|
|
96
96
|
|
|
97
|
+
python:
|
|
98
|
+
kind: mise
|
|
99
|
+
command: python
|
|
100
|
+
source: python
|
|
101
|
+
version: "3.13"
|
|
102
|
+
required: true
|
|
103
|
+
activateWhen: [semantic-retrieval:serena, compression:headroom, project:python]
|
|
104
|
+
|
|
97
105
|
graphify:
|
|
98
106
|
kind: mise
|
|
99
107
|
command: graphify
|
|
@@ -102,6 +110,31 @@ tools:
|
|
|
102
110
|
dependsOn: [uv]
|
|
103
111
|
activateWhen: [code-intelligence:graphify]
|
|
104
112
|
|
|
113
|
+
serena:
|
|
114
|
+
kind: mise
|
|
115
|
+
command: serena
|
|
116
|
+
source: "pipx:serena-agent"
|
|
117
|
+
version: "1.6.1"
|
|
118
|
+
required: true
|
|
119
|
+
dependsOn: [uv, python]
|
|
120
|
+
activateWhen: [semantic-retrieval:serena]
|
|
121
|
+
|
|
122
|
+
headroom:
|
|
123
|
+
kind: mise
|
|
124
|
+
command: headroom
|
|
125
|
+
source: "pipx:headroom-ai[all]"
|
|
126
|
+
version: "0.28.0"
|
|
127
|
+
required: true
|
|
128
|
+
dependsOn: [uv, python]
|
|
129
|
+
activateWhen: [compression:headroom]
|
|
130
|
+
|
|
131
|
+
engram:
|
|
132
|
+
kind: mise
|
|
133
|
+
command: engram
|
|
134
|
+
source: "npm:@engram-ai-memory/cli"
|
|
135
|
+
version: latest
|
|
136
|
+
activateWhen: [memory:engram]
|
|
137
|
+
|
|
105
138
|
opa:
|
|
106
139
|
kind: mise
|
|
107
140
|
command: opa
|