← All AI Engineer talks

AI Engineer World's Fair 2025

Building the platform for agent coordination

Tom Moor· Linear19:43

Read the talk

Building the platform for agent coordination

Linear’s path from similarity search to cloud agents shows how retrieval, shared work context, permissions and everyday team conventions fit together.

From a talk by Tom Moor

How do you remove friction from product development?

How do you help engineers keep track of work without making the tracking itself more work? Linear began as an issue tracker, with speed, clarity and reduced friction for individual contributors as its central concerns. Introducing himself as Linear’s engineering lead, Tom Moor describes its evolution into a product development workspace: a place where engineering and product teams coordinate what they build. OpenAI, Ramp and Vercel are among the customers using it for that purpose. Those existing workflows set the standard that its AI features would have to meet.

Slide titled “What is Linear?” with a product development platform description above an angled screenshot of the issue interface.
Linear: a product development platform disguised as an issue tracker.
0:160:36
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:16 · section reference included

Stronger models lead back to the search index

Around late 2024, the team began to feel a broader change in what was possible. Moor groups planning and reasoning models such as o3, multimodal APIs, million-token context windows and DeepSeek among the developments that changed its ambitions. This is a retrospective grouping of advances, not a release chronology: o3 became publicly available in April 2025. The practical change was that experiments became less brittle and began to feel capable of handling deeper work.

The first response was to rebuild retrieval again. The embedding store had grown too large to place in Linear’s main database, so pgvector lived separately. During roughly a year and a half with that setup, the team increasingly felt the absence of hybrid search. It moved to turbopuffer and changed from OpenAI to Cohere embeddings after an internal comparison that favored Cohere for Linear’s domain. That preference was specific to their data and task, not a universal ranking of embedding providers.

Moor describes backfilling hundreds of millions of embedding rows, with the rollout finishing only in the two weeks before the talk. Replacing the retrieval foundation therefore involved a substantial data operation, not just selecting a different search service. The long backfill determined when the new foundation was ready for product features.

4:314:40
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

4:31 · section reference included

From similar issues to explained relationships

With the new search foundation in place, Linear was building Product Intelligence, effectively a second version of Similar Issues. Instead of exposing the result of a simple cosine comparison, it introduced a pipeline:

  1. Rewrite the query.
  2. Retrieve candidates through hybrid search.
  3. Rerank the results.
  4. Apply deterministic rules.

The output is a map connecting an issue to related issues, including how and why they relate. The distinction matters: a nearby embedding is a candidate relationship; the product needs an explanation that helps someone decide what to do with it.

Those relationships support suggested labels, suggested assignees and possible duplicates. They can also explain why a particular engineer or project is a suitable destination for an issue. The visible suggestion panel places an explanation beside Related and Duplicate controls, making the relationship something a person can inspect in context. For customers receiving thousands of incoming issues, the value lies in routing work into the right engineers’ hands, rather than simply returning more search results.

Linear issue screenshot with a suggestion panel headed “Why this might be the right fit” and Related and Duplicate controls.
An issue suggestion explains why another issue might be related.
6:116:21
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

6:11 · section reference included

Turn accumulated information into useful work

Customer feedback creates a related problem at a different level. Linear can collect feedback across customer channels, but gathering it does not determine what the team should build. The feedback analysis feature under development would process hundreds or thousands of requests and propose how to divide a project or which features might emerge from it. Moor reports that Linear’s head of product judged the feedback analysis better than 90% of the candidates he interviews. That was an informal judgment, not a controlled benchmark with a supplied rubric or sample size.

Pulse addressed the opposite direction of information flow: understanding what the team had already done. The shipped feature synthesized workspace updates into daily or weekly summaries and also produced an audio version. Someone could catch up on a commute or over breakfast instead of reading through the workspace. At the time, listening required Linear’s mobile or desktop app; Moor wanted an RSS feed, but the audio was not yet a podcast that users could subscribe to in their own player.

7:247:40
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

7:24 · section reference included

Convert a customer recording into an issue

A customer’s bug recording contains useful evidence, but an engineer still needs a written description and reproduction steps. Linear’s issue-from-video workflow embeds that conversion in the issue creation process:

  1. Drop in the customer’s video.
  2. Analyze the recording to infer reproduction steps.
  3. Use the analysis to compose the issue.

