[AVAILABLE] as a library.
packages/connector-sdk, 45 tests. Extends
packages/execution-control (unchanged), see The
gateway for how a Connector is reached.What exists: the Connector SDK foundation
@parmana/connector-sdk is the contract every connector implements, plus generic reference
implementations and four enterprise-named reference mocks. None of it integrates with a real
enterprise system.
ConnectorCapability, a namespaced verb (crm:read,payments:refund,http:post). By convention,ExecutableContent.actionis the capability string, this is exactly whatexecution-control’sDefaultConnectorPolicyalready checks (connector.capabilities.includes(request.executableContent.action), unchanged).ConnectorMetadata/ConnectorVersion/ConnectorHealth, descriptive metadata a connector author attaches at registration time. Version mismatches and"unavailable"health both fail closed inSdkConnectorExecutor, before the connector is ever invoked.ConnectorFactory, the construction contract future connectors implement. No concrete factory ships in this milestone.HttpConnector([AVAILABLE],packages/connector-sdk/src/HttpConnector.ts): capability-aware HTTP forwarding: declared capabilities, per-request timeout viaAbortController, Bearer-token credential injection from an already-resolvedCredentialHandle, deterministic sanitized evidence. Fails closed on timeout or any non-2xx response. This is a different, newer connector frompackages/execution-gateway/src/HttpConnector.ts(below), that one is untouched and still serves the Gateway’s separate “direct connector” mode.MockConnector([AVAILABLE]), scripted responses and failure injection, for hermetic tests of anything built on top of this SDK.SapConnector/OracleConnector/WorkdayConnector/SalesforceConnector([AVAILABLE] as reference mocks), thin factory functions inpackages/connector-sdk/src/connectors/{sap,oracle,workday,salesforce}/, each constructing aMockConnectorunder an enterprise-shapedconnectorIdand capability. Every one carries the same self-documenting comment: “deterministic, in-memory connector used until the real enterprise connector is implemented.” These are reference mocks for building against a realistic connector shape, not integrations, they never call SAP, Oracle, Workday, or Salesforce.packages/api’s default server registers HubSpot, GitHub, Paytm, and Slack, each only when its own credentials are configured, not these four mocks or any other capability, see The gateway.
How a Connector is reached
connector-sdk builds on execution-control’s existing seams rather than bypassing them:
ConnectorSdkRegistry (packages/connector-sdk/src/ConnectorRegistry.ts) extends
execution-control’s ConnectorRegistry by composing an InMemoryConnectorRegistry
internally. It implements the same get() contract, so it’s a drop-in wherever a plain
ConnectorRegistry is expected, while adding metadata/version/health/credential-provider
registration.
See the Connector Development Guide to build
one, and Credential Architecture for how credentials reach a
connector without ever passing through the Runtime or the AI caller.
What still doesn’t exist
No real connector for SAP, Oracle, Workday, or Salesforce exists, only the reference mocks above. No connector, mock or real, exists for OpenAI, Anthropic, ServiceNow, Jira, or any database driver. Building any of these means implementingConnector from
@parmana/connector-sdk and registering it with a ConnectorSdkRegistry, and, to reach the
default server, editing its bootstrap (see The gateway). The SDK
contract is real, a pre-built connector for your target system mostly is not.