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 agentmods add skills/jaychempan/coding-with-beat/cwb-profilenpx skills add jaychempan/coding-with-beat --skill cwb-profilegit clone --depth 1 https://github.com/jaychempan/coding-with-beatWrote 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/jaychempan/coding-with-beat/cwb-profile)<a href="https://agentmods.dev/skills/jaychempan/coding-with-beat/cwb-profile"><img src="https://agentmods.dev/badge/skills/jaychempan/coding-with-beat/cwb-profile.svg" alt="Measured on agentmods" 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 | $0.00041 | $0.00621 |
| Opus 5 | $0.00020 | $0.00311 |
| Sonnet 5 | $0.00008 | $0.00124 |
| Haiku 4.5 | $0.00004 | $0.00062 |
Grade A, and why
cwb-profile 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 5d 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.
What it actually says
coding-with-beat — Music Profile & Listening Report
You have access to the generate_profile MCP tool. Use it to analyse the user's listening history and generate personalised reports and recommendations.
When to activate
- 听歌报告 · 音乐画像 · 本周报告 · 本月报告 · 年度报告 · 日报告
- music profile · listening report · music report · my music taste
- 分析我的听歌 · 我最近在听什么 · 推荐基于历史
- history profile · what have I been listening to
- 给我推荐基于历史 · 根据我的喜好推荐
Dispatch logic
-
Detect period from the user's message:
- 今天 / 日 / today / daily →
"daily" - 本周 / 这周 / week / weekly →
"weekly"(default) - 本月 / 这个月 / month / monthly →
"monthly" - 今年 / 年度 / year / yearly →
"yearly" - No mention → default
"weekly"
- 今天 / 日 / today / daily →
-
Extract context (optional scene/mood words the user mentions):
- 写代码 / coding / 跑步 / 放松 / 通勤 etc. → pass as
context - If no scene mentioned →
context = ""
- 写代码 / coding / 跑步 / 放松 / 通勤 etc. → pass as
-
Call the tool:
generate_profile(period=<detected>, context=<extracted>) -
Display the returned report in full.
-
After the report, present the recommendation queries and ask:
"要播放推荐吗?说"播放推荐1"或直接告诉我你想听哪个方向。"
-
If user agrees to play:
- Extract the query strings from the report's recommendation section
- Call
smart_search(queries=[<those queries>]) - Show results and let user pick by number with
play_number(n)
Example exchanges
User: 帮我生成本周的听歌报告
→ generate_profile(period="weekly", context="")
User: 我最近都在听什么,帮我分析一下,适合写代码的
→ generate_profile(period="weekly", context="写代码")
User: 给我出一份年度音乐画像
→ generate_profile(period="yearly", context="")
User: 今天听了什么
→ generate_profile(period="daily", context="")
Error handling
If the tool returns "不足 5 首", tell the user:
"还没有足够的听歌记录来生成画像,先多听几首再来吧 🎵" Do not retry automatically.
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.
- 5d ago First seen · 67 lines · 41 tokens per session scan A 661a5d6cec49
cwb-profile is a skill published in the GitHub repository jaychempan/coding-with-beat (114 stars, last pushed 2mo ago), licensed MIT. It adds 41 tokens to every session and 621 once invoked, about $0.0002 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
subagent-driven-development
Execute plans via delegatetask subagents (2-stage review).
duckduckgo-search
Free keyless web, news, and image search via ddgs.
mcporter
List, auth, and call MCP servers/tools from the terminal.
article-writing
Write articles, guides, blog posts, tutorials, newsletter issues, and other long-form content in a distinctive voice derived from supplied examples or brand guidance. Use when the user wants polished written content longer than a paragraph, especially when voice consistency, structure, and credibility matter.
mem0-oss-to-platform
Plan and then execute a migration of a project from the mem0 open-source / self-hosted SDK (the local Memory class) to the mem0 Platform / hosted / managed SDK (the MemoryClient class). Use this whenever a developer wants to move, switch, or migrate their mem0 usage off OSS/self-hosted to the hosted API — e.g.…
complete-partial-pr
Evaluate and complete an issue or PR where the submitted patch fixes only a narrow symptom of the reported pain point. Use when a contribution may miss adjacent integration surfaces, provider/spec semantics, roundtrip behavior, tests, docs, or historical maintainer decisions.