实时多人协作、背景自动化与软件开发的工业化未来 AI Engineer 2026-08-08

软件开发的工业化革命:从个人效率到团队协同

在当今瞬息万变的技术生态中,Marginal Cost(边际成本:每多生产一个单位的产品所增加的成本)已逐渐逼近于零。随着大语言模型的普及,AI 不仅改变了我们编写代码的方式,更将我们带入了一个全新的“人人都是实验室探索者”的时代。GitHub Next 团队作为 GitHub 的前沿探索部门,其核心使命就是去寻找那些不论技术如何更迭都依然成立的持久性主题(Durable Themes)。

回顾过往,AI 在软件开发中的第一波浪潮聚焦于个人生产力(Personal Productivity),例如代码自动补全和简单的指令检索。然而,历史上所有的工业革命最终都是通过自动化(Automation)实现的。如果将目前的软件开发行业与传统工业对比,我们在很大程度上仍处于“前工业时代”,因为过去我们所谓的自动化其实只是一些简单的启发式规则,比如确保每行代码末尾有分号。如今,AI 赋予了系统进行基本判断和逻辑推理的能力。这为我们买下了宝贵的时间,让我们能将精力从机械性劳动中解放出来,专注于手艺(Craft)本身,或者开发更出色的产品特性。软件开发的最大价值,绝非仅仅是将“一个我”复制成“多个我”去并行工作,而是让“我们”——整个团队——能够协同完成更多以前无法想象的任务。

Original English Hi, my name is Eitan. Nice to meet you all. Uh I lead GitHub Next, which is the Labs team of GitHub. I like to call us the Department of Fool Around and Find Out, but I usually don't say the word fool. We're the team that created Copilot uh and pioneered a ton of areas since then, right? Uh spec-based programming, natural language to app, lots more. Not everything uh that we do turns into a finished product. Our job is to sort of explore the future and scout it out. Um but our job is to reach for the GitHub that's going to be next year. Maybe not tomorrow's GitHub, but uh the tools that we're all going to use to make software a year from now, 2 years from now. That's pretty hard, cuz my crystal ball barely works into uh next week. Uh and we're really fortunate that we get to do most of our work in the open, so you can check out githubnext.com and our socials, which we occasionally remember to post stuff to. And what we do isn't really research, right? Because the only way to know what's going to be good uh is to make stuff. So, we make a lot of stuff, and the hard part about being an undirected research team is always the question of what's worth our time. Even if you're a token billionaire, uh even if you have 10 terminals running Fable night and day, then opportunity cost is is still there. It's everything. Uh so, if in a in a world where the uh marginal cost of a line of code is approaching zero, uh and AI can help us to think and to make, what do we make, right? How do we even choose what's important uh when the market is super noisy and the tech changes every week? And this isn't even really a next problem anymore. This is an all of us problem now. We're all labs teams now. And the way that next thinks about this stuff is to look for durable themes. Things that will be true no matter what the technology that exists tomorrow. And I think that the theme of this moment is very much an evergreen one, right? It's AI started with a surge of personal productivity, right? The LLMs completed what I type and the agents go fetch me the thing that I need. And now I have many agents helping me to parallelize myself. But the greatest value doesn't come from multiplying me into more me. It comes from enabling groups of people to do more. That's always been true. And we're thinking about how to accomplish that through two lenses. Every industrial revolution came about through automation, right? It's funny to think about our giant software industry as being pre-industrial, but on some level it is because until now the only automations that we had were heuristics like make sure there's a semicolon at the end of every line. But now AI can help us to automate things that require some amount of basic judgment and intelligence. And there's no magic trick to making great software, right? It costs time. And we can buy that time by automating away the things that we used to need to do manually. Like the more we automate, the more time we have to spend on craft or on our product or on making it really good or on features, right? Either you hire more people or you automate away part of what your people are currently doing in order to spend that time.

智能体工作流:基于 Markdown Playbook 的安全后台自动化

