Envisioning holds its client and partner calls on Starlings. The room runs from our own Mac or iPhone, nothing is recorded, and guests need no account. What was said is written down on the host's device and filed on the project it belongs to.
The meeting
Guests wait until you let them in.
Send a link. Guests need no account, and nothing is recorded. The host's device writes the transcript, and Starlings files it on the project.
No recording
Starlings never records audio or video.
YouGuestGuest
RECStarlings records nothing
Kept
Transcript
Summary
Not kept
Audio
Video
Your screen
Transcript
The host's device writes it. Only the text leaves the device
Summary
Starlings writes it from the transcript when the meeting ends
Join with a link
Guests enter a name and an email. No account.
meet.envisioning.com/room/host/k7f3q2
Meeting titleToday, 14:30
You
One room
The same address every time. An invite adds a token, and the card shows its title and time
Nothing to install
The browser is enough
Waiting room
The host admits each guest. No audio or video flows before that.
A guest is waiting
Admit
The host admits one guest at a time
Before that
No audio or video flows
Live captions
The host's Mac or iPhone transcribes the meeting and shows captions to everyone.
Speakerwhat they say, as they say it
Written by
The host's Mac or iPhone
Shared
Everyone in the room sees them, with the speaker's name
Transcript and summary
When the meeting ends, Starlings files the transcript and a summary to the project or contact.
Meeting titleTranscript · SummaryOn the project
When
The meeting ends
Where
The project or contact it was about, and Docs
Share
A link to the meeting page, which opens only for people who can already read it. Copy it, or download it as .md or .txt
Call controls
All of these work in the browser. Nothing to install.
Leave
Share
Your screen
Look
Blur, or your own picture behind you
Sound
Noise suppression. Each voice plays from where that person's video is
Devices
Pick your camera, mic and speaker
Take part
Raise a hand, react, chat
Reconnect
Rejoin after a dropped connection
Booking page
Share one link. People pick a time when you are free.
meet.envisioning.com/book/room
Free
Starlings reads your calendar and offers only free slots. No double bookings
Self-serve
They reschedule or cancel from the invite
Invite
Carries the room link, the start time, and the end time
Hosted by you
Your Mac or iPhone runs the meeting. It decides who gets in, not a server.
Your Mac or iPhoneAdmits, transcribes, endsMedia relayVideo and audio, in transit onlyGuestsBrowser, Mac, or phone
Host
The Mac or iPhone that hosts admits guests and transcribes on the device. A second device joins muted as a companion
Mac-to-Mac handoff
A companion Mac can take host while guests stay in the same room. The old host stops its microphone and uploads pending text first
When no device hosts
New admissions stop when the 30-second host lease runs out. A companion Mac takes host on its own
iPhone
Can start a meeting or join as a muted companion. Moving host to or from an iPhone is not available yet
Media
Each person's audio and video go straight to the relay. The host device does not forward anyone else's media
Your data, your account
Everything Starlings keeps lives in Envisioning's own Cloudflare account.
Transcripts and summariesEnvisioning
Tasks, issues, recordsEnvisioning
DocumentsEnvisioning
CredentialsSealed on device
Where
Cloudflare, in Envisioning's account. Docs and Core too
Who else
Nobody holds a copy of a meeting. There is no recording
Backed up
Starlings copies every room and conversation to an EU bucket each day and keeps each copy thirty days. Each one restores on its own
Portable
Starlings deploys to any Cloudflare account
How it fits together
How Starlings is built.
The diagram shows every service Starlings runs on and what travels between them. Video goes directly between participants. The transcript goes to a Worker that never sees video. The full diagram, down to the bucket and the queue, is on feature status.
In the meeting
The devices a person is looking at.
The hosting device
One owner device opens the room, admits guests, and writes the transcript on its own hardware.
The browser
Guests join at /room/<slug> with no account; a signed-in member gets the five surfaces too. It never hosts.
Media
Audio and video, end to end, never recorded.
LiveKit CloudLiveKit
Carries audio, video and screen between the people in the room. Nothing is recorded, and no stream is stored.
The control plane
One Cloudflare Worker. Text only — it never sees a stream.
Meet control planeCloudflare
One Worker: the door, the routes, and the SPA in front of them. It holds text and never media.
What it keeps
Room state, the words, the ledger, the files.
Meet's own storeCloudflare
The ledger, the tokens, the files and the job queue behind the Worker. Text and files — no media bucket.
The rest of the company
Services Meet reads and writes on a member's behalf.
CoreEnvisioning
The CRM. Subjects, tasks and interactions, read and written over HMAC — a meeting is filed on the project it belongs to.
DocsEnvisioning
Where documents and their comments live. Every read goes through Meet's Worker; the browser never holds a Docs token.
KeepEnvisioning
Where client credentials live. Meet reads what a member may see, over a service binding.
Google WorkspaceGoogle
Both halves of Google: who is one of us at sign-in, and the owner's day once they attach a calendar.
The models
Where the writing happens: the notes after a meeting, a forwarded mail read into events, suggested tasks and filing.
AgentsVercel
Peers with no device. Each is one row in the roster; a hand-off is signed, and an unanswered one is reset every five minutes.
Connectors
Every outside source that writes meetings into Meet. One card each on /admin/connectors; the next one is a card, not a page.
PostmarkPostmark
Outbound mail — invitations and the notices a guest gets — sent from contact@envisioning.com.
What runs between them
The hosting device ↔ LiveKit CloudAudio, video and screen · WebRTCNever: A recording. Nothing is written to disk, here or anywhere.
The browser ↔ LiveKit CloudAudio, video and screen · WebRTCNever: A recording, and never a stream before the owner has admitted you.
The hosting device ↔ Meet control planeTranscript text, summaries, admissions and room state · HTTPSNever: Audio, video, or the screen. The words leave; the sound does not.
The browser ↔ Meet control planeThe knock, admission status, chat, and every workspace read · WebSocket
Meet control plane → LiveKit CloudA media token, minted only once the owner has admitted the guest · HTTPSNever: Media. No stream passes through the Worker.
Meet control plane ↔ Meet's own storeRoom state, the words, the ledger, the files, the jobs · Cloudflare binding
Meet control plane ↔ CoreThe meeting, its notes and its tasks, filed on a subject · HTTPS
Meet control plane ↔ DocsDocuments and comments, on the member's behalf · Cloudflare bindingNever: A Docs token into the browser. The Worker keeps its own, per owner.
Meet control plane ↔ Google WorkspaceThe owner's day, and the meetings scheduled from Meet · HTTPS
Connectors ↔ Meet control planeMeetings from outside sources — a webhook in, a paced job pulling history · HTTPS
Meet control plane ↔ The modelsTranscript text to write the notes from, and a mail to read into events · HTTPSNever: Audio. A model reads the words the device wrote, never the sound.
Agents ↔ Meet control planeA signed hand-off out, the agent's answer back · HTTPSNever: A seat in the room. An agent has no device and no media.
Meet control plane ↔ KeepThe credentials a member may see · Cloudflare binding
After the meeting
Starlings files each meeting on its project.
A project keeps its chat, tasks, issues, documents and past meetings together.
A project is a workspace
Open a project, a lead, or a partner and everything about it is there: the conversation, the tasks, the issues, the history, the documents.
A projectTheir company · ActiveMeet about this
A message from a colleague
Meeting filed here · Notes filedGitHub: issue #142 opened
Your reply
Talk
The project's own conversation. Meetings, notes, GitHub, and agents post event lines into it. The thread is the project's log
Tasks and issues
Tasks live on the project. Link a GitHub repository and you read, answer, and close its issues here. Starlings posts every GitHub change in Talk
Goals and decisions
A goal states what the tasks and the agents work toward. A decision records what the team settled, once, with its source: typed, a line in Talk, a Claude, or the meeting notes
Decisions waiting on you
An agent puts a question to you with its options, a recommendation and a default-by day. It heads INBOX on the web, the Mac and the phone; one tap answers it, and the agent reads the answer back
History
Every interaction Core knows about this subject, in one list
Documents
The documents about this subject, from Docs, beside the work
Starlings about this
Start a room from the project. Starlings files the meeting on the project before it starts, so its transcript and tasks go to the project
One record
The project is a Core record. Starlings, Core, GitHub, and the agents read and write the same one
Tasks
Everything you owe, on the project it belongs to.
An open taskToday
A done taskDone
Create
From a message, a meeting, or a quick note
Hand off
To a colleague or an agent
Move to…
Onto another project or lead. Nothing else about it changes
Close
Done or cancelled from any row's menu
Issues
GitHub issues, read and answered inside the project.
An open issue#142
A closed issue#139
Read, comment, close
In Starlings, not on GitHub. Close or reopen from any row's menu
Starlings finds a commitment in the transcript and proposes it as a task.
A commitment someone made out loud
The task it becomes
When
Starlings checks during the meeting and again when it ends
From the notes
Starlings proposes each action item in the notes on the meeting's project or lead, with the owner, the deadline, and the exact quote
Accept
Pick the project and who owes it. The task has no owner or date until someone accepts it
Source
The task links to the meeting it came from
Messages
One conversation per person, group, or project. The same thread on every device.
A message from a colleague
Your reply+1
Where
Everyone, a group, a person, or a project
Compose
@mentions, files, link previews, and Markdown formatting
After
React to any message, including your own. Save your own message as a Quick Note copy to triage later; edit or withdraw it. Mute for a week
Quick Notes
Write a private note now. File it into shared work later.
A note you just typed
TaskIssueDocument
Capture
Mac, phone, browser, or copy your own message from Team or Work Talk. Dictate from the watch. Only you see an unfiled note
File
Search projects and leads beyond the first page, or filter conversations as you type. File as a task, issue, message or document; the destination's access rules apply
Every meeting, transcribed
Zoom, Teams, Webex, or Google Meet: your Mac records the call, writes the transcript, and files it with your Starlings meetings.
A call startedZoomRecord
Record
From the menu bar, or one click when a call starts. A minute before a calendar event with a call link, Launch & Record opens it and starts
Transcribe
On the Mac. Speakers named; a Zoom call reads its own roster for who is speaking. The audio stays on your Mac
File
Starlings files the transcript and summary on the project, with your Starlings meetings
Docs, the CMS
Everything Envisioning has written, next to the project it is about: proposals, briefs, contracts, published work.
Graph
Recent
By project
By lead
Proposals
Research
Meetings
Versions
Every save, with a message
Comments
On a passage, on every device
Graph
Explore linked documents grouped by folder on Mac, iPhone, iPad and web. Filter folders, then pan and zoom to explore
Links
Paste or drop a URL and Docs saves the page, with screenshots. A link saved on a project is filed on that project
Folders
Drag documents onto a folder, a project, or a lead. Select several and move them at once. Unfiled lists the documents nobody has filed
Share
By link, on envisioning.com
Internal room
One room for Envisioning. Members join directly. No waiting room.
YouScreenColleague+4
Enter
Members join directly. No waiting room
Start
From Team, on any device
Email forwarding
Forward an email to a channel's address. Starlings posts it as your message.
Fwd: an email thread
The same thread, as your messageOn the project
Send
Any email, to the channel's address
Posts
As your message, on the project
Search
Anything in the company, from any screen.
⌘K a client
Their projectProject
A document you wroteDocument
Your next meetingEvent
Finds
People, agents, projects, conversations, documents, events, tasks, issues, and transcript lines from conversations you can read
Opens
Any destination, setting, or action
Acts
A project or lead offers New task, New issue, New document, and Starlings about this
Agents
Team lists agents next to people. Message one, answer a question with choices, or hand it a task.
A task, handed to the agent
AgentIts reply, with the work filed on the project
In Team
Listed with people. Message one the way you message anyone
Interactive questions
An agent can ask with single or multiple choices. Submit your answer in chat to continue the same thread
In Work
Hand it a task. It reports back on the task
On your behalf
It acts as the person who asked
What it can do
Open an agent’s profile to see its runtime-reported skills, tools, connections, schedules and the documents it follows
In a room
From a command line, an agent hosts, admits guests, and reads the transcript
Runs on Eve
Envisioning’s shared agents run on Vercel Eve with their own skills, connections and keys. Signed handoffs and replies connect the runtime to Starlings
One session per card
Each task or issue has one agent session. Every turn resumes it. The thread and the card are the record
Set it in Settings on any device. Every device uses it
Clock
Always first, always 24-hour
Team
See who is free before you reach them.
Available
In a meeting
Unavailable
Status
Available, Focused, Unavailable, Offline
Yours
Appear offline when you need to
Calendar
Company meetings, your tasks, and your personal calendars in one place. Personal calendars stay private.
S
M
T
W
T
F
S
Private sources
Additional Google accounts, Apple, subscriptions, and personal calendars stay yours
Shared
Company meetings, tasks, milestones, and shared calendar layers are company data
Views
Day, week, month, agenda
Describe it
One sentence fills in the title, the times, the place, and the guests. Nothing is saved until you say so
Forward it
Send a booking or a ticket to calendar@ and Home proposes the events in it, each with Add
Edit
Drag to move. Invite people. Add the room link. All-day events, and this event or the whole series
Filed
Start a meeting from an event and Starlings files the transcript on its project
Upcoming
Join from Home ten minutes before. Answer invitations there
Also
Timezones, weather, travel time, contacts
Work
What needs you and what you owe, on the project it belongs to.
Inbox3A message to answerA task to accept
Mine5A taskTodayAnother taskFri
Inbox
What needs you: proposals, comments, bookings, overdue work. Filter by source
Mine
What you owe, by when. Filter by due and by where it came from
Recently finished
Reopen your completed or cancelled tasks and closed issues from the past week on Mac, web, or iOS
Subjects
Projects, leads, partners, events. Talk, tasks, issues, and documents on each. The rail sorts by what needs you
Browse
Envisioning, clients, partners, events, sales
Private and shared
Private until you share it.
Quick Notes and personal calendars stay private. Anything you file into a project, conversation, document or the company calendar takes that place's access rules.
Private by default
Your quick notes and personal calendar sources are yours alone.
Quick Notes
On iPhone and iPad, New Quick Note stays in the Home bar. Only you see an unfiled note until you file it as a task, issue, message, or document
Calendars
Additional Google accounts, iCloud, On My Mac, and personal subscriptions stay in your calendar view
Preferences
Your calendar display, timezone, weather, and other personal settings stay yours
Shared by choice
When you put something in a shared place, it becomes company data.
Work
Projects, leads, tasks, issues, and documents follow the access rules of the shared record
Talk
A message belongs to its conversation, and is visible to that conversation's members
Meetings
A meeting transcript or summary is shared with its participants and the project or contact it is filed with
The platform
Mac, iPhone, and the browser.
The native apps and the web app share the same building blocks.
Native apps
Built for each platform, at parity. The same rooms, the same workspace, the same Home.
Feature
Mac
iPhone and iPad
Web
Host a meeting
Works
Works
Handoff
Join one
Works
Works
Works
Live captions
Works
Works
Works
Transcript and summary
Works
Works
Works
Calendar
Works
Works
Partial
Work
Works
Works
Works
Messages
Works
Works
Works
Issues
Works
Works
Partial
Docs graph
Works
Works
Works
Mac
AppKit. Host from the window or the menu bar. Calendar, Work, Team, and Docs in their own windows. Quit to the menu bar and keep recording. Updates itself
iPhone and iPad
SwiftUI. Host and transcribe on the phone. Live Activity for the meeting, widgets for the next meeting, today's agenda, and today's work
Apple Watch
What is next, who is waiting, and your quick notes: read, add, delete
Web
The full workspace, signed in. Guests join with nothing to install
A message, a task and its updates, an issue, an event, a room, a goal, a decision, a question for you to decide, a document, website content. Each one says a Claude did it
Scope
Writes are a scope you grant on connect, off by default. Settings lists each connected Claude, with Revoke
Record
Starlings logs every call. Admin and your own account page show the log. The log keeps no content, and keeps entries 90 days
The product controls who can join, what leaves your device, and where shared work is stored.
Security
Every entry point checks who you are. Starlings trusts no request because of where it came from.
Sign inGoogle, Envisioning accounts only
Ask to joinA secret, no media yet
AdmittedBy the host, while the host is live
In the roomA two-hour key for this room only
TranscribedText leaves the device. Audio never does
Hosts
Only an Envisioning Google account can host, proven by Google itself. A room belongs to its owner by configuration, never by a submitted name or link
Guests
Ask to join, and hold a secret until the host admits you. No media flows before that, and the host has to be live within the last thirty seconds
Keys
A room key lasts two hours and opens one room. Sessions last eight hours. Logs never hold keys, transcripts, emails, or lobby secrets
Devices
Settings lists every Mac and phone signed in to your account, by name. Sign one out from anywhere and Starlings refuses its next request. A session stays on its device and never goes into a backup
Captions
Starlings shows captions only from the verified host. Reactions are an enum, so a guest cannot put text on your screen
Agents
Never hold a session. They come through one signed endpoint, rate limited, and Starlings logs every call
Browser
Strict content policy, no framing, no referrer. Shared files render in a sandbox with no scripts
Every control says what it does. The room announces who joins, who leaves, and who raises a hand.
Labels
Icon-only controls on Mac, iPhone and the web carry a spoken label that names the action, not the symbol. A control with a word on it carries no tooltip
In the room
A screen reader hears people join and leave and hands go up, in the order they happen. Nothing is read twice
Text size
The iPhone app follows Dynamic Type all the way up. Rows wrap instead of truncating; dense calendar grids hand off to the list beside them
Contrast
Increase Contrast on the Mac and prefers-contrast in the browser make thin lines solid and muted text dark
Motion
Reduce Motion is respected on every client. Reactions fade in place instead of flying
Keyboard
Every page starts with a skip link. Focus is a visible ring on every control, and the main verbs have shortcuts on the Mac
Language
Starlings is in English and Portuguese. Pick once and every device follows.
Choice
Settings › Appearance › Language on the Mac, the phone or the web. The choice is stored with your account, so the other two follow. System keeps the device’s language
Guests
A guest’s page follows the browser. A link can carry ?lang=pt-BR or ?lang=en to decide for it
Dates
Day and month names follow the language. The clock is 24-hour in both
What stays
Product names, and the terms Core and GitHub use. A Lead is a Lead in either language
Technology
Media on LiveKit, transcription on the host's device, everything else on one Cloudflare Worker.
Media
LiveKit Cloud carries audio, video, and screen between the people in a room. Nothing is recorded
Claude writes the meeting notes and reads forwarded mail for events. Workers AI drafts the summary, suggests tasks, and suggests where an imported note belongs
A Durable Object holds each room: who is waiting, who is in, whose hand is up. LiveKit only ever sees a signed two-hour key
Agent activity
Admin shows handoffs, runtime acceptance or refusal, finalized replies observed by Starlings, and watchdog resets. Runtime model costs are not included
Transcript pipeline
The host device posts finished text to the Worker. A queue turns it into the transcript, the summary, and a Core interaction, with retries and a dead letter an admin can replay. The Worker counts failures and daily model spend and sends an alert by email
Services
Core is Postgres. Docs and Keep are Workers on D1. Starlings reaches them over service bindings, never the public internet
Contract
One package of Zod schemas defines every wire shape. The Swift clients read the same fixtures, so the three clients cannot drift
Ships
Every push to main deploys the web app and the Worker through Workers Builds. Mac and iOS releases are notarized from a tag, and the Mac app checks for its own update
Sign-in
Google, Envisioning accounts only. The Worker encrypts refresh tokens; the device keeps a session and its own device id
Connectors
Your other tools feed the same projects.
Map each source to a project once. Starlings files nothing on its own.
Connectors
One connector per tool. Map a channel, a repository, or a folder to a project. Starlings files its past and new items on that project.
Granola
Meeting notes, past and future, filed on a subject. A suggestion says where each belongs, and one lead is proposed per company
Live
GitHub
Repositories mapped to projects. Issues and pull requests in Work, every change in Talk
Live
Slack
A channel's history into a project's conversation, at its original time, kept current hourly
Live
Beeper
WhatsApp, LinkedIn, Telegram, and Signal threads, read by the Mac, on the subjects the contact is on
Next
Google Drive
Folders into Docs, linked to the meeting that produced them
Planned
Notion
Pages and databases into Docs, once, then Notion retires
Planned
You map
Each connector lists what the tool holds. You pick the subject for each row, or skip it. A suggestion only prefills the choice
One ledger
Every import records what it filed and where. You can reverse a wrong mapping for that one row
Off by default
A connector runs only when an admin turns it on. When off, it reads nothing
Google stays
Gmail, Calendar, and Drive remain the record. Starlings reads and links, and never writes back