DELETE /memory/layer
清空指定层中当前 actor 的全部记忆条目。
DELETE /cells/{cellID}/memory/layer
认证
Authorization: Bearer $TOKEN
查询参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
layer | string | ✅ | 要清空的层。可写层:about_me / agent_memory / consensus |
actor | string | 条件必填 | 非共享层(about_me、agent_memory)必须携带。admin token 可指定其他 actor |
namespace | string | 否 | 按命名空间限定清空范围 |
请求示例
清空自己的 about_me 层:
curl -X DELETE "http://localhost:9091/cells/dept-legal/memory/layer?layer=about_me&actor=alice" \
-H "Authorization: Bearer $TOKEN"
清空指定 Agent 命名空间的记忆:
curl -X DELETE "http://localhost:9091/cells/dept-legal/memory/layer?layer=agent_memory&actor=alice&namespace=agent-coder" \
-H "Authorization: Bearer $TOKEN"
清空 consensus 层(需要 admin 权限):
curl -X DELETE "http://localhost:9091/cells/dept-legal/memory/layer?layer=consensus" \
-H "Authorization: Bearer $ADMIN_TOKEN"
响应
成功(200 OK)
{
"deleted_count": 25
}
响应字段
| 字段 | 类型 | 说明 |
|---|---|---|
deleted_count | int | 实际删除的条目数 |
错误码
| 错误 | HTTP 状态码 | 说明 |
|---|---|---|
ErrLayerNotWritable | 400 | 目标层不可写。environment(宿主感知器产出)、session、working 不可清空——用户删掉的是下次 boot 会被重写的数据,读起来像"删除没生效" |
ErrUnknownLayer | 400 | 不认识的层名 |
ErrLayerShared | 400 | 带 actor 清无主层。consensus 是 Cell 级共识,不分 actor,带 actor 参数清空是语义错误 |
ErrLayerNamespaceDerived | 400 | 给自寻址层带 namespace。about_me 的命名空间由 UserNS(actor) 自动推导,consensus 是 Cell 级——忽略这个约束会把"删这一层的某个 namespace"执行成"清空整个层" |
注意事项
- 可清空的层与可写入的层一致:
about_me、agent_memory、consensus。 - 清空操作使用结构体参数(
ClearLayerRequest),不使用三个位置参数——避免(layer, actor, ns)与(layer, ns, actor)的参数顺序混淆。 consensus层清空需要 admin 权限,普通用户无法操作。- 清空是不可逆操作,请谨慎使用。
相关端点
- DELETE /memory/{id} — 删除单条
- GET /memory/counts — 层计数
- POST /memory — 保存记忆
- GET /memory — 列出记忆