智能体工作流(Agentic Workflows)是 GitHub Next 探索自动化在智能体时代应该如何运作的最新原型。以日常的依赖升级为例,当开发者使用如 Astro 这样的前端框架时,频繁的版本更新常常伴随着破坏性变更(Breaking Changes),传统的升级工具只能发送通知,而无法代为修改代码。为了解决这一痛点,我们设计了一种只需通过自然语言即可描述的 Playbook。它看起来非常像写给团队中初级开发者的 Slack 消息——指示它每天检查新版本、阅读变更日志和文档、制定升级方案、运行构建测试,并在确认无误后自动创建 Pull Request。

这种智能体工作流的源文件完全基于 Markdown 文件撰写,而其安全防御逻辑则定义在文件头部的 YAML Front-matter 中。在智能体自主运行的场景下,防止提示词注入(Prompt Injection)和恶意越权是第一要务。我们不能简单地在提示词中叮嘱智能体“不要购买比特币”,而是必须采用确定性的安全沙箱机制:

  • 深度防御(Defense in Depth: 多层防护缺一不可):绝不信任智能体直接掌握各类敏感凭证。
  • 凭证隔离: 所有的敏感数据(Secrets)都保存在智能体沙箱外部,每次调用外部服务时,智能体必须向控制端(Warden)发起“请示”并获得授权。
  • 确定性权限约束: 严格限制智能体能够读取的文件范围、获准调用的工具,以及能够访问的白名单网络域(例如限制只能访问 NPM 生态和 Astro 官方文档)。
  • 写入限制与审计: 智能体只被允许在极窄的边界内输出,例如限制其最多只能创建一个 PR,防止其因注入攻击而发起拒绝服务攻击(DDoS)。

目前,该工具已在 Home Assistant 等大型开源项目中进行了实战演练,能够实现诸如“自动解析 Python 堆栈信息并自动关闭非第一方代码引入的 Bug 报告”等在传统启发式规则下无法实现的复杂决策。

