Feb 26, 2025 · 20m · latent-space

Raycast: Your AI Automation Assistant

Thomas Paul Mann · 15m spoken Shawn Wang · 1m spoken Alessio Fanelli · 1m spoken
0:00 / 0:00
▶ Watch on YouTube →

gold bands on the timeline = statements, start to end. Hover to read, click to jump. CC turns on captions

Raycast CEO Thomas Paul Mann joins the Latent Space podcast to discuss the launch of AI Extensions, explaining how the platform leverages model distillation, TypeScript developer tooling, and a proprietary model gateway to turn the desktop launcher into an AI-native operating system.

How this conversation actually went

Every chapter scored 0–10 on four independent dynamics. Hover any point for the reasoning behind the score. The hosts hold 16% of the talking time here. How this is scored →

The hosts as informed peer 5.3 Guest teaching 4.8 Guest disagreement 0.5 The hosts pushing back 0.8
05100:0010:0020:001:25–3:53 · The hosts as informed peer 4/10 Raycast's Journey into AI and Extensions Swyx sets up the conversation by sharing his personal switch from Alfred to Raycast. Thomas explains Raycast's transition from an OS spotlight alternative to a global AI textbox and extensible platform in a collaborative, welcoming tone.3:54–7:45 · The hosts as informed peer 5/10 Live Demonstration of AI Extensions and Meeting Assistant Thomas performs a screen-share demonstration of natural language Slack status updates and meeting scheduling. Alessio probes technically on whether the architecture uses direct API OAuth rather than computer-use agents.7:46–11:05 · The hosts as informed peer 6/10 Fine-Tuning Ray 1 and Model Distillation Swyx notices the proprietary Ray 1 model and queries Thomas on distillation datasets and reasoning models. Thomas explains why distillation from GPT-4o to 4o-mini outperformed reasoning models for multi-step tool calls.11:05–13:26 · The hosts as informed peer 6/10 Extension Routing and Tool Selection Management Swyx highlights the combinatorial overhead of tool selection with dozens of installed extensions. Thomas details their @mention routing strategy, OpenAI's 128-tool limit, and the reality of model API incompatibilities.13:27–15:39 · The hosts as informed peer 5/10 Designing Evals for Tool Calling and Developer DSLs Alessio prompts Thomas on evaluation frameworks. Thomas provides an in-depth breakdown of why tool-calling evals are unsolved in standard tooling, necessitating custom mock infrastructures and a developer DSL.15:40–18:23 · The hosts as informed peer 6/10 Developer Experience: Building AI Extensions with TypeScript Alessio compares Raycast's ecosystem to Lindy and Dust, asking about background scheduling. Thomas details their TypeScript JSDoc extraction method that abstracts LLM function calling for regular software developers.1:25–3:53 · Guest teaching 3/10 Raycast's Journey into AI and Extensions Swyx sets up the conversation by sharing his personal switch from Alfred to Raycast. Thomas explains Raycast's transition from an OS spotlight alternative to a global AI textbox and extensible platform in a collaborative, welcoming tone.3:54–7:45 · Guest teaching 4/10 Live Demonstration of AI Extensions and Meeting Assistant Thomas performs a screen-share demonstration of natural language Slack status updates and meeting scheduling. Alessio probes technically on whether the architecture uses direct API OAuth rather than computer-use agents.7:46–11:05 · Guest teaching 5/10 Fine-Tuning Ray 1 and Model Distillation Swyx notices the proprietary Ray 1 model and queries Thomas on distillation datasets and reasoning models. Thomas explains why distillation from GPT-4o to 4o-mini outperformed reasoning models for multi-step tool calls.11:05–13:26 · Guest teaching 5/10 Extension Routing and Tool Selection Management Swyx highlights the combinatorial overhead of tool selection with dozens of installed extensions. Thomas details their @mention routing strategy, OpenAI's 128-tool limit, and the reality of model API incompatibilities.13:27–15:39 · Guest teaching 7/10 Designing Evals for Tool Calling and Developer DSLs Alessio prompts Thomas on evaluation frameworks. Thomas provides an in-depth breakdown of why tool-calling evals are unsolved in standard tooling, necessitating custom mock infrastructures and a developer DSL.15:40–18:23 · Guest teaching 5/10 Developer Experience: Building AI Extensions with TypeScript Alessio compares Raycast's ecosystem to Lindy and Dust, asking about background scheduling. Thomas details their TypeScript JSDoc extraction method that abstracts LLM function calling for regular software developers.1:25–3:53 · Guest disagreement 0/10 Raycast's Journey into AI and Extensions Swyx sets up the conversation by sharing his personal switch from Alfred to Raycast. Thomas explains Raycast's transition from an OS spotlight alternative to a global AI textbox and extensible platform in a collaborative, welcoming tone.3:54–7:45 · Guest disagreement 0/10 Live Demonstration of AI Extensions and Meeting Assistant Thomas performs a screen-share demonstration of natural language Slack status updates and meeting scheduling. Alessio probes technically on whether the architecture uses direct API OAuth rather than computer-use agents.7:46–11:05 · Guest disagreement 1/10 Fine-Tuning Ray 1 and Model Distillation Swyx notices the proprietary Ray 1 model and queries Thomas on distillation datasets and reasoning models. Thomas explains why distillation from GPT-4o to 4o-mini outperformed reasoning models for multi-step tool calls.11:05–13:26 · Guest disagreement 1/10 Extension Routing and Tool Selection Management Swyx highlights the combinatorial overhead of tool selection with dozens of installed extensions. Thomas details their @mention routing strategy, OpenAI's 128-tool limit, and the reality of model API incompatibilities.13:27–15:39 · Guest disagreement 1/10 Designing Evals for Tool Calling and Developer DSLs Alessio prompts Thomas on evaluation frameworks. Thomas provides an in-depth breakdown of why tool-calling evals are unsolved in standard tooling, necessitating custom mock infrastructures and a developer DSL.15:40–18:23 · Guest disagreement 0/10 Developer Experience: Building AI Extensions with TypeScript Alessio compares Raycast's ecosystem to Lindy and Dust, asking about background scheduling. Thomas details their TypeScript JSDoc extraction method that abstracts LLM function calling for regular software developers.1:25–3:53 · The hosts pushing back 0/10 Raycast's Journey into AI and Extensions Swyx sets up the conversation by sharing his personal switch from Alfred to Raycast. Thomas explains Raycast's transition from an OS spotlight alternative to a global AI textbox and extensible platform in a collaborative, welcoming tone.3:54–7:45 · The hosts pushing back 1/10 Live Demonstration of AI Extensions and Meeting Assistant Thomas performs a screen-share demonstration of natural language Slack status updates and meeting scheduling. Alessio probes technically on whether the architecture uses direct API OAuth rather than computer-use agents.7:46–11:05 · The hosts pushing back 1/10 Fine-Tuning Ray 1 and Model Distillation Swyx notices the proprietary Ray 1 model and queries Thomas on distillation datasets and reasoning models. Thomas explains why distillation from GPT-4o to 4o-mini outperformed reasoning models for multi-step tool calls.11:05–13:26 · The hosts pushing back 2/10 Extension Routing and Tool Selection Management Swyx highlights the combinatorial overhead of tool selection with dozens of installed extensions. Thomas details their @mention routing strategy, OpenAI's 128-tool limit, and the reality of model API incompatibilities.13:27–15:39 · The hosts pushing back 0/10 Designing Evals for Tool Calling and Developer DSLs Alessio prompts Thomas on evaluation frameworks. Thomas provides an in-depth breakdown of why tool-calling evals are unsolved in standard tooling, necessitating custom mock infrastructures and a developer DSL.15:40–18:23 · The hosts pushing back 1/10 Developer Experience: Building AI Extensions with TypeScript Alessio compares Raycast's ecosystem to Lindy and Dust, asking about background scheduling. Thomas details their TypeScript JSDoc extraction method that abstracts LLM function calling for regular software developers.

