[BidClub_]
Latent Space · · 27 分钟

[AIEWF 预告] 驾驭 Agent 混乱——Solomon Hykes

Solomon Hykes

YouTube
TL;DR
  • Solomon Hykes 的核心押注是:编程 Agent 需要一层可移植的环境,这借鉴了 Docker 在早期云计算浪潮碎片化时期所发挥的作用。 开发者正从使用单一 IDE 助手转向管理并行 Agent 团队,实际上开始承担平台工程师的职责,为 AI 工作者提供运行条件。环境“不是最强大的部分”,却是“连接其他一切的关键枢纽”。

  • Dagger 正被自身社区从开发后的 CI/CD 流程拉回编程环节。 其基于容器的工作流引擎已经让构建和测试具备隔离性、模块化和跨本地机器与 CI 的可移植性。Hykes 如今认为,这些特性同样是防止多个 Agent 互相破坏工作的必要条件。

  • Agent 环境应当具备隔离、可移植、可观测、多人协作等特征,并独立于任何模型、云或 IDE。 人类需要检查 Agent 的推理、工具和环境状态,然后“拿过键盘用一下”,验证它所说的工作已经完成。Hykes 认为,市场反而正在走向专有的垂直整合巨型系统,重演 Docker 出现前的碎片化。

  • 现有 Docker 工具不能简单贴到 Agent 工作流上。 Dockerfile 起初只是 2013 年的“权宜原型”,Compose 后来被缝合进系统,并因普及而事实上冻结;两者都不是为 Agent 原生设计的。Hykes 认为,新 UX 仍可建立在容器、Git、OpenAI API 规范和 MCP 等成熟基础组件之上。

  • CI/CD 与 Agent 运行时很可能围绕事件驱动工作流和可追溯产物逐步合流。 Hykes 预计,未来会出现“工作流运行 LLM,LLM 运行工作流,一层到底”的局面,而 CI 越来越像事件、任务调度和算力的承载层。编程 Agent 的差异化在于溯源:团队必须知道某个二进制文件是否可复现,还是来自“一个失控的模型”。

  • 本地执行是 Hykes 判断一个 Agent 平台能否普及的试金石。 云厂商自然会针对自有基础设施优化托管 VM、Trace 和模型访问,但开发者不希望本地使用被当成事后补丁。他说,一款仅支持托管的产品可能是“很棒的商业解决方案”,也能赚钱,但不会成为 Agent 开发的标准。

  • Dagger 的策略是保持模块化组件定位,而不是端到端掌控身份认证、UI、存储和网络。 它可以把现有 CI 系统转成“基本只是傻瓜式 Runner 基础设施”,无需取代原系统,以平台完整性换取广泛集成。Hykes 表示,这个市场更看重开发者体验和生态,而非规模,因此初创公司无需获得大型云厂商许可,也有机会胜出。

摘要 · 为研究而整理的核心内容

1. 编程 Agent 正在把开发者变成平台工程师

  • Hykes 介绍了成立已有 6 年的 Dagger:这是一个开源工作流引擎,用运行在容器中的模块化代码,取代构建、测试和交付流水线中的“手工脚本”。Dagger 早期用户主要是平台工程师——负责设计和运营软件工厂的人——他们经常陷入“鞋匠没鞋穿”的困境,不得不靠 Bash 和 YAML 自己拼装工具。

  • Dagger 最初主要介入代码保存之后的流程,改善从构建、测试到生产环境的路径。随后,社区开始把 LLM 接入工作流,并在 CI 中运行 Agent,推动公司向上游进入开发本身。

  • Hykes 认为,转折点在于:IDE 里的单个 Agent 变成一支编程 Agent 团队,开发者的工作也从亲自完成每一项改动,转向让其他参与者高效工作。这些“其他参与者当然是 AI”,而每个 Agent 都需要干净的环境,不能让多个工作者挤在同一个会不断变化的笔记本工作区里互相冲突。