Original English And at the same time, how are we going to work together, right? How does collaboration look like in the future? Whoops. Oh well, sorry about that. Yesterday uh, Jeffrey Lit talked about understanding being the bottleneck, and that's very true at a me level. Uh, but my personal understanding was never sufficient for shipping code inside a team, right? Our understanding at an us level can only happen at the end of the process. Um, sorry. Uh, uh, I it can't only happen at the end of the process, uh, when the process happens so much faster. So, going faster means that a small misalignment, uh, can snowball into a ton of wasted work, uh, and that work costs tokens, and tokens cost real money now, so, uh, on top of the time that you're mis spending. So, today I'll give you a quick tour of two prototypes that we're working on at GitHub Next in each of these themes. Agentic Workflows is our take Why is that not there? Oh, I had to click again. Uh, Agentic Workflows is our take on how automations should work in an agentic world, and Ace a prototype that explores what real-time multiplayer software development looks like. So, I'll start by showing off Agentic Workflows, and it requires me doing this. Okay, cool. Uh, this is my personal website, not that interesting. I'm showing it to you. This is like Chekhov's gun, we're going to see it again later. Um, and my personal website is built with this framework called Astro. Astro is a great web framework. The greatest part about it is that they release like 50 things a month, which means that I'm constantly on the upgrade treadmill, and there's a great GitHub product called Dependabot, which notifies me when my stuff is out of date. Um, but the problem is is that when I do these upgrades, I frequently need to make code changes. So, what I really want is a kind of super Dependabot that's always there, automatically looking in the background at my dependencies and figuring out how to upgrade me, including the code changes, the breaking changes. Um, and because I'm lazy, and I like not doing work, um, I used Copilot, uh, to create an agentic workflow, and there's this magic line up top where I supply effectively a skill saying like, "Hey, create an agentic workflow. Here's a document that tells you everything you need to know about that. And then what comes below that is something a lot like a Slack message that I'd send to a junior developer on my team. Like, every day I want you to check if there's a new release, look at the change log, look at the docs, come up with a plan for the upgrade, and then create a PR with the thing and here's the links to the docs. Right, this is like a message that I would send to somebody on my team, go write a playbook. And when I went and created this, it did go and create a playbook. In fact, that's what agentic workflows kind of look like. They look like markdown documents. Like, if GitHub Actions and Copilot had a baby together, and it ran on markdown, this is what it is. So, what does this agentic workflow look like? Well, you know, it's an upgrade checker, it's got my tasks, step one, check for new releases. Again, because it sees my codebase, it was able to infer what it even needs to check and it actually found these specific dependencies. Review the change log and the upgrade guide, apply the upgrade, and then create a pull request. Right, I didn't ask for any of this that explicitly, but it turns out that Copilot is pretty good at sussing out my little three-line message into a full playbook. And then at the top, I've got this special section, this is the what we're calling No, don't collapse it. Oh, man. Scrolling is wonky when you zoom in. This YAML front matter. This is where we stick the guardrails cuz if we're going to be not supervising agents doing things, then we're going to need much stronger guardrails around what they're allowed to do, what they're allowed to read, what they're allowed to write. And where are we going to specify that? And it's not enough to just prompt the agent and be like, "Listen, bro, I don't want you to buy Bitcoin for me ever." That's not enough cuz somebody else can prompt inject the agent and take it in a direction that you don't expect. So, any of the guardrails, if you're prompting the guardrails at the agent, you're effectively letting the fox loose in the henhouse. It's not actually a guard rail. Um, so here, uh, you can see that I'm specifying deterministically like my permissions are read all, what tools am I allowed to use, uh, what network, uh, requests is it allowed to make? It's not allowed to just go to bitcoin.com or whatever. Uh, in fact, it's only allowed to go to some specified set of default websites, the NPM ecosystem cuz it's got to check for like, you know, what's new, GitHub, and of course the Astro docs which I specified in my original prompt. Uh, and I've got this block called safe outputs which is basically saying these are the only things that the agent is allowed to write. And so I'm saying in this case the agent will is allowed to create pull request. Pull request single uh, because I don't want the agent to get prompt injected to create 500 pull requests. That would be a denial of service. Um, or and this is the other thing, I explicitly said you're allowed to do nothing, right? Which sounds silly, but it actually matters because in a world where I have lots of automations, the last thing I want is noise. I don't want the agents denial of servicing me. So, okay, I've created this and I've run it and this is actually my actual automation on my actual personal website. I didn't ask for any of this, but it did a pretty good job of like saying, "Hey, here's the highlights of what you get from going from this version that you're currently on to the version that is the target, right? It's read all of the release notes in the middle. This is normally what I would do as a human. Uh, and it's built me like, you know, sort of like a tailored description. It's figured out there's no breaking changes. It's actually verified this by running and building my project. And because I happen to have this deployed to Cloudflare, um, or whatever, anything with preview deploys, I can click that open and see that nothing has changed in my website, which is exactly what I want, right? Like it's done the upgrade and I see that it still works exactly as it did before. But this was like a minor point release. That doesn't really count. Let's look at a major upgrading change. And actually, I'm lucky that Astro just released Astro 7 because this is actually jumping two major revisions from five to seven. And so, now it's saying like, "Okay, Astro 7 has brought me all of these things. And Astro 6 would have brought me all of that stuff, but I neglected to do the upgrade so I could have a cool demo for you all." And it's found all of the code changes that were broken, and it updated them. It also verified that the build runs. And it also highlighted manual steps that things that I would need to do later. And again, you know, if I go down here and I click on this, I can see, "Hey, still works." So, cool. Now, uh it's just markdown. It's easy to iterate on that markdown, right? If you don't like the way that the automation works, just edit the English. It gets recompiled into an Actions workflow. Like, the markdown is the source code. The YAML is like a compiled artifact. You never look at it. Um but, we've also given you a whole library of Agentic workflows for you to use as a starting point to customize. So, an issue triager. Internally, GitHub has actually used this as the basis for like spiking out our own internal issue triager or for like hunting down N+1 queries in our like monolith or all kinds of things. There's a ton of things that are super helpful there. Repo assist. This is actually a swarm of Agentic workflows that work together to help you maintain your project by finding low-hanging fruit, fixing them, identifying tickets that need nudging or feedback that you need from people who have filed issues, whatever. CI doctor. How many times have you responded to a busted CI run by just running it again? All of us. Anybody who hasn't raised their hand is lying. Uh a million more. Like, you know, goals, sure. Daily team status and repo status. If I want this to go do like homework on the internet, I can. So, this is not just for engineers, this is also for product managers whose job it is to look at information over here and summarize those tickets over there, right? We can start to get everybody involved in automation. That's how you actually get industrial scale. Uh So, uh that's Agentic Workflows. Um the security guardrails, we have sort of four principles that we believe uh everybody should burn into their brains. Uh defense in depth, one layer is never enough. Uh that was always true. Never trust agents with secrets. If an agent can know a secret, that secret, you need to treat it as if it's already been compromised. Uh because you have no idea whether or not somebody's injected the agent to reveal that secret somewhere else. So, if an agent can see the secret, um it's bad. In Agentic Workflows, the secrets are all kept outside of the agent's jail, and when the agent wants to use the secret to call something, it needs to ask the warden, "Hey, mother may I please go talk to that service?" Uh stage and vet all rights, just so that it's auditable, and log everything, just so that it's auditable. Uh and when we give this to existing projects like the Home Assistant project, which is a huge open-source project, um the first uh Agentic Workflow they built was something that looks at every submitted issue, walks the Python stack trace to figure out if the bug is in first-party code or third-party code, closes the issue if it's not their issue, right? That's something that was not possible before AI, not possible with heuristics, uh but is possible now. Agentic Workflows is in public preview today. You can go and kick the tires. So, go ahead, go wild. Uh we actually believe that this is going to be a bigger category than interactive AI because automations that run in the background while you sleep, that's the ballgame.

