Files
agent-radar/data/projects/openwork.yaml
T
gitea-publish e5cdb1801e track: 新增 OpenWork / Orca / Maka 三项目,样本达到 4 个
样本
- openwork (different-ai/openwork) 23.2k★ 能力分发层,DCO + evals + worlds
- orca (stablyai/orca) 58.8k★ 并行编排外壳,5000 issue 实为团队自开任务板
- maka (apache/maka) 4.4k★ 执行记录层,Apache 孵化但无正式 release

档案
- 三份五维档案填完,risk.claim_vs_reality 均已核实到证据
- ipollowork 象限坐标从占位 9/9/9/9 校准为 8/7/7/7(与新样本同一标尺)

文章
- 新增横评文《四个 Agent 工作台的路线分野:把「多引擎中立」拆开看》(emlog id=99)
- 总纲文回填四项目矩阵 + 双视图象限图 (emlog id=98)

镜像
- gitinbox/maka 已推送(public,source-only 快照 12 MB)
- openwork(291MB) / orca(671MB) 受 50KB/s 带宽约束,档案标 mode: pending

规则
- license-tiers.yaml 新增「目录切分许可」降级流程(OpenWork 判例:
  排除 ee/ 后为纯 MIT → public,完整镜像 → private)
- registry.yaml openwork 可见性改 public + mirror_excludes: ["ee/"]

脚本修复
- _common.py 新增 upsert_block:手工整块覆盖 ecosystem 删掉 metrics 时能自愈
- mirror_sync.sh:SOURCE_ONLY 未初始化(set -u 下偶发炸);
  浅仓推送被服务端拒绝 → 自动 --unshallow,失败降级快照;
  量体积前先 repack(此前新 commit 全是 loose object,恒打印 0 MB)
- build_matrix.py:成熟度长文本移出表格(新增 maturity_level 短标签);
  象限图标签靠右时翻转到左侧防溢出;SVG 加 max-width 防窄屏溢出;
  文章索引改为自动生成(原先手抄,横评文发了索引里却没有)
- publish_emlog.py:ID 回写按「有无同名档案」分流,
  00-* 跨项目文章落到 articles/<id>.meta.yaml(此前 ID 无处可写)
2026-09-01 19:27:21 +08:00

