@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.
Files changed (291) hide show
  1. package/README.md +126 -0
  2. package/dist/formatter.d.ts +44 -0
  3. package/dist/formatter.d.ts.map +1 -0
  4. package/dist/formatter.js +182 -0
  5. package/dist/frontmatter.d.ts +39 -0
  6. package/dist/frontmatter.d.ts.map +1 -0
  7. package/dist/frontmatter.js +105 -0
  8. package/dist/index.d.ts +29 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +31 -0
  11. package/dist/loader.d.ts +33 -0
  12. package/dist/loader.d.ts.map +1 -0
  13. package/dist/loader.js +362 -0
  14. package/dist/resolver.d.ts +18 -0
  15. package/dist/resolver.d.ts.map +1 -0
  16. package/dist/resolver.js +90 -0
  17. package/dist/types.d.ts +201 -0
  18. package/dist/types.d.ts.map +1 -0
  19. package/dist/types.js +1 -0
  20. package/package.json +57 -0
  21. package/skills/1password/SKILL.md +70 -0
  22. package/skills/1password/references/cli-examples.md +29 -0
  23. package/skills/1password/references/get-started.md +17 -0
  24. package/skills/apple-notes/SKILL.md +77 -0
  25. package/skills/apple-reminders/SKILL.md +96 -0
  26. package/skills/bear-notes/SKILL.md +107 -0
  27. package/skills/bird/SKILL.md +224 -0
  28. package/skills/blogwatcher/SKILL.md +69 -0
  29. package/skills/blucli/SKILL.md +47 -0
  30. package/skills/bluebubbles/SKILL.md +131 -0
  31. package/skills/camsnap/SKILL.md +45 -0
  32. package/skills/canvas/SKILL.md +203 -0
  33. package/skills/clawhub/SKILL.md +77 -0
  34. package/skills/coding-agent/SKILL.md +284 -0
  35. package/skills/discord/SKILL.md +578 -0
  36. package/skills/eightctl/SKILL.md +50 -0
  37. package/skills/food-order/SKILL.md +48 -0
  38. package/skills/gemini/SKILL.md +43 -0
  39. package/skills/gifgrep/SKILL.md +79 -0
  40. package/skills/github/SKILL.md +77 -0
  41. package/skills/gog/SKILL.md +116 -0
  42. package/skills/goplaces/SKILL.md +52 -0
  43. package/skills/healthcheck/SKILL.md +245 -0
  44. package/skills/himalaya/SKILL.md +257 -0
  45. package/skills/himalaya/references/configuration.md +184 -0
  46. package/skills/himalaya/references/message-composition.md +199 -0
  47. package/skills/imsg/SKILL.md +74 -0
  48. package/skills/local-places/SERVER_README.md +101 -0
  49. package/skills/local-places/SKILL.md +102 -0
  50. package/skills/local-places/pyproject.toml +21 -0
  51. package/skills/local-places/src/local_places/__init__.py +2 -0
  52. package/skills/local-places/src/local_places/google_places.py +314 -0
  53. package/skills/local-places/src/local_places/main.py +65 -0
  54. package/skills/local-places/src/local_places/schemas.py +107 -0
  55. package/skills/mcporter/SKILL.md +61 -0
  56. package/skills/model-usage/SKILL.md +69 -0
  57. package/skills/model-usage/references/codexbar-cli.md +33 -0
  58. package/skills/model-usage/scripts/model_usage.py +310 -0
  59. package/skills/nano-banana-pro/SKILL.md +58 -0
  60. package/skills/nano-banana-pro/scripts/generate_image.py +184 -0
  61. package/skills/nano-pdf/SKILL.md +38 -0
  62. package/skills/notion/SKILL.md +172 -0
  63. package/skills/obsidian/SKILL.md +81 -0
  64. package/skills/openai-image-gen/SKILL.md +89 -0
  65. package/skills/openai-image-gen/scripts/gen.py +240 -0
  66. package/skills/openai-whisper/SKILL.md +38 -0
  67. package/skills/openai-whisper-api/SKILL.md +52 -0
  68. package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
  69. package/skills/openhue/SKILL.md +51 -0
  70. package/skills/oracle/SKILL.md +125 -0
  71. package/skills/ordercli/SKILL.md +78 -0
  72. package/skills/peekaboo/SKILL.md +190 -0
  73. package/skills/sag/SKILL.md +87 -0
  74. package/skills/security-ask-questions-if-underspecified/.claude-plugin/plugin.json +10 -0
  75. package/skills/security-ask-questions-if-underspecified/README.md +24 -0
  76. package/skills/security-ask-questions-if-underspecified/SKILL.md +85 -0
  77. package/skills/security-ask-questions-if-underspecified/skills/ask-questions-if-underspecified/SKILL.md +85 -0
  78. package/skills/security-audit-context-building/.claude-plugin/plugin.json +10 -0
  79. package/skills/security-audit-context-building/README.md +58 -0
  80. package/skills/security-audit-context-building/SKILL.md +297 -0
  81. package/skills/security-audit-context-building/commands/audit-context.md +21 -0
  82. package/skills/security-audit-context-building/skills/audit-context-building/SKILL.md +297 -0
  83. package/skills/security-audit-context-building/skills/audit-context-building/resources/COMPLETENESS_CHECKLIST.md +47 -0
  84. package/skills/security-audit-context-building/skills/audit-context-building/resources/FUNCTION_MICRO_ANALYSIS_EXAMPLE.md +355 -0
  85. package/skills/security-audit-context-building/skills/audit-context-building/resources/OUTPUT_REQUIREMENTS.md +71 -0
  86. package/skills/security-building-secure-contracts/.claude-plugin/plugin.json +10 -0
  87. package/skills/security-building-secure-contracts/README.md +241 -0
  88. package/skills/security-building-secure-contracts/SKILL.md +67 -0
  89. package/skills/security-building-secure-contracts/skills/algorand-vulnerability-scanner/SKILL.md +284 -0
  90. package/skills/security-building-secure-contracts/skills/algorand-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +405 -0
  91. package/skills/security-building-secure-contracts/skills/audit-prep-assistant/SKILL.md +409 -0
  92. package/skills/security-building-secure-contracts/skills/cairo-vulnerability-scanner/SKILL.md +329 -0
  93. package/skills/security-building-secure-contracts/skills/cairo-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +722 -0
  94. package/skills/security-building-secure-contracts/skills/code-maturity-assessor/SKILL.md +218 -0
  95. package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/ASSESSMENT_CRITERIA.md +355 -0
  96. package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/EXAMPLE_REPORT.md +248 -0
  97. package/skills/security-building-secure-contracts/skills/code-maturity-assessor/resources/REPORT_FORMAT.md +33 -0
  98. package/skills/security-building-secure-contracts/skills/cosmos-vulnerability-scanner/SKILL.md +334 -0
  99. package/skills/security-building-secure-contracts/skills/cosmos-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +740 -0
  100. package/skills/security-building-secure-contracts/skills/guidelines-advisor/SKILL.md +252 -0
  101. package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/ASSESSMENT_AREAS.md +329 -0
  102. package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/DELIVERABLES.md +118 -0
  103. package/skills/security-building-secure-contracts/skills/guidelines-advisor/resources/EXAMPLE_REPORT.md +298 -0
  104. package/skills/security-building-secure-contracts/skills/secure-workflow-guide/SKILL.md +161 -0
  105. package/skills/security-building-secure-contracts/skills/secure-workflow-guide/resources/EXAMPLE_REPORT.md +279 -0
  106. package/skills/security-building-secure-contracts/skills/secure-workflow-guide/resources/WORKFLOW_STEPS.md +132 -0
  107. package/skills/security-building-secure-contracts/skills/solana-vulnerability-scanner/SKILL.md +389 -0
  108. package/skills/security-building-secure-contracts/skills/solana-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +669 -0
  109. package/skills/security-building-secure-contracts/skills/substrate-vulnerability-scanner/SKILL.md +298 -0
  110. package/skills/security-building-secure-contracts/skills/substrate-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +791 -0
  111. package/skills/security-building-secure-contracts/skills/token-integration-analyzer/SKILL.md +362 -0
  112. package/skills/security-building-secure-contracts/skills/token-integration-analyzer/resources/ASSESSMENT_CATEGORIES.md +571 -0
  113. package/skills/security-building-secure-contracts/skills/token-integration-analyzer/resources/REPORT_TEMPLATES.md +141 -0
  114. package/skills/security-building-secure-contracts/skills/ton-vulnerability-scanner/SKILL.md +388 -0
  115. package/skills/security-building-secure-contracts/skills/ton-vulnerability-scanner/resources/VULNERABILITY_PATTERNS.md +595 -0
  116. package/skills/security-differential-review/.claude-plugin/plugin.json +10 -0
  117. package/skills/security-differential-review/README.md +109 -0
  118. package/skills/security-differential-review/SKILL.md +220 -0
  119. package/skills/security-differential-review/commands/diff-review.md +21 -0
  120. package/skills/security-differential-review/skills/differential-review/SKILL.md +220 -0
  121. package/skills/security-differential-review/skills/differential-review/adversarial.md +203 -0
  122. package/skills/security-differential-review/skills/differential-review/methodology.md +234 -0
  123. package/skills/security-differential-review/skills/differential-review/patterns.md +300 -0
  124. package/skills/security-differential-review/skills/differential-review/reporting.md +369 -0
  125. package/skills/security-entry-point-analyzer/.claude-plugin/plugin.json +10 -0
  126. package/skills/security-entry-point-analyzer/README.md +74 -0
  127. package/skills/security-entry-point-analyzer/SKILL.md +251 -0
  128. package/skills/security-entry-point-analyzer/commands/entry-points.md +18 -0
  129. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/SKILL.md +251 -0
  130. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/cosmwasm.md +182 -0
  131. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/move-aptos.md +107 -0
  132. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/move-sui.md +87 -0
  133. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/solana.md +155 -0
  134. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/solidity.md +135 -0
  135. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/ton.md +185 -0
  136. package/skills/security-entry-point-analyzer/skills/entry-point-analyzer/references/vyper.md +141 -0
  137. package/skills/security-fix-review/.claude-plugin/plugin.json +13 -0
  138. package/skills/security-fix-review/README.md +118 -0
  139. package/skills/security-fix-review/SKILL.md +264 -0
  140. package/skills/security-fix-review/commands/fix-review.md +24 -0
  141. package/skills/security-fix-review/skills/fix-review/SKILL.md +264 -0
  142. package/skills/security-fix-review/skills/fix-review/references/bug-detection.md +408 -0
  143. package/skills/security-fix-review/skills/fix-review/references/finding-matching.md +298 -0
  144. package/skills/security-fix-review/skills/fix-review/references/report-parsing.md +398 -0
  145. package/skills/security-insecure-defaults/.claude-plugin/plugin.json +10 -0
  146. package/skills/security-insecure-defaults/README.md +45 -0
  147. package/skills/security-insecure-defaults/SKILL.md +117 -0
  148. package/skills/security-insecure-defaults/skills/insecure-defaults/SKILL.md +117 -0
  149. package/skills/security-insecure-defaults/skills/insecure-defaults/references/examples.md +409 -0
  150. package/skills/security-modern-python/.claude-plugin/plugin.json +10 -0
  151. package/skills/security-modern-python/README.md +58 -0
  152. package/skills/security-modern-python/SKILL.md +333 -0
  153. package/skills/security-modern-python/hooks/hooks.json +16 -0
  154. package/skills/security-modern-python/hooks/intercept-legacy-python.bats +388 -0
  155. package/skills/security-modern-python/hooks/intercept-legacy-python.sh +109 -0
  156. package/skills/security-modern-python/hooks/test_helper.bash +75 -0
  157. package/skills/security-modern-python/skills/modern-python/SKILL.md +333 -0
  158. package/skills/security-modern-python/skills/modern-python/references/dependabot.md +43 -0
  159. package/skills/security-modern-python/skills/modern-python/references/migration-checklist.md +141 -0
  160. package/skills/security-modern-python/skills/modern-python/references/pep723-scripts.md +259 -0
  161. package/skills/security-modern-python/skills/modern-python/references/prek.md +211 -0
  162. package/skills/security-modern-python/skills/modern-python/references/pyproject.md +254 -0
  163. package/skills/security-modern-python/skills/modern-python/references/ruff-config.md +240 -0
  164. package/skills/security-modern-python/skills/modern-python/references/security-setup.md +255 -0
  165. package/skills/security-modern-python/skills/modern-python/references/testing.md +284 -0
  166. package/skills/security-modern-python/skills/modern-python/references/uv-commands.md +200 -0
  167. package/skills/security-modern-python/skills/modern-python/templates/dependabot.yml +36 -0
  168. package/skills/security-modern-python/skills/modern-python/templates/pre-commit-config.yaml +66 -0
  169. package/skills/security-property-based-testing/.claude-plugin/plugin.json +9 -0
  170. package/skills/security-property-based-testing/README.md +47 -0
  171. package/skills/security-property-based-testing/SKILL.md +109 -0
  172. package/skills/security-property-based-testing/skills/property-based-testing/README.md +88 -0
  173. package/skills/security-property-based-testing/skills/property-based-testing/SKILL.md +109 -0
  174. package/skills/security-property-based-testing/skills/property-based-testing/references/design.md +191 -0
  175. package/skills/security-property-based-testing/skills/property-based-testing/references/generating.md +200 -0
  176. package/skills/security-property-based-testing/skills/property-based-testing/references/libraries.md +130 -0
  177. package/skills/security-property-based-testing/skills/property-based-testing/references/refactoring.md +181 -0
  178. package/skills/security-property-based-testing/skills/property-based-testing/references/reviewing.md +209 -0
  179. package/skills/security-property-based-testing/skills/property-based-testing/references/strategies.md +124 -0
  180. package/skills/semgrep-rule-creator/.claude-plugin/plugin.json +8 -0
  181. package/skills/semgrep-rule-creator/README.md +43 -0
  182. package/skills/semgrep-rule-creator/SKILL.md +168 -0
  183. package/skills/semgrep-rule-creator/commands/semgrep-rule.md +26 -0
  184. package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/SKILL.md +168 -0
  185. package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/references/quick-reference.md +203 -0
  186. package/skills/semgrep-rule-creator/skills/semgrep-rule-creator/references/workflow.md +240 -0
  187. package/skills/session-logs/SKILL.md +115 -0
  188. package/skills/sharp-edges/.claude-plugin/plugin.json +10 -0
  189. package/skills/sharp-edges/README.md +48 -0
  190. package/skills/sharp-edges/SKILL.md +292 -0
  191. package/skills/sharp-edges/skills/sharp-edges/SKILL.md +292 -0
  192. package/skills/sharp-edges/skills/sharp-edges/references/auth-patterns.md +252 -0
  193. package/skills/sharp-edges/skills/sharp-edges/references/case-studies.md +274 -0
  194. package/skills/sharp-edges/skills/sharp-edges/references/config-patterns.md +333 -0
  195. package/skills/sharp-edges/skills/sharp-edges/references/crypto-apis.md +190 -0
  196. package/skills/sharp-edges/skills/sharp-edges/references/lang-c.md +205 -0
  197. package/skills/sharp-edges/skills/sharp-edges/references/lang-csharp.md +285 -0
  198. package/skills/sharp-edges/skills/sharp-edges/references/lang-go.md +270 -0
  199. package/skills/sharp-edges/skills/sharp-edges/references/lang-java.md +263 -0
  200. package/skills/sharp-edges/skills/sharp-edges/references/lang-javascript.md +269 -0
  201. package/skills/sharp-edges/skills/sharp-edges/references/lang-kotlin.md +265 -0
  202. package/skills/sharp-edges/skills/sharp-edges/references/lang-php.md +245 -0
  203. package/skills/sharp-edges/skills/sharp-edges/references/lang-python.md +274 -0
  204. package/skills/sharp-edges/skills/sharp-edges/references/lang-ruby.md +273 -0
  205. package/skills/sharp-edges/skills/sharp-edges/references/lang-rust.md +272 -0
  206. package/skills/sharp-edges/skills/sharp-edges/references/lang-swift.md +287 -0
  207. package/skills/sharp-edges/skills/sharp-edges/references/language-specific.md +588 -0
  208. package/skills/sherpa-onnx-tts/SKILL.md +103 -0
  209. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
  210. package/skills/skill-creator/SKILL.md +370 -0
  211. package/skills/skill-creator/license.txt +202 -0
  212. package/skills/skill-creator/scripts/init_skill.py +378 -0
  213. package/skills/skill-creator/scripts/package_skill.py +111 -0
  214. package/skills/skill-creator/scripts/quick_validate.py +101 -0
  215. package/skills/slack/SKILL.md +144 -0
  216. package/skills/songsee/SKILL.md +49 -0
  217. package/skills/sonoscli/SKILL.md +46 -0
  218. package/skills/spec-to-code-compliance/.claude-plugin/plugin.json +10 -0
  219. package/skills/spec-to-code-compliance/README.md +67 -0
  220. package/skills/spec-to-code-compliance/SKILL.md +349 -0
  221. package/skills/spec-to-code-compliance/commands/spec-compliance.md +22 -0
  222. package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/SKILL.md +349 -0
  223. package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/COMPLETENESS_CHECKLIST.md +69 -0
  224. package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/IR_EXAMPLES.md +417 -0
  225. package/skills/spec-to-code-compliance/skills/spec-to-code-compliance/resources/OUTPUT_REQUIREMENTS.md +105 -0
  226. package/skills/spotify-player/SKILL.md +64 -0
  227. package/skills/static-analysis/.claude-plugin/plugin.json +8 -0
  228. package/skills/static-analysis/README.md +59 -0
  229. package/skills/static-analysis/SKILL.md +91 -0
  230. package/skills/static-analysis/skills/codeql/SKILL.md +315 -0
  231. package/skills/static-analysis/skills/sarif-parsing/SKILL.md +479 -0
  232. package/skills/static-analysis/skills/sarif-parsing/resources/jq-queries.md +162 -0
  233. package/skills/static-analysis/skills/sarif-parsing/resources/sarif_helpers.py +331 -0
  234. package/skills/static-analysis/skills/semgrep/SKILL.md +337 -0
  235. package/skills/summarize/SKILL.md +87 -0
  236. package/skills/testing-handbook-skills/.claude-plugin/plugin.json +8 -0
  237. package/skills/testing-handbook-skills/README.md +241 -0
  238. package/skills/testing-handbook-skills/SKILL.md +104 -0
  239. package/skills/testing-handbook-skills/scripts/pyproject.toml +8 -0
  240. package/skills/testing-handbook-skills/scripts/validate-skills.py +657 -0
  241. package/skills/testing-handbook-skills/skills/address-sanitizer/SKILL.md +341 -0
  242. package/skills/testing-handbook-skills/skills/aflpp/SKILL.md +640 -0
  243. package/skills/testing-handbook-skills/skills/atheris/SKILL.md +515 -0
  244. package/skills/testing-handbook-skills/skills/cargo-fuzz/SKILL.md +454 -0
  245. package/skills/testing-handbook-skills/skills/codeql/SKILL.md +549 -0
  246. package/skills/testing-handbook-skills/skills/constant-time-testing/SKILL.md +507 -0
  247. package/skills/testing-handbook-skills/skills/coverage-analysis/SKILL.md +607 -0
  248. package/skills/testing-handbook-skills/skills/fuzzing-dictionary/SKILL.md +297 -0
  249. package/skills/testing-handbook-skills/skills/fuzzing-obstacles/SKILL.md +426 -0
  250. package/skills/testing-handbook-skills/skills/harness-writing/SKILL.md +614 -0
  251. package/skills/testing-handbook-skills/skills/libafl/SKILL.md +625 -0
  252. package/skills/testing-handbook-skills/skills/libfuzzer/SKILL.md +795 -0
  253. package/skills/testing-handbook-skills/skills/ossfuzz/SKILL.md +426 -0
  254. package/skills/testing-handbook-skills/skills/ruzzy/SKILL.md +443 -0
  255. package/skills/testing-handbook-skills/skills/semgrep/SKILL.md +601 -0
  256. package/skills/testing-handbook-skills/skills/testing-handbook-generator/SKILL.md +372 -0
  257. package/skills/testing-handbook-skills/skills/testing-handbook-generator/agent-prompt.md +280 -0
  258. package/skills/testing-handbook-skills/skills/testing-handbook-generator/discovery.md +452 -0
  259. package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/domain-skill.md +504 -0
  260. package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/fuzzer-skill.md +454 -0
  261. package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/technique-skill.md +527 -0
  262. package/skills/testing-handbook-skills/skills/testing-handbook-generator/templates/tool-skill.md +366 -0
  263. package/skills/testing-handbook-skills/skills/testing-handbook-generator/testing.md +482 -0
  264. package/skills/testing-handbook-skills/skills/wycheproof/SKILL.md +533 -0
  265. package/skills/things-mac/SKILL.md +86 -0
  266. package/skills/tmux/SKILL.md +135 -0
  267. package/skills/tmux/scripts/find-sessions.sh +112 -0
  268. package/skills/tmux/scripts/wait-for-text.sh +83 -0
  269. package/skills/trello/SKILL.md +95 -0
  270. package/skills/variant-analysis/.claude-plugin/plugin.json +8 -0
  271. package/skills/variant-analysis/README.md +41 -0
  272. package/skills/variant-analysis/SKILL.md +142 -0
  273. package/skills/variant-analysis/commands/variants.md +23 -0
  274. package/skills/variant-analysis/skills/variant-analysis/METHODOLOGY.md +327 -0
  275. package/skills/variant-analysis/skills/variant-analysis/SKILL.md +142 -0
  276. package/skills/variant-analysis/skills/variant-analysis/resources/codeql/cpp.ql +119 -0
  277. package/skills/variant-analysis/skills/variant-analysis/resources/codeql/go.ql +69 -0
  278. package/skills/variant-analysis/skills/variant-analysis/resources/codeql/java.ql +71 -0
  279. package/skills/variant-analysis/skills/variant-analysis/resources/codeql/javascript.ql +63 -0
  280. package/skills/variant-analysis/skills/variant-analysis/resources/codeql/python.ql +80 -0
  281. package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/cpp.yaml +98 -0
  282. package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/go.yaml +63 -0
  283. package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/java.yaml +61 -0
  284. package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/javascript.yaml +60 -0
  285. package/skills/variant-analysis/skills/variant-analysis/resources/semgrep/python.yaml +72 -0
  286. package/skills/variant-analysis/skills/variant-analysis/resources/variant-report-template.md +75 -0
  287. package/skills/video-frames/SKILL.md +46 -0
  288. package/skills/video-frames/scripts/frame.sh +81 -0
  289. package/skills/voice-call/SKILL.md +45 -0
  290. package/skills/wacli/SKILL.md +72 -0
  291. package/skills/weather/SKILL.md +54 -0
