条款
Claude Code会话的最小、短暂的笔记伴侣。
为什么是条款?
在Claude Code会话期间,您会积累草稿上下文:做出的决定、要记住的警告、要跟踪的TODO。这个上下文存在于你的脑海中,或者埋在终端输出中。Clause为它提供了一个可见的、结构化的家,你和克劳德都可以实时读写。
它做什么
Clause是一个浮动的草稿栏,位于您的终端旁边。Claude Code在会话期间通过MCP工具向其推送笔记、待办事项和警告。您也可以直接添加自己的笔记。当您工作时,所有内容都会在浮动面板中保持可见,并在会话结束时消失。
运作原理
Clause使用了一个双流程架构:
clause-mcp:Claude Code生成的CLI二进制文件作为MCP服务器(stdio传输)Clause.app:管理和显示注释的SwiftUI浮动窗口- 两个进程通过Unix域套接字进行通信
~/.clause/clause.sock
克劳德代码生成 clause-mcp,它连接到跑步 Clause.app 例子所有MCP工具调用都通过套接字实时转发。
MCP工具
| 工具 | 说明 |
|---|---|
set_session | 设置当前会话名称和上下文 |
add_note | 在面板中添加注释、待办事项或警告 |
list_notes | 列出当前会话中的所有笔记 |
edit_note | 按ID更新现有笔记 |
delete_note | 按ID删除注释 |
clear_notes | 清除当前会话的所有笔记 |
需求
- macOS 14+(索诺玛)
- Xcode 16+
- Swift 6
快速开始
git clone https://github.com/ceaksan/clause.git
cd clause
brew install xcodegen && xcodegen generate
open Clause.xcodeproj构建并运行 条款 在Xcode中创建scheme,然后添加 clause-mcp 到您的Claude代码配置:
{
"mcpServers": {
"clause": {
"command": "/path/to/Clause.app/Contents/MacOS/clause-mcp"
}
}
}替换 /path/to/Clause.app 使用构建的应用程序包的实际路径。
建筑
xcodebuild -scheme Clause -configuration Debug build
xcodebuild -scheme ClauseMCP -configuration Debug build测试
xcodebuild test -scheme Clause -destination 'platform=macOS'
xcodebuild test -scheme ClauseShared -destination 'platform=macOS'建筑
看 architecture.md 了解完整的技术细节。
路线图
- \[x\] 里程碑1:CLI MCP服务器+浮动窗口+双向IPC
- \[\]里程碑2:
- 全局热键(Cmd+Shift+N)用于捕获剪贴板内容作为注释 - 多会话选项卡(每个Claude Code会话都有自己的选项卡) - 会话清理(自动删除旧JSON文件) - 使用回退UI进行可访问性权限处理 - 固定/取消固定浮动窗口(已内置切换) - 用户界面中的注释搜索和过滤 - completed 过滤器 list_notes 工具
- \[\]里程碑3:分发(DMG、自制木桶、代码签名)
技术栈
Swift 6、SwiftUI、AppKit、Network.framework、, modelcontextprotocol/swift-sdk
作者
许可证
麻省理工学院