speaking balance: gold is the hosts, purple is the guest (3 minute bins)

0:00 · the hosts 40.7% · guest 59.3%0:00 · the hosts 40.7% · guest 59.3%3:00 · the hosts 14.5% · guest 85.5%3:00 · the hosts 14.5% · guest 85.5%6:00 · the hosts 8.7% · guest 91.3%6:00 · the hosts 8.7% · guest 91.3%9:00 · the hosts 9.5% · guest 90.5%9:00 · the hosts 9.5% · guest 90.5%12:00 · the hosts 11.5% · guest 88.5%12:00 · the hosts 11.5% · guest 88.5%15:00 · the hosts 14.8% · guest 85.2%15:00 · the hosts 14.8% · guest 85.2%18:00 · the hosts 12.1% · guest 87.9%18:00 · the hosts 12.1% · guest 87.9%
Sharpest disagreement ▶ 12:46 Challenging the premise of universal API compatibility

Thomas rejects the notion that alternative models are drop-in OpenAI compatible, highlighting breaking nuances in finish reasons and tool call formatting.

Hardest push from the hosts ▶ 11:05 Swyx challenging tool selection scalability

Swyx pushes on the scalability of extension ecosystems by pointing out that every installed extension introduces choice overhead for the LLM.

Biggest teaching moment ▶ 13:35 Breaking down the unsolved problem of tool-call evals

