22-ai-00/dsh-enhanced--plugins-assistant-goals2

@dsh-enhanced/assistant-goals

Persistent owner-scoped business goals over the native DSH goal domain.

包名
@dsh-enhanced/assistant-goals
版本
0.1.28
许可证
MIT
最近更新
2026年9月12日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:22-ai-00/dsh-enhanced#bb3fb924f1bdb946901614b8b848ac3a1d60c642&path:plugins/assistant-goals

使用

在已认证 owner 的当前人类回合中,用 goal_create {"objective":"完成九月交付报告","max_goal_rounds":2} 创建目标。DSH 原生 create_goal 只接受 source.kind: user;Delivery 保留真实 delivery 来源,由本插件核验 owner 当前 turn 后调用原生 GoalService,不伪造直接用户消息。工具执行权限还须按现有 Host/Policy 授权 goal_creategoal_contextgoal_checkpointgoal_control

插件在 goal/changed 时建立业务记录。安装前已有或身份不明时创建的目标不会被追认,以免归属转移泄漏历史。创建不覆盖尚未完成的原生目标;原生状态为 complete 后可按 DSH 规则创建新的 GoalId,旧业务记录仍保留为待验收;如果目标已经创建而业务索引失败,会明确报告部分完成,先检查原生目标再重试。已有 Host goal-round-driver 若已启用,会按其原生规则继续执行新目标;本插件自身不启用该 driver。

  1. goal_context {} 列出最近的目标摘要及版本;最多读取 50 条,输出受字符预算约束,truncated 明确标记省略。
  2. goal_context {"goal_id":"返回的业务记录 ID"} 查看原始目标和笔记;业务 ID 与原生 GoalId 不同。
  3. 使用返回的 version 保存下一步:
{
  "goal_id": "返回的业务记录 ID",
  "expected_version": 1,
  "next_step": "读取当前测试结果,再检查失败原因",
  "blockers": [],
  "assumptions": [{ "statement": "上次测试仍代表当前代码", "expires_at": 0 }],
  "evidence_refs": ["run:example"],
  "dependencies": []
}

这是 goal_checkpoint 的参数;expires_at 是 Unix 毫秒时间,示例 0 表示已到期。版本变化会拒绝旧写入,应重新读取再决定是否更新。依赖只能指向相同 owner record/version、workspace 和 preset 的业务目标,不允许重复、自依赖或环。调用方只提交业务 Goal ID;Host 在同一个 CAS 事务内把依赖冻结为当时准确的 definition version/digest,不能由模型指定或覆盖。旧数据库中只有 ID 的依赖保持 stalereason=legacy-unbound),必须在新的 owner checkpoint 中重新绑定,重启时不会静默追认。

goal_context 和动态 goal-task-context/v1 会展示当前依赖状态。只有冻结定义仍一致、最新独立 whole-goal 回执为 achieved、且原生依赖目标已 complete 时才是 achieved;否则区分 pendingfailedunknownclearedstalestale 的 reason 区分 definition-changedlegacy-unbound。原生 complete 本身不等于 achieved,缺少 Verifier/Outcome 服务也只能是 unknown。

所有执行恢复入口都要求全部依赖为准确 achieved:包括新的原生自治回合、主人发起的 goal_control resumegoal_schedulegoal_wait_event。系统在准入、Session flush 后、wake 持久化前、Delivery resume 前、运行中和终态结算边界重复核验,并将有序依赖绑定写入 execution/wake identity。派发前变化会拒绝且不启动模型/工具;派发后变化保留 unknown 且不自动重放。重启后的未派发 wake 只在 Verifier/Outcome 再次就绪后有界重试并重新核验;过期 wake 终止为 denied。主人当前回合的检查、编辑和清理仍按原 Policy 执行,本门控不会自行授予新的动作权限。

新会话使用 goal_context {"goal_id":"已保存的业务记录 ID","focus":true} 后,后续模型步骤会收到该目标上下文。focus 只保存引用,不创建、转移、恢复或完成原生目标;开始新的原生目标会切换到新记录。跨会话 focus 和笔记在插件重启后保留。过期假设标记为 stale,当前没有自动重查执行器。