@meistrari/agent-core 0.0.0 → 0.1.1
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 +36 -3
- package/bin/supervisor.ts +116 -0
- package/package.json +42 -3
- package/scripts/build-supervisor-executable.ts +32 -0
- package/src/agents/agent-error-serializer.ts +23 -0
- package/src/agents/agent-event-stream.ts +81 -0
- package/src/agents/agent-id.ts +17 -0
- package/src/agents/agent-operation.ts +11 -0
- package/src/agents/agent-provider.ts +37 -0
- package/src/agents/agent-run.ts +32 -0
- package/src/agents/agent-runtime-error.ts +161 -0
- package/src/agents/agent-session-events.ts +32 -0
- package/src/agents/agent-tool-runner.ts +83 -0
- package/src/agents/agent-tool.ts +111 -0
- package/src/agents/author-context.ts +36 -0
- package/src/agents/claude/claude-command-mapper.ts +234 -0
- package/src/agents/claude/claude-event-mapper.ts +748 -0
- package/src/agents/claude/claude-provider.ts +191 -0
- package/src/agents/claude/claude-run.ts +468 -0
- package/src/agents/claude/claude-tool-mapper.ts +186 -0
- package/src/agents/claude/index.ts +1 -0
- package/src/agents/codex/codex-auth.ts +34 -0
- package/src/agents/codex/codex-command-mapper.ts +78 -0
- package/src/agents/codex/codex-event-mapper.ts +721 -0
- package/src/agents/codex/codex-json-rpc-client.ts +326 -0
- package/src/agents/codex/codex-protocol.ts +36 -0
- package/src/agents/codex/codex-provider.ts +1050 -0
- package/src/agents/codex/codex-run.ts +404 -0
- package/src/agents/codex/codex-skill-catalog.ts +158 -0
- package/src/agents/codex/codex-skill-roots.ts +19 -0
- package/src/agents/codex/codex-tool-mapper.ts +55 -0
- package/src/agents/codex/codex.errors.ts +68 -0
- package/src/agents/codex/generated/meta.gen.ts +606 -0
- package/src/agents/codex/generated/namespaces.gen.ts +311 -0
- package/src/agents/codex/generated/schema.gen.ts +34883 -0
- package/src/agents/codex/index.ts +2 -0
- package/src/agents/index.ts +14 -0
- package/src/agents/input-attachment-preparation.ts +86 -0
- package/src/agents/input-attachment.errors.ts +16 -0
- package/src/agents/instructions.ts +8 -0
- package/src/agents/materialized-input-attachment.ts +26 -0
- package/src/agents/message-id.ts +23 -0
- package/src/agents/normalize.ts +8 -0
- package/src/agents/sandbox-environment.ts +1 -0
- package/src/agents/tools/ping.tool.ts +13 -0
- package/src/agents/user-input-request.ts +470 -0
- package/src/protocol/agent-event.ts +2 -1
- package/src/protocol/agent-usage.ts +14 -0
- package/src/provenance.gen.ts +3 -3
- package/src/supervisor/agent-provider-factory.ts +189 -0
- package/src/supervisor/bootstrap-binder.ts +133 -0
- package/src/supervisor/config.ts +49 -0
- package/src/supervisor/control-authority-verifier.ts +135 -0
- package/src/supervisor/create-supervisor-runtime.ts +25 -0
- package/src/supervisor/errors.ts +24 -0
- package/src/supervisor/index.ts +34 -0
- package/src/supervisor/persistence/json.ts +21 -0
- package/src/supervisor/persistence/state-discovery.ts +56 -0
- package/src/supervisor/persistence/supervisor-store.ts +364 -0
- package/src/supervisor/ports/index.ts +109 -0
- package/src/supervisor/provider-factory.ts +37 -0
- package/src/supervisor/resident.ts +143 -0
- package/src/supervisor/rpc-client.ts +120 -0
- package/src/supervisor/runtime-handler.ts +309 -0
- package/src/supervisor/websocket-server.ts +435 -0
- package/src/supervisor-protocol/bootstrap.ts +1 -1
- package/src/template-onboarding.ts +47 -0
- package/src/testing/es256-test-keys.ts +73 -0
- package/src/testing/in-memory-runtime-control-plane.ts +206 -0
- package/src/testing/index.ts +6 -0
- package/src/testing/loopback-supervisor-connection.ts +71 -0
- package/src/testing/scripted-provider.ts +64 -0
- package/src/worker-runtime-client/command-pump.ts +127 -0
- package/src/worker-runtime-client/connection-attempt.ts +349 -0
- package/src/worker-runtime-client/control-authority-signer.ts +100 -0
- package/src/worker-runtime-client/e2b-supervisor-connection.ts +102 -0
- package/src/worker-runtime-client/frame-processor.ts +178 -0
- package/src/worker-runtime-client/index.ts +27 -0
- package/src/worker-runtime-client/lease-reconciler.ts +14 -0
- package/src/worker-runtime-client/ports.ts +139 -0
- package/src/worker-runtime-client/postgres-notification-listener.ts +91 -0
- package/src/worker-runtime-client/rpc-dispatcher.ts +27 -0
- package/src/worker-runtime-client/rpc-request-manager.ts +141 -0
- package/src/worker-runtime-client/sandbox-connection-runtime.ts +301 -0
- package/src/worker-runtime-client/token-crypto.ts +46 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { ClientRequestMethod } from './codex-protocol'
|
|
2
|
+
import { AgentProviderProtocolError, AgentProviderRuntimeError } from '../agent-runtime-error'
|
|
3
|
+
|
|
4
|
+
interface CodexJsonRpcResponseErrorInput {
|
|
5
|
+
method: ClientRequestMethod
|
|
6
|
+
responseError: unknown
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export class CodexJsonRpcResponseError extends AgentProviderProtocolError {
|
|
10
|
+
readonly method: ClientRequestMethod
|
|
11
|
+
readonly responseError: unknown
|
|
12
|
+
// JSON-RPC error `code` extracted structurally so consumers never parse message text.
|
|
13
|
+
readonly responseErrorCode: number | undefined
|
|
14
|
+
|
|
15
|
+
constructor({ method, responseError }: CodexJsonRpcResponseErrorInput) {
|
|
16
|
+
super({
|
|
17
|
+
message: 'Codex app-server returned JSON-RPC error.',
|
|
18
|
+
details: { method, error: stringifyJsonRpcError(responseError) },
|
|
19
|
+
})
|
|
20
|
+
this.method = method
|
|
21
|
+
this.responseError = responseError
|
|
22
|
+
this.responseErrorCode = jsonRpcErrorCode(responseError)
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// Whether the request could have reached the Codex process: `before_write` is proven non-delivery
|
|
27
|
+
// (safe to retry); `possible_write` means the input may already be in the provider.
|
|
28
|
+
type CodexJsonRpcWriteState = 'before_write' | 'possible_write'
|
|
29
|
+
|
|
30
|
+
export class CodexJsonRpcTransportClosedError extends AgentProviderRuntimeError {
|
|
31
|
+
readonly method: ClientRequestMethod
|
|
32
|
+
readonly writeState: CodexJsonRpcWriteState
|
|
33
|
+
|
|
34
|
+
constructor({ method, writeState, message, cause }: {
|
|
35
|
+
method: ClientRequestMethod
|
|
36
|
+
writeState: CodexJsonRpcWriteState
|
|
37
|
+
message: string
|
|
38
|
+
cause?: unknown
|
|
39
|
+
}) {
|
|
40
|
+
super({
|
|
41
|
+
code: 'agents.codex-transport-closed',
|
|
42
|
+
publicMessage: 'Codex app-server connection closed during a request.',
|
|
43
|
+
message,
|
|
44
|
+
details: { method, writeState },
|
|
45
|
+
...(cause === undefined ? {} : { cause }),
|
|
46
|
+
})
|
|
47
|
+
this.method = method
|
|
48
|
+
this.writeState = writeState
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function jsonRpcErrorCode(responseError: unknown): number | undefined {
|
|
53
|
+
if (typeof responseError !== 'object' || responseError === null || !('code' in responseError))
|
|
54
|
+
return undefined
|
|
55
|
+
const code = (responseError).code
|
|
56
|
+
return typeof code === 'number' ? code : undefined
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function stringifyJsonRpcError(responseError: unknown): string {
|
|
60
|
+
if (typeof responseError === 'string')
|
|
61
|
+
return responseError
|
|
62
|
+
try {
|
|
63
|
+
return JSON.stringify(responseError)
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return String(responseError)
|
|
67
|
+
}
|
|
68
|
+
}
|