2. 环境是 Agent 技术栈缺失的独立层

  • 容器仍是 Hykes 进行隔离执行的基础单元,但完整环境还必须支持 Agent 并行工作且互不干扰,能够跨模型、云和 IDE 迁移,并暴露从模型活动、工具调用到最终状态的全部信息。

  • 人类也必须能够与 Agent 共享这个环境。当 Agent 说“我完成了”,操作者应当可以检查结果,然后说“把键盘给我用一下”,而不是相信一次不透明的后台运行。

  • 主持人的实际反驳很尖锐:如今可以通过 Docker Compose exec 强行驱动 IDE Agent,但它做出的改动可能无法回写 Dockerfile 或 Compose,而这个接口既消耗运行周期,也没有把成果保留下来。Hykes 同意这是设计失败,而不是容器的问题:“不能把现有工具原样贴到新工作流上,然后指望一切完美。”

  • 他对历史的让步很重要:“我们在 Docker 上拼尽了全力”,但 Dockerfile 只是 2013 年的权宜方案,Compose 是后来缝合进系统的,普及又让两套接口都变得难以修改。新的 Agent 原生 UX 仍然可以复用容器、Git、OpenAI API 规范和 MCP,而不必重新发明每个基础组件。

3. LEGO 是可编程 Agent 基础设施的范本

  • Hykes 把环境和工作流比作工厂:“没人会去工厂商店买一座工厂。”每种产品都需要不同的工厂,因此过度可定制的工具会浪费用户时间,而过度简化的工具又无法适配用户的技术栈。

  • LEGO 是他的参照系,因为一个经过精心设计的组件,可以支撑一个更大的组合系统。采用另一套标准成本很高,意味着“所有东西都要再多操心一份”,因此这些组件必须通过节省时间或资金来回报这笔成本。

  • 这种模块化也模糊了传统分类。Temporal 一类的应用运行时与 CI/CD 系统都涉及异步事件、调度和算力;Hykes 预计,编程 Agent 会让两者合流,形成“工作流运行 LLM,LLM 运行工作流,一层到底”。

  • 即使不涉及实时语音或视频,编程仍然存在特殊的溯源问题:产物必须可重复、可追踪。团队需要判断某个二进制文件是否遵循了可复现流程,还是“由一个 Agent——一个失控的模型——创建”。

4. 以托管为先的基础设施要接受本地执行检验

  • Vibe coding 以及哪怕只使用一次的应用,都进一步推高了对快速启动和销毁、细粒度隔离及低成本的要求。用户之所以走捷径,是因为现有工具无法把环境拆分到“那么小、那么便宜”,也无法在不大量打补丁的情况下快速启动。

  • 仅有容器还不够:并行 Agent 还需要隔离的文件,因此团队会把容器执行与 Git worktree 结合起来。Hykes 看到厂商正在组装这些组件,但提醒说,托管式 AI 公司天然会把环境理解为自有基础设施上的另一批快速、廉价 VM。

  • 他的试金石很简单:“它支持本地执行吗?开发者能在本地运行,并且用得开心吗?”CI/CD 薄弱的本地体验,以及各类项目在本地模拟 GitHub Actions 时遇到的困难,都说明一旦本地执行成为事后补丁,兼容性会有多难。

  • Hykes 对商业产品与标准的区分是绝对的:仅支持托管的环境可以是“很棒的商业解决方案”,也可以“赚很多钱”,但无法普及到足以为编程 Agent 的开发建立统一标准。

5. Dagger 押注界面质量可以胜过平台规模

  • 当被问及在 Dev Containers 等竞争方案并存的情况下,什么会促使大型云厂商或实验室采用 Dagger 时,Hykes 拒绝预测行业整合:“每个人都应该尽力而为,设计出最好的解决方案。”

  • 与基础模型不同,基础模型的规模会压缩可能胜出的玩家范围;Agent 环境主要是开发者体验和界面设计的竞争。小团队仍然拥有杠杆,但社区和生态依然决定成败;在这一层,初创公司“确实不需要获得许可”,可以直接建立势能。

  • Dagger 有意不做一个拥有专有身份认证、UI、存储和网络的端到端平台。它会适配现有技术栈,包括传统 CI;后者可以被简化为“基本只是傻瓜式 Runner 基础设施”,同时继续留在系统中。

  • 主持人把下一步可能出现的方向称为“生成式基础设施”,即由 LLM 生成自己的基础设施,并表示让 Agent 获得一个 AWS 账户后“放手去折腾”很棘手。Hykes 提醒,这种方式“很容易带来大量开支”。此外,他认为即将到来的主题演讲有“50% 的概率”会包含超出工作坊的新成果,前提是能及时准备好。