Thomas educates the hosts on how generic LLM eval frameworks fail when applied to chained tool calling, explaining the necessity of building mock state pipelines.

The host holds their own ▶ 10:44 Swyx anticipating reasoning model latency trade-offs

Swyx demonstrates domain insight by predicting that chain-of-thought reasoning models introduce prohibitive latency for OS-level launcher UI interactions.

the scores for every segment, with the reasoning behind each
ChapterTopicThe hosts as informed peerGuest teachingGuest disagreementThe hosts pushing backWhy
Raycast's Journey into AI and Extensions 4300 Swyx sets up the conversation by sharing his personal switch from Alfred to Raycast. Thomas explains Raycast's transition from an OS spotlight alternative to a global AI textbox and extensible platform in a collaborative, welcoming tone.
Live Demonstration of AI Extensions and Meeting Assistant 5401 Thomas performs a screen-share demonstration of natural language Slack status updates and meeting scheduling. Alessio probes technically on whether the architecture uses direct API OAuth rather than computer-use agents.
Fine-Tuning Ray 1 and Model Distillation 6511 Swyx notices the proprietary Ray 1 model and queries Thomas on distillation datasets and reasoning models. Thomas explains why distillation from GPT-4o to 4o-mini outperformed reasoning models for multi-step tool calls.
Extension Routing and Tool Selection Management 6512 Swyx highlights the combinatorial overhead of tool selection with dozens of installed extensions. Thomas details their @mention routing strategy, OpenAI's 128-tool limit, and the reality of model API incompatibilities.
Designing Evals for Tool Calling and Developer DSLs 5710 Alessio prompts Thomas on evaluation frameworks. Thomas provides an in-depth breakdown of why tool-calling evals are unsolved in standard tooling, necessitating custom mock infrastructures and a developer DSL.
Developer Experience: Building AI Extensions with TypeScript 6501 Alessio compares Raycast's ecosystem to Lindy and Dust, asking about background scheduling. Thomas details their TypeScript JSDoc extraction method that abstracts LLM function calling for regular software developers.

Statements from this episode (13)

