Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add SimpleEve/eo-skills --skill eo-handoffgit clone --depth 1 https://github.com/SimpleEve/eo-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/simpleeve/eo-skills/eo-handoff)<a href="https://agentmods.dev/skills/simpleeve/eo-skills/eo-handoff"><img src="https://agentmods.dev/badge/skills/simpleeve/eo-skills/eo-handoff/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/simpleeve/eo-skills/eo-handoff"><img src="https://agentmods.dev/badge/skills/simpleeve/eo-skills/eo-handoff.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00102 | $0.02322 |
| Opus 5 | $0.00051 | $0.01161 |
| Sonnet 5 | $0.00020 | $0.00464 |
| Haiku 4.5 | $0.00010 | $0.00232 |
Grade A, and why
eo-handoff scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 169 lines — stays where its author put it; the contents beside it link to each section on GitHub.
eo-handoff — 跨会话状态交接
定位
clear 前的最后一步:把"下次会话要立刻接着干"所需的最少信息写到 <repo>/tmp/eo/handoff/<topic>.md。
和容易混淆的两个东西的边界:
| 名称 | 对端 | 性质 |
|---|---|---|
内置 /compact |
同一会话续命 | 机械压缩对话流,保留所有信息 |
/eo-handoff |
clear 之后的下一个会话("未来的自己") | 定向提取当前状态 + 决策口径,主动丢弃探索过程 |
核心区别:eo-handoff 不是总结,是"开机指令"。读者是新会话的自己,目标是 5 分钟内回到当前节点。
不依赖 .eo-project.json
tmp/eo/handoff/ 是工作区机制(eo 临时工件命名空间的一个域,见 ../eo-shared/conventions.md),任何 git 仓库都能用,不归 eo-doc/ 体系管。即使没跑过 /eo-project-init 也能用本 skill。
输入
- topic 名:从最近上下文推断(最近聊的 module / change-id / 任务名)。推不出再问用户一次。
- 文件名:
tmp/eo/handoff/<topic>.md,<topic>用 kebab-case
- 文件名:
- 可选口头加权:用户说"重点记 X / 别记 Y / 把这段对话原文带上" → 写入时按指示偏置
- tmp/eo/handoff/ 目录:不存在则建。已存在的同名文件直接覆盖(默认行为;老的 handoff 已经过期没价值)。如果用户希望保留历史,自行加日期后缀。
文件骨架(6 段固定)
每段没有内容就写 _无_,不要省略段落——固定结构便于下一个会话按位置取信息。
# <topic> — 会话交接快照
> <YYYY-MM-DD HH:MM> 由 /eo-handoff 生成。
> 用途:`/clear` 后载入本文件即可从「<一句话节点描述>」继续。
## 1. 当前状态
- 在做什么、卡在哪个节点
- 关键产物路径 + status(change / review 等的 frontmatter status)
- 上下游依赖是否就绪
## 2. 基线
- 仓库 HEAD:`<git rev-parse --short HEAD>` on `<branch>`
- 关键文件清单(路径 + 一句话作用),区分「已存在」「待新增」
- 工作目录 dirty / clean 状态
## 3. 下一步分叉
等用户决策的点,列出候选:
- **A) <方案>**:…(适用场景 / 取舍)
- **B) <方案>**:…
- **C) 待定**:还没成型的方向
如果没有分叉、就一条路走到黑,写「无分叉,下一步:<动作>」。
## 4. 关键口径清单 ⭐ 最重要
跨 clear 必须保持一致的决策与不变量。每条带「**为什么**」一行,便于新会话判断边界情况。
- [ ] <口径 1>:<内容>。为什么:<原因>
- [ ] <口径 2>:…
- …
这一段是 handoff 的核心价值——探索过程可以丢,但收敛出来的决策不能丢。
## 5. 开机动作序列
clear 后新会话该做的第一组动作(有序):
1. 读 <文件路径>(拿到 <信息>)
2. 跑 `<命令>` 验证 <状态>
3. 问用户 <具体问题> 后再动手
4. …
## 6. 明确不写的
主动丢弃了哪些内容,让用户最后检查一遍:
- <丢弃 1>(理由:探索过程,已收敛到 §4)
- <丢弃 2>(理由:与 git log / 当前代码重复)
- …
执行步骤
1. 推断 topic
扫最近 ~20 轮对话,找最高频出现的具体名词(module 名 / change-id / 文件路径根)。例:用户在拆 residence 模块的 bootstrap change → topic = residence-next-steps 或 residence。
推不出(话题分散) → 一次性问用户:"这次 handoff 的主题是什么?我建议 <topic-A> 或 <topic-B>"。
2. 询问加权(可选)
如果用户的初次触发已经带了指示("重点记口径"/"把方案 B 的细节带上"),跳过;否则一句话问:"有什么必须记 / 必须丢的吗?没有就按默认骨架走。"
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago Changed · -2 lines · -10 tokens per session 621c2f40f98d
- 10d ago First seen · 171 lines · 112 tokens per session scan A 5aaaf3826e54
eo-handoff is a skill published in the GitHub repository SimpleEve/eo-skills (31 stars, last pushed 3d ago), licensed MIT. It adds 102 tokens to every session and 2,322 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
close-my-loops
Build and maintain a personal work profile and open-loop tracker for the user's own job — a markdown file covering their org, key contacts, communication style, active initiatives, and open loops synthesized from their own email/Slack; a Cowork Project setup so that file is actually read every session; a scheduled…
handoff
Carry essential working context to another task, directory or worktree, harness, collaborator, or mid-phase side fork in a portable Markdown handoff.
Cortex
Operate Cortex, the LifeOS memory system — the typed Knowledge Archive (People, Companies, Ideas, Research with typed related: links) plus recall of prior work sessions, ISAs, and conversations. Search, add, harvest, develop, ingest, distill, graph-navigate, recall. USE WHEN cortex, knowledge, knowledge base, search…
Migrate
Intakes external content, classifies chunks against LifeOS taxonomy, commits with provenance. Sources: .md/.txt, stdin, LifeOS dirs, CLAUDE.md/Cursor/OpenAI Custom Instructions, Obsidian/Notion/Apple Notes exports. MigrateScan classifies → routing table. MigrateApprove with…
daily-briefing
Proactive daily briefing that fires on a recurring schedule, pulls recent memory and workspace context, composes a structured summary (action items, progress, radar, next steps), and delivers it to all active channels. Enable with a time like "set up my daily briefing at 9am". Disable, reschedule, or check status at…
company-brain
Your team's shared, AI-ready knowledge base — people, companies, meetings, SOPs, and decisions structured so Claude can answer questions on your team's behalf. Team-scope sibling to second-brain (which is personal-scope). Seven modes — capture (drop something into the right structured dir), compile (process into wiki…