@nockdev/awf 6.2.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 (727) hide show
  1. package/.agent/build.yaml +178 -0
  2. package/.agent/config.yaml +235 -0
  3. package/.agent/core/ACTIVE_MEMORY.yaml +344 -0
  4. package/.agent/core/ARCH_REGISTRY.yaml +252 -0
  5. package/.agent/core/AUDIT_POLICY.md +68 -0
  6. package/.agent/core/BRANDING.yaml +185 -0
  7. package/.agent/core/CACHE.md +59 -0
  8. package/.agent/core/CHECKPOINT.yaml +153 -0
  9. package/.agent/core/CLEANUP_ENGINE.yaml +326 -0
  10. package/.agent/core/CODING_STYLES.yaml +346 -0
  11. package/.agent/core/COMMANDS.md +93 -0
  12. package/.agent/core/CONTEXT_INJECTOR.yaml +325 -0
  13. package/.agent/core/CONTEXT_LOADER.yaml +323 -0
  14. package/.agent/core/CONTEXT_OPTIMIZATION.yaml +286 -0
  15. package/.agent/core/CONTEXT_PRIORITY.yaml +357 -0
  16. package/.agent/core/CUSTOMIZE.md +138 -0
  17. package/.agent/core/DATA_SAFETY.md +92 -0
  18. package/.agent/core/FLOW_ENGINE.yaml +300 -0
  19. package/.agent/core/GRAPH_MEMORY.yaml +420 -0
  20. package/.agent/core/HSA.yaml +357 -0
  21. package/.agent/core/HYBRID_ROUTER.yaml +346 -0
  22. package/.agent/core/INTENT_DETECTION.yaml +384 -0
  23. package/.agent/core/LIBRARY_REGISTRY.yaml +401 -0
  24. package/.agent/core/MCP_TOOLS.yaml +414 -0
  25. package/.agent/core/MEMORY_CONSOLIDATION.yaml +352 -0
  26. package/.agent/core/MEMORY_ENGINE.yaml +353 -0
  27. package/.agent/core/MEMORY_PATHS.yaml +79 -0
  28. package/.agent/core/MEMORY_UTILS.yaml +212 -0
  29. package/.agent/core/PATTERNS.yaml +319 -0
  30. package/.agent/core/PERMISSIONS.md +100 -0
  31. package/.agent/core/README.md +91 -0
  32. package/.agent/core/REFLECTION_ENGINE.yaml +348 -0
  33. package/.agent/core/ROUTER.yaml +424 -0
  34. package/.agent/core/SCORING_FORMULA.yaml +103 -0
  35. package/.agent/core/SEMANTIC_ENGINE.yaml +162 -0
  36. package/.agent/core/SKILLS_FLOW.yaml +341 -0
  37. package/.agent/core/SKILL_SCHEMA.yaml +266 -0
  38. package/.agent/core/STATE_MACHINE.yaml +409 -0
  39. package/.agent/core/SUMMARIZATION_ENGINE.yaml +258 -0
  40. package/.agent/core/TEMPLATES.yaml +364 -0
  41. package/.agent/core/TOKEN_BUDGETS.yaml +157 -0
  42. package/.agent/core/TOKEN_LOADING.yaml +197 -0
  43. package/.agent/core/TOKEN_SUMMARY.yaml +121 -0
  44. package/.agent/core/VERSION.yaml +240 -0
  45. package/.agent/core/embeddings.json +2004 -0
  46. package/.agent/core/session_cache.json +50 -0
  47. package/.agent/i18n/README.md +30 -0
  48. package/.agent/i18n/en.yaml +302 -0
  49. package/.agent/i18n/vi.yaml +302 -0
  50. package/.agent/ide/README.md +47 -0
  51. package/.agent/ide/amazonq.json +35 -0
  52. package/.agent/ide/amp.json +35 -0
  53. package/.agent/ide/antigravity.json +47 -0
  54. package/.agent/ide/augment.json +35 -0
  55. package/.agent/ide/claude.json +42 -0
  56. package/.agent/ide/cline.json +34 -0
  57. package/.agent/ide/codex.json +37 -0
  58. package/.agent/ide/cody.json +35 -0
  59. package/.agent/ide/continue.json +35 -0
  60. package/.agent/ide/cursor.json +42 -0
  61. package/.agent/ide/gemini.json +46 -0
  62. package/.agent/ide/jetbrains.json +35 -0
  63. package/.agent/ide/kiro.json +35 -0
  64. package/.agent/ide/opencode.json +35 -0
  65. package/.agent/ide/roo.json +35 -0
  66. package/.agent/ide/tabnine.json +35 -0
  67. package/.agent/ide/trae.json +35 -0
  68. package/.agent/ide/vscode.json +34 -0
  69. package/.agent/ide/windsurf.json +56 -0
  70. package/.agent/ide/zed.json +36 -0
  71. package/.agent/manifest.yaml +416 -0
  72. package/.agent/memory/README.md +148 -0
  73. package/.agent/memory/active_memories.json +35 -0
  74. package/.agent/memory/archive/.gitkeep +0 -0
  75. package/.agent/memory/audit_summary.json +58 -0
  76. package/.agent/memory/cleanup_log.json +34 -0
  77. package/.agent/memory/consolidated.md +75 -0
  78. package/.agent/memory/core_memory/persona.json +30 -0
  79. package/.agent/memory/core_memory/project.json +25 -0
  80. package/.agent/memory/core_memory/rules.json +29 -0
  81. package/.agent/memory/core_memory/user.json +24 -0
  82. package/.agent/memory/decisions.md +40 -0
  83. package/.agent/memory/graph/knowledge_graph.json +12 -0
  84. package/.agent/memory/insights.md +52 -0
  85. package/.agent/memory/metrics.json +48 -0
  86. package/.agent/memory/patterns/errors.json +11 -0
  87. package/.agent/memory/patterns/successes.json +10 -0
  88. package/.agent/memory/session.md +64 -0
  89. package/.agent/memory/session_rules.json +19 -0
  90. package/.agent/memory/state.json +81 -0
  91. package/.agent/memory/vectors/README.md +129 -0
  92. package/.agent/personas/README.md +180 -0
  93. package/.agent/personas/architect.md +186 -0
  94. package/.agent/personas/auditor.md +222 -0
  95. package/.agent/personas/debugger.md +210 -0
  96. package/.agent/personas/developer.md +183 -0
  97. package/.agent/personas/devops.md +268 -0
  98. package/.agent/personas/documenter.md +262 -0
  99. package/.agent/personas/orchestrator.md +240 -0
  100. package/.agent/personas/persona.schema.yaml +209 -0
  101. package/.agent/personas/planner.md +171 -0
  102. package/.agent/personas/researcher.md +194 -0
  103. package/.agent/personas/security.md +212 -0
  104. package/.agent/personas/tester.md +247 -0
  105. package/.agent/rules/README.md +231 -0
  106. package/.agent/rules/SACRED_RULES.xml +142 -0
  107. package/.agent/rules/constitutional/tier-0-core.yaml +182 -0
  108. package/.agent/rules/constitutional/tier-1-safety.yaml +272 -0
  109. package/.agent/rules/constitutional/tier-2-execution.yaml +294 -0
  110. package/.agent/rules/data/build-systems.yaml +126 -0
  111. package/.agent/rules/data/quality-standards.json +59 -0
  112. package/.agent/rules/duplication-prevention.md +138 -0
  113. package/.agent/rules/incremental-changes.md +146 -0
  114. package/.agent/rules/modules/context-management.yaml +158 -0
  115. package/.agent/rules/modules/edit-verification.yaml +197 -0
  116. package/.agent/rules/modules/evidence.yaml +185 -0
  117. package/.agent/rules/modules/git-workflow.yaml +165 -0
  118. package/.agent/rules/modules/language.yaml +155 -0
  119. package/.agent/rules/modules/online-research.yaml +192 -0
  120. package/.agent/rules/modules/quality.yaml +185 -0
  121. package/.agent/rules/modules/reflection.yaml +209 -0
  122. package/.agent/rules/modules/stop-conditions.yaml +196 -0
  123. package/.agent/rules/modules/terminal-safety.yaml +229 -0
  124. package/.agent/rules/modules/versioning.yaml +97 -0
  125. package/.agent/rules/modules/yagni.yaml +167 -0
  126. package/.agent/rules/project-detection.md +317 -0
  127. package/.agent/rules/prompt-injection-guard.md +260 -0
  128. package/.agent/rules/shell-commands.md +210 -0
  129. package/.agent/rules/validation-framework.md +189 -0
  130. package/.agent/skills/DEVELOPMENT.yaml +226 -0
  131. package/.agent/skills/README.md +69 -0
  132. package/.agent/skills/_categories.yaml +145 -0
  133. package/.agent/skills/_router.yaml +232 -0
  134. package/.agent/skills/core/_index.yaml +12 -0
  135. package/.agent/skills/core/api-design/META.yaml +64 -0
  136. package/.agent/skills/core/api-design/SKILL.md +169 -0
  137. package/.agent/skills/core/api-design/data/api-versioning.yaml +217 -0
  138. package/.agent/skills/core/api-design/data/error-responses.yaml +135 -0
  139. package/.agent/skills/core/api-design/data/graphql-patterns.yaml +165 -0
  140. package/.agent/skills/core/api-design/data/grpc-patterns.yaml +165 -0
  141. package/.agent/skills/core/api-design/data/http-status-codes.yaml +176 -0
  142. package/.agent/skills/core/api-design/data/pagination.yaml +121 -0
  143. package/.agent/skills/core/api-design/data/rate-limiting.yaml +135 -0
  144. package/.agent/skills/core/api-design/data/rest-patterns.yaml +195 -0
  145. package/.agent/skills/core/api-design/data/test-apis.yaml +217 -0
  146. package/.agent/skills/core/authentication/META.yaml +73 -0
  147. package/.agent/skills/core/authentication/SKILL.md +166 -0
  148. package/.agent/skills/core/authentication/data/anti-patterns.yaml +135 -0
  149. package/.agent/skills/core/authentication/data/core-patterns.yaml +256 -0
  150. package/.agent/skills/core/authentication/data/jwt-patterns.yaml +255 -0
  151. package/.agent/skills/core/authentication/data/language-csharp.yaml +215 -0
  152. package/.agent/skills/core/authentication/data/language-go.yaml +215 -0
  153. package/.agent/skills/core/authentication/data/language-java.yaml +215 -0
  154. package/.agent/skills/core/authentication/data/language-mobile.yaml +215 -0
  155. package/.agent/skills/core/authentication/data/language-python.yaml +215 -0
  156. package/.agent/skills/core/authentication/data/language-rust.yaml +215 -0
  157. package/.agent/skills/core/authentication/data/language-typescript.yaml +215 -0
  158. package/.agent/skills/core/authentication/data/mfa-patterns.yaml +175 -0
  159. package/.agent/skills/core/authentication/data/oauth-patterns.yaml +255 -0
  160. package/.agent/skills/core/authentication/data/oauth.yaml +248 -0
  161. package/.agent/skills/core/authentication/data/passkeys-webauthn.yaml +215 -0
  162. package/.agent/skills/core/authentication/data/passkeys.yaml +208 -0
  163. package/.agent/skills/core/authentication/data/password-patterns.yaml +175 -0
  164. package/.agent/skills/core/authentication/data/password.yaml +168 -0
  165. package/.agent/skills/core/authentication/data/session-patterns.yaml +215 -0
  166. package/.agent/skills/core/error-handling/META.yaml +71 -0
  167. package/.agent/skills/core/error-handling/SKILL.md +156 -0
  168. package/.agent/skills/core/error-handling/data/anti-patterns.yaml +105 -0
  169. package/.agent/skills/core/error-handling/data/api-error-patterns.yaml +135 -0
  170. package/.agent/skills/core/error-handling/data/core-patterns.yaml +226 -0
  171. package/.agent/skills/core/error-handling/data/error-codes.yaml +165 -0
  172. package/.agent/skills/core/error-handling/data/error-messages.yaml +165 -0
  173. package/.agent/skills/core/error-handling/data/language-c-cpp.yaml +226 -0
  174. package/.agent/skills/core/error-handling/data/language-go-rust.yaml +226 -0
  175. package/.agent/skills/core/error-handling/data/language-python-java.yaml +226 -0
  176. package/.agent/skills/core/error-handling/data/language-swift-kotlin.yaml +226 -0
  177. package/.agent/skills/core/error-handling/data/language-typescript-php-ruby.yaml +226 -0
  178. package/.agent/skills/core/error-handling/data/resilience-patterns.yaml +191 -0
  179. package/.agent/skills/core/error-handling/data/ui-error-patterns.yaml +135 -0
  180. package/.agent/skills/core/logging/META.yaml +73 -0
  181. package/.agent/skills/core/logging/SKILL.md +184 -0
  182. package/.agent/skills/core/logging/data/aggregation-patterns.yaml +191 -0
  183. package/.agent/skills/core/logging/data/anti-patterns.yaml +121 -0
  184. package/.agent/skills/core/logging/data/core-patterns.yaml +226 -0
  185. package/.agent/skills/core/logging/data/language-csharp.yaml +191 -0
  186. package/.agent/skills/core/logging/data/language-go.yaml +191 -0
  187. package/.agent/skills/core/logging/data/language-java.yaml +191 -0
  188. package/.agent/skills/core/logging/data/language-kotlin.yaml +156 -0
  189. package/.agent/skills/core/logging/data/language-others.yaml +184 -0
  190. package/.agent/skills/core/logging/data/language-python.yaml +191 -0
  191. package/.agent/skills/core/logging/data/language-rust.yaml +191 -0
  192. package/.agent/skills/core/logging/data/language-swift.yaml +156 -0
  193. package/.agent/skills/core/logging/data/language-typescript.yaml +191 -0
  194. package/.agent/skills/core/logging/data/otel-logging.yaml +156 -0
  195. package/.agent/skills/core/observability/META.yaml +76 -0
  196. package/.agent/skills/core/observability/SKILL.md +153 -0
  197. package/.agent/skills/core/observability/data/alerting-patterns.yaml +165 -0
  198. package/.agent/skills/core/observability/data/anti-patterns.yaml +105 -0
  199. package/.agent/skills/core/observability/data/core-patterns.yaml +195 -0
  200. package/.agent/skills/core/observability/data/language-cpp.yaml +165 -0
  201. package/.agent/skills/core/observability/data/language-csharp.yaml +165 -0
  202. package/.agent/skills/core/observability/data/language-go.yaml +165 -0
  203. package/.agent/skills/core/observability/data/language-java.yaml +165 -0
  204. package/.agent/skills/core/observability/data/language-others.yaml +255 -0
  205. package/.agent/skills/core/observability/data/language-python.yaml +165 -0
  206. package/.agent/skills/core/observability/data/language-rust.yaml +165 -0
  207. package/.agent/skills/core/observability/data/language-typescript.yaml +165 -0
  208. package/.agent/skills/core/observability/data/metrics-patterns.yaml +135 -0
  209. package/.agent/skills/core/observability/data/metrics-prometheus.yaml +165 -0
  210. package/.agent/skills/core/observability/data/otel-core.yaml +195 -0
  211. package/.agent/skills/core/observability/data/profiling-patterns.yaml +135 -0
  212. package/.agent/skills/core/observability/data/tracing-patterns.yaml +165 -0
  213. package/.agent/skills/core/observability/data/tracing-tools.yaml +135 -0
  214. package/.agent/skills/core/security/ADVANCED.md +269 -0
  215. package/.agent/skills/core/security/META.yaml +97 -0
  216. package/.agent/skills/core/security/SKILL.md +234 -0
  217. package/.agent/skills/core/security/data/ai-ml-security.yaml +261 -0
  218. package/.agent/skills/core/security/data/api-security.yaml +230 -0
  219. package/.agent/skills/core/security/data/auth-patterns.yaml +195 -0
  220. package/.agent/skills/core/security/data/binary-exploitation.yaml +339 -0
  221. package/.agent/skills/core/security/data/cloud-security.yaml +269 -0
  222. package/.agent/skills/core/security/data/cwe-top25.yaml +415 -0
  223. package/.agent/skills/core/security/data/language-specific/c-security.yaml +295 -0
  224. package/.agent/skills/core/security/data/language-specific/cpp-security.yaml +295 -0
  225. package/.agent/skills/core/security/data/language-specific/csharp-security.yaml +219 -0
  226. package/.agent/skills/core/security/data/language-specific/go-security.yaml +219 -0
  227. package/.agent/skills/core/security/data/language-specific/java-security.yaml +295 -0
  228. package/.agent/skills/core/security/data/language-specific/kotlin-security.yaml +198 -0
  229. package/.agent/skills/core/security/data/language-specific/php-security.yaml +219 -0
  230. package/.agent/skills/core/security/data/language-specific/python-security.yaml +295 -0
  231. package/.agent/skills/core/security/data/language-specific/ruby-security.yaml +198 -0
  232. package/.agent/skills/core/security/data/language-specific/rust-security.yaml +240 -0
  233. package/.agent/skills/core/security/data/language-specific/solidity-security.yaml +369 -0
  234. package/.agent/skills/core/security/data/language-specific/swift-security.yaml +198 -0
  235. package/.agent/skills/core/security/data/language-specific/typescript-security.yaml +295 -0
  236. package/.agent/skills/core/security/data/mobile-security.yaml +369 -0
  237. package/.agent/skills/core/security/data/network-security.yaml +297 -0
  238. package/.agent/skills/core/security/data/owasp-top10.yaml +171 -0
  239. package/.agent/skills/core/security/data/reverse-engineering.yaml +497 -0
  240. package/.agent/skills/core/security/data/supply-chain.yaml +219 -0
  241. package/.agent/skills/cross-cutting/_index.yaml +15 -0
  242. package/.agent/skills/cross-cutting/audit-pro/META.yaml +43 -0
  243. package/.agent/skills/cross-cutting/audit-pro/data/checklists.yaml +644 -0
  244. package/.agent/skills/cross-cutting/audit-pro/data/scoring.yaml +101 -0
  245. package/.agent/skills/cross-cutting/aws/META.yaml +75 -0
  246. package/.agent/skills/cross-cutting/aws/data/ai_ml.yaml +194 -0
  247. package/.agent/skills/cross-cutting/aws/data/compute.yaml +191 -0
  248. package/.agent/skills/cross-cutting/aws/data/kubernetes.yaml +199 -0
  249. package/.agent/skills/cross-cutting/aws/data/storage.yaml +174 -0
  250. package/.agent/skills/cross-cutting/bun/META.yaml +58 -0
  251. package/.agent/skills/cross-cutting/bun/SKILL.md +357 -0
  252. package/.agent/skills/cross-cutting/bun/data/database.yaml +85 -0
  253. package/.agent/skills/cross-cutting/bun/data/runtime.yaml +170 -0
  254. package/.agent/skills/cross-cutting/bun/data/tooling.yaml +192 -0
  255. package/.agent/skills/cross-cutting/ci-cd/META.yaml +60 -0
  256. package/.agent/skills/cross-cutting/ci-cd/data/github_actions.yaml +248 -0
  257. package/.agent/skills/cross-cutting/ci-cd/data/security.yaml +211 -0
  258. package/.agent/skills/cross-cutting/coding-rules/META.yaml +61 -0
  259. package/.agent/skills/cross-cutting/coding-rules/SKILL.md +171 -0
  260. package/.agent/skills/cross-cutting/coding-rules/data/architecture-patterns.yaml +96 -0
  261. package/.agent/skills/cross-cutting/coding-rules/data/build-systems.yaml +346 -0
  262. package/.agent/skills/cross-cutting/coding-rules/data/coding-rules.yaml +647 -0
  263. package/.agent/skills/cross-cutting/coding-rules/data/concurrency-patterns.yaml +108 -0
  264. package/.agent/skills/cross-cutting/coding-rules/data/design-patterns.yaml +260 -0
  265. package/.agent/skills/cross-cutting/coding-rules/data/framework-signatures.yaml +344 -0
  266. package/.agent/skills/cross-cutting/coding-rules/data/memory-management.yaml +108 -0
  267. package/.agent/skills/cross-cutting/coding-rules/data/naming-conventions.yaml +320 -0
  268. package/.agent/skills/cross-cutting/coding-rules/data/performance-benchmarks.yaml +164 -0
  269. package/.agent/skills/cross-cutting/coding-rules/data/solid-principles.yaml +80 -0
  270. package/.agent/skills/cross-cutting/coding-rules/data/test-frameworks.yaml +183 -0
  271. package/.agent/skills/cross-cutting/database/ADVANCED.md +465 -0
  272. package/.agent/skills/cross-cutting/database/META.yaml +22 -0
  273. package/.agent/skills/cross-cutting/database/SKILL.md +816 -0
  274. package/.agent/skills/cross-cutting/database/data/anti_patterns.yaml +116 -0
  275. package/.agent/skills/cross-cutting/database/data/distributed.yaml +152 -0
  276. package/.agent/skills/cross-cutting/database/data/mongodb.yaml +132 -0
  277. package/.agent/skills/cross-cutting/database/data/mysql.yaml +130 -0
  278. package/.agent/skills/cross-cutting/database/data/orm.yaml +104 -0
  279. package/.agent/skills/cross-cutting/database/data/postgresql.yaml +170 -0
  280. package/.agent/skills/cross-cutting/database/data/redis.yaml +129 -0
  281. package/.agent/skills/cross-cutting/deno/META.yaml +68 -0
  282. package/.agent/skills/cross-cutting/deno/SKILL.md +343 -0
  283. package/.agent/skills/cross-cutting/deno/data/runtime.yaml +260 -0
  284. package/.agent/skills/cross-cutting/deno/data/security.yaml +168 -0
  285. package/.agent/skills/cross-cutting/deno/data/tooling.yaml +133 -0
  286. package/.agent/skills/cross-cutting/docker/META.yaml +65 -0
  287. package/.agent/skills/cross-cutting/docker/data/build.yaml +197 -0
  288. package/.agent/skills/cross-cutting/docker/data/compose.yaml +229 -0
  289. package/.agent/skills/cross-cutting/docker/data/security.yaml +164 -0
  290. package/.agent/skills/cross-cutting/electron/META.yaml +174 -0
  291. package/.agent/skills/cross-cutting/electron/SKILL.md +862 -0
  292. package/.agent/skills/cross-cutting/electron/data/build.yaml +105 -0
  293. package/.agent/skills/cross-cutting/electron/data/crash.yaml +103 -0
  294. package/.agent/skills/cross-cutting/electron/data/ipc.yaml +85 -0
  295. package/.agent/skills/cross-cutting/electron/data/native.yaml +157 -0
  296. package/.agent/skills/cross-cutting/electron/data/security.yaml +89 -0
  297. package/.agent/skills/cross-cutting/electron/data/storage.yaml +100 -0
  298. package/.agent/skills/cross-cutting/electron/data/testing.yaml +103 -0
  299. package/.agent/skills/cross-cutting/electron/data/updates.yaml +99 -0
  300. package/.agent/skills/cross-cutting/electron/data/window.yaml +83 -0
  301. package/.agent/skills/cross-cutting/kubernetes/META.yaml +70 -0
  302. package/.agent/skills/cross-cutting/kubernetes/data/networking.yaml +270 -0
  303. package/.agent/skills/cross-cutting/kubernetes/data/scheduling.yaml +267 -0
  304. package/.agent/skills/cross-cutting/kubernetes/data/security.yaml +253 -0
  305. package/.agent/skills/cross-cutting/kubernetes/data/workloads.yaml +251 -0
  306. package/.agent/skills/cross-cutting/sql/META.yaml +88 -0
  307. package/.agent/skills/cross-cutting/sql/SKILL.md +296 -0
  308. package/.agent/skills/cross-cutting/sql/data/indexing.yaml +147 -0
  309. package/.agent/skills/cross-cutting/sql/data/json.yaml +156 -0
  310. package/.agent/skills/cross-cutting/sql/data/performance.yaml +204 -0
  311. package/.agent/skills/cross-cutting/sql/data/queries.yaml +150 -0
  312. package/.agent/skills/cross-cutting/tailwind/META.yaml +72 -0
  313. package/.agent/skills/cross-cutting/tailwind/SKILL.md +344 -0
  314. package/.agent/skills/cross-cutting/tailwind/data/build.yaml +143 -0
  315. package/.agent/skills/cross-cutting/tailwind/data/config.yaml +109 -0
  316. package/.agent/skills/cross-cutting/tailwind/data/migration.yaml +149 -0
  317. package/.agent/skills/cross-cutting/tailwind/data/responsive.yaml +148 -0
  318. package/.agent/skills/cross-cutting/tailwind/data/states.yaml +152 -0
  319. package/.agent/skills/cross-cutting/tailwind/data/theme.yaml +126 -0
  320. package/.agent/skills/cross-cutting/tailwind/data/utilities.yaml +182 -0
  321. package/.agent/skills/cross-cutting/tailwind/data/variants.yaml +154 -0
  322. package/.agent/skills/cross-cutting/testing/ADVANCED.md +245 -0
  323. package/.agent/skills/cross-cutting/testing/META.yaml +49 -0
  324. package/.agent/skills/cross-cutting/testing/SKILL.md +263 -0
  325. package/.agent/skills/cross-cutting/testing/data/frameworks.yaml +300 -0
  326. package/.agent/skills/cross-cutting/testing/data/patterns.yaml +168 -0
  327. package/.agent/skills/cross-cutting/ui-ux-pro-max/META.yaml +108 -0
  328. package/.agent/skills/cross-cutting/ui-ux-pro-max/SKILL.md +565 -0
  329. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/charts.yaml +331 -0
  330. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/colors.yaml +1226 -0
  331. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-decision.yaml +287 -0
  332. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-mapping.yaml +318 -0
  333. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/design-tokens.yaml +525 -0
  334. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-animation.yaml +232 -0
  335. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-architecture.yaml +140 -0
  336. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-colors.yaml +467 -0
  337. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/directory-structure.yaml +75 -0
  338. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/icons.yaml +918 -0
  339. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/implementation-strategy.yaml +107 -0
  340. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/landing.yaml +372 -0
  341. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-frameworks.yaml +195 -0
  342. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-guidelines.yaml +177 -0
  343. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/products.yaml +1339 -0
  344. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/prompts.yaml +180 -0
  345. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/react-performance.yaml +504 -0
  346. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/desktop.yaml +228 -0
  347. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/flutter.yaml +508 -0
  348. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/html-tailwind.yaml +543 -0
  349. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nextjs.yaml +515 -0
  350. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxt-ui.yaml +519 -0
  351. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxtjs.yaml +599 -0
  352. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react-native.yaml +496 -0
  353. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react.yaml +526 -0
  354. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/shadcn.yaml +616 -0
  355. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/svelte.yaml +520 -0
  356. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/swiftui.yaml +486 -0
  357. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/vue.yaml +485 -0
  358. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/styles.yaml +1473 -0
  359. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/typography.yaml +647 -0
  360. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ui-reasoning.yaml +1019 -0
  361. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ux-guidelines.yaml +1009 -0
  362. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/web-interface.yaml +347 -0
  363. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/core.cpython-310.pyc +0 -0
  364. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/core.cpython-314.pyc +0 -0
  365. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-314.pyc +0 -0
  366. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core.py +393 -0
  367. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core_legacy.py +303 -0
  368. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/design_system.py +496 -0
  369. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/search.py +76 -0
  370. package/.agent/skills/cross-cutting/web-perf/META.yaml +92 -0
  371. package/.agent/skills/cross-cutting/web-perf/SKILL.md +181 -0
  372. package/.agent/skills/cross-cutting/web-perf/data/cls_optimization.yaml +189 -0
  373. package/.agent/skills/cross-cutting/web-perf/data/core_web_vitals.yaml +282 -0
  374. package/.agent/skills/cross-cutting/web-perf/data/inp_optimization.yaml +240 -0
  375. package/.agent/skills/cross-cutting/web-perf/data/lcp_optimization.yaml +202 -0
  376. package/.agent/skills/cross-cutting/web-perf/data/measurement.yaml +170 -0
  377. package/.agent/skills/devops/_index.yaml +9 -0
  378. package/.agent/skills/devops/aws/ADVANCED.md +547 -0
  379. package/.agent/skills/devops/aws/META.yaml +84 -0
  380. package/.agent/skills/devops/aws/SKILL.md +711 -0
  381. package/.agent/skills/devops/ci-cd/ADVANCED.md +529 -0
  382. package/.agent/skills/devops/ci-cd/META.yaml +21 -0
  383. package/.agent/skills/devops/ci-cd/SKILL.md +821 -0
  384. package/.agent/skills/devops/docker/ADVANCED.md +495 -0
  385. package/.agent/skills/devops/docker/META.yaml +20 -0
  386. package/.agent/skills/devops/docker/SKILL.md +653 -0
  387. package/.agent/skills/devops/kubernetes/ADVANCED.md +252 -0
  388. package/.agent/skills/devops/kubernetes/META.yaml +15 -0
  389. package/.agent/skills/devops/kubernetes/SKILL.md +621 -0
  390. package/.agent/skills/frameworks/_index.yaml +13 -0
  391. package/.agent/skills/frameworks/angular/META.yaml +70 -0
  392. package/.agent/skills/frameworks/angular/SKILL.md +319 -0
  393. package/.agent/skills/frameworks/angular/data/core.yaml +209 -0
  394. package/.agent/skills/frameworks/angular/data/performance.yaml +210 -0
  395. package/.agent/skills/frameworks/angular/data/server.yaml +175 -0
  396. package/.agent/skills/frameworks/flutter/ADVANCED.md +491 -0
  397. package/.agent/skills/frameworks/flutter/META.yaml +64 -0
  398. package/.agent/skills/frameworks/flutter/SKILL.md +541 -0
  399. package/.agent/skills/frameworks/flutter/data/core.yaml +210 -0
  400. package/.agent/skills/frameworks/flutter/data/platform.yaml +246 -0
  401. package/.agent/skills/frameworks/flutter/data/state.yaml +250 -0
  402. package/.agent/skills/frameworks/nextjs/ADVANCED.md +225 -0
  403. package/.agent/skills/frameworks/nextjs/META.yaml +67 -0
  404. package/.agent/skills/frameworks/nextjs/SKILL.md +593 -0
  405. package/.agent/skills/frameworks/nextjs/data/caching.yaml +210 -0
  406. package/.agent/skills/frameworks/nextjs/data/core.yaml +255 -0
  407. package/.agent/skills/frameworks/nextjs/data/server.yaml +248 -0
  408. package/.agent/skills/frameworks/nuxt/META.yaml +57 -0
  409. package/.agent/skills/frameworks/nuxt/SKILL.md +283 -0
  410. package/.agent/skills/frameworks/nuxt/data/core.yaml +309 -0
  411. package/.agent/skills/frameworks/nuxt/data/server.yaml +271 -0
  412. package/.agent/skills/frameworks/react/ADVANCED.md +676 -0
  413. package/.agent/skills/frameworks/react/META.yaml +60 -0
  414. package/.agent/skills/frameworks/react/SKILL.md +263 -0
  415. package/.agent/skills/frameworks/react/data/core.yaml +278 -0
  416. package/.agent/skills/frameworks/react/data/server.yaml +283 -0
  417. package/.agent/skills/frameworks/react-native/META.yaml +59 -0
  418. package/.agent/skills/frameworks/react-native/SKILL.md +301 -0
  419. package/.agent/skills/frameworks/react-native/data/core.yaml +260 -0
  420. package/.agent/skills/frameworks/react-native/data/platform.yaml +287 -0
  421. package/.agent/skills/frameworks/svelte/META.yaml +62 -0
  422. package/.agent/skills/frameworks/svelte/SKILL.md +398 -0
  423. package/.agent/skills/frameworks/svelte/data/runes.yaml +239 -0
  424. package/.agent/skills/frameworks/svelte/data/sveltekit.yaml +244 -0
  425. package/.agent/skills/frameworks/vue/ADVANCED.md +214 -0
  426. package/.agent/skills/frameworks/vue/META.yaml +58 -0
  427. package/.agent/skills/frameworks/vue/SKILL.md +356 -0
  428. package/.agent/skills/frameworks/vue/data/advanced.yaml +253 -0
  429. package/.agent/skills/frameworks/vue/data/core.yaml +270 -0
  430. package/.agent/skills/index.json +143 -0
  431. package/.agent/skills/languages/_index.yaml +33 -0
  432. package/.agent/skills/languages/asm/ADVANCED.md +750 -0
  433. package/.agent/skills/languages/asm/META.yaml +84 -0
  434. package/.agent/skills/languages/asm/SKILL.md +753 -0
  435. package/.agent/skills/languages/asm/data/advanced.yaml +295 -0
  436. package/.agent/skills/languages/asm/data/core.yaml +280 -0
  437. package/.agent/skills/languages/c/ADVANCED.md +625 -0
  438. package/.agent/skills/languages/c/META.yaml +58 -0
  439. package/.agent/skills/languages/c/SKILL.md +748 -0
  440. package/.agent/skills/languages/c/data/core.yaml +179 -0
  441. package/.agent/skills/languages/c/data/embedded.yaml +251 -0
  442. package/.agent/skills/languages/c/data/memory.yaml +253 -0
  443. package/.agent/skills/languages/clojure/META.yaml +13 -0
  444. package/.agent/skills/languages/clojure/SKILL.md +130 -0
  445. package/.agent/skills/languages/clojure/data/core.yaml +326 -0
  446. package/.agent/skills/languages/cpp/ADVANCED.md +457 -0
  447. package/.agent/skills/languages/cpp/META.yaml +61 -0
  448. package/.agent/skills/languages/cpp/SKILL.md +936 -0
  449. package/.agent/skills/languages/cpp/data/core.yaml +304 -0
  450. package/.agent/skills/languages/cpp/data/memory.yaml +247 -0
  451. package/.agent/skills/languages/cpp/data/modern.yaml +334 -0
  452. package/.agent/skills/languages/crystal/META.yaml +30 -0
  453. package/.agent/skills/languages/crystal/SKILL.md +117 -0
  454. package/.agent/skills/languages/crystal/data/async.yaml +264 -0
  455. package/.agent/skills/languages/crystal/data/core.yaml +279 -0
  456. package/.agent/skills/languages/csharp/ADVANCED.md +592 -0
  457. package/.agent/skills/languages/csharp/META.yaml +23 -0
  458. package/.agent/skills/languages/csharp/SKILL.md +620 -0
  459. package/.agent/skills/languages/csharp/data/aspnet.yaml +448 -0
  460. package/.agent/skills/languages/csharp/data/core.yaml +362 -0
  461. package/.agent/skills/languages/elixir/META.yaml +18 -0
  462. package/.agent/skills/languages/elixir/SKILL.md +368 -0
  463. package/.agent/skills/languages/elixir/data/core.yaml +392 -0
  464. package/.agent/skills/languages/fsharp/META.yaml +14 -0
  465. package/.agent/skills/languages/fsharp/SKILL.md +113 -0
  466. package/.agent/skills/languages/fsharp/data/core.yaml +396 -0
  467. package/.agent/skills/languages/go/ADVANCED.md +260 -0
  468. package/.agent/skills/languages/go/META.yaml +64 -0
  469. package/.agent/skills/languages/go/SKILL.md +489 -0
  470. package/.agent/skills/languages/go/data/concurrency.yaml +424 -0
  471. package/.agent/skills/languages/go/data/core.yaml +399 -0
  472. package/.agent/skills/languages/go/data/http.yaml +507 -0
  473. package/.agent/skills/languages/haskell/META.yaml +18 -0
  474. package/.agent/skills/languages/haskell/SKILL.md +305 -0
  475. package/.agent/skills/languages/haskell/data/core.yaml +347 -0
  476. package/.agent/skills/languages/java/ADVANCED.md +450 -0
  477. package/.agent/skills/languages/java/META.yaml +89 -0
  478. package/.agent/skills/languages/java/SKILL.md +495 -0
  479. package/.agent/skills/languages/java/data/core.yaml +307 -0
  480. package/.agent/skills/languages/java/data/spring.yaml +437 -0
  481. package/.agent/skills/languages/javascript/ADVANCED.md +530 -0
  482. package/.agent/skills/languages/javascript/META.yaml +105 -0
  483. package/.agent/skills/languages/javascript/SKILL.md +455 -0
  484. package/.agent/skills/languages/javascript/data/async.yaml +290 -0
  485. package/.agent/skills/languages/javascript/data/core.yaml +380 -0
  486. package/.agent/skills/languages/javascript/data/modern.yaml +269 -0
  487. package/.agent/skills/languages/julia/META.yaml +13 -0
  488. package/.agent/skills/languages/julia/SKILL.md +174 -0
  489. package/.agent/skills/languages/julia/data/core.yaml +356 -0
  490. package/.agent/skills/languages/kotlin/ADVANCED.md +539 -0
  491. package/.agent/skills/languages/kotlin/META.yaml +24 -0
  492. package/.agent/skills/languages/kotlin/SKILL.md +525 -0
  493. package/.agent/skills/languages/kotlin/data/android.yaml +495 -0
  494. package/.agent/skills/languages/kotlin/data/core.yaml +366 -0
  495. package/.agent/skills/languages/lua/ADVANCED.md +257 -0
  496. package/.agent/skills/languages/lua/META.yaml +58 -0
  497. package/.agent/skills/languages/lua/SKILL.md +492 -0
  498. package/.agent/skills/languages/lua/data/core.yaml +264 -0
  499. package/.agent/skills/languages/lua/data/embedding.yaml +300 -0
  500. package/.agent/skills/languages/nim/META.yaml +30 -0
  501. package/.agent/skills/languages/nim/SKILL.md +116 -0
  502. package/.agent/skills/languages/nim/data/async.yaml +257 -0
  503. package/.agent/skills/languages/nim/data/core.yaml +241 -0
  504. package/.agent/skills/languages/ocaml/META.yaml +13 -0
  505. package/.agent/skills/languages/ocaml/SKILL.md +123 -0
  506. package/.agent/skills/languages/ocaml/data/core.yaml +357 -0
  507. package/.agent/skills/languages/perl/META.yaml +13 -0
  508. package/.agent/skills/languages/perl/SKILL.md +115 -0
  509. package/.agent/skills/languages/perl/data/core.yaml +360 -0
  510. package/.agent/skills/languages/php/ADVANCED.md +199 -0
  511. package/.agent/skills/languages/php/META.yaml +18 -0
  512. package/.agent/skills/languages/php/SKILL.md +488 -0
  513. package/.agent/skills/languages/php/data/core.yaml +392 -0
  514. package/.agent/skills/languages/php/data/laravel.yaml +525 -0
  515. package/.agent/skills/languages/python/ADVANCED.md +207 -0
  516. package/.agent/skills/languages/python/META.yaml +91 -0
  517. package/.agent/skills/languages/python/SKILL.md +495 -0
  518. package/.agent/skills/languages/python/data/async.yaml +265 -0
  519. package/.agent/skills/languages/python/data/core.yaml +259 -0
  520. package/.agent/skills/languages/python/data/fastapi.yaml +296 -0
  521. package/.agent/skills/languages/python/data/testing.yaml +226 -0
  522. package/.agent/skills/languages/r/META.yaml +16 -0
  523. package/.agent/skills/languages/r/SKILL.md +348 -0
  524. package/.agent/skills/languages/r/data/core.yaml +355 -0
  525. package/.agent/skills/languages/ruby/ADVANCED.md +381 -0
  526. package/.agent/skills/languages/ruby/META.yaml +19 -0
  527. package/.agent/skills/languages/ruby/SKILL.md +417 -0
  528. package/.agent/skills/languages/ruby/data/core.yaml +448 -0
  529. package/.agent/skills/languages/ruby/data/rails.yaml +415 -0
  530. package/.agent/skills/languages/rust/ADVANCED.md +212 -0
  531. package/.agent/skills/languages/rust/META.yaml +87 -0
  532. package/.agent/skills/languages/rust/SKILL.md +377 -0
  533. package/.agent/skills/languages/rust/data/async.yaml +404 -0
  534. package/.agent/skills/languages/rust/data/axum.yaml +450 -0
  535. package/.agent/skills/languages/rust/data/core.yaml +356 -0
  536. package/.agent/skills/languages/scala/META.yaml +17 -0
  537. package/.agent/skills/languages/scala/SKILL.md +202 -0
  538. package/.agent/skills/languages/scala/data/core.yaml +349 -0
  539. package/.agent/skills/languages/solidity/META.yaml +13 -0
  540. package/.agent/skills/languages/solidity/SKILL.md +188 -0
  541. package/.agent/skills/languages/solidity/data/core.yaml +528 -0
  542. package/.agent/skills/languages/swift/ADVANCED.md +231 -0
  543. package/.agent/skills/languages/swift/META.yaml +18 -0
  544. package/.agent/skills/languages/swift/SKILL.md +342 -0
  545. package/.agent/skills/languages/swift/data/core.yaml +489 -0
  546. package/.agent/skills/languages/typescript/ADVANCED.md +186 -0
  547. package/.agent/skills/languages/typescript/META.yaml +92 -0
  548. package/.agent/skills/languages/typescript/SKILL.md +306 -0
  549. package/.agent/skills/languages/typescript/data/async.yaml +397 -0
  550. package/.agent/skills/languages/typescript/data/core.yaml +283 -0
  551. package/.agent/skills/languages/typescript/data/validation.yaml +338 -0
  552. package/.agent/skills/languages/zig/META.yaml +52 -0
  553. package/.agent/skills/languages/zig/SKILL.md +354 -0
  554. package/.agent/skills/languages/zig/data/async.yaml +314 -0
  555. package/.agent/skills/languages/zig/data/core.yaml +302 -0
  556. package/.agent/templates/README.md +42 -0
  557. package/.agent/templates/audit-report.md +153 -0
  558. package/.agent/templates/chains/debug/step1-reproduce.md +83 -0
  559. package/.agent/templates/chains/debug/step2-isolate.md +73 -0
  560. package/.agent/templates/chains/debug/step3-analyze.md +86 -0
  561. package/.agent/templates/chains/debug/step4-fix.md +85 -0
  562. package/.agent/templates/chains/debug/step5-verify.md +122 -0
  563. package/.agent/templates/chains/implement/step1-plan.md +88 -0
  564. package/.agent/templates/chains/implement/step2-code.md +87 -0
  565. package/.agent/templates/chains/implement/step3-test.md +87 -0
  566. package/.agent/templates/chains/implement/step4-doc.md +118 -0
  567. package/.agent/templates/chains/review/step1-understand.md +74 -0
  568. package/.agent/templates/chains/review/step2-analyze.md +110 -0
  569. package/.agent/templates/chains/review/step3-fix.md +93 -0
  570. package/.agent/templates/chains/review/step4-summary.md +104 -0
  571. package/.agent/templates/debug-report.md +50 -0
  572. package/.agent/templates/deploy-plan.md +54 -0
  573. package/.agent/templates/doc-template.md +57 -0
  574. package/.agent/templates/findings.md +122 -0
  575. package/.agent/templates/index.yaml +239 -0
  576. package/.agent/templates/migrate-plan.md +50 -0
  577. package/.agent/templates/phase-template.md +72 -0
  578. package/.agent/templates/project-plan.md +87 -0
  579. package/.agent/templates/prompts/context_block.md +114 -0
  580. package/.agent/templates/prompts/guardrails_block.md +116 -0
  581. package/.agent/templates/prompts/persona_base.md +155 -0
  582. package/.agent/templates/prompts/tools_block.md +137 -0
  583. package/.agent/templates/reflection/critic.md +110 -0
  584. package/.agent/templates/reflection/error_analysis.md +149 -0
  585. package/.agent/templates/reflection/success_analysis.md +174 -0
  586. package/.agent/templates/task-list.md +144 -0
  587. package/.agent/templates/tasks/audit.yaml +146 -0
  588. package/.agent/templates/tasks/bug_fix.yaml +121 -0
  589. package/.agent/templates/tasks/code_implementation.yaml +110 -0
  590. package/.agent/templates/tasks/refactor.yaml +157 -0
  591. package/.agent/templates/test-report.md +52 -0
  592. package/.agent/workflows/ap.md +135 -0
  593. package/.agent/workflows/code.md +130 -0
  594. package/.agent/workflows/debug.md +230 -0
  595. package/.agent/workflows/deploy.md +192 -0
  596. package/.agent/workflows/dev.md +137 -0
  597. package/.agent/workflows/doc.md +124 -0
  598. package/.agent/workflows/env.md +98 -0
  599. package/.agent/workflows/fix.md +76 -0
  600. package/.agent/workflows/generate.md +28 -0
  601. package/.agent/workflows/git.md +97 -0
  602. package/.agent/workflows/help.md +75 -0
  603. package/.agent/workflows/init.md +148 -0
  604. package/.agent/workflows/migrate.md +135 -0
  605. package/.agent/workflows/monitor.md +133 -0
  606. package/.agent/workflows/onboard.md +144 -0
  607. package/.agent/workflows/orchestrate.md +117 -0
  608. package/.agent/workflows/perf.md +106 -0
  609. package/.agent/workflows/plan.md +106 -0
  610. package/.agent/workflows/recap.md +101 -0
  611. package/.agent/workflows/refactor.md +161 -0
  612. package/.agent/workflows/revert.md +99 -0
  613. package/.agent/workflows/review.md +106 -0
  614. package/.agent/workflows/scaffold.md +119 -0
  615. package/.agent/workflows/security.md +186 -0
  616. package/.agent/workflows/status.md +103 -0
  617. package/.agent/workflows/test.md +157 -0
  618. package/.agent/workflows/think.md +126 -0
  619. package/.agent/workflows/upgrade.md +109 -0
  620. package/.agent/workflows/visualize.md +295 -0
  621. package/.agent/workflows/workflow.md +196 -0
  622. package/README.md +64 -0
  623. package/dist/commands/add.d.ts +2 -0
  624. package/dist/commands/add.d.ts.map +1 -0
  625. package/dist/commands/add.js +70 -0
  626. package/dist/commands/add.js.map +1 -0
  627. package/dist/commands/config.d.ts +4 -0
  628. package/dist/commands/config.d.ts.map +1 -0
  629. package/dist/commands/config.js +152 -0
  630. package/dist/commands/config.js.map +1 -0
  631. package/dist/commands/doctor.d.ts +4 -0
  632. package/dist/commands/doctor.d.ts.map +1 -0
  633. package/dist/commands/doctor.js +98 -0
  634. package/dist/commands/doctor.js.map +1 -0
  635. package/dist/commands/hsa.d.ts +4 -0
  636. package/dist/commands/hsa.d.ts.map +1 -0
  637. package/dist/commands/hsa.js +194 -0
  638. package/dist/commands/hsa.js.map +1 -0
  639. package/dist/commands/info.d.ts +2 -0
  640. package/dist/commands/info.d.ts.map +1 -0
  641. package/dist/commands/info.js +149 -0
  642. package/dist/commands/info.js.map +1 -0
  643. package/dist/commands/init.d.ts +4 -0
  644. package/dist/commands/init.d.ts.map +1 -0
  645. package/dist/commands/init.js +262 -0
  646. package/dist/commands/init.js.map +1 -0
  647. package/dist/commands/install-core.d.ts +4 -0
  648. package/dist/commands/install-core.d.ts.map +1 -0
  649. package/dist/commands/install-core.js +85 -0
  650. package/dist/commands/install-core.js.map +1 -0
  651. package/dist/commands/install-helpers.d.ts +27 -0
  652. package/dist/commands/install-helpers.d.ts.map +1 -0
  653. package/dist/commands/install-helpers.js +125 -0
  654. package/dist/commands/install-helpers.js.map +1 -0
  655. package/dist/commands/install-hsa.d.ts +18 -0
  656. package/dist/commands/install-hsa.d.ts.map +1 -0
  657. package/dist/commands/install-hsa.js +61 -0
  658. package/dist/commands/install-hsa.js.map +1 -0
  659. package/dist/commands/install.d.ts +4 -0
  660. package/dist/commands/install.d.ts.map +1 -0
  661. package/dist/commands/install.js +310 -0
  662. package/dist/commands/install.js.map +1 -0
  663. package/dist/commands/list.d.ts +4 -0
  664. package/dist/commands/list.d.ts.map +1 -0
  665. package/dist/commands/list.js +91 -0
  666. package/dist/commands/list.js.map +1 -0
  667. package/dist/commands/mcp-registry.d.ts +48 -0
  668. package/dist/commands/mcp-registry.d.ts.map +1 -0
  669. package/dist/commands/mcp-registry.js +246 -0
  670. package/dist/commands/mcp-registry.js.map +1 -0
  671. package/dist/commands/mcp-writers.d.ts +20 -0
  672. package/dist/commands/mcp-writers.d.ts.map +1 -0
  673. package/dist/commands/mcp-writers.js +144 -0
  674. package/dist/commands/mcp-writers.js.map +1 -0
  675. package/dist/commands/mcp.d.ts +10 -0
  676. package/dist/commands/mcp.d.ts.map +1 -0
  677. package/dist/commands/mcp.js +319 -0
  678. package/dist/commands/mcp.js.map +1 -0
  679. package/dist/commands/update.d.ts +4 -0
  680. package/dist/commands/update.d.ts.map +1 -0
  681. package/dist/commands/update.js +79 -0
  682. package/dist/commands/update.js.map +1 -0
  683. package/dist/constants/cursor-globs.d.ts +17 -0
  684. package/dist/constants/cursor-globs.d.ts.map +1 -0
  685. package/dist/constants/cursor-globs.js +62 -0
  686. package/dist/constants/cursor-globs.js.map +1 -0
  687. package/dist/constants/ide-install-specs.d.ts +36 -0
  688. package/dist/constants/ide-install-specs.d.ts.map +1 -0
  689. package/dist/constants/ide-install-specs.js +870 -0
  690. package/dist/constants/ide-install-specs.js.map +1 -0
  691. package/dist/constants/ides.d.ts +105 -0
  692. package/dist/constants/ides.d.ts.map +1 -0
  693. package/dist/constants/ides.js +412 -0
  694. package/dist/constants/ides.js.map +1 -0
  695. package/dist/constants/skills.d.ts +40 -0
  696. package/dist/constants/skills.d.ts.map +1 -0
  697. package/dist/constants/skills.js +78 -0
  698. package/dist/constants/skills.js.map +1 -0
  699. package/dist/constants.d.ts +39 -0
  700. package/dist/constants.d.ts.map +1 -0
  701. package/dist/constants.js +75 -0
  702. package/dist/constants.js.map +1 -0
  703. package/dist/index.d.ts +8 -0
  704. package/dist/index.d.ts.map +1 -0
  705. package/dist/index.js +122 -0
  706. package/dist/index.js.map +1 -0
  707. package/dist/types/flags.d.ts +47 -0
  708. package/dist/types/flags.d.ts.map +1 -0
  709. package/dist/types/flags.js +4 -0
  710. package/dist/types/flags.js.map +1 -0
  711. package/dist/types/ide-install.d.ts +175 -0
  712. package/dist/types/ide-install.d.ts.map +1 -0
  713. package/dist/types/ide-install.js +29 -0
  714. package/dist/types/ide-install.js.map +1 -0
  715. package/dist/utils/copy-helpers.d.ts +60 -0
  716. package/dist/utils/copy-helpers.d.ts.map +1 -0
  717. package/dist/utils/copy-helpers.js +617 -0
  718. package/dist/utils/copy-helpers.js.map +1 -0
  719. package/dist/utils/index.d.ts +3 -0
  720. package/dist/utils/index.d.ts.map +1 -0
  721. package/dist/utils/index.js +5 -0
  722. package/dist/utils/index.js.map +1 -0
  723. package/dist/utils/validation.d.ts +29 -0
  724. package/dist/utils/validation.d.ts.map +1 -0
  725. package/dist/utils/validation.js +211 -0
  726. package/dist/utils/validation.js.map +1 -0
  727. package/package.json +64 -0