实时多人在线开发:Ace 框架与智能体协作界面

除了后台自动化,另一个核心主题是团队协同(Collaboration)。过去,规划和审查虽然是团队行为,但真正的“编码”环节往往是开发者孤立完成的。在 AI 时代,开发流程变得极其快速,每一次微小的方向偏离都可能像滚雪球般导致大量无用功,从而浪费昂贵的 Token 和时间成本。为此,我们开发了 Ace —— 一款旨在探索实时多人协作软件开发界面的原型产品。

Ace 的界面直观上类似于团队沟通软件(如 Slack),左侧排列着不同的开发会话(Sessions)。其核心特性包括:

  1. 云端微型虚拟机(Cloud Micro VMs):没有任何代码和环境运行在开发者的本地机器上。每一个会话都是云端代码仓库分支的独立沙箱环境。
  2. 上下文感知与对话驱动编码: 智能体能够读取你与队友在群聊中的所有历史讨论。你可以直接对它说“Ace,做吧”,它就能从长篇累牍、甚至反复讨论修改的对话流中,精准提炼出最终的设计方案并直接实施。
  3. 协同编辑 Markdown 逻辑规划: 当你需要为应用开发新功能(例如添加可选时间范围)时,智能体会生成一份 Markdown 格式的规划文档。团队成员(例如你和你的产品经理或同事)可以在同一份文档上共同编辑、修改规则(如删去“Today”选项,增加“All time”选项),然后吩咐 AI “使这份文档变为现实”。未来的软件开发界面,或许正是这种基于共享文档协同编辑的模式。
  4. 环境感知与团队动态看板: 提供实时的团队看板,展示每一位成员当前的开发焦点与智能体动态,保持团队的高效对齐。
