大模型应用
用代码切片把函数/类级分析任务安全委派给小模型
当需要把函数、类、调用者、被调用者、调用路径或入口点等聚焦代码任务交给受限或本地模型,而不暴露整个仓库时,用 Trailmark 生成有界切片包再委派。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
用代码切片把函数/类级分析任务安全委派给特定
解决思路
- 把 worker 任务定义得具体且可独立校验:从用户请求推断出精确的符号或行范围;若名称有歧义,先运行一次 slicer 展示候选 ID,依据证据选择,绝不直接取第一个匹配。
- 按问题选择模式与深度:解释或审查单个单元用 `neighborhood` 深度 1;谁可达某 sink 用 `upstream` 深度 2-4;某入口能触发什么行为用 `downstream` 深度 2-4;一个函数如何到达另一个用 `path --peer <id>` 深度 10-20;哪个公共入口点可达目标用 `entrypoint` 深度 10-20。
- 当大单元只有部分相关时使用 `--line-range FILE:START-END`,行范围路径必须相对于 target root。
- 用脚本构建切片包:`uv run "{baseDir}/scripts/build_slice_packet.py" --target-dir "{targetDir}" --symbol 'exact-node-id' --mode neighborhood --depth 1 --budget-tokens 8192 --language auto --format json`;若 `{baseDir}` 占位符未被替换,改用 `"${CLAUDE_SKILL_DIR}/scripts/build_slice_packet.py"`。
- 该 PEP 723 脚本需要 Python 3.12+ 并通过 `uv` 解析 Trailmark 0.5.x;若执行失败就报告错误,不要用手选源码或无界仓库转储替代。
- 委派前校验:`budget.used_estimated_tokens <= budget.limit_estimated_tokens`;每个切片都在 target root 内且有有效行范围;包中包含预期锚点与模式;遗漏和不确定边对任务可接受。
- 注意 8K 默认只限制估算的渲染包大小,不保证 worker 完整提示能放进模型上下文窗口:为任务、系统/环境上下文和输出预留容量,必要时降低包上限。
- 通过宿主的 subagent 机制和用户配置的 worker/model 选择器委派;宿主支持插件 agent 时优先用 `trailmark:code-slice-worker`(默认 Haiku,无读仓库或修改工具);不要声称 Claude 的 `model` 字段会路由到任意本地运行时。
- 只发送三样东西:具体任务、脚本原样输出的完整包、要求返回 worker JSON 契约的请求;包 stdout 必须逐字节传递,不要重打、总结、重排或重新序列化。
- 不要故意发送对话历史、架构说明、预期结论或仓库工具;即使任务要求改代码,也把 worker 当作只读。
- 校验响应:拒绝格式错误的输出,以及引用文件/范围不在包中的声明;把 `uncertain` 图边当作假设而非已确立的调用。
- 对每个提议的编辑:确认其文件与原始范围在包中;以协调者身份重读当前受影响单元及相关测试/调用者;仅在用户请求授权改源码时应用;运行相称的测试与检查,绝不轻信 worker 声称的结果。
- 若 worker 返回 `status: needs_context`,检查 `missing_context`,在单一总预算下构建一个只添加所请求符号、关系或行范围的替换包;把完整任务与该单个包发给新的 worker,不要跨消息堆叠包或让 worker 自行浏览;若第二次仍缺上下文,停止委派并在协调者处处理或上报。
- 错误处理:`symbol_not_found` 时对照仓库重查名称或向 Trailmark 查询精确节点 ID;`ambiguous_symbol` 时使用返回的某个精确节点 ID;`invalid_depth` 时 neighborhood 模式恰好一跳,更深遍历改用 upstream 或 downstream;`anchor_exceeds_budget` 时改用有意义的 `--line-range` 或提高显式预算;`path_not_found` 或 `entrypoint_path_not_found` 时仅在理由充分时增加深度,否则报告静态分析缺口;`no_source`、`stale_source` 或 `path_outside_root` 时不要委派受影响切片;`unsupported_trailmark` 时安装或选择 Trailmark 0.5.x,不要静默使用不同 schema;`trailmark_analysis_failed` 时先修正报告的语言/解析器失败再委派;`io_error` 时修复目标树(权限、符号链接环)后重试。
适用边界 · 注意事项
- worker 必须自行探索仓库或发现自身范围时
- 运行时行为、生成代码、宏或动态分派主导 Trailmark 可见范围时
- 仅锚点无法放入且没有已知有意义行范围时
- 任务要求 worker 直接编辑(worker 只能提议改动)时
- 小文件无需图选择或委派即可安全读取时