Skip to content

[recipes] Vercel + Neon + Telegram alternative architecture#37

Open
geoff-price wants to merge 1 commit intoNateBJones-Projects:mainfrom
geoff-price:recipes/vercel-neon-telegram
Open

[recipes] Vercel + Neon + Telegram alternative architecture#37
geoff-price wants to merge 1 commit intoNateBJones-Projects:mainfrom
geoff-price:recipes/vercel-neon-telegram

Conversation

@geoff-price
Copy link

Summary

  • Alternative Open Brain architecture using Vercel (serverless), Neon (pgvector), and Telegram (mobile capture) instead of Cloudflare + Supabase + Slack
  • Uses Vercel AI SDK with OpenAI directly (no OpenRouter)
  • MCP server with Streamable HTTP transport (2025-03-26 spec)
  • 4 capture channels: MCP clients, Telegram bot, HTTP API, CLI
  • Timing-safe auth, rate limiting (30 req/min), 10KB input cap
  • 30 unit tests (auth, rate limiting, Zod schemas)
  • Tested on a personal instance across ChatGPT, Claude Desktop, Claude Code, and Telegram

What it does

Deploys a complete Open Brain on the Vercel + Neon stack. The thoughts table schema and match_thoughts() function are identical to OB1's — data is portable between stacks.

Component Default (OB1) This recipe
Runtime Cloudflare Workers Vercel Serverless (Next.js App Router)
Database Supabase (pgvector) Neon Postgres (pgvector)
AI Provider OpenAI via OpenRouter OpenAI direct (Vercel AI SDK)
Mobile capture Slack Telegram (grammY)
MCP transport SSE Streamable HTTP
Auth Supabase auth + API keys Static access key (timing-safe)

Requirements

  • Vercel account (free tier)
  • Neon account (free tier)
  • OpenAI API key
  • Telegram account (optional, for mobile capture)

Testing

Tested on a personal deployment (engram) with cross-client verification:

  • Captured thoughts from Telegram, ChatGPT, Claude Desktop, and Claude Code
  • Searched and listed thoughts across all clients
  • Unit tests pass: npm test (30 tests, vitest)

Test plan

  • Recipe is in correct recipes/ directory
  • README has all required sections (prerequisites, instructions, expected outcome, troubleshooting)
  • metadata.json is valid with all required fields
  • No credentials or API keys in source
  • SQL creates new tables only (no modifications to core tables)
  • Changes confined to recipes/vercel-neon-telegram/
  • Internal README links resolve correctly

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant