feat(core,server,web): images reach every input — steering, goal objectives, one fold (#71)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
de6380f278
commit
97852f43b8
40 files changed
+1474
-254
No files matched your search
@@ -44,6 +44,12 @@ status: active
|
||||
- `blocked` → 循环停止;模型缺什么写在它最后一条回复里。注入规则要求**同一阻塞条件持续三个连续轮次**后才允许声明 `blocked`,临时性障碍不会终结目标。
|
||||
- `active` → 预算允许则进入下一轮。
|
||||
|
||||
### 目标里的图片
|
||||
|
||||
目标可以附带图片——「把页面改成这张设计稿的样子」本身就是一个目标,而一张截图比一段描述说得清楚。图片一律写入会话 scratchpad,在目标文本里以 `[attached image: <路径>]` 行引用,**与模型是否支持视觉无关**:目标每轮都作为协议块的文本被重新注入,图片没法以图片的形态跟着走。只在第一轮发,后续每一轮的目标就指向了一个早已被压缩掉的东西,而目标文本读起来却毫无破绽。作为路径,它跨越每一轮、每一次压缩都稳定存在,而模型只在真的要看的时候才付出 token(有视觉用 `read_image`,没有则 `describe_image`)。图片不能替代文字——一张图说明不了目标,所以没有文字的目标输入会被拒绝。
|
||||
|
||||
聊天页在第一轮气泡下方完整展示附图,后续轮次收成一行 chip(点击展开):它确实在每一轮的输入里,但二十轮的目标不该把同一张图重复二十次。
|
||||
|
||||
某一轮以中断结束(用户停止、LLM 故障)时整个目标随之结束、不再续推——磁盘上的状态保持 `active`,工作区与目标文件就是干净的断点。Web App 中常规停止按钮即中止整个循环;CLI 中是 Ctrl-C。被单 Task 轮次上限(`max_turns`)掐断的轮同理:模型没来得及写目标文件,循环以 `aborted` 结束,而不是永远重演同一次掐断。
|
||||
|
||||
## Token 预算
|
||||
|
||||
Reference in new issue
Block a user