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 riwonswain-ovo/OfferLoop --skill recruiting-remindergit clone --depth 1 https://github.com/riwonswain-ovo/OfferLoopWrote 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/riwonswain-ovo/offerloop/recruiting-reminder)<a href="https://agentmods.dev/skills/riwonswain-ovo/offerloop/recruiting-reminder"><img src="https://agentmods.dev/badge/skills/riwonswain-ovo/offerloop/recruiting-reminder/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/riwonswain-ovo/offerloop/recruiting-reminder"><img src="https://agentmods.dev/badge/skills/riwonswain-ovo/offerloop/recruiting-reminder.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.00107 | $0.04225 |
| Opus 5 | $0.00053 | $0.02112 |
| Sonnet 5 | $0.00021 | $0.00845 |
| Haiku 4.5 | $0.00011 | $0.00422 |
Grade A, and why
recruiting-reminder 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 4d 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 — 186 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Recruiting Reminder v2.0.0
一次调用完成一次邮箱扫描与结果汇报;不创建飞书原生任务,不启动后台轮询或定时补偿。脚本路径 从本 Skill 根目录解析。
动态工具门禁
运行环境若用 ToolSearch、延迟加载或类似机制暴露邮件工具,第一次工具搜索必须在同一批中包含
名称后缀 mail_search、mail_read_candidate、mail_mark_processed;同时需要模式/配置工具时一并
搜索。搜索返回实际句柄后才能调用 mail_search。没有加载 mail_mark_processed 时不得开始扫描,
也不得假设稍后可以靠本地脚本或结果文字替代。服务端前缀可以不同,以这三个稳定名称后缀匹配。
如果本轮会写招聘事件,同一轮工具发现还必须加载 progress_query、base_write、progress_read_current、
progress_update、calendar_create、base_update、reminder_verify、progress_verify、base_verify_views;通知已启用时再加载
notification_send 和 failure_record。完成状态回调改为加载 reminder_query_existing、
progress_read_current、reminder_update_completion、progress_update、reminder_verify、
progress_verify。不得先写入,再临时寻找本应位于前置步骤的工具。
维护本轮 must_mark_processed 集合:事件完成、永久忽略、非招聘,以及无明确时间的前置邀请一经
判定就加入 canonical source_mail_id;需要用户确认且尚未确认的邮件不加入。任何最终回复、摘要或
finalize 动作前,逐个核对该集合都有成功的邮件提供方写入;缺失项立即调用已加载的
mail_mark_processed。工具成功返回并包含对应 ID 后才允许收尾。
门禁与配置
本 Skill 的第一项动作是完整读取 ../.offerloop-runtime/references/installation-mode.md,随后实际运行
python3 ../.offerloop-runtime/scripts/install_mode.py,不得根据已安装文件数量或旧对话猜测模式。
OfferLoop 只支持飞书完整模式,不执行用户画像门禁,只收集本次邮件分类和事件同步必需的信息。
从 ~/.config/offerloop/config.json(遵循 XDG_CONFIG_HOME)读取 lark_profile、必需的
reminder_base_url、可选的 progress_base_url,以及相互独立的 notifications 和
daily_checkin。IMAP 凭证只从用户配置目录读取,不在聊天中索要或回显。
缺 reminder_base_url 时停止业务写入并转入初始化修复;只缺 progress_base_url 时仍可写独立事件,
但不关联或推进求职进展。飞书授权与 locator 未验收时不得开始正式邮箱同步,也不得把 Chat 分类预览
描述成完整的 Recruiting Reminder。不得按标题猜 Base。
按当前任务加载最小契约:
- 写 Base 字段、视图或迁移时读取
references/event-schema.md。 - 扫描邮件并联动 Base、进展、日历或通知时读取
references/mail-sync-contract.md。 - 渲染或处理 22:10 群卡片时才读取
references/daily-card-contract.md。 - 面试准备/复盘关联与回填时读取
references/event-contract.md。 - 仅在新配置缺失且检测到旧双 Base 时读取
references/legacy-dual-base.md。
笔面试安排 是唯一笔面试业务表;OfferLoop运行状态 只保存最小幂等与失败账本。全部安排(默认视图,无筛选) 及各环节入口都是同表视图,在任一
视图修改的是同一个单元格。字段含可选的 面试准备文档、面试复盘文档;进展状态 是求职
进展当前状态唯一真源。
高效邮件读取
What ships with it
23 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 340 B
- contracts/daily-checkin-cases.json 1.8 KB
- references/china-workdays.json 882 B
- references/daily-card-contract.md 4.0 KB
- references/event-contract.md 4.4 KB
- references/event-schema.md 4.7 KB
- references/legacy-dual-base.md 1.6 KB
- references/mail-sync-contract.md 12 KB
- references/task-sync-contract.md 826 B
- scripts/.env.example 1.1 KB
- scripts/daily_checkin.py 4.9 KB runs code
- scripts/event_lookup.py 13 KB runs code
- scripts/event_model.py 54 KB runs code
- scripts/fetch_mail.py 29 KB runs code
- scripts/notification_summary.py 1.6 KB runs code
- scripts/state_store.py 17 KB runs code
- tests/test_ai_interview.py 5.5 KB runs code
- tests/test_daily_checkin.py 6.5 KB runs code
- tests/test_event_lookup.py 17 KB runs code
- tests/test_event_routing.py 42 KB runs code
- tests/test_fetch_mail.py 20 KB runs code
- tests/test_progress_linking.py 7.0 KB runs code
- tests/test_state_store.py 6.5 KB runs code
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.
- 4d ago Changed · +5 lines 855a0ae0c812
- 10d ago First seen · 181 lines · 107 tokens per session scan A c0b001dd8c44
recruiting-reminder is a skill published in the GitHub repository riwonswain-ovo/OfferLoop (16 stars, last pushed 4d ago), licensed MIT. It adds 107 tokens to every session and 4,225 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
metaschedule
MetaBot's persistent server-side scheduler (cron + one-shot). Optional skill — not installed by default. Use when the user wants tasks that survive Claude session restarts, are visible to other bots, or need to run in MetaBot's PM2 process rather than this Claude session.
lark-cli
Use when the user wants to operate Lark or Feishu via the local lark-cli (@larksuite/cli), including install, app credentials, OAuth, readiness checks, and safe read/write boundaries.
opencli
Use when the user wants to use websites, browser login sessions, Electron apps, or external CLIs through a local OpenCLI setup, especially when setup guidance, readiness checks, and safe task execution are needed.
cron
Schedule reminders and recurring tasks.
automation-setup
Turn a user request into a scheduled automation by configuring cron jobs, including session-bound follow-ups and periodic checks.
feishu-calendar
A Feishu calendar and scheduling toolset. Feishu is a workplace collaboration app; this tool manages its calendars, events, attendees, and availability.