Moor describes the feature as creating the issue automatically, while the selected demonstration frame shows the populated composer with an embedded recording and a Create issue button—not a confirmed submission. He also cautions that this is not the feature’s strongest example. The useful mechanism is the same as in the Slack integration: turn source material into actionable work without making the user perform the transcription and composition manually.

Issue composer showing a title about adding a photo, a short description, an embedded video preview, and a Create issue button.
An issue draft pairs a written description with an embedded recording.
9:049:19
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

9:04 · section reference included

Make the workspace pluggable

These embedded features have a limit: Linear cannot anticipate every team’s structure or build every workflow into the product. The Linear for Agents platform, launched roughly two weeks before the talk, makes the workspace extensible through agents. Moor frames them as cloud-based teammates that can scale beyond a human team’s capacity. The coordination logic follows from the existing product: if Linear already holds the work and communication for people, agents should participate in that same context.

Codegen demonstrates the coding workflow. A user assigns it an issue or mentions it in Linear; the agent produces a plan and then a pull request. Moor says the sped-up Codegen demonstration represented four minutes of work, not twenty seconds. The resulting PR is still a reviewable artifact: a human examines it as they would a teammate’s contribution.

The agent is not confined to Linear’s interface. A user can initiate work through Slack or another communication tool, provide the Linear issue as context, and have the agent connect the work across systems. The same model allows a user to interrupt it partway through. Linear supplies shared work context; the agent operates beyond any one window into that context.

Bucket, the feature-flagging product now represented by a Reflag-branded companion article, shows an operational workflow. Mentioning the agent can create a feature flag, roll it out or check its status from within Linear. Moor’s example combines flag creation with a requested rollout to 30% of users; that percentage is an illustrative target, not a reported rollout result. Combining the steps in one request avoids making the user drive each command separately.

Charlie shows investigation before implementation. In the example, a Linear issue has a Sentry issue attached. A user mentions Charlie and asks it to research the problem; with repository access, it can inspect recent commits and the codebase to identify possible causes and reasons for a regression. An engineer then arrives at an issue containing an initial investigation rather than starting from scratch. The claimed time saving is qualitative: the demonstration does not establish a measured reduction in debugging time.

9:379:45
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

9:37 · section reference included

Move beyond the comment thread

The integrations shown so far live primarily in issue comments. Linear was also developing a dedicated surface where agents could expose observations and tool calls, and where users could interrupt their work. That would make activity inspectable through a consistent workspace interface across coding agents and product-management agents, instead of asking each integration to invent its own presentation inside a comment stream.

Intercom’s Fin integration, still under development, would extend that coordination into customer follow-through. The proposed Fin request asks it to reply to the 100 customers who reported a now-fixed bug; no completed outreach is demonstrated. The issue would connect the engineering fix to the people waiting for it. Moor expected the new agent interface within a couple of weeks of the talk, making this a description of intended behavior rather than an already delivered interface.

That leads to a broader proposed change in backlog management. Instead of accepting a permanent accumulation of bugs, a team could assign every outstanding issue to an agent for a first pass. Moor speculates that perhaps 50% of backlog issues could be fixed by the end of a week; this is a forecast, not a measured result. The underlying expectation is that removing repetitive investigation and implementation work could let teams build more, improve quality and deliver faster.

12:4413:02
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

12:44 · section reference included

Give agents identity, access and events

The platform architecture makes agents first-class users with identities, histories and an audit trail of their actions. Installation happens through OAuth, after which team administrators can manage the agent and its access. Linear’s GraphQL API supplies the product operations, constrained by granular scopes. In Moor’s description, that API gives agents access to essentially the same range of product actions available to humans.

Agent-specific webhooks provide the other half of the interaction: knowing when to act. They notify an integration when its agent is triggered on an issue or receives a reply. Additional opt-in scopes determine whether the agent can be mentioned or assigned work.

Platform elementRole
Identity and historyAttribute actions to an agent
OAuth and admin controlsInstall and manage access
GraphQL and granular scopesPerform permitted product actions
Agent-specific webhooksDeliver triggers and replies
Mention and assignment scopesEnable ways to request work

