Adapter Registry
Reuse adapter work locally first, then make sharing and governance a platform feature.
The first registry should be local and forkable. A hosted marketplace can come later.
SiteKit adapters are versioned artifacts. If one team has already mapped a destination portal, another team should be able to start from that work instead of recording the same flows from scratch.
Registry Entry
name: destination_portal
label: Destination Portal
version: 0.1.4
site:
appUrl: https://app.example.test
apiHosts:
- api.example.test
auth:
strategies:
- captured_headers
- browser_login
operations:
verified: 10
unverified: 1
sideEffects:
read: 9
update: 1
create: 1
runtime:
backends:
- http
packages:
typescript: packages/destination-portal-ts
python: packages/destination-portal-py
trust:
signature: ed25519:example-signature
capabilities:
transforms: pure_json
browserHosts:
- app.example.testLocal Commands
sitekit registry list
sitekit registry show destination_portal
sitekit registry import ./adapters/destination_portal
sitekit registry fork destination_portal --as destination_portal-teamThe registry should make adapter state visible:
[email protected]
auth: captured_headers
verified operations: 10
unverified operations: records.create
latest live test: 2026-08-27
package targets: typescript, python, mcpTrust Model
Imported adapters should not become fully trusted automatically. Adapters may contain executable transforms and browser-backed scripts, so the registry needs a trust model before broad sharing becomes safe.
The registry should track:
- Source repository or local path.
- Adapter version and generated package versions.
- Verification status by operation.
- Capture and fixture provenance.
- Last successful fixture and live test.
- Required auth strategy and connection requirements.
- Declared capabilities for transforms and browser scripts.
- Signature and provenance metadata when available.
capabilities:
transforms:
network: none
filesystem: none
environment: none
timers: none
browser:
allowHosts:
- app.example.test
allowDownloads: false
blockNavigationOutsideAllowlist: true
provenance:
source: registry://example-org/[email protected]
captureIds:
- cap_2026_08_27_a91f
llm:
provider: openai
model: gpt-5
signature: ed25519:example-signature
importedAt: 2026-08-27T14:02:00ZTwo rules make registry sharing safer:
- Verify signatures at import and again at generation.
- Unsigned or unverifiable adapters may be imported for raw exploration, but cannot auto-expose operations to MCP or pipeline surfaces.
Transform sandboxing should be enforced by the runtime. A transform is a pure function over JSON with no network, filesystem, environment, or timer access. A browser script runs only against its declared host allowlist.
Hosted Later
A hosted registry can add collaboration features:
- Organization-approved adapter versions.
- Shared drift telemetry.
- Maintainer ownership.
- Review history.
- Usage-based live probe scheduling.
Those are control-plane features. The adapter package should remain useful as a local artifact.