Speaker 1

Everyone, welcome to a latent space learning pod. This is Alessio, partner and CTO at Dazzle, and I'm joined by Mikolaj Swietek, founder of Mole AI. Hello, hello. And today I'm so happy to have Solomon Hykes join us. Solomon, you're most famously the creator of Docker.

Solomon Hykes

Hi, thanks for having me.

Speaker 1

You started Dagger 6 years ago, and I think originally it was pitched as some sort of infrastructure-provisioning thing. I'm sorry, I'm probably totally mangling this in front of you. How do you introduce Dagger today?

Solomon Hykes

I think 6 years—yeah, 6 years, I guess, sounds right. Dagger is a workflow engine. It's an automation tool for software teams that want to deliver software faster and more efficiently. It takes all these workflows that are usually semi-automated with artisanal scripts—your builds, your tests, your end-to-end pipelines—and turns them into robust, modular workflows that you can drive with code. It all runs in containers, so it's highly portable and highly isolated.

You can run them locally or in CI, which saves a lot of time. We're an open-source platform, and we've got a very active and engaged open-source community, mostly made up of platform engineers: those systems engineers who design the factory, run it, and enable the developers on the team to be more productive. That's our core community.

Speaker 1

I was going to say, just to make that clear, these are both pre-development—spinning up an environment for people—and then also what happens after you're done writing the code and getting it ready for production. Are those basically the 2 entry points?

Solomon Hykes

We started mostly post-development, so anything that happens after you've saved and you're ready to see what happens next: build, test, and take it live. There's that delivery loop, right? We've been focusing on making that delivery loop more efficient because it's really terrible in most places, and there are a lot of inefficiencies that could be cleaned up.

In a lot of ways, it's a cobbler-without-shoes situation. Those platform engineers spend all their energy and significant experience helping developers get the best possible tooling and the best possible experience, but for their own tooling, it's sort of, "Okay, we've got to cobble this together with Bash scripts and YAML." So we've been focusing on post-development.

Although recently, we're getting pulled into the development loop, in part because of this crazy change that's sweeping the whole market: agents.

Speaker 1

I think let's run right into that. Obviously, there's a lot more context on Dagger and Docker and what you've done prior, but this is an AI podcast, so why not just go right into it?

A few months ago, you messaged me and said, "I think this is the biggest idea I've had since Docker itself." I thought, "What? Docker is very big." What is your context going into AI builders? In some ways, I've always said that to us dev-tools people, it's just more of the same. Everything that you wanted, you just need 100x more. How did you approach this?

Solomon Hykes

We didn't think of ourselves as an AI company. We got pulled into it by our community and our users, because although Dagger is primarily used to build CI/CD pipelines, historically, we've never thought of ourselves as a CI/CD company. We like to build platforms from first principles and then encourage our community to go and apply them.

What we have is an engine for automating workflows, making them reliable and portable, and giving them very clean environments to run in. The environment is key. Of course, we use containers because that's what we know, and container technology is still underutilized and misunderstood today. It can do so much more.

Our community pulled us into this AI space because of agents. These platform engineers started messing with agent loops. They wanted to insert LLMs into their workflows, and now it's becoming more popular to run agents in the context of your CI to automate more parts of your delivery.

Then they started showing us that everybody wants to use these coding agents now. If you're a developer, increasingly, your job is not going to be to actually develop but to manage and enable these coding agents. We're at the very beginning of this. You've got one agent in your IDE helping you, but now you want more than one, right? You want a team of agents doing the work for you.

That transition from a team of 1 to a team of multiple coders is basically what our community—these platform engineers—deals with. What we're witnessing is developers becoming platform engineers. They have to learn how to enable others to be productive. These others, of course, are AIs.

To do that, they have to give them environments to work in. You can see the problem when you see someone live-streaming their vibe coding. Everyone's vibe coding, but you can only make one set of changes at a time. Everyone's messing with this development environment that really isn't cleanly isolated.

What we're doing is taking this technology that we invented for CI/CD and bringing it into the coding-agents environment, giving your agent a perfectly isolated, reusable, and portable environment. That way, you're not completely locked into one app connected to one model running on one cloud infrastructure provider.

You want the environment where the agent does its work to be decoupled, to be its own thing that you can manage and look at, and then move to another platform if you want. That's sort of what happened with Docker in the previous wave, when everyone was adopting cloud technology. Everyone was building these big platforms, and they had everything, but they were highly fragmented. They tried to cobble everything together like a monolith, so you didn't have this portable environment that you could carry around with you. You were trapped in one big platform.

The same thing is happening now. We want to use our experience from the past to enable this new generation of developers to really unlock the potential of these coding agents. That's what I'm excited about.

Speaker 1

I think the scope of what people do for coding agents today is maybe like a single VM, let's call it. Especially the coding agents from the big labs: they don't even have internet access. They have preinstalled libraries, and it's very limited. It could be so much better if there were standards for it.

Obviously, the standard needs to be open source, but there's a question of the design constraints that you're coding for. For example, Gitpod is another developer-environment market participant I've seen. They're saying, "We really need to isolate this kind of almost-mini VPC. You need to get the networking sorted out, and you need storage—everything, right? Just all the fundamental units of compute."

So, I guess, what is the container here? What is that concept here—the unit of isolation?

Solomon Hykes

Actual containers as the base layer. That's my first insight here: you don't have to reinvent the core technology that already exists, but you have to rethink the tooling.

It's frustrating for me because we busted our ass on Docker. We built this whole ecosystem, and we invented the Dockerfile, Docker Compose, the format, and the CLI. Then we messed up on the follow-through. At some point, Docker basically stopped innovating, and I left. The ecosystem continued around containers, but it didn't actually pick up where we left off.

Everything around applying container technology to development stopped. There are still a lot of interesting experiments, but it never had the unity of purpose that this initial movement had. So you have fragmentation. No standard really emerged beyond Dockerfile and Docker Compose. That's it.

All the effort went into infrastructure: Kubernetes, scalable storage, scalable networking. That kept moving a lot. If you go to KubeCon or any of those events, you see all the infrastructure people applying containers to solving that problem. But for development and dev environments, it really hasn't moved that much.

Use containers—that would be my first recommendation. But then, yes, you have to design a solution from first principles. It's a difficult design problem, and I'm very excited because there's an opportunity to go through this design process again from first principles.

I'm aware of Gitpod, of course. There are Dev Containers as a standard in IDEs, and there are a million other products out there, but none of them have convinced the majority of humans to develop in them and with their tools. It's very fragmented. In fact, most people still don't develop in a container. They just develop on their laptop. That's a failure of tooling.

I think it's anyone's game how to apply container technology to the perfect developer experience. But the criteria are that it has to be well isolated. You should be able to have a bunch of agents working in parallel, and they shouldn't mess up each other's work. It has to be portable. It should not be locked to a model or a cloud provider, and it should also not be locked to an IDE.

That’s crazy. If you think a whole team is going to standardize on the same IDE forever, you’re deluded. It should be fully observable. You should be able to see everything that happens in that environment end to end, everything from what the model’s doing and thinking and saying all the way to what tools are actually running and what the state of the environment is. You should be able to see everything in one place.

You need strong multiplayer elements. You need agents and humans to both be able to interact with that environment, so that you can tell an agent, “Do this.” And when the agent says, “I did it,” you can go and verify: “Okay, did you do it? Give me the keyboard for a second.” You need all those things.

Right now, I’m not seeing us heading in that direction. I’m seeing us heading in the direction of highly integrated, very vertical, end-to-end monoliths. I don’t want to name names, but it’s definitely a market trend. If you’re selling an IDE right now and people are asking for more customization for the coding agent’s environment, you’re going to add some proprietary way to customize the environment. You’re going to add your own observability solution. And when people ask for a way to have the agent work in the background, you’re going to add your own hosting solution to run the agent in the background. That’s a monolith. That’s what fragmentation looks like.

And that’s exactly what we were up against in the early days of cloud that led to the creation of Docker, right? So we’re going to need some sort of a standard—not on everything, just on the environment, right? Just that little piece that connects all the other pieces. It’s not the most powerful piece, but it’s the linchpin that connects everything else. The environment in which the agent does work—that should be independent.

Speaker 1

What do you think are the biggest limitations to this? I use Docker to develop, and I force the coding agent in the IDE to run commands in the Docker environment. I would say, if I had to give feedback on it, one, the agent cannot make changes while inside the container and propagate them back to the Dockerfile and Docker Compose. So it kind of spends all the cycles, and then all the work is lost. And there’s no AI-native interface; I’m basically just doing Docker Compose exec and running the command in the container instead of having a more native way to do it. How do you think about that changing with the new Dagger approach?

Solomon Hykes

I mean, you just got to rethink it. Dockerfile was something we designed as a stopgap prototype, thinking, “Oh, we’ll clean this up later,” in 2013. It’s been more than 10 years. Compose was a clone of a clone that we acquired into the team and stitched on top, and as soon as we launched it, you have to understand, there was so much excitement and demand. People didn’t want it to move. You would build platforms on top and then you’d be like, “Don’t change the syntax.”

And so that stuff has been frozen in time. I commend Docker for maintaining it and keeping it alive and just doing the hard work of maintaining it, but it’s not agent-native. It never will be. You just got to go through a good engineering and design process of understanding how people develop with agents, understanding what’s the best UX that they need, and trying to design that on top of technology and components that are as standard as possible.

You don’t want to reinvent the wheel where it’s not necessary, but we’ve got a bunch of standards to work with. We’ve got the container tech—I mean, it’s there; it’s universal. We’ve got Git. We’ve got the LLM, the OpenAI API spec, right, and its derivatives. And now we’ve got MCP. So that’s a pretty good set of standards. We can work with that. But yeah, it’s got to be a new UX, in my opinion.

And, I mean, not to plug Dagger, but obviously Dagger is our vehicle for going through this design process. So if you want to see my particular opinions and how things should be designed and how to balance, for example, simplicity versus modularity, then in my case, look at Dagger.

But yeah, it’s normal that you can’t just tape existing tools as is onto new workflows and hope it’ll be perfect. That’s totally normal.

Speaker 1

Something I bring up in my work history a lot—and I think you know I’ve also worked in workflow orchestration and Temporal—is this migration of, let’s say, a custom language like a Dockerfile or an AWS Step Functions-type thing into a more programming-language-based approach, like TypeScript or Go. That is the exact same journey I took.

Solomon Hykes

Yeah, I mean, it’s really hard to find the right balance. I think of it as LEGO, because it’s a hard problem to solve these workflows and these environments: no 2 workflows are the same, and no 2 development environments are the same. It’s like factory design. Every great product has its own factory that’s unique. No one goes and buys a factory at the factory store. You design it and build it alongside your products. And that’s what these things are; it’s like a factory.

And it’s really hard to provide tooling for that space, because if you make it too complicated and too customizable for no reason, then you’re wasting people’s time. They just say, “I buy this; I’m just going to do everything myself from scratch.” But if you try to streamline and simplify too much, then you’re restricting choice and it becomes useless. Like, “Well, this doesn’t fit in my factory because my factory uses this system and I can’t reconfigure it.” So it’s a really hard area of design and engineering.

And to me, the GOAT in this space is LEGO—the actual LEGO. It’s used as an analogy so much that it loses its meaning, but if you really think about what LEGO really is, it was in reality very difficult to design and engineer the LEGO brick because it had to be just right. And it’s designed as 1 component, but it’s designed with a much larger system in mind, right? So there are these 2 layers of design. That’s what’s so hard. And that’s why LEGO is genius and has stood the test of time.

That’s what everyone in this space should be trying to do: build a better LEGO system that is worth adopting. It’s expensive to adopt a new standard in your stack. It’s one more of everything to worry about, right? So it’s got to justify the cost by actually saving you something—effort, money, whatever. That’s what LEGO does. I like to play with LEGO because I can assemble things quickly, et cetera. So yeah, that’s the challenge.

In the case of Temporal, I think these systems are very well positioned for running agentic systems, right? An agent always has some sort of loop that’s triggered by events. It’s asynchronous. You have to run that somewhere.

Speaker 1

Yeah, I would say Temporal’s focused more on runtime applications, and other systems are more focused on CI/CD. Honestly, you could use one for the other.

Solomon Hykes

Yeah, but they’re converging, because your CI/CD will soon be nothing more than runtime infrastructure for your workflows. And all those workflows will become agentic, right? It’s going to be either workflows running LLMs, LLMs running workflows, all the way down. And CI is also events, a job dispatcher, and compute.

So I think these things will converge, with coding agents being the domain of application where everything meets, right? Because when you’re running a coding agent, you’re running an agent, so it’s a runtime problem, but it’s a very specific area of application. It’s not real time. You don’t have to worry about voice and video and things like that. You worry a lot about artifacts that are being produced and whether they’re repeatable. Can I trace how they were created? Is this binary created by an agent, by a model that went rogue? Things like that.

Speaker 1

One element that I see a lot in these kinds of applications—we talked about Bolt.new, and there’s this whole universe of, let’s call it, ephemeral apps: vibe-coded apps, single-use apps, just because it’s so easy to create an app now that you think, “I just—it doesn’t matter.”

The speed and the setup and teardown are pretty significant, and then obviously resource usage and cost. These are all things that I’m hearing the founders in these companies trying to solve for, and all finding the current set of tools lacking, because we just don’t have the ability to subdivide things that small or that cheaply. We can’t start things up that fast. But users always want this. That’s why they’re doing the shortcuts. That’s why they’re not using containers, because they’re like, “I don’t know how to do this with containers.”

Solomon Hykes

Yeah, and there’s a lot of duct tape. I mean, if you want to use containers yourself, you have to duct-tape a bunch of tools together. And it’s not just containers; it’s also file system isolation. Everyone’s playing with Git worktrees to try and get multiple instances of the agent working in parallel. That’s the same problem, right? It’s not just containers. It’s something container-based: containers for isolated execution, worktrees for isolated files, and it all kind of—you have to connect it together somehow.

I do think I’m seeing a lot of vendors, of course, thinking about that and trying to find the right solution for their customers.

I think one mistake everyone's making—again, I'm making a historical parallel with the rise of PaaS—is that everyone had this idea: only you can do this. Hopefully I'm not the only one left, but I think it's becoming very apparent, very quickly, that when someone who sells a commercial cloud product—a cloud-centric product in the AI space, where it's hosted—they're hosting your stuff, right? You log in, and they have your data, they have your traces, they run the model or proxy to a model, whatever.

Every solution they come up with will be very infrastructure-centric, right? They're going to think of another hosted feature, another hosted service. So when they think about environments, they think, "How can I run these VMs on my infrastructure as fast and cheaply as possible? My scale is going to be X, I have this many customers, the pricing is X." That's excellent, but developers also want to run stuff themselves locally, and they don't really want that to be an afterthought.

Right now, it is an afterthought. It's the same mistake CI/CD vendors made. CI/CD has no good local story. There are some open-source projects that try to simulate GitHub Actions locally, and it must be a nightmare to maintain those projects because compatibility is so hard.

My point is just that local execution isn't everything, but it's a good test. Whatever solution you're imagining, does it support local execution? Will developers be able to run it locally and enjoy it? If the answer is no, you're solving part of the problem, but you're not fully solving the problem of standardizing dev environments for coding agents.

It's not going to stand the test of time because it cannot be ubiquitous. It'll be a great commercial solution, and you'll make lots of money with it, but it's not going to be ubiquitous.

Speaker 1

So I'm going to ask a really hard question, maybe, but what does it take for one of the big clouds or big labs to adopt Dagger?

Solomon Hykes

Yeah. For example, I've had this exact same call, same problems, with the Microsoft team. They're pushing Dev Containers. Obviously, Dev Containers aren't enough, but whatever—they want to build around it. They want to extend it.