The combination separates action permissions from event delivery: an agent needs both authority to perform work and a signal that work has been requested.

The demonstrated integrations were already possible through the existing API, but developers had to assemble more of the interaction themselves. Linear planned an SDK convenience layer to launch alongside the dedicated agent interface. This is the initial platform model shown in the recording; the later Agent Interaction SDK evolved toward agent sessions, and current documentation uses delegation while retaining human ownership. Those later concepts should not be read back into the original assignment and webhook demonstration.

14:3714:47
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

14:37 · section reference included

Participate like a useful teammate

The closing integration practices come from months of work with partners in an ecosystem still taking shape. The first is to separate immediate acknowledgment from confirmation of intent. An emoji reaction can quickly signal that a mention reached the agent. A precise response should then establish what it understood: when asked to handle an issue, Codegen should confirm that it will produce a PR for the particular requested change. Acknowledgment answers whether the request arrived; confirmation lets the user catch a misunderstanding before work proceeds.

An agent may live in the cloud and interact through several products, but each interaction should follow the conventions of its host. Linear is a structured window into the agent’s behavior, with useful work context attached. Inside that window, use Linear’s language and workflow: refer to an issue as an issue, move it to In Progress when work begins, and leave activity visible. If someone replies in an existing agent thread, the agent should respond without requiring another @mention. These are ordinary expectations of a teammate, and they make the integration understandable without teaching users a separate conversational protocol.

Slide titled “Inhabit the platform” lists using “issue” rather than “ticket,” acting in the open, and responding to replies without an @mention.
Inhabit the platform: use its terminology, leave a transparent trail, and respond without another @mention.

Before taking action, communicate a plan and get clarification on it. Moor warns against trying to be clever through overconfident one-shot execution; a plan gives the user a chance to resolve intent before the agent commits to work. The final communication standard is equally practical: do not dump verbose model output into comments, issues or other collaboration tools. Be concise and useful. Ask what a good human teammate would contribute in the same situation, and make the agent’s output earn its place in the shared workspace.

16:1316:32
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

16:13 · section reference included

Resources

From the talk

  • Tom Moor explains Linear's original vector-search infrastructure and the practical challenges of indexing existing issues.

  • An implementation account of the feature-flag agent introduced under the Bucket name, including acknowledgments and confirmation checks.

Updates since the talk

