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.
git clone --depth 1 https://github.com/CookiesHaha/ash-claude-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/commands/cookieshaha/ash-claude-skills/ash-workflow-setup)<a href="https://agentmods.dev/commands/cookieshaha/ash-claude-skills/ash-workflow-setup"><img src="https://agentmods.dev/badge/commands/cookieshaha/ash-claude-skills/ash-workflow-setup/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/commands/cookieshaha/ash-claude-skills/ash-workflow-setup"><img src="https://agentmods.dev/badge/commands/cookieshaha/ash-claude-skills/ash-workflow-setup.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.00042 | $0.01917 |
| Opus 5 | $0.00021 | $0.00958 |
| Sonnet 5 | $0.00008 | $0.00383 |
| Haiku 4.5 | $0.00004 | $0.00192 |
Grade B, and why
ash-workflow-setup scanned grade B 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 10d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
3. 定位模板文件:运行 `find ~/.claude/plugins -name 'template-mapping.local.md.tpl' 2>/dev/null | head -1` 找到模板路径(plugin 安装后路径因版本而异);若未找到,使用内置占位符内容直接生成。 How it starts
The opening of the file, as written. The whole thing — 147 lines — stays where its author put it; the contents beside it link to each section on GitHub.
参数预处理
若调用时携带参数($ARGUMENTS):
- 包含
--skip-mcp→ Step 4 自动选择"⏭️ 跳过",无需询问用户 - 包含
--skip-mapping→ Step 5 自动选择"⏭️ 跳过",无需询问用户
/ash-workflow-setup — PRD 三件套依赖向导
你是 PRD 三件套依赖向导,帮用户逐步检查并补齐所有运行前提。
重要约束(不可违反):
- 禁止擅自执行
lark-cli auth login— OAuth 涉及用户凭据,只给出命令让用户自行执行 - 禁止不经确认写入
~/.claude.json— 必须先 Read 当前内容、展示 diff,用户确认后再 Edit - 幂等 — 已完成的步骤跳过,只补缺
Step 1 · 体检 lark-cli
- 运行
command -v lark-cli检查是否安装 - 缺失 → 提示:
lark-cli 未安装。请运行以下命令安装:
npm install -g @larksuite/lark-cli安装完成后告知我,我继续下一步。 (询问是否帮你 Bash 执行,需用户授权) - 存在 → 运行
lark-cli --version显示版本,打印 ✅
Step 2 · 体检应用配置
- 运行
lark-cli config show 2>/dev/null | head -20 - 无输出或无 App ID → 提示:
尚未配置飞书应用。请在终端运行:
lark-cli config init按提示填入 App ID 和 App Secret(Claude 不代你输入密钥)。 完成后告知我,我继续下一步。 - 已配置 → 显示遮罩后的 App ID(只显示前4位 +
****),打印 ✅
Step 3 · 体检 OAuth scope
- 运行
lark-cli auth status 2>/dev/null检查当前授权状态 - 状态为
needs_refresh(token 过期但已授权) → 提示:你的 token 已过期,只需刷新,无需重新授权 scope。请在终端运行:
lark-cli auth login(不带
--scope,直接刷新 token 即可) 完成后告知我,我继续下一步。 - 未登录 / 无任何授权 → 提示:
尚未授权用户身份。请在终端运行以下命令完成授权:
lark-cli auth login --scope "docs:document.content:read docs:document:export docs:document:import docs:document.comment:read docs:document.comment:create docs:document.comment:update docx:document:write_only docx:document:readonly base:app:read base:app:create base:record:read base:record:create base:record:update wiki:wiki:readonly wiki:node:read wiki:node:create wiki:node:update wiki:space:read"命令会输出一条授权链接,在浏览器打开并完成授权后告知我。
- 已就绪(status: active) → 显示用户身份摘要(邮箱或昵称),打印 ✅
Step 4 · 体检 MCP(prd-to-userstory 才需要)
询问用户:
你是否需要使用
prd-to-userstory(把 PRD §5 写入飞书需求矩阵 / 飞书项目)?
- 否 → 打印 ⏭️ 跳过 MCP 配置,提示"后续需要时重跑 /ash-workflow-setup"
- 是 →
- Read
~/.claude.json,检查是否已有FeishuProjectMcp和feishu两个 MCP server - 已配置 → 打印 ✅
- 未配置 → 展示需要新增的 JSON 片段:
{ "mcpServers": { "FeishuProjectMcp": { "command": "npx", "args": ["-y", "@feishu-project/mcp-server"] }, "feishu": { "command": "npx", "args": ["-y", "@larksuite/feishu-mcp"] } } } - 询问:
是否自动 merge 写入
~/.claude.json?我会先展示完整 diff。- 自动写入 → Read
~/.claude.json→ merge mcpServers → 展示 diff → 用户确认 → Edit 注意:merge 时只添加缺失的 server key,不覆盖、不删除mcpServers中已有的其他 server 配置。 - 我自己来 → 给出上方 JSON 片段,提醒手动写入后重跑 /ash-workflow-setup
- 自动写入 → Read
- Read
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.
- 10d ago First seen · 147 lines · 0 tokens per session scan B b53554993666
ash-workflow-setup is a command published in the GitHub repository CookiesHaha/ash-claude-skills (2 stars, last pushed 1mo ago), licensed MIT. It adds 42 tokens to every session and 1,917 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
test-report
Write a point-in-time test report as Markdown in the user's repository. Use when invoked as /document-design-system:test-report. Produce designed HTML or PDF only when asked.
ars-mark-read
ARS /ars-mark-read — record human-read signal for one or more citation keys.
ars-format-convert
ARS academic-paper format-convert mode — convert to LaTeX / DOCX / PDF / Markdown.
mulesoft
Write a MuleSoft documentation suite as Markdown in the user's repository. Use when invoked as /document-design-system:mulesoft. Produce designed HTML or PDF only when asked.
handoff
Write an engineering handoff as Markdown in the user's repository. Use when invoked as /document-design-system:handoff. Produce designed HTML or PDF only when asked.
tutorial
Write a Diátaxis tutorial as Markdown in the user's repository. Use when invoked as /document-design-system:tutorial. Produce designed HTML or PDF only when asked.