Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add CaesiumY/dding-dong/plugin install dding-dongWrote 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/caesiumy/dding-dong/dd-test)<a href="https://agentmods.dev/skills/caesiumy/dding-dong/dd-test"><img src="https://agentmods.dev/badge/skills/caesiumy/dding-dong/dd-test.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.1 | $0.00054 | $0.01708 |
| Opus 5 | $0.00027 | $0.00854 |
| Sonnet 5 | $0.00011 | $0.00342 |
| Haiku 4.5 | $0.00005 | $0.00171 |
Grade A, and why
dd-test 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 — 171 lines — stays where its author put it; the contents beside it link to each section on GitHub.
dding-dong 인터랙티브 알림 테스트
이벤트별로 하나씩 재생하고, 사용자가 다시 듣기/다음/건너뛰기를 선택할 수 있는 인터랙티브 테스트.
1단계: 팩 정보 확인
현재 활성 사운드 팩을 확인합니다:
node "${CLAUDE_PLUGIN_ROOT}/scripts/pack-wizard.mjs" discover --cwd "${PROJECT_DIR}"
출력에서 [active]로 표시된 팩 이름과 경로를 파악합니다.
그리고 활성 팩이 TTS 팩인지 확인합니다:
# 활성 팩 경로에 .tts-config.json이 있으면 TTS 팩
ls "${PROJECT_DIR}/.dding-dong/packs/"*"/.tts-config.json" 2>/dev/null || echo "NOT_TTS"
TTS 팩 여부를 기억해두세요 (이후 "재생성" 선택지 제공 여부에 사용).
TTS 팩인 경우, 활성 팩 경로의 .tts-config.json을 Read로 읽어서 다음을 파악합니다:
voice_mode:"clone"또는"custom"model: 사용 모델명ref_audio,ref_text: 참조 음성 (clone 모드)speaker: 화자명 (custom 모드)events.<이벤트명>.text: 각 이벤트의 현재 텍스트events.<이벤트명>.instruct: 감정/스타일 지시 (custom 모드, 선택)events.<이벤트명>.output_file: 출력 파일명
이 정보를 이후 "재생성" 서브플로우에서 사용합니다.
2단계: 이벤트별 인터랙티브 루프
테스트할 이벤트 목록:
- 인자가 있으면 (
${ARGUMENTS}): 해당 이벤트만 테스트 - 인자가 없으면:
task.complete,task.error,input.required,session.start,session.end순서대로
각 이벤트마다 다음을 반복합니다:
2-1. 이벤트 재생
node "${CLAUDE_PLUGIN_ROOT}/scripts/notify.mjs" test <이벤트명>
재생 후 사용자에게 결과를 안내합니다:
- "🔔 <이벤트명> 재생 완료"
2-2. 사용자 선택 (AskUserQuestion)
AskUserQuestion으로 다음 선택지를 제공합니다:
이벤트가 여러 개인 경우:
- 🔄 다시 듣기 — 같은 이벤트를 다시 재생
- ⏭️ 다음 — 다음 이벤트로 이동
- ⏹️ 건너뛰기 — 나머지 이벤트를 건너뛰고 종료
이벤트가 1개뿐인 경우:
- 🔄 다시 듣기 — 같은 이벤트를 다시 재생
- ✅ 완료 — 테스트 종료
TTS 팩이 활성화된 경우 추가 선택지:
- 🔁 재생성 — TTS 음성을 다시 생성하고 싶을 때
2-3. 선택에 따른 처리
- 다시 듣기: 2-1로 돌아가 같은 이벤트를 다시 재생
- 다음/완료: 다음 이벤트로 진행 (또는 종료)
- 건너뛰기: 루프를 즉시 종료하고 3단계로 이동
- 재생성: 아래 "2-4. 인라인 재생성" 서브플로우를 실행
2-4. 인라인 재생성 (TTS 팩 전용)
"재생성"을 선택하면, 해당 이벤트의 TTS 음성을 즉시 다시 생성합니다.
2-4-1. TTS 환경 확인
node "${CLAUDE_PLUGIN_ROOT}/skills/dd-tts-pack/scripts/check-env.mjs"
출력 JSON의 all_ok를 확인합니다.
all_ok: false→ "TTS 환경이 준비되지 않았습니다./dding-dong:dd-tts-pack으로 환경을 설정해주세요." 안내 후 2-2 선택지로 돌아감 (테스트는 계속)all_ok: true→python_path를 기억하고 다음 단계로 진행
2-4-2. 텍스트 변경 여부
현재 이벤트의 텍스트를 보여주고 AskUserQuestion으로 질문합니다:
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 First seen · 171 lines · 54 tokens per session scan A 2b5bab8749c4
dd-test is a skill published in the GitHub repository CaesiumY/dding-dong (2 stars, last pushed 6mo ago), licensed MIT. It adds 54 tokens to every session and 1,708 once invoked, about $0.0003 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-31.
Other skills, from other repositories
develop-small-feature
Implement a small, well-scoped feature or fix end-to-end from spec to PR — reuse or create a feature branch, implement test-first, run static checks, get user verification, commit, then open a PR to main.
expo-launchpad-evaluator
Phase A, step 6 — skeptical QA. Run the app, watch it, then judge against the contract. Default = functional check; --strict adds quality scoring and an edge-case sweep.
tdd
Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.
live-preview
Mid-build visual verification loop. Takes screenshots of components during construction, not just after. Catches visual regressions and invisible features before they compound. Requires Playwright or similar screenshot tool.
brooks-sweep
Full-sweep mode: runs a unified analysis across all quality dimensions — code decay, architecture, tech debt, and test quality — then applies fixes directly to the codebase. Safe changes are auto-applied; risky changes are confirmed before execution. Drawing on twelve classic engineering books. Triggers when: user…
api-testing
HTTP API testing for TypeScript (Supertest) and Python (httpx, pytest). Test REST APIs, GraphQL, request/response validation, authentication, and error handling.