Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

168 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简体中文 · English

cleancode

cleancode

像搭积木一样,DIY 你的 AI 开发工作流。

组合你的工具,带上你的 Agent,运行属于你的开发现场。

Compose your tools. Bring your agents. Run your workflow.

MIT License Download Preview macOS, Windows and Linux 33 Coding Agent Providers Visual and executable workflows

下载 CleanCode Preview(macOS / Windows / Linux)

cleancode 使用 Agent 搭建并运行项目启动工作流


你的开发方式不应该被某一个 Agent、IDE 或固定脚本定义。

cleancode 是一个画布优先、本地优先的可执行开发工作空间。 你可以把终端、服务、依赖关系、Git 分支工作区和喜欢的 Coding Agent 组合到同一个开发现场,再按自己的方式运行它、调整它、继续它。

feature/auth
├── Agent:Codex
└── Workflow
    ├── Build shared
    └── API server ──> Web app
                   └─> Tests

画布不是一张静态流程图。你搭出来的工作流拥有真实命令、启动顺序、就绪条件、运行状态和作用范围。

按你的方式搭建

从一块终端开始,也可以搭出一整套开发工作台:

  • 用终端积木承载构建、测试、开发服务器和日常命令。
  • 把有限任务与长驻服务配置成不同的执行模式。
  • 用终端组合整理属于同一部分的工具。
  • 用有向连接声明真实依赖,而不只是画一条装饰线。
  • 在同一张画布上放置多个固定 Provider 的 Agent 控制台。
  • 保存每个分支工作区自己的画布、终端定义和 Agent 身份。

你的工具、你的 Agent、你的工作流。

带上你喜欢的 Agent

换 Agent,不必换工作方式。 cleancode 让不同 Coding Agent 进入同一个可见开发现场;终端、服务、分支和运行状态不再围绕某个 Provider 重新组织。

cleancode 内建 33 个 Coding Agent Provider。它们都可以进入同一个可见、可执行的开发世界,与终端、服务、分支和运行状态一起工作。

Claude Code Codex OpenCode Gemini Cursor GitHub Copilot OpenClaw Hermes Pi Cline Goose Aider Continue Charm Kilocode Qwen Code Kimi Amp Grok Droid Antigravity Kiro Mistral Vibe MiMo Code OpenClaude OMP Devin Auggie Codebuff Autohand Code Command Code Ante Rovo Dev

33 个主流 Coding Agent,全部可以在 cleancode 中拥有一个真正的开发现场。

一个分支,一个完整工作面

为需求创建分支工作区后,cleancode 用独立 Git worktree 隔离它的目录,并让画布、终端、运行作用域和 Agent 会话跟随工作区一起切换。

你可以同时推进 feature/authfix/searchexperiment/new-ui,而不必反复清空终端、确认工作目录或提醒 Agent“我们已经换分支了”。

画出来,也运行起来

连接代表真实依赖,配置代表真实执行意图。cleancode 会把当前终端图转换成一次不可变的执行计划:

  • 没有上游的任务可以并行启动,下游等待全部直接依赖完成或就绪。
  • 有限任务按真实退出码判断成功,长驻服务按输出文本或 TCP 监听判断就绪。
  • 服务可以声明固定、优选或自动端口,由运行时分配并注入最终端点。
  • 上游失败会明确阻塞后代;停止时按反向依赖顺序清理活动进程。

节点状态、失败原因和实际访问地址都来自运行时。画布展示发生了什么,但不会用静态标签冒充事实。

让 Agent 参与搭建

支持原生 cleancode MCP 的 Agent 可以通过稳定工具理解和整理同一个工作空间,而不是直接修改画布内部数据。当前工具覆盖:

  • 读取画布、终端积木、连接和执行计划。
  • 创建、更新、删除和连接终端积木。
  • 验证依赖并检查启动计划。
  • 对齐、分布和自动整理终端布局。

删除积木、解散组合和断开依赖需要在 cleancode 界面中审批;启动与停止工作流仍由人控制。这让 Agent 能够参与搭建,同时让改变开发现场的动作保持可见。

