从 Context Engineering 到 Context Parenting

2026-02-24 · Junyi Yan、GPT 5.2 Thinking

Personal Agent × Self Layer:当 Personal Agent 的上下文管理从“检索工程”走向“养育系统”。

为什么我们已经有了 RAG、压缩、缓存、技能加载、子代理分治,Personal Agent 仍然会在长期使用中失真、漂移甚至越界? 今天主流的上下文工程已经很强,但它主要优化“这次会话”。而 Personal Agent 是长期代理系统,它需要优化的是“持续可托付的行为”。因此上下文管理要从 Context Engineering 继续升级: 从“检索什么”转向“系统该学什么、何时学、如何学、如何忘、谁来兜底”。这就是 Context Parenting。 在这个框架里,Self Layer 不是记忆仓库,而是长期身份治理层;编排层决定上下文何时被调度,治理层决定上下文何时被允许,自我层决定上下文何时被沉淀。三层不再并列,而是闭环。

一、当前上下文工程范式已经比较成熟,但仍偏“会话最优”

如果把 Anthropic、pi-mono、OpenClaw 等实践放在一起,Context Engineering 的能力版图其实已经非常完整。常见路径是:技能按需加载、历史剪枝、长会话压缩、prompt 缓存复用、子代理分治、分层检索注入。它们共同解决的是一个工程难题:在有限 token 和时延预算里,尽量让当前任务完成得更好。 Anthropic 在《Building effective agents》里强调“先简单、可组合,再逐步增强自治度”,本质就是在提醒大家:上下文组织常常比模型参数更决定结果。Claude Code 文档里的 common workflows、context windows、prompt caching、subagents、memory 也都在证明这一点。pi-mono 则把这套机制进一步运行时化,给出 session tree、compaction、branch summary、steer/follow-up 队列语义等一线工程形态。 但这些机制大多以“当前回合优化”为主要目标。Personal Agent 的难点恰恰在于,它要跨任务、跨时间、跨执行器保持身份连续并承担后果。会话最优不自动等于长期最优。

二、范式断层:为什么 Personal Agent 不能只做“上下文优化”

Personal Agent 至少有三个不可回避的属性:长期性、代理性、后果性。长期性要求它在数周数月内保持身份一致;代理性意味着它会替用户调用外部工具和外部 agent;后果性意味着错误不止是答错题,还可能是越权外发、记忆污染、策略偏航。 所以它的目标函数必须变。Context Engineering 1.x 常隐含“当前任务质量最大化”,而 Personal Agent 需要联合优化“质量、风险、可追责与可纠偏成长”。 这带来三个关键缺口。 第一,目标函数缺口。单纯相关性排序无法回答“这条记忆是否有资格进入本次决策”。 第二,治理耦合缺口。压缩、缓存、检索本身是中立动作,但在代理系统里会放大污染与越权的复用效应。 第三,身份连续性缺口。传统做法更像会话状态管理,缺少“什么可成为长期自我、什么必须短期遗忘、什么必须人审”的机制。 换句话说,我们需要的不是更激进的注入,而是更严格的养育。

三、Context Parenting:把上下文从输入材料变成成长机制

Context Parenting 不是“RAG 改名”,而是一种更高层的系统治理观。它关心的不是“塞多少上下文”,而是“系统在时间里成长成什么样”。 它把上下文管理从信息流问题提升为状态治理问题,并且至少完成四个迁移:

  1. 从相关性优先到合法性优先。相关信息不一定有资格参与决策,策略与边界先于相似度。
  2. 从会话压缩到生命周期管理。上下文对象要经历候选、证据、审查、激活、衰减、撤销,而非“一检索就注入”。
  3. 从模型私有缓存到用户主权资产。上下文必须可审计、可迁移、可过期、可撤销。
  4. 从静态前缀到阶段编译。计划、执行、验收阶段需要不同上下文块,不该一次性全量灌入。

四、放进三层结构里看:谁负责什么

三层结构里,Context Parenting 不是自我层孤岛,而是贯穿编排、治理、自我的流水线。 编排层负责调度时机。它基于 Task DAG 和 next-k steps 决定“何时加载、何时压缩、何时外发 capsule、何时暂不注入”。 治理层负责门禁裁决。它在写入前裁决“能不能学”,在外发前裁决“能不能给”,并且把所有关键决策写入可审计轨迹。 自我层负责长期沉淀。它把高价值经验编译成 identity、preference、procedure,而不是无限堆积原始日志。 从这个角度,Self Layer 的本质不是 memory database,而是 identity operating system。

五、Self Layer + Context Parenting v0.1 规范草案(整合版)

5.1 对象模型