227 lines
10 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# openwork · 项目档案
# 生成于 2026-09-01 · 由 scripts/new_project.py 从 schema 生成
# 人工补完重点:business / scenario / tech / risk.claim_vs_reality / verdict
# 字段规范见 schema/project.schema.yaml
id: openwork
name: "openwork"
repo: "different-ai/openwork"
homepage: "https://openworklabs.com"
added_at: "2026-09-01"
status: active
identity:
tagline: "The open-source alternative to Claude Cowork (powered by opencode)"
vendor: "Different AI, Inc."
vendor_type: "vendor"
region: "美国(YC 背书)"
first_seen: "2026-01-14"
business:
positioning: |-
站在「能力分发层」,不争桌面入口。核心资产是 OpenWork MCP 与 Den 控制面——
把 skills / MCP / 连接服务做成可跨工具、跨人、跨机器复用的组织级能力包。
target_users:
- 已在使用 Codex / Claude Code / Cursor 且不想换工具的开发者
- 需要统一管控 agent 能力的中大型组织
- 想把自己搭好的工作流分发给同事或朋友的团队
monetization: |-
Den 订阅(组织控制面)。免费额度写得很明确:
5 人以下组织的非 Enterprise 功能全免、任意规模 30 天评估、开发测试永久免费。
license:
spdx: "NOASSERTION"
name: "目录切分许可(GitLab 式):ee/ 之外为 MIT;ee/ 为 OpenWork EE License"
openness: L3
redistributable: false
key_restrictions:
- ee/ 目录(Den 控制面、MCP 网关、推理)生产使用需有效订阅;5 人以下组织在排除 Enterprise 功能后免费
- 每个 ee/ 版本公开发布满两年后,自动追加 MIT 授权(Grant of Future License)
- 客户端侧资源(image / font / CSS / 编译产出的 JS)始终为 MIT
- 不得移除版权与许可声明;不授予商标使用权
- 更早版本仍受原 FSL-1.1-MIT 约束,不自动升级到新许可
moat: |-
组织侧的能力分发与治理(谁能用什么模型、谁能拿到什么 skill),
以及「一次创建、处处复用」带来的工作流网络效应。
competitive_risk: |-
最容易被 Anthropic / OpenAI 官方的 skills 市场与组织管理后台正面取代——
OpenWork 的价值恰恰建立在「官方还没做好跨工具能力分发」这个时间窗口上。
scenario:
primary:
- 把一套 skills + MCP + Google Workspace / Microsoft 365 连接,同时挂给 Codex、Claude Code、Cursor
- 组织统一发布能力、配置模型配额与访问权限
- 桌面端作为专注工作区(可选,非必需)
typical_use_cases:
- 团队写好一套内部 skill,通过 Den 发布到组织,成员在各自惯用的 agent 里调 search_capabilities 直接用
- 管理员限制部分成员只能使用指定 model provider,并统一配置共享连接
- 个人把工作流分享给朋友,对方装一个 MCP 就能用
industries:
- 软件研发
- 企业 IT 与知识工作流
interaction_mode:
- MCP 远程服务
- 桌面应用(可选)
- 浏览器登录授权
human_in_the_loop: |-
能力调用需人工在浏览器登录并选择组织;企业侧由管理员通过策略管控。
deliverables:
- workflow
- skill-package
- capability
tech:
form_factor: MCP 远程服务 + 可选桌面应用 + Web 控制面
stack:
- Electron
- React
- TypeScript
- Node.js 24
- pnpm
- MCP
engine_abstraction:
supported:
- Codex
- Claude Code
- Cursor
- OpenCode
- ChatGPT
- 任意 MCP client
mechanism: |-
「反向注入」:不做引擎抽象层,而是把自己做成 MCP server 让各引擎来连。
对外只暴露两个工具——search_capabilities 与 execute_capability。
abstraction_layer: OpenWork MCP(能力面,不是执行面)
depth_notes: |-
接入「对等且都浅」:所有引擎都以同一个 MCP 客户端身份接入,
拿到的是能力调用,不是执行控制——OpenWork 不接管 agent 的执行循环、
不负责上下文管理、不做权限回调。
真正深度绑定的是 OpenCode:仓库描述即写 powered by opencode,
桌面端属 OpenCode 生态,其余引擎只是 MCP 外挂。
这与 iPolloWork 的「Codex 仅 MCP 控制面」是同一个问题的两种解法:
iPolloWork 把 MCP 当补丁(主体是桌面),OpenWork 把 MCP 当主体(桌面是可选)。
extension_system:
skills: |-
一等公民:可发布、可分配到组织/团队/个人;支持导入 Agent Plugins
与 Anthropic 兼容插件并转为 OpenWork MCP 能力。
plugins: 通过 marketplace 发布与分配
mcp: |-
自身即以 MCP server 形态对外提供服务(https://api.openworklabs.com/mcp/agent),
同时也消费下游 MCP 连接。
model_binding: Den 侧可统一配置与配额控制 model provider;桌面 app 本身 BYO
local_first: true
multi_agent: 未强调多 agent 编排,重心是能力的共享与治理
permission_sandbox: |-
组织级管控:桌面策略下发、限制本地模型访问、控制可用 app 版本、
成员与团队的访问控制。
observability: |-
Den 提供推理配额管控与访问审计;
桌面 app 侧未见 agent 执行轨迹的记录设计——它观测的是「谁用了什么能力」,
不是「agent 怎么把事做完的」。
ecosystem:
community: |-
YC 背书,23k star。贡献门槛是四个里最高的:
强制 DCO sign-off(每个 commit 都要 Signed-off-by),
ee/ 目录的改动还需额外 CLA。
standards:
- MCP
notable_events:
- 2026-01-14 建仓
- 早期版本采用 FSL-1.1-MIT,后改为 MIT + EE 目录切分许可
- ee/ 采用两年自动转 MIT 的 Grant of Future License 机制
- 2026-09-01 达 23.2k star、版本 v0.18.40
metrics:
stars: 23253
forks: 2307
open_issues: 414
subscribers: 89
created_at: 2026-01-14
pushed_at: 2026-09-01
size_kb: 298398
languages: {TypeScript: 89.9, JavaScript: 6.7, MDX: 1.2, CSS: 0.9, Shell: 0.6, Swift: 0.5}
latest_release: v0.18.40
release_cadence: 约 1 天/版本
data_date: 2026-09-01
stale: false
risk:
maturity_level: "0.x 活跃"
license_risk: |-
整体 SPDX 为 NOASSERTION,但**排除 ee/ 目录后是纯 MIT,可以公开镜像**。
若完整镜像(含 ee/)则必须私有——EE License 明确要求生产使用需订阅,
且禁止未经授权的复制与再分发。
对实操的影响很小:5 人以下组织免费、30 天评估免费、开发测试免费,
个人与小团队几乎不会触发付费条件。
vendor_lockin: |-
锁定在 Den 控制面与能力包格式。一旦组织把内部 skills 都发布到 Den,
迁移成本取决于是否有导出路径——README 未说明。
claim_vs_reality:
- claim: |-
「Claude Cowork 的开源替代品」
actual: |-
形态完全不同。Cowork 是桌面操控型 agent(直接操作你的电脑完成工作);
OpenWork 是能力分发型 MCP 层,桌面 app 被明确定位为可选——
README 原文「The desktop app is there when you want a dedicated
workspace, but it is not required」。
它替代的是 Cowork 唤起的「能力复用」诉求,不是 Cowork 本身。
source: README 开篇与「Use OpenWork from any agent」段
- claim: |-
跨 Codex / Claude Code / Cursor / OpenCode 多引擎通用
actual: |-
对 OpenCode 是原生的(仓库描述 powered by opencode,桌面端属其生态);
对其余引擎只通过自己暴露的两个 MCP 工具对接。
这是能力调用面,不是引擎执行面——OpenWork 不接管这些引擎的执行循环、
上下文与权限。对外宣称的「跨引擎」与内部实际的主从关系存在落差。
source: README「It exposes two tools」段;仓库 description「powered by opencode」
- claim: |-
free, open-source(免费开源)
actual: |-
需要分目录看:ee/ 之外确实 MIT 且免费;但 ee/(Den 组织控制面、
MCP 网关、推理)属 source-available,生产使用需付费订阅,
只有 5 人以下组织、30 天评估、开发测试三种情形豁免。
个人免费,团队与企业要付费。
source: README Licensing 段 + ee/LICENSE 原文 72 行
- claim: |-
(无明确宣称,但 SPDX 为 NOASSERTION,易被误读为「不够开源」)
actual: |-
恰恰相反——它是四个项目里工程治理最规范的:强制 DCO sign-off、
ee/ 需额外 CLA、evals/ 目录放可执行测试规格并要求 PR 附测试证据、
worlds/ 放声明式的开发与测试环境定义。
NOASSERTION 只因根目录 LICENSE 是混合声明文件,不代表开放度低。
source: README「Getting started (contributors)」与「Sending a pull request」段
maturity: |-
工程成熟度最高:有可执行测试规格(evals/)、声明式环境(worlds/)、
明确的贡献契约与许可边界。但仍处 0.x 主版本(v0.18.40),
API 与数据格式可能变动。
chart:
form_depth: 5 # 桌面只是可选壳,主体是 MCP 能力层
engine_neutral: 6 # 接得住 4+ 引擎,但都只在能力面
local_first_score: 6 # 可本地跑,但核心服务是云端 MCP
deliverable_depth: 5 # 交付工作流与能力包,不止代码
verdict:
one_liner: 把「能力」而不是「桌面」做成产品——工程治理最好的一个,但它和自称要替代的东西不是一个物种。
who_should_use: |-
已固定在某款 agent 上、只想让团队能力跨工具复用的开发者;
需要统一管控 agent 能力与模型配额的组织 IT。
who_should_not: |-
想要一个开箱即用的桌面 agent 工作台的人;
以为拿到的是完整 Cowork 平替的人。
mirror:
gitea_repo: "gitinbox/openwork"
visibility: public
upstream: "https://github.com/different-ai/openwork"
last_sync: ""
mode: pending
sync_note: "暂未镜像。仓库 291 MB,按本机到 GitHub 实测 50 KB/s 计算需 1.6 小时以上,且 git clone 无断点续传。许可证为目录切分(ee/ 之外 MIT,ee/ 为 EE License)——若后续镜像,排除 ee/ 后为纯 MIT,可公开;完整镜像则必须私有。"
article:
emlog_id: 0 # emlog 文章 ID,发布后回写
published_at: ""
url: ""