@@ -0,0 +1,750 @@
1
+ # Assembly — Advanced Patterns
2
+
3
+ # DOMYH Awesome Code — Tier 3 Reference
4
+
5
+ ## Table of Contents
6
+
7
+ - [Windows x64 Deep Dive](#windows-x64-deep-dive)
8
+ - [Linux System Programming](#linux-system-programming)
9
+ - [SIMD Advanced Patterns](#simd-advanced-patterns)
10
+ - [Security & Exploit Development](#security--exploit-development)
11
+ - [Performance Optimization](#performance-optimization)
12
+ - [Reverse Engineering Patterns](#reverse-engineering-patterns)
13
+
14
+ ---
15
+
16
+ ## Windows x64 Deep Dive
17
+
18
+ ### Microsoft x64 ABI Complete Reference
19
+
20
+ ```yaml
21
+ registers:
22
+ volatile: [RAX, RCX, RDX, R8, R9, R10, R11, XMM0-XMM5]
23
+ nonvolatile: [RBX, RBP, RDI, RSI, RSP, R12-R15, XMM6-XMM15]
24
+
25
+ arguments:
26
+ integer: [RCX, RDX, R8, R9] # Then stack
27
+ float: [XMM0, XMM1, XMM2, XMM3]
28
+
29
+ shadow_space: 32 # bytes, ALWAYS allocated by caller
30
+ stack_alignment: 16 # bytes, before CALL instruction
31
+
32
+ return:
33
+ integer: RAX # up to 64 bits
34
+ float: XMM0 # or ST(0) for x87
35
+ large: # >64 bits or non-trivial
36
+ caller_allocates_memory: true
37
+ address_in: RCX # shifts other args right
38
+ ```
39
+
40
+ ### SEH (Structured Exception Handling)
41
+
42
+ ```asm
43
+ ; Function with exception handling
44
+ MyFunction PROC FRAME
45
+ ; Prolog with unwind codes
46
+ push rbp
47
+ .pushreg rbp
48
+
49
+ mov rbp, rsp
50
+ .setframe rbp, 0
51
+
52
+ sub rsp, 32
53
+ .allocstack 32
54
+
55
+ .endprolog
56
+
57
+ ; Function body...
58
+
59
+ ; Epilog
60
+ add rsp, 32
61
+ pop rbp
62
+ ret
63
+ MyFunction ENDP
64
+ ```
65
+
66
+ ### Windows API Calling Example
67
+
68
+ ```asm
69
+ .data
70
+ caption db "Title", 0
71
+ message db "Hello from ASM!", 0
72
+
73
+ .code
74
+ externdef MessageBoxA:proc
75
+ externdef ExitProcess:proc
76
+
77
+ main PROC
78
+ sub rsp, 40 ; Shadow space + alignment
79
+
80
+ xor r9d, r9d ; uType = MB_OK
81
+ lea r8, caption ; lpCaption
82
+ lea rdx, message ; lpText
83
+ xor ecx, ecx ; hWnd = NULL
84
+ call MessageBoxA
85
+
86
+ xor ecx, ecx ; exit code
87
+ call ExitProcess
88
+ main ENDP
89
+
90
+ END
91
+ ```
92
+
93
+ ---
94
+
95
+ ## Linux System Programming
96
+
97
+ ### Syscall Table (x64) — Common Operations
98
+
99
+ ```asm
100
+ ; System call convention:
101
+ ; RAX = syscall number
102
+ ; Args: RDI, RSI, RDX, R10, R8, R9
103
+ ; Return: RAX (-errno on error)
104
+ ; Clobbered: RCX, R11
105
+
106
+ ; File operations
107
+ ; 0 = read(fd, buf, count)
108
+ ; 1 = write(fd, buf, count)
109
+ ; 2 = open(path, flags, mode)
110
+ ; 3 = close(fd)
111
+
112
+ ; Memory operations
113
+ ; 9 = mmap(addr, len, prot, flags, fd, off)
114
+ ; 11 = munmap(addr, len)
115
+ ; 12 = brk(addr)
116
+
117
+ ; Process operations
118
+ ; 57 = fork()
119
+ ; 59 = execve(path, argv, envp)
120
+ ; 60 = exit(status)
121
+ ; 62 = kill(pid, sig)
122
+
123
+ ; Socket operations
124
+ ; 41 = socket(domain, type, protocol)
125
+ ; 42 = connect(fd, addr, len)
126
+ ; 43 = accept(fd, addr, len)
127
+ ; 44 = sendto(fd, buf, len, flags, addr, len)
128
+ ; 45 = recvfrom(fd, buf, len, flags, addr, len)
129
+ ```
130
+
131
+ ### mmap Example — Executable Memory
132
+
133
+ ```asm
134
+ section .text
135
+ global allocate_executable
136
+
137
+ ; void* allocate_executable(size_t size)
138
+ allocate_executable:
139
+ push rbp
140
+ mov rbp, rsp
141
+
142
+ ; mmap(NULL, size, PROT_READ|PROT_WRITE|PROT_EXEC,
143
+ ; MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
144
+ mov rax, 9 ; sys_mmap
145
+ xor rdi, rdi ; addr = NULL
146
+ mov rsi, rdi ; size from arg (already in rsi)
147
+ mov rdx, 7 ; PROT_READ|PROT_WRITE|PROT_EXEC
148
+ mov r10, 0x22 ; MAP_PRIVATE|MAP_ANONYMOUS
149
+ mov r8, -1 ; fd = -1
150
+ xor r9, r9 ; offset = 0
151
+ syscall
152
+
153
+ pop rbp
154
+ ret
155
+ ```
156
+
157
+ ### Fork/Exec Pattern
158
+
159
+ ```asm
160
+ section .data
161
+ path db "/bin/sh", 0
162
+ argv dq path, 0
163
+
164
+ section .text
165
+ global spawn_shell
166
+
167
+ spawn_shell:
168
+ ; fork()
169
+ mov rax, 57
170
+ syscall
171
+
172
+ test rax, rax
173
+ jnz .parent ; Parent: rax = child PID
174
+
175
+ ; Child process
176
+ ; execve("/bin/sh", ["/bin/sh", NULL], NULL)
177
+ mov rax, 59
178
+ lea rdi, [rel path]
179
+ lea rsi, [rel argv]
180
+ xor rdx, rdx ; envp = NULL
181
+ syscall
182
+
183
+ ; execve doesn't return on success
184
+ mov rax, 60
185
+ xor rdi, rdi
186
+ syscall
187
+
188
+ .parent:
189
+ ; Parent continues here
190
+ ret
191
+ ```
192
+
193
+ ---
194
+
195
+ ## SIMD Advanced Patterns
196
+
197
+ ### AVX-512 Programming
198
+
199
+ ```asm
200
+ ; AVX-512 requires EVEX prefix
201
+ ; New features: masking, embedded broadcast, rounding control
202
+
203
+ section .data
204
+ align 64
205
+ vec_a: times 16 dd 1.0
206
+ vec_b: times 16 dd 2.0
207
+ result: times 16 dd 0.0
208
+
209
+ section .text
210
+ global avx512_add
211
+
212
+ ; void avx512_add(float* result, float* a, float* b)
213
+ avx512_add:
214
+ vmovaps zmm0, [rsi] ; Load 16 floats
215
+ vaddps zmm0, zmm0, [rdx] ; Add 16 floats
216
+ vmovaps [rdi], zmm0 ; Store result
217
+ ret
218
+
219
+ ; Masked operation
220
+ avx512_conditional_add:
221
+ ; k1 = mask register
222
+ vmovaps zmm0, [rsi]
223
+ vaddps zmm0 {k1}, zmm0, [rdx] ; Only add where mask bit = 1
224
+ vmovaps [rdi], zmm0
225
+ ret
226
+ ```
227
+
228
+ ### Horizontal Operations
229
+
230
+ ```asm
231
+ ; Sum all elements in YMM register (8 floats)
232
+ horizontal_sum_avx:
233
+ ; ymm0 = [a, b, c, d, e, f, g, h]
234
+ vextractf128 xmm1, ymm0, 1 ; xmm1 = [e, f, g, h]
235
+ vaddps xmm0, xmm0, xmm1 ; xmm0 = [a+e, b+f, c+g, d+h]
236
+ vhaddps xmm0, xmm0, xmm0 ; xmm0 = [a+e+b+f, c+g+d+h, ...]
237
+ vhaddps xmm0, xmm0, xmm0 ; xmm0 = [sum, ...]
238
+ ; Result in xmm0[0]
239
+ ret
240
+
241
+ ; Maximum element in YMM
242
+ horizontal_max_avx:
243
+ vextractf128 xmm1, ymm0, 1
244
+ vmaxps xmm0, xmm0, xmm1
245
+ vshufps xmm1, xmm0, xmm0, 0x0E ; Swap high/low pairs
246
+ vmaxps xmm0, xmm0, xmm1
247
+ vshufps xmm1, xmm0, xmm0, 0x01 ; Swap adjacent
248
+ vmaxps xmm0, xmm0, xmm1
249
+ ret
250
+ ```
251
+
252
+ ### String Operations with SSE4.2
253
+
254
+ ```asm
255
+ ; Fast strlen using PCMPISTRI
256
+ sse42_strlen:
257
+ mov rax, rdi
258
+ pxor xmm0, xmm0 ; Zero for comparison
259
+
260
+ .loop:
261
+ pcmpistri xmm0, [rax], 0x08 ; Find null terminator
262
+ jnz .not_found
263
+ add rax, rcx ; RCX = position of null
264
+ sub rax, rdi ; Calculate length
265
+ ret
266
+
267
+ .not_found:
268
+ add rax, 16
269
+ jmp .loop
270
+ ```
271
+
272
+ ---
273
+
274
+ ## Security & Exploit Development
275
+
276
+ ### Shellcode Writing
277
+
278
+ ```asm
279
+ ; Position-independent execve("/bin/sh")
280
+ ; Size: 27 bytes
281
+
282
+ bits 64
283
+
284
+ global _start
285
+
286
+ _start:
287
+ xor rsi, rsi ; argv = NULL
288
+ push rsi ; Push null terminator
289
+ mov rdi, 0x68732f2f6e69622f ; "/bin//sh" in little endian
290
+ push rdi
291
+ mov rdi, rsp ; rdi = pointer to "/bin//sh"
292
+ xor rdx, rdx ; envp = NULL
293
+ push 59 ; execve syscall number
294
+ pop rax
295
+ syscall
296
+ ```
297
+
298
+ ### Return-Oriented Programming (ROP) Gadgets
299
+
300
+ ```asm
301
+ ; Common useful gadgets
302
+ pop_rdi_ret:
303
+ pop rdi
304
+ ret
305
+
306
+ pop_rsi_ret:
307
+ pop rsi
308
+ ret
309
+
310
+ pop_rdx_ret:
311
+ pop rdx
312
+ ret
313
+
314
+ ; Stack pivot
315
+ xchg_rax_rsp_ret:
316
+ xchg rax, rsp
317
+ ret
318
+
319
+ ; Write-what-where
320
+ mov_ptr_rdi_rax_ret:
321
+ mov [rdi], rax
322
+ ret
323
+ ```
324
+
325
+ ### Anti-Analysis Techniques
326
+
327
+ ```asm
328
+ ; Timing-based anti-debug
329
+ check_debugger:
330
+ rdtsc
331
+ mov r8, rax ; Save first timestamp
332
+
333
+ ; Some operations
334
+ xor eax, eax
335
+ cpuid ; Serialize
336
+
337
+ rdtsc
338
+ sub rax, r8 ; Time difference
339
+
340
+ cmp rax, 1000 ; Threshold (adjust as needed)
341
+ ja .debugger_detected
342
+
343
+ xor eax, eax
344
+ ret
345
+
346
+ .debugger_detected:
347
+ mov eax, 1
348
+ ret
349
+ ```
350
+
351
+ ---
352
+
353
+ ## Performance Optimization
354
+
355
+ ### Cache-Friendly Data Access
356
+
357
+ ```asm
358
+ ; Prefetch for performance
359
+ prefetch_loop:
360
+ mov rcx, rdi ; data pointer
361
+ mov rdx, rsi ; count
362
+
363
+ .loop:
364
+ prefetcht0 [rcx + 256] ; Prefetch ahead
365
+
366
+ ; Process 64 bytes (cache line)
367
+ vmovaps ymm0, [rcx]
368
+ vmovaps ymm1, [rcx + 32]
369
+ ; ... processing ...
370
+ vmovaps [rcx], ymm0
371
+ vmovaps [rcx + 32], ymm1
372
+
373
+ add rcx, 64
374
+ sub rdx, 16 ; 16 floats per iteration
375
+ jnz .loop
376
+
377
+ ret
378
+ ```
379
+
380
+ ### Branch Prediction Hints
381
+
382
+ ```asm
383
+ ; Use cold/hot section hints
384
+ section .text.hot
385
+
386
+ hot_path:
387
+ cmp eax, 0
388
+ jne .unlikely ; Predict taken
389
+
390
+ ; Hot path code here
391
+ ret
392
+
393
+ section .text.cold
394
+ .unlikely:
395
+ ; Cold path code here
396
+ ret
397
+ ```
398
+
399
+ ### Memory Barrier Examples
400
+
401
+ ```asm
402
+ ; Full fence
403
+ full_barrier:
404
+ mfence
405
+ ret
406
+
407
+ ; Load fence
408
+ load_barrier:
409
+ lfence
410
+ ret
411
+
412
+ ; Store fence
413
+ store_barrier:
414
+ sfence
415
+ ret
416
+
417
+ ; Acquire semantics (load-acquire)
418
+ load_acquire:
419
+ mov rax, [rdi]
420
+ lfence ; Prevent loads from reordering after
421
+ ret
422
+
423
+ ; Release semantics (store-release)
424
+ store_release:
425
+ sfence ; Prevent stores from reordering before
426
+ mov [rdi], rsi
427
+ ret
428
+ ```
429
+
430
+ ---
431
+
432
+ ## Reverse Engineering Patterns
433
+
434
+ ### Common Compiler Patterns
435
+
436
+ ```asm
437
+ ; Switch-case jump table (optimized)
438
+ ; Usually generated for dense cases
439
+ switch_example:
440
+ cmp eax, 5 ; Check bounds
441
+ ja .default
442
+
443
+ lea rcx, [rel jump_table]
444
+ movsxd rax, dword [rcx + rax*4]
445
+ add rax, rcx
446
+ jmp rax
447
+
448
+ jump_table:
449
+ dd case_0 - jump_table
450
+ dd case_1 - jump_table
451
+ dd case_2 - jump_table
452
+ ; ...
453
+
454
+ ; C++ virtual call
455
+ ; mov rax, [rdi] ; Load vtable pointer
456
+ ; call [rax + 0x10] ; Call vtable[2]
457
+
458
+ ; Stack canary check
459
+ ; mov rax, fs:[0x28] ; Get canary from TLS
460
+ ; mov [rsp + N], rax ; Store on stack
461
+ ; ...function body...
462
+ ; xor rax, [rsp + N] ; Check canary
463
+ ; jne __stack_chk_fail
464
+ ```
465
+
466
+ ### Identifying Constructs
467
+
468
+ ```asm
469
+ ; Heap allocation pattern
470
+ ; call malloc
471
+ ; or
472
+ ; mov edi, size
473
+ ; call operator new
474
+ ; Result in rax
475
+
476
+ ; Object constructor call pattern
477
+ ; lea rdi, [rax] ; this pointer
478
+ ; call Constructor
479
+
480
+ ; Exception handling (C++)
481
+ ; Look for:
482
+ ; - _Unwind_Resume
483
+ ; - __cxa_throw
484
+ ; - landing pads in .eh_frame
485
+
486
+ ; std::string (libstdc++)
487
+ ; SSO: string data inline if len <= 15
488
+ ; Large: ptr to heap at offset 0
489
+ ```
490
+
491
+ ### Deobfuscation Hints
492
+
493
+ ```asm
494
+ ; Opaque predicate (always true)
495
+ ; mov eax, 5
496
+ ; imul eax, eax ; eax = 25
497
+ ; and eax, 1 ; LSB of 25 = 1
498
+ ; jnz .actual_code ; Always taken
499
+
500
+ ; Dead code after unconditional jump
501
+ ; jmp next
502
+ ; db 0xE8 ; Fake call opcode
503
+ ; next:
504
+
505
+ ; Anti-disassembly with overlapping instructions
506
+ ; Be aware of:
507
+ ; - Instruction misalignment
508
+ ; - Jump into middle of instruction
509
+ ```
510
+
511
+ ---
512
+
513
+ ## ARM64 Advanced Topics
514
+
515
+ ### SVE (Scalable Vector Extension)
516
+
517
+ ```asm
518
+ // SVE uses predicate registers (p0-p15)
519
+ // Vector length is implementation-defined (128-2048 bits)
520
+
521
+ sve_add:
522
+ whilelo p0.s, xzr, x2 // Create predicate mask
523
+ ld1w z0.s, p0/z, [x0] // Load with predicate
524
+ ld1w z1.s, p0/z, [x1] // Load with predicate
525
+ fadd z0.s, z0.s, z1.s // Vector add
526
+ st1w z0.s, p0, [x0] // Store with predicate
527
+ ret
528
+ ```
529
+
530
+ ### SVE2 (Scalable Vector Extension 2)
531
+
532
+ ```yaml
533
+ enhancements:
534
+ - Extended fixed-point DSP instructions
535
+ - Bit manipulation and permutations
536
+ - Cryptographic acceleration
537
+ - Complex number operations
538
+
539
+ platforms:
540
+ Graviton 3: SVE (256-bit)
541
+ Graviton 4: SVE2 (256-bit)
542
+ Neoverse V3: SVE2 (Armv9.2-A)
543
+
544
+ intrinsics:
545
+ header: <arm_sve.h>
546
+ prefix: sv* (e.g., svadd_f32_m)
547
+ ```
548
+
549
+ ### SVE2 Intrinsics Example
550
+
551
+ ```c
552
+ #include <arm_sve.h>
553
+
554
+ // Vector length agnostic addition
555
+ void sve2_vector_add(float* a, float* b, float* c, size_t n) {
556
+ svbool_t pg = svptrue_b32();
557
+ for (size_t i = 0; i < n; i += svcntw()) {
558
+ pg = svwhilelt_b32(i, n);
559
+ svfloat32_t va = svld1_f32(pg, &a[i]);
560
+ svfloat32_t vb = svld1_f32(pg, &b[i]);
561
+ svfloat32_t vc = svadd_f32_m(pg, va, vb);
562
+ svst1_f32(pg, &c[i], vc);
563
+ }
564
+ }
565
+ ```
566
+
567
+ ### Apple Silicon Specifics
568
+
569
+ ```asm
570
+ // Apple M-series uses custom calling convention
571
+ // x18 is reserved for OS
572
+ // Thread-local storage via tpidrro_el0
573
+
574
+ apple_tls_access:
575
+ mrs x0, tpidrro_el0 // Read TLS base
576
+ ldr x0, [x0, #OFFSET] // Load TLS variable
577
+ ret
578
+ ```
579
+
580
+ ---
581
+
582
+ ## x86 Protected Mode Switching
583
+
584
+ ### Real Mode → Protected Mode
585
+
586
+ ```asm
587
+ ; Switch from 16-bit real mode to 32-bit protected mode
588
+ bits 16
589
+ switch_to_pm:
590
+ cli ; Disable interrupts
591
+ lgdt [gdt_descriptor] ; Load GDT
592
+
593
+ mov eax, cr0
594
+ or eax, 1 ; Set PE bit
595
+ mov cr0, eax
596
+
597
+ jmp CODE_SEG:pm_start ; Far jump to flush pipeline
598
+
599
+ bits 32
600
+ pm_start:
601
+ mov ax, DATA_SEG
602
+ mov ds, ax
603
+ mov ss, ax
604
+ mov es, ax
605
+ mov fs, ax
606
+ mov gs, ax
607
+ ; Now in protected mode
608
+ ```
609
+
610
+ ### GDT Structure
611
+
612
+ ```asm
613
+ gdt_start:
614
+ gdt_null:
615
+ dq 0x0 ; Null descriptor
616
+
617
+ gdt_code:
618
+ dw 0xFFFF ; Limit (0-15)
619
+ dw 0x0000 ; Base (0-15)
620
+ db 0x00 ; Base (16-23)
621
+ db 10011010b ; Access: P,DPL=0,S=1,E=1,DC=0,RW=1,A=0
622
+ db 11001111b ; Flags + Limit (16-19)
623
+ db 0x00 ; Base (24-31)
624
+
625
+ gdt_data:
626
+ dw 0xFFFF
627
+ dw 0x0000
628
+ db 0x00
629
+ db 10010010b ; Access: P,DPL=0,S=1,E=0,DC=0,RW=1,A=0
630
+ db 11001111b
631
+ db 0x00
632
+
633
+ gdt_end:
634
+
635
+ gdt_descriptor:
636
+ dw gdt_end - gdt_start - 1
637
+ dd gdt_start
638
+ ```
639
+
640
+ ---
641
+
642
+ ## RISC-V Advanced Patterns
643
+
644
+ ### Atomic Operations
645
+
646
+ ```asm
647
+ # Load-Reserved / Store-Conditional
648
+ atomic_add:
649
+ lr.w a2, (a0) # Load-reserved word
650
+ add a2, a2, a1 # Add value
651
+ sc.w a3, a2, (a0) # Store-conditional
652
+ bnez a3, atomic_add # Retry if failed
653
+ ret
654
+ ```
655
+
656
+ ### Vector Extension (RVV)
657
+
658
+ ```asm
659
+ # RISC-V Vector (RVV) example
660
+ vector_add:
661
+ vsetvli t0, a2, e32, m1 # Set vector length
662
+ loop:
663
+ vle32.v v0, (a0) # Load vector from a
664
+ vle32.v v1, (a1) # Load vector from b
665
+ vadd.vv v2, v0, v1 # Vector add
666
+ vse32.v v2, (a0) # Store result
667
+ add a0, a0, t0 # Advance pointer
668
+ add a1, a1, t0
669
+ sub a2, a2, t0 # Decrement count
670
+ bnez a2, loop
671
+ ret
672
+ ```
673
+
674
+ ---
675
+
676
+ ## Ghidra & IDA Pro (2025 Updates)
677
+
678
+ ### Ghidra 11+
679
+
680
+ ```yaml
681
+ features:
682
+ - Multi-binary analysis (parallel)
683
+ - Python 3 + Java scripting
684
+ - Decompiler improvements
685
+ - AI-assisted analysis (plugins)
686
+
687
+ scripting:
688
+ language: Python (Jython) or Java
689
+ location: Window → Script Manager
690
+ ```
691
+
692
+ ### IDA Pro 9.0
693
+
694
+ ```yaml
695
+ features:
696
+ - Unified 32/64-bit support
697
+ - Improved decompiler accuracy
698
+ - Headless IDAPython
699
+ - Cloud-based collaboration
700
+
701
+ new_in_9:
702
+ - Faster analysis engine
703
+ - Enhanced type recovery
704
+ - Better C++ vtable handling
705
+ ```
706
+
707
+ ### AI-Assisted Reverse Engineering
708
+
709
+ ```yaml
710
+ tools:
711
+ DecompAI: "LLM-based function naming/commenting"
712
+ MCP Plugins: "Model Context Protocol for IDA/Ghidra"
713
+ BinDiff: "Binary comparison and diffing"
714
+
715
+ workflow: 1. Initial analysis in Ghidra (free)
716
+ 2. Complex binaries in IDA Pro
717
+ 3. AI plugins for naming/documentation
718
+ 4. Cross-reference with debug symbols
719
+ ```
720
+
721
+ ---
722
+
723
+ ## DOS Interrupt Reference
724
+
725
+ ### Common DOS Interrupts (INT 21h)
726
+
727
+ | AH | Function | Input | Output |
728
+ | --- | ------------- | ------------- | --------- |
729
+ | 01h | Char input | - | AL=char |
730
+ | 02h | Char output | DL=char | - |
731
+ | 09h | String output | DX=addr$ | - |
732
+ | 3Ch | Create file | CX=attr,DX=fn | AX=handle |
733
+ | 3Dh | Open file | AL=mode,DX=fn | AX=handle |
734
+ | 3Eh | Close file | BX=handle | - |
735
+ | 3Fh | Read file | BX,CX,DX | AX=bytes |
736
+ | 40h | Write file | BX,CX,DX | AX=bytes |
737
+ | 4Ch | Exit program | AL=code | - |
738
+
739
+ ### BIOS Interrupts
740
+
741
+ | Int | Function | Example |
742
+ | --- | ----------------- | ---------------------- |
743
+ | 10h | Video services | Set mode, write char |
744
+ | 13h | Disk services | Read/write sectors |
745
+ | 16h | Keyboard services | Read key, check status |
746
+ | 19h | Bootstrap | Reboot system |
747
+
748
+ ---
749
+
750
+ _DOMYH Awesome Code — Advanced Assembly Reference_