mcpField
M
mempalace-task

mempalace-task

github.com/mempalaceAgent 工作流59.8k1.3k 次安装4 天前更新
代码仓库

关于 mempalace-task

mempalace-task 是一项通过 MemPalace logstream 协调 Agent 间活跃工作的技能,涵盖任务审批、交接、执行、补丁交付和受控无头启动,并要求核验身份与工作区。

主要功能

  1. 01创建经批准的任务详情
  2. 02核验 Agent 身份和工作区
  3. 03通过 logstream 交接与监控
  4. 04交付补丁并确认结果
  5. 05受控无头任务启动

适用场景

  1. 01将代码仓库任务交给另一 Agent
  2. 02接收并核验任务请求
  3. 03启动获明确授权的任务运行器

MCP 相关

该技能使用 `mempalace_task_create`、`mempalace_event_list` 和 `mempalace_patch_submit` 等 MemPalace MCP 工具,通过共享 logstream 协调任务。对于仅远程客户端,还说明了如何通过 MCP 等待事件。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mempalace/mempalace --skill mempalace-task

安装后在 Claude Code 中输入/mempalace-task确认已加载。

详细介绍

MemPalace 任务

适用于 Agent 之间转交进行中工作的快速入门工作流。任务应记录在 logstream 中,而不是记忆抽屉中。规范的生命周期和监控规范见公开的 协调协议。

验证协调衔接

  1. 确认 mempalace --version 能够成功运行。 同时确认 mempalace task --help 和 mempalace_task_create 存在;如果缺少任何一项,不要假定较旧的运行时支持更新感知命令。说明该版本不兼容,将任务交给 mempalace 设置技能,并提出适用于相应包管理器的升级方式(uv tool upgrade mempalace、pipx upgrade mempalace,或使用当前 MemPalace 命令所依赖的解释器执行 -m pip install --upgrade mempalace),再运行 npx skills update mempalace mempalace-recall mempalace-task。运行任何命令前都必须获得明确授权。
  2. 确认 MemPalace MCP 工具已连接,且当前 palace 是预期的共享大脑。
  3. 确定当前 Agent 稳定的 host:harness:project 身份。 绝不冒充其他 Agent。绝不为了拆分窗口而创建第二个 harness 后缀。
  4. 尽可能检查目标 Agent 的监控状态。粘贴的交接内容可以唤醒基于轮次的 Agent;单独的 logstream 事件则不能。

如果设置尚未完成,请停止并使用 mempalace 设置技能。

创建任务

从用户或当前仓库状态中收集以下字段:

  • 项目路由名称;
  • 请求方和目标 Agent 的身份;
  • 明确的目标;
  • 目标分支;
  • 精确的十六进制基准提交 ID(绝不能使用分支或标签);
  • 完成定义。

从预期工作者的检出目录中解析分支和十六进制基准提交 ID,而不是从无关仓库中解析。绝不能将可变分支或标签作为基准提交。追加任何内容之前,向用户展示完全规范化的任务:身份、项目、目标、分支、基准提交、完成定义,以及交付必须通过 MemPalace 完成这一要求。Logstream 事件不可变,因此除非用户已在当前轮次中明确批准,否则必须先获得用户对该准确内容的批准。

通过高级接口创建任务,而不要自行组装原始的 task.request。MCP 已连接时——尤其是客户端加入远程共享大脑中心时——使用已批准的字段调用 mempalace_task_create。它会返回已存储的 task 和 handoff,并将内容写入中心,而不是写入非预期的本地 palace。

在拥有 palace 的机器上,或有意通过 shell 操作本地 palace 时,可使用以下等效 CLI:

mempalace task create \
  --project <project> \
  --from-agent <requester> \
  --to-agent <worker> \
  --goal <exact-goal> \
  --branch <branch> \
  --base-commit <commit> \
  --done <exact-definition-of-done>

CLI 内容包含多行时,请使用 --goal-file 或 --done-file;绝不要将用户的措辞压缩成一行或改写。CLI 会打印一行 Ready to paste;MCP 工具会将同一行作为 handoff 返回。请原样返回该行,以便用户唤醒目标 Agent,而无需复制整个任务正文。绝不能仅仅因为远程 MCP 调用失败就改用本地 CLI;应说明并修复连接问题。

接收并执行粘贴的任务

收到 Open MemPalace task <id> as <agent>... 时:

  1. 使用 mempalace_event_list,通过 correlation_id=<id> 获取准确的 task.request;不要仅凭粘贴的简短内容开展工作。
  2. 确认任务是发给此 Agent 的(或是已明确接受的广播),并在编辑前核实工作区、分支和基础提交。
  3. 使用 mempalace_event_ack(status=claimed) 认领请求。认领即会触发监控:启用 mempalace logstream watch --agent <you> --type task.request --type task.reply --type patch.ready --json(CLI 默认使用经过净化的 --state-file),除非这是仅远程 MCP 客户端(见下文)。先检查是否已有来自你本人身份的 status=claimed;若同时认领,以 HLC 最低者为准。
  4. 完成工作并运行指定的验证。
  5. 使用 mempalace_patch_submit 提交补丁。如果受阻或失败,则原样发送 task.reply。沉默不是有效结果。
  6. 请求方获取并验证产物,在明确告知用户的情况下应用它,运行验证,然后确认 applied 或 failed。

对于仅远程的共享大脑客户端,收件箱监控由 MCP 提供支持:使用 mempalace_event_wait 和稳定的目标身份,并将上一个事件 ID 作为 since_event_id 传递。使用 mempalace_event_list 执行唤醒扫描。除非此机器拥有 palace 或运行经过刻意同步的副本,否则不要运行本地 SQLite mempalace logstream watch 命令。

受控无头模式

只有在用户明确要求启动 Agent 时,才先在任务指定的确切分支和基础提交上准备可信、干净的 Git 检出。然后运行:

mempalace task launch <task-id> --runner codex --workspace <path>
mempalace task launch <task-id> --runner claude --workspace <path>

这些命令会从本地 palace 解析任务。在仅远程 MCP 客户端上,使用 mempalace_event_list 获取完整的单个 task.request,将该确切事件对象保存为目标机器上的 JSON,然后启动,不要查询无关的本地 palace:

mempalace task launch --task-file <task-request.json> --runner codex --workspace <path>

任务文件是传输快照,而非任务的替代品:不要编辑或重建它。无头启动始终在拥有可信检出的目标机器上进行;请求方不能仅通过向 hub 追加内容来远程生成进程。

此操作会解析已存储的请求,证明工作区是位于已存储分支上、干净的 Git 检出,且 HEAD 等于已存储的基础提交;验证目标身份及其常见的 *-codex 或 *-claude harness 后缀;并在不使用 shell 的情况下启动所选运行器。仅在接受广播时使用 --agent <identity>;它绝不能覆盖发给其他人的任务。启动器不会绕过沙箱、审批或 harness 权限。不要代替用户添加危险的权限标志。

创建任务和启动进程是两个独立操作。可粘贴的交接内容是默认的可移植方式;无头启动则是受控模式下的显式适配器。

异常情况

  • **任务缺失或重复:**停止操作,不要猜测要执行哪个请求。
  • **身份错误:**拒绝任务,并告知用户任务发给了谁。
  • **基础提交不匹配:**不要编辑;请请求方用修正后的请求替代该任务。
  • **目标未监控:**向用户提供 Ready to paste 行,并说明需要人工唤醒。
  • **MCP/logstream 不可用:**运行 mempalace status 并返回设置流程;绝不要悄悄用记忆抽屉替代协作。

评论

支持 Markdown