YC S26项目Coasty推出计算机操作代理API
速览
Coasty是YC S26批次的新创项目,其API允许开发者构建能够像人类一样操作计算机界面的AI代理。这降低了开发计算机操控型agent的门槛,有望推动自动化办公、软件测试等场景的应用。该API提供标准化的接口,使agent能够执行点击、输入等动作。
AI 深度解读
背景
Coasty 是 YC S26 批次的创业项目,提供一套面向计算机使用代理(computer-use agents)的 API。它的核心思路是让开发者能够以托管机器为运行环境,将自主任务(autonomous tasks)委托给代理,无需自行维护控制循环或管理底层基础设施。Coasty 通过一组分层抽象——从高层的任务运行、工作流,到低层的预测原语——让开发者根据自身需求选择最合适的控制粒度。该项目在 Hacker News 上以 Launch HN 形式发布,目标群体是需要构建或集成计算机自动化代理的团队。
核心内容
Coasty 的 API 设计围绕几个核心概念展开:任务运行(task runs)、工作流(workflows)、机器(machines)以及预测端点(prediction endpoints)。开发者可以从最高层抽象开始,仅在需要更精细控制时降级到低层原语。
认证
所有 API 请求必须通过密钥认证(API-key-authenticated)。四个健康检查探针(health probes)为公开端点,而 webhook 入站使用专用的 HMAC 凭证(Coasty-Signature)。对于 API 密钥操作,推荐使用 X-API-Key 请求头,也支持 Authorization: Bearer <key> 形式。注意:如果同时使用两个头,X-API-Key 为空时会回退到 Bearer 头。常见错误是在 X-API-Key 中直接填入字符串 "Bearer",这会导致返回 401 INVALID_API_KEY。密钥应在 API 密钥页面创建和撤销,并像密码一样对待:保存在服务器端环境变量中,切勿提交到代码或客户端。
运行第一个任务
首先获取测试密钥(sk-coasty-test- 前缀,不会计费,针对模拟 VM 运行,但请求和响应结构与真实密钥一致,X-Credits-Charged 和 usage.cost_cents 始终为 0),然后选择或创建一台机器。通过 POST /v1/runs 发起任务,需提供 machine_id 和 task 描述,以及幂等键(Idempotency-Key)防止重复创建。任务初始状态为 queued,随后代理自动驱动机器执行,记录每一步,最终进入 succeeded、failed、cancelled 或 timed_out 状态。开发者可以轮询、订阅事件流,或接收签名 webhook,无需自行执行每次预测。
任务运行详解
一个 run 将任务和机器交给代理,在 Coasty 侧自动执行。代理自主循环,自我验证结果(pass/fail),遇到障碍时可暂停等待人类干预(on_awaiting_human: "pause")。每完成一步收费 $0.05(从美元 API 钱包扣除),旧版 v1 引擎每步 $0.08。创建 run 的响应包含 agent.run 对象,状态为 queued,以及一次性 webhook_secret(需保存以验证 webhook)。支持 cua_version 参数(v1/v3/v4/v5,默认为 v5),max_steps 限制最大步数。
流式事件
GET /v1/runs/{id}/events 返回 Server-Sent Events(SSE)流,可实时跟踪任务执行过程。每个事件包含 type 和数字 id(序列号)。如果连接断开,可以重连并通过 Last-Event-ID 头或 ?after= 查询参数回放丢失的事件。流会在 done 事件后关闭。
人类接管
当代理遇到需要人类参与的步骤(如验证码、一次性代码、判断决策)且 on_awaiting_human 设置为 pause 时,任务状态变为 awaiting_human,并发出 awaiting_human 事件(含原因)。人类在同一机器会话中完成阻塞步骤后,通过 POST /v1/runs/{id}/resume 将控制权交回,可附带可选备注。resume 仅在状态为 awaiting_human 时有效。
关键要点
- 分层抽象:Coasty 提供从高层任务运行、工作流到低层预测原语的完整堆栈,允许开发者按需选择控制粒度。
- 认证方式:推荐使用
X-API-Key头,也支持Authorization: Bearer;需注意不要将文字 "Bearer" 填入X-API-Key头。 - 测试密钥:
sk-coasty-test-前缀密钥不会计费,但请求/响应结构与真实密钥一致,可用于 CI 环境。 - 任务运行:通过 POST
/v1/runs创建,必须提供machine_id和task,可选cua_version、max_steps、on_awaiting_human等参数;需使用幂等键防止重复。 - 状态机:任务状态从
queued开始,经过running,可能进入awaiting_human,最终终止于succeeded、failed、cancelled或timed_out;终止状态不可变。 - 计费:每完成一步收费 $0.05(v1 引擎 $0.08/步),从美元 API 钱包扣除。
- 流式事件:SSE 流支持实时追踪和断线重连,通过
Last-Event-ID回放丢失事件。 - 人类接管:代理遇到障碍时可暂停等待人类,人类完成后通过
resume端点恢复任务。 - Webhook 支持:创建任务时可选
webhook_url,完成后会发送签名 webhook;webhook_secret仅创建时返回一次,需妥善保存。 - 权限范围:运行任务需要
runs:read和runs:write作用域,新密钥默认授予。
意义与影响
Coasty 将计算机使用代理(computer-use agents)的部署复杂性抽象为简单的 API 调用,使开发者无需自行管理浏览器自动化、屏幕截图、坐标映射等基础操作。这种“代理即服务”模式降低了构建自动化工作流的门槛,尤其适合需要处理跨站点操作、表单填写、数据提取等场景的团队。通过提供可选的预测原语(sessions、predict、grounding、parse),Coasty 在保留灵活性的同时,让大多数用户能从高层抽象直接受益。此外,测试密钥和模拟 VM 的引入让 CI/CD 集成变得安全可靠。从行业角度看,Coasty 代表着 AI 代理领域从“框架”向“托管服务”的演进趋势,可能加速企业级计算机