Original English Okay, so let's talk about the collaboration piece. So, this is how we've always built software, right? Because the cost of writing code was so high, uh but that's not true anymore. We would plan and review together, but the building part was done alone. Like, you know, illuminated by the light of my monitor, uh, I would build. But now, none of it is alone, right? Planning isn't before, and review isn't after. We iterate on the direction together, and AI takes a step, and then we iterate more in the direction. So, what's an interface that makes sense for that style of development? I'm only slightly trolling, right? Slack was designed to be better, uh, than email for the average office worker. It was never designed for making software or the needs of everyone involved in that. But, what this is good for is surfacing all the facts that are not in code. Anything that's in code, any fact that's in code, the agents can figure out by reading the code. What's left are the things that are not in code, like political considerations. Like, "Hey, if we do it that way, that VP over there is going to vibe with that direction." Or, like, "We should make it purple because that's their favorite color." Or, "We get a really sweet deal, uh, on infrastructure from Azure. Therefore, we should be building on Azure, not on, uh, GCP or AWS. Whatever." But, the biggest win is the same win that we've already seen over and over, right? I don't email Word documents around anymore. I create and collaborate in the same surface, in the same place. This is coming for code, a trillion percent, right? So, let me show you what we have here. Oops. Here we go. I got to find the tab. All right. Uh, this is Ace. Let's switch to the repository. So, Ace looks an awful lot like Slack, right? And over here on the left, I've got sessions, and I can create new ones. And, you know, so far this kind of looks like every other conductor-like product out there. Um, the difference being is that every one of these is not on my machine. In fact, none of this is running on my machine. It's all micro VMs in the cloud. So, every session is just a branch of my repo checked out to a spot in the cloud. Uh, and I can create them and do stuff in them and talk with my teammates. So, like, uh hey, um uh uh what's your favorite color, right? Uh and meanwhile, I'm going to like install my dependencies. And then when that's done, I'm going to do like uh bond dev. I'm going to run the dev server. Um and here, like, Russ and I are having a discussion, like, are you sure? Maybe maybe green is calmer. Um Oop, nope. I sent that as a terminal command. Good job, me. Um I do not want that as a thing. Great. I'll do it like this. Uh and I can open up my preview. Oops. Give me a preview. I'd like a browser preview. Okay. So, so far, not that different from developing with any sort of like multiplayer tool. And here, I've got this sort of calm hacker news thing. I've just had a whole discussion with my teammate. I don't want to turn around and now like emit those instructions again. Instead, I just want to be like, yo, Ace, do it. Uh and because it sees the entire backscroll of my conversation with my peers, with my team, it's able to act on that uh uh on on that chat history. And if the Wi-Fi was nice, then it would be doing it faster. Um uh you're going to have to trust me on this because I don't have enough time to wait for this. That it's going to just respond to the fact that we had a discussion about colors. And AI is also really good at fishing out that final state. Like, very frequently, what do engineering conversations sound like? They sound like like, hey, we should try it this way. No, wait, I thought of like an edge case. We should actually do it that way. Let's go back to the first idea, right? But instead of me sort of like figuring teasing out that final state from that long conversation, I can just let AI do it and it'll figure it out. So, I don't need to work for the robots. And sometimes we have things that are a lot more um complicated. Like here, I wanted to add selectable time frames to my app. And so, I asked it to make a plan, and that plan comes as a uh uh markdown document. Uh but, this markdown document is not just for me to look at and edit, it's for us to look at and edit together. So, Russ is somewhere uh here in this document, and like, you know, maybe he thinks that we should add an all time, and I'm going to get rid of the today, and here I can again do like uh we've updated the plan, do it. Um Uh uh and it'll just respond to the plan that we've edited together. And as we see now, we're moving to this future where uh more and more of the work that we're doing with AI results in documents like markdown documents in a docs folder that captures sort of the truth, and maybe more and more in the future we're going to be editing those documents as the way that we do development. Like, in order to change something about my application, I'm going to edit a document, and I'm going to tell AI, "Hey, make the document true." So, this shared document editing is not just like, "Oh, a nice to have." Maybe this is actually sort of the uh interface that we like to work in. But, there's also the uh social coding aspect, right? Like, if I'm working with other people on my team. Um remember when that was a thing that was a tagline under the GitHub logo? Um so, uh how can it help me stay up to date with what everybody else on my team is working on? Like, it's not just enough to have like real-time multiplayer, I also want to be ambiently aware of what everybody's going going on about. So, Kristoff is working on Vian tooling. This is actually work that we're doing on Ace, and Maggie wrote this dashboard and hardcoded her name, and so that's why we're looking at Maggie's name. Um and David worked on whatever. All this stuff to help me stay aligned with my team.