Read the complete timestamped transcript
  1. 0:00

    [upbeat music] So yeah, I'm, I'm Tom.

  2. 0:16

    I, uh, lead the engineering team at Linear. Um, and today I would love to talk to you a bit about our story with AI, how we think about AI as a company, uh, some of the features we've built, and then how we see software development going from here, and perhaps Le- Linear's place in that future.

  3. 0:36

    Um, so just for anybody that hasn't heard of, of Linear in the room, um, [clears throat] that you might not be familiar. So Linear is a product development tool, um, it's disguised as an issue tracker, we like to say.

  4. 0:49

    Um, we've spent the last five years obsessing over the speed, clarity, removing friction, making it just the best tool for ICs, um, to, to use to work every day.

  5. 1:02

    So yeah, it started as a simple tracker and, and now we think of it as, as an operating system for engineering and product teams to, to build their products.

  6. 1:11

    And we're used by OpenAI, Ramp, Vercel. Thousands of other modern software companies you've heard of, um, use Linear to kind of keep track of their work.

  7. 1:25

    So just a little bit of, of history, uh, of, of our AI journey, as it were. Um, we spun up an internal, like, skunkworks team in early 2023, um, which I think was about GPT-3, if I remember rightly.

  8. 1:41

    Um, our initial focus was on kind of summarization, uh, some similarity. We were looking at embeddings. We... Nobody on the team had any AI experience, so we're just kind of jumping in and, and figuring it out as we go.

  9. 1:56

    Uh, one of the things we realized really quickly was that, uh, many of the features that we needed to build needed a really solid search foundation. Um, almost everything you need to first find the relevant stuff, right?

  10. 2:08

    So right, we had Elasticsearch at that time, uh, and they didn't have a very good vector offering. I think maybe they actually had no vector offering back in, uh, 2023.

  11. 2:16

    Um, so we looked around, and this was kind of a, a moment where there was, like, 100 startups suddenly came out with vector databases, right? It was like, there was Pinecone, there was this, there was that.

  12. 2:25

    And uh, so we looked at these. We evaluated a few. They all had a ton of trade-offs. Um, and so we, we literally just ended up, after experimenting with a bunch of things, when we had, like, OpenAI embeddings, and we stored them in pgvector, and we put the pgvector on GCP, and it was, like, the most classic

  13. 2:41

    Linear decision ever because it was so pra- so pragmatic and just use, use the solidest things. Um, so on that base we, we shipped some features, right? We shipped a, a V1 of Similar Issues, uh, where we're kind of suggesting related issues.

  14. 2:55

    This was, like, in hindsight, two years later, so naive. Um, we, we were just doing simple cosine embedding op- uh, comparisons, um, against the, the vector database.

  15. 3:08

    And we, we shipped natural language filters. I actually think this is one of the better ones, where, um, you can just type in natural language, "Bugs assigned to me in the last two weeks that are closed," and it will produce the filter.

  16. 3:19

    So it's very one-shot, very n- naive in comparison, yeah, but, um, pretty useful. And kind of hidden, I would say, as well. And we also had another feature where if you create an issue from a Slack thread, we will, um, not just pass the text from the Slack message, we will, we will try and produce the right

  17. 3:36

    issue from that automatically, and that was, like, so seamless and hidden that I think a lot of people didn't even realize it was happening. Um, and we never shipped a copilot.

  18. 3:45

    We tried. It was, like... It was copilot season, and, um, we just... The quality wasn't there, you know? We, we have this quality bar, and it did not reach it.

  19. 3:53

    So, um, I don't know if it was a lack of imagination for our team, 'cause we weren't, like, AI pilled enough at the time, or, uh, it was, like, the, the capability of these early models.

  20. 4:03

    I think a bit of both, to be honest. Um, so you know, we, uh, I think this was the right approach at the time, in a way. Like, a, a lot of people on, on Twitter kind of noticed.

  21. 4:14

    They're like, "Oh, these are very seamless features. You're not slapping AI in our face." Like, there was literally toothbrushes that said they had AI. Um, I, I think it's probably much worse now, to be honest, but, you know, people kind of appreciated this approach, uh, of, like, small pragmatic value adds.

  22. 4:31

    And then, like, fast-forward to 2024, and, you know, we, we, we've added a few things since then, but it really feels like in 2024, the end of '24, we, we hit a turning point.

  23. 4:40

    Um, you know, o3 coming out, the planning and reasoning models, the multimodal capabilities became available in the APIs. The context windows went through the roof. Uh, you know, have, like, million token context.

  24. 4:52

    Like, you can do crazy things with that. Um, DeepSeek, of course, made a splash. And, uh, we felt like, uh, some of our experiments started to become a lot less brittle, and things actually felt smart.

  25. 5:07

    Um, things kind of clicked for the team a little bit more. The, the... We, we saw how deep this could go.

  26. 5:13

    So, uh, the first thing we did was [laughs] we started by, uh, rebuilding our search index again. Um, which, I don't know, if you ever, like, back, backfilled, like, million, hundreds of millions of rows of embeddings, it takes a while.

  27. 5:27

    Um, so we moved to a hybrid search approach. This was something that, um, we, we had really felt was lacking over, like, the year and a half that we'd kind of had pgvector sat on its own, and we weren't, um...

  28. 5:39

    We didn't put it in our main database 'cause it was so huge, so it was kind of sat in its own thing. So, uh, we moved to Turbopuffer. If you've not heard of Turbopuffer, really, really cool, uh, search index.

  29. 5:48

    I'd highly recommend giving it a look. Um, and we moved our embeddings over to Cohere. After doing kind of a comparison, we felt that they were a lot, uh, a lot better for our domain at least, um, than, than OpenAI's.

  30. 6:01

    Um, so this kind of filled a gap in the search, um, and this is actually just finished rolling out in, like, the last two weeks, um, because it- the, the backfill took, took such a while.

  31. 6:11

    But now we thought we had, okay, we've got a really solid search foundation. What are we gonna do with this? Um, so first thing we did is, like, we're building this feature called Product Intelligence.

  32. 6:21

    Um, this is basically like Similar Issues V2. So instead of just doing sim- simple cosine matching, we now have a pipeline. Um, that pipeline is using query rewriting, it's using the hybrid search engine, it's re-ranking the results.

  33. 6:35

    We're using deterministic rules, and then out the other side, um, what we get is a map of relationships from an- any given issue to its related issues, and then how they are related and, and the why they are related.

  34. 6:50

    Um, and then what we're able to do with that is expose this in the product. I hope that's clear enough as, you know, we have suggested, suggested labels, suggested assignees, um, possible duplicates.

  35. 7:03

    And then on things like projects, it's like, why this might be, uh, uh, uh, why this might be the right person to work on this issue, or why this might be the right project for this.

  36. 7:12

    So, you know, we're working with, like, the OpenAIs of the world. They have thousands of tickets coming in, and they really have to have as much help as possible to, to kind of churn through them and, and get them into the right, the hands of the right engineers.

  37. 7:24

    Um, ooh, I think I skipped one. Yeah, so the next one was, uh, customer feedback analysis. This is something we're working on right now. Um, so one of the other features of Linear is you can bring in all of the customer feedback, um, from all of your channels, uh, and then use that to help to decide what

  38. 7:40

    you're going to build. Um, and so obviously one of the steps there is, okay, we have hundreds of pieces of feedback.

  39. 7:48

    How do we figure out what to build from this, right? So, uh, of course, LLMs are, are great at analyzing text, and we found that, um, I think our, our head of product actually said that, uh, our analysis was able to beat 90% of the candidates he talks to in the interview process, um, for what they're able

  40. 8:05

    to do in terms of, uh, analysis. So, um, we're able to, yes, churn through hundreds or thousands of customer requests and then figure out, for this given project, like, how might we split this up?

  41. 8:15

    What, what features might be created from this? Um, which is pretty cool.

  42. 8:21

    Uh, another feature we've already shipped is a daily or weekly pulse. This, uh, synthesizes all of the updates that are happening in your workspace, um, creates a, a pulse from it, uh, like a, a summarized pulse.

  43. 8:35

    Um, and then we also produce, like, an audio podcast version, which is pretty cool, 'cause you can, uh, pull open our mobile app and then listen to that on your commute.

  44. 8:42

    Uh, I hope we have an RSS feed for it soon. I really wanna just subscribe to it in a podcast player. Uh, so although I put podcast here, it's not quite a podcast.

  45. 8:50

    You have to have a, a mobile app or the desktop app. Uh, but this is great. You just, like, over breakfast, like, what has the team been up to while I was asleep?

  46. 8:57

    Um, oh, that was a, uh... Sorry, that's the, that's the visual of it. Apologies.

  47. 9:04

    Um, uh, and then, yeah, so one other feature I'll go through here is, um, is issue from video. So literally, uh, you know, so many bugs can come in as video recordings from customers, right?

  48. 9:19

    Drop the video, um, we'll an- analyze it, uh, we'll figure out the reproduction steps, and then we'll create the issue for you, uh, from that. This is maybe not the finest example of that feature, but, um, an- another kind of like seamless, but, but very powerful and saves a bunch of time.

  49. 9:37

    Um, so of course we're, we're, we're baking as much into the platform as we can, um, in terms of these things. But, uh, there's a limit to that, right?

  50. 9:45

    We, we can't put, put in everything. We don't know... Every team is different. Every team is shaped differently. So we wanna make this pluggable. Um, and this is kind of where agents come in.

  51. 9:54

    So the way we're thinking about agents is as infinitely scalable, cloud-based teammates. Um, this is a... So we launched a, a platform for this two weeks ago. Um, we figure, you know, we're already doing a pretty good job of orchestrating humans.

  52. 10:08

    Um, we are a communication tool for humans, after all. Um, and if agents are going to be members of your team going forward, then they should also live in the same place where all of the, the human communication happens.

  53. 10:19

    Um, so first, hopefully, if the internet stands up, I'm tethering, um, I'll, I'll do some, I've got some, some videos. Uh, yeah, so Codegen is one of the first, um, coding agents that integrated with us.

  54. 10:34

    Um, so they can... Is this gonna play? Cool. Yeah, so Codegen, you can assign it, you can mention it, um, inside of Linear like any other cos- uh, any other user, and it will produce plans, it will produce PRs.

  55. 10:49

    You can see here, it's gonna pop in. Boop. Uh, this is a sped up, by the way. That took four minutes, not 20 seconds. Uh, but yes, it will produce the PR.

  56. 10:58

    Then you can go and review it like you would any other, any other worker, uh, any other team member.

  57. 11:06

    Um, this is really powerful, by the way, and you can, because it's, uh, an agentic system in the background, you can also interact with it from, not just from within Linear, but from within Slack or from other communication tools.

  58. 11:19

    And you can say, "Go and fix this ticket," uh, and give it a Linear issue, and it will know how to connect it all up. Um, or you'll be able to interrupt it, uh, partway.

  59. 11:28

    Um, Bucket is a feature flagging platform that, that integrated with our, the first version of our, um, agents, uh, platform here. Let's see. Is this gonna... Oh, no.

  60. 11:40

    All righty. Yeah, so in this case, you can just mention the Bucket agent, tell it to create a flag. It will create a feature flag for you. You can roll it out.

  61. 11:48

    Um, you can check the status of things, um, all within here. And of course, because it's agentic, you don't have to go command by command. You could say, "Create a new flag, roll it out to 30% of users," um, and things like that.

  62. 12:02

    And then Charlie is another coding agent with access, uh, to your repository. Is really good at creating plans, um, and doing, like, root cause analysis of bugs. So in this case, uh, we have an issue here.

  63. 12:14

    It has a Sentry, uh, issue attached. Um, we can just, uh, mention Charlie, ask it to do some research. So it can go and look at your recent commits, um, it can go look through the codebase, and it can kind of figure out, uh, the cause of this issue.

  64. 12:29

    And you can imagine immediately, right, like this has saved a lot of, um, of minutes of engineers' time. They can come in here and immediately see, uh, possible causes and regression reasons for, for this issue.

  65. 12:44

    Um, so the examples I've shown so far have been, uh, kind of living in, uh, the comment area of an issue. Obviously, that's, uh, not quite where we wanna be in the long term, so, you know, we're working, uh, on build- building, uh, a sp- uh, additional surfaces for this in the product, um, so that agents aren't

  66. 13:02

    just, like, the same as, as users on the team. They're, they're kind of better because you can see what they're thinking, uh, and I can't see what my teammates are thinking a lot of the time.

  67. 13:10

    Um, so yeah. So we'll, we'll have this surface where the agents can send you their observations, they can send you the, the tool calls. You're able to kind of go behind the scenes of the agent.

  68. 13:20

    You'll be able to, um, interrupt it. Um, and then this is kind of consistent across the whole workspace, right? So you have different coding agents, you have PM, uh, PM agents.

  69. 13:32

    Um, one other company that's building an integration with us right now is Intercom with their Fin agent. So you'll be able to do things like just say, "Hey, Fin.

  70. 13:39

    I fixed this bug. Can you go and, uh, can you go and reply to the 100 customers that reported it?" And, you know, how much time did that just save?

  71. 13:47

    So we're building this, this interface out right now, and expect to have it in, in, in a couple of weeks. Um, but I've been really using these features a ton, and, uh, I've been hammering this for months, and I, I think it, it really changes the game and will expect kind of the amount of bugs sitting in

  72. 14:03

    companies' backlogs, which we kind of take for granted that you have this giant backlog that you're never gonna get to the bottom of. Um, I think there's just not gonna be an excuse for that anymore.

  73. 14:11

    Um, y- the, the agents can tackle it for you. Um, there's nothing to stop you assigning every single issue in your backlog [laughs] out to an agent, have it do a first pass.

  74. 14:21

    Maybe 50% of them will be fixed by the end of the week. Um, so I think, yes, we're really in this world now where you can build more, you can build higher quality because more of the grunt work is being done, and you can build faster.

  75. 14:37

    How much time we got? So, uh, I'll just talk a little bit about, like, the architecture of this. Um, so yeah. In Linear, agents are first class users. Um, they have identity.

  76. 14:47

    They have history. You can see everything they do. There's a full audit trail, um, of those events. Uh, you install them via OAuth, um, and then once they're installed, kind of any admin on the team can manage, uh, manage that, that agent and its access.

  77. 15:04

    And they work for- fully transparently. Um, so we have a very mature GraphQL API at this point, um, which basically enables agents to do anything in the product that a human could do, um, and granular scopes.

  78. 15:19

    And then we added brand-new webhooks for this specifically, where if you are developing an agent with Linear, um, you will get webhooks when events happen that are specific to your agent.

  79. 15:31

    So somebody replied to your agent, your agent was triggered on this issue.

  80. 15:36

    Uh, we also added some additional scopes that you can opt into to choose whether your agent is mentionable or assignable.

  81. 15:45

    And then as part of that kind of future UI that I just, uh, showed, uh, we're also working on a new SDK to be released at the same time, which will just make, uh, that really, really easy, where you can...

  82. 15:56

    So right now, you can build all this stuff. It's on our existing API, um, and you kind of have to figure out a bit more, I would say. So we're kind of building this abstraction layer, this sugar, where you can, uh, very, very easily, uh, integrate with the platform.

  83. 16:13

    Uh, yeah. I'll finish with, uh, some, some of the best best practices, um, that we, we found working with these partners over the last couple of months. Um, anyway, it, it really felt like we're kind of on the cutting edge here, and we're building it as the agents themselves still haven't launched in a lot of ways.

  84. 16:32

    Um, you know, like Google and Codex only just launched theirs within the last couple of weeks. Um, so first is to be, to respond very quickly and very precisely, um, when folks, uh, trigger your agent.

  85. 16:46

    So if I, if I mention your agent, it should respond as fast as possible. A lot of what we've seen is people using emoji reactions for that right now.

  86. 16:54

    Um, excuse me. I have to cough. [coughs] Um, yeah. So and then respond in a way that kind of, like, reassures, uh, the user that you, the, the agent understood the request, you know?

  87. 17:08

    So it's like, if you say, "@Cod gen, can you take care of this?" The response should be, like, something, "I will produce a PR for, for this specific thing you asked me."

  88. 17:17

    And it's like, "Okay. He understood what I meant. Great."

  89. 17:21

    Um, inhabit the platform. This is, like, Linear specific a little bit, but, um, in, in this example, but I think it applies anywhere. We, we really expect that these agents are not Linear agents.

  90. 17:32

    They are, they are agents that live in the cloud, and one of the ways that they interact is through Linear, right? Uh, it's just another... It's a window into their behavior, and hopefully, like, a re- a really well-structured one, where they get a lot of context.

  91. 17:45

    Um, but we really think that, you know, if you're, if you're working within Linear, if you're working within Slack, you should use the language of those platforms and, and not confuse things and, and put great effort into that.

  92. 17:55

    And then, um, things like one of the things that we expect to happen inside of Linear is if you're working on an issue, you should move that issue to In Progress.

  93. 18:04

    Don't just leave it in the backlog. Um, you expect that of your teammates, and we expect that of agents as well. Um, and then just, again, like, natural behavior.

  94. 18:13

    So if, if somebody triggered you, and then they replied in that thread, you, you shouldn't need to @mention the agent again to get a response. It should be a natural behavior that if you reply to them, th- they will, they will respond.

  95. 18:30

    Um, yeah, don't be clever. Uh, a lot... [laughs] Clarify your intent before acting. I think we see a lot of, like, attempts at, at one-shots. Um, one pattern that we're seeing right now coming out of a lot of the coding agents is they'll form a plan, um, before doing anything, um, and communicate that plan upfront and get clarification

  96. 18:50

    on it. Uh, so that's something that we definitely expect to happen.

  97. 18:58

    And finally, you know, be sure you're, you're adding value. Um, I, I think, you know, LLMs, they, they love to just produce tons of text. We don't want to see splats straight out of OpenAI into comments, into issues, into any other services.

  98. 19:14

    Um, be concise, be useful, be like a good teammate [laughs] would be. Um, you can always fall back on asking, like, what would a human do in this situation, and try your best to achieve, achieve that.

  99. 19:28

    Cool. That's it. Uh, thanks for listening, and if you're interested in working with us on this platform or, uh, integrating with Linear, let me know. [outro music]