I'm like, "Okay, but everyone's working on their thing. When do we get some consolidation in the space?"

Well, who knows? Honestly, everyone should just give it their best shot and design the best possible solution. With open source, to some degree—it depends on the area or domain—but for this problem, scale doesn't really help as much.

If you're going for foundational models, to take the extreme example, sure, let the best design win. But I know who—I know the 10 names of who's going to win, if you know what I'm saying. It's going to be one of those 10. Startups don't really stand a chance.

This is very different because it's not about scale. It's about developer experience and designing the interfaces in a way that actually helps people be more productive. There's a lot of leverage for small teams to just design the best possible solution. Then you have to convince others to adopt it and build on it, so community and ecosystem are extremely important.

If you're large, like Microsoft, you have an advantage there, obviously. There's a Microsoft ecosystem, and it's massive. But you still need to have a solution, right?

We're talking to Microsoft. We're talking to a whole bunch of people, but for this particular problem that we're targeting—standardizing the dev environments for agents—you don't really need permission as a startup. You just go ahead and do it and build momentum, because there's less gatekeeping, I would say.

Speaker 1

Yeah, awesome. I think the other thing that comes to mind sometimes is that there are different layers in infrastructure. I think you're very focused on—I don't know how to put it—virtual hardware. Is that a term that resonates?

Speaker 1

Virtualization?

Speaker 1

No, when I look at what I can do with Dagger, it doesn't, for example, have auth or billing. The higher level is still infrastructure.

Solomon Hykes

Yeah, yeah, yeah. That's what you're describing as a consequence of the Lego approach. We're focusing on the platform problem: how do you create a modular system that can run anywhere, connect to anything, and allow you to compose the ideal environment and the ideal workflow? It could be ubiquitous because it can be integrated into pretty much any existing system.

In order to do that, you can't go ahead and design a complete end-to-end solution, right? That's the price to pay. Dagger will always be a component of a bigger platform. It will never be the complete end-to-end platform, because in order to do that, you have to force your customer to adopt your authentication, your UI, your storage, your networking, et cetera.

We're doing the opposite. We're telling these platform teams, "Hey, we will adapt to the stack that you have."

For example, we started this conversation with CI/CD because that's our traditional use case. Dagger makes your CI/CD better, but it does not actually replace your legacy CI platform. It runs on top of it, and it allows you to simplify it and turn it into basically dumb runner infrastructure. But it's still important infrastructure.

We don't seek to replace what you have. We try to integrate with it and make the overall system better. As a result, it's just a different shape of a product, right? We definitely don't solve auth. You've got to pick up others to help solve auth, but whatever you do, we'll integrate with it.

Speaker 1

Yeah. Cool. I think that's plenty for an intro to where Dagger's at and the pull that you guys are seeing. I'm looking forward to your talk, to be honest. I haven't seen a good Solomon Hykes AI talk.

Solomon Hykes

Well, I don't know if anyone has.

Speaker 1

Yeah, hopefully we'll see one next week.

Solomon Hykes

Yeah, I know. Feel free to lean on me to prep and all that, but—

Speaker 1

Thank you. I'm excited. When I saw the workshop submission come in, you guys had a really good "Let's build coding agents" session, with all the infrastructure pieces. That really tied it together for me. I thought, "Okay, this is where Dagger's going. This is how, ultimately, I need the LLMs to start generating their own infrastructure—generative infrastructure, almost."

Solomon Hykes

I feel like that's prone to a lot of spend.

Speaker 1

Yeah, but it's going to happen. The environment is a good way to ask, "Okay, how much control and how much freedom do I really want to give this agent?" We're past the stage where these things are just running wild on the internet, so why not? But giving them my AWS account and letting them go nuts is tricky.

Solomon Hykes

Depending on how things go, there's a 50% chance that for my keynote, there will be some brand-new, original stuff to show and talk about that isn't out yet—in addition to what we're showing in the workshop and everything. It depends on whether it's ready in time, but we may have even more fresh stuff to talk about.

Speaker 1

All right. We'll let you get back to it. Thanks so much for your time.

Solomon Hykes

Thank you.

Speaker 1

Yeah, thanks, guys. I'll see you next week.