重新定义人机关系:攻克其余 95% 的深度开发工作

长久以来,我们都在经历人与智能体关系的微妙反转:我们越擅长向智能体清晰描述我们的目标,它们对我们的实时依赖就越低。随着 AI 模型能力的不断提升,它们甚至能够主动识别出我们描述中定义模糊或未作规范的边界行为(Underspecified Behaviors),并反过来请求人类给予澄清。在需要“搭把手”时,智能体也会呼唤人类加入协作。

一项针对 100 名软件开发者、历时数千小时的纵向追踪研究指出:程序员坐在键盘前打字的时间,仅仅占了其总工作时间的 5%。这意味着,目前几乎所有的代码补全工具都在服务这仅占 5% 的输入环节。

那么,剩下的 95% 呢?——去理解当前系统的逻辑架构、弄清如何使其与新的诉求兼容、洞察团队其他成员的代码改动与意图。这些才是软件开发真正的痛点。Ace 与 Agentic Workflows 想要创造的未来,正是去接管这 95% 的系统探索、背景同步与自动化执行工作。当 AI 能够无缝洞察代码库中的一切时,我们便能在更高的维度上,探索人类与智能体携手开发的工业化工业新范式。

Original English And when I look to the future, I'm starting to think about how do automations surface themselves in this? If I want to talk with my automation, uh there's lots of things that I want to do in this kind of interface, like when an agent wants to tap me on the shoulder and ask me a question, um that I think are very interesting. So, that's a short Ace demo. We're going through this weird inversion of our relationship with the agents. Like, the better that we get at articulating, uh our goals to the agents, the less they need us. Uh, and as the models get better, they're also good at spotting like underspecified behaviors and then asking us to clarify. Uh, and then whenever they need a pair of hands, they can ask us to be the pair of hands. But, either way, the interfaces now have the ability to support the ability of agents to listen to everything and invoke us when they need it. Which is a little funny to think about. It's maybe like sort of we're coming at it from this side and like open claws coming at it from this side, but like we're landing in sort of a similar spot. And I'll close with this thought. Um, for the past few years, AI has helped me to type. But, if you look at the science of the matter, it's only about 5% of the job. Like, this was a longitudinal study conducted on like 100 developers over thousands of hours. Turns out that the hands-on keyboard typing part is 5% of the time. Now, AI has to help me with the other 95%. Where is the system that I want to touch? How does it work today? What do other people think about like how we could mutate it or should mutate it? When AI can discover anything in my code base, like, how do we How do we help scale up all those other things, right? Like, not just the 5%, which is what all the tools have been helping us to do so far. So, that's Ace and that's a genetic workflows. Uh, please, uh, come by and talk to us. Uh, we have, uh, a booth down in the Microsoft booth because we're a Microsoft company. Uh, and you can find us on the socials and get at next.com. So, if any of this resonates and you're interested in it and you want to give it a shot, ACE is going to be in technical preview hopefully later this month and genetic workflows is already out there for you to kick the tires and we'd love to hear from you and how you want to use this. Thank you so much.
📌 文中提及的人物和组织

人物: Idan Gazit

公司/组织: GitHub, Microsoft

产品/模型: Copilot, Dependabot, Astro

关键字: agentic-workflow multiplayer-collaboration software-automation development-tools