显示
从任何编码代理共享会话数据 .
关于
• 妇女
安装
• 妇女
会话格式
• 妇女
支助代理人
• 妇女
文档
关于
从任何代理编码工具中捕获 AI 代理会话, 作为您仓库历史的一部分, 并在代码审查时引用它们 .
如何运作
- 全球钩子 在每个代理配置目录中初始化.
- 随着代理工作,每个事件(快感,工具呼叫,响应)都被捕获 到你的货柜外的一家中央商店.
- 在每一个转弯边界, 转弯的事件被写成
.sessions/作为 新JSONL文件——每转一圈,在一个会话目录内. 文件已经 所以捕捉只会增加你的工作树. - Repo 在代理更改其中的文件和会话之前一无所获 横跨数个重担的字写在它所碰到的每个重担上.
安装
[注] 现在,只支持MacOS/Linux操作系统.
原生安装( 建议 ):
curl https://assert.dev/install -fsS | bash
乡人:
brew install assert-labs/tap/assert
国家预防机制:
npm install -g @assertlabs/cli
资料来源:
git clone https://github.com/Assert-Labs/cli.git
cd cli
pnpm install
pnpm build
npm install -g .
初始化钩子
# Initialize hooks for all supported agents
assert init
恢复您的代理( 或重新装入其插件) assert init 所以它会恢复
新安装的钩子.
安装命令不重要. assert init 安装钩子
支持的特工——包括你尚未安装的特工——进入该特工的
标准插件目录。 您安装的代理 待会 自动发现钩子
在它的第一跑步, 不需要再动。 你还可以重新运行 assert init 任意
刷新钩子的时间(例如升级后坚持,或拾取代理
),或 assert init <agent> 只能装一个.
所需资源
- macOS 或 Linux, x64 或 arm64( 尚未建立 Windows 或 Alpine/ musl )
git可用在您的路径上 —— CLI 弹壳在运行时显示- 如果通过国家预防机制或从来源安装:
Node.js 18 or later
会话格式
会话是JSONL:每行一次JSON事件,无论哪个都用一个计划
特工制造出来的 每个事件都带有 type页:1 sessionId,以及一个ISO
timestamp。 。 。 .
Claude Code读过一个文件
Read {file_path}打开代码 read {filePath},皮带 read {path},以及
编码器编辑方式, 将整个补丁块通过下面 command。每个代理的适配器
确定在捕捉时间, 所以每一个 tool_call 带克南克
action 与工具的自有名称并列 :
{
"type": "tool_call",
"timestamp": "2026-07-20T10:00:03.000Z",
"sessionId": "…",
"turnId": "…",
"toolCallId": "…",
"toolName": "apply_patch", // the agent's name for the tool
"action": {
// the canonical, cross-agent view
"kind": "edit",
"paths": ["src/a.ts"], // repo-relative, POSIX
},
"input": { "command": "*** Begin Patch…" }, // the agent's raw payload
}
action.kind 这是其中之一 read, (中文(简体) ), edit, (中文(简体) ), write, (中文(简体) ), delete, (中文(简体) ), search, (中文(简体) ), web, (中文(简体) ),
command, (中文(简体) ), task, (中文(简体) ), todo,或 other,与 paths, (中文(简体) ), command, (中文(简体) ), query,以及
url 携带细节。 适配器无法识别的工具(新工具)
内置, MCP 工具)报告为 other 而不是猜测.
读取 action; 处理 toolName 作为显示标签和 input 作为调试
细节. @assertlabs/cli/core 曝光情况 parseSession(),该返回
有链接的转折和提示的模型(并填写) action 用于记录
在它存在之前).
支助代理人
| 探员 | 插件位置 | |
|---|---|---|
| 克劳德代码 | ~/.claude/skills/assert/ |
|
| 代码 | ~/.codex/config.toml |
|
| 光标 | ~/.cursor/plugins/local/assert/ |
|
| 打开代码 | ~/.config/opencode/plugins/assert.ts |
|
| Pi | ~/.pi/agent/extensions/assert.ts |
|
- 代码支持需要 现代代码 CLI (用钩子搭建的锈; 遗产)
@openai/codex(单位:千美元)0.1.x没有钩子支撑,而且assert init当它只找到这个版本时警告. - 如果您想要为特定代理添加支持,请查看 捐款额 并看看是否很快会增加这个代理 问题 财务报告和审定财务报表 拖动请求。 。 。 .
图标
assert init [agent] # Initialize hooks globally (all agents if none specified)
assert sessions # List sessions in current directory (--all for central storage)
assert show <session-id> # Show session details
assert blame <file> # Show line-by-line agent attribution (like git blame)
# [--json | --ndjson] [--range <start>:<end>]
assert blame --diff <a>..<b> # Attribute only a diff's added lines (PR review)
assert trace [ref] # Export agent-trace attribution for a revision (default HEAD)
assert status # Show current status
assert private # Keep capturing, but stop writing sessions into this repo
assert public # Resume writing sessions into this repo (default)
assert sync # Publish local-only sessions into the repo + rebuild blame index
assert cleanup # Mark stale still-open sessions ended (default idle > 24h; --hours <n>)
assert redact <target> # Redact current-turn, last-tool-input, or last-tool-output
assert disable # Pause capture (hooks stay installed)
assert enable # Resume capture
assert help # Show help
控制捕获
会话数据被写入 repo 中 .sessions/ 当代理工作,所以它
出现于 git status 像任何其他文件一样,你亲自表演并投入.
- 跳过文件 : 添加一个
.assertignore到 repo 根( gitignore 样式) 模式,例如:.dist/, (中文(简体) ),*.log) (中文(简体) ). 只触摸被忽略路径的更改不会 触发抓取或出现在会话数据中. - 持续关闭 :
assert disable暂停抓取( 停止) )直到运行assert enable。 。 。 .assert status显示当前 状态. - 关闭一个会话 : 设定
ASSERT_DISABLE=1在环境中,你 探员进来了. - 保留本地会话 :
assert private继续捕捉到中央商店 但是不要写到这回波.sessions/· ;assert public(默认) 简历.assert sync将任何本地会话发布到 repo 和 重建指责索引——在切换分行后或公开后方便.
代理追踪
抓取会话可导出为 代理追踪
记录——AI代码归属的开放标准
(单位:千美元)光谱参考) (中文(简体) ). assert trace
产生符合性 TraceRecord 从您承诺的届会开始的修订
数据(将行划入贡献模型),因此,任何工具都可以消耗
属性 :
assert trace # agent-trace record for HEAD
assert trace <ref> # for a specific commit
许可证
此寄存器根据 MIT 许可证