Skip to main content

Roadmap

What's built, what's in progress, and what's next.

Last updated: March 2026


Completed ✅

Foundation (2025 H1)

  • Event sourcing: immutable events table, pg-boss job queue, full audit log
  • Hub Protocol v1: standard API contract between Data Pod and Intelligence Services
  • Multi-agent core: Orchestrator pattern, 15+ specialized agents
  • tRPC 11 + Drizzle ORM: end-to-end type safety throughout

Entity & Profile System (2025 H2)

  • Unified entity model: one type for tasks, notes, contacts, events, ideas
  • Profile system: entity types as configuration (system, workspace, shared, user scopes)
  • Property definitions: typed, constrained, profile-scoped, slugged
  • Knowledge graph: typed bidirectional relationships between any entities
  • Profile defaultValues: property defaults merged at entity creation time
  • Profile inheritance: webinar extends event

Views & Visualization (2025 H2–2026 H1)

  • 8 view types: Table, Kanban, List, Grid, Calendar, Timeline, Graph, Whiteboard
  • Bento dashboard: composable grid of widgets, JSONB config, react-grid-layout, edit mode
  • 14+ built-in widgets: welcome, entity list, recent, quick capture, stats, view runners
  • View-runner widgets: Kanban, Table, List, Calendar, Timeline adapters as bento blocks
  • Entity bento mode: toggle any entity to a dashboard view; auto-creates default layout
  • Widget error boundaries: crashed widget shows error card; rest of grid continues
  • Unknown widget placeholder: marketplace CTA for unregistered widget types
  • Field system (@synap/entity-card): single rendering source of truth across all view types

Channels (2026 Q1)

  • Channel types: ai_thread, branch, entity_comments, document_review, view_discussion
  • AI streaming: SSE with chunk, step, branch_decision, complete, error events
  • Branch management: fork a conversation, explore alternatives, visual tree navigation
  • Context items: link entities or documents to a channel for AI grounding
  • Backend refactor: chat_threadschannels, conversation_messagesmessages

AI Governance & Agent Users (2026 Q1)

  • Proposal flow: AI executes → checkPermissionOrPropose → user approves in inbox
  • Agent user system: agents are rows in users table with workspace RBAC roles
  • Hub Protocol branding: source: "intelligence" / isHubProtocol: true — cannot be spoofed
  • autoApproveFor[]: glob-pattern whitelist for low-stakes auto-approval
  • sourceMessageId flow: proposals linked to the message that triggered them
  • Security hardening: see synap-backend/docs/SECURITY_AND_PERMISSIONS.md

Template Engine (2026 Q1)

  • 6 built-in templates: CRM, Second Brain, Content OS, Project Management, Personal, Blank
  • Template → workspace: profiles + property defs + views + home dashboard + sidebar items
  • Shared profile scoping: templates share profiles across workspaces without slug collisions
  • Browser sidebar items: templates configure layoutConfig.sidebarItems for Electron app
  • Home bento dashboard: every template provisions a bento view with homeScope: workspace

Intelligence Ecosystem (2026 Q1)

  • ZeroClaw integration: one-click provision, Hub Protocol connection, status polling
  • @synap/agent-service: generic useAgentServices(), ServiceChip, ServiceCard components
  • OpenClaw architecture: Hub-and-spoke boundary defined, synap-os SKILL.md spec written
  • A2AI channel type: spec for agent-to-agent async communication

Data Model Consolidation (2026 Q1)

  • Removed documents.entityId backlink: reverse lookup now uses FK on entities.documentId
  • Canvas-only document creation: structured views and bento never create a document row
  • Profile defaultValues field: merged at entity creation, profile < caller priority

Browser (Electron) App (2026 Q1)

  • Template-driven sidebar: workspace sidebar items configured by template
  • View resolution: lazy view ID lookup on click
  • Connection management: Data Pod connection indicator, health status
  • Workspace identity chip: colored initials pill for multi-workspace visibility

In Progress 🚧

MCP Integration

  • MCP client in Intelligence Hub: connect to external MCP servers (Playwright, filesystem, Postgres, Slack, WhatsApp)
  • MCP server exposure: expose Synap data as an MCP server for Claude Desktop, Cursor, ChatGPT
  • One wire unlocks 10,000+ community tools; one server makes Synap accessible from any MCP client

External Channel Relay

  • Inbound webhook receiver: normalize messages from Telegram, Slack, WhatsApp, Discord
  • Outbound relay: Synap AI response → Hub Protocol → external platform delivery
  • Message normalization layer: uniform schema for cross-platform messages
  • Priority order: Telegram (free, fast) → Slack (Bolt SDK) → WhatsApp (Meta approval, 4–8 weeks)

Background Agents

  • Agents that run asynchronously, submit proposals, and surface results when the user returns
  • Powered by the existing proposal queue — no new governance infrastructure needed
  • Use cases: overnight research runs, daily digest generation, automated tagging

Next 📋

Widget Marketplace

  • Registry of community-built widgets installable to any bento layout
  • Manifest format: widget key, package, config schema, preview screenshot
  • Security review process for marketplace submissions
  • "Search widget marketplace" CTA already wired in UnknownWidgetPlaceholder

MCP Widget Type

  • mcp:* widget prefix → route render to connected MCP server
  • MCP server can expose a custom React component or a data feed
  • Unlocks: GitHub PR status widget, Linear issues widget, Notion block embed, etc.

OpenClaw Integration

  • Phase 1: Install synap-os SKILL.md → OpenClaw connects via Hub Protocol (1–2d)
  • Phase 2: A2AI channel type for async agent-to-agent messaging (2–3d)
  • Phase 3: External channel bridge — inbound webhooks → EXTERNAL_IMPORT → relay (3–4d)
  • Phase 4: Filesystem governance (user-scoped paths auto-approve, system paths propose)

AI-Generated Widgets

  • "Generate this widget" CTA in UnknownWidgetPlaceholder
  • User describes what they want → AI generates a widget spec → bento block inserted
  • Requires MCP + Intelligence Hub round-trip

View Subscriptions & Notifications

  • Subscribe to a view's query: get notified when matching entities appear
  • Use case: "notify me when a deal moves to 'Closed Won'"
  • Powered by the pg-boss job queue + existing webhook dispatcher

Conflict Detection

  • When multiple agents (or users) propose changes to the same entity simultaneously
  • Diff-based merge suggestions in the approval queue
  • Deferred until background agents are in production use

Deferred (Not Now)

FeatureReason deferred
Extension marketplace (code plugins)MCP covers the use case more cleanly
Built-in WhatsApp integrationMeta approval takes 4–8 weeks; Telegram first
Managed OpenClaw hostingGovernance unclear (creator joined OpenAI); deprioritized
Native mobile appElectron browser covers desktop; mobile is a separate investment
LangGraph orchestrationOur multi-agent system is sufficient; LangGraph adds complexity without clear benefit

Design Principles for Prioritization

  1. Governance first: any new AI capability must fit the proposal model before shipping
  2. MCP before custom: if an MCP server exists for a tool, use it — don't build a native integration
  3. Templates before settings: a good default is worth more than a configuration option
  4. Entities over documents: content stored in entity relationships is queryable; content stored in documents is opaque
  5. Widget error isolation: a broken widget must never break the dashboard