{
  "self_profile": {
    "self_id": "user_xxx",
    "version": "v0.1",
    "updated_at": "ISO8601",
    "identity_core": {
      "roles": ["founder", "researcher"],
      "constitution": [
        "safety_first",
        "evidence_before_assertion"
      ],
      "hard_boundaries": [
        "no_secret_exfiltration",
        "no_unauthorized_spending"
      ],
      "voice": {
        "style": "concise_rigorous",
        "language": ["zh", "en"]
      }
    },
    "preference_model": {
      "communication": {
        "tone": "direct",
        "length": "short_to_medium"
      },
      "workflow": {
        "default_planning": true,
        "evidence_required": true
      }
    },
    "governance_policy": {
      "risk_threshold": "medium",
      "approval_required_for": [
        "external_post",
        "payment",
        "destructive_action"
      ]
    }
  }
}
{
  "memory_entry": {
    "memory_id": "mem_xxx",
    "type": "episode|semantic|procedural|preference",
    "content": "...",
    "source": {
      "origin": "user_explicit|agent_inferred|external_agent|tool_output",
      "refs": ["artifact://...", "a2a://task/..."],
      "confidence": 0.0
    },
    "policy": {
      "sensitivity": "public|work|personal|secret",
      "retention_days": 365,
      "write_mode": "append|merge|immutable"
    },
    "lineage": {
      "parent_ids": ["mem_old_1"],
      "change_reason": "user_correction"
    },
    "status": "candidate|screened|evidence_checked|policy_checked|user_aligned|committed|active|archived|revoked|rejected"
  }
}
{
  "context_capsule": {
    "capsule_id": "cap_xxx",
    "task_id": "task_xxx",
    "scope": ["identity", "preference", "project"],
    "summary": "minimal context for this task",
    "facts": [
      {
        "k": "preferred_output",
        "v": "structured_markdown",
        "evidence_ref": "artifact://..."
      }
    ],
    "constraints": {
      "forbidden": ["request_credentials"],
      "required": ["cite_sources"]
    },
    "sharing": {
      "allowed_agents": ["agent://trusted-a"],
      "ttl_hours": 24,
      "revoke_token": "rvk_xxx"
    }
  }
}

为保证可观测性,运行时补充两个对象:

{
  "context_budget": {
    "task_id": "task_xxx",
    "max_input_tokens": 12000,
    "reserved_for_policy": 1200,
    "reserved_for_plan": 1800,
    "reserved_for_self": 2200,
    "reserved_for_evidence": 2200,
    "adaptive_headroom": 4600
  }
}
{
  "context_action_log": {
    "task_id": "task_xxx",
    "actions": [
      {
        "ts": "ISO8601",
        "action": "load|compress|evict|cache_hit|cache_miss|capsule_emit|write_decision",
        "target": "memory_id_or_segment",
        "reason": "plan_step_change|risk_gate|token_budget|user_correction",
        "trace_ref": "trace://..."
      }
    ]
  }
}

5.2 状态机:从候选信号到长期自我

主路径: candidate -> screened -> evidence_checked -> policy_checked -> user_aligned -> committed -> active -> archived/revoked

拒绝支路: 任一阶段失败进入 rejected,并保留原因码与证据缺口。

这个状态机解决的是一个长期被忽略的问题:系统不仅要记录“学到了什么”,还要记录“为什么这次没学”。

5.3 写入策略:从“自动记忆”到“可问责写入”

写入引擎仅允许四类动作:ADD / UPDATE / DELETE / NOOP。

决策顺序建议固定为:

  1. 证据门槛检查(至少一条可追溯 evidence_ref)。
  2. 身份冲突检查(触及 identity_core 默认进入人审)。
  3. 来源加权判断(user_explicit > user_correction > verified_tool_output > trusted_agent > untrusted_external)。
  4. 敏感分区检查(secret 不跨域外发)。

删除必须是逻辑删除,保留审计轨迹与 lineage。

5.4 上下文编译器:把三层约束编译到一次执行里

输入四元组: 任务阶段、治理策略、活跃自我状态、预算约束。

输出两类块: 内部 Runtime Context Block 与外部 Capsule。

实践中建议坚持两个编译顺序:

  1. 先硬约束后软偏好(先 policy/plan,再 preference/style)。
  2. 先证据锚点后叙述摘要(先 facts/evidence,再 summary)。

六、从 v0.1 到 v0.2:三条必须补上的运行时纪律

这部分来自 Self Layer 深化研究,用于解释 v0.1 下一步该怎么演进。

第一条,证据优先于相关性。语义相似只能决定“可能有关”,不能决定“可进入长期自我”。

第二条,冲突优先于覆盖。新旧记忆冲突时默认进入对账队列,生成 diff 并触发用户确认或策略仲裁,避免静默漂移。

第三条,最小披露优先。对外协作默认发 capsule 子集,不发完整自我;全部外发附 TTL 和 revoke token,并要求结果证据回流。

v0.2 最关键的结构升级是“写入动作与注入动作解耦”:记忆可以 committed 但不默认 injected,只有在当前任务阶段和风险预算匹配时才参与执行上下文。

七、评测不该只看答案质量:四组指标联合优化

个性化与连续性:Personalization Precision、Identity Drift Rate、Correction Adoption Latency。

安全与治理:Unauthorized Memory Write Rate、Sensitive Leakage Rate、Policy Override Auditability。

执行与效率:Task Success Under Budget、Context ROI、Rework Rate。 记忆质量:Memory Utility@K、Conflict Resolution Accuracy、Stale Memory Impact。

如果没有这四组联合指标,系统很容易在“自动化更强”与“长期更稳”之间失衡。

参考资料

#人工智能#Agent#Memory
https://junyiyan.xyz/posts/feed.xml