@@ -0,0 +1,234 @@
1
+ # Differential Review Methodology
2
+
3
+ Detailed phase-by-phase workflow for security-focused code review.
4
+
5
+ ## Pre-Analysis: Baseline Context Building
6
+
7
+ **FIRST ACTION - Build complete baseline understanding:**
8
+
9
+ If `audit-context-building` skill is available:
10
+
11
+ ```bash
12
+ # Checkout baseline commit
13
+ git checkout <baseline_commit>
14
+
15
+ # Invoke audit-context-building skill on baseline codebase
16
+ # Scope = entire relevant project (e.g., packages/contracts/contracts/ for Solidity, src/ for Rust, etc.)
17
+ audit-context-building --scope [entire project or main contract directory] --focus invariants,trust-boundaries,validation-patterns,call-graphs,state-flows
18
+
19
+ # Examples:
20
+ # For Solidity: audit-context-building --scope packages/contracts/contracts
21
+ # For Rust: audit-context-building --scope src
22
+ # For full repo: audit-context-building --scope .
23
+ ```
24
+
25
+ **Capture from baseline analysis:**
26
+ - System-wide invariants (what must ALWAYS be true across all code)
27
+ - Trust boundaries and privilege levels (who can do what)
28
+ - Validation patterns (what gets checked where - defense-in-depth)
29
+ - Complete call graphs for critical functions (who calls what)
30
+ - State flow diagrams (how state changes)
31
+ - External dependencies and trust assumptions
32
+
33
+ **Why this matters:**
34
+ - Understand what the code was SUPPOSED to do before changes
35
+ - Identify implicit security assumptions in baseline
36
+ - Detect when changes violate baseline invariants
37
+ - Know which patterns are system-wide vs local
38
+ - Catch when changes break defense-in-depth
39
+
40
+ **Store baseline context for reference during differential analysis.**
41
+
42
+ After baseline analysis, checkout back to head commit to analyze changes.
43
+
44
+ ---
45
+
46
+ ## Phase 0: Intake & Triage
47
+
48
+ **Extract changes:**
49
+ ```bash
50
+ # For commit range
51
+ git diff <base>..<head> --stat
52
+ git log <base>..<head> --oneline
53
+
54
+ # For PR
55
+ gh pr view <number> --json files,additions,deletions
56
+
57
+ # Get all changed files
58
+ git diff <base>..<head> --name-only
59
+ ```
60
+
61
+ **Assess codebase size:**
62
+ ```bash
63
+ find . -name "*.sol" -o -name "*.rs" -o -name "*.go" -o -name "*.ts" | wc -l
64
+ ```
65
+
66
+ **Classify complexity:**
67
+ - **SMALL**: <20 files → Deep analysis (read all deps)
68
+ - **MEDIUM**: 20-200 files → Focused analysis (1-hop deps)
69
+ - **LARGE**: 200+ files → Surgical (critical paths only)
70
+
71
+ **Risk score each file:**
72
+ - **HIGH**: Auth, crypto, external calls, value transfer, validation removal
73
+ - **MEDIUM**: Business logic, state changes, new public APIs
74
+ - **LOW**: Comments, tests, UI, logging
75
+
76
+ ---
77
+
78
+ ## Phase 1: Changed Code Analysis
79
+
80
+ For each changed file:
81
+
82
+ 1. **Read both versions** (baseline and changed)
83
+
84
+ 2. **Analyze each diff region:**
85
+ ```
86
+ BEFORE: [exact code]
87
+ AFTER: [exact code]
88
+ CHANGE: [behavioral impact]
89
+ SECURITY: [implications]
90
+ ```
91
+
92
+ 3. **Git blame removed code:**
93
+ ```bash
94
+ # When was it added? Why?
95
+ git log -S "removed_code" --all --oneline
96
+ git blame <baseline> -- file.sol | grep "pattern"
97
+ ```
98
+
99
+ **Red flags:**
100
+ - Removed code from "fix", "security", "CVE" commits → CRITICAL
101
+ - Recently added (<1 month) then removed → HIGH
102
+
103
+ 4. **Check for regressions (re-added code):**
104
+ ```bash
105
+ git log -S "added_code" --all -p
106
+ ```
107
+
108
+ Pattern: Code added → removed for security → re-added now = REGRESSION
109
+
110
+ 5. **Micro-adversarial analysis** for each change:
111
+ - What attack did removed code prevent?
112
+ - What new surface does new code expose?
113
+ - Can modified logic be bypassed?
114
+ - Are checks weaker? Edge cases covered?
115
+
116
+ 6. **Generate concrete attack scenarios:**
117
+ ```
118
+ SCENARIO: [attack goal]
119
+ PRECONDITIONS: [required state]
120
+ STEPS:
121
+ 1. [specific action]
122
+ 2. [expected outcome]
123
+ 3. [exploitation]
124
+ WHY IT WORKS: [reference code change]
125
+ IMPACT: [severity + scope]
126
+ ```
127
+
128
+ ---
129
+
130
+ ## Phase 2: Test Coverage Analysis
131
+
132
+ **Identify coverage gaps:**
133
+ ```bash
134
+ # Production code changes (exclude tests)
135
+ git diff <range> --name-only | grep -v "test"
136
+
137
+ # Test changes
138
+ git diff <range> --name-only | grep "test"
139
+
140
+ # For each changed function, search for tests
141
+ grep -r "test.*functionName" test/ --include="*.sol" --include="*.js"
142
+ ```
143
+
144
+ **Risk elevation rules:**
145
+ - NEW function + NO tests → Elevate risk MEDIUM→HIGH
146
+ - MODIFIED validation + UNCHANGED tests → HIGH RISK
147
+ - Complex logic (>20 lines) + NO tests → HIGH RISK
148
+
149
+ ---
150
+
151
+ ## Phase 3: Blast Radius Analysis
152
+
153
+ **Calculate impact:**
154
+ ```bash
155
+ # Count callers for each modified function
156
+ grep -r "functionName(" --include="*.sol" . | wc -l
157
+ ```
158
+
159
+ **Classify blast radius:**
160
+ - 1-5 calls: LOW
161
+ - 6-20 calls: MEDIUM
162
+ - 21-50 calls: HIGH
163
+ - 50+ calls: CRITICAL
164
+
165
+ **Priority matrix:**
166
+
167
+ | Change Risk | Blast Radius | Priority | Analysis Depth |
168
+ |-------------|--------------|----------|----------------|
169
+ | HIGH | CRITICAL | P0 | Deep + all deps |
170
+ | HIGH | HIGH/MEDIUM | P1 | Deep |
171
+ | HIGH | LOW | P2 | Standard |
172
+ | MEDIUM | CRITICAL/HIGH | P1 | Standard + callers |
173
+
174
+ ---
175
+
176
+ ## Phase 4: Deep Context Analysis
177
+
178
+ **If `audit-context-building` skill is available**, invoke it to help answer all the questions below for each HIGH RISK changed function:
179
+
180
+ ```bash
181
+ # Run audit-context-building on the changed function and its dependencies
182
+ audit-context-building --scope [file containing changed function] --focus flow-analysis,call-graphs,invariants,root-cause
183
+ ```
184
+
185
+ **The audit-context-building skill will help you answer:**
186
+
187
+ 1. **Map complete function flow:**
188
+ - Entry conditions (preconditions, requires, modifiers)
189
+ - State reads (which variables accessed)
190
+ - State writes (which variables modified)
191
+ - External calls (to contracts, APIs, system)
192
+ - Return values and side effects
193
+
194
+ 2. **Trace internal calls:**
195
+ - List all functions called
196
+ - Recursively map their flows
197
+ - Build complete call graph
198
+
199
+ 3. **Trace external calls:**
200
+ - Identify trust boundaries crossed
201
+ - List assumptions about external behavior
202
+ - Check for reentrancy risks
203
+
204
+ 4. **Identify invariants:**
205
+ - What must ALWAYS be true?
206
+ - What must NEVER happen?
207
+ - Are invariants maintained after changes?
208
+
209
+ 5. **Five Whys root cause:**
210
+ - WHY was this code changed?
211
+ - WHY did the original code exist?
212
+ - WHY might this break?
213
+ - WHY is this approach chosen?
214
+ - WHY could this fail in production?
215
+
216
+ **If `audit-context-building` skill is NOT available**, manually perform the line-by-line analysis above using Read, Grep, and code tracing.
217
+
218
+ **Cross-cutting pattern detection:**
219
+ ```bash
220
+ # Find repeated validation patterns
221
+ grep -r "require.*amount > 0" --include="*.sol" .
222
+ grep -r "onlyOwner" --include="*.sol" .
223
+
224
+ # Check if any removed in diff
225
+ git diff <range> | grep "^-.*require.*amount > 0"
226
+ ```
227
+
228
+ **Flag if removal breaks defense-in-depth.**
229
+
230
+ ---
231
+
232
+ **Next steps:**
233
+ - For HIGH RISK changes, proceed to [adversarial.md](adversarial.md)
234
+ - For report generation, see [reporting.md](reporting.md)
@@ -0,0 +1,300 @@
1
+ # Common Vulnerability Patterns
2
+
3
+ Quick reference for detecting common security issues in code changes.
4
+
5
+ **Specialized Pattern Resources:**
6
+ For specific contexts, reference these additional pattern databases:
7
+
8
+ **Domain-Specific:**
9
+ - `domain-specific-audits/defi-bridges/resources/` - 127 bridge-specific findings
10
+ - `domain-specific-audits/tick-math/resources/` - 81 tick math findings
11
+ - `domain-specific-audits/merkle-trees/resources/` - 67 merkle tree findings
12
+ - [Check `domain-specific-audits/skills/` for additional domains]
13
+
14
+ **Solidity-Specific:**
15
+ - `not-so-smart-contracts` - Automated Solidity vulnerability detectors
16
+ - `token-integration-analyzer` - Token integration safety patterns
17
+ - `building-secure-contracts/development-guidelines` - Solidity best practices
18
+
19
+ These complement the generic patterns below.
20
+
21
+ ---
22
+
23
+ ## Security Regressions
24
+
25
+ **Pattern:** Previously removed code is re-added
26
+
27
+ **Detection:**
28
+ ```bash
29
+ # Code previously removed for security
30
+ git log -S "pattern" --all --grep="security\|fix\|CVE"
31
+ ```
32
+
33
+ **Red flags:**
34
+ - Commit message contains "security", "fix", "CVE", "vulnerability"
35
+ - Code removed <6 months ago
36
+ - No explanation in current PR for re-addition
37
+
38
+ **Example:**
39
+ ```solidity
40
+ // Removed in commit abc123 "Fix reentrancy CVE-2024-1234"
41
+ // Re-added in current PR
42
+ function emergencyWithdraw() {
43
+ // REGRESSION: Reentrancy vulnerability re-introduced
44
+ }
45
+ ```
46
+
47
+ ---
48
+
49
+ ## Double Decrease/Increase Bugs
50
+
51
+ **Pattern:** Same accounting operation twice for same event
52
+
53
+ **Detection:** Look for two state updates in related functions for same logical action
54
+
55
+ **Example:**
56
+ ```solidity
57
+ // Request exit
58
+ function requestExit() {
59
+ balance[user] -= amount; // First decrease
60
+ }
61
+
62
+ // Process exit
63
+ function processExit() {
64
+ balance[user] -= amount; // Second decrease - BUG!
65
+ }
66
+ ```
67
+
68
+ **Impact:** User balance decremented twice, protocol loses funds
69
+
70
+ ---
71
+
72
+ ## Missing Validation
73
+
74
+ **Pattern:** Removed `require`/`assert`/`check` without replacement
75
+
76
+ **Detection:**
77
+ ```bash
78
+ git diff <range> | grep "^-.*require"
79
+ git diff <range> | grep "^-.*assert"
80
+ git diff <range> | grep "^-.*revert"
81
+ ```
82
+
83
+ **Questions to ask:**
84
+ - Was validation moved elsewhere?
85
+ - Is it redundant (defensive programming)?
86
+ - Does removal expose vulnerability?
87
+
88
+ **Example:**
89
+ ```diff
90
+ function withdraw(uint256 amount) {
91
+ - require(amount > 0, "Zero amount");
92
+ - require(amount <= balance[msg.sender], "Insufficient");
93
+ balance[msg.sender] -= amount;
94
+ }
95
+ ```
96
+
97
+ **Risk:** Zero-amount withdrawals, underflow attacks now possible
98
+
99
+ ---
100
+
101
+ ## Underflow/Overflow
102
+
103
+ **Pattern:** Arithmetic without SafeMath or checks
104
+
105
+ **Detection:**
106
+ - Look for `+`, `-`, `*`, `/` in Solidity <0.8.0
107
+ - Check if SafeMath removed
108
+ - Look for unchecked blocks in Solidity >=0.8.0
109
+
110
+ **Example:**
111
+ ```solidity
112
+ // Solidity 0.7 without SafeMath
113
+ balance[user] -= amount; // Can underflow if amount > balance
114
+
115
+ // Solidity 0.8+ with unchecked
116
+ unchecked {
117
+ balance[user] -= amount; // Deliberately bypasses overflow check
118
+ }
119
+ ```
120
+
121
+ **Risk:** Integer wrap-around leads to incorrect balances
122
+
123
+ ---
124
+
125
+ ## Reentrancy
126
+
127
+ **Pattern:** External call before state update
128
+
129
+ **Detection:** Look for CEI (Checks-Effects-Interactions) pattern violations
130
+
131
+ **Example:**
132
+ ```solidity
133
+ // VULNERABLE: External call before state update
134
+ function withdraw() {
135
+ uint amount = balances[msg.sender];
136
+ (bool success,) = msg.sender.call{value: amount}(""); // External call FIRST
137
+ require(success);
138
+ balances[msg.sender] = 0; // State update AFTER
139
+ }
140
+
141
+ // SAFE: State update before external call
142
+ function withdraw() {
143
+ uint amount = balances[msg.sender];
144
+ balances[msg.sender] = 0; // State update FIRST
145
+ (bool success,) = msg.sender.call{value: amount}(""); // External call AFTER
146
+ require(success);
147
+ }
148
+ ```
149
+
150
+ **Impact:** Attacker can recursively call withdraw() before balance is zeroed
151
+
152
+ ---
153
+
154
+ ## Access Control Bypass
155
+
156
+ **Pattern:** Removed or relaxed permission checks
157
+
158
+ **Detection:**
159
+ ```bash
160
+ git diff <range> | grep "^-.*onlyOwner"
161
+ git diff <range> | grep "^-.*onlyAdmin"
162
+ git diff <range> | grep "^-.*require.*msg.sender"
163
+ ```
164
+
165
+ **Questions:**
166
+ - Who can now call this function?
167
+ - What's the new trust model?
168
+ - Was check moved to caller?
169
+
170
+ **Example:**
171
+ ```diff
172
+ - function setConfig(uint value) external onlyOwner {
173
+ + function setConfig(uint value) external {
174
+ config = value;
175
+ }
176
+ ```
177
+
178
+ **Risk:** Any user can now modify critical configuration
179
+
180
+ ---
181
+
182
+ ## Race Conditions / Front-Running
183
+
184
+ **Pattern:** State-dependent logic without protection
185
+
186
+ **Detection:** Look for two-step processes without commit-reveal or timelocks
187
+
188
+ **Example:**
189
+ ```solidity
190
+ // Step 1: Approve
191
+ function approve(address spender, uint amount) {
192
+ allowance[msg.sender][spender] = amount;
193
+ }
194
+
195
+ // Step 2: User can front-run between approval changes
196
+ // Attacker sees tx changing approval from 100 to 50
197
+ // Front-runs to spend 100, then spends 50 after = 150 total
198
+ ```
199
+
200
+ **Risk:** MEV/front-running exploits state transitions
201
+
202
+ ---
203
+
204
+ ## Timestamp Manipulation
205
+
206
+ **Pattern:** Security logic depending on `block.timestamp`
207
+
208
+ **Detection:**
209
+ ```bash
210
+ grep -r "block.timestamp" --include="*.sol"
211
+ grep -r "now\b" --include="*.sol" # Solidity <0.7
212
+ ```
213
+
214
+ **Example:**
215
+ ```solidity
216
+ // VULNERABLE
217
+ require(block.timestamp > deadline, "Too early");
218
+ // Miner can manipulate timestamp by ~15 seconds
219
+
220
+ // SAFER
221
+ require(block.number > deadlineBlock, "Too early");
222
+ // Block numbers are harder to manipulate
223
+ ```
224
+
225
+ **Risk:** Miners can manipulate timestamps within tolerance
226
+
227
+ ---
228
+
229
+ ## Unchecked Return Values
230
+
231
+ **Pattern:** External call without checking success
232
+
233
+ **Detection:**
234
+ ```bash
235
+ git diff <range> | grep "\.call\|\.send\|\.transfer"
236
+ ```
237
+
238
+ **Example:**
239
+ ```solidity
240
+ // VULNERABLE
241
+ token.transfer(user, amount); // Ignores return value
242
+
243
+ // SAFE
244
+ require(token.transfer(user, amount), "Transfer failed");
245
+ // Or use SafeERC20 wrapper
246
+ ```
247
+
248
+ **Risk:** Silent failures lead to inconsistent state
249
+
250
+ ---
251
+
252
+ ## Denial of Service
253
+
254
+ **Pattern:** Unbounded loops, external call reverts blocking execution
255
+
256
+ **Detection:**
257
+ - Arrays that grow without limit
258
+ - Loops over user-controlled array
259
+ - Critical function depends on external call success
260
+
261
+ **Example:**
262
+ ```solidity
263
+ // DOS: Attacker adds many users, making loop too expensive
264
+ function distributeRewards() {
265
+ for (uint i = 0; i < users.length; i++) {
266
+ users[i].transfer(reward); // Runs out of gas
267
+ }
268
+ }
269
+ ```
270
+
271
+ **Risk:** Function becomes unusable due to gas limits
272
+
273
+ ---
274
+
275
+ ## Quick Detection Commands
276
+
277
+ **Find removed security checks:**
278
+ ```bash
279
+ git diff <range> | grep "^-" | grep -E "require|assert|revert"
280
+ ```
281
+
282
+ **Find new external calls:**
283
+ ```bash
284
+ git diff <range> | grep "^+" | grep -E "\.call|\.delegatecall|\.staticcall"
285
+ ```
286
+
287
+ **Find changed access modifiers:**
288
+ ```bash
289
+ git diff <range> | grep -E "onlyOwner|onlyAdmin|internal|private|public|external"
290
+ ```
291
+
292
+ **Find arithmetic changes:**
293
+ ```bash
294
+ git diff <range> | grep -E "\+|\-|\*|/"
295
+ ```
296
+
297
+ ---
298
+
299
+ **For detailed analysis workflow, see [methodology.md](methodology.md)**
300
+ **For building exploit scenarios, see [adversarial.md](adversarial.md)**