从一个需求开始

  1. 为需求创建独立分支工作区。
  2. 加入你常用的 Coding Agent。
  3. 把构建、测试、开发服务器和辅助命令做成终端积木。
  4. 配置任务、服务、端口和依赖关系。
  5. 从任意终端运行它和全部后代,在同一张画布上查看结果。

快速开始

下载 Preview

GitHub Releases 下载对应平台的安装包:

  • macOS:Universal DMG/ZIP,同时支持 Apple Silicon 和 Intel。
  • Windows:x64 NSIS 安装程序。
  • Linux:x64 AppImage/DEB。

Warning

当前 Preview 尚未使用正式开发者证书签名。请只从本仓库的 GitHub Releases 下载,并先使用 同一 Release 中的 SHA256SUMS.txt 核对安装包。

macOS 会因为应用尚未完成 Developer ID 签名和 Apple notarization 而阻止首次打开。把 CleanCode.app 拖入 /Applications,确认安装包来源和 SHA-256 校验值无误后,可以只为这个 应用移除下载隔离属性并启动:

xattr -dr com.apple.quarantine /Applications/CleanCode.app
open /Applications/CleanCode.app

这条命令会绕过该应用的首次 Gatekeeper 检查。不要把目标路径替换为 /Applications、下载目录或 用户目录等宽泛范围。也可以按照 Apple 官方说明,在“系统设置 → 隐私与安全性”中选择 “仍要打开”。

环境要求

  • Node.js >= 24
  • pnpm >= 10
  • macOS、Windows 或 Linux

本地运行

git clone https://github.com/chen-985211/cleancode.git
cd cleancode
pnpm install
pnpm dev

常用检查

pnpm typecheck
pnpm test
pnpm pre-commit

本地打包

# 当前平台的 unpacked 应用,用于本地验证
pnpm package

# 当前平台的发行安装包
pnpm dist

# 也可以在对应操作系统上显式选择平台
pnpm dist:mac
pnpm dist:win
pnpm dist:linux

产物统一写入 release/。macOS 生成 Universal DMG/ZIP,Windows 生成 x64 NSIS 安装程序,Linux 生成 x64 AppImage/DEB。应用的用户可见名称为 CleanCode,内部包名仍为 cleancode

推送与 package.json 版本一致的 v* tag 后,GitHub Actions 会在三个目标系统分别构建、 运行打包后终端冒烟测试,并创建公开的 Preview Pre-release。Preview 尚未使用正式开发者证书: macOS 使用 ad-hoc 签名且未 notarize,Windows 安装程序未签名,因此操作系统可能显示安全警告。 正式签名完成前,这些产物只作为公开测试版本。

当前边界

cleancode 正在积极开发,当前版本需要注意:

  • 画布目前只提供终端积木与终端组合;Preview、HTTP、Test、File 和 Plugin 等积木仍在路线图中。
  • Agent 可以编排和检查终端依赖,但暂不能通过 MCP 启动、查询或停止工作流。
  • 应用退出后,活动工作流和 Agent 终端进程不会自动继续运行;可恢复的终端与上游对话会按各自能力重新连接。
  • 插件扩展体系尚未公开,暂不承诺第三方插件兼容性。
  • GitHub Releases 中的预构建安装包当前属于未正式签名的 Preview,不是已签名正式发行版。

设计原则

  • 画布不是事实来源。 它只投影领域模型与运行状态。
  • 人和 Agent 共享用例。 Agent 不绕过应用边界直接操纵内部实现。
  • 工作区隔离优先。 分支、目录、端口和会话都必须有明确归属。
  • 危险操作必须可见。 改变进程、文件或工作区状态的能力需要审批和审计。
  • 失败必须能够解释。 计划、就绪、端点和错误都应回到用户可理解的对象上。

架构和领域边界详见 架构文档上下文地图

文档

参与贡献

欢迎提交 Issue、讨论和 Pull Request。开始前请阅读 贡献指南开发协作规范

许可证

MIT


加入 CleanCode 社区

交流工作流搭建、Agent 使用和开发体验,也欢迎分享反馈与建议。

扫码加入 CleanCode QQ 群(群号:186885114)

QQ 群:186885114
打开 QQ 扫码,或搜索群号加入

About

Local-first visual workspace for executable AI coding workflows — compose terminals, Git worktrees, and coding agents on one canvas.

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages