@ruaruababa/vibe-kit 1.0.0

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 (462) hide show
  1. package/CATALOG.md +317 -0
  2. package/README.md +121 -0
  3. package/aliases.json +65 -0
  4. package/bin/vibe.js +2 -0
  5. package/bundles.json +265 -0
  6. package/catalog.json +1560 -0
  7. package/dist/antigravity-skills/bin/cli.js +438 -0
  8. package/dist/antigravity-skills/lib/skill-utils.js +158 -0
  9. package/dist/antigravity-skills/scripts/build-catalog.js +305 -0
  10. package/dist/antigravity-skills/scripts/normalize-frontmatter.js +144 -0
  11. package/dist/antigravity-skills/scripts/validate-skills.js +230 -0
  12. package/dist/bin/vibe.js +2 -0
  13. package/dist/dist/src/cli/index.js +26 -0
  14. package/dist/lib/skill-utils.js +158 -0
  15. package/dist/scripts/build-catalog.js +50 -0
  16. package/dist/scripts/normalize-frontmatter.js +144 -0
  17. package/dist/scripts/validate-skills.js +56 -0
  18. package/dist/src/cli/index.js +146 -0
  19. package/dist/src/types/index.js +13 -0
  20. package/dist/src/utils/fs.js +1 -0
  21. package/package.json +43 -0
  22. package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
  23. package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
  24. package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
  25. package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
  26. package/skills/agent-orchestrator/SKILL.md +24 -0
  27. package/skills/ai-engineer/SKILL.md +171 -0
  28. package/skills/airflow-dag-patterns/SKILL.md +41 -0
  29. package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
  30. package/skills/angular-migration/SKILL.md +428 -0
  31. package/skills/anti-reversing-techniques/SKILL.md +42 -0
  32. package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
  33. package/skills/api-design-principles/SKILL.md +37 -0
  34. package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  35. package/skills/api-design-principles/assets/rest-api-template.py +182 -0
  36. package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  37. package/skills/api-design-principles/references/rest-best-practices.md +408 -0
  38. package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  39. package/skills/api-documenter/SKILL.md +184 -0
  40. package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
  41. package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
  42. package/skills/application-performance-performance-optimization/SKILL.md +154 -0
  43. package/skills/architect-review/SKILL.md +174 -0
  44. package/skills/architecture-decision-records/SKILL.md +441 -0
  45. package/skills/architecture-patterns/SKILL.md +37 -0
  46. package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
  47. package/skills/arm-cortex-expert/SKILL.md +306 -0
  48. package/skills/async-python-patterns/SKILL.md +39 -0
  49. package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
  50. package/skills/attack-tree-construction/SKILL.md +38 -0
  51. package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
  52. package/skills/auth-implementation-patterns/SKILL.md +39 -0
  53. package/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
  54. package/skills/backend-architect/SKILL.md +333 -0
  55. package/skills/backend-development-feature-development/SKILL.md +180 -0
  56. package/skills/backend-security-coder/SKILL.md +156 -0
  57. package/skills/backtesting-frameworks/SKILL.md +39 -0
  58. package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
  59. package/skills/bash-defensive-patterns/SKILL.md +43 -0
  60. package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
  61. package/skills/bash-pro/SKILL.md +310 -0
  62. package/skills/bats-testing-patterns/SKILL.md +34 -0
  63. package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
  64. package/skills/bazel-build-optimization/SKILL.md +397 -0
  65. package/skills/billing-automation/SKILL.md +42 -0
  66. package/skills/billing-automation/resources/implementation-playbook.md +544 -0
  67. package/skills/binary-analysis-patterns/SKILL.md +450 -0
  68. package/skills/blockchain-developer/SKILL.md +208 -0
  69. package/skills/business-analyst/SKILL.md +182 -0
  70. package/skills/c-pro/SKILL.md +56 -0
  71. package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
  72. package/skills/c4-code/SKILL.md +244 -0
  73. package/skills/c4-component/SKILL.md +153 -0
  74. package/skills/c4-container/SKILL.md +171 -0
  75. package/skills/c4-context/SKILL.md +150 -0
  76. package/skills/changelog-automation/SKILL.md +38 -0
  77. package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
  78. package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
  79. package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
  80. package/skills/clean-markdown/SKILL.md +23 -0
  81. package/skills/cloud-architect/SKILL.md +135 -0
  82. package/skills/code-documentation-code-explain/SKILL.md +46 -0
  83. package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
  84. package/skills/code-documentation-doc-generate/SKILL.md +48 -0
  85. package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
  86. package/skills/code-refactoring-context-restore/SKILL.md +179 -0
  87. package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
  88. package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
  89. package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
  90. package/skills/code-review-ai-ai-review/SKILL.md +450 -0
  91. package/skills/code-review-excellence/SKILL.md +40 -0
  92. package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
  93. package/skills/code-reviewer/SKILL.md +178 -0
  94. package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
  95. package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
  96. package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
  97. package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
  98. package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
  99. package/skills/competitive-landscape/SKILL.md +34 -0
  100. package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
  101. package/skills/comprehensive-review-full-review/SKILL.md +146 -0
  102. package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
  103. package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
  104. package/skills/conductor-implement/SKILL.md +388 -0
  105. package/skills/conductor-manage/SKILL.md +39 -0
  106. package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
  107. package/skills/conductor-new-track/SKILL.md +433 -0
  108. package/skills/conductor-revert/SKILL.md +372 -0
  109. package/skills/conductor-setup/SKILL.md +426 -0
  110. package/skills/conductor-status/SKILL.md +338 -0
  111. package/skills/conductor-validator/SKILL.md +62 -0
  112. package/skills/content-marketer/SKILL.md +170 -0
  113. package/skills/context-driven-development/SKILL.md +400 -0
  114. package/skills/context-management-context-restore/SKILL.md +179 -0
  115. package/skills/context-management-context-save/SKILL.md +177 -0
  116. package/skills/context-manager/SKILL.md +185 -0
  117. package/skills/cost-optimization/SKILL.md +286 -0
  118. package/skills/cpp-pro/SKILL.md +59 -0
  119. package/skills/cqrs-implementation/SKILL.md +35 -0
  120. package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
  121. package/skills/csharp-pro/SKILL.md +59 -0
  122. package/skills/customer-support/SKILL.md +170 -0
  123. package/skills/data-engineer/SKILL.md +224 -0
  124. package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
  125. package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
  126. package/skills/data-quality-frameworks/SKILL.md +40 -0
  127. package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
  128. package/skills/data-scientist/SKILL.md +199 -0
  129. package/skills/data-storytelling/SKILL.md +465 -0
  130. package/skills/database-admin/SKILL.md +165 -0
  131. package/skills/database-architect/SKILL.md +268 -0
  132. package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
  133. package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
  134. package/skills/database-migration/SKILL.md +436 -0
  135. package/skills/database-migrations-migration-observability/SKILL.md +420 -0
  136. package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
  137. package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
  138. package/skills/database-optimizer/SKILL.md +167 -0
  139. package/skills/dbt-transformation-patterns/SKILL.md +34 -0
  140. package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
  141. package/skills/debugger/SKILL.md +49 -0
  142. package/skills/debugging-strategies/SKILL.md +34 -0
  143. package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
  144. package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
  145. package/skills/defi-protocol-templates/SKILL.md +466 -0
  146. package/skills/dependency-management-deps-audit/SKILL.md +44 -0
  147. package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
  148. package/skills/dependency-upgrade/SKILL.md +421 -0
  149. package/skills/deployment-engineer/SKILL.md +170 -0
  150. package/skills/deployment-pipeline-design/SKILL.md +371 -0
  151. package/skills/deployment-validation-config-validate/SKILL.md +496 -0
  152. package/skills/devops-troubleshooter/SKILL.md +161 -0
  153. package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
  154. package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
  155. package/skills/distributed-tracing/SKILL.md +450 -0
  156. package/skills/django-pro/SKILL.md +180 -0
  157. package/skills/docs-architect/SKILL.md +98 -0
  158. package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
  159. package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
  160. package/skills/dotnet-architect/SKILL.md +197 -0
  161. package/skills/dotnet-backend-patterns/SKILL.md +37 -0
  162. package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
  163. package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
  164. package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
  165. package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
  166. package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
  167. package/skills/dummy-skill/SKILL.md +5 -0
  168. package/skills/dx-optimizer/SKILL.md +83 -0
  169. package/skills/e2e-testing-patterns/SKILL.md +41 -0
  170. package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
  171. package/skills/elixir-pro/SKILL.md +59 -0
  172. package/skills/embedding-strategies/SKILL.md +491 -0
  173. package/skills/employment-contract-templates/SKILL.md +39 -0
  174. package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
  175. package/skills/error-debugging-error-analysis/SKILL.md +47 -0
  176. package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
  177. package/skills/error-debugging-error-trace/SKILL.md +43 -0
  178. package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
  179. package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
  180. package/skills/error-detective/SKILL.md +53 -0
  181. package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
  182. package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
  183. package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
  184. package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
  185. package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
  186. package/skills/error-handling-patterns/SKILL.md +35 -0
  187. package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
  188. package/skills/event-sourcing-architect/SKILL.md +58 -0
  189. package/skills/event-store-design/SKILL.md +449 -0
  190. package/skills/fastapi-pro/SKILL.md +192 -0
  191. package/skills/fastapi-templates/SKILL.md +32 -0
  192. package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
  193. package/skills/final-test/SKILL.md +5 -0
  194. package/skills/firmware-analyst/SKILL.md +320 -0
  195. package/skills/flutter-expert/SKILL.md +200 -0
  196. package/skills/framework-migration-code-migrate/SKILL.md +48 -0
  197. package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
  198. package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
  199. package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
  200. package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
  201. package/skills/frontend-developer/SKILL.md +171 -0
  202. package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
  203. package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
  204. package/skills/frontend-security-coder/SKILL.md +170 -0
  205. package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
  206. package/skills/gdpr-data-handling/SKILL.md +33 -0
  207. package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
  208. package/skills/git-advanced-workflows/SKILL.md +412 -0
  209. package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
  210. package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
  211. package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
  212. package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
  213. package/skills/github-actions-templates/SKILL.md +345 -0
  214. package/skills/gitlab-ci-patterns/SKILL.md +283 -0
  215. package/skills/gitops-workflow/SKILL.md +303 -0
  216. package/skills/gitops-workflow/references/argocd-setup.md +134 -0
  217. package/skills/gitops-workflow/references/sync-policies.md +131 -0
  218. package/skills/go-concurrency-patterns/SKILL.md +33 -0
  219. package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  220. package/skills/godot-gdscript-patterns/SKILL.md +33 -0
  221. package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
  222. package/skills/golang-pro/SKILL.md +179 -0
  223. package/skills/grafana-dashboards/SKILL.md +381 -0
  224. package/skills/graphql-architect/SKILL.md +182 -0
  225. package/skills/haskell-pro/SKILL.md +56 -0
  226. package/skills/helm-chart-scaffolding/SKILL.md +34 -0
  227. package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
  228. package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
  229. package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
  230. package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
  231. package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
  232. package/skills/hr-pro/SKILL.md +126 -0
  233. package/skills/hybrid-cloud-architect/SKILL.md +168 -0
  234. package/skills/hybrid-cloud-networking/SKILL.md +238 -0
  235. package/skills/hybrid-search-implementation/SKILL.md +32 -0
  236. package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
  237. package/skills/incident-responder/SKILL.md +213 -0
  238. package/skills/incident-response-incident-response/SKILL.md +168 -0
  239. package/skills/incident-response-smart-fix/SKILL.md +29 -0
  240. package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
  241. package/skills/incident-runbook-templates/SKILL.md +395 -0
  242. package/skills/ios-developer/SKILL.md +219 -0
  243. package/skills/istio-traffic-management/SKILL.md +337 -0
  244. package/skills/java-pro/SKILL.md +177 -0
  245. package/skills/javascript-pro/SKILL.md +57 -0
  246. package/skills/javascript-testing-patterns/SKILL.md +35 -0
  247. package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
  248. package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
  249. package/skills/julia-pro/SKILL.md +209 -0
  250. package/skills/k8s-manifest-generator/SKILL.md +35 -0
  251. package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
  252. package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
  253. package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
  254. package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
  255. package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
  256. package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
  257. package/skills/k8s-security-policies/SKILL.md +346 -0
  258. package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
  259. package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
  260. package/skills/kpi-dashboard-design/SKILL.md +440 -0
  261. package/skills/kubernetes-architect/SKILL.md +170 -0
  262. package/skills/langchain-architecture/SKILL.md +350 -0
  263. package/skills/legacy-modernizer/SKILL.md +53 -0
  264. package/skills/legal-advisor/SKILL.md +70 -0
  265. package/skills/linkerd-patterns/SKILL.md +321 -0
  266. package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
  267. package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  268. package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
  269. package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
  270. package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
  271. package/skills/llm-evaluation/SKILL.md +483 -0
  272. package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
  273. package/skills/malware-analyst/SKILL.md +247 -0
  274. package/skills/market-sizing-analysis/SKILL.md +425 -0
  275. package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
  276. package/skills/market-sizing-analysis/references/data-sources.md +360 -0
  277. package/skills/memory-forensics/SKILL.md +491 -0
  278. package/skills/memory-safety-patterns/SKILL.md +33 -0
  279. package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
  280. package/skills/mermaid-expert/SKILL.md +59 -0
  281. package/skills/microservices-patterns/SKILL.md +35 -0
  282. package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
  283. package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
  284. package/skills/ml-engineer/SKILL.md +168 -0
  285. package/skills/ml-pipeline-workflow/SKILL.md +257 -0
  286. package/skills/mlops-engineer/SKILL.md +219 -0
  287. package/skills/mobile-developer/SKILL.md +205 -0
  288. package/skills/mobile-security-coder/SKILL.md +184 -0
  289. package/skills/modern-javascript-patterns/SKILL.md +35 -0
  290. package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  291. package/skills/monorepo-architect/SKILL.md +61 -0
  292. package/skills/monorepo-management/SKILL.md +35 -0
  293. package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
  294. package/skills/mtls-configuration/SKILL.md +359 -0
  295. package/skills/multi-cloud-architecture/SKILL.md +189 -0
  296. package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
  297. package/skills/network-engineer/SKILL.md +169 -0
  298. package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
  299. package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  300. package/skills/nft-standards/SKILL.md +395 -0
  301. package/skills/node-expert/SKILL.md +23 -0
  302. package/skills/nodejs-backend-patterns/SKILL.md +35 -0
  303. package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  304. package/skills/nx-workspace-patterns/SKILL.md +464 -0
  305. package/skills/observability-engineer/SKILL.md +237 -0
  306. package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
  307. package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
  308. package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
  309. package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
  310. package/skills/on-call-handoff-patterns/SKILL.md +453 -0
  311. package/skills/openapi-spec-generation/SKILL.md +33 -0
  312. package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  313. package/skills/payment-integration/SKILL.md +77 -0
  314. package/skills/paypal-integration/SKILL.md +479 -0
  315. package/skills/pci-compliance/SKILL.md +478 -0
  316. package/skills/performance-engineer/SKILL.md +180 -0
  317. package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
  318. package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
  319. package/skills/php-pro/SKILL.md +63 -0
  320. package/skills/posix-shell-pro/SKILL.md +304 -0
  321. package/skills/postgresql/SKILL.md +230 -0
  322. package/skills/postmortem-writing/SKILL.md +386 -0
  323. package/skills/projection-patterns/SKILL.md +33 -0
  324. package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
  325. package/skills/prometheus-configuration/SKILL.md +404 -0
  326. package/skills/prompt-engineer/SKILL.md +272 -0
  327. package/skills/prompt-engineering-patterns/SKILL.md +213 -0
  328. package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  329. package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  330. package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  331. package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  332. package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  333. package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  334. package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
  335. package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  336. package/skills/protocol-reverse-engineering/SKILL.md +29 -0
  337. package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
  338. package/skills/python-development-python-scaffold/SKILL.md +331 -0
  339. package/skills/python-packaging/SKILL.md +36 -0
  340. package/skills/python-packaging/resources/implementation-playbook.md +869 -0
  341. package/skills/python-performance-optimization/SKILL.md +36 -0
  342. package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
  343. package/skills/python-pro/SKILL.md +158 -0
  344. package/skills/python-testing-patterns/SKILL.md +37 -0
  345. package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
  346. package/skills/quant-analyst/SKILL.md +53 -0
  347. package/skills/rag-implementation/SKILL.md +421 -0
  348. package/skills/react-modernization/SKILL.md +34 -0
  349. package/skills/react-modernization/resources/implementation-playbook.md +512 -0
  350. package/skills/react-native-architecture/SKILL.md +33 -0
  351. package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
  352. package/skills/react-state-management/SKILL.md +441 -0
  353. package/skills/reference-builder/SKILL.md +188 -0
  354. package/skills/reverse-engineer/SKILL.md +173 -0
  355. package/skills/risk-manager/SKILL.md +61 -0
  356. package/skills/risk-metrics-calculation/SKILL.md +33 -0
  357. package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
  358. package/skills/ruby-pro/SKILL.md +56 -0
  359. package/skills/rust-async-patterns/SKILL.md +33 -0
  360. package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
  361. package/skills/rust-pro/SKILL.md +178 -0
  362. package/skills/saga-orchestration/SKILL.md +496 -0
  363. package/skills/sales-automator/SKILL.md +55 -0
  364. package/skills/sast-configuration/SKILL.md +212 -0
  365. package/skills/scala-pro/SKILL.md +82 -0
  366. package/skills/screen-reader-testing/SKILL.md +33 -0
  367. package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
  368. package/skills/search-specialist/SKILL.md +80 -0
  369. package/skills/secrets-management/SKILL.md +364 -0
  370. package/skills/security-auditor/SKILL.md +169 -0
  371. package/skills/security-compliance-compliance-check/SKILL.md +55 -0
  372. package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
  373. package/skills/security-requirement-extraction/SKILL.md +33 -0
  374. package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
  375. package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
  376. package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
  377. package/skills/security-scanning-security-hardening/SKILL.md +147 -0
  378. package/skills/security-scanning-security-sast/SKILL.md +495 -0
  379. package/skills/seo-authority-builder/SKILL.md +136 -0
  380. package/skills/seo-cannibalization-detector/SKILL.md +123 -0
  381. package/skills/seo-content-auditor/SKILL.md +83 -0
  382. package/skills/seo-content-planner/SKILL.md +108 -0
  383. package/skills/seo-content-refresher/SKILL.md +118 -0
  384. package/skills/seo-content-writer/SKILL.md +96 -0
  385. package/skills/seo-keyword-strategist/SKILL.md +95 -0
  386. package/skills/seo-meta-optimizer/SKILL.md +92 -0
  387. package/skills/seo-snippet-hunter/SKILL.md +114 -0
  388. package/skills/seo-structure-architect/SKILL.md +108 -0
  389. package/skills/service-mesh-expert/SKILL.md +58 -0
  390. package/skills/service-mesh-observability/SKILL.md +395 -0
  391. package/skills/shellcheck-configuration/SKILL.md +466 -0
  392. package/skills/similarity-search-patterns/SKILL.md +33 -0
  393. package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
  394. package/skills/slo-implementation/SKILL.md +341 -0
  395. package/skills/solidity-security/SKILL.md +34 -0
  396. package/skills/solidity-security/resources/implementation-playbook.md +524 -0
  397. package/skills/spark-optimization/SKILL.md +427 -0
  398. package/skills/sql-optimization-patterns/SKILL.md +35 -0
  399. package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
  400. package/skills/sql-pro/SKILL.md +173 -0
  401. package/skills/startup-analyst/SKILL.md +328 -0
  402. package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
  403. package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
  404. package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
  405. package/skills/startup-financial-modeling/SKILL.md +467 -0
  406. package/skills/startup-metrics-framework/SKILL.md +34 -0
  407. package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
  408. package/skills/stride-analysis-patterns/SKILL.md +33 -0
  409. package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
  410. package/skills/stripe-integration/SKILL.md +454 -0
  411. package/skills/systems-programming-rust-project/SKILL.md +440 -0
  412. package/skills/tailwind-design-system/SKILL.md +33 -0
  413. package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
  414. package/skills/tdd-orchestrator/SKILL.md +205 -0
  415. package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
  416. package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
  417. package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
  418. package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
  419. package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
  420. package/skills/team-collaboration-issue/SKILL.md +37 -0
  421. package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
  422. package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
  423. package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
  424. package/skills/team-composition-analysis/SKILL.md +413 -0
  425. package/skills/temporal-python-pro/SKILL.md +370 -0
  426. package/skills/temporal-python-testing/SKILL.md +170 -0
  427. package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
  428. package/skills/temporal-python-testing/resources/local-setup.md +553 -0
  429. package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
  430. package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
  431. package/skills/terraform-module-library/SKILL.md +261 -0
  432. package/skills/terraform-module-library/references/aws-modules.md +63 -0
  433. package/skills/terraform-specialist/SKILL.md +166 -0
  434. package/skills/test-automator/SKILL.md +224 -0
  435. package/skills/threat-mitigation-mapping/SKILL.md +33 -0
  436. package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
  437. package/skills/threat-modeling-expert/SKILL.md +60 -0
  438. package/skills/track-management/SKILL.md +38 -0
  439. package/skills/track-management/resources/implementation-playbook.md +591 -0
  440. package/skills/turborepo-caching/SKILL.md +419 -0
  441. package/skills/tutorial-engineer/SKILL.md +139 -0
  442. package/skills/typescript-advanced-types/SKILL.md +35 -0
  443. package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
  444. package/skills/typescript-pro/SKILL.md +55 -0
  445. package/skills/ui-minimal/SKILL.md +23 -0
  446. package/skills/ui-ux-designer/SKILL.md +209 -0
  447. package/skills/ui-visual-validator/SKILL.md +214 -0
  448. package/skills/unit-testing-test-generate/SKILL.md +319 -0
  449. package/skills/unity-developer/SKILL.md +230 -0
  450. package/skills/unity-ecs-patterns/SKILL.md +33 -0
  451. package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
  452. package/skills/uv-package-manager/SKILL.md +37 -0
  453. package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
  454. package/skills/vector-database-engineer/SKILL.md +60 -0
  455. package/skills/vector-index-tuning/SKILL.md +42 -0
  456. package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
  457. package/skills/wcag-audit-patterns/SKILL.md +41 -0
  458. package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  459. package/skills/web3-testing/SKILL.md +427 -0
  460. package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
  461. package/skills/workflow-patterns/SKILL.md +38 -0
  462. package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
@@ -0,0 +1,539 @@
1
+ # Anti-Reversing Techniques Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ # Anti-Reversing Techniques
6
+
7
+ Understanding protection mechanisms encountered during authorized software analysis, security research, and malware analysis. This knowledge helps analysts bypass protections to complete legitimate analysis tasks.
8
+
9
+ ## Anti-Debugging Techniques
10
+
11
+ ### Windows Anti-Debugging
12
+
13
+ #### API-Based Detection
14
+
15
+ ```c
16
+ // IsDebuggerPresent
17
+ if (IsDebuggerPresent()) {
18
+ exit(1);
19
+ }
20
+
21
+ // CheckRemoteDebuggerPresent
22
+ BOOL debugged = FALSE;
23
+ CheckRemoteDebuggerPresent(GetCurrentProcess(), &debugged);
24
+ if (debugged) exit(1);
25
+
26
+ // NtQueryInformationProcess
27
+ typedef NTSTATUS (NTAPI *pNtQueryInformationProcess)(
28
+ HANDLE, PROCESSINFOCLASS, PVOID, ULONG, PULONG);
29
+
30
+ DWORD debugPort = 0;
31
+ NtQueryInformationProcess(
32
+ GetCurrentProcess(),
33
+ ProcessDebugPort, // 7
34
+ &debugPort,
35
+ sizeof(debugPort),
36
+ NULL
37
+ );
38
+ if (debugPort != 0) exit(1);
39
+
40
+ // Debug flags
41
+ DWORD debugFlags = 0;
42
+ NtQueryInformationProcess(
43
+ GetCurrentProcess(),
44
+ ProcessDebugFlags, // 0x1F
45
+ &debugFlags,
46
+ sizeof(debugFlags),
47
+ NULL
48
+ );
49
+ if (debugFlags == 0) exit(1); // 0 means being debugged
50
+ ```
51
+
52
+ **Bypass Approaches:**
53
+ ```python
54
+ # x64dbg: ScyllaHide plugin
55
+ # Patches common anti-debug checks
56
+
57
+ # Manual patching in debugger:
58
+ # - Set IsDebuggerPresent return to 0
59
+ # - Patch PEB.BeingDebugged to 0
60
+ # - Hook NtQueryInformationProcess
61
+
62
+ # IDAPython: Patch checks
63
+ ida_bytes.patch_byte(check_addr, 0x90) # NOP
64
+ ```
65
+
66
+ #### PEB-Based Detection
67
+
68
+ ```c
69
+ // Direct PEB access
70
+ #ifdef _WIN64
71
+ PPEB peb = (PPEB)__readgsqword(0x60);
72
+ #else
73
+ PPEB peb = (PPEB)__readfsdword(0x30);
74
+ #endif
75
+
76
+ // BeingDebugged flag
77
+ if (peb->BeingDebugged) exit(1);
78
+
79
+ // NtGlobalFlag
80
+ // Debugged: 0x70 (FLG_HEAP_ENABLE_TAIL_CHECK |
81
+ // FLG_HEAP_ENABLE_FREE_CHECK |
82
+ // FLG_HEAP_VALIDATE_PARAMETERS)
83
+ if (peb->NtGlobalFlag & 0x70) exit(1);
84
+
85
+ // Heap flags
86
+ PDWORD heapFlags = (PDWORD)((PBYTE)peb->ProcessHeap + 0x70);
87
+ if (*heapFlags & 0x50000062) exit(1);
88
+ ```
89
+
90
+ **Bypass Approaches:**
91
+ ```assembly
92
+ ; In debugger, modify PEB directly
93
+ ; x64dbg: dump at gs:[60] (x64) or fs:[30] (x86)
94
+ ; Set BeingDebugged (offset 2) to 0
95
+ ; Clear NtGlobalFlag (offset 0xBC for x64)
96
+ ```
97
+
98
+ #### Timing-Based Detection
99
+
100
+ ```c
101
+ // RDTSC timing
102
+ uint64_t start = __rdtsc();
103
+ // ... some code ...
104
+ uint64_t end = __rdtsc();
105
+ if ((end - start) > THRESHOLD) exit(1);
106
+
107
+ // QueryPerformanceCounter
108
+ LARGE_INTEGER start, end, freq;
109
+ QueryPerformanceFrequency(&freq);
110
+ QueryPerformanceCounter(&start);
111
+ // ... code ...
112
+ QueryPerformanceCounter(&end);
113
+ double elapsed = (double)(end.QuadPart - start.QuadPart) / freq.QuadPart;
114
+ if (elapsed > 0.1) exit(1); // Too slow = debugger
115
+
116
+ // GetTickCount
117
+ DWORD start = GetTickCount();
118
+ // ... code ...
119
+ if (GetTickCount() - start > 1000) exit(1);
120
+ ```
121
+
122
+ **Bypass Approaches:**
123
+ ```
124
+ - Use hardware breakpoints instead of software
125
+ - Patch timing checks
126
+ - Use VM with controlled time
127
+ - Hook timing APIs to return consistent values
128
+ ```
129
+
130
+ #### Exception-Based Detection
131
+
132
+ ```c
133
+ // SEH-based detection
134
+ __try {
135
+ __asm { int 3 } // Software breakpoint
136
+ }
137
+ __except(EXCEPTION_EXECUTE_HANDLER) {
138
+ // Normal execution: exception caught
139
+ return;
140
+ }
141
+ // Debugger ate the exception
142
+ exit(1);
143
+
144
+ // VEH-based detection
145
+ LONG CALLBACK VectoredHandler(PEXCEPTION_POINTERS ep) {
146
+ if (ep->ExceptionRecord->ExceptionCode == EXCEPTION_BREAKPOINT) {
147
+ ep->ContextRecord->Rip++; // Skip INT3
148
+ return EXCEPTION_CONTINUE_EXECUTION;
149
+ }
150
+ return EXCEPTION_CONTINUE_SEARCH;
151
+ }
152
+ ```
153
+
154
+ ### Linux Anti-Debugging
155
+
156
+ ```c
157
+ // ptrace self-trace
158
+ if (ptrace(PTRACE_TRACEME, 0, NULL, NULL) == -1) {
159
+ // Already being traced
160
+ exit(1);
161
+ }
162
+
163
+ // /proc/self/status
164
+ FILE *f = fopen("/proc/self/status", "r");
165
+ char line[256];
166
+ while (fgets(line, sizeof(line), f)) {
167
+ if (strncmp(line, "TracerPid:", 10) == 0) {
168
+ int tracer_pid = atoi(line + 10);
169
+ if (tracer_pid != 0) exit(1);
170
+ }
171
+ }
172
+
173
+ // Parent process check
174
+ if (getppid() != 1 && strcmp(get_process_name(getppid()), "bash") != 0) {
175
+ // Unusual parent (might be debugger)
176
+ }
177
+ ```
178
+
179
+ **Bypass Approaches:**
180
+ ```bash
181
+ # LD_PRELOAD to hook ptrace
182
+ # Compile: gcc -shared -fPIC -o hook.so hook.c
183
+ long ptrace(int request, ...) {
184
+ return 0; // Always succeed
185
+ }
186
+
187
+ # Usage
188
+ LD_PRELOAD=./hook.so ./target
189
+ ```
190
+
191
+ ## Anti-VM Detection
192
+
193
+ ### Hardware Fingerprinting
194
+
195
+ ```c
196
+ // CPUID-based detection
197
+ int cpuid_info[4];
198
+ __cpuid(cpuid_info, 1);
199
+ // Check hypervisor bit (bit 31 of ECX)
200
+ if (cpuid_info[2] & (1 << 31)) {
201
+ // Running in hypervisor
202
+ }
203
+
204
+ // CPUID brand string
205
+ __cpuid(cpuid_info, 0x40000000);
206
+ char vendor[13] = {0};
207
+ memcpy(vendor, &cpuid_info[1], 12);
208
+ // "VMwareVMware", "Microsoft Hv", "KVMKVMKVM", "VBoxVBoxVBox"
209
+
210
+ // MAC address prefix
211
+ // VMware: 00:0C:29, 00:50:56
212
+ // VirtualBox: 08:00:27
213
+ // Hyper-V: 00:15:5D
214
+ ```
215
+
216
+ ### Registry/File Detection
217
+
218
+ ```c
219
+ // Windows registry keys
220
+ // HKLM\SOFTWARE\VMware, Inc.\VMware Tools
221
+ // HKLM\SOFTWARE\Oracle\VirtualBox Guest Additions
222
+ // HKLM\HARDWARE\ACPI\DSDT\VBOX__
223
+
224
+ // Files
225
+ // C:\Windows\System32\drivers\vmmouse.sys
226
+ // C:\Windows\System32\drivers\vmhgfs.sys
227
+ // C:\Windows\System32\drivers\VBoxMouse.sys
228
+
229
+ // Processes
230
+ // vmtoolsd.exe, vmwaretray.exe
231
+ // VBoxService.exe, VBoxTray.exe
232
+ ```
233
+
234
+ ### Timing-Based VM Detection
235
+
236
+ ```c
237
+ // VM exits cause timing anomalies
238
+ uint64_t start = __rdtsc();
239
+ __cpuid(cpuid_info, 0); // Causes VM exit
240
+ uint64_t end = __rdtsc();
241
+ if ((end - start) > 500) {
242
+ // Likely in VM (CPUID takes longer)
243
+ }
244
+ ```
245
+
246
+ **Bypass Approaches:**
247
+ ```
248
+ - Use bare-metal analysis environment
249
+ - Harden VM (remove guest tools, change MAC)
250
+ - Patch detection code
251
+ - Use specialized analysis VMs (FLARE-VM)
252
+ ```
253
+
254
+ ## Code Obfuscation
255
+
256
+ ### Control Flow Obfuscation
257
+
258
+ #### Control Flow Flattening
259
+
260
+ ```c
261
+ // Original
262
+ if (cond) {
263
+ func_a();
264
+ } else {
265
+ func_b();
266
+ }
267
+ func_c();
268
+
269
+ // Flattened
270
+ int state = 0;
271
+ while (1) {
272
+ switch (state) {
273
+ case 0:
274
+ state = cond ? 1 : 2;
275
+ break;
276
+ case 1:
277
+ func_a();
278
+ state = 3;
279
+ break;
280
+ case 2:
281
+ func_b();
282
+ state = 3;
283
+ break;
284
+ case 3:
285
+ func_c();
286
+ return;
287
+ }
288
+ }
289
+ ```
290
+
291
+ **Analysis Approach:**
292
+ - Identify state variable
293
+ - Map state transitions
294
+ - Reconstruct original flow
295
+ - Tools: D-810 (IDA), SATURN
296
+
297
+ #### Opaque Predicates
298
+
299
+ ```c
300
+ // Always true, but complex to analyze
301
+ int x = rand();
302
+ if ((x * x) >= 0) { // Always true
303
+ real_code();
304
+ } else {
305
+ junk_code(); // Dead code
306
+ }
307
+
308
+ // Always false
309
+ if ((x * (x + 1)) % 2 == 1) { // Product of consecutive = even
310
+ junk_code();
311
+ }
312
+ ```
313
+
314
+ **Analysis Approach:**
315
+ - Identify constant expressions
316
+ - Symbolic execution to prove predicates
317
+ - Pattern matching for known opaque predicates
318
+
319
+ ### Data Obfuscation
320
+
321
+ #### String Encryption
322
+
323
+ ```c
324
+ // XOR encryption
325
+ char decrypt_string(char *enc, int len, char key) {
326
+ char *dec = malloc(len + 1);
327
+ for (int i = 0; i < len; i++) {
328
+ dec[i] = enc[i] ^ key;
329
+ }
330
+ dec[len] = 0;
331
+ return dec;
332
+ }
333
+
334
+ // Stack strings
335
+ char url[20];
336
+ url[0] = 'h'; url[1] = 't'; url[2] = 't'; url[3] = 'p';
337
+ url[4] = ':'; url[5] = '/'; url[6] = '/';
338
+ // ...
339
+ ```
340
+
341
+ **Analysis Approach:**
342
+ ```python
343
+ # FLOSS for automatic string deobfuscation
344
+ floss malware.exe
345
+
346
+ # IDAPython string decryption
347
+ def decrypt_xor(ea, length, key):
348
+ result = ""
349
+ for i in range(length):
350
+ byte = ida_bytes.get_byte(ea + i)
351
+ result += chr(byte ^ key)
352
+ return result
353
+ ```
354
+
355
+ #### API Obfuscation
356
+
357
+ ```c
358
+ // Dynamic API resolution
359
+ typedef HANDLE (WINAPI *pCreateFileW)(LPCWSTR, DWORD, DWORD,
360
+ LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE);
361
+
362
+ HMODULE kernel32 = LoadLibraryA("kernel32.dll");
363
+ pCreateFileW myCreateFile = (pCreateFileW)GetProcAddress(
364
+ kernel32, "CreateFileW");
365
+
366
+ // API hashing
367
+ DWORD hash_api(char *name) {
368
+ DWORD hash = 0;
369
+ while (*name) {
370
+ hash = ((hash >> 13) | (hash << 19)) + *name++;
371
+ }
372
+ return hash;
373
+ }
374
+ // Resolve by hash comparison instead of string
375
+ ```
376
+
377
+ **Analysis Approach:**
378
+ - Identify hash algorithm
379
+ - Build hash database of known APIs
380
+ - Use HashDB plugin for IDA
381
+ - Dynamic analysis to resolve at runtime
382
+
383
+ ### Instruction-Level Obfuscation
384
+
385
+ #### Dead Code Insertion
386
+
387
+ ```asm
388
+ ; Original
389
+ mov eax, 1
390
+
391
+ ; With dead code
392
+ push ebx ; Dead
393
+ mov eax, 1
394
+ pop ebx ; Dead
395
+ xor ecx, ecx ; Dead
396
+ add ecx, ecx ; Dead
397
+ ```
398
+
399
+ #### Instruction Substitution
400
+
401
+ ```asm
402
+ ; Original: xor eax, eax (set to 0)
403
+ ; Substitutions:
404
+ sub eax, eax
405
+ mov eax, 0
406
+ and eax, 0
407
+ lea eax, [0]
408
+
409
+ ; Original: mov eax, 1
410
+ ; Substitutions:
411
+ xor eax, eax
412
+ inc eax
413
+
414
+ push 1
415
+ pop eax
416
+ ```
417
+
418
+ ## Packing and Encryption
419
+
420
+ ### Common Packers
421
+
422
+ ```
423
+ UPX - Open source, easy to unpack
424
+ Themida - Commercial, VM-based protection
425
+ VMProtect - Commercial, code virtualization
426
+ ASPack - Compression packer
427
+ PECompact - Compression packer
428
+ Enigma - Commercial protector
429
+ ```
430
+
431
+ ### Unpacking Methodology
432
+
433
+ ```
434
+ 1. Identify packer (DIE, Exeinfo PE, PEiD)
435
+
436
+ 2. Static unpacking (if known packer):
437
+ - UPX: upx -d packed.exe
438
+ - Use existing unpackers
439
+
440
+ 3. Dynamic unpacking:
441
+ a. Find Original Entry Point (OEP)
442
+ b. Set breakpoint on OEP
443
+ c. Dump memory when OEP reached
444
+ d. Fix import table (Scylla, ImpREC)
445
+
446
+ 4. OEP finding techniques:
447
+ - Hardware breakpoint on stack (ESP trick)
448
+ - Break on common API calls (GetCommandLineA)
449
+ - Trace and look for typical entry patterns
450
+ ```
451
+
452
+ ### Manual Unpacking Example
453
+
454
+ ```
455
+ 1. Load packed binary in x64dbg
456
+ 2. Note entry point (packer stub)
457
+ 3. Use ESP trick:
458
+ - Run to entry
459
+ - Set hardware breakpoint on [ESP]
460
+ - Run until breakpoint hits (after PUSHAD/POPAD)
461
+ 4. Look for JMP to OEP
462
+ 5. At OEP, use Scylla to:
463
+ - Dump process
464
+ - Find imports (IAT autosearch)
465
+ - Fix dump
466
+ ```
467
+
468
+ ## Virtualization-Based Protection
469
+
470
+ ### Code Virtualization
471
+
472
+ ```
473
+ Original x86 code is converted to custom bytecode
474
+ interpreted by embedded VM at runtime.
475
+
476
+ Original: VM Protected:
477
+ mov eax, 1 push vm_context
478
+ add eax, 2 call vm_entry
479
+ ; VM interprets bytecode
480
+ ; equivalent to original
481
+ ```
482
+
483
+ ### Analysis Approaches
484
+
485
+ ```
486
+ 1. Identify VM components:
487
+ - VM entry (dispatcher)
488
+ - Handler table
489
+ - Bytecode location
490
+ - Virtual registers/stack
491
+
492
+ 2. Trace execution:
493
+ - Log handler calls
494
+ - Map bytecode to operations
495
+ - Understand instruction set
496
+
497
+ 3. Lifting/devirtualization:
498
+ - Map VM instructions back to native
499
+ - Tools: VMAttack, SATURN, NoVmp
500
+
501
+ 4. Symbolic execution:
502
+ - Analyze VM semantically
503
+ - angr, Triton
504
+ ```
505
+
506
+ ## Bypass Strategies Summary
507
+
508
+ ### General Principles
509
+
510
+ 1. **Understand the protection**: Identify what technique is used
511
+ 2. **Find the check**: Locate protection code in binary
512
+ 3. **Patch or hook**: Modify check to always pass
513
+ 4. **Use appropriate tools**: ScyllaHide, x64dbg plugins
514
+ 5. **Document findings**: Keep notes on bypassed protections
515
+
516
+ ### Tool Recommendations
517
+
518
+ ```
519
+ Anti-debug bypass: ScyllaHide, TitanHide
520
+ Unpacking: x64dbg + Scylla, OllyDumpEx
521
+ Deobfuscation: D-810, SATURN, miasm
522
+ VM analysis: VMAttack, NoVmp, manual tracing
523
+ String decryption: FLOSS, custom scripts
524
+ Symbolic execution: angr, Triton
525
+ ```
526
+
527
+ ### Ethical Considerations
528
+
529
+ This knowledge should only be used for:
530
+ - Authorized security research
531
+ - Malware analysis (defensive)
532
+ - CTF competitions
533
+ - Understanding protections for legitimate purposes
534
+ - Educational purposes
535
+
536
+ Never use to bypass protections for:
537
+ - Software piracy
538
+ - Unauthorized access
539
+ - Malicious purposes
@@ -0,0 +1,37 @@
1
+ ---
2
+ name: api-design-principles
3
+ description: Master REST and GraphQL API design principles to build intuitive, scalable, and maintainable APIs that delight developers. Use when designing new APIs, reviewing API specifications, or establishing API design standards.
4
+ ---
5
+
6
+ # API Design Principles
7
+
8
+ Master REST and GraphQL API design principles to build intuitive, scalable, and maintainable APIs that delight developers and stand the test of time.
9
+
10
+ ## Use this skill when
11
+
12
+ - Designing new REST or GraphQL APIs
13
+ - Refactoring existing APIs for better usability
14
+ - Establishing API design standards for your team
15
+ - Reviewing API specifications before implementation
16
+ - Migrating between API paradigms (REST to GraphQL, etc.)
17
+ - Creating developer-friendly API documentation
18
+ - Optimizing APIs for specific use cases (mobile, third-party integrations)
19
+
20
+ ## Do not use this skill when
21
+
22
+ - You only need implementation guidance for a specific framework
23
+ - You are doing infrastructure-only work without API contracts
24
+ - You cannot change or version public interfaces
25
+
26
+ ## Instructions
27
+
28
+ 1. Define consumers, use cases, and constraints.
29
+ 2. Choose API style and model resources or types.
30
+ 3. Specify errors, versioning, pagination, and auth strategy.
31
+ 4. Validate with examples and review for consistency.
32
+
33
+ Refer to `resources/implementation-playbook.md` for detailed patterns, checklists, and templates.
34
+
35
+ ## Resources
36
+
37
+ - `resources/implementation-playbook.md` for detailed patterns, checklists, and templates.
@@ -0,0 +1,155 @@
1
+ # API Design Checklist
2
+
3
+ ## Pre-Implementation Review
4
+
5
+ ### Resource Design
6
+
7
+ - [ ] Resources are nouns, not verbs
8
+ - [ ] Plural names for collections
9
+ - [ ] Consistent naming across all endpoints
10
+ - [ ] Clear resource hierarchy (avoid deep nesting >2 levels)
11
+ - [ ] All CRUD operations properly mapped to HTTP methods
12
+
13
+ ### HTTP Methods
14
+
15
+ - [ ] GET for retrieval (safe, idempotent)
16
+ - [ ] POST for creation
17
+ - [ ] PUT for full replacement (idempotent)
18
+ - [ ] PATCH for partial updates
19
+ - [ ] DELETE for removal (idempotent)
20
+
21
+ ### Status Codes
22
+
23
+ - [ ] 200 OK for successful GET/PATCH/PUT
24
+ - [ ] 201 Created for POST
25
+ - [ ] 204 No Content for DELETE
26
+ - [ ] 400 Bad Request for malformed requests
27
+ - [ ] 401 Unauthorized for missing auth
28
+ - [ ] 403 Forbidden for insufficient permissions
29
+ - [ ] 404 Not Found for missing resources
30
+ - [ ] 422 Unprocessable Entity for validation errors
31
+ - [ ] 429 Too Many Requests for rate limiting
32
+ - [ ] 500 Internal Server Error for server issues
33
+
34
+ ### Pagination
35
+
36
+ - [ ] All collection endpoints paginated
37
+ - [ ] Default page size defined (e.g., 20)
38
+ - [ ] Maximum page size enforced (e.g., 100)
39
+ - [ ] Pagination metadata included (total, pages, etc.)
40
+ - [ ] Cursor-based or offset-based pattern chosen
41
+
42
+ ### Filtering & Sorting
43
+
44
+ - [ ] Query parameters for filtering
45
+ - [ ] Sort parameter supported
46
+ - [ ] Search parameter for full-text search
47
+ - [ ] Field selection supported (sparse fieldsets)
48
+
49
+ ### Versioning
50
+
51
+ - [ ] Versioning strategy defined (URL/header/query)
52
+ - [ ] Version included in all endpoints
53
+ - [ ] Deprecation policy documented
54
+
55
+ ### Error Handling
56
+
57
+ - [ ] Consistent error response format
58
+ - [ ] Detailed error messages
59
+ - [ ] Field-level validation errors
60
+ - [ ] Error codes for client handling
61
+ - [ ] Timestamps in error responses
62
+
63
+ ### Authentication & Authorization
64
+
65
+ - [ ] Authentication method defined (Bearer token, API key)
66
+ - [ ] Authorization checks on all endpoints
67
+ - [ ] 401 vs 403 used correctly
68
+ - [ ] Token expiration handled
69
+
70
+ ### Rate Limiting
71
+
72
+ - [ ] Rate limits defined per endpoint/user
73
+ - [ ] Rate limit headers included
74
+ - [ ] 429 status code for exceeded limits
75
+ - [ ] Retry-After header provided
76
+
77
+ ### Documentation
78
+
79
+ - [ ] OpenAPI/Swagger spec generated
80
+ - [ ] All endpoints documented
81
+ - [ ] Request/response examples provided
82
+ - [ ] Error responses documented
83
+ - [ ] Authentication flow documented
84
+
85
+ ### Testing
86
+
87
+ - [ ] Unit tests for business logic
88
+ - [ ] Integration tests for endpoints
89
+ - [ ] Error scenarios tested
90
+ - [ ] Edge cases covered
91
+ - [ ] Performance tests for heavy endpoints
92
+
93
+ ### Security
94
+
95
+ - [ ] Input validation on all fields
96
+ - [ ] SQL injection prevention
97
+ - [ ] XSS prevention
98
+ - [ ] CORS configured correctly
99
+ - [ ] HTTPS enforced
100
+ - [ ] Sensitive data not in URLs
101
+ - [ ] No secrets in responses
102
+
103
+ ### Performance
104
+
105
+ - [ ] Database queries optimized
106
+ - [ ] N+1 queries prevented
107
+ - [ ] Caching strategy defined
108
+ - [ ] Cache headers set appropriately
109
+ - [ ] Large responses paginated
110
+
111
+ ### Monitoring
112
+
113
+ - [ ] Logging implemented
114
+ - [ ] Error tracking configured
115
+ - [ ] Performance metrics collected
116
+ - [ ] Health check endpoint available
117
+ - [ ] Alerts configured for errors
118
+
119
+ ## GraphQL-Specific Checks
120
+
121
+ ### Schema Design
122
+
123
+ - [ ] Schema-first approach used
124
+ - [ ] Types properly defined
125
+ - [ ] Non-null vs nullable decided
126
+ - [ ] Interfaces/unions used appropriately
127
+ - [ ] Custom scalars defined
128
+
129
+ ### Queries
130
+
131
+ - [ ] Query depth limiting
132
+ - [ ] Query complexity analysis
133
+ - [ ] DataLoaders prevent N+1
134
+ - [ ] Pagination pattern chosen (Relay/offset)
135
+
136
+ ### Mutations
137
+
138
+ - [ ] Input types defined
139
+ - [ ] Payload types with errors
140
+ - [ ] Optimistic response support
141
+ - [ ] Idempotency considered
142
+
143
+ ### Performance
144
+
145
+ - [ ] DataLoader for all relationships
146
+ - [ ] Query batching enabled
147
+ - [ ] Persisted queries considered
148
+ - [ ] Response caching implemented
149
+
150
+ ### Documentation
151
+
152
+ - [ ] All fields documented
153
+ - [ ] Deprecations marked
154
+ - [ ] Examples provided
155
+ - [ ] Schema introspection enabled