New:Microsoft Teams Notifications Are Now Available in Socket.Learn more
Get Started

@cellar-door/vercel-ai-sdk

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cellar-door/vercel-ai-sdk

Vercel AI SDK integration for cellar-door EXIT and ENTRY — verifiable agent departure and arrival markers

latest
Source
npmnpm
Version
0.1.5
Version published
Maintainers
1
Created
Source

@cellar-door/vercel-ai-sdk

npm version tests license NIST

𓉸 Passage Protocol · exit-door · entry-door · mcp · langchain · vercel · eliza · eas · erc-8004 · sign · python

⚠️ Pre-release software — no formal security audit has been conducted. This project is published for transparency, review, and community feedback. It should not be used in production systems where security guarantees are required. If you find a vulnerability, please report it to hawthornhollows@gmail.com.

Add verifiable departure and arrival records to your Vercel AI SDK agents.

Ecosystem

PackageLanguageDescription
cellar-door-exitTypeScriptCore protocol (reference impl)
cellar-door-exitPythonCore protocol
cellar-door-entryTypeScriptArrival/entry markers
@cellar-door/langchainTypeScriptLangChain integration
cellar-door-langchainPythonLangChain integration
@cellar-door/vercel-ai-sdkTypeScriptVercel AI SDK ← you are here
@cellar-door/mcp-serverTypeScriptMCP server
@cellar-door/elizaTypeScriptElizaOS plugin
@cellar-door/easTypeScriptEAS attestation anchoring
@cellar-door/erc-8004TypeScriptERC-8004 identity/reputation
@cellar-door/sign-protocolTypeScriptSign Protocol attestation

Paper · Website

Quick Start

npm install @cellar-door/vercel-ai-sdk cellar-door-exit cellar-door-entry ai
import { generateText } from "ai";
import { openai } from "@ai-sdk/openai";
import { exitMarkerTool } from "@cellar-door/vercel-ai-sdk";

const { text, toolResults } = await generateText({
  model: openai("gpt-4o"),
  tools: { exitMarker: exitMarkerTool },
  prompt: "Complete the task and produce a departure marker for did:web:platform.example",
});

// The agent creates a signed EXIT marker automatically
// toolResults contains the verified marker JSON

Automatic EXIT on session end

import { streamText } from "ai";
import { createExitOnFinish } from "@cellar-door/vercel-ai-sdk";

const result = await streamText({
  model: openai("gpt-4o"),
  prompt: "Hello!",
  onFinish: createExitOnFinish({
    origin: "my-agent",
    onMarkerCreated: (marker, identity) => {
      console.log("EXIT marker created:", marker.id);
    },
  }),
});

EXIT Tools

Tool

import { exitMarkerTool } from "@cellar-door/vercel-ai-sdk";
// Drop into any generateText/streamText call

Middleware

import { createExitOnFinish } from "@cellar-door/vercel-ai-sdk";
// Automatic EXIT marker on session end

ENTRY Tools

Verify and Admit

import { verifyAndAdmitAgentTool } from "@cellar-door/vercel-ai-sdk";
// Agent calls with { exitMarkerJson, destination, admissionPolicy? }

Evaluate Admission Policy

import { evaluateAdmissionTool } from "@cellar-door/vercel-ai-sdk";
// Check if an EXIT marker meets a policy without creating an arrival

Verify Transfer Chain

import { verifyTransferTool } from "@cellar-door/vercel-ai-sdk";
// Verify a complete EXIT→ENTRY transfer

Full Transit Middleware (EXIT + ENTRY)

import { createTransitOnFinish } from "@cellar-door/vercel-ai-sdk";

const result = await streamText({
  model,
  prompt: "Hello",
  onFinish: createTransitOnFinish({
    origin: "platform-a",
    arrivalDestination: "platform-b",
    onMarkerCreated: (marker) => console.log("EXIT:", marker.id),
    onArrivalCreated: (arrival) => console.log("ARRIVAL:", arrival.id),
  }),
});

API

EXIT

  • exitMarkerTool — Vercel AI SDK tool for creating EXIT markers
  • createExitOnFinish(opts)onFinish callback for automatic EXIT markers
  • withExitMarker(originalOnFinish, opts) — Wraps existing onFinish to also create EXIT markers

ENTRY

  • verifyAndAdmitAgentTool — Verify EXIT marker + create arrival
  • evaluateAdmissionTool — Check if EXIT marker meets an admission policy
  • verifyTransferTool — Verify a complete EXIT→ENTRY transfer chain
  • createEntryOnStart(exitMarkerJson, opts) — Create arrival on session start
  • createTransitOnFinish(opts) — Create both EXIT and ENTRY markers on finish

Admission Policies

  • OPEN_DOOR — Accept any verified departure
  • STRICT — Voluntary only, <24h old, requires lineage + stateSnapshot
  • EMERGENCY_ONLY — Accept only emergency exits

⚠️ Disclaimer

WARNING: Automated admission decisions should be reviewed by platform operators. This integration does not constitute legal advice. Platforms are responsible for their own admission policies and the consequences of admitting agents.

License

Apache-2.0

Keywords

exit-protocol

FAQs

Package last updated on 10 Mar 2026

Related posts