@elizaos/skills 2.0.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +126 -0
- package/dist/formatter.d.ts +44 -0
- package/dist/formatter.d.ts.map +1 -0
- package/dist/formatter.js +182 -0
- package/dist/frontmatter.d.ts +39 -0
- package/dist/frontmatter.d.ts.map +1 -0
- package/dist/frontmatter.js +105 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +31 -0
- package/dist/loader.d.ts +33 -0
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +362 -0
- package/dist/resolver.d.ts +18 -0
- package/dist/resolver.d.ts.map +1 -0
- package/dist/resolver.js +90 -0
- package/dist/types.d.ts +201 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +1 -0
- package/package.json +57 -0
- package/skills/1password/SKILL.md +70 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/apple-notes/SKILL.md +77 -0
- package/skills/apple-reminders/SKILL.md +96 -0
- package/skills/bear-notes/SKILL.md +107 -0
- package/skills/bird/SKILL.md +224 -0
- package/skills/blogwatcher/SKILL.md +69 -0
- package/skills/blucli/SKILL.md +47 -0
- package/skills/bluebubbles/SKILL.md +131 -0
- package/skills/camsnap/SKILL.md +45 -0
- package/skills/canvas/SKILL.md +203 -0
- package/skills/clawhub/SKILL.md +77 -0
- package/skills/coding-agent/SKILL.md +284 -0
- package/skills/discord/SKILL.md +578 -0
- package/skills/eightctl/SKILL.md +50 -0
- package/skills/food-order/SKILL.md +48 -0
- package/skills/gemini/SKILL.md +43 -0
- package/skills/gifgrep/SKILL.md +79 -0
- package/skills/github/SKILL.md +77 -0
- package/skills/gog/SKILL.md +116 -0
- package/skills/goplaces/SKILL.md +52 -0
- package/skills/healthcheck/SKILL.md +245 -0
- package/skills/himalaya/SKILL.md +257 -0
- package/skills/himalaya/references/configuration.md +184 -0
- package/skills/himalaya/references/message-composition.md +199 -0
- package/skills/imsg/SKILL.md +74 -0
- package/skills/local-places/SERVER_README.md +101 -0
- package/skills/local-places/SKILL.md +102 -0
- package/skills/local-places/pyproject.toml +21 -0
- package/skills/local-places/src/local_places/__init__.py +2 -0
- package/skills/local-places/src/local_places/google_places.py +314 -0
- package/skills/local-places/src/local_places/main.py +65 -0
- package/skills/local-places/src/local_places/schemas.py +107 -0
- package/skills/mcporter/SKILL.md +61 -0
- package/skills/model-usage/SKILL.md +69 -0
- package/skills/model-usage/references/codexbar-cli.md +33 -0
- package/skills/model-usage/scripts/model_usage.py +310 -0
- package/skills/nano-banana-pro/SKILL.md +58 -0
- package/skills/nano-banana-pro/scripts/generate_image.py +184 -0
- package/skills/nano-pdf/SKILL.md +38 -0
- package/skills/notion/SKILL.md +172 -0
- package/skills/obsidian/SKILL.md +81 -0
- package/skills/openai-image-gen/SKILL.md +89 -0
- package/skills/openai-image-gen/scripts/gen.py +240 -0
- package/skills/openai-whisper/SKILL.md +38 -0
- package/skills/openai-whisper-api/SKILL.md +52 -0
- package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
- package/skills/openhue/SKILL.md +51 -0
- package/skills/oracle/SKILL.md +125 -0
- package/skills/ordercli/SKILL.md +78 -0
- package/skills/peekaboo/SKILL.md +190 -0
- package/skills/sag/SKILL.md +87 -0
- package/skills/security-ask-questions-if-underspecified/.claude-plugin/plugin.json +10 -0
- package/skills/security-ask-questions-if-underspecified/README.md +24 -0
- package/skills/security-ask-questions-if-underspecified/SKILL.md +85 -0
- package/skills/security-ask-questions-if-underspecified/skills/ask-questions-if-underspecified/SKILL.md +85 -0
- package/skills/security-audit-context-building/.claude-plugin/plugin.json +10 -0
- package/skills/security-audit-context-building/README.md +58 -0
- package/skills/security-audit-context-building/SKILL.md +297 -0
- package/skills/security-audit-context-building/commands/audit-context.md +21 -0
- package/skills/security-audit-context-building/skills/audit-context-building/SKILL.md +297 -0
- package/skills/security-audit-context-building/skills/audit-context-building/resources/COMPLETENESS_CHECKLIST.md +47 -0
- package/skills/security-audit-context-building/skills/audit-context-building/resources/FUNCTION_MICRO_ANALYSIS_EXAMPLE.md +355 -0
- package/skills/security-audit-context-building/skills/audit-context-building/resources/OUTPUT_REQUIREMENTS.md +71 -0
- package/skills/security-building-secure-contracts/.claude-plugin/plugin.json +10 -0
- package/skills/security-building-secure-contracts/README.md +241 -0
- package/skills/security-building-secure-contracts/SKILL.md +67 -0
- package/skills/security-building-secure-contracts/skills/algorand-vulnerability-scanner/SKILL.md +284 -0
- package/skills/security-building-secure-contracts/skills/algorand-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +405 -0
- package/skills/security-building-secure-contracts/skills/audit-prep-assistant/SKILL.md +409 -0
- package/skills/security-building-secure-contracts/skills/cairo-vulnerability-scanner/SKILL.md +329 -0
- package/skills/security-building-secure-contracts/skills/cairo-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +722 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/SKILL.md +218 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/ASSESSMENT_CRITERIA.md +355 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/EXAMPLE_REPORT.md +248 -0
- package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/REPORT_FORMAT.md +33 -0
- package/skills/security-building-secure-contracts/skills/cosmos-vulnerability-scanner/SKILL.md +334 -0
- package/skills/security-building-secure-contracts/skills/cosmos-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +740 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/SKILL.md +252 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/ASSESSMENT_AREAS.md +329 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/DELIVERABLES.md +118 -0
- package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/EXAMPLE_REPORT.md +298 -0
- package/skills/security-building-secure-contracts/skills/secure-workflow-guide/SKILL.md +161 -0
- package/skills/security-building-secure-contracts/skills/secure-workflow-guide/resources/EXAMPLE_REPORT.md +279 -0
- package/skills/security-building-secure-contracts/skills/secure-workflow-guide/resources/WORKFLOW_STEPS.md +132 -0
- package/skills/security-building-secure-contracts/skills/solana-vulnerability-scanner/SKILL.md +389 -0
- package/skills/security-building-secure-contracts/skills/solana-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +669 -0
- package/skills/security-building-secure-contracts/skills/substrate-vulnerability-scanner/SKILL.md +298 -0
- package/skills/security-building-secure-contracts/skills/substrate-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +791 -0
- package/skills/security-building-secure-contracts/skills/token-integration-analyzer/SKILL.md +362 -0
- package/skills/security-building-secure-contracts/skills/token-integration-analyzer/resources/ASSESSMENT_CATEGORIES.md +571 -0
- package/skills/security-building-secure-contracts/skills/token-integration-analyzer/resources/REPORT_TEMPLATES.md +141 -0
- package/skills/security-building-secure-contracts/skills/ton-vulnerability-scanner/SKILL.md +388 -0
- package/skills/security-building-secure-contracts/skills/ton-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +595 -0
- package/skills/security-differential-review/.claude-plugin/plugin.json +10 -0
- package/skills/security-differential-review/README.md +109 -0
- package/skills/security-differential-review/SKILL.md +220 -0
- package/skills/security-differential-review/commands/diff-review.md +21 -0
- package/skills/security-differential-review/skills/differential-review/SKILL.md +220 -0
- package/skills/security-differential-review/skills/differential-review/adversarial.md +203 -0
- package/skills/security-differential-review/skills/differential-review/methodology.md +234 -0
- package/skills/security-differential-review/skills/differential-review/patterns.md +300 -0
- package/skills/security-differential-review/skills/differential-review/reporting.md +369 -0
- package/skills/security-entry-point-analyzer/.claude-plugin/plugin.json +10 -0
- package/skills/security-entry-point-analyzer/README.md +74 -0
- package/skills/security-entry-point-analyzer/SKILL.md +251 -0
- package/skills/security-entry-point-analyzer/commands/entry-points.md +18 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/SKILL.md +251 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/cosmwasm.md +182 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/move-aptos.md +107 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/move-sui.md +87 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/solana.md +155 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/solidity.md +135 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/ton.md +185 -0
- package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/vyper.md +141 -0
- package/skills/security-fix-review/.claude-plugin/plugin.json +13 -0
- package/skills/security-fix-review/README.md +118 -0
- package/skills/security-fix-review/SKILL.md +264 -0
- package/skills/security-fix-review/commands/fix-review.md +24 -0
- package/skills/security-fix-review/skills/fix-review/SKILL.md +264 -0
- package/skills/security-fix-review/skills/fix-review/references/bug-detection.md +408 -0
- package/skills/security-fix-review/skills/fix-review/references/finding-matching.md +298 -0
- package/skills/security-fix-review/skills/fix-review/references/report-parsing.md +398 -0
- package/skills/security-insecure-defaults/.claude-plugin/plugin.json +10 -0
- package/skills/security-insecure-defaults/README.md +45 -0
- package/skills/security-insecure-defaults/SKILL.md +117 -0
- package/skills/security-insecure-defaults/skills/insecure-defaults/SKILL.md +117 -0
- package/skills/security-insecure-defaults/skills/insecure-defaults/references/examples.md +409 -0
- package/skills/security-modern-python/.claude-plugin/plugin.json +10 -0
- package/skills/security-modern-python/README.md +58 -0
- package/skills/security-modern-python/SKILL.md +333 -0
- package/skills/security-modern-python/hooks/hooks.json +16 -0
- package/skills/security-modern-python/hooks/intercept-legacy-python.bats +388 -0
- package/skills/security-modern-python/hooks/intercept-legacy-python.sh +109 -0
- package/skills/security-modern-python/hooks/test_helper.bash +75 -0
- package/skills/security-modern-python/skills/modern-python/SKILL.md +333 -0
- package/skills/security-modern-python/skills/modern-python/references/dependabot.md +43 -0
- package/skills/security-modern-python/skills/modern-python/references/migration-checklist.md +141 -0
- package/skills/security-modern-python/skills/modern-python/references/pep723-scripts.md +259 -0
- package/skills/security-modern-python/skills/modern-python/references/prek.md +211 -0
- package/skills/security-modern-python/skills/modern-python/references/pyproject.md +254 -0
- package/skills/security-modern-python/skills/modern-python/references/ruff-config.md +240 -0
- package/skills/security-modern-python/skills/modern-python/references/security-setup.md +255 -0
- package/skills/security-modern-python/skills/modern-python/references/testing.md +284 -0
- package/skills/security-modern-python/skills/modern-python/references/uv-commands.md +200 -0
- package/skills/security-modern-python/skills/modern-python/templates/dependabot.yml +36 -0
- package/skills/security-modern-python/skills/modern-python/templates/pre-commit-config.yaml +66 -0
- package/skills/security-property-based-testing/.claude-plugin/plugin.json +9 -0
- package/skills/security-property-based-testing/README.md +47 -0
- package/skills/security-property-based-testing/SKILL.md +109 -0
- package/skills/security-property-based-testing/skills/property-based-testing/README.md +88 -0
- package/skills/security-property-based-testing/skills/property-based-testing/SKILL.md +109 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/design.md +191 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/generating.md +200 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/libraries.md +130 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/refactoring.md +181 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/reviewing.md +209 -0
- package/skills/security-property-based-testing/skills/property-based-testing/references/strategies.md +124 -0
- package/skills/semgrep-rule-creator/.claude-plugin/plugin.json +8 -0
- package/skills/semgrep-rule-creator/README.md +43 -0
- package/skills/semgrep-rule-creator/SKILL.md +168 -0
- package/skills/semgrep-rule-creator/commands/semgrep-rule.md +26 -0
- package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/SKILL.md +168 -0
- package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/references/quick-reference.md +203 -0
- package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/references/workflow.md +240 -0
- package/skills/session-logs/SKILL.md +115 -0
- package/skills/sharp-edges/.claude-plugin/plugin.json +10 -0
- package/skills/sharp-edges/README.md +48 -0
- package/skills/sharp-edges/SKILL.md +292 -0
- package/skills/sharp-edges/skills/sharp-edges/SKILL.md +292 -0
- package/skills/sharp-edges/skills/sharp-edges/references/auth-patterns.md +252 -0
- package/skills/sharp-edges/skills/sharp-edges/references/case-studies.md +274 -0
- package/skills/sharp-edges/skills/sharp-edges/references/config-patterns.md +333 -0
- package/skills/sharp-edges/skills/sharp-edges/references/crypto-apis.md +190 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-c.md +205 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-csharp.md +285 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-go.md +270 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-java.md +263 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-javascript.md +269 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-kotlin.md +265 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-php.md +245 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-python.md +274 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-ruby.md +273 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-rust.md +272 -0
- package/skills/sharp-edges/skills/sharp-edges/references/lang-swift.md +287 -0
- package/skills/sharp-edges/skills/sharp-edges/references/language-specific.md +588 -0
- package/skills/sherpa-onnx-tts/SKILL.md +103 -0
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
- package/skills/skill-creator/SKILL.md +370 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/scripts/init_skill.py +378 -0
- package/skills/skill-creator/scripts/package_skill.py +111 -0
- package/skills/skill-creator/scripts/quick_validate.py +101 -0
- package/skills/slack/SKILL.md +144 -0
- package/skills/songsee/SKILL.md +49 -0
- package/skills/sonoscli/SKILL.md +46 -0
- package/skills/spec-to-code-compliance/.claude-plugin/plugin.json +10 -0
- package/skills/spec-to-code-compliance/README.md +67 -0
- package/skills/spec-to-code-compliance/SKILL.md +349 -0
- package/skills/spec-to-code-compliance/commands/spec-compliance.md +22 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/SKILL.md +349 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/COMPLETENESS_CHECKLIST.md +69 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/IR_EXAMPLES.md +417 -0
- package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/OUTPUT_REQUIREMENTS.md +105 -0
- package/skills/spotify-player/SKILL.md +64 -0
- package/skills/static-analysis/.claude-plugin/plugin.json +8 -0
- package/skills/static-analysis/README.md +59 -0
- package/skills/static-analysis/SKILL.md +91 -0
- package/skills/static-analysis/skills/codeql/SKILL.md +315 -0
- package/skills/static-analysis/skills/sarif-parsing/SKILL.md +479 -0
- package/skills/static-analysis/skills/sarif-parsing/resources/jq-queries.md +162 -0
- package/skills/static-analysis/skills/sarif-parsing/resources/sarif_helpers.py +331 -0
- package/skills/static-analysis/skills/semgrep/SKILL.md +337 -0
- package/skills/summarize/SKILL.md +87 -0
- package/skills/testing-handbook-skills/.claude-plugin/plugin.json +8 -0
- package/skills/testing-handbook-skills/README.md +241 -0
- package/skills/testing-handbook-skills/SKILL.md +104 -0
- package/skills/testing-handbook-skills/scripts/pyproject.toml +8 -0
- package/skills/testing-handbook-skills/scripts/validate-skills.py +657 -0
- package/skills/testing-handbook-skills/skills/address-sanitizer/SKILL.md +341 -0
- package/skills/testing-handbook-skills/skills/aflpp/SKILL.md +640 -0
- package/skills/testing-handbook-skills/skills/atheris/SKILL.md +515 -0
- package/skills/testing-handbook-skills/skills/cargo-fuzz/SKILL.md +454 -0
- package/skills/testing-handbook-skills/skills/codeql/SKILL.md +549 -0
- package/skills/testing-handbook-skills/skills/constant-time-testing/SKILL.md +507 -0
- package/skills/testing-handbook-skills/skills/coverage-analysis/SKILL.md +607 -0
- package/skills/testing-handbook-skills/skills/fuzzing-dictionary/SKILL.md +297 -0
- package/skills/testing-handbook-skills/skills/fuzzing-obstacles/SKILL.md +426 -0
- package/skills/testing-handbook-skills/skills/harness-writing/SKILL.md +614 -0
- package/skills/testing-handbook-skills/skills/libafl/SKILL.md +625 -0
- package/skills/testing-handbook-skills/skills/libfuzzer/SKILL.md +795 -0
- package/skills/testing-handbook-skills/skills/ossfuzz/SKILL.md +426 -0
- package/skills/testing-handbook-skills/skills/ruzzy/SKILL.md +443 -0
- package/skills/testing-handbook-skills/skills/semgrep/SKILL.md +601 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/SKILL.md +372 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/agent-prompt.md +280 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/discovery.md +452 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/domain-skill.md +504 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/fuzzer-skill.md +454 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/technique-skill.md +527 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/tool-skill.md +366 -0
- package/skills/testing-handbook-skills/skills/testing-handbook-generator/testing.md +482 -0
- package/skills/testing-handbook-skills/skills/wycheproof/SKILL.md +533 -0
- package/skills/things-mac/SKILL.md +86 -0
- package/skills/tmux/SKILL.md +135 -0
- package/skills/tmux/scripts/find-sessions.sh +112 -0
- package/skills/tmux/scripts/wait-for-text.sh +83 -0
- package/skills/trello/SKILL.md +95 -0
- package/skills/variant-analysis/.claude-plugin/plugin.json +8 -0
- package/skills/variant-analysis/README.md +41 -0
- package/skills/variant-analysis/SKILL.md +142 -0
- package/skills/variant-analysis/commands/variants.md +23 -0
- package/skills/variant-analysis/skills/variant-analysis/METHODOLOGY.md +327 -0
- package/skills/variant-analysis/skills/variant-analysis/SKILL.md +142 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/cpp.ql +119 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/go.ql +69 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/java.ql +71 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/javascript.ql +63 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/codeql/python.ql +80 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/cpp.yaml +98 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/go.yaml +63 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/java.yaml +61 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/javascript.yaml +60 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/python.yaml +72 -0
- package/skills/variant-analysis/skills/variant-analysis/resources/variant-report-template.md +75 -0
- package/skills/video-frames/SKILL.md +46 -0
- package/skills/video-frames/scripts/frame.sh +81 -0
- package/skills/voice-call/SKILL.md +45 -0
- package/skills/wacli/SKILL.md +72 -0
- package/skills/weather/SKILL.md +54 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: summarize
|
|
3
|
+
description: Summarize or extract text/transcripts from URLs, podcasts, and local files (great fallback for “transcribe this YouTube/video”).
|
|
4
|
+
homepage: https://summarize.sh
|
|
5
|
+
metadata:
|
|
6
|
+
{
|
|
7
|
+
"otto":
|
|
8
|
+
{
|
|
9
|
+
"emoji": "🧾",
|
|
10
|
+
"requires": { "bins": ["summarize"] },
|
|
11
|
+
"install":
|
|
12
|
+
[
|
|
13
|
+
{
|
|
14
|
+
"id": "brew",
|
|
15
|
+
"kind": "brew",
|
|
16
|
+
"formula": "steipete/tap/summarize",
|
|
17
|
+
"bins": ["summarize"],
|
|
18
|
+
"label": "Install summarize (brew)",
|
|
19
|
+
},
|
|
20
|
+
],
|
|
21
|
+
},
|
|
22
|
+
}
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# Summarize
|
|
26
|
+
|
|
27
|
+
Fast CLI to summarize URLs, local files, and YouTube links.
|
|
28
|
+
|
|
29
|
+
## When to use (trigger phrases)
|
|
30
|
+
|
|
31
|
+
Use this skill immediately when the user asks any of:
|
|
32
|
+
|
|
33
|
+
- “use summarize.sh”
|
|
34
|
+
- “what’s this link/video about?”
|
|
35
|
+
- “summarize this URL/article”
|
|
36
|
+
- “transcribe this YouTube/video” (best-effort transcript extraction; no `yt-dlp` needed)
|
|
37
|
+
|
|
38
|
+
## Quick start
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
summarize "https://example.com" --model google/gemini-3-flash-preview
|
|
42
|
+
summarize "/path/to/file.pdf" --model google/gemini-3-flash-preview
|
|
43
|
+
summarize "https://youtu.be/dQw4w9WgXcQ" --youtube auto
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## YouTube: summary vs transcript
|
|
47
|
+
|
|
48
|
+
Best-effort transcript (URLs only):
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
summarize "https://youtu.be/dQw4w9WgXcQ" --youtube auto --extract-only
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
If the user asked for a transcript but it’s huge, return a tight summary first, then ask which section/time range to expand.
|
|
55
|
+
|
|
56
|
+
## Model + keys
|
|
57
|
+
|
|
58
|
+
Set the API key for your chosen provider:
|
|
59
|
+
|
|
60
|
+
- OpenAI: `OPENAI_API_KEY`
|
|
61
|
+
- Anthropic: `ANTHROPIC_API_KEY`
|
|
62
|
+
- xAI: `XAI_API_KEY`
|
|
63
|
+
- Google: `GEMINI_API_KEY` (aliases: `GOOGLE_GENERATIVE_AI_API_KEY`, `GOOGLE_API_KEY`)
|
|
64
|
+
|
|
65
|
+
Default model is `google/gemini-3-flash-preview` if none is set.
|
|
66
|
+
|
|
67
|
+
## Useful flags
|
|
68
|
+
|
|
69
|
+
- `--length short|medium|long|xl|xxl|<chars>`
|
|
70
|
+
- `--max-output-tokens <count>`
|
|
71
|
+
- `--extract-only` (URLs only)
|
|
72
|
+
- `--json` (machine readable)
|
|
73
|
+
- `--firecrawl auto|off|always` (fallback extraction)
|
|
74
|
+
- `--youtube auto` (Apify fallback if `APIFY_API_TOKEN` set)
|
|
75
|
+
|
|
76
|
+
## Config
|
|
77
|
+
|
|
78
|
+
Optional config file: `~/.summarize/config.json`
|
|
79
|
+
|
|
80
|
+
```json
|
|
81
|
+
{ "model": "openai/gpt-5.2" }
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Optional services:
|
|
85
|
+
|
|
86
|
+
- `FIRECRAWL_API_KEY` for blocked sites
|
|
87
|
+
- `APIFY_API_TOKEN` for YouTube fallback
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
# Testing Handbook Skills
|
|
2
|
+
|
|
3
|
+
Meta-skill that generates Claude Code skills from the [Trail of Bits Application Security Testing Handbook](https://appsec.guide).
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This plugin provides a skill generator that:
|
|
8
|
+
|
|
9
|
+
1. Analyzes the Testing Handbook structure
|
|
10
|
+
2. Identifies skill candidates (tools, techniques, domains)
|
|
11
|
+
3. Generates skills using appropriate templates
|
|
12
|
+
4. Validates generated skills
|
|
13
|
+
|
|
14
|
+
## Installation
|
|
15
|
+
|
|
16
|
+
Add to your Claude Code skills configuration:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# From the skills marketplace
|
|
20
|
+
claude skills install testing-handbook-skills
|
|
21
|
+
|
|
22
|
+
# Or manually add to .claude/settings.json
|
|
23
|
+
{
|
|
24
|
+
"plugins": [
|
|
25
|
+
"./plugins/testing-handbook-skills"
|
|
26
|
+
]
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Usage
|
|
31
|
+
|
|
32
|
+
### Generate All Skills
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
Generate skills from the testing handbook
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
This will:
|
|
39
|
+
1. Locate the handbook (check common locations, ask user, or clone)
|
|
40
|
+
2. Scan the handbook structure
|
|
41
|
+
3. Present a plan of skills to generate
|
|
42
|
+
4. On approval, generate skills as siblings to `testing-handbook-generator/`
|
|
43
|
+
|
|
44
|
+
### Generate Specific Skill
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
Create a skill for the libFuzzer section of the testing handbook
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Structure
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
plugins/testing-handbook-skills/
|
|
54
|
+
├── .claude-plugin/
|
|
55
|
+
│ └── plugin.json
|
|
56
|
+
├── scripts/
|
|
57
|
+
│ └── validate-skills.py # Skill validation tool
|
|
58
|
+
├── skills/
|
|
59
|
+
│ ├── testing-handbook-generator/
|
|
60
|
+
│ │ ├── SKILL.md # Main skill entry point
|
|
61
|
+
│ │ ├── discovery.md # Handbook analysis methodology
|
|
62
|
+
│ │ ├── testing.md # Validation strategy
|
|
63
|
+
│ │ ├── agent-prompt.md # Agent prompt template for generation
|
|
64
|
+
│ │ └── templates/ # Skill generation templates
|
|
65
|
+
│ │ ├── tool-skill.md # Semgrep, CodeQL
|
|
66
|
+
│ │ ├── fuzzer-skill.md # libFuzzer, AFL++, cargo-fuzz
|
|
67
|
+
│ │ ├── technique-skill.md # Harness writing, coverage
|
|
68
|
+
│ │ └── domain-skill.md # Crypto testing, web security
|
|
69
|
+
│ ├── [generated-skill]/ # Generated skills (siblings to generator)
|
|
70
|
+
│ │ └── SKILL.md
|
|
71
|
+
│ └── ...
|
|
72
|
+
└── README.md
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Scripts
|
|
76
|
+
|
|
77
|
+
| Script | Purpose |
|
|
78
|
+
|--------|---------|
|
|
79
|
+
| `validate-skills.py` | Validates generated skills (YAML, sections, line count, shortcodes, cross-refs) |
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
# Validate all skills
|
|
83
|
+
uv run scripts/validate-skills.py
|
|
84
|
+
|
|
85
|
+
# Validate specific skill
|
|
86
|
+
uv run scripts/validate-skills.py --skill libfuzzer
|
|
87
|
+
|
|
88
|
+
# JSON output for CI
|
|
89
|
+
uv run scripts/validate-skills.py --json
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Skill Types
|
|
93
|
+
|
|
94
|
+
| Type | Template | Example Sources |
|
|
95
|
+
|------|----------|-----------------|
|
|
96
|
+
| Tool | tool-skill.md | Semgrep, CodeQL |
|
|
97
|
+
| Fuzzer | fuzzer-skill.md | libFuzzer, AFL++, cargo-fuzz |
|
|
98
|
+
| Technique | technique-skill.md | Harness writing, coverage analysis |
|
|
99
|
+
| Domain | domain-skill.md | Wycheproof, constant-time testing |
|
|
100
|
+
|
|
101
|
+
## Generated Skills
|
|
102
|
+
|
|
103
|
+
Generated skills are written as siblings to the generator:
|
|
104
|
+
```
|
|
105
|
+
skills/[skill-name]/SKILL.md
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Each generated skill:
|
|
109
|
+
- Follows the appropriate template structure
|
|
110
|
+
- Contains content extracted from the handbook
|
|
111
|
+
- Includes resource links (WebFetch summaries for non-videos)
|
|
112
|
+
- Is validated with `scripts/validate-skills.py` before delivery
|
|
113
|
+
|
|
114
|
+
## Skills Cross-Reference
|
|
115
|
+
|
|
116
|
+
This graph shows the 16 generated skills and their cross-references (from the Related Skills section of each skill). Only links between actually generated skills are shown.
|
|
117
|
+
|
|
118
|
+
```mermaid
|
|
119
|
+
graph TB
|
|
120
|
+
subgraph Fuzzers
|
|
121
|
+
libfuzzer[libfuzzer]
|
|
122
|
+
aflpp[aflpp]
|
|
123
|
+
libafl[libafl]
|
|
124
|
+
cargo-fuzz[cargo-fuzz]
|
|
125
|
+
atheris[atheris]
|
|
126
|
+
ruzzy[ruzzy]
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
subgraph Techniques
|
|
130
|
+
harness-writing[harness-writing]
|
|
131
|
+
address-sanitizer[address-sanitizer]
|
|
132
|
+
coverage-analysis[coverage-analysis]
|
|
133
|
+
fuzzing-dictionary[fuzzing-dictionary]
|
|
134
|
+
fuzzing-obstacles[fuzzing-obstacles]
|
|
135
|
+
ossfuzz[ossfuzz]
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
subgraph Tools
|
|
139
|
+
semgrep[semgrep]
|
|
140
|
+
codeql[codeql]
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
subgraph Domain
|
|
144
|
+
wycheproof[wycheproof]
|
|
145
|
+
constant-time-testing[constant-time-testing]
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
%% Fuzzer → Technique references
|
|
149
|
+
libfuzzer --> address-sanitizer
|
|
150
|
+
libfuzzer --> coverage-analysis
|
|
151
|
+
aflpp --> address-sanitizer
|
|
152
|
+
cargo-fuzz --> address-sanitizer
|
|
153
|
+
cargo-fuzz --> coverage-analysis
|
|
154
|
+
libafl --> address-sanitizer
|
|
155
|
+
libafl --> coverage-analysis
|
|
156
|
+
atheris --> address-sanitizer
|
|
157
|
+
atheris --> coverage-analysis
|
|
158
|
+
ruzzy --> address-sanitizer
|
|
159
|
+
|
|
160
|
+
%% Fuzzer ↔ Fuzzer alternatives
|
|
161
|
+
libfuzzer -.-> aflpp
|
|
162
|
+
libfuzzer -.-> libafl
|
|
163
|
+
aflpp -.-> libfuzzer
|
|
164
|
+
aflpp -.-> libafl
|
|
165
|
+
cargo-fuzz -.-> libfuzzer
|
|
166
|
+
cargo-fuzz -.-> aflpp
|
|
167
|
+
cargo-fuzz -.-> libafl
|
|
168
|
+
libafl -.-> libfuzzer
|
|
169
|
+
libafl -.-> aflpp
|
|
170
|
+
libafl -.-> cargo-fuzz
|
|
171
|
+
ruzzy -.-> libfuzzer
|
|
172
|
+
ruzzy -.-> aflpp
|
|
173
|
+
|
|
174
|
+
%% Tool ↔ Tool alternatives
|
|
175
|
+
semgrep -.-> codeql
|
|
176
|
+
codeql -.-> semgrep
|
|
177
|
+
|
|
178
|
+
%% Technique → Fuzzer references
|
|
179
|
+
harness-writing --> libfuzzer
|
|
180
|
+
harness-writing --> aflpp
|
|
181
|
+
harness-writing --> cargo-fuzz
|
|
182
|
+
harness-writing --> atheris
|
|
183
|
+
harness-writing --> ossfuzz
|
|
184
|
+
fuzzing-dictionary --> libfuzzer
|
|
185
|
+
fuzzing-dictionary --> aflpp
|
|
186
|
+
fuzzing-dictionary --> cargo-fuzz
|
|
187
|
+
fuzzing-obstacles --> libfuzzer
|
|
188
|
+
fuzzing-obstacles --> aflpp
|
|
189
|
+
fuzzing-obstacles --> cargo-fuzz
|
|
190
|
+
ossfuzz --> libfuzzer
|
|
191
|
+
ossfuzz --> aflpp
|
|
192
|
+
ossfuzz --> cargo-fuzz
|
|
193
|
+
ossfuzz --> atheris
|
|
194
|
+
|
|
195
|
+
%% Technique cross-references
|
|
196
|
+
harness-writing --> address-sanitizer
|
|
197
|
+
harness-writing --> coverage-analysis
|
|
198
|
+
harness-writing --> fuzzing-dictionary
|
|
199
|
+
harness-writing --> fuzzing-obstacles
|
|
200
|
+
fuzzing-dictionary --> coverage-analysis
|
|
201
|
+
fuzzing-dictionary --> harness-writing
|
|
202
|
+
address-sanitizer --> coverage-analysis
|
|
203
|
+
ossfuzz --> address-sanitizer
|
|
204
|
+
ossfuzz --> coverage-analysis
|
|
205
|
+
|
|
206
|
+
%% Domain → Technique references
|
|
207
|
+
wycheproof --> coverage-analysis
|
|
208
|
+
constant-time-testing --> coverage-analysis
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
**Legend:**
|
|
212
|
+
- Solid arrows (`→`): Primary dependencies (techniques, tools used together)
|
|
213
|
+
- Dashed arrows (`-.->`): Alternative suggestions (similar tools/fuzzers)
|
|
214
|
+
|
|
215
|
+
**Generated Skills Summary:**
|
|
216
|
+
|
|
217
|
+
| Type | Skills |
|
|
218
|
+
|------|--------|
|
|
219
|
+
| Fuzzers (6) | libfuzzer, aflpp, libafl, cargo-fuzz, atheris, ruzzy |
|
|
220
|
+
| Techniques (6) | harness-writing, address-sanitizer, coverage-analysis, fuzzing-dictionary, fuzzing-obstacles, ossfuzz |
|
|
221
|
+
| Tools (2) | semgrep, codeql |
|
|
222
|
+
| Domain (2) | wycheproof, constant-time-testing |
|
|
223
|
+
|
|
224
|
+
**Note:** Some skills reference planned/external skills not yet generated (e.g., `honggfuzz`, `fuzzing-corpus`, `sarif-parsing`). Run `validate-skills.py` to see the full list.
|
|
225
|
+
|
|
226
|
+
## Configuration
|
|
227
|
+
|
|
228
|
+
The skill will automatically:
|
|
229
|
+
1. Check common locations (`./testing-handbook`, `../testing-handbook`, `~/testing-handbook`)
|
|
230
|
+
2. Ask the user for the path if not found
|
|
231
|
+
3. Clone from GitHub as last resort: `https://github.com/trailofbits/testing-handbook`
|
|
232
|
+
|
|
233
|
+
No hardcoded paths are used - the skill adapts to your environment.
|
|
234
|
+
|
|
235
|
+
## Author
|
|
236
|
+
|
|
237
|
+
Paweł Płatek
|
|
238
|
+
|
|
239
|
+
## License
|
|
240
|
+
|
|
241
|
+
See repository license.
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: testing-handbook-skills
|
|
3
|
+
description: "Application security testing toolkit from the Trail of Bits Testing Handbook. Covers fuzzing (libFuzzer, AFL++, cargo-fuzz, Atheris, Ruzzy), coverage analysis, harness writing, sanitizers, static analysis (Semgrep, CodeQL), and cryptographic testing (Wycheproof, constant-time)."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Testing Handbook Skills
|
|
7
|
+
|
|
8
|
+
Comprehensive security testing toolkit generated from the [Trail of Bits Application Security Testing Handbook](https://appsec.guide/).
|
|
9
|
+
|
|
10
|
+
## When to Use
|
|
11
|
+
|
|
12
|
+
- Setting up fuzzing campaigns for C/C++, Rust, Python, or Ruby
|
|
13
|
+
- Writing fuzzing harnesses for target functions
|
|
14
|
+
- Analyzing code coverage to guide testing
|
|
15
|
+
- Running sanitizers (AddressSanitizer, UBSan, MSan) to catch memory bugs
|
|
16
|
+
- Performing constant-time testing for cryptographic code
|
|
17
|
+
- Using Wycheproof test vectors for crypto validation
|
|
18
|
+
|
|
19
|
+
## When NOT to Use
|
|
20
|
+
|
|
21
|
+
- Smart contract auditing (use security-building-secure-contracts)
|
|
22
|
+
- Writing custom Semgrep rules (use semgrep-rule-creator)
|
|
23
|
+
- General code review (use security-differential-review)
|
|
24
|
+
- Vulnerability hunting without a testing plan (use audit-context-building first)
|
|
25
|
+
|
|
26
|
+
## Sub-Skills (17 total)
|
|
27
|
+
|
|
28
|
+
### Fuzzers
|
|
29
|
+
|
|
30
|
+
| Fuzzer | Language | Best For | Skill Path |
|
|
31
|
+
|--------|----------|----------|------------|
|
|
32
|
+
| **libFuzzer** | C/C++ | LLVM-based coverage-guided fuzzing | [skills/libfuzzer/SKILL.md](skills/libfuzzer/SKILL.md) |
|
|
33
|
+
| **AFL++** | C/C++ | Advanced mutation-based fuzzing | [skills/aflpp/SKILL.md](skills/aflpp/SKILL.md) |
|
|
34
|
+
| **libAFL** | C/C++ | LibAFL-based custom fuzzers | [skills/libafl/SKILL.md](skills/libafl/SKILL.md) |
|
|
35
|
+
| **cargo-fuzz** | Rust | Rust native fuzzing with libFuzzer backend | [skills/cargo-fuzz/SKILL.md](skills/cargo-fuzz/SKILL.md) |
|
|
36
|
+
| **Atheris** | Python | Python coverage-guided fuzzing | [skills/atheris/SKILL.md](skills/atheris/SKILL.md) |
|
|
37
|
+
| **Ruzzy** | Ruby | Ruby coverage-guided fuzzing | [skills/ruzzy/SKILL.md](skills/ruzzy/SKILL.md) |
|
|
38
|
+
|
|
39
|
+
### Techniques
|
|
40
|
+
|
|
41
|
+
| Technique | Purpose | Skill Path |
|
|
42
|
+
|-----------|---------|------------|
|
|
43
|
+
| **Harness Writing** | Writing effective fuzzing harnesses | [skills/harness-writing/SKILL.md](skills/harness-writing/SKILL.md) |
|
|
44
|
+
| **Coverage Analysis** | Measuring and improving code coverage | [skills/coverage-analysis/SKILL.md](skills/coverage-analysis/SKILL.md) |
|
|
45
|
+
| **Fuzzing Dictionary** | Creating effective fuzzing dictionaries | [skills/fuzzing-dictionary/SKILL.md](skills/fuzzing-dictionary/SKILL.md) |
|
|
46
|
+
| **Fuzzing Obstacles** | Overcoming common fuzzing barriers | [skills/fuzzing-obstacles/SKILL.md](skills/fuzzing-obstacles/SKILL.md) |
|
|
47
|
+
| **AddressSanitizer** | Memory error detection with ASan | [skills/address-sanitizer/SKILL.md](skills/address-sanitizer/SKILL.md) |
|
|
48
|
+
|
|
49
|
+
### Static Analysis
|
|
50
|
+
|
|
51
|
+
| Tool | Purpose | Skill Path |
|
|
52
|
+
|------|---------|------------|
|
|
53
|
+
| **Semgrep** | Fast pattern-matching security scans | [skills/semgrep/SKILL.md](skills/semgrep/SKILL.md) |
|
|
54
|
+
| **CodeQL** | Deep semantic code analysis | [skills/codeql/SKILL.md](skills/codeql/SKILL.md) |
|
|
55
|
+
|
|
56
|
+
### Cryptographic Testing
|
|
57
|
+
|
|
58
|
+
| Tool | Purpose | Skill Path |
|
|
59
|
+
|------|---------|------------|
|
|
60
|
+
| **Wycheproof** | Test vectors for crypto implementations | [skills/wycheproof/SKILL.md](skills/wycheproof/SKILL.md) |
|
|
61
|
+
| **Constant-Time Testing** | Verify constant-time crypto properties | [skills/constant-time-testing/SKILL.md](skills/constant-time-testing/SKILL.md) |
|
|
62
|
+
|
|
63
|
+
### Infrastructure
|
|
64
|
+
|
|
65
|
+
| Tool | Purpose | Skill Path |
|
|
66
|
+
|------|---------|------------|
|
|
67
|
+
| **OSS-Fuzz** | Google's continuous fuzzing service | [skills/ossfuzz/SKILL.md](skills/ossfuzz/SKILL.md) |
|
|
68
|
+
|
|
69
|
+
### Meta
|
|
70
|
+
|
|
71
|
+
| Tool | Purpose | Skill Path |
|
|
72
|
+
|------|---------|------------|
|
|
73
|
+
| **Generator** | Generate new skills from the Testing Handbook | [skills/testing-handbook-generator/SKILL.md](skills/testing-handbook-generator/SKILL.md) |
|
|
74
|
+
|
|
75
|
+
## Workflow
|
|
76
|
+
|
|
77
|
+
### Starting a fuzzing campaign
|
|
78
|
+
|
|
79
|
+
1. **Choose a fuzzer** based on your target language (see Fuzzers table)
|
|
80
|
+
2. **Write a harness** using the harness-writing skill
|
|
81
|
+
3. **Build with sanitizers** (AddressSanitizer recommended as baseline)
|
|
82
|
+
4. **Create a seed corpus** with representative inputs
|
|
83
|
+
5. **Run the campaign** and monitor coverage
|
|
84
|
+
6. **Analyze coverage** to find uncovered code and improve the harness
|
|
85
|
+
7. **Triage crashes** and deduplicate findings
|
|
86
|
+
|
|
87
|
+
### Setting up CI/CD testing
|
|
88
|
+
|
|
89
|
+
1. **OSS-Fuzz** for open-source projects (continuous fuzzing)
|
|
90
|
+
2. **Semgrep + CodeQL** for static analysis in PRs
|
|
91
|
+
3. **Wycheproof** test vectors for crypto validation
|
|
92
|
+
|
|
93
|
+
## Quick Start by Language
|
|
94
|
+
|
|
95
|
+
| Language | Fuzzer | Harness | Sanitizer |
|
|
96
|
+
|----------|--------|---------|-----------|
|
|
97
|
+
| C/C++ | libFuzzer or AFL++ | `LLVMFuzzerTestOneInput` | ASan + UBSan |
|
|
98
|
+
| Rust | cargo-fuzz | `fuzz_target!` macro | Built-in sanitizers |
|
|
99
|
+
| Python | Atheris | `atheris.FuzzedDataProvider` | N/A |
|
|
100
|
+
| Ruby | Ruzzy | `ruzzy` harness pattern | N/A |
|
|
101
|
+
|
|
102
|
+
## Source Material
|
|
103
|
+
|
|
104
|
+
Generated from the [Trail of Bits Application Security Testing Handbook](https://appsec.guide/) using the testing-handbook-generator meta-skill.
|