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 coracoo/zspace_skill --skill ios-memo-bakgit clone --depth 1 https://github.com/coracoo/zspace_skillWrote 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/coracoo/zspace_skill/ios-memo-bak)<a href="https://agentmods.dev/skills/coracoo/zspace_skill/ios-memo-bak"><img src="https://agentmods.dev/badge/skills/coracoo/zspace_skill/ios-memo-bak/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/coracoo/zspace_skill/ios-memo-bak"><img src="https://agentmods.dev/badge/skills/coracoo/zspace_skill/ios-memo-bak.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00191 | $0.01328 |
| Opus 5 | $0.00096 | $0.00664 |
| Sonnet 5 | $0.00038 | $0.00266 |
| Haiku 4.5 | $0.00019 | $0.00133 |
Grade A, and why
ios-memo-bak scanned grade A with 1 finding 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 9d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
4. **验证端点**:模拟 iPhone curl,确认 200 OK + 测试笔记已建 What it actually says
iOS Memo Backup — iPhone 备忘录 → NAS 记事本 同步
概述
前置:先调 nas-setup skill 验证 .env 配置 + NAS 登录。没有 SHORTCUT_KEY→setup.py 自动生成。
通过 iOS「快捷指令」(Shortcuts) + NAS dashboard 的 /shortcut/notepad 端点,实现备忘录实时备份到 NAS 独立记事本(location=2,不污染系统默认记事本)。
Skill 只做基础设施配置(生成密钥 + 重启 dashboard + 验证 + 给配置步骤);实际写由 iPhone Shortcut 在用户每次"分享→推"时发起。
工作流
场景 1:首次配置(用户触发词:"帮我设置 iPhone 备忘录备份")
- 检查现有
SHORTCUT_KEY:python scripts/setup.py自动处理- 有 key → 问要不要重新生成
- 没 key → 生成 32 hex 随机密钥
- 写进
.env(覆盖或追加) - 重启 dashboard:
./start.sh dashboard(自动 source .env) - 验证端点:模拟 iPhone curl,确认 200 OK + 测试笔记已建
- 直接给出 iPhone Shortcut 配置步骤(Agent 必须返回这些信息给用户):
- POST URL:
http://<NAS_LAN_IP>:<port>/shortcut/notepad - Header:
X-Shortcut-Key: <key>(完整密钥,不遮蔽) - Header:
Content-Type: application/json - Body:
{"title": "...", "body": "<html>"} - 动作链:6 步(共享表单输入 → 字典 → JSON → 获取 URL 内容 → 显示通知)
- POST URL:
场景 2:已配置(用户触发词:"再告诉我一下 iPhone Shortcut 怎么配"或"我同事也要用")
- 读
.env拿现有 key(直接显示,完整密钥不遮蔽 —— 因为 iPhone Shortcut 端需要) - 拿端口(从
dashboard/app/__main__.pyuvicorn 启动行读,默认 15050) - 给 iPhone Shortcut 配置步骤
场景 3:重新生成 key(用户触发词:"换一个新密钥")
- 跑
python scripts/setup.py --force(强制重新生成) - 用户需要更新所有 iPhone Shortcut 的
X-Shortcut-Keyheader
服务端代码位置(供排查)
app/routes/shortcut.py:shortcut_notepad— 接收端点app/cocoa.py:_cocoa_html_to_clean— Cocoa HTML 解析- 鉴权逻辑(
SHORTCUT_KEY/ALLOW_OPEN_SHORTCUT=1/X-Shortcut-Keyheader)
关键约束(必读)
- 密钥必须从 .env 读,不能猜 —
.env是 SOT - 端口必须从 dashboard/app/main.py 读 — 默认 15050,但用户可能改了
- NAS_LAN_IP 从 .env NAS_HOST 读 — 占位符(极空间 IP)要替换
- 重启 dashboard 必须用
./start.sh— 它会source .env,手动uvicorn启动读不到 env - 密钥直接完整显示给用户 — 不遮蔽(因为配置 Shortcut 必须要完整密钥)
已知 gap
- LAN-only(无 HTTPS,密钥明文传输)— 不在公网用
- iOS 12+(备忘录 share sheet 支持 Shortcut)
- 一次性设置:换路由器 / NAS IP 变化需要重新跑
- 多用户场景:每人有独立 iPhone 配同一个 key → 安全可接受(LAN + 预共享密钥)
故障排查
| 现象 | 原因 | 处理 |
|---|---|---|
| iPhone POST 一直 403 | Shortcut 没配 X-Shortcut-Key header,或 .env 里 key 是空的 |
重跑 setup,确认 key 已写进 .env 且 dashboard 已重启 |
| iPhone POST 401 invalid key | Shortcut 配的 key 跟 .env 不匹配(可能改了 .env 没重启) | 重启 dashboard |
| 验证 curl 返回 "Connection refused" | dashboard 没起,看 PID 文件 | ./start.sh dashboard |
| 验证 curl 返回 "Connection refused" 且刚才说有重启 | uvicorn 没真正加载 env(用 start.sh 不用手动 uvicorn) | 重启 |
| 笔记内容样式全没了 | body 不是 HTML 是纯文本 | Shortcut 用"获取备忘录 URL"或"分享表单"而非"输入纯文本" |
What ships with it
2 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.
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.
- 9d ago First seen · 75 lines · 191 tokens per session scan A f8217c6b0a8f
ios-memo-bak is a skill published in the GitHub repository coracoo/zspace_skill (23 stars, last pushed 1mo ago), licensed MIT. It adds 191 tokens to every session and 1,328 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
app-ui-design
Mobile app UI design expert for iOS and Android. Use when designing app interfaces, creating design systems, ensuring accessibility, or following platform guidelines. Covers Material Design 3, Human Interface Guidelines, color theory, typography, and 2025 trends.
quick-win-session
Generates guided first-action flows that help users achieve a meaningful result within 60 seconds to boost retention. Use when user wants quick win onboarding, time-to-value optimization, or first success moments.
mobile
A mobile handoff skill that sends the current coding task to a phone-review service and waits for feedback. It also explains how to retrieve and apply review comments or stop an active watcher.
codex-expo-run-actions
Wire Expo projects into the Codex app with project-local run scripts and .codex/environments/environment.toml actions. Use when the user wants the Codex app Run button, build/run actions, action buttons, or a stable Expo start/run workflow from Codex.
bys-personal-dashboard
A guided builder for creating a personal mobile dashboard with the daily tools and information you choose.
happy-handoff
A workflow for moving an unfinished Codex Desktop task to Happy on Android at a safe checkpoint. It records the workspace state and next step before starting the resumed session.