Keep track of all your meeting-related information in one place.
Requires Node 22+ and pnpm 10. From a clone of this repo:
pnpm install
pnpm buildRun the desktop app — build the Windows installer and run it:
pnpm --dir apps/desktop run package # output: apps/desktop/release/Callout Setup <version>.exeUse the CLI (for agents and scripts) — link the callout command globally:
pnpm --dir packages/cli link --global # then: callout workspace list
# (or skip the link and run: node packages/cli/dist/cli.js <command…>)- On first launch, click New workspace and name it after a meeting ("Product Review").
- Click Add resource to attach something, then pick a type:
- URL: Paste a link. Duplicate URLs are detected automatically and reuse the existing resource.
- File: Click Browse files… to pick a local file.
- Text: Add a snippet of text you copy/paste often (a standard intro, a FAQ answer).
- Hover a resource row for its actions:
- Open (or Show text)
- Copy Link (URLs) or Copy (text)
- Pin
- Add to Shared Resources
- Remove from this workspace
- Delete.
- Pinned resources appear as purple chips above the list.
- The Notes area is a scratchpad that autosaves as you type.
- Open All (top right) opens every resource in the workspace at once and tells you how many were opened (or what failed).
The Shared Resources page (above your workspaces in the sidebar) is a home for things you reach for across many meetings (e.g., a team wiki link, a standard intro blurb, a pricing sheet).
It works exactly like a workspace: add resources directly to it, or click Add to Shared Resources on any resource row to drop a copy there (the resource stays in its original workspace too since it's linked, not moved). The Shared Resources page can't be deleted.
Press Ctrl+Shift+Space anywhere, even with Callout in the background, or click Search at the bottom of the sidebar:
- Type to search workspaces and resources (results rank by how often and how recently you use things; an empty query shows your 5 most recent).
- Enter opens the selected item
- Ctrl+Enter copies its link
- Alt+Enter jumps to its workspace in the main window
- Shift+Enter opens the whole workspace
- Esc closes.
Hover the selected row to click the same actions as icons. The full shortcut list also lives in Settings.
Change the hotkey in Settings if it collides with another app.
Click the people icon in a workspace header to open a compact, always-on-top panel for live calls: pinned resources as one-click copy cards. The note is editable directly in Meeting Mode, so you can write down reminders mid-call.
The gear at the bottom of the sidebar: the search bar hotkey recorder, a reference list of the search bar's keyboard shortcuts, the database location, the "confirm before opening file resources triggered externally" safety toggle, and Export/Import backups (import can merge or replace).
That safety toggle governs externally triggered file opens. When the callout command line (or any other local process driving the CLI) tries to open a file resource, it must first confirm (or pass --yes). It does not gate file opens you trigger yourself by clicking inside the app. Those are already your own deliberate action. URLs are never gated.
Everything in the app has a callout CLI command, so if you prefer a terminal you can use Callout there too. The app and the CLI share the same database, and changes show up in a running app within a second.
One-time setup (from a clone of this repo):
pnpm install && pnpm build
pnpm --dir packages/cli link --global # gives you a real `callout` command
# (or skip the link and run: node packages/cli/dist/cli.js <command…>)A few examples that mirror what you'd do in the UI:
callout workspace create "Product Review" -d "weekly"
callout resource add --title "Q3 Roadmap" --url https://docs.google.com/document/d/abc \
--pin --workspace "Product Review"
callout resource add --title "Standup intro" --text "Welcome! Agenda is in the doc." \
--workspace "Shared Resources"
callout launch "Product Review" # open every resource (same as "Open All")
callout export > callout-backup.json # back up everythingA note on names: what the app calls the search bar is internally the command palette (you'll see "palette" in the code and developer docs), and its CLI equivalent is
callout search. So if you ask an agent to "search" or to "find something in the search bar," it will reach forcallout search.
See AGENTS.md for the complete command reference.
Callout is agent-native by design, so you can tell your agent (e.g., Claude Code, Codex, Gemini) to manage workspaces and meeting resources for you. If your agent has access to all the relevant details, it can directly use the CLI to set up the workspace for your meeting, so you’re ready to present and lead the meeting.
Instead of using the app or writing commands, you can tell your agents to
- Set up a workspace: "Set up a 'Customer Onboarding' workspace with our welcome doc, the Jira board, and the metrics dashboard, and pin the welcome doc."
- Add resources: "Add our standard pricing blurb in Shared Resources so I can paste it in any customer call."
- Customize workspaces: "I’m meeting with a new enterprise client, add relevant resources to my Customer Onboarding workspace."
- Find resources: “Find that customer note I made about referral codes”
- Back up: "Export all my Callout data to a file on my Desktop."
Give the agent the specifics it needs (workspace name, the URLs or file paths, what to pin) and it will run the right commands. See AGENTS.md for what agents can do.