@evalops/maestro 0.10.14 → 0.10.16

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 CHANGED
@@ -98,6 +98,7 @@ See [Safety](docs/SAFETY.md) and the [Threat Model](docs/THREAT_MODEL.md) for th
98
98
  | Set up MCP servers | [MCP Guide](docs/MCP_GUIDE.md) |
99
99
  | Work on the repo as a contributor | [Contributor Runbook](docs/CONTRIBUTOR_RUNBOOK.md) |
100
100
  | Integrate Maestro headlessly | [Headless protocol](docs/protocols/headless.md) |
101
+ | Bring any coding agent into EvalOps | [Any-Agent Control Plane](docs/design/ANY_AGENT_CONTROL_PLANE.md) |
101
102
  | Browse the full docs map | [Documentation index](docs/README.md) |
102
103
 
103
104
  ## Contributing
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,kBAAkB,EACvB,qBAAqB,EACrB,MAAM,kCAAkC,CAAC;AAG1C,wBAAgB,cAAc,IAAI,MAAM,CAkBvC;AA4BD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CA2EhE;AAMD,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,GACvD,MAAM,CAoCR;AAED,wBAAsB,iBAAiB,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA+C1E"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,kBAAkB,EACvB,qBAAqB,EACrB,MAAM,kCAAkC,CAAC;AAG1C,wBAAgB,cAAc,IAAI,MAAM,CAuBvC;AA4BD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CA+FhE;AAMD,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,GACvD,MAAM,CAuCR;AAED,wBAAsB,iBAAiB,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA+C1E"}
@@ -10,6 +10,11 @@ export function formatInitHelp() {
10
10
  Options
11
11
  --agent-type <type> Agent type to register, defaults to maestro
12
12
  --surface <surface> Surface to register, defaults to cli
13
+ --integration-profile <profile> mcp_only, mcp_otlp, managed_runtime, sdk_integrated, or provider_proxy
14
+ --shim-type <type> native_mcp, command_wrapper, hook, provider_proxy, sdk, or mcp_firewall_proxy
15
+ --trace-mode <mode> none, mcp_events, or otlp
16
+ --memory-mode <mode> none, read_only, durable, or cerebro
17
+ --runtime-owner <owner> external or evalops
13
18
  --workspace, --workspace-id <id> Workspace to associate with the registration
14
19
  --scope <scope[,scope...]> Registration scopes to request
15
20
  --key-scope <scope[,scope...]> API key scopes to request
@@ -67,6 +72,10 @@ export function parseInitArgs(args) {
67
72
  case "--force-login":
68
73
  options.forceLogin = true;
69
74
  break;
75
+ case "--integration-profile":
76
+ options.integrationProfile = readValue(args, i, arg);
77
+ i++;
78
+ break;
70
79
  case "--json":
71
80
  options.json = true;
72
81
  break;
@@ -78,6 +87,10 @@ export function parseInitArgs(args) {
78
87
  options.manifestUrl = readValue(args, i, arg);
79
88
  i++;
80
89
  break;
90
+ case "--memory-mode":
91
+ options.memoryMode = readValue(args, i, arg);
92
+ i++;
93
+ break;
81
94
  case "--register-scope":
82
95
  case "--scope":
83
96
  options.registerScopes = appendScopes(options.registerScopes, readValue(args, i, arg));
@@ -86,10 +99,22 @@ export function parseInitArgs(args) {
86
99
  case "--rotate-key":
87
100
  options.rotateKey = true;
88
101
  break;
102
+ case "--runtime-owner":
103
+ options.runtimeOwner = readValue(args, i, arg);
104
+ i++;
105
+ break;
106
+ case "--shim-type":
107
+ options.shimType = readValue(args, i, arg);
108
+ i++;
109
+ break;
89
110
  case "--surface":
90
111
  options.surface = readValue(args, i, arg);
91
112
  i++;
92
113
  break;
114
+ case "--trace-mode":
115
+ options.traceMode = readValue(args, i, arg);
116
+ i++;
117
+ break;
93
118
  case "--ttl-seconds":
94
119
  options.ttlSeconds = parsePositiveInteger(readValue(args, i, arg), arg);
95
120
  i++;
@@ -121,6 +146,7 @@ export function formatInitSuccess(result) {
121
146
  checkLine(`Authenticated as ${authenticatedAs}`),
122
147
  checkLine(`${keyMode} managed inference key`),
123
148
  checkLine("Registered local agent runtime"),
149
+ checkLine(`Integration profile ${result.integrationProfile ?? "managed_runtime"} via ${result.shimType ?? "sdk"}`),
124
150
  checkLine(`Loaded ${governedActions} governed actions`),
125
151
  checkLine(result.approvalPolicyAttached
126
152
  ? "Attached default approval policy"
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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","sourcesContent":["import chalk from \"chalk\";\nimport {\n\ttype EvalOpsInitOptions,\n\tbootstrapEvalOpsAgent,\n} from \"../../evalops/agent-bootstrap.js\";\nimport { muted, sectionHeading } from \"../../style/theme.js\";\n\nexport function formatInitHelp(): string {\n\treturn `${sectionHeading(\"maestro init\")}${muted(\n\t\t` maestro init Login, create or reuse an API key, and register this agent\n maestro init --rotate-key Replace the stored agent MCP API key\n maestro init --mcp-url <url> Override the EvalOps agent MCP endpoint\n maestro init --json Emit machine-readable bootstrap output\n\nOptions\n --agent-type <type> Agent type to register, defaults to maestro\n --surface <surface> Surface to register, defaults to cli\n --workspace, --workspace-id <id> Workspace to associate with the registration\n --scope <scope[,scope...]> Registration scopes to request\n --key-scope <scope[,scope...]> API key scopes to request\n --expires-in-days <days> API key TTL in days\n --force-login Re-run EvalOps OAuth before bootstrapping\n --manifest-url <url> Override the agent MCP manifest URL\n --ttl-seconds <seconds> Registration TTL in seconds`,\n\t)}`;\n}\n\nfunction readValue(args: string[], index: number, flag: string): string {\n\tconst value = args[index + 1];\n\tif (!value || value.startsWith(\"-\")) {\n\t\tthrow new Error(`${flag} requires a value`);\n\t}\n\treturn value;\n}\n\nfunction parsePositiveInteger(value: string, flag: string): number {\n\tconst parsed = Number.parseInt(value, 10);\n\tif (!Number.isInteger(parsed) || parsed <= 0) {\n\t\tthrow new Error(`${flag} must be a positive integer`);\n\t}\n\treturn parsed;\n}\n\nfunction appendScopes(existing: string[] | undefined, value: string): string[] {\n\treturn [\n\t\t...(existing ?? []),\n\t\t...value\n\t\t\t.split(\",\")\n\t\t\t.map((entry) => entry.trim())\n\t\t\t.filter((entry) => entry.length > 0),\n\t];\n}\n\nexport function parseInitArgs(args: string[]): EvalOpsInitOptions {\n\tconst options: EvalOpsInitOptions = {};\n\tfor (let i = 0; i < args.length; i++) {\n\t\tconst arg = args[i];\n\t\tswitch (arg) {\n\t\t\tcase \"--agent-mcp-url\":\n\t\t\tcase \"--mcp-url\":\n\t\t\t\toptions.mcpUrl = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--agent-type\":\n\t\t\t\toptions.agentType = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--api-key-scope\":\n\t\t\tcase \"--key-scope\":\n\t\t\t\toptions.apiKeyScopes = appendScopes(\n\t\t\t\t\toptions.apiKeyScopes,\n\t\t\t\t\treadValue(args, i, arg),\n\t\t\t\t);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--expires-in-days\":\n\t\t\t\toptions.expiresInDays = parsePositiveInteger(\n\t\t\t\t\treadValue(args, i, arg),\n\t\t\t\t\targ,\n\t\t\t\t);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--force-login\":\n\t\t\t\toptions.forceLogin = true;\n\t\t\t\tbreak;\n\t\t\tcase \"--json\":\n\t\t\t\toptions.json = true;\n\t\t\t\tbreak;\n\t\t\tcase \"--key-name\":\n\t\t\t\toptions.keyName = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--manifest-url\":\n\t\t\t\toptions.manifestUrl = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--register-scope\":\n\t\t\tcase \"--scope\":\n\t\t\t\toptions.registerScopes = appendScopes(\n\t\t\t\t\toptions.registerScopes,\n\t\t\t\t\treadValue(args, i, arg),\n\t\t\t\t);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--rotate-key\":\n\t\t\t\toptions.rotateKey = true;\n\t\t\t\tbreak;\n\t\t\tcase \"--surface\":\n\t\t\t\toptions.surface = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--ttl-seconds\":\n\t\t\t\toptions.ttlSeconds = parsePositiveInteger(readValue(args, i, arg), arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--workspace\":\n\t\t\tcase \"--workspace-id\":\n\t\t\t\toptions.workspaceId = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tif (arg?.startsWith(\"-\")) {\n\t\t\t\t\tthrow new Error(`Unknown maestro init option: ${arg}`);\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Unexpected maestro init argument: ${arg}`);\n\t\t}\n\t}\n\treturn options;\n}\n\nfunction checkLine(text: string): string {\n\treturn `${chalk.green(\"✓\")} ${text}`;\n}\n\nexport function formatInitSuccess(\n\tresult: Awaited<ReturnType<typeof bootstrapEvalOpsAgent>>,\n): string {\n\tconst keyMode = result.apiKeyCreated ? \"Created\" : \"Reused\";\n\tconst authenticatedAs = result.authenticatedAs ?? \"EvalOps\";\n\tconst governedActions = result.governedActionsLoaded ?? 0;\n\tconst lines = [\n\t\tchalk.bold(\"EvalOps Maestro bootstrap\"),\n\t\t\"\",\n\t\tcheckLine(`Authenticated as ${authenticatedAs}`),\n\t\tcheckLine(`${keyMode} managed inference key`),\n\t\tcheckLine(\"Registered local agent runtime\"),\n\t\tcheckLine(`Loaded ${governedActions} governed actions`),\n\t\tcheckLine(\n\t\t\tresult.approvalPolicyAttached\n\t\t\t\t? \"Attached default approval policy\"\n\t\t\t\t: \"Queued approval policy review\",\n\t\t),\n\t\tcheckLine(\n\t\t\tresult.traceIngestionStarted\n\t\t\t\t? \"Started trace ingestion\"\n\t\t\t\t: \"Requested trace ingestion\",\n\t\t),\n\t\tcheckLine(\n\t\t\tresult.governedInferenceCheckRan\n\t\t\t\t? \"Ran first governed inference check\"\n\t\t\t\t: \"Queued first governed inference check\",\n\t\t),\n\t\tcheckLine(\n\t\t\tresult.evidenceEventPublished\n\t\t\t\t? \"Published evidence event\"\n\t\t\t\t: \"Queued evidence event\",\n\t\t),\n\t\t\"\",\n\t\t\"Open console:\",\n\t\tresult.consoleUrl ?? \"https://app.evalops.dev/overview?env=production\",\n\t];\n\treturn lines.join(\"\\n\");\n}\n\nexport async function handleInitCommand(args: string[] = []): Promise<void> {\n\tif (args.includes(\"--help\") || args.includes(\"-h\")) {\n\t\tconsole.log(formatInitHelp());\n\t\treturn;\n\t}\n\n\tlet options: EvalOpsInitOptions;\n\ttry {\n\t\toptions = parseInitArgs(args);\n\t} catch (error) {\n\t\tconsole.error(\n\t\t\tchalk.red(error instanceof Error ? error.message : String(error)),\n\t\t);\n\t\tprocess.exit(1);\n\t}\n\n\tconst result = await bootstrapEvalOpsAgent(options, {\n\t\tonAuthUrl: (url) => {\n\t\t\tif (options.json) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t\"Open this URL in your browser to authenticate with EvalOps:\",\n\t\t\t\t);\n\t\t\t\tconsole.error(url);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconsole.log(\n\t\t\t\tchalk.yellow(\n\t\t\t\t\t\"Open this URL in your browser to authenticate with EvalOps:\",\n\t\t\t\t),\n\t\t\t);\n\t\t\tconsole.log(chalk.underline(url));\n\t\t},\n\t\tonStatus: (status) => {\n\t\t\tif (options.json) {\n\t\t\t\tconsole.error(status.message);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconsole.log(chalk.dim(status.message));\n\t\t},\n\t});\n\n\tif (options.json) {\n\t\tconsole.log(JSON.stringify(result, null, 2));\n\t\treturn;\n\t}\n\n\tconsole.log(formatInitSuccess(result));\n}\n"]}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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","sourcesContent":["import chalk from \"chalk\";\nimport {\n\ttype EvalOpsInitOptions,\n\tbootstrapEvalOpsAgent,\n} from \"../../evalops/agent-bootstrap.js\";\nimport { muted, sectionHeading } from \"../../style/theme.js\";\n\nexport function formatInitHelp(): string {\n\treturn `${sectionHeading(\"maestro init\")}${muted(\n\t\t` maestro init Login, create or reuse an API key, and register this agent\n maestro init --rotate-key Replace the stored agent MCP API key\n maestro init --mcp-url <url> Override the EvalOps agent MCP endpoint\n maestro init --json Emit machine-readable bootstrap output\n\nOptions\n --agent-type <type> Agent type to register, defaults to maestro\n --surface <surface> Surface to register, defaults to cli\n --integration-profile <profile> mcp_only, mcp_otlp, managed_runtime, sdk_integrated, or provider_proxy\n --shim-type <type> native_mcp, command_wrapper, hook, provider_proxy, sdk, or mcp_firewall_proxy\n --trace-mode <mode> none, mcp_events, or otlp\n --memory-mode <mode> none, read_only, durable, or cerebro\n --runtime-owner <owner> external or evalops\n --workspace, --workspace-id <id> Workspace to associate with the registration\n --scope <scope[,scope...]> Registration scopes to request\n --key-scope <scope[,scope...]> API key scopes to request\n --expires-in-days <days> API key TTL in days\n --force-login Re-run EvalOps OAuth before bootstrapping\n --manifest-url <url> Override the agent MCP manifest URL\n --ttl-seconds <seconds> Registration TTL in seconds`,\n\t)}`;\n}\n\nfunction readValue(args: string[], index: number, flag: string): string {\n\tconst value = args[index + 1];\n\tif (!value || value.startsWith(\"-\")) {\n\t\tthrow new Error(`${flag} requires a value`);\n\t}\n\treturn value;\n}\n\nfunction parsePositiveInteger(value: string, flag: string): number {\n\tconst parsed = Number.parseInt(value, 10);\n\tif (!Number.isInteger(parsed) || parsed <= 0) {\n\t\tthrow new Error(`${flag} must be a positive integer`);\n\t}\n\treturn parsed;\n}\n\nfunction appendScopes(existing: string[] | undefined, value: string): string[] {\n\treturn [\n\t\t...(existing ?? []),\n\t\t...value\n\t\t\t.split(\",\")\n\t\t\t.map((entry) => entry.trim())\n\t\t\t.filter((entry) => entry.length > 0),\n\t];\n}\n\nexport function parseInitArgs(args: string[]): EvalOpsInitOptions {\n\tconst options: EvalOpsInitOptions = {};\n\tfor (let i = 0; i < args.length; i++) {\n\t\tconst arg = args[i];\n\t\tswitch (arg) {\n\t\t\tcase \"--agent-mcp-url\":\n\t\t\tcase \"--mcp-url\":\n\t\t\t\toptions.mcpUrl = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--agent-type\":\n\t\t\t\toptions.agentType = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--api-key-scope\":\n\t\t\tcase \"--key-scope\":\n\t\t\t\toptions.apiKeyScopes = appendScopes(\n\t\t\t\t\toptions.apiKeyScopes,\n\t\t\t\t\treadValue(args, i, arg),\n\t\t\t\t);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--expires-in-days\":\n\t\t\t\toptions.expiresInDays = parsePositiveInteger(\n\t\t\t\t\treadValue(args, i, arg),\n\t\t\t\t\targ,\n\t\t\t\t);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--force-login\":\n\t\t\t\toptions.forceLogin = true;\n\t\t\t\tbreak;\n\t\t\tcase \"--integration-profile\":\n\t\t\t\toptions.integrationProfile = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--json\":\n\t\t\t\toptions.json = true;\n\t\t\t\tbreak;\n\t\t\tcase \"--key-name\":\n\t\t\t\toptions.keyName = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--manifest-url\":\n\t\t\t\toptions.manifestUrl = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--memory-mode\":\n\t\t\t\toptions.memoryMode = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--register-scope\":\n\t\t\tcase \"--scope\":\n\t\t\t\toptions.registerScopes = appendScopes(\n\t\t\t\t\toptions.registerScopes,\n\t\t\t\t\treadValue(args, i, arg),\n\t\t\t\t);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--rotate-key\":\n\t\t\t\toptions.rotateKey = true;\n\t\t\t\tbreak;\n\t\t\tcase \"--runtime-owner\":\n\t\t\t\toptions.runtimeOwner = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--shim-type\":\n\t\t\t\toptions.shimType = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--surface\":\n\t\t\t\toptions.surface = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--trace-mode\":\n\t\t\t\toptions.traceMode = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--ttl-seconds\":\n\t\t\t\toptions.ttlSeconds = parsePositiveInteger(readValue(args, i, arg), arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tcase \"--workspace\":\n\t\t\tcase \"--workspace-id\":\n\t\t\t\toptions.workspaceId = readValue(args, i, arg);\n\t\t\t\ti++;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tif (arg?.startsWith(\"-\")) {\n\t\t\t\t\tthrow new Error(`Unknown maestro init option: ${arg}`);\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Unexpected maestro init argument: ${arg}`);\n\t\t}\n\t}\n\treturn options;\n}\n\nfunction checkLine(text: string): string {\n\treturn `${chalk.green(\"✓\")} ${text}`;\n}\n\nexport function formatInitSuccess(\n\tresult: Awaited<ReturnType<typeof bootstrapEvalOpsAgent>>,\n): string {\n\tconst keyMode = result.apiKeyCreated ? \"Created\" : \"Reused\";\n\tconst authenticatedAs = result.authenticatedAs ?? \"EvalOps\";\n\tconst governedActions = result.governedActionsLoaded ?? 0;\n\tconst lines = [\n\t\tchalk.bold(\"EvalOps Maestro bootstrap\"),\n\t\t\"\",\n\t\tcheckLine(`Authenticated as ${authenticatedAs}`),\n\t\tcheckLine(`${keyMode} managed inference key`),\n\t\tcheckLine(\"Registered local agent runtime\"),\n\t\tcheckLine(\n\t\t\t`Integration profile ${result.integrationProfile ?? \"managed_runtime\"} via ${result.shimType ?? \"sdk\"}`,\n\t\t),\n\t\tcheckLine(`Loaded ${governedActions} governed actions`),\n\t\tcheckLine(\n\t\t\tresult.approvalPolicyAttached\n\t\t\t\t? \"Attached default approval policy\"\n\t\t\t\t: \"Queued approval policy review\",\n\t\t),\n\t\tcheckLine(\n\t\t\tresult.traceIngestionStarted\n\t\t\t\t? \"Started trace ingestion\"\n\t\t\t\t: \"Requested trace ingestion\",\n\t\t),\n\t\tcheckLine(\n\t\t\tresult.governedInferenceCheckRan\n\t\t\t\t? \"Ran first governed inference check\"\n\t\t\t\t: \"Queued first governed inference check\",\n\t\t),\n\t\tcheckLine(\n\t\t\tresult.evidenceEventPublished\n\t\t\t\t? \"Published evidence event\"\n\t\t\t\t: \"Queued evidence event\",\n\t\t),\n\t\t\"\",\n\t\t\"Open console:\",\n\t\tresult.consoleUrl ?? \"https://app.evalops.dev/overview?env=production\",\n\t];\n\treturn lines.join(\"\\n\");\n}\n\nexport async function handleInitCommand(args: string[] = []): Promise<void> {\n\tif (args.includes(\"--help\") || args.includes(\"-h\")) {\n\t\tconsole.log(formatInitHelp());\n\t\treturn;\n\t}\n\n\tlet options: EvalOpsInitOptions;\n\ttry {\n\t\toptions = parseInitArgs(args);\n\t} catch (error) {\n\t\tconsole.error(\n\t\t\tchalk.red(error instanceof Error ? error.message : String(error)),\n\t\t);\n\t\tprocess.exit(1);\n\t}\n\n\tconst result = await bootstrapEvalOpsAgent(options, {\n\t\tonAuthUrl: (url) => {\n\t\t\tif (options.json) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t\"Open this URL in your browser to authenticate with EvalOps:\",\n\t\t\t\t);\n\t\t\t\tconsole.error(url);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconsole.log(\n\t\t\t\tchalk.yellow(\n\t\t\t\t\t\"Open this URL in your browser to authenticate with EvalOps:\",\n\t\t\t\t),\n\t\t\t);\n\t\t\tconsole.log(chalk.underline(url));\n\t\t},\n\t\tonStatus: (status) => {\n\t\t\tif (options.json) {\n\t\t\t\tconsole.error(status.message);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconsole.log(chalk.dim(status.message));\n\t\t},\n\t});\n\n\tif (options.json) {\n\t\tconsole.log(JSON.stringify(result, null, 2));\n\t\treturn;\n\t}\n\n\tconsole.log(formatInitSuccess(result));\n}\n"]}
package/dist/cli.js CHANGED
@@ -38284,9 +38284,14 @@ function storedAgentMcp(credentials) {
38284
38284
  agentId: recordValue(agentMcp, "agentId"),
38285
38285
  apiKey: recordValue(agentMcp, "apiKey"),
38286
38286
  endpoint: recordValue(agentMcp, "endpoint"),
38287
+ integrationProfile: recordValue(agentMcp, "integrationProfile"),
38287
38288
  keyPrefix: recordValue(agentMcp, "keyPrefix"),
38289
+ memoryMode: recordValue(agentMcp, "memoryMode"),
38288
38290
  runId: recordValue(agentMcp, "runId"),
38291
+ runtimeOwner: recordValue(agentMcp, "runtimeOwner"),
38289
38292
  sessionExpiresAt: recordValue(agentMcp, "sessionExpiresAt"),
38293
+ shimType: recordValue(agentMcp, "shimType"),
38294
+ traceMode: recordValue(agentMcp, "traceMode"),
38290
38295
  workspaceId: recordValue(agentMcp, "workspaceId")
38291
38296
  };
38292
38297
  }
@@ -38348,15 +38353,20 @@ function resolveManagedEvalOpsContext(env = process.env, loadCredentials) {
38348
38353
  evidencePublisher: managed ? "EvalOps" : "none",
38349
38354
  expiresAt: credentials?.expires,
38350
38355
  inference: managed ? "managed" : "local",
38356
+ integrationProfile: readEnv2(env, INTEGRATION_PROFILE_ENV) ?? agentMcp?.integrationProfile,
38351
38357
  keyPrefix: agentMcp?.keyPrefix,
38352
38358
  managed,
38359
+ memoryMode: readEnv2(env, MEMORY_MODE_ENV) ?? agentMcp?.memoryMode,
38353
38360
  mode,
38354
38361
  organizationId,
38355
38362
  providerRef,
38356
38363
  runId,
38364
+ runtimeOwner: readEnv2(env, RUNTIME_OWNER_ENV) ?? agentMcp?.runtimeOwner,
38357
38365
  sessionExpiresAt: agentMcp?.sessionExpiresAt,
38358
38366
  sessionId: readEnv2(env, ["MAESTRO_SESSION_ID"]),
38367
+ shimType: readEnv2(env, SHIM_TYPE_ENV) ?? agentMcp?.shimType,
38359
38368
  traceIngestion: managed && runId ? "live" : "not configured",
38369
+ traceMode: readEnv2(env, TRACE_MODE_ENV) ?? agentMcp?.traceMode,
38360
38370
  userEmail: nonEmptyString(metadata?.email),
38361
38371
  userId: readEnv2(env, USER_ENV) ?? nonEmptyString(metadata?.userId),
38362
38372
  workspaceId
@@ -38384,6 +38394,17 @@ function formatManagedEvalOpsStatus(context2, options = {}) {
38384
38394
  lines.push(`${dim("Agent")}: ${context2.agentId}`);
38385
38395
  if (context2.runId)
38386
38396
  lines.push(`${dim("Run")}: ${context2.runId}`);
38397
+ if (context2.integrationProfile) {
38398
+ lines.push(`${dim("Integration profile")}: ${context2.integrationProfile}`);
38399
+ }
38400
+ if (context2.runtimeOwner)
38401
+ lines.push(`${dim("Runtime owner")}: ${context2.runtimeOwner}`);
38402
+ if (context2.shimType)
38403
+ lines.push(`${dim("Shim")}: ${context2.shimType}`);
38404
+ if (context2.traceMode)
38405
+ lines.push(`${dim("Trace mode")}: ${context2.traceMode}`);
38406
+ if (context2.memoryMode)
38407
+ lines.push(`${dim("Memory mode")}: ${context2.memoryMode}`);
38387
38408
  lines.push(`${good("Trace ingestion")}: ${context2.traceIngestion}`);
38388
38409
  lines.push(`${good("Evidence publisher")}: ${context2.evidencePublisher}`);
38389
38410
  lines.push(`${good("Inference")}: ${context2.inference}`);
@@ -38411,6 +38432,11 @@ var ORG_ENV;
38411
38432
  var WORKSPACE_ENV;
38412
38433
  var USER_ENV;
38413
38434
  var TOKEN_ENV;
38435
+ var INTEGRATION_PROFILE_ENV;
38436
+ var MEMORY_MODE_ENV;
38437
+ var RUNTIME_OWNER_ENV;
38438
+ var SHIM_TYPE_ENV;
38439
+ var TRACE_MODE_ENV;
38414
38440
  var init_managed_context = __esm2(() => {
38415
38441
  init_storage();
38416
38442
  ORG_ENV = [
@@ -38433,6 +38459,26 @@ var init_managed_context = __esm2(() => {
38433
38459
  "MAESTRO_USER_ID"
38434
38460
  ];
38435
38461
  TOKEN_ENV = ["MAESTRO_EVALOPS_ACCESS_TOKEN", "EVALOPS_TOKEN"];
38462
+ INTEGRATION_PROFILE_ENV = [
38463
+ "MAESTRO_EVALOPS_INTEGRATION_PROFILE",
38464
+ "MAESTRO_INTEGRATION_PROFILE"
38465
+ ];
38466
+ MEMORY_MODE_ENV = [
38467
+ "MAESTRO_EVALOPS_MEMORY_MODE",
38468
+ "MAESTRO_MEMORY_MODE"
38469
+ ];
38470
+ RUNTIME_OWNER_ENV = [
38471
+ "MAESTRO_EVALOPS_RUNTIME_OWNER",
38472
+ "MAESTRO_RUNTIME_OWNER"
38473
+ ];
38474
+ SHIM_TYPE_ENV = [
38475
+ "MAESTRO_EVALOPS_SHIM_TYPE",
38476
+ "MAESTRO_SHIM_TYPE"
38477
+ ];
38478
+ TRACE_MODE_ENV = [
38479
+ "MAESTRO_EVALOPS_TRACE_MODE",
38480
+ "MAESTRO_TRACE_MODE"
38481
+ ];
38436
38482
  });
38437
38483
  function entry(type, category, protoMessage, platformConsumers) {
38438
38484
  return {
@@ -87399,14 +87445,19 @@ function getStoredAgentMcpMetadata(credentials) {
87399
87445
  surface,
87400
87446
  agentId: nonEmptyString2(agentMcp?.agentId),
87401
87447
  expiresAt: nonEmptyString2(agentMcp?.expiresAt),
87448
+ integrationProfile: nonEmptyString2(agentMcp?.integrationProfile),
87402
87449
  keyId: nonEmptyString2(agentMcp?.keyId),
87403
87450
  keyName: nonEmptyString2(agentMcp?.keyName),
87404
87451
  keyPrefix: nonEmptyString2(agentMcp?.keyPrefix),
87405
87452
  manifestUrl: nonEmptyString2(agentMcp?.manifestUrl),
87453
+ memoryMode: nonEmptyString2(agentMcp?.memoryMode),
87406
87454
  registryVisible: typeof agentMcp?.registryVisible === "boolean" ? agentMcp.registryVisible : void 0,
87407
87455
  runId: nonEmptyString2(agentMcp?.runId),
87456
+ runtimeOwner: nonEmptyString2(agentMcp?.runtimeOwner),
87408
87457
  scopes: stringArray(agentMcp?.scopes),
87409
87458
  sessionExpiresAt: nonEmptyString2(agentMcp?.sessionExpiresAt),
87459
+ shimType: nonEmptyString2(agentMcp?.shimType),
87460
+ traceMode: nonEmptyString2(agentMcp?.traceMode),
87410
87461
  workspaceId: nonEmptyString2(agentMcp?.workspaceId)
87411
87462
  };
87412
87463
  }
@@ -87604,6 +87655,21 @@ function buildKeyName(options, now2) {
87604
87655
  const host = hostname().replace(/[^a-zA-Z0-9._-]+/gu, "-").slice(0, 48);
87605
87656
  return `maestro-init-${host || "local"}-${now2.toISOString().slice(0, 10)}`;
87606
87657
  }
87658
+ function integrationProfileForOptions(options) {
87659
+ return nonEmptyString2(options.integrationProfile) ?? (options.agentType && options.agentType !== DEFAULT_AGENT_TYPE ? "mcp_otlp" : "managed_runtime");
87660
+ }
87661
+ function shimTypeForOptions(options) {
87662
+ return nonEmptyString2(options.shimType) ?? (integrationProfileForOptions(options) === "managed_runtime" ? "sdk" : "native_mcp");
87663
+ }
87664
+ function traceModeForOptions(options) {
87665
+ return nonEmptyString2(options.traceMode) ?? (integrationProfileForOptions(options) === "mcp_only" ? "mcp_events" : "otlp");
87666
+ }
87667
+ function memoryModeForOptions(options) {
87668
+ return nonEmptyString2(options.memoryMode) ?? (integrationProfileForOptions(options) === "managed_runtime" ? "durable" : "none");
87669
+ }
87670
+ function runtimeOwnerForOptions(options) {
87671
+ return nonEmptyString2(options.runtimeOwner) ?? (integrationProfileForOptions(options) === "managed_runtime" ? "evalops" : "external");
87672
+ }
87607
87673
  async function createAgentAPIKey(options, identityBaseUrl, oauthToken, fetchImpl, now2) {
87608
87674
  const expiresInDays = positiveInteger(options.expiresInDays);
87609
87675
  const expiresAt = expiresInDays ? new Date(now2.getTime() + expiresInDays * 24 * 60 * 60 * 1e3).toISOString() : void 0;
@@ -87641,8 +87707,13 @@ async function registerAgent(options, client) {
87641
87707
  const output = await callConnectedMcpTool(client, "evalops_register", {
87642
87708
  agent_type: options.agentType ?? DEFAULT_AGENT_TYPE,
87643
87709
  capabilities: ["maestro:init", "maestro:cli"],
87710
+ integration_profile: integrationProfileForOptions(options),
87711
+ memory_mode: memoryModeForOptions(options),
87712
+ runtime_owner: runtimeOwnerForOptions(options),
87644
87713
  ...options.registerScopes?.length ? { scopes: options.registerScopes } : {},
87714
+ shim_type: shimTypeForOptions(options),
87645
87715
  surface: options.surface ?? DEFAULT_SURFACE2,
87716
+ trace_mode: traceModeForOptions(options),
87646
87717
  ...positiveInteger(options.ttlSeconds) ? { ttl_seconds: options.ttlSeconds } : {},
87647
87718
  ...options.workspaceId ? { workspace_id: options.workspaceId } : {}
87648
87719
  });
@@ -87827,6 +87898,11 @@ async function bootstrapEvalOpsAgent(options = {}, dependencies = {}) {
87827
87898
  }
87828
87899
  const keyPrefix = nonEmptyString2(keyOutput?.prefix) ?? stored?.keyPrefix;
87829
87900
  const scopes = keyOutput?.scopes ?? stored?.scopes;
87901
+ const integrationProfile = nonEmptyString2(registerOutput.integration_profile) ?? integrationProfileForOptions(options);
87902
+ const memoryMode = nonEmptyString2(registerOutput.memory_mode) ?? memoryModeForOptions(options);
87903
+ const runtimeOwner = nonEmptyString2(registerOutput.runtime_owner) ?? runtimeOwnerForOptions(options);
87904
+ const shimType = nonEmptyString2(registerOutput.shim_type) ?? shimTypeForOptions(options);
87905
+ const traceMode = nonEmptyString2(registerOutput.trace_mode) ?? traceModeForOptions(options);
87830
87906
  const agentMcp = {
87831
87907
  type: "agent-mcp",
87832
87908
  apiKey,
@@ -87836,14 +87912,19 @@ async function bootstrapEvalOpsAgent(options = {}, dependencies = {}) {
87836
87912
  surface: options.surface ?? DEFAULT_SURFACE2,
87837
87913
  agentId: registerOutput.agent_id,
87838
87914
  expiresAt: nonEmptyString2(keyOutput?.expires_at) ?? stored?.expiresAt,
87915
+ integrationProfile,
87839
87916
  keyId: nonEmptyString2(keyOutput?.key_id) ?? stored?.keyId,
87840
87917
  keyName: nonEmptyString2(keyOutput?.name) ?? stored?.keyName,
87841
87918
  keyPrefix,
87842
87919
  manifestUrl: endpoint.manifestUrl,
87920
+ memoryMode,
87843
87921
  registryVisible: registerOutput.registry_visible,
87844
87922
  runId: registerOutput.run_id,
87923
+ runtimeOwner,
87845
87924
  scopes,
87846
87925
  sessionExpiresAt: registerOutput.expires_at,
87926
+ shimType,
87927
+ traceMode,
87847
87928
  workspaceId: options.workspaceId ?? organizationIdFromCredentials(credentials)
87848
87929
  };
87849
87930
  saveBootstrapMetadata(credentials, agentMcp, deps.saveCredentials);
@@ -87858,16 +87939,21 @@ async function bootstrapEvalOpsAgent(options = {}, dependencies = {}) {
87858
87939
  evidenceEvents: (controlPlaneSummary.evidence ?? []).length,
87859
87940
  governedActionsLoaded: governedActionCount(controlPlaneSummary),
87860
87941
  governedInferenceCheckRan: Boolean(governedInferenceCheck.decision),
87942
+ integrationProfile,
87861
87943
  keyPrefix,
87862
87944
  manifestUrl: endpoint.manifestUrl,
87945
+ memoryMode,
87863
87946
  organizationId: organizationIdFromCredentials(credentials),
87864
87947
  registryVisible: registerOutput.registry_visible,
87865
87948
  riskFindings: countHighRiskFindings(controlPlaneSummary),
87866
87949
  runId: registerOutput.run_id,
87950
+ runtimeOwner,
87867
87951
  scopesGranted: registerOutput.scopes_granted,
87868
87952
  sessionExpiresAt: registerOutput.expires_at,
87953
+ shimType,
87869
87954
  stored: true,
87870
- traceIngestionStarted: hasTraceEvidence(controlPlaneSummary)
87955
+ traceIngestionStarted: hasTraceEvidence(controlPlaneSummary),
87956
+ traceMode
87871
87957
  };
87872
87958
  }
87873
87959
  var DEFAULT_AGENT_MCP_BASE_URL = "https://app.evalops.dev";
@@ -87911,9 +87997,14 @@ function buildPlatformMcpHeaders() {
87911
87997
  "X-EvalOps-Session-Id": getEnvValue3(["MAESTRO_SESSION_ID"]),
87912
87998
  "X-EvalOps-Agent-Id": getEnvValue3(PLATFORM_MCP_AGENT_ID_ENV_VARS) ?? stored?.agentId,
87913
87999
  "X-EvalOps-Agent-Run-Id": getEnvValue3(["MAESTRO_AGENT_RUN_ID"]) ?? stored?.runId,
88000
+ "X-EvalOps-Integration-Profile": getEnvValue3(PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS) ?? stored?.integrationProfile,
88001
+ "X-EvalOps-Memory-Mode": getEnvValue3(PLATFORM_MCP_MEMORY_MODE_ENV_VARS) ?? stored?.memoryMode,
88002
+ "X-EvalOps-Runtime-Owner": getEnvValue3(PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS) ?? stored?.runtimeOwner,
87914
88003
  "X-EvalOps-Scopes": getEnvValue3(PLATFORM_MCP_SCOPES_ENV_VARS),
88004
+ "X-EvalOps-Shim-Type": getEnvValue3(PLATFORM_MCP_SHIM_TYPE_ENV_VARS) ?? stored?.shimType,
87915
88005
  "X-EvalOps-Request-Id": getEnvValue3(["MAESTRO_REQUEST_ID"]),
87916
88006
  "X-EvalOps-Trace-Id": getEnvValue3(["TRACE_ID", "OTEL_TRACE_ID"]),
88007
+ "X-EvalOps-Trace-Mode": getEnvValue3(PLATFORM_MCP_TRACE_MODE_ENV_VARS) ?? stored?.traceMode,
87917
88008
  "X-EvalOps-Maestro-Surface": getEnvValue3(["MAESTRO_SURFACE"]) ?? "maestro"
87918
88009
  }).filter((entry2) => typeof entry2[1] === "string" && entry2[1].trim().length > 0));
87919
88010
  return Object.keys(headers).length > 0 ? headers : void 0;
@@ -87962,6 +88053,11 @@ var PLATFORM_MCP_TOKEN_ENV_VARS;
87962
88053
  var PLATFORM_MCP_WORKSPACE_ENV_VARS;
87963
88054
  var PLATFORM_MCP_AGENT_ID_ENV_VARS;
87964
88055
  var PLATFORM_MCP_SCOPES_ENV_VARS;
88056
+ var PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS;
88057
+ var PLATFORM_MCP_MEMORY_MODE_ENV_VARS;
88058
+ var PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS;
88059
+ var PLATFORM_MCP_SHIM_TYPE_ENV_VARS;
88060
+ var PLATFORM_MCP_TRACE_MODE_ENV_VARS;
87965
88061
  var DEFAULT_PLATFORM_MCP_SERVER_NAME = "evalops";
87966
88062
  var AGENT_MCP_MANIFEST_PATH2 = "/.well-known/evalops/agent-mcp.json";
87967
88063
  var AGENT_MCP_PATH2 = "/mcp";
@@ -88010,6 +88106,26 @@ var init_platform_plugin = __esm2(() => {
88010
88106
  "MAESTRO_EVALOPS_AGENT_MCP_SCOPES",
88011
88107
  "MAESTRO_CEREBRO_MCP_SCOPES"
88012
88108
  ];
88109
+ PLATFORM_MCP_INTEGRATION_PROFILE_ENV_VARS = [
88110
+ "MAESTRO_EVALOPS_INTEGRATION_PROFILE",
88111
+ "MAESTRO_INTEGRATION_PROFILE"
88112
+ ];
88113
+ PLATFORM_MCP_MEMORY_MODE_ENV_VARS = [
88114
+ "MAESTRO_EVALOPS_MEMORY_MODE",
88115
+ "MAESTRO_MEMORY_MODE"
88116
+ ];
88117
+ PLATFORM_MCP_RUNTIME_OWNER_ENV_VARS = [
88118
+ "MAESTRO_EVALOPS_RUNTIME_OWNER",
88119
+ "MAESTRO_RUNTIME_OWNER"
88120
+ ];
88121
+ PLATFORM_MCP_SHIM_TYPE_ENV_VARS = [
88122
+ "MAESTRO_EVALOPS_SHIM_TYPE",
88123
+ "MAESTRO_SHIM_TYPE"
88124
+ ];
88125
+ PLATFORM_MCP_TRACE_MODE_ENV_VARS = [
88126
+ "MAESTRO_EVALOPS_TRACE_MODE",
88127
+ "MAESTRO_TRACE_MODE"
88128
+ ];
88013
88129
  });
88014
88130
  var mcpNameSchema;
88015
88131
  var mcpTransportSchema;
@@ -171210,6 +171326,11 @@ function formatInitHelp() {
171210
171326
  Options
171211
171327
  --agent-type <type> Agent type to register, defaults to maestro
171212
171328
  --surface <surface> Surface to register, defaults to cli
171329
+ --integration-profile <profile> mcp_only, mcp_otlp, managed_runtime, sdk_integrated, or provider_proxy
171330
+ --shim-type <type> native_mcp, command_wrapper, hook, provider_proxy, sdk, or mcp_firewall_proxy
171331
+ --trace-mode <mode> none, mcp_events, or otlp
171332
+ --memory-mode <mode> none, read_only, durable, or cerebro
171333
+ --runtime-owner <owner> external or evalops
171213
171334
  --workspace, --workspace-id <id> Workspace to associate with the registration
171214
171335
  --scope <scope[,scope...]> Registration scopes to request
171215
171336
  --key-scope <scope[,scope...]> API key scopes to request
@@ -171264,6 +171385,10 @@ function parseInitArgs(args) {
171264
171385
  case "--force-login":
171265
171386
  options.forceLogin = true;
171266
171387
  break;
171388
+ case "--integration-profile":
171389
+ options.integrationProfile = readValue(args, i2, arg);
171390
+ i2++;
171391
+ break;
171267
171392
  case "--json":
171268
171393
  options.json = true;
171269
171394
  break;
@@ -171275,6 +171400,10 @@ function parseInitArgs(args) {
171275
171400
  options.manifestUrl = readValue(args, i2, arg);
171276
171401
  i2++;
171277
171402
  break;
171403
+ case "--memory-mode":
171404
+ options.memoryMode = readValue(args, i2, arg);
171405
+ i2++;
171406
+ break;
171278
171407
  case "--register-scope":
171279
171408
  case "--scope":
171280
171409
  options.registerScopes = appendScopes(options.registerScopes, readValue(args, i2, arg));
@@ -171283,10 +171412,22 @@ function parseInitArgs(args) {
171283
171412
  case "--rotate-key":
171284
171413
  options.rotateKey = true;
171285
171414
  break;
171415
+ case "--runtime-owner":
171416
+ options.runtimeOwner = readValue(args, i2, arg);
171417
+ i2++;
171418
+ break;
171419
+ case "--shim-type":
171420
+ options.shimType = readValue(args, i2, arg);
171421
+ i2++;
171422
+ break;
171286
171423
  case "--surface":
171287
171424
  options.surface = readValue(args, i2, arg);
171288
171425
  i2++;
171289
171426
  break;
171427
+ case "--trace-mode":
171428
+ options.traceMode = readValue(args, i2, arg);
171429
+ i2++;
171430
+ break;
171290
171431
  case "--ttl-seconds":
171291
171432
  options.ttlSeconds = parsePositiveInteger(readValue(args, i2, arg), arg);
171292
171433
  i2++;
@@ -171318,6 +171459,7 @@ function formatInitSuccess(result) {
171318
171459
  checkLine(`Authenticated as ${authenticatedAs}`),
171319
171460
  checkLine(`${keyMode} managed inference key`),
171320
171461
  checkLine("Registered local agent runtime"),
171462
+ checkLine(`Integration profile ${result.integrationProfile ?? "managed_runtime"} via ${result.shimType ?? "sdk"}`),
171321
171463
  checkLine(`Loaded ${governedActions} governed actions`),
171322
171464
  checkLine(result.approvalPolicyAttached ? "Attached default approval policy" : "Queued approval policy review"),
171323
171465
  checkLine(result.traceIngestionStarted ? "Started trace ingestion" : "Requested trace ingestion"),
@@ -6,13 +6,18 @@ export interface EvalOpsInitOptions {
6
6
  apiKeyScopes?: string[];
7
7
  expiresInDays?: number;
8
8
  forceLogin?: boolean;
9
+ integrationProfile?: string;
9
10
  json?: boolean;
10
11
  keyName?: string;
11
12
  manifestUrl?: string;
13
+ memoryMode?: string;
12
14
  mcpUrl?: string;
13
15
  registerScopes?: string[];
14
16
  rotateKey?: boolean;
17
+ runtimeOwner?: string;
18
+ shimType?: string;
15
19
  surface?: string;
20
+ traceMode?: string;
16
21
  ttlSeconds?: number;
17
22
  workspaceId?: string;
18
23
  }
@@ -22,16 +27,21 @@ export interface EvalOpsAgentMcpMetadata {
22
27
  createdAt: string;
23
28
  endpoint: string;
24
29
  expiresAt?: string;
30
+ integrationProfile?: string;
25
31
  keyId?: string;
26
32
  keyName?: string;
27
33
  keyPrefix?: string;
28
34
  manifestUrl?: string;
35
+ memoryMode?: string;
29
36
  registeredAt: string;
30
37
  registryVisible?: boolean;
31
38
  runId?: string;
39
+ runtimeOwner?: string;
32
40
  scopes?: string[];
33
41
  sessionExpiresAt?: string;
42
+ shimType?: string;
34
43
  surface: string;
44
+ traceMode?: string;
35
45
  type: "agent-mcp";
36
46
  workspaceId?: string;
37
47
  }
@@ -46,16 +56,21 @@ export interface EvalOpsInitResult {
46
56
  evidenceEvents?: number;
47
57
  governedActionsLoaded?: number;
48
58
  governedInferenceCheckRan?: boolean;
59
+ integrationProfile?: string;
49
60
  keyPrefix?: string;
50
61
  manifestUrl?: string;
62
+ memoryMode?: string;
51
63
  organizationId?: string;
52
64
  registryVisible?: boolean;
53
65
  riskFindings?: number;
54
66
  runId?: string;
67
+ runtimeOwner?: string;
55
68
  scopesGranted?: string[];
56
69
  sessionExpiresAt?: string;
70
+ shimType?: string;
57
71
  stored: boolean;
58
72
  traceIngestionStarted?: boolean;
73
+ traceMode?: string;
59
74
  }
60
75
  export interface EvalOpsInitStatus {
61
76
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-bootstrap.d.ts","sourceRoot":"","sources":["../../src/evalops/agent-bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-bootstrap.d.ts","sourceRoot":"","sources":["../../src/evalops/agent-bootstrap.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAEN,oBAAoB,EACpB,oBAAoB,EACpB,MAAM,qBAAqB,CAAC;AAqB7B,MAAM,WAAW,kBAAkB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACvC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,gBAAgB,CAAC;IAC9E,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;IACrC,mBAAmB,CAAC,EAAE,OAAO,mBAAmB,CAAC;IACjD,eAAe,CAAC,EAAE,OAAO,oBAAoB,CAAC;IAC9C,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC/C,eAAe,CAAC,EAAE,OAAO,oBAAoB,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AA6HD,wBAAgB,gCAAgC,IAC7C,uBAAuB,GACvB,SAAS,CAEX;AAqjBD,wBAAsB,qBAAqB,CAC1C,OAAO,GAAE,kBAAuB,EAChC,YAAY,GAAE,uBAA4B,GACxC,OAAO,CAAC,iBAAiB,CAAC,CAqL5B"}