Disclosure
Raycast announces AI extensions allowing developers to extend Raycast AI
“So tomorrow we're going to release our next big feature, which is called AI extensions. And that basically brings together our roots of like having developers extending Raycost. And this time they can extend Raycost AI.”
Thomas Paul Mann Feb 26, 2025 ▶ 3:13
Assertion Supported
Mann: Raycast AI Extensions operate via OAuth and APIs, not computer use
“So this is primarily like using like OAuth and then doing API calls and then developers basically can expose those information to our AI and then we're picking it up and composing those information together.”
Thomas Paul Mann Feb 26, 2025 ▶ 5:35
Disclosure
Raycast built its Ray 1 models by fine-tuning GPT-4o and mini
“And so we looked into all the various models we had and then we picked, at the moment, it's gbd-for-o and gbd-for-o-mini, Which we basically did a fine tune to really optimize for our use case, and then basically shipping that in the app as Ray one and Ray one…”
Thomas Paul Mann Feb 26, 2025 ▶ 8:15
Opinion
OpenAI models remain the industry best for chained function calling
“And so we find like the open AI models function calling wise for our use case. So for the best ones and like, yeah, basically verifying the others. We had a beta group and testing different models. So basically from all providers and yeah, find basically the b…”
Thomas Paul Mann Feb 26, 2025 ▶ 10:21
Assertion Supported
OpenAI API throws errors when users exceed a 128-tool limit
“Which OpenAI would be figured out at some point is, like, oh, there is an upper limit of, like, a 128 Tools you can have. And then the API basically gives you an error. So we ran into some of those issues as well.”
Thomas Paul Mann Feb 26, 2025 ▶ 12:09
Disclosure
Mann: Raycast Built Its AI Model Router Internally
“And we're not using, like, a proxy, like a router or something like this, so we built that internally.”
Thomas Paul Mann Feb 26, 2025 ▶ 13:05
Insight
Mann: OpenAI-Compatible APIs Still Have Subtle Behavioral Differences
“Like, even though all models say they support open AI compatible APIs, they're always in nuances which are slightly different and then put you off when you see it for the first time.”
Thomas Paul Mann Feb 26, 2025 ▶ 13:16
Opinion
Mann: AI evaluations for tool calling are super unsolved across industry
“Nobody talks about how to do evals with tool calls. It's, like, a super unsolved thing.”
Thomas Paul Mann Feb 26, 2025 ▶ 13:50
Disclosure
Raycast built a DSL for third-party developers to run AI extension evals
“So we basically came up with a system that they can write like a DSL for those evals, and then they can run the evals themselves.”
Thomas Paul Mann Feb 26, 2025 ▶ 14:57
Disclosure
Mann: Raycast extracts LLM tool definitions directly from TypeScript JSDoc
“Basically what we came up with, it's essentially you just write a TypeScript function and you document your TypeScript function with JSDoc. And then we extract all the information from there and basically make that and pass that information to the LLMs.”
Thomas Paul Mann Feb 26, 2025 ▶ 16:42
Disclosure
Mann: All Raycast AI extensions will be open source, launching with 50
“So all of those AI extensions going to be open source. We have 50 at the beginning.”
Thomas Paul Mann Feb 26, 2025 ▶ 17:11
Disclosure
Raycast is expanding to Windows and iOS as an AI-native OS layer
“Like our future is basically turning Mac OS and we also now expanding the windows and iOS and really like a AI native operating system.”
Thomas Paul Mann Feb 26, 2025 ▶ 18:36
Opinion
Raycast CEO: Incumbent operating systems are too mature to innovate
“But I can't really see that coming from the big operating systems. They're like so mature. They're like nothing moves anymore.”
Thomas Paul Mann Feb 26, 2025 ▶ 18:57
Made with StarZero

Turn any episode into a week of clips.

This entire site, over 200 episodes transcribed, diarized, checked and made playable, runs on the StarZero media pipeline. Drop in your own episode and the podcast clipper finds the moments worth sharing, cuts them, captions them, and reframes them for every feed.