Skip to main content
Penumbra connects to the tools your work lives in. You connect a platform in your Penumbra workspace, and Penumbra syncs it, auto-models it as a graph (no hand-built shape), and reconciles across platforms — the meeting in Granola resolves to its Google Calendar event, the people and companies to their Attio records — so your tools become one brain you can query and build on.
Connecting integrations is done in your Penumbra workspace (the web app), not the API. These docs cover what you get and how to build on it. Set one up at app.getpenumbra.ai.

How it works

1

Connect, in your workspace

Authenticate into the platform or add an API key, from your Penumbra workspace.
2

Sync and auto-model

Penumbra pulls the platform and models it as a graph — its native types and relationships — with no manual shaping. The raw records land on the mirror plane.
3

Reconcile

Penumbra connects the entities that recur across platforms, weaving your separate platform graphs into one.

Live platforms

Four platforms are auto-mapped today:
PlatformWhat it graphs
LinearIssues and projects
AttioCRM records — companies, people, deals
Google CalendarEvents and meetings
GranolaMeeting notes and transcripts
Coming next: Slack and Gmail. To enable a platform for your project, email [email protected].

Build on it

Once a platform is synced, the graph is yours to use:

Bootstrap a shape from the web

Separate from platform sync, and available via the API: point Penumbra at a URL and it crawls the site and proposes a shape from it. See Firecrawl.

Bring your own

Anything that produces structured data can feed Penumbra: extract it elsewhere, then capture it into the graph with pb.capture or pb.extract. Want a platform we have not connected yet? Tell us at [email protected].