@ngxtm/devkit 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 (4096) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +180 -0
  3. package/agents/backend-engineer.md +154 -0
  4. package/agents/brainstormer.md +169 -0
  5. package/agents/business-analyst.md +166 -0
  6. package/agents/database-architect.md +159 -0
  7. package/agents/debugger.md +155 -0
  8. package/agents/designer.md +150 -0
  9. package/agents/devops-engineer.md +155 -0
  10. package/agents/docs-manager.md +171 -0
  11. package/agents/frontend-engineer.md +159 -0
  12. package/agents/game-engineer.md +148 -0
  13. package/agents/mobile-engineer.md +149 -0
  14. package/agents/performance-engineer.md +152 -0
  15. package/agents/planner.md +161 -0
  16. package/agents/project-manager.md +160 -0
  17. package/agents/researcher.md +146 -0
  18. package/agents/reviewer.md +155 -0
  19. package/agents/scouter.md +157 -0
  20. package/agents/security-engineer.md +154 -0
  21. package/agents/tech-lead.md +159 -0
  22. package/agents/tester.md +157 -0
  23. package/agents-claudekit/brainstormer.md +113 -0
  24. package/agents-claudekit/code-reviewer.md +157 -0
  25. package/agents-claudekit/code-simplifier.md +42 -0
  26. package/agents-claudekit/copywriter.md +110 -0
  27. package/agents-claudekit/database-admin.md +92 -0
  28. package/agents-claudekit/debugger.md +137 -0
  29. package/agents-claudekit/docs-manager.md +208 -0
  30. package/agents-claudekit/fullstack-developer.md +95 -0
  31. package/agents-claudekit/git-manager.md +394 -0
  32. package/agents-claudekit/journal-writer.md +113 -0
  33. package/agents-claudekit/mcp-manager.md +93 -0
  34. package/agents-claudekit/planner.md +108 -0
  35. package/agents-claudekit/project-manager.md +125 -0
  36. package/agents-claudekit/researcher.md +38 -0
  37. package/agents-claudekit/scout-external.md +141 -0
  38. package/agents-claudekit/scout.md +107 -0
  39. package/agents-claudekit/tester.md +105 -0
  40. package/agents-claudekit/ui-ux-designer.md +236 -0
  41. package/cli/index.js +76 -0
  42. package/cli/install.js +274 -0
  43. package/commands/ask/fast.md +119 -0
  44. package/commands/ask/hard.md +161 -0
  45. package/commands/ask.md +64 -0
  46. package/commands/auto.md +111 -0
  47. package/commands/brainstorm/fast.md +166 -0
  48. package/commands/brainstorm/hard.md +195 -0
  49. package/commands/brainstorm.md +64 -0
  50. package/commands/code/fast.md +166 -0
  51. package/commands/code/hard.md +330 -0
  52. package/commands/code.md +64 -0
  53. package/commands/cook/fast.md +103 -0
  54. package/commands/cook/hard.md +202 -0
  55. package/commands/cook.md +64 -0
  56. package/commands/debug/fast.md +65 -0
  57. package/commands/debug/hard.md +96 -0
  58. package/commands/debug.md +64 -0
  59. package/commands/deploy/check.md +150 -0
  60. package/commands/deploy/preview.md +125 -0
  61. package/commands/deploy/production.md +160 -0
  62. package/commands/deploy/rollback.md +149 -0
  63. package/commands/deploy.md +71 -0
  64. package/commands/design/fast.md +134 -0
  65. package/commands/design/hard.md +209 -0
  66. package/commands/design.md +64 -0
  67. package/commands/docs/audit.md +167 -0
  68. package/commands/docs/business.md +167 -0
  69. package/commands/docs/core.md +161 -0
  70. package/commands/docs.md +178 -0
  71. package/commands/fix/fast.md +84 -0
  72. package/commands/fix/hard.md +116 -0
  73. package/commands/fix.md +64 -0
  74. package/commands/plan/fast.md +78 -0
  75. package/commands/plan/hard.md +131 -0
  76. package/commands/plan.md +64 -0
  77. package/commands/review/fast.md +65 -0
  78. package/commands/review/hard.md +96 -0
  79. package/commands/review.md +64 -0
  80. package/commands/test/fast.md +75 -0
  81. package/commands/test/hard.md +108 -0
  82. package/commands/test.md +64 -0
  83. package/commands-claudekit/ask.md +56 -0
  84. package/commands-claudekit/bootstrap/auto/fast.md +111 -0
  85. package/commands-claudekit/bootstrap/auto/parallel.md +66 -0
  86. package/commands-claudekit/bootstrap/auto.md +115 -0
  87. package/commands-claudekit/bootstrap.md +137 -0
  88. package/commands-claudekit/brainstorm.md +12 -0
  89. package/commands-claudekit/ck-help.md +129 -0
  90. package/commands-claudekit/code/auto.md +203 -0
  91. package/commands-claudekit/code/no-test.md +174 -0
  92. package/commands-claudekit/code/parallel.md +100 -0
  93. package/commands-claudekit/code.md +205 -0
  94. package/commands-claudekit/coding-level.md +48 -0
  95. package/commands-claudekit/content/cro.md +43 -0
  96. package/commands-claudekit/content/enhance.md +14 -0
  97. package/commands-claudekit/content/fast.md +13 -0
  98. package/commands-claudekit/content/good.md +16 -0
  99. package/commands-claudekit/cook/auto/fast.md +26 -0
  100. package/commands-claudekit/cook/auto/parallel.md +49 -0
  101. package/commands-claudekit/cook/auto.md +15 -0
  102. package/commands-claudekit/cook.md +105 -0
  103. package/commands-claudekit/debug.md +13 -0
  104. package/commands-claudekit/design/3d.md +83 -0
  105. package/commands-claudekit/design/describe.md +23 -0
  106. package/commands-claudekit/design/fast.md +31 -0
  107. package/commands-claudekit/design/good.md +35 -0
  108. package/commands-claudekit/design/screenshot.md +34 -0
  109. package/commands-claudekit/design/video.md +34 -0
  110. package/commands-claudekit/docs/init.md +40 -0
  111. package/commands-claudekit/docs/summarize.md +22 -0
  112. package/commands-claudekit/docs/update.md +78 -0
  113. package/commands-claudekit/fix/ci.md +17 -0
  114. package/commands-claudekit/fix/fast.md +19 -0
  115. package/commands-claudekit/fix/hard.md +39 -0
  116. package/commands-claudekit/fix/logs.md +26 -0
  117. package/commands-claudekit/fix/parallel.md +54 -0
  118. package/commands-claudekit/fix/test.md +20 -0
  119. package/commands-claudekit/fix/types.md +9 -0
  120. package/commands-claudekit/fix/ui.md +48 -0
  121. package/commands-claudekit/fix.md +43 -0
  122. package/commands-claudekit/git/cm.md +9 -0
  123. package/commands-claudekit/git/cp.md +9 -0
  124. package/commands-claudekit/git/merge.md +42 -0
  125. package/commands-claudekit/git/pr.md +52 -0
  126. package/commands-claudekit/integrate/polar.md +28 -0
  127. package/commands-claudekit/integrate/sepay.md +28 -0
  128. package/commands-claudekit/journal.md +7 -0
  129. package/commands-claudekit/kanban.md +99 -0
  130. package/commands-claudekit/plan/archive.md +57 -0
  131. package/commands-claudekit/plan/ci.md +33 -0
  132. package/commands-claudekit/plan/cro.md +69 -0
  133. package/commands-claudekit/plan/fast.md +66 -0
  134. package/commands-claudekit/plan/hard.md +92 -0
  135. package/commands-claudekit/plan/parallel.md +129 -0
  136. package/commands-claudekit/plan/two.md +45 -0
  137. package/commands-claudekit/plan/validate.md +117 -0
  138. package/commands-claudekit/plan.md +30 -0
  139. package/commands-claudekit/preview.md +85 -0
  140. package/commands-claudekit/review/codebase/parallel.md +122 -0
  141. package/commands-claudekit/review/codebase.md +49 -0
  142. package/commands-claudekit/scout/ext.md +35 -0
  143. package/commands-claudekit/scout.md +28 -0
  144. package/commands-claudekit/skill/add.md +36 -0
  145. package/commands-claudekit/skill/create.md +29 -0
  146. package/commands-claudekit/skill/fix-logs.md +22 -0
  147. package/commands-claudekit/skill/optimize/auto.md +25 -0
  148. package/commands-claudekit/skill/optimize.md +34 -0
  149. package/commands-claudekit/skill/plan.md +45 -0
  150. package/commands-claudekit/skill/update.md +36 -0
  151. package/commands-claudekit/test/ui.md +92 -0
  152. package/commands-claudekit/test.md +8 -0
  153. package/commands-claudekit/use-mcp.md +34 -0
  154. package/commands-claudekit/watzup.md +8 -0
  155. package/commands-claudekit/worktree.md +138 -0
  156. package/hooks/__tests__/ck-config-utils.test.cjs +557 -0
  157. package/hooks/__tests__/dev-rules-reminder.test.cjs +336 -0
  158. package/hooks/__tests__/integration/path-resolution.test.cjs +319 -0
  159. package/hooks/__tests__/privacy-block.test.cjs +273 -0
  160. package/hooks/__tests__/session-init.test.cjs +308 -0
  161. package/hooks/__tests__/subagent-init.test.cjs +622 -0
  162. package/hooks/dev-rules-reminder.cjs +52 -0
  163. package/hooks/docs/README.md +179 -0
  164. package/hooks/lib/__tests__/README.md +240 -0
  165. package/hooks/lib/__tests__/ck-config-utils.test.cjs +781 -0
  166. package/hooks/lib/__tests__/context-builder.test.cjs +373 -0
  167. package/hooks/lib/__tests__/statusline-integration.test.cjs +678 -0
  168. package/hooks/lib/__tests__/statusline.test.cjs +689 -0
  169. package/hooks/lib/ck-config-utils.cjs +769 -0
  170. package/hooks/lib/ck-paths.cjs +110 -0
  171. package/hooks/lib/colors.cjs +95 -0
  172. package/hooks/lib/config-counter.cjs +103 -0
  173. package/hooks/lib/context-builder.cjs +600 -0
  174. package/hooks/lib/context-tracker.cjs +335 -0
  175. package/hooks/lib/privacy-checker.cjs +297 -0
  176. package/hooks/lib/project-detector.cjs +430 -0
  177. package/hooks/lib/scout-checker.cjs +172 -0
  178. package/hooks/lib/transcript-parser.cjs +164 -0
  179. package/hooks/notifications/.env.example +21 -0
  180. package/hooks/notifications/discord_notify.sh +234 -0
  181. package/hooks/notifications/docs/discord-hook-setup.md +461 -0
  182. package/hooks/notifications/docs/slack-hook-setup.md +118 -0
  183. package/hooks/notifications/docs/telegram-hook-setup.md +813 -0
  184. package/hooks/notifications/lib/env-loader.cjs +105 -0
  185. package/hooks/notifications/lib/sender.cjs +128 -0
  186. package/hooks/notifications/notify.cjs +156 -0
  187. package/hooks/notifications/providers/discord.cjs +197 -0
  188. package/hooks/notifications/providers/slack.cjs +111 -0
  189. package/hooks/notifications/providers/telegram.cjs +109 -0
  190. package/hooks/notifications/send-discord.sh +75 -0
  191. package/hooks/notifications/telegram_notify.sh +137 -0
  192. package/hooks/post-edit-simplify-reminder.cjs +132 -0
  193. package/hooks/privacy-block.cjs +145 -0
  194. package/hooks/scout-block/broad-pattern-detector.cjs +266 -0
  195. package/hooks/scout-block/error-formatter.cjs +156 -0
  196. package/hooks/scout-block/path-extractor.cjs +238 -0
  197. package/hooks/scout-block/pattern-matcher.cjs +184 -0
  198. package/hooks/scout-block/tests/test-broad-pattern-detector.cjs +225 -0
  199. package/hooks/scout-block/tests/test-broad-pattern-detector.js +225 -0
  200. package/hooks/scout-block/tests/test-build-command-allowlist.cjs +137 -0
  201. package/hooks/scout-block/tests/test-build-command-allowlist.js +137 -0
  202. package/hooks/scout-block/tests/test-error-formatter.cjs +109 -0
  203. package/hooks/scout-block/tests/test-error-formatter.js +109 -0
  204. package/hooks/scout-block/tests/test-full-flow-edge-cases.cjs +75 -0
  205. package/hooks/scout-block/tests/test-full-flow-edge-cases.js +75 -0
  206. package/hooks/scout-block/tests/test-monorepo-scenarios.cjs +225 -0
  207. package/hooks/scout-block/tests/test-monorepo-scenarios.js +225 -0
  208. package/hooks/scout-block/tests/test-path-extractor.cjs +138 -0
  209. package/hooks/scout-block/tests/test-path-extractor.js +138 -0
  210. package/hooks/scout-block/tests/test-pattern-matcher.cjs +64 -0
  211. package/hooks/scout-block/tests/test-pattern-matcher.js +64 -0
  212. package/hooks/scout-block/vendor/ignore.cjs +627 -0
  213. package/hooks/scout-block/vendor/ignore.js +627 -0
  214. package/hooks/scout-block.cjs +117 -0
  215. package/hooks/session-end.cjs +35 -0
  216. package/hooks/session-init.cjs +201 -0
  217. package/hooks/subagent-init.cjs +167 -0
  218. package/hooks/tests/test-ckignore.cjs +194 -0
  219. package/hooks/tests/test-ckignore.js +194 -0
  220. package/hooks/tests/test-context-tracker.cjs +454 -0
  221. package/hooks/tests/test-modularization-hook.cjs +126 -0
  222. package/hooks/tests/test-modularization-hook.js +126 -0
  223. package/hooks/tests/test-privacy-block.cjs +298 -0
  224. package/hooks/tests/test-privacy-block.js +298 -0
  225. package/hooks/tests/test-scout-block.cjs +229 -0
  226. package/hooks/tests/test-scout-block.js +229 -0
  227. package/hooks/usage-context-awareness.cjs +146 -0
  228. package/hooks/write-compact-marker.cjs +159 -0
  229. package/matrix-skills/_index.yaml +275 -0
  230. package/matrix-skills/ai-ml.yaml +353 -0
  231. package/matrix-skills/architecture.yaml +93 -0
  232. package/matrix-skills/backend.yaml +280 -0
  233. package/matrix-skills/cloud.yaml +112 -0
  234. package/matrix-skills/data.yaml +74 -0
  235. package/matrix-skills/design.yaml +98 -0
  236. package/matrix-skills/devops.yaml +200 -0
  237. package/matrix-skills/frontend.yaml +200 -0
  238. package/matrix-skills/gaming.yaml +39 -0
  239. package/matrix-skills/languages.yaml +160 -0
  240. package/matrix-skills/management.yaml +50 -0
  241. package/matrix-skills/mcp.yaml +82 -0
  242. package/matrix-skills/mobile.yaml +85 -0
  243. package/matrix-skills/performance.yaml +23 -0
  244. package/matrix-skills/planning.yaml +117 -0
  245. package/matrix-skills/quality.yaml +195 -0
  246. package/matrix-skills/research.yaml +106 -0
  247. package/matrix-skills/security.yaml +293 -0
  248. package/matrix-skills/tools.yaml +352 -0
  249. package/output-styles/coding-level-0-eli5.md +103 -0
  250. package/output-styles/coding-level-1-junior.md +124 -0
  251. package/output-styles/coding-level-2-mid.md +146 -0
  252. package/output-styles/coding-level-3-senior.md +148 -0
  253. package/output-styles/coding-level-4-lead.md +159 -0
  254. package/output-styles/coding-level-5-god.md +91 -0
  255. package/package.json +87 -0
  256. package/rules/README.md +141 -0
  257. package/rules/dart/best-practices/SKILL.md +23 -0
  258. package/rules/dart/language/SKILL.md +52 -0
  259. package/rules/dart/tooling/SKILL.md +43 -0
  260. package/rules/flutter/auto-route-navigation/SKILL.md +43 -0
  261. package/rules/flutter/auto-route-navigation/references/REFERENCE.md +19 -0
  262. package/rules/flutter/auto-route-navigation/references/router-config.md +62 -0
  263. package/rules/flutter/bloc-state-management/SKILL.md +64 -0
  264. package/rules/flutter/bloc-state-management/references/REFERENCE.md +20 -0
  265. package/rules/flutter/bloc-state-management/references/auth-bloc-example.md +52 -0
  266. package/rules/flutter/bloc-state-management/references/equatable-usage.md +56 -0
  267. package/rules/flutter/bloc-state-management/references/property-based-state.md +68 -0
  268. package/rules/flutter/bloc.rule.md +76 -0
  269. package/rules/flutter/cicd/SKILL.md +48 -0
  270. package/rules/flutter/cicd/references/advanced-workflow.md +66 -0
  271. package/rules/flutter/cicd/references/fastlane.md +139 -0
  272. package/rules/flutter/cicd/references/github-actions.md +59 -0
  273. package/rules/flutter/dependency-injection/SKILL.md +42 -0
  274. package/rules/flutter/dependency-injection/references/REFERENCE.md +15 -0
  275. package/rules/flutter/dependency-injection/references/modules.md +37 -0
  276. package/rules/flutter/error-handling/SKILL.md +32 -0
  277. package/rules/flutter/error-handling/references/REFERENCE.md +19 -0
  278. package/rules/flutter/error-handling/references/error-mapping.md +31 -0
  279. package/rules/flutter/feature-based-clean-architecture/SKILL.md +46 -0
  280. package/rules/flutter/feature-based-clean-architecture/references/REFERENCE.md +14 -0
  281. package/rules/flutter/feature-based-clean-architecture/references/folder-structure.md +36 -0
  282. package/rules/flutter/getx-navigation/SKILL.md +70 -0
  283. package/rules/flutter/getx-navigation/references/app-pages.md +40 -0
  284. package/rules/flutter/getx-navigation/references/middleware-example.md +29 -0
  285. package/rules/flutter/getx-state-management/SKILL.md +76 -0
  286. package/rules/flutter/getx-state-management/references/binding-example.md +32 -0
  287. package/rules/flutter/getx-state-management/references/reactive-vs-simple.md +39 -0
  288. package/rules/flutter/go-router-navigation/SKILL.md +57 -0
  289. package/rules/flutter/idiomatic-flutter/SKILL.md +20 -0
  290. package/rules/flutter/layer-based-clean-architecture/SKILL.md +50 -0
  291. package/rules/flutter/layer-based-clean-architecture/references/REFERENCE.md +60 -0
  292. package/rules/flutter/layer-based-clean-architecture/references/repository-mapping.md +50 -0
  293. package/rules/flutter/localization/SKILL.md +50 -0
  294. package/rules/flutter/localization/references/REFERENCE.md +48 -0
  295. package/rules/flutter/localization/references/sheet-loader.md +33 -0
  296. package/rules/flutter/navigator-v1-navigation/SKILL.md +71 -0
  297. package/rules/flutter/navigator-v1-navigation/references/on-generate-route.md +48 -0
  298. package/rules/flutter/performance/SKILL.md +24 -0
  299. package/rules/flutter/retrofit-networking/SKILL.md +51 -0
  300. package/rules/flutter/retrofit-networking/references/REFERENCE.md +19 -0
  301. package/rules/flutter/retrofit-networking/references/token-refresh.md +40 -0
  302. package/rules/flutter/riverpod-state-management/SKILL.md +53 -0
  303. package/rules/flutter/riverpod-state-management/references/architecture.md +124 -0
  304. package/rules/flutter/riverpod-state-management/references/best-practices.md +89 -0
  305. package/rules/flutter/riverpod-state-management/references/testing.md +73 -0
  306. package/rules/flutter/riverpod.rule.md +78 -0
  307. package/rules/flutter/security/SKILL.md +33 -0
  308. package/rules/flutter/security/references/REFERENCE.md +15 -0
  309. package/rules/flutter/security/references/network-security.md +28 -0
  310. package/rules/flutter/testing/SKILL.md +44 -0
  311. package/rules/flutter/testing/references/REFERENCE.md +21 -0
  312. package/rules/flutter/testing/references/bloc-testing.md +38 -0
  313. package/rules/flutter/testing/references/integration-testing.md +128 -0
  314. package/rules/flutter/testing/references/robot-pattern.md +82 -0
  315. package/rules/flutter/testing/references/unit-testing.md +130 -0
  316. package/rules/flutter/testing/references/widget-testing.md +120 -0
  317. package/rules/flutter/widgets/SKILL.md +37 -0
  318. package/rules/golang/chi-router/SKILL.md +219 -0
  319. package/rules/golang/chi-router/references/REFERENCE.md +13 -0
  320. package/rules/golang/chi-router/references/routing-patterns.md +205 -0
  321. package/rules/golang/cobra-cli/SKILL.md +227 -0
  322. package/rules/golang/cobra-cli/references/REFERENCE.md +13 -0
  323. package/rules/golang/cobra-cli/references/command-patterns.md +224 -0
  324. package/rules/golang/core/SKILL.md +210 -0
  325. package/rules/golang/core/references/REFERENCE.md +14 -0
  326. package/rules/golang/core/references/concurrency-patterns.md +114 -0
  327. package/rules/golang/core/references/error-handling.md +87 -0
  328. package/rules/golang/echo-framework/SKILL.md +215 -0
  329. package/rules/golang/echo-framework/references/REFERENCE.md +14 -0
  330. package/rules/golang/echo-framework/references/middleware-patterns.md +141 -0
  331. package/rules/golang/echo-framework/references/routing-patterns.md +140 -0
  332. package/rules/golang/ent-orm/SKILL.md +239 -0
  333. package/rules/golang/ent-orm/references/REFERENCE.md +13 -0
  334. package/rules/golang/ent-orm/references/schema-patterns.md +255 -0
  335. package/rules/golang/fiber-framework/SKILL.md +196 -0
  336. package/rules/golang/fiber-framework/references/REFERENCE.md +13 -0
  337. package/rules/golang/fiber-framework/references/routing-patterns.md +191 -0
  338. package/rules/golang/gin-framework/SKILL.md +205 -0
  339. package/rules/golang/gin-framework/references/REFERENCE.md +14 -0
  340. package/rules/golang/gin-framework/references/middleware-patterns.md +119 -0
  341. package/rules/golang/gorm-orm/SKILL.md +196 -0
  342. package/rules/golang/gorm-orm/references/REFERENCE.md +14 -0
  343. package/rules/golang/gorm-orm/references/model-definitions.md +167 -0
  344. package/rules/golang/gorm-orm/references/query-patterns.md +161 -0
  345. package/rules/golang/grpc/SKILL.md +231 -0
  346. package/rules/golang/grpc/references/REFERENCE.md +13 -0
  347. package/rules/golang/grpc/references/service-patterns.md +276 -0
  348. package/rules/golang/testify/SKILL.md +239 -0
  349. package/rules/golang/testify/references/REFERENCE.md +13 -0
  350. package/rules/golang/testify/references/assert-patterns.md +170 -0
  351. package/rules/golang/validator/SKILL.md +234 -0
  352. package/rules/golang/validator/references/REFERENCE.md +13 -0
  353. package/rules/golang/validator/references/validation-tags.md +211 -0
  354. package/rules/golang/viper-config/SKILL.md +244 -0
  355. package/rules/golang/viper-config/references/REFERENCE.md +13 -0
  356. package/rules/golang/viper-config/references/config-loading.md +181 -0
  357. package/rules/golang/wire-di/SKILL.md +243 -0
  358. package/rules/golang/wire-di/references/REFERENCE.md +13 -0
  359. package/rules/golang/wire-di/references/provider-patterns.md +193 -0
  360. package/rules/golang/zap-logging/SKILL.md +203 -0
  361. package/rules/golang/zap-logging/references/REFERENCE.md +13 -0
  362. package/rules/golang/zap-logging/references/logger-config.md +165 -0
  363. package/rules/java/build-gradle/SKILL.md +92 -0
  364. package/rules/java/build-gradle/references/REFERENCE.md +14 -0
  365. package/rules/java/build-gradle/references/kotlin-dsl.md +118 -0
  366. package/rules/java/build-gradle/references/task-configuration.md +132 -0
  367. package/rules/java/build-maven/SKILL.md +86 -0
  368. package/rules/java/build-maven/references/REFERENCE.md +14 -0
  369. package/rules/java/build-maven/references/dependency-management.md +111 -0
  370. package/rules/java/build-maven/references/lifecycle-phases.md +114 -0
  371. package/rules/java/graalvm-native/SKILL.md +105 -0
  372. package/rules/java/graalvm-native/references/REFERENCE.md +12 -0
  373. package/rules/java/java-collections-streams/SKILL.md +148 -0
  374. package/rules/java/java-collections-streams/references/REFERENCE.md +15 -0
  375. package/rules/java/java-collections-streams/references/collectors-patterns.md +178 -0
  376. package/rules/java/java-collections-streams/references/stream-pipelines.md +165 -0
  377. package/rules/java/java-concurrency/SKILL.md +187 -0
  378. package/rules/java/java-concurrency/references/REFERENCE.md +17 -0
  379. package/rules/java/java-concurrency/references/completable-future.md +165 -0
  380. package/rules/java/java-concurrency/references/executor-patterns.md +176 -0
  381. package/rules/java/java-concurrency/references/virtual-threads.md +190 -0
  382. package/rules/java/java-core-language/SKILL.md +121 -0
  383. package/rules/java/java-core-language/references/REFERENCE.md +15 -0
  384. package/rules/java/java-core-language/references/jvm-memory-model.md +160 -0
  385. package/rules/java/java-core-language/references/modern-java-features.md +168 -0
  386. package/rules/java/java-project-structure/SKILL.md +195 -0
  387. package/rules/java/java-project-structure/references/REFERENCE.md +15 -0
  388. package/rules/java/java-project-structure/references/maven-project-layout.md +199 -0
  389. package/rules/java/java-project-structure/references/module-system.md +159 -0
  390. package/rules/java/micronaut-core/SKILL.md +99 -0
  391. package/rules/java/micronaut-core/references/REFERENCE.md +12 -0
  392. package/rules/java/micronaut-reactive/SKILL.md +68 -0
  393. package/rules/java/micronaut-reactive/references/REFERENCE.md +12 -0
  394. package/rules/java/quarkus-core/SKILL.md +85 -0
  395. package/rules/java/quarkus-core/references/REFERENCE.md +12 -0
  396. package/rules/java/quarkus-reactive/SKILL.md +67 -0
  397. package/rules/java/quarkus-reactive/references/REFERENCE.md +12 -0
  398. package/rules/java/spring-batch/SKILL.md +102 -0
  399. package/rules/java/spring-batch/references/REFERENCE.md +12 -0
  400. package/rules/java/spring-boot-architecture/SKILL.md +206 -0
  401. package/rules/java/spring-boot-architecture/references/REFERENCE.md +15 -0
  402. package/rules/java/spring-boot-architecture/references/auto-configuration.md +158 -0
  403. package/rules/java/spring-boot-architecture/references/configuration-properties.md +202 -0
  404. package/rules/java/spring-boot-web/SKILL.md +217 -0
  405. package/rules/java/spring-boot-web/references/REFERENCE.md +17 -0
  406. package/rules/java/spring-cloud/SKILL.md +109 -0
  407. package/rules/java/spring-cloud/references/REFERENCE.md +13 -0
  408. package/rules/java/spring-data-jpa/SKILL.md +241 -0
  409. package/rules/java/spring-data-jpa/references/REFERENCE.md +16 -0
  410. package/rules/java/spring-security/SKILL.md +161 -0
  411. package/rules/java/spring-security/references/REFERENCE.md +16 -0
  412. package/rules/java/spring-security/references/jwt-auth-flow.md +213 -0
  413. package/rules/java/testing-junit-mockito/SKILL.md +135 -0
  414. package/rules/java/testing-junit-mockito/references/REFERENCE.md +15 -0
  415. package/rules/java/testing-junit-mockito/references/junit5-patterns.md +159 -0
  416. package/rules/java/testing-junit-mockito/references/mockito-patterns.md +148 -0
  417. package/rules/java/testing-junit-mockito/references/spring-boot-testing.md +152 -0
  418. package/rules/javascript/best-practices/SKILL.md +64 -0
  419. package/rules/javascript/best-practices/references/REFERENCE.md +91 -0
  420. package/rules/javascript/language/SKILL.md +71 -0
  421. package/rules/javascript/language/references/REFERENCE.md +106 -0
  422. package/rules/javascript/tooling/SKILL.md +60 -0
  423. package/rules/javascript/tooling/references/REFERENCE.md +107 -0
  424. package/rules/metadata.json +54 -0
  425. package/rules/nestjs/api-standards/SKILL.md +47 -0
  426. package/rules/nestjs/api-standards/references/pagination-wrapper.md +87 -0
  427. package/rules/nestjs/architecture/SKILL.md +68 -0
  428. package/rules/nestjs/architecture/references/dynamic-module.md +53 -0
  429. package/rules/nestjs/caching/SKILL.md +51 -0
  430. package/rules/nestjs/caching/references/REFERENCE.md +13 -0
  431. package/rules/nestjs/caching/references/cache-patterns.md +183 -0
  432. package/rules/nestjs/configuration/SKILL.md +41 -0
  433. package/rules/nestjs/configuration/references/REFERENCE.md +13 -0
  434. package/rules/nestjs/configuration/references/config-patterns.md +184 -0
  435. package/rules/nestjs/controllers-services/SKILL.md +63 -0
  436. package/rules/nestjs/controllers-services/references/REFERENCE.md +14 -0
  437. package/rules/nestjs/controllers-services/references/controller-patterns.md +119 -0
  438. package/rules/nestjs/controllers-services/references/service-patterns.md +129 -0
  439. package/rules/nestjs/database/SKILL.md +102 -0
  440. package/rules/nestjs/database/references/REFERENCE.md +14 -0
  441. package/rules/nestjs/database/references/typeorm-patterns.md +156 -0
  442. package/rules/nestjs/deployment/SKILL.md +36 -0
  443. package/rules/nestjs/deployment/references/REFERENCE.md +13 -0
  444. package/rules/nestjs/deployment/references/deployment-patterns.md +140 -0
  445. package/rules/nestjs/documentation/SKILL.md +64 -0
  446. package/rules/nestjs/documentation/references/REFERENCE.md +13 -0
  447. package/rules/nestjs/documentation/references/swagger-patterns.md +139 -0
  448. package/rules/nestjs/error-handling/SKILL.md +55 -0
  449. package/rules/nestjs/error-handling/references/REFERENCE.md +13 -0
  450. package/rules/nestjs/error-handling/references/exception-filters.md +152 -0
  451. package/rules/nestjs/file-uploads/SKILL.md +35 -0
  452. package/rules/nestjs/file-uploads/references/REFERENCE.md +13 -0
  453. package/rules/nestjs/file-uploads/references/upload-patterns.md +125 -0
  454. package/rules/nestjs/observability/SKILL.md +39 -0
  455. package/rules/nestjs/observability/references/REFERENCE.md +13 -0
  456. package/rules/nestjs/observability/references/logging-metrics.md +175 -0
  457. package/rules/nestjs/performance/SKILL.md +60 -0
  458. package/rules/nestjs/performance/references/REFERENCE.md +13 -0
  459. package/rules/nestjs/performance/references/performance-patterns.md +107 -0
  460. package/rules/nestjs/real-time/SKILL.md +45 -0
  461. package/rules/nestjs/real-time/references/REFERENCE.md +13 -0
  462. package/rules/nestjs/real-time/references/websocket-patterns.md +121 -0
  463. package/rules/nestjs/scheduling/SKILL.md +39 -0
  464. package/rules/nestjs/scheduling/references/REFERENCE.md +13 -0
  465. package/rules/nestjs/scheduling/references/scheduling-patterns.md +137 -0
  466. package/rules/nestjs/search/SKILL.md +41 -0
  467. package/rules/nestjs/search/references/REFERENCE.md +13 -0
  468. package/rules/nestjs/search/references/search-patterns.md +137 -0
  469. package/rules/nestjs/security/SKILL.md +87 -0
  470. package/rules/nestjs/security/references/REFERENCE.md +14 -0
  471. package/rules/nestjs/security/references/authentication.md +151 -0
  472. package/rules/nestjs/testing/SKILL.md +40 -0
  473. package/rules/nestjs/testing/references/REFERENCE.md +14 -0
  474. package/rules/nestjs/testing/references/unit-testing.md +179 -0
  475. package/rules/nestjs/transport/SKILL.md +45 -0
  476. package/rules/nestjs/transport/references/REFERENCE.md +13 -0
  477. package/rules/nestjs/transport/references/microservices-patterns.md +170 -0
  478. package/rules/nextjs/app-router/SKILL.md +46 -0
  479. package/rules/nextjs/app-router/references/REFERENCE.md +14 -0
  480. package/rules/nextjs/app-router/references/routing-patterns.md +182 -0
  481. package/rules/nextjs/architecture/SKILL.md +44 -0
  482. package/rules/nextjs/architecture/references/fsd-structure.md +77 -0
  483. package/rules/nextjs/authentication/SKILL.md +29 -0
  484. package/rules/nextjs/authentication/references/auth-implementation.md +73 -0
  485. package/rules/nextjs/caching/SKILL.md +66 -0
  486. package/rules/nextjs/caching/references/REFERENCE.md +13 -0
  487. package/rules/nextjs/caching/references/cache-strategies.md +168 -0
  488. package/rules/nextjs/data-access-layer/SKILL.md +33 -0
  489. package/rules/nextjs/data-access-layer/references/patterns.md +66 -0
  490. package/rules/nextjs/data-fetching/SKILL.md +59 -0
  491. package/rules/nextjs/data-fetching/references/REFERENCE.md +13 -0
  492. package/rules/nextjs/data-fetching/references/fetch-patterns.md +160 -0
  493. package/rules/nextjs/internationalization/SKILL.md +105 -0
  494. package/rules/nextjs/internationalization/references/REFERENCE.md +13 -0
  495. package/rules/nextjs/internationalization/references/i18n-patterns.md +180 -0
  496. package/rules/nextjs/optimization/SKILL.md +64 -0
  497. package/rules/nextjs/optimization/references/REFERENCE.md +13 -0
  498. package/rules/nextjs/optimization/references/optimization-patterns.md +190 -0
  499. package/rules/nextjs/rendering/SKILL.md +91 -0
  500. package/rules/nextjs/rendering/references/REFERENCE.md +13 -0
  501. package/rules/nextjs/rendering/references/rendering-modes.md +163 -0
  502. package/rules/nextjs/server-actions/SKILL.md +46 -0
  503. package/rules/nextjs/server-actions/references/REFERENCE.md +13 -0
  504. package/rules/nextjs/server-actions/references/action-patterns.md +188 -0
  505. package/rules/nextjs/server-components/SKILL.md +52 -0
  506. package/rules/nextjs/server-components/references/REFERENCE.md +13 -0
  507. package/rules/nextjs/server-components/references/component-patterns.md +175 -0
  508. package/rules/nextjs/state-management/SKILL.md +73 -0
  509. package/rules/nextjs/state-management/references/REFERENCE.md +13 -0
  510. package/rules/nextjs/state-management/references/state-patterns.md +218 -0
  511. package/rules/nextjs/styling/SKILL.md +31 -0
  512. package/rules/nextjs/styling/references/implementation.md +56 -0
  513. package/rules/react/component-patterns/SKILL.md +66 -0
  514. package/rules/react/component-patterns/references/REFERENCE.md +126 -0
  515. package/rules/react/hooks/SKILL.md +60 -0
  516. package/rules/react/hooks/references/REFERENCE.md +132 -0
  517. package/rules/react/hooks.rule.md +79 -0
  518. package/rules/react/performance/SKILL.md +69 -0
  519. package/rules/react/performance/references/REFERENCE.md +143 -0
  520. package/rules/react/security/SKILL.md +46 -0
  521. package/rules/react/security/references/REFERENCE.md +170 -0
  522. package/rules/react/state-management/SKILL.md +56 -0
  523. package/rules/react/state-management/references/REFERENCE.md +137 -0
  524. package/rules/react/testing/SKILL.md +45 -0
  525. package/rules/react/testing/references/REFERENCE.md +149 -0
  526. package/rules/react/tooling/SKILL.md +39 -0
  527. package/rules/react/typescript/SKILL.md +53 -0
  528. package/rules/rust/actix-web/SKILL.md +160 -0
  529. package/rules/rust/actix-web/references/REFERENCE.md +13 -0
  530. package/rules/rust/actix-web/references/handler-patterns.md +198 -0
  531. package/rules/rust/async-graphql/SKILL.md +228 -0
  532. package/rules/rust/async-graphql/references/REFERENCE.md +13 -0
  533. package/rules/rust/async-graphql/references/schema-patterns.md +215 -0
  534. package/rules/rust/axum/SKILL.md +161 -0
  535. package/rules/rust/axum/references/REFERENCE.md +14 -0
  536. package/rules/rust/axum/references/handler-patterns.md +97 -0
  537. package/rules/rust/bevy/SKILL.md +206 -0
  538. package/rules/rust/bevy/references/REFERENCE.md +13 -0
  539. package/rules/rust/bevy/references/ecs-patterns.md +226 -0
  540. package/rules/rust/clap/SKILL.md +217 -0
  541. package/rules/rust/clap/references/REFERENCE.md +13 -0
  542. package/rules/rust/clap/references/derive-patterns.md +205 -0
  543. package/rules/rust/core/SKILL.md +154 -0
  544. package/rules/rust/core/references/REFERENCE.md +14 -0
  545. package/rules/rust/core/references/error-handling.md +92 -0
  546. package/rules/rust/diesel-orm/SKILL.md +176 -0
  547. package/rules/rust/diesel-orm/references/REFERENCE.md +13 -0
  548. package/rules/rust/diesel-orm/references/schema-patterns.md +206 -0
  549. package/rules/rust/rocket/SKILL.md +182 -0
  550. package/rules/rust/rocket/references/REFERENCE.md +13 -0
  551. package/rules/rust/rocket/references/handler-patterns.md +209 -0
  552. package/rules/rust/sea-orm/SKILL.md +230 -0
  553. package/rules/rust/sea-orm/references/REFERENCE.md +13 -0
  554. package/rules/rust/sea-orm/references/entity-patterns.md +221 -0
  555. package/rules/rust/serde-serialization/SKILL.md +150 -0
  556. package/rules/rust/serde-serialization/references/REFERENCE.md +13 -0
  557. package/rules/rust/serde-serialization/references/serialization-patterns.md +199 -0
  558. package/rules/rust/sqlx-database/SKILL.md +140 -0
  559. package/rules/rust/sqlx-database/references/REFERENCE.md +13 -0
  560. package/rules/rust/sqlx-database/references/query-patterns.md +210 -0
  561. package/rules/rust/tauri/SKILL.md +180 -0
  562. package/rules/rust/tauri/references/REFERENCE.md +13 -0
  563. package/rules/rust/tauri/references/command-patterns.md +209 -0
  564. package/rules/rust/tokio-runtime/SKILL.md +167 -0
  565. package/rules/rust/tokio-runtime/references/REFERENCE.md +14 -0
  566. package/rules/rust/tokio-runtime/references/async-patterns.md +137 -0
  567. package/rules/rust/tokio-runtime/references/synchronization.md +152 -0
  568. package/rules/rust/tonic/SKILL.md +231 -0
  569. package/rules/rust/tonic/references/REFERENCE.md +13 -0
  570. package/rules/rust/tonic/references/service-patterns.md +213 -0
  571. package/rules/rust/tracing/SKILL.md +214 -0
  572. package/rules/rust/tracing/references/REFERENCE.md +13 -0
  573. package/rules/rust/tracing/references/instrumentation.md +187 -0
  574. package/rules/typescript/best-practices/SKILL.md +108 -0
  575. package/rules/typescript/best-practices/references/REFERENCE.md +68 -0
  576. package/rules/typescript/language/SKILL.md +72 -0
  577. package/rules/typescript/language/references/REFERENCE.md +67 -0
  578. package/rules/typescript/patterns.rule.md +85 -0
  579. package/rules/typescript/security/SKILL.md +59 -0
  580. package/rules/typescript/security/references/REFERENCE.md +113 -0
  581. package/rules/typescript/tooling/SKILL.md +52 -0
  582. package/rules/typescript/tooling/references/REFERENCE.md +110 -0
  583. package/settings.json +94 -0
  584. package/skills/3d-web-experience/SKILL.md +254 -0
  585. package/skills/README.md +23 -0
  586. package/skills/ab-test-setup/SKILL.md +232 -0
  587. package/skills/active-directory-attacks/SKILL.md +383 -0
  588. package/skills/active-directory-attacks/references/advanced-attacks.md +382 -0
  589. package/skills/address-github-comments/SKILL.md +55 -0
  590. package/skills/aesthetic/SKILL.md +134 -0
  591. package/skills/aesthetic/assets/design-guideline-template.md +163 -0
  592. package/skills/aesthetic/assets/design-story-template.md +135 -0
  593. package/skills/aesthetic/references/design-principles.md +62 -0
  594. package/skills/aesthetic/references/design-resources.md +86 -0
  595. package/skills/aesthetic/references/micro-interactions.md +53 -0
  596. package/skills/aesthetic/references/storytelling-design.md +50 -0
  597. package/skills/agent-evaluation/SKILL.md +64 -0
  598. package/skills/agent-framework-azure-hosted-agents/SKILL.md +335 -0
  599. package/skills/agent-framework-azure-hosted-agents/references/advanced.md +512 -0
  600. package/skills/agent-framework-azure-hosted-agents/references/mcp.md +301 -0
  601. package/skills/agent-framework-azure-hosted-agents/references/threads.md +300 -0
  602. package/skills/agent-framework-azure-hosted-agents/references/tools.md +278 -0
  603. package/skills/agent-manager-skill/SKILL.md +40 -0
  604. package/skills/agent-memory-mcp/SKILL.md +82 -0
  605. package/skills/agent-memory-systems/SKILL.md +67 -0
  606. package/skills/agent-tool-builder/SKILL.md +53 -0
  607. package/skills/agile-product-owner/SKILL.md +31 -0
  608. package/skills/agile-product-owner/scripts/user_story_generator.py +387 -0
  609. package/skills/ai-agents-architect/SKILL.md +90 -0
  610. package/skills/ai-artist/SKILL.md +75 -0
  611. package/skills/ai-artist/references/advanced-techniques.md +184 -0
  612. package/skills/ai-artist/references/domain-code.md +66 -0
  613. package/skills/ai-artist/references/domain-data.md +72 -0
  614. package/skills/ai-artist/references/domain-marketing.md +66 -0
  615. package/skills/ai-artist/references/domain-patterns.md +33 -0
  616. package/skills/ai-artist/references/domain-writing.md +68 -0
  617. package/skills/ai-artist/references/image-prompting.md +141 -0
  618. package/skills/ai-artist/references/llm-prompting.md +165 -0
  619. package/skills/ai-artist/references/nano-banana.md +59 -0
  620. package/skills/ai-artist/references/reasoning-techniques.md +201 -0
  621. package/skills/ai-multimodal/.env.example +204 -0
  622. package/skills/ai-multimodal/SKILL.md +109 -0
  623. package/skills/ai-multimodal/references/audio-processing.md +387 -0
  624. package/skills/ai-multimodal/references/image-generation.md +939 -0
  625. package/skills/ai-multimodal/references/music-generation.md +311 -0
  626. package/skills/ai-multimodal/references/video-analysis.md +515 -0
  627. package/skills/ai-multimodal/references/video-generation.md +457 -0
  628. package/skills/ai-multimodal/references/vision-understanding.md +492 -0
  629. package/skills/ai-multimodal/scripts/.coverage +0 -0
  630. package/skills/ai-multimodal/scripts/check_setup.py +315 -0
  631. package/skills/ai-multimodal/scripts/document_converter.py +395 -0
  632. package/skills/ai-multimodal/scripts/gemini_batch_process.py +1185 -0
  633. package/skills/ai-multimodal/scripts/media_optimizer.py +506 -0
  634. package/skills/ai-multimodal/scripts/requirements.txt +26 -0
  635. package/skills/ai-multimodal/scripts/tests/.coverage +0 -0
  636. package/skills/ai-multimodal/scripts/tests/requirements.txt +20 -0
  637. package/skills/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
  638. package/skills/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
  639. package/skills/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
  640. package/skills/ai-product/SKILL.md +54 -0
  641. package/skills/ai-wrapper-product/SKILL.md +273 -0
  642. package/skills/algolia-search/SKILL.md +66 -0
  643. package/skills/algorithmic-art/LICENSE.txt +202 -0
  644. package/skills/algorithmic-art/SKILL.md +405 -0
  645. package/skills/algorithmic-art/templates/generator_template.js +223 -0
  646. package/skills/algorithmic-art/templates/viewer.html +599 -0
  647. package/skills/analytics-tracking/SKILL.md +404 -0
  648. package/skills/angular-architect/SKILL.md +97 -0
  649. package/skills/angular-architect/references/components.md +300 -0
  650. package/skills/angular-architect/references/ngrx.md +404 -0
  651. package/skills/angular-architect/references/routing.md +364 -0
  652. package/skills/angular-architect/references/rxjs.md +322 -0
  653. package/skills/angular-architect/references/testing.md +408 -0
  654. package/skills/api-designer/SKILL.md +101 -0
  655. package/skills/api-designer/references/error-handling.md +541 -0
  656. package/skills/api-designer/references/openapi.md +824 -0
  657. package/skills/api-designer/references/pagination.md +494 -0
  658. package/skills/api-designer/references/rest-patterns.md +335 -0
  659. package/skills/api-designer/references/versioning.md +391 -0
  660. package/skills/api-documentation-generator/SKILL.md +484 -0
  661. package/skills/api-fuzzing-bug-bounty/SKILL.md +433 -0
  662. package/skills/api-patterns/SKILL.md +81 -0
  663. package/skills/api-patterns/api-style.md +42 -0
  664. package/skills/api-patterns/auth.md +24 -0
  665. package/skills/api-patterns/documentation.md +26 -0
  666. package/skills/api-patterns/graphql.md +41 -0
  667. package/skills/api-patterns/rate-limiting.md +31 -0
  668. package/skills/api-patterns/response.md +37 -0
  669. package/skills/api-patterns/rest.md +40 -0
  670. package/skills/api-patterns/scripts/api_validator.py +211 -0
  671. package/skills/api-patterns/security-testing.md +122 -0
  672. package/skills/api-patterns/trpc.md +41 -0
  673. package/skills/api-patterns/versioning.md +22 -0
  674. package/skills/api-security-best-practices/SKILL.md +907 -0
  675. package/skills/app-builder/SKILL.md +75 -0
  676. package/skills/app-builder/agent-coordination.md +71 -0
  677. package/skills/app-builder/feature-building.md +53 -0
  678. package/skills/app-builder/project-detection.md +34 -0
  679. package/skills/app-builder/scaffolding.md +118 -0
  680. package/skills/app-builder/tech-stack.md +40 -0
  681. package/skills/app-builder/templates/SKILL.md +39 -0
  682. package/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
  683. package/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
  684. package/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
  685. package/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
  686. package/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
  687. package/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
  688. package/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
  689. package/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
  690. package/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
  691. package/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
  692. package/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
  693. package/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
  694. package/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
  695. package/skills/app-store-optimization/HOW_TO_USE.md +281 -0
  696. package/skills/app-store-optimization/README.md +430 -0
  697. package/skills/app-store-optimization/SKILL.md +403 -0
  698. package/skills/app-store-optimization/ab_test_planner.py +662 -0
  699. package/skills/app-store-optimization/aso_scorer.py +482 -0
  700. package/skills/app-store-optimization/competitor_analyzer.py +577 -0
  701. package/skills/app-store-optimization/expected_output.json +170 -0
  702. package/skills/app-store-optimization/keyword_analyzer.py +406 -0
  703. package/skills/app-store-optimization/launch_checklist.py +739 -0
  704. package/skills/app-store-optimization/localization_helper.py +588 -0
  705. package/skills/app-store-optimization/metadata_optimizer.py +581 -0
  706. package/skills/app-store-optimization/review_analyzer.py +714 -0
  707. package/skills/app-store-optimization/sample_input.json +30 -0
  708. package/skills/architecture/SKILL.md +55 -0
  709. package/skills/architecture/context-discovery.md +43 -0
  710. package/skills/architecture/examples.md +94 -0
  711. package/skills/architecture/pattern-selection.md +68 -0
  712. package/skills/architecture/patterns-reference.md +50 -0
  713. package/skills/architecture/trade-off-analysis.md +77 -0
  714. package/skills/architecture-designer/SKILL.md +89 -0
  715. package/skills/architecture-designer/references/adr-template.md +119 -0
  716. package/skills/architecture-designer/references/architecture-patterns.md +114 -0
  717. package/skills/architecture-designer/references/database-selection.md +105 -0
  718. package/skills/architecture-designer/references/nfr-checklist.md +115 -0
  719. package/skills/architecture-designer/references/system-design.md +103 -0
  720. package/skills/artifacts-builder/SKILL.md +74 -0
  721. package/skills/artifacts-builder/scripts/bundle-artifact.sh +54 -0
  722. package/skills/artifacts-builder/scripts/init-artifact.sh +322 -0
  723. package/skills/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  724. package/skills/ask-questions-if-underspecified/SKILL.md +81 -0
  725. package/skills/atlassian-mcp/SKILL.md +100 -0
  726. package/skills/atlassian-mcp/references/authentication-patterns.md +523 -0
  727. package/skills/atlassian-mcp/references/common-workflows.md +663 -0
  728. package/skills/atlassian-mcp/references/confluence-operations.md +531 -0
  729. package/skills/atlassian-mcp/references/jira-queries.md +424 -0
  730. package/skills/atlassian-mcp/references/mcp-server-setup.md +295 -0
  731. package/skills/autonomous-agent-patterns/SKILL.md +761 -0
  732. package/skills/autonomous-agents/SKILL.md +68 -0
  733. package/skills/avalonia-layout-zafiro/SKILL.md +59 -0
  734. package/skills/avalonia-layout-zafiro/behaviors.md +35 -0
  735. package/skills/avalonia-layout-zafiro/components.md +41 -0
  736. package/skills/avalonia-layout-zafiro/containers.md +50 -0
  737. package/skills/avalonia-layout-zafiro/icons.md +53 -0
  738. package/skills/avalonia-layout-zafiro/themes.md +51 -0
  739. package/skills/avalonia-viewmodels-zafiro/SKILL.md +29 -0
  740. package/skills/avalonia-viewmodels-zafiro/composition.md +75 -0
  741. package/skills/avalonia-viewmodels-zafiro/navigation_sections.md +53 -0
  742. package/skills/avalonia-viewmodels-zafiro/viewmodels.md +68 -0
  743. package/skills/avalonia-viewmodels-zafiro/wizards.md +47 -0
  744. package/skills/avalonia-zafiro-development/SKILL.md +29 -0
  745. package/skills/avalonia-zafiro-development/avalonia-reactive-rules.md +49 -0
  746. package/skills/avalonia-zafiro-development/core-technical-skills.md +19 -0
  747. package/skills/avalonia-zafiro-development/naming-standards.md +15 -0
  748. package/skills/avalonia-zafiro-development/patterns.md +45 -0
  749. package/skills/avalonia-zafiro-development/zafiro-shortcuts.md +43 -0
  750. package/skills/aws-agentic-ai/SKILL.md +117 -0
  751. package/skills/aws-agentic-ai/cross-service/credential-management.md +450 -0
  752. package/skills/aws-agentic-ai/services/browser/README.md +363 -0
  753. package/skills/aws-agentic-ai/services/code-interpreter/README.md +232 -0
  754. package/skills/aws-agentic-ai/services/gateway/README.md +100 -0
  755. package/skills/aws-agentic-ai/services/gateway/deploy-template.sh +117 -0
  756. package/skills/aws-agentic-ai/services/gateway/deployment-strategies.md +416 -0
  757. package/skills/aws-agentic-ai/services/gateway/troubleshooting-guide.md +384 -0
  758. package/skills/aws-agentic-ai/services/gateway/validate-deployment.sh +186 -0
  759. package/skills/aws-agentic-ai/services/identity/README.md +186 -0
  760. package/skills/aws-agentic-ai/services/memory/README.md +253 -0
  761. package/skills/aws-agentic-ai/services/observability/README.md +517 -0
  762. package/skills/aws-agentic-ai/services/runtime/README.md +215 -0
  763. package/skills/aws-cdk-development/SKILL.md +278 -0
  764. package/skills/aws-cdk-development/references/cdk-patterns.md +431 -0
  765. package/skills/aws-cdk-development/scripts/validate-stack.sh +240 -0
  766. package/skills/aws-cost-operations/SKILL.md +317 -0
  767. package/skills/aws-cost-operations/references/cloudwatch-alarms.md +567 -0
  768. package/skills/aws-cost-operations/references/operations-patterns.md +394 -0
  769. package/skills/aws-penetration-testing/SKILL.md +405 -0
  770. package/skills/aws-penetration-testing/references/advanced-aws-pentesting.md +469 -0
  771. package/skills/aws-serverless/SKILL.md +323 -0
  772. package/skills/aws-serverless-eda/SKILL.md +757 -0
  773. package/skills/aws-serverless-eda/references/deployment-best-practices.md +830 -0
  774. package/skills/aws-serverless-eda/references/eda-patterns.md +1002 -0
  775. package/skills/aws-serverless-eda/references/observability-best-practices.md +770 -0
  776. package/skills/aws-serverless-eda/references/performance-optimization.md +671 -0
  777. package/skills/aws-serverless-eda/references/security-best-practices.md +625 -0
  778. package/skills/aws-serverless-eda/references/serverless-patterns.md +838 -0
  779. package/skills/azd-deployment/SKILL.md +298 -0
  780. package/skills/azd-deployment/references/azure-yaml-schema.md +369 -0
  781. package/skills/azd-deployment/references/bicep-patterns.md +371 -0
  782. package/skills/azd-deployment/references/troubleshooting.md +386 -0
  783. package/skills/azure-ai-agents-python/SKILL.md +277 -0
  784. package/skills/azure-ai-agents-python/references/async-patterns.md +494 -0
  785. package/skills/azure-ai-agents-python/references/streaming.md +337 -0
  786. package/skills/azure-ai-agents-python/references/tools.md +461 -0
  787. package/skills/azure-ai-search-python/SKILL.md +198 -0
  788. package/skills/azure-ai-search-python/references/agentic-retrieval.md +263 -0
  789. package/skills/azure-ai-search-python/scripts/setup_agentic_retrieval.py +164 -0
  790. package/skills/azure-ai-voicelive-skill/SKILL.md +294 -0
  791. package/skills/azure-ai-voicelive-skill/references/api-reference.md +344 -0
  792. package/skills/azure-ai-voicelive-skill/references/examples.md +558 -0
  793. package/skills/azure-ai-voicelive-skill/references/models.md +737 -0
  794. package/skills/azure-functions/SKILL.md +42 -0
  795. package/skills/backend-dev-guidelines/SKILL.md +342 -0
  796. package/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
  797. package/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
  798. package/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
  799. package/skills/backend-dev-guidelines/resources/configuration.md +275 -0
  800. package/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
  801. package/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
  802. package/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
  803. package/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
  804. package/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
  805. package/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
  806. package/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
  807. package/skills/backend-development/SKILL.md +155 -0
  808. package/skills/bash-linux/SKILL.md +199 -0
  809. package/skills/behavioral-modes/SKILL.md +242 -0
  810. package/skills/best-practices/SKILL.md +500 -0
  811. package/skills/best-practices/agents/best-practices-referencer.md +263 -0
  812. package/skills/best-practices/agents/codebase-context-builder.md +326 -0
  813. package/skills/best-practices/agents/task-intent-analyzer.md +245 -0
  814. package/skills/best-practices/references/anti-patterns.md +571 -0
  815. package/skills/best-practices/references/before-after-examples.md +1114 -0
  816. package/skills/best-practices/references/best-practices-guide.md +513 -0
  817. package/skills/best-practices/references/common-workflows.md +692 -0
  818. package/skills/best-practices/references/prompt-patterns.md +547 -0
  819. package/skills/better-auth/SKILL.md +204 -0
  820. package/skills/better-auth/references/advanced-features.md +553 -0
  821. package/skills/better-auth/references/database-integration.md +577 -0
  822. package/skills/better-auth/references/email-password-auth.md +416 -0
  823. package/skills/better-auth/references/oauth-providers.md +430 -0
  824. package/skills/better-auth/scripts/.coverage +0 -0
  825. package/skills/better-auth/scripts/better_auth_init.py +521 -0
  826. package/skills/better-auth/scripts/requirements.txt +15 -0
  827. package/skills/better-auth/scripts/tests/.coverage +0 -0
  828. package/skills/better-auth/scripts/tests/test_better_auth_init.py +421 -0
  829. package/skills/blockrun/SKILL.md +292 -0
  830. package/skills/brainstorming/SKILL.md +230 -0
  831. package/skills/brand-guidelines/LICENSE.txt +202 -0
  832. package/skills/brand-guidelines/SKILL.md +73 -0
  833. package/skills/brand-guidelines-anthropic/LICENSE.txt +202 -0
  834. package/skills/brand-guidelines-anthropic/SKILL.md +73 -0
  835. package/skills/brand-guidelines-community/LICENSE.txt +202 -0
  836. package/skills/brand-guidelines-community/SKILL.md +73 -0
  837. package/skills/broken-authentication/SKILL.md +476 -0
  838. package/skills/browser-automation/SKILL.md +70 -0
  839. package/skills/browser-extension-builder/SKILL.md +261 -0
  840. package/skills/building-ai-agent-on-cloudflare/SKILL.md +391 -0
  841. package/skills/building-ai-agent-on-cloudflare/references/agent-patterns.md +461 -0
  842. package/skills/building-ai-agent-on-cloudflare/references/examples.md +188 -0
  843. package/skills/building-ai-agent-on-cloudflare/references/state-patterns.md +360 -0
  844. package/skills/building-ai-agent-on-cloudflare/references/troubleshooting.md +362 -0
  845. package/skills/building-mcp-server-on-cloudflare/SKILL.md +265 -0
  846. package/skills/building-mcp-server-on-cloudflare/references/examples.md +115 -0
  847. package/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +338 -0
  848. package/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +317 -0
  849. package/skills/bullmq-specialist/SKILL.md +57 -0
  850. package/skills/bun-development/SKILL.md +691 -0
  851. package/skills/burp-suite-testing/SKILL.md +380 -0
  852. package/skills/busybox-on-windows/SKILL.md +30 -0
  853. package/skills/canvas-design/LICENSE.txt +202 -0
  854. package/skills/canvas-design/SKILL.md +130 -0
  855. package/skills/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  856. package/skills/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  857. package/skills/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  858. package/skills/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
  859. package/skills/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  860. package/skills/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
  861. package/skills/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
  862. package/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  863. package/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  864. package/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  865. package/skills/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  866. package/skills/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  867. package/skills/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  868. package/skills/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  869. package/skills/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
  870. package/skills/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
  871. package/skills/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
  872. package/skills/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
  873. package/skills/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
  874. package/skills/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
  875. package/skills/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
  876. package/skills/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
  877. package/skills/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
  878. package/skills/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  879. package/skills/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  880. package/skills/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  881. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  882. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  883. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  884. package/skills/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  885. package/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  886. package/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  887. package/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  888. package/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  889. package/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  890. package/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  891. package/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  892. package/skills/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
  893. package/skills/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
  894. package/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  895. package/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  896. package/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  897. package/skills/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
  898. package/skills/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
  899. package/skills/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
  900. package/skills/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  901. package/skills/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  902. package/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
  903. package/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  904. package/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
  905. package/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
  906. package/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
  907. package/skills/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
  908. package/skills/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
  909. package/skills/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
  910. package/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  911. package/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  912. package/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
  913. package/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
  914. package/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
  915. package/skills/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  916. package/skills/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
  917. package/skills/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
  918. package/skills/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  919. package/skills/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  920. package/skills/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
  921. package/skills/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  922. package/skills/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
  923. package/skills/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  924. package/skills/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  925. package/skills/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
  926. package/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
  927. package/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
  928. package/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
  929. package/skills/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
  930. package/skills/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  931. package/skills/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
  932. package/skills/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
  933. package/skills/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
  934. package/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
  935. package/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  936. package/skills/cc-skill-backend-patterns/SKILL.md +584 -0
  937. package/skills/cc-skill-clickhouse-io/SKILL.md +431 -0
  938. package/skills/cc-skill-coding-standards/SKILL.md +522 -0
  939. package/skills/cc-skill-continuous-learning/SKILL.md +10 -0
  940. package/skills/cc-skill-continuous-learning/config.json +18 -0
  941. package/skills/cc-skill-continuous-learning/evaluate-session.sh +60 -0
  942. package/skills/cc-skill-frontend-patterns/SKILL.md +633 -0
  943. package/skills/cc-skill-project-guidelines-example/SKILL.md +352 -0
  944. package/skills/cc-skill-security-review/SKILL.md +496 -0
  945. package/skills/cc-skill-strategic-compact/SKILL.md +10 -0
  946. package/skills/cc-skill-strategic-compact/suggest-compact.sh +52 -0
  947. package/skills/changelog-generator/SKILL.md +104 -0
  948. package/skills/chaos-engineer/SKILL.md +98 -0
  949. package/skills/chaos-engineer/references/chaos-tools.md +514 -0
  950. package/skills/chaos-engineer/references/experiment-design.md +232 -0
  951. package/skills/chaos-engineer/references/game-days.md +437 -0
  952. package/skills/chaos-engineer/references/infrastructure-chaos.md +351 -0
  953. package/skills/chaos-engineer/references/kubernetes-chaos.md +435 -0
  954. package/skills/chrome-devtools/SKILL.md +407 -0
  955. package/skills/chrome-devtools/references/cdp-domains.md +694 -0
  956. package/skills/chrome-devtools/references/performance-guide.md +999 -0
  957. package/skills/chrome-devtools/references/puppeteer-reference.md +953 -0
  958. package/skills/chrome-devtools/scripts/README.md +228 -0
  959. package/skills/chrome-devtools/scripts/__tests__/selector.test.js +210 -0
  960. package/skills/chrome-devtools/scripts/click.js +79 -0
  961. package/skills/chrome-devtools/scripts/console.js +75 -0
  962. package/skills/chrome-devtools/scripts/evaluate.js +49 -0
  963. package/skills/chrome-devtools/scripts/fill.js +72 -0
  964. package/skills/chrome-devtools/scripts/install-deps.sh +181 -0
  965. package/skills/chrome-devtools/scripts/install.sh +83 -0
  966. package/skills/chrome-devtools/scripts/lib/browser.js +122 -0
  967. package/skills/chrome-devtools/scripts/lib/selector.js +178 -0
  968. package/skills/chrome-devtools/scripts/navigate.js +46 -0
  969. package/skills/chrome-devtools/scripts/network.js +102 -0
  970. package/skills/chrome-devtools/scripts/package.json +15 -0
  971. package/skills/chrome-devtools/scripts/performance.js +145 -0
  972. package/skills/chrome-devtools/scripts/screenshot.js +180 -0
  973. package/skills/chrome-devtools/scripts/snapshot.js +131 -0
  974. package/skills/claude-code-guide/SKILL.md +68 -0
  975. package/skills/claude-d3js-skill/SKILL.md +820 -0
  976. package/skills/claude-d3js-skill/assets/chart-template.jsx +106 -0
  977. package/skills/claude-d3js-skill/assets/interactive-template.jsx +227 -0
  978. package/skills/claude-d3js-skill/assets/sample-data.json +115 -0
  979. package/skills/claude-d3js-skill/references/colour-schemes.md +564 -0
  980. package/skills/claude-d3js-skill/references/d3-patterns.md +869 -0
  981. package/skills/claude-d3js-skill/references/scale-reference.md +509 -0
  982. package/skills/clean-code/SKILL.md +201 -0
  983. package/skills/clerk-auth/SKILL.md +56 -0
  984. package/skills/cli-developer/SKILL.md +97 -0
  985. package/skills/cli-developer/references/design-patterns.md +224 -0
  986. package/skills/cli-developer/references/go-cli.md +543 -0
  987. package/skills/cli-developer/references/node-cli.md +386 -0
  988. package/skills/cli-developer/references/python-cli.md +425 -0
  989. package/skills/cli-developer/references/ux-patterns.md +451 -0
  990. package/skills/cloud-architect/SKILL.md +106 -0
  991. package/skills/cloud-architect/references/aws.md +394 -0
  992. package/skills/cloud-architect/references/azure.md +562 -0
  993. package/skills/cloud-architect/references/gcp.md +633 -0
  994. package/skills/cloud-penetration-testing/SKILL.md +501 -0
  995. package/skills/cloud-penetration-testing/references/advanced-cloud-scripts.md +318 -0
  996. package/skills/cloudflare-expert/SKILL.md +227 -0
  997. package/skills/cloudflare-expert/references/agents-sdk/README.md +35 -0
  998. package/skills/cloudflare-expert/references/agents-sdk/api.md +100 -0
  999. package/skills/cloudflare-expert/references/agents-sdk/configuration.md +99 -0
  1000. package/skills/cloudflare-expert/references/agents-sdk/gotchas.md +59 -0
  1001. package/skills/cloudflare-expert/references/agents-sdk/patterns.md +89 -0
  1002. package/skills/cloudflare-expert/references/ai-gateway/README.md +695 -0
  1003. package/skills/cloudflare-expert/references/ai-search/README.md +14 -0
  1004. package/skills/cloudflare-expert/references/ai-search/api.md +38 -0
  1005. package/skills/cloudflare-expert/references/ai-search/configuration.md +52 -0
  1006. package/skills/cloudflare-expert/references/ai-search/gotchas.md +41 -0
  1007. package/skills/cloudflare-expert/references/ai-search/patterns.md +45 -0
  1008. package/skills/cloudflare-expert/references/analytics-engine/README.md +14 -0
  1009. package/skills/cloudflare-expert/references/analytics-engine/api.md +27 -0
  1010. package/skills/cloudflare-expert/references/analytics-engine/configuration.md +45 -0
  1011. package/skills/cloudflare-expert/references/analytics-engine/gotchas.md +3 -0
  1012. package/skills/cloudflare-expert/references/analytics-engine/patterns.md +36 -0
  1013. package/skills/cloudflare-expert/references/api/README.md +21 -0
  1014. package/skills/cloudflare-expert/references/api/api.md +31 -0
  1015. package/skills/cloudflare-expert/references/api/configuration.md +20 -0
  1016. package/skills/cloudflare-expert/references/api/gotchas.md +28 -0
  1017. package/skills/cloudflare-expert/references/api/patterns.md +47 -0
  1018. package/skills/cloudflare-expert/references/api-shield/README.md +20 -0
  1019. package/skills/cloudflare-expert/references/api-shield/api.md +78 -0
  1020. package/skills/cloudflare-expert/references/api-shield/configuration.md +128 -0
  1021. package/skills/cloudflare-expert/references/api-shield/gotchas.md +51 -0
  1022. package/skills/cloudflare-expert/references/api-shield/patterns.md +145 -0
  1023. package/skills/cloudflare-expert/references/argo-smart-routing/README.md +16 -0
  1024. package/skills/cloudflare-expert/references/argo-smart-routing/api.md +50 -0
  1025. package/skills/cloudflare-expert/references/argo-smart-routing/configuration.md +53 -0
  1026. package/skills/cloudflare-expert/references/argo-smart-routing/gotchas.md +16 -0
  1027. package/skills/cloudflare-expert/references/argo-smart-routing/patterns.md +45 -0
  1028. package/skills/cloudflare-expert/references/bindings/README.md +14 -0
  1029. package/skills/cloudflare-expert/references/bindings/api.md +3 -0
  1030. package/skills/cloudflare-expert/references/bindings/configuration.md +58 -0
  1031. package/skills/cloudflare-expert/references/bindings/gotchas.md +35 -0
  1032. package/skills/cloudflare-expert/references/bindings/patterns.md +37 -0
  1033. package/skills/cloudflare-expert/references/bot-management/README.md +71 -0
  1034. package/skills/cloudflare-expert/references/bot-management/api.md +168 -0
  1035. package/skills/cloudflare-expert/references/bot-management/configuration.md +114 -0
  1036. package/skills/cloudflare-expert/references/bot-management/gotchas.md +99 -0
  1037. package/skills/cloudflare-expert/references/bot-management/patterns.md +125 -0
  1038. package/skills/cloudflare-expert/references/browser-rendering/README.md +16 -0
  1039. package/skills/cloudflare-expert/references/browser-rendering/api.md +54 -0
  1040. package/skills/cloudflare-expert/references/browser-rendering/configuration.md +47 -0
  1041. package/skills/cloudflare-expert/references/browser-rendering/gotchas.md +29 -0
  1042. package/skills/cloudflare-expert/references/browser-rendering/patterns.md +29 -0
  1043. package/skills/cloudflare-expert/references/c3/README.md +264 -0
  1044. package/skills/cloudflare-expert/references/cache-reserve/README.md +93 -0
  1045. package/skills/cloudflare-expert/references/cache-reserve/api.md +176 -0
  1046. package/skills/cloudflare-expert/references/cache-reserve/configuration.md +164 -0
  1047. package/skills/cloudflare-expert/references/cache-reserve/gotchas.md +203 -0
  1048. package/skills/cloudflare-expert/references/cache-reserve/patterns.md +180 -0
  1049. package/skills/cloudflare-expert/references/containers/README.md +16 -0
  1050. package/skills/cloudflare-expert/references/containers/api.md +43 -0
  1051. package/skills/cloudflare-expert/references/containers/configuration.md +56 -0
  1052. package/skills/cloudflare-expert/references/containers/gotchas.md +21 -0
  1053. package/skills/cloudflare-expert/references/containers/patterns.md +40 -0
  1054. package/skills/cloudflare-expert/references/cron-triggers/README.md +85 -0
  1055. package/skills/cloudflare-expert/references/cron-triggers/api.md +198 -0
  1056. package/skills/cloudflare-expert/references/cron-triggers/configuration.md +151 -0
  1057. package/skills/cloudflare-expert/references/cron-triggers/gotchas.md +129 -0
  1058. package/skills/cloudflare-expert/references/cron-triggers/patterns.md +122 -0
  1059. package/skills/cloudflare-expert/references/d1/README.md +92 -0
  1060. package/skills/cloudflare-expert/references/d1/api.md +141 -0
  1061. package/skills/cloudflare-expert/references/d1/configuration.md +127 -0
  1062. package/skills/cloudflare-expert/references/d1/gotchas.md +70 -0
  1063. package/skills/cloudflare-expert/references/d1/patterns.md +144 -0
  1064. package/skills/cloudflare-expert/references/ddos/README.md +34 -0
  1065. package/skills/cloudflare-expert/references/ddos/api.md +136 -0
  1066. package/skills/cloudflare-expert/references/ddos/configuration.md +67 -0
  1067. package/skills/cloudflare-expert/references/ddos/gotchas.md +114 -0
  1068. package/skills/cloudflare-expert/references/ddos/patterns.md +158 -0
  1069. package/skills/cloudflare-expert/references/do-storage/README.md +62 -0
  1070. package/skills/cloudflare-expert/references/do-storage/api.md +89 -0
  1071. package/skills/cloudflare-expert/references/do-storage/configuration.md +116 -0
  1072. package/skills/cloudflare-expert/references/do-storage/gotchas.md +93 -0
  1073. package/skills/cloudflare-expert/references/do-storage/patterns.md +112 -0
  1074. package/skills/cloudflare-expert/references/durable-objects/README.md +125 -0
  1075. package/skills/cloudflare-expert/references/durable-objects/api.md +152 -0
  1076. package/skills/cloudflare-expert/references/durable-objects/configuration.md +148 -0
  1077. package/skills/cloudflare-expert/references/durable-objects/gotchas.md +158 -0
  1078. package/skills/cloudflare-expert/references/durable-objects/patterns.md +255 -0
  1079. package/skills/cloudflare-expert/references/email-routing/README.md +18 -0
  1080. package/skills/cloudflare-expert/references/email-routing/api.md +46 -0
  1081. package/skills/cloudflare-expert/references/email-routing/configuration.md +63 -0
  1082. package/skills/cloudflare-expert/references/email-routing/gotchas.md +16 -0
  1083. package/skills/cloudflare-expert/references/email-routing/patterns.md +46 -0
  1084. package/skills/cloudflare-expert/references/email-workers/README.md +598 -0
  1085. package/skills/cloudflare-expert/references/hyperdrive/README.md +62 -0
  1086. package/skills/cloudflare-expert/references/hyperdrive/api.md +137 -0
  1087. package/skills/cloudflare-expert/references/hyperdrive/configuration.md +133 -0
  1088. package/skills/cloudflare-expert/references/hyperdrive/gotchas.md +184 -0
  1089. package/skills/cloudflare-expert/references/hyperdrive/patterns.md +176 -0
  1090. package/skills/cloudflare-expert/references/images/README.md +14 -0
  1091. package/skills/cloudflare-expert/references/images/api.md +3 -0
  1092. package/skills/cloudflare-expert/references/images/configuration.md +45 -0
  1093. package/skills/cloudflare-expert/references/images/gotchas.md +23 -0
  1094. package/skills/cloudflare-expert/references/images/patterns.md +31 -0
  1095. package/skills/cloudflare-expert/references/kv/README.md +60 -0
  1096. package/skills/cloudflare-expert/references/kv/api.md +114 -0
  1097. package/skills/cloudflare-expert/references/kv/configuration.md +92 -0
  1098. package/skills/cloudflare-expert/references/kv/gotchas.md +117 -0
  1099. package/skills/cloudflare-expert/references/kv/patterns.md +139 -0
  1100. package/skills/cloudflare-expert/references/miniflare/README.md +64 -0
  1101. package/skills/cloudflare-expert/references/miniflare/api.md +144 -0
  1102. package/skills/cloudflare-expert/references/miniflare/configuration.md +203 -0
  1103. package/skills/cloudflare-expert/references/miniflare/gotchas.md +187 -0
  1104. package/skills/cloudflare-expert/references/miniflare/patterns.md +211 -0
  1105. package/skills/cloudflare-expert/references/network-interconnect/README.md +60 -0
  1106. package/skills/cloudflare-expert/references/network-interconnect/api.md +240 -0
  1107. package/skills/cloudflare-expert/references/network-interconnect/configuration.md +127 -0
  1108. package/skills/cloudflare-expert/references/network-interconnect/gotchas.md +171 -0
  1109. package/skills/cloudflare-expert/references/network-interconnect/patterns.md +171 -0
  1110. package/skills/cloudflare-expert/references/observability/README.md +18 -0
  1111. package/skills/cloudflare-expert/references/observability/api.md +51 -0
  1112. package/skills/cloudflare-expert/references/observability/configuration.md +60 -0
  1113. package/skills/cloudflare-expert/references/observability/gotchas.md +36 -0
  1114. package/skills/cloudflare-expert/references/observability/patterns.md +42 -0
  1115. package/skills/cloudflare-expert/references/pages/README.md +76 -0
  1116. package/skills/cloudflare-expert/references/pages/api.md +200 -0
  1117. package/skills/cloudflare-expert/references/pages/configuration.md +228 -0
  1118. package/skills/cloudflare-expert/references/pages/gotchas.md +161 -0
  1119. package/skills/cloudflare-expert/references/pages/patterns.md +145 -0
  1120. package/skills/cloudflare-expert/references/pages-functions/README.md +57 -0
  1121. package/skills/cloudflare-expert/references/pages-functions/api.md +201 -0
  1122. package/skills/cloudflare-expert/references/pages-functions/configuration.md +159 -0
  1123. package/skills/cloudflare-expert/references/pages-functions/gotchas.md +151 -0
  1124. package/skills/cloudflare-expert/references/pages-functions/patterns.md +190 -0
  1125. package/skills/cloudflare-expert/references/pipelines/README.md +664 -0
  1126. package/skills/cloudflare-expert/references/pulumi/README.md +107 -0
  1127. package/skills/cloudflare-expert/references/pulumi/api.md +194 -0
  1128. package/skills/cloudflare-expert/references/pulumi/configuration.md +216 -0
  1129. package/skills/cloudflare-expert/references/pulumi/gotchas.md +223 -0
  1130. package/skills/cloudflare-expert/references/pulumi/patterns.md +139 -0
  1131. package/skills/cloudflare-expert/references/queues/README.md +69 -0
  1132. package/skills/cloudflare-expert/references/queues/api.md +138 -0
  1133. package/skills/cloudflare-expert/references/queues/configuration.md +125 -0
  1134. package/skills/cloudflare-expert/references/queues/gotchas.md +112 -0
  1135. package/skills/cloudflare-expert/references/queues/patterns.md +155 -0
  1136. package/skills/cloudflare-expert/references/r2/README.md +61 -0
  1137. package/skills/cloudflare-expert/references/r2/api.md +127 -0
  1138. package/skills/cloudflare-expert/references/r2/configuration.md +76 -0
  1139. package/skills/cloudflare-expert/references/r2/gotchas.md +94 -0
  1140. package/skills/cloudflare-expert/references/r2/patterns.md +127 -0
  1141. package/skills/cloudflare-expert/references/r2-data-catalog/README.md +18 -0
  1142. package/skills/cloudflare-expert/references/r2-data-catalog/api.md +29 -0
  1143. package/skills/cloudflare-expert/references/r2-data-catalog/configuration.md +39 -0
  1144. package/skills/cloudflare-expert/references/r2-data-catalog/gotchas.md +20 -0
  1145. package/skills/cloudflare-expert/references/r2-data-catalog/patterns.md +46 -0
  1146. package/skills/cloudflare-expert/references/r2-sql/README.md +512 -0
  1147. package/skills/cloudflare-expert/references/realtime-sfu/README.md +21 -0
  1148. package/skills/cloudflare-expert/references/realtime-sfu/api.md +135 -0
  1149. package/skills/cloudflare-expert/references/realtime-sfu/configuration.md +63 -0
  1150. package/skills/cloudflare-expert/references/realtime-sfu/gotchas.md +75 -0
  1151. package/skills/cloudflare-expert/references/realtime-sfu/patterns.md +102 -0
  1152. package/skills/cloudflare-expert/references/realtimekit/README.md +81 -0
  1153. package/skills/cloudflare-expert/references/realtimekit/api.md +164 -0
  1154. package/skills/cloudflare-expert/references/realtimekit/configuration.md +147 -0
  1155. package/skills/cloudflare-expert/references/realtimekit/gotchas.md +172 -0
  1156. package/skills/cloudflare-expert/references/realtimekit/patterns.md +155 -0
  1157. package/skills/cloudflare-expert/references/sandbox/README.md +90 -0
  1158. package/skills/cloudflare-expert/references/sandbox/api.md +178 -0
  1159. package/skills/cloudflare-expert/references/sandbox/configuration.md +131 -0
  1160. package/skills/cloudflare-expert/references/sandbox/gotchas.md +156 -0
  1161. package/skills/cloudflare-expert/references/sandbox/patterns.md +203 -0
  1162. package/skills/cloudflare-expert/references/secrets-store/README.md +58 -0
  1163. package/skills/cloudflare-expert/references/secrets-store/api.md +182 -0
  1164. package/skills/cloudflare-expert/references/secrets-store/configuration.md +140 -0
  1165. package/skills/cloudflare-expert/references/secrets-store/gotchas.md +129 -0
  1166. package/skills/cloudflare-expert/references/secrets-store/patterns.md +218 -0
  1167. package/skills/cloudflare-expert/references/smart-placement/README.md +91 -0
  1168. package/skills/cloudflare-expert/references/smart-placement/api.md +139 -0
  1169. package/skills/cloudflare-expert/references/smart-placement/configuration.md +129 -0
  1170. package/skills/cloudflare-expert/references/smart-placement/gotchas.md +87 -0
  1171. package/skills/cloudflare-expert/references/smart-placement/patterns.md +135 -0
  1172. package/skills/cloudflare-expert/references/snippets/README.md +15 -0
  1173. package/skills/cloudflare-expert/references/snippets/api.md +47 -0
  1174. package/skills/cloudflare-expert/references/snippets/configuration.md +33 -0
  1175. package/skills/cloudflare-expert/references/snippets/gotchas.md +21 -0
  1176. package/skills/cloudflare-expert/references/snippets/patterns.md +34 -0
  1177. package/skills/cloudflare-expert/references/spectrum/README.md +16 -0
  1178. package/skills/cloudflare-expert/references/spectrum/api.md +24 -0
  1179. package/skills/cloudflare-expert/references/spectrum/configuration.md +43 -0
  1180. package/skills/cloudflare-expert/references/spectrum/gotchas.md +42 -0
  1181. package/skills/cloudflare-expert/references/spectrum/patterns.md +40 -0
  1182. package/skills/cloudflare-expert/references/static-assets/README.md +14 -0
  1183. package/skills/cloudflare-expert/references/static-assets/api.md +3 -0
  1184. package/skills/cloudflare-expert/references/static-assets/configuration.md +47 -0
  1185. package/skills/cloudflare-expert/references/static-assets/gotchas.md +44 -0
  1186. package/skills/cloudflare-expert/references/static-assets/patterns.md +42 -0
  1187. package/skills/cloudflare-expert/references/stream/README.md +103 -0
  1188. package/skills/cloudflare-expert/references/stream/api.md +204 -0
  1189. package/skills/cloudflare-expert/references/stream/configuration.md +127 -0
  1190. package/skills/cloudflare-expert/references/stream/gotchas.md +131 -0
  1191. package/skills/cloudflare-expert/references/stream/patterns.md +152 -0
  1192. package/skills/cloudflare-expert/references/tail-workers/README.md +640 -0
  1193. package/skills/cloudflare-expert/references/terraform/README.md +76 -0
  1194. package/skills/cloudflare-expert/references/terraform/api.md +159 -0
  1195. package/skills/cloudflare-expert/references/terraform/configuration.md +156 -0
  1196. package/skills/cloudflare-expert/references/terraform/gotchas.md +207 -0
  1197. package/skills/cloudflare-expert/references/terraform/patterns.md +135 -0
  1198. package/skills/cloudflare-expert/references/tunnel/README.md +82 -0
  1199. package/skills/cloudflare-expert/references/tunnel/api.md +105 -0
  1200. package/skills/cloudflare-expert/references/tunnel/configuration.md +113 -0
  1201. package/skills/cloudflare-expert/references/tunnel/gotchas.md +115 -0
  1202. package/skills/cloudflare-expert/references/tunnel/patterns.md +157 -0
  1203. package/skills/cloudflare-expert/references/turn/README.md +699 -0
  1204. package/skills/cloudflare-expert/references/turnstile/README.md +14 -0
  1205. package/skills/cloudflare-expert/references/turnstile/api.md +3 -0
  1206. package/skills/cloudflare-expert/references/turnstile/configuration.md +19 -0
  1207. package/skills/cloudflare-expert/references/turnstile/gotchas.md +27 -0
  1208. package/skills/cloudflare-expert/references/turnstile/patterns.md +41 -0
  1209. package/skills/cloudflare-expert/references/vectorize/README.md +682 -0
  1210. package/skills/cloudflare-expert/references/waf/README.md +14 -0
  1211. package/skills/cloudflare-expert/references/waf/api.md +3 -0
  1212. package/skills/cloudflare-expert/references/waf/configuration.md +44 -0
  1213. package/skills/cloudflare-expert/references/waf/gotchas.md +24 -0
  1214. package/skills/cloudflare-expert/references/waf/patterns.md +29 -0
  1215. package/skills/cloudflare-expert/references/web-analytics/README.md +19 -0
  1216. package/skills/cloudflare-expert/references/web-analytics/api.md +52 -0
  1217. package/skills/cloudflare-expert/references/web-analytics/configuration.md +31 -0
  1218. package/skills/cloudflare-expert/references/web-analytics/gotchas.md +28 -0
  1219. package/skills/cloudflare-expert/references/web-analytics/patterns.md +52 -0
  1220. package/skills/cloudflare-expert/references/workerd/README.md +47 -0
  1221. package/skills/cloudflare-expert/references/workerd/api.md +199 -0
  1222. package/skills/cloudflare-expert/references/workerd/configuration.md +185 -0
  1223. package/skills/cloudflare-expert/references/workerd/gotchas.md +203 -0
  1224. package/skills/cloudflare-expert/references/workerd/patterns.md +216 -0
  1225. package/skills/cloudflare-expert/references/workers/README.md +96 -0
  1226. package/skills/cloudflare-expert/references/workers/api.md +137 -0
  1227. package/skills/cloudflare-expert/references/workers/configuration.md +147 -0
  1228. package/skills/cloudflare-expert/references/workers/gotchas.md +99 -0
  1229. package/skills/cloudflare-expert/references/workers/patterns.md +149 -0
  1230. package/skills/cloudflare-expert/references/workers-ai/README.md +116 -0
  1231. package/skills/cloudflare-expert/references/workers-for-platforms/README.md +48 -0
  1232. package/skills/cloudflare-expert/references/workers-for-platforms/api.md +169 -0
  1233. package/skills/cloudflare-expert/references/workers-for-platforms/configuration.md +136 -0
  1234. package/skills/cloudflare-expert/references/workers-for-platforms/gotchas.md +130 -0
  1235. package/skills/cloudflare-expert/references/workers-for-platforms/patterns.md +170 -0
  1236. package/skills/cloudflare-expert/references/workers-playground/README.md +16 -0
  1237. package/skills/cloudflare-expert/references/workers-playground/api.md +20 -0
  1238. package/skills/cloudflare-expert/references/workers-playground/configuration.md +3 -0
  1239. package/skills/cloudflare-expert/references/workers-playground/gotchas.md +35 -0
  1240. package/skills/cloudflare-expert/references/workers-playground/patterns.md +42 -0
  1241. package/skills/cloudflare-expert/references/workers-vpc/README.md +579 -0
  1242. package/skills/cloudflare-expert/references/workflows/README.md +62 -0
  1243. package/skills/cloudflare-expert/references/workflows/api.md +125 -0
  1244. package/skills/cloudflare-expert/references/workflows/configuration.md +177 -0
  1245. package/skills/cloudflare-expert/references/workflows/gotchas.md +136 -0
  1246. package/skills/cloudflare-expert/references/workflows/patterns.md +132 -0
  1247. package/skills/cloudflare-expert/references/wrangler/README.md +90 -0
  1248. package/skills/cloudflare-expert/references/wrangler/api.md +140 -0
  1249. package/skills/cloudflare-expert/references/wrangler/configuration.md +128 -0
  1250. package/skills/cloudflare-expert/references/wrangler/gotchas.md +93 -0
  1251. package/skills/cloudflare-expert/references/wrangler/patterns.md +150 -0
  1252. package/skills/cloudflare-expert/references/zaraz/README.md +360 -0
  1253. package/skills/code-documentation/SKILL.md +263 -0
  1254. package/skills/code-documenter/SKILL.md +95 -0
  1255. package/skills/code-documenter/references/api-docs-fastapi-django.md +169 -0
  1256. package/skills/code-documenter/references/api-docs-nestjs-express.md +223 -0
  1257. package/skills/code-documenter/references/coverage-reports.md +128 -0
  1258. package/skills/code-documenter/references/documentation-systems.md +336 -0
  1259. package/skills/code-documenter/references/interactive-api-docs.md +534 -0
  1260. package/skills/code-documenter/references/python-docstrings.md +124 -0
  1261. package/skills/code-documenter/references/typescript-jsdoc.md +148 -0
  1262. package/skills/code-documenter/references/user-guides-tutorials.md +533 -0
  1263. package/skills/code-refactoring/SKILL.md +209 -0
  1264. package/skills/code-review/SKILL.md +121 -0
  1265. package/skills/code-review-checklist/SKILL.md +444 -0
  1266. package/skills/code-reviewer/SKILL.md +209 -0
  1267. package/skills/code-reviewer/references/code_review_checklist.md +103 -0
  1268. package/skills/code-reviewer/references/coding_standards.md +103 -0
  1269. package/skills/code-reviewer/references/common_antipatterns.md +103 -0
  1270. package/skills/code-reviewer/scripts/code_quality_checker.py +114 -0
  1271. package/skills/code-reviewer/scripts/pr_analyzer.py +114 -0
  1272. package/skills/code-reviewer/scripts/review_report_generator.py +114 -0
  1273. package/skills/codex-review/SKILL.md +37 -0
  1274. package/skills/competitive-ads-extractor/SKILL.md +293 -0
  1275. package/skills/competitor-alternatives/SKILL.md +750 -0
  1276. package/skills/computer-use-agents/SKILL.md +315 -0
  1277. package/skills/concise-planning/SKILL.md +62 -0
  1278. package/skills/content-creator/SKILL.md +248 -0
  1279. package/skills/content-creator/assets/content_calendar_template.md +99 -0
  1280. package/skills/content-creator/references/brand_guidelines.md +199 -0
  1281. package/skills/content-creator/references/content_frameworks.md +534 -0
  1282. package/skills/content-creator/references/social_media_optimization.md +317 -0
  1283. package/skills/content-creator/scripts/brand_voice_analyzer.py +185 -0
  1284. package/skills/content-creator/scripts/seo_optimizer.py +419 -0
  1285. package/skills/content-research-writer/SKILL.md +538 -0
  1286. package/skills/context-engineering/SKILL.md +107 -0
  1287. package/skills/context-engineering/references/context-compression.md +84 -0
  1288. package/skills/context-engineering/references/context-degradation.md +93 -0
  1289. package/skills/context-engineering/references/context-fundamentals.md +75 -0
  1290. package/skills/context-engineering/references/context-optimization.md +82 -0
  1291. package/skills/context-engineering/references/evaluation.md +89 -0
  1292. package/skills/context-engineering/references/memory-systems.md +88 -0
  1293. package/skills/context-engineering/references/multi-agent-patterns.md +90 -0
  1294. package/skills/context-engineering/references/project-development.md +97 -0
  1295. package/skills/context-engineering/references/runtime-awareness.md +202 -0
  1296. package/skills/context-engineering/references/tool-design.md +86 -0
  1297. package/skills/context-engineering/scripts/compression_evaluator.py +349 -0
  1298. package/skills/context-engineering/scripts/context_analyzer.py +317 -0
  1299. package/skills/context-engineering/scripts/tests/test_edge_cases.py +246 -0
  1300. package/skills/context-window-management/SKILL.md +53 -0
  1301. package/skills/context7-auto-research/SKILL.md +36 -0
  1302. package/skills/conversation-memory/SKILL.md +61 -0
  1303. package/skills/copy-editing/SKILL.md +439 -0
  1304. package/skills/copywriting/SKILL.md +225 -0
  1305. package/skills/core-components/SKILL.md +264 -0
  1306. package/skills/cosmos-db-python-skill/SKILL.md +198 -0
  1307. package/skills/cosmos-db-python-skill/assets/conftest_template.py +332 -0
  1308. package/skills/cosmos-db-python-skill/assets/cosmos_client_template.py +225 -0
  1309. package/skills/cosmos-db-python-skill/assets/service_template.py +314 -0
  1310. package/skills/cosmos-db-python-skill/references/client-setup.md +214 -0
  1311. package/skills/cosmos-db-python-skill/references/error-handling.md +382 -0
  1312. package/skills/cosmos-db-python-skill/references/partitioning.md +270 -0
  1313. package/skills/cosmos-db-python-skill/references/service-layer.md +305 -0
  1314. package/skills/cosmos-db-python-skill/references/testing.md +495 -0
  1315. package/skills/cpp-pro/SKILL.md +97 -0
  1316. package/skills/cpp-pro/references/build-tooling.md +443 -0
  1317. package/skills/cpp-pro/references/concurrency.md +440 -0
  1318. package/skills/cpp-pro/references/memory-performance.md +400 -0
  1319. package/skills/cpp-pro/references/modern-cpp.md +307 -0
  1320. package/skills/cpp-pro/references/templates.md +360 -0
  1321. package/skills/crewai/SKILL.md +243 -0
  1322. package/skills/csharp-developer/SKILL.md +94 -0
  1323. package/skills/csharp-developer/references/aspnet-core.md +397 -0
  1324. package/skills/csharp-developer/references/blazor.md +556 -0
  1325. package/skills/csharp-developer/references/entity-framework.md +412 -0
  1326. package/skills/csharp-developer/references/modern-csharp.md +251 -0
  1327. package/skills/csharp-developer/references/performance.md +501 -0
  1328. package/skills/daily-news-report/SKILL.md +357 -0
  1329. package/skills/daily-news-report/cache.json +41 -0
  1330. package/skills/daily-news-report/sources.json +183 -0
  1331. package/skills/database-design/SKILL.md +52 -0
  1332. package/skills/database-design/database-selection.md +43 -0
  1333. package/skills/database-design/indexing.md +39 -0
  1334. package/skills/database-design/migrations.md +48 -0
  1335. package/skills/database-design/optimization.md +36 -0
  1336. package/skills/database-design/orm-selection.md +30 -0
  1337. package/skills/database-design/schema-design.md +56 -0
  1338. package/skills/database-design/scripts/schema_validator.py +172 -0
  1339. package/skills/database-optimizer/SKILL.md +95 -0
  1340. package/skills/database-optimizer/references/index-strategies.md +334 -0
  1341. package/skills/database-optimizer/references/monitoring-analysis.md +504 -0
  1342. package/skills/database-optimizer/references/mysql-tuning.md +454 -0
  1343. package/skills/database-optimizer/references/postgresql-tuning.md +415 -0
  1344. package/skills/database-optimizer/references/query-optimization.md +254 -0
  1345. package/skills/databases/SKILL.md +232 -0
  1346. package/skills/databases/references/mongodb-aggregation.md +447 -0
  1347. package/skills/databases/references/mongodb-atlas.md +465 -0
  1348. package/skills/databases/references/mongodb-crud.md +408 -0
  1349. package/skills/databases/references/mongodb-indexing.md +442 -0
  1350. package/skills/databases/references/postgresql-administration.md +594 -0
  1351. package/skills/databases/references/postgresql-performance.md +527 -0
  1352. package/skills/databases/references/postgresql-psql-cli.md +467 -0
  1353. package/skills/databases/references/postgresql-queries.md +475 -0
  1354. package/skills/databases/scripts/.coverage +0 -0
  1355. package/skills/databases/scripts/db_backup.py +502 -0
  1356. package/skills/databases/scripts/db_migrate.py +414 -0
  1357. package/skills/databases/scripts/db_performance_check.py +444 -0
  1358. package/skills/databases/scripts/requirements.txt +20 -0
  1359. package/skills/databases/scripts/tests/coverage-db.json +1 -0
  1360. package/skills/databases/scripts/tests/requirements.txt +4 -0
  1361. package/skills/databases/scripts/tests/test_db_backup.py +340 -0
  1362. package/skills/databases/scripts/tests/test_db_migrate.py +277 -0
  1363. package/skills/databases/scripts/tests/test_db_performance_check.py +370 -0
  1364. package/skills/debugging/SKILL.md +84 -0
  1365. package/skills/debugging/references/defense-in-depth.md +124 -0
  1366. package/skills/debugging/references/root-cause-tracing.md +122 -0
  1367. package/skills/debugging/references/systematic-debugging.md +102 -0
  1368. package/skills/debugging/references/verification.md +123 -0
  1369. package/skills/debugging/scripts/find-polluter.sh +63 -0
  1370. package/skills/debugging/scripts/find-polluter.test.md +102 -0
  1371. package/skills/debugging-wizard/SKILL.md +93 -0
  1372. package/skills/debugging-wizard/references/common-patterns.md +135 -0
  1373. package/skills/debugging-wizard/references/debugging-tools.md +143 -0
  1374. package/skills/debugging-wizard/references/quick-fixes.md +180 -0
  1375. package/skills/debugging-wizard/references/strategies.md +145 -0
  1376. package/skills/debugging-wizard/references/systematic-debugging.md +370 -0
  1377. package/skills/deployment-procedures/SKILL.md +241 -0
  1378. package/skills/design-orchestration/SKILL.md +167 -0
  1379. package/skills/developer-growth-analysis/SKILL.md +322 -0
  1380. package/skills/devops/.env.example +76 -0
  1381. package/skills/devops/SKILL.md +285 -0
  1382. package/skills/devops/references/browser-rendering.md +305 -0
  1383. package/skills/devops/references/cloudflare-d1-kv.md +123 -0
  1384. package/skills/devops/references/cloudflare-platform.md +288 -0
  1385. package/skills/devops/references/cloudflare-r2-storage.md +280 -0
  1386. package/skills/devops/references/cloudflare-workers-advanced.md +312 -0
  1387. package/skills/devops/references/cloudflare-workers-apis.md +309 -0
  1388. package/skills/devops/references/cloudflare-workers-basics.md +418 -0
  1389. package/skills/devops/references/docker-basics.md +297 -0
  1390. package/skills/devops/references/docker-compose.md +292 -0
  1391. package/skills/devops/references/gcloud-platform.md +297 -0
  1392. package/skills/devops/references/gcloud-services.md +304 -0
  1393. package/skills/devops/scripts/cloudflare_deploy.py +269 -0
  1394. package/skills/devops/scripts/docker_optimize.py +320 -0
  1395. package/skills/devops/scripts/requirements.txt +20 -0
  1396. package/skills/devops/scripts/tests/requirements.txt +3 -0
  1397. package/skills/devops/scripts/tests/test_cloudflare_deploy.py +285 -0
  1398. package/skills/devops/scripts/tests/test_docker_optimize.py +436 -0
  1399. package/skills/devops-engineer/SKILL.md +92 -0
  1400. package/skills/devops-engineer/references/deployment-strategies.md +244 -0
  1401. package/skills/devops-engineer/references/docker-patterns.md +116 -0
  1402. package/skills/devops-engineer/references/github-actions.md +142 -0
  1403. package/skills/devops-engineer/references/incident-response.md +334 -0
  1404. package/skills/devops-engineer/references/kubernetes.md +157 -0
  1405. package/skills/devops-engineer/references/platform-engineering.md +420 -0
  1406. package/skills/devops-engineer/references/release-automation.md +530 -0
  1407. package/skills/devops-engineer/references/terraform-iac.md +144 -0
  1408. package/skills/discord-bot-architect/SKILL.md +277 -0
  1409. package/skills/dispatching-parallel-agents/SKILL.md +180 -0
  1410. package/skills/django-expert/SKILL.md +89 -0
  1411. package/skills/django-expert/references/authentication.md +148 -0
  1412. package/skills/django-expert/references/drf-serializers.md +151 -0
  1413. package/skills/django-expert/references/models-orm.md +154 -0
  1414. package/skills/django-expert/references/testing-django.md +207 -0
  1415. package/skills/django-expert/references/viewsets-views.md +156 -0
  1416. package/skills/doc-coauthoring/SKILL.md +375 -0
  1417. package/skills/docker-expert/SKILL.md +409 -0
  1418. package/skills/docs-seeker/.env.example +15 -0
  1419. package/skills/docs-seeker/SKILL.md +102 -0
  1420. package/skills/docs-seeker/package.json +24 -0
  1421. package/skills/docs-seeker/references/advanced.md +79 -0
  1422. package/skills/docs-seeker/references/context7-patterns.md +68 -0
  1423. package/skills/docs-seeker/references/errors.md +68 -0
  1424. package/skills/docs-seeker/scripts/analyze-llms-txt.js +211 -0
  1425. package/skills/docs-seeker/scripts/detect-topic.js +172 -0
  1426. package/skills/docs-seeker/scripts/fetch-docs.js +213 -0
  1427. package/skills/docs-seeker/scripts/tests/run-tests.js +72 -0
  1428. package/skills/docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
  1429. package/skills/docs-seeker/scripts/tests/test-detect-topic.js +112 -0
  1430. package/skills/docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
  1431. package/skills/docs-seeker/scripts/utils/env-loader.js +94 -0
  1432. package/skills/docs-seeker/workflows/library-search.md +87 -0
  1433. package/skills/docs-seeker/workflows/repo-analysis.md +91 -0
  1434. package/skills/docs-seeker/workflows/topic-search.md +77 -0
  1435. package/skills/document-skills/docx/LICENSE.txt +30 -0
  1436. package/skills/document-skills/docx/SKILL.md +197 -0
  1437. package/skills/document-skills/docx/docx-js.md +350 -0
  1438. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1439. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1440. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1441. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1442. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1443. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1444. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1445. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1446. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1447. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1448. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1449. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1450. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1451. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1452. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1453. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1454. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1455. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1456. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1457. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1458. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1459. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1460. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1461. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1462. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1463. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1464. package/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1465. package/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1466. package/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1467. package/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1468. package/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1469. package/skills/document-skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  1470. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1471. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1472. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1473. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1474. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1475. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1476. package/skills/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1477. package/skills/document-skills/docx/ooxml/scripts/pack.py +159 -0
  1478. package/skills/document-skills/docx/ooxml/scripts/unpack.py +29 -0
  1479. package/skills/document-skills/docx/ooxml/scripts/validate.py +69 -0
  1480. package/skills/document-skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  1481. package/skills/document-skills/docx/ooxml/scripts/validation/base.py +951 -0
  1482. package/skills/document-skills/docx/ooxml/scripts/validation/docx.py +274 -0
  1483. package/skills/document-skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  1484. package/skills/document-skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  1485. package/skills/document-skills/docx/ooxml.md +610 -0
  1486. package/skills/document-skills/docx/scripts/__init__.py +1 -0
  1487. package/skills/document-skills/docx/scripts/document.py +1276 -0
  1488. package/skills/document-skills/docx/scripts/templates/comments.xml +3 -0
  1489. package/skills/document-skills/docx/scripts/templates/commentsExtended.xml +3 -0
  1490. package/skills/document-skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  1491. package/skills/document-skills/docx/scripts/templates/commentsIds.xml +3 -0
  1492. package/skills/document-skills/docx/scripts/templates/people.xml +3 -0
  1493. package/skills/document-skills/docx/scripts/utilities.py +374 -0
  1494. package/skills/document-skills/pdf/LICENSE.txt +30 -0
  1495. package/skills/document-skills/pdf/SKILL.md +294 -0
  1496. package/skills/document-skills/pdf/forms.md +205 -0
  1497. package/skills/document-skills/pdf/reference.md +612 -0
  1498. package/skills/document-skills/pdf/scripts/check_bounding_boxes.py +70 -0
  1499. package/skills/document-skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  1500. package/skills/document-skills/pdf/scripts/check_fillable_fields.py +12 -0
  1501. package/skills/document-skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  1502. package/skills/document-skills/pdf/scripts/create_validation_image.py +41 -0
  1503. package/skills/document-skills/pdf/scripts/extract_form_field_info.py +152 -0
  1504. package/skills/document-skills/pdf/scripts/fill_fillable_fields.py +114 -0
  1505. package/skills/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  1506. package/skills/document-skills/pptx/LICENSE.txt +30 -0
  1507. package/skills/document-skills/pptx/SKILL.md +484 -0
  1508. package/skills/document-skills/pptx/html2pptx.md +625 -0
  1509. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1510. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1511. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1512. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1513. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1514. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1515. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1516. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1517. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1518. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1519. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1520. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1521. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1522. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1523. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1524. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1525. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1526. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1527. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1528. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1529. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1530. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1531. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1532. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1533. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1534. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1535. package/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1536. package/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1537. package/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1538. package/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1539. package/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1540. package/skills/document-skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  1541. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1542. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1543. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1544. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1545. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1546. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1547. package/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1548. package/skills/document-skills/pptx/ooxml/scripts/pack.py +159 -0
  1549. package/skills/document-skills/pptx/ooxml/scripts/unpack.py +29 -0
  1550. package/skills/document-skills/pptx/ooxml/scripts/validate.py +69 -0
  1551. package/skills/document-skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  1552. package/skills/document-skills/pptx/ooxml/scripts/validation/base.py +951 -0
  1553. package/skills/document-skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  1554. package/skills/document-skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  1555. package/skills/document-skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  1556. package/skills/document-skills/pptx/ooxml.md +427 -0
  1557. package/skills/document-skills/pptx/scripts/html2pptx.js +979 -0
  1558. package/skills/document-skills/pptx/scripts/inventory.py +1020 -0
  1559. package/skills/document-skills/pptx/scripts/rearrange.py +231 -0
  1560. package/skills/document-skills/pptx/scripts/replace.py +385 -0
  1561. package/skills/document-skills/pptx/scripts/thumbnail.py +450 -0
  1562. package/skills/document-skills/xlsx/LICENSE.txt +30 -0
  1563. package/skills/document-skills/xlsx/SKILL.md +289 -0
  1564. package/skills/document-skills/xlsx/recalc.py +178 -0
  1565. package/skills/documentation-templates/SKILL.md +194 -0
  1566. package/skills/docx/SKILL.md +94 -0
  1567. package/skills/docx-official/LICENSE.txt +30 -0
  1568. package/skills/docx-official/SKILL.md +197 -0
  1569. package/skills/docx-official/docx-js.md +350 -0
  1570. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1571. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1572. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1573. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1574. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1575. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1576. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1577. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1578. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1579. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1580. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1581. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1582. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1583. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1584. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1585. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1586. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1587. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1588. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1589. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1590. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1591. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1592. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1593. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1594. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1595. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1596. package/skills/docx-official/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1597. package/skills/docx-official/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1598. package/skills/docx-official/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1599. package/skills/docx-official/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1600. package/skills/docx-official/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1601. package/skills/docx-official/ooxml/schemas/mce/mc.xsd +75 -0
  1602. package/skills/docx-official/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  1603. package/skills/docx-official/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  1604. package/skills/docx-official/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  1605. package/skills/docx-official/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1606. package/skills/docx-official/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1607. package/skills/docx-official/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1608. package/skills/docx-official/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1609. package/skills/docx-official/ooxml/scripts/pack.py +159 -0
  1610. package/skills/docx-official/ooxml/scripts/unpack.py +29 -0
  1611. package/skills/docx-official/ooxml/scripts/validate.py +69 -0
  1612. package/skills/docx-official/ooxml/scripts/validation/__init__.py +15 -0
  1613. package/skills/docx-official/ooxml/scripts/validation/base.py +951 -0
  1614. package/skills/docx-official/ooxml/scripts/validation/docx.py +274 -0
  1615. package/skills/docx-official/ooxml/scripts/validation/pptx.py +315 -0
  1616. package/skills/docx-official/ooxml/scripts/validation/redlining.py +279 -0
  1617. package/skills/docx-official/ooxml.md +610 -0
  1618. package/skills/docx-official/scripts/__init__.py +1 -0
  1619. package/skills/docx-official/scripts/document.py +1276 -0
  1620. package/skills/docx-official/scripts/templates/comments.xml +3 -0
  1621. package/skills/docx-official/scripts/templates/commentsExtended.xml +3 -0
  1622. package/skills/docx-official/scripts/templates/commentsExtensible.xml +3 -0
  1623. package/skills/docx-official/scripts/templates/commentsIds.xml +3 -0
  1624. package/skills/docx-official/scripts/templates/people.xml +3 -0
  1625. package/skills/docx-official/scripts/utilities.py +374 -0
  1626. package/skills/domain-name-brainstormer/SKILL.md +212 -0
  1627. package/skills/dotnet-core-expert/SKILL.md +96 -0
  1628. package/skills/dotnet-core-expert/references/authentication.md +549 -0
  1629. package/skills/dotnet-core-expert/references/clean-architecture.md +458 -0
  1630. package/skills/dotnet-core-expert/references/cloud-native.md +551 -0
  1631. package/skills/dotnet-core-expert/references/entity-framework.md +443 -0
  1632. package/skills/dotnet-core-expert/references/minimal-apis.md +322 -0
  1633. package/skills/email-sequence/SKILL.md +925 -0
  1634. package/skills/email-systems/SKILL.md +54 -0
  1635. package/skills/embedded-systems/SKILL.md +98 -0
  1636. package/skills/embedded-systems/references/communication-protocols.md +414 -0
  1637. package/skills/embedded-systems/references/memory-optimization.md +470 -0
  1638. package/skills/embedded-systems/references/microcontroller-programming.md +397 -0
  1639. package/skills/embedded-systems/references/power-optimization.md +444 -0
  1640. package/skills/embedded-systems/references/rtos-patterns.md +316 -0
  1641. package/skills/environment-setup-guide/SKILL.md +479 -0
  1642. package/skills/ethical-hacking-methodology/SKILL.md +466 -0
  1643. package/skills/exa-search/SKILL.md +36 -0
  1644. package/skills/executing-plans/SKILL.md +76 -0
  1645. package/skills/expo-app-design/SKILL.md +22 -0
  1646. package/skills/expo-deployment/SKILL.md +22 -0
  1647. package/skills/fastapi-expert/SKILL.md +93 -0
  1648. package/skills/fastapi-expert/references/async-sqlalchemy.md +150 -0
  1649. package/skills/fastapi-expert/references/authentication.md +162 -0
  1650. package/skills/fastapi-expert/references/endpoints-routing.md +145 -0
  1651. package/skills/fastapi-expert/references/migration-from-django.md +1000 -0
  1652. package/skills/fastapi-expert/references/pydantic-v2.md +138 -0
  1653. package/skills/fastapi-expert/references/testing-async.md +162 -0
  1654. package/skills/fastapi-router/SKILL.md +52 -0
  1655. package/skills/fastapi-router/assets/template.py +142 -0
  1656. package/skills/feature-forge/SKILL.md +90 -0
  1657. package/skills/feature-forge/references/acceptance-criteria.md +107 -0
  1658. package/skills/feature-forge/references/ears-syntax.md +102 -0
  1659. package/skills/feature-forge/references/interview-questions.md +96 -0
  1660. package/skills/feature-forge/references/specification-template.md +106 -0
  1661. package/skills/file-organizer/SKILL.md +250 -0
  1662. package/skills/file-path-traversal/SKILL.md +486 -0
  1663. package/skills/file-uploads/SKILL.md +22 -0
  1664. package/skills/fine-tuning-expert/SKILL.md +98 -0
  1665. package/skills/fine-tuning-expert/references/dataset-preparation.md +543 -0
  1666. package/skills/fine-tuning-expert/references/deployment-optimization.md +676 -0
  1667. package/skills/fine-tuning-expert/references/evaluation-metrics.md +600 -0
  1668. package/skills/fine-tuning-expert/references/hyperparameter-tuning.md +569 -0
  1669. package/skills/fine-tuning-expert/references/lora-peft.md +350 -0
  1670. package/skills/finishing-a-development-branch/SKILL.md +200 -0
  1671. package/skills/firebase/SKILL.md +56 -0
  1672. package/skills/firecrawl-scraper/SKILL.md +37 -0
  1673. package/skills/fixing/SKILL.md +72 -0
  1674. package/skills/fixing/references/complexity-assessment.md +61 -0
  1675. package/skills/fixing/references/mode-selection.md +46 -0
  1676. package/skills/fixing/references/parallel-exploration.md +77 -0
  1677. package/skills/fixing/references/review-cycle.md +77 -0
  1678. package/skills/fixing/references/skill-activation-matrix.md +65 -0
  1679. package/skills/fixing/references/workflow-ci.md +28 -0
  1680. package/skills/fixing/references/workflow-deep.md +91 -0
  1681. package/skills/fixing/references/workflow-logs.md +36 -0
  1682. package/skills/fixing/references/workflow-quick.md +59 -0
  1683. package/skills/fixing/references/workflow-standard.md +86 -0
  1684. package/skills/fixing/references/workflow-test.md +36 -0
  1685. package/skills/fixing/references/workflow-types.md +33 -0
  1686. package/skills/fixing/references/workflow-ui.md +37 -0
  1687. package/skills/flutter-expert/SKILL.md +88 -0
  1688. package/skills/flutter-expert/references/gorouter-navigation.md +122 -0
  1689. package/skills/flutter-expert/references/performance.md +102 -0
  1690. package/skills/flutter-expert/references/project-structure.md +121 -0
  1691. package/skills/flutter-expert/references/riverpod-state.md +133 -0
  1692. package/skills/flutter-expert/references/widget-patterns.md +126 -0
  1693. package/skills/form-cro/SKILL.md +441 -0
  1694. package/skills/foundry-iq-agent/references/knowledge-sources.md +262 -0
  1695. package/skills/foundry-iq-agent/scripts/create_agent.py +287 -0
  1696. package/skills/foundry-iq-python/SKILL.md +278 -0
  1697. package/skills/foundry-iq-python/references/knowledge-sources.md +262 -0
  1698. package/skills/foundry-iq-python/references/patterns.md +295 -0
  1699. package/skills/foundry-iq-python/scripts/create_agent.py +287 -0
  1700. package/skills/foundry-nextgen-frontend/SKILL.md +555 -0
  1701. package/skills/foundry-nextgen-frontend/assets/foundry-logo-dark.png +0 -0
  1702. package/skills/foundry-nextgen-frontend/assets/foundry-logo-light.png +0 -0
  1703. package/skills/foundry-nextgen-frontend/references/components.md +566 -0
  1704. package/skills/foundry-nextgen-frontend/references/design-tokens.md +172 -0
  1705. package/skills/foundry-nextgen-frontend/references/patterns.md +406 -0
  1706. package/skills/foundry-nextgen-frontend/write_files.py +1993 -0
  1707. package/skills/foundry-sdk-python/SKILL.md +290 -0
  1708. package/skills/foundry-sdk-python/references/agents.md +295 -0
  1709. package/skills/foundry-sdk-python/references/async-patterns.md +258 -0
  1710. package/skills/foundry-sdk-python/references/connections.md +203 -0
  1711. package/skills/foundry-sdk-python/references/datasets-indexes.md +177 -0
  1712. package/skills/foundry-sdk-python/references/deployments.md +134 -0
  1713. package/skills/foundry-sdk-python/references/evaluation.md +309 -0
  1714. package/skills/foundry-sdk-python/references/tools.md +464 -0
  1715. package/skills/free-tool-strategy/SKILL.md +576 -0
  1716. package/skills/frontend-design/LICENSE.txt +177 -0
  1717. package/skills/frontend-design/SKILL.md +272 -0
  1718. package/skills/frontend-dev-guidelines/SKILL.md +359 -0
  1719. package/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
  1720. package/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
  1721. package/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
  1722. package/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
  1723. package/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
  1724. package/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
  1725. package/skills/frontend-dev-guidelines/resources/performance.md +406 -0
  1726. package/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
  1727. package/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
  1728. package/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
  1729. package/skills/frontend-development/SKILL.md +399 -0
  1730. package/skills/frontend-development/resources/common-patterns.md +331 -0
  1731. package/skills/frontend-development/resources/complete-examples.md +872 -0
  1732. package/skills/frontend-development/resources/component-patterns.md +502 -0
  1733. package/skills/frontend-development/resources/data-fetching.md +767 -0
  1734. package/skills/frontend-development/resources/file-organization.md +502 -0
  1735. package/skills/frontend-development/resources/loading-and-error-states.md +501 -0
  1736. package/skills/frontend-development/resources/performance.md +406 -0
  1737. package/skills/frontend-development/resources/routing-guide.md +364 -0
  1738. package/skills/frontend-development/resources/styling-guide.md +428 -0
  1739. package/skills/frontend-development/resources/typescript-standards.md +418 -0
  1740. package/skills/fullstack-guardian/SKILL.md +99 -0
  1741. package/skills/fullstack-guardian/references/api-design-standards.md +310 -0
  1742. package/skills/fullstack-guardian/references/architecture-decisions.md +353 -0
  1743. package/skills/fullstack-guardian/references/backend-patterns.md +240 -0
  1744. package/skills/fullstack-guardian/references/common-patterns.md +137 -0
  1745. package/skills/fullstack-guardian/references/deliverables-checklist.md +357 -0
  1746. package/skills/fullstack-guardian/references/design-template.md +94 -0
  1747. package/skills/fullstack-guardian/references/error-handling.md +138 -0
  1748. package/skills/fullstack-guardian/references/frontend-patterns.md +343 -0
  1749. package/skills/fullstack-guardian/references/integration-patterns.md +336 -0
  1750. package/skills/fullstack-guardian/references/security-checklist.md +109 -0
  1751. package/skills/game-developer/SKILL.md +94 -0
  1752. package/skills/game-developer/references/ecs-patterns.md +504 -0
  1753. package/skills/game-developer/references/multiplayer-networking.md +478 -0
  1754. package/skills/game-developer/references/performance-optimization.md +425 -0
  1755. package/skills/game-developer/references/unity-patterns.md +274 -0
  1756. package/skills/game-developer/references/unreal-cpp.md +355 -0
  1757. package/skills/game-development/2d-games/SKILL.md +119 -0
  1758. package/skills/game-development/3d-games/SKILL.md +135 -0
  1759. package/skills/game-development/SKILL.md +167 -0
  1760. package/skills/game-development/game-art/SKILL.md +185 -0
  1761. package/skills/game-development/game-audio/SKILL.md +190 -0
  1762. package/skills/game-development/game-design/SKILL.md +129 -0
  1763. package/skills/game-development/mobile-games/SKILL.md +108 -0
  1764. package/skills/game-development/multiplayer/SKILL.md +132 -0
  1765. package/skills/game-development/pc-games/SKILL.md +144 -0
  1766. package/skills/game-development/vr-ar/SKILL.md +123 -0
  1767. package/skills/game-development/web-games/SKILL.md +150 -0
  1768. package/skills/gcp-cloud-run/SKILL.md +288 -0
  1769. package/skills/geo-fundamentals/SKILL.md +156 -0
  1770. package/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
  1771. package/skills/git-pushing/SKILL.md +33 -0
  1772. package/skills/git-pushing/scripts/smart_commit.sh +19 -0
  1773. package/skills/github-workflow-automation/SKILL.md +846 -0
  1774. package/skills/golang-pro/SKILL.md +94 -0
  1775. package/skills/golang-pro/references/concurrency.md +332 -0
  1776. package/skills/golang-pro/references/generics.md +445 -0
  1777. package/skills/golang-pro/references/interfaces.md +435 -0
  1778. package/skills/golang-pro/references/project-structure.md +480 -0
  1779. package/skills/golang-pro/references/testing.md +454 -0
  1780. package/skills/google-adk-python/SKILL.md +243 -0
  1781. package/skills/graphql/SKILL.md +68 -0
  1782. package/skills/graphql-architect/SKILL.md +97 -0
  1783. package/skills/graphql-architect/references/federation.md +421 -0
  1784. package/skills/graphql-architect/references/migration-from-rest.md +1144 -0
  1785. package/skills/graphql-architect/references/resolvers.md +428 -0
  1786. package/skills/graphql-architect/references/schema-design.md +396 -0
  1787. package/skills/graphql-architect/references/security.md +572 -0
  1788. package/skills/graphql-architect/references/subscriptions.md +513 -0
  1789. package/skills/html-injection-testing/SKILL.md +498 -0
  1790. package/skills/hubspot-integration/SKILL.md +42 -0
  1791. package/skills/i18n-localization/SKILL.md +154 -0
  1792. package/skills/i18n-localization/scripts/i18n_checker.py +241 -0
  1793. package/skills/idor-testing/SKILL.md +442 -0
  1794. package/skills/image-enhancer/SKILL.md +99 -0
  1795. package/skills/inngest/SKILL.md +55 -0
  1796. package/skills/interactive-portfolio/SKILL.md +223 -0
  1797. package/skills/internal-comms/LICENSE.txt +202 -0
  1798. package/skills/internal-comms/SKILL.md +32 -0
  1799. package/skills/internal-comms/examples/3p-updates.md +47 -0
  1800. package/skills/internal-comms/examples/company-newsletter.md +65 -0
  1801. package/skills/internal-comms/examples/faq-answers.md +30 -0
  1802. package/skills/internal-comms/examples/general-comms.md +16 -0
  1803. package/skills/internal-comms-anthropic/LICENSE.txt +202 -0
  1804. package/skills/internal-comms-anthropic/SKILL.md +32 -0
  1805. package/skills/internal-comms-anthropic/examples/3p-updates.md +47 -0
  1806. package/skills/internal-comms-anthropic/examples/company-newsletter.md +65 -0
  1807. package/skills/internal-comms-anthropic/examples/faq-answers.md +30 -0
  1808. package/skills/internal-comms-anthropic/examples/general-comms.md +16 -0
  1809. package/skills/internal-comms-community/LICENSE.txt +202 -0
  1810. package/skills/internal-comms-community/SKILL.md +32 -0
  1811. package/skills/invoice-organizer/SKILL.md +446 -0
  1812. package/skills/issue-creator/SKILL.md +137 -0
  1813. package/skills/java-architect/SKILL.md +95 -0
  1814. package/skills/java-architect/references/jpa-optimization.md +396 -0
  1815. package/skills/java-architect/references/reactive-webflux.md +359 -0
  1816. package/skills/java-architect/references/spring-boot-setup.md +272 -0
  1817. package/skills/java-architect/references/spring-security.md +448 -0
  1818. package/skills/java-architect/references/testing-patterns.md +503 -0
  1819. package/skills/javascript-mastery/SKILL.md +645 -0
  1820. package/skills/javascript-pro/SKILL.md +95 -0
  1821. package/skills/javascript-pro/references/async-patterns.md +337 -0
  1822. package/skills/javascript-pro/references/browser-apis.md +401 -0
  1823. package/skills/javascript-pro/references/modern-syntax.md +275 -0
  1824. package/skills/javascript-pro/references/modules.md +360 -0
  1825. package/skills/javascript-pro/references/node-essentials.md +474 -0
  1826. package/skills/javascript-typescript/SKILL.md +142 -0
  1827. package/skills/jira-issues/SKILL.md +181 -0
  1828. package/skills/job-application/SKILL.md +90 -0
  1829. package/skills/kaizen/SKILL.md +730 -0
  1830. package/skills/kotlin-specialist/SKILL.md +94 -0
  1831. package/skills/kotlin-specialist/references/android-compose.md +422 -0
  1832. package/skills/kotlin-specialist/references/coroutines-flow.md +279 -0
  1833. package/skills/kotlin-specialist/references/dsl-idioms.md +424 -0
  1834. package/skills/kotlin-specialist/references/ktor-server.md +429 -0
  1835. package/skills/kotlin-specialist/references/multiplatform-kmp.md +383 -0
  1836. package/skills/kubernetes-specialist/SKILL.md +117 -0
  1837. package/skills/kubernetes-specialist/references/configuration.md +455 -0
  1838. package/skills/kubernetes-specialist/references/cost-optimization.md +461 -0
  1839. package/skills/kubernetes-specialist/references/custom-operators.md +566 -0
  1840. package/skills/kubernetes-specialist/references/gitops.md +533 -0
  1841. package/skills/kubernetes-specialist/references/helm-charts.md +915 -0
  1842. package/skills/kubernetes-specialist/references/multi-cluster.md +510 -0
  1843. package/skills/kubernetes-specialist/references/networking.md +450 -0
  1844. package/skills/kubernetes-specialist/references/service-mesh.md +462 -0
  1845. package/skills/kubernetes-specialist/references/storage.md +538 -0
  1846. package/skills/kubernetes-specialist/references/troubleshooting.md +417 -0
  1847. package/skills/kubernetes-specialist/references/workloads.md +380 -0
  1848. package/skills/langfuse/SKILL.md +238 -0
  1849. package/skills/langgraph/SKILL.md +287 -0
  1850. package/skills/laravel-specialist/SKILL.md +101 -0
  1851. package/skills/laravel-specialist/references/eloquent.md +354 -0
  1852. package/skills/laravel-specialist/references/livewire.md +515 -0
  1853. package/skills/laravel-specialist/references/queues.md +426 -0
  1854. package/skills/laravel-specialist/references/routing.md +365 -0
  1855. package/skills/laravel-specialist/references/testing.md +525 -0
  1856. package/skills/last30days/README.md +721 -0
  1857. package/skills/last30days/SKILL.md +421 -0
  1858. package/skills/last30days/SPEC.md +75 -0
  1859. package/skills/last30days/TASKS.md +47 -0
  1860. package/skills/last30days/assets/aging-portrait.jpeg +0 -0
  1861. package/skills/last30days/assets/claude-code-rap.mp3 +0 -0
  1862. package/skills/last30days/assets/dog-as-human.png +0 -0
  1863. package/skills/last30days/assets/dog-original.jpeg +0 -0
  1864. package/skills/last30days/assets/swimmom-mockup.jpeg +0 -0
  1865. package/skills/last30days/fixtures/models_openai_sample.json +41 -0
  1866. package/skills/last30days/fixtures/models_xai_sample.json +23 -0
  1867. package/skills/last30days/fixtures/openai_sample.json +22 -0
  1868. package/skills/last30days/fixtures/reddit_thread_sample.json +108 -0
  1869. package/skills/last30days/fixtures/xai_sample.json +22 -0
  1870. package/skills/last30days/plans/feat-add-websearch-source.md +395 -0
  1871. package/skills/last30days/plans/fix-strict-date-filtering.md +328 -0
  1872. package/skills/last30days/scripts/last30days.py +521 -0
  1873. package/skills/last30days/scripts/lib/__init__.py +1 -0
  1874. package/skills/last30days/scripts/lib/cache.py +152 -0
  1875. package/skills/last30days/scripts/lib/dates.py +124 -0
  1876. package/skills/last30days/scripts/lib/dedupe.py +120 -0
  1877. package/skills/last30days/scripts/lib/env.py +149 -0
  1878. package/skills/last30days/scripts/lib/http.py +152 -0
  1879. package/skills/last30days/scripts/lib/models.py +175 -0
  1880. package/skills/last30days/scripts/lib/normalize.py +160 -0
  1881. package/skills/last30days/scripts/lib/openai_reddit.py +230 -0
  1882. package/skills/last30days/scripts/lib/reddit_enrich.py +232 -0
  1883. package/skills/last30days/scripts/lib/render.py +383 -0
  1884. package/skills/last30days/scripts/lib/schema.py +336 -0
  1885. package/skills/last30days/scripts/lib/score.py +311 -0
  1886. package/skills/last30days/scripts/lib/ui.py +324 -0
  1887. package/skills/last30days/scripts/lib/websearch.py +401 -0
  1888. package/skills/last30days/scripts/lib/xai_x.py +217 -0
  1889. package/skills/last30days/tests/__init__.py +1 -0
  1890. package/skills/last30days/tests/test_cache.py +59 -0
  1891. package/skills/last30days/tests/test_dates.py +114 -0
  1892. package/skills/last30days/tests/test_dedupe.py +111 -0
  1893. package/skills/last30days/tests/test_models.py +135 -0
  1894. package/skills/last30days/tests/test_normalize.py +138 -0
  1895. package/skills/last30days/tests/test_render.py +116 -0
  1896. package/skills/last30days/tests/test_score.py +168 -0
  1897. package/skills/launch-strategy/SKILL.md +344 -0
  1898. package/skills/lead-research-assistant/SKILL.md +199 -0
  1899. package/skills/legacy-modernizer/SKILL.md +93 -0
  1900. package/skills/legacy-modernizer/references/legacy-testing.md +384 -0
  1901. package/skills/legacy-modernizer/references/migration-strategies.md +426 -0
  1902. package/skills/legacy-modernizer/references/refactoring-patterns.md +398 -0
  1903. package/skills/legacy-modernizer/references/strangler-fig-pattern.md +284 -0
  1904. package/skills/legacy-modernizer/references/system-assessment.md +490 -0
  1905. package/skills/lint-and-validate/SKILL.md +45 -0
  1906. package/skills/lint-and-validate/scripts/lint_runner.py +172 -0
  1907. package/skills/lint-and-validate/scripts/type_coverage.py +173 -0
  1908. package/skills/linux-privilege-escalation/SKILL.md +504 -0
  1909. package/skills/linux-shell-scripting/SKILL.md +504 -0
  1910. package/skills/llm-app-patterns/SKILL.md +760 -0
  1911. package/skills/llm-application-dev/SKILL.md +216 -0
  1912. package/skills/loki-mode/.github/workflows/claude-code-review.yml +57 -0
  1913. package/skills/loki-mode/.github/workflows/claude.yml +50 -0
  1914. package/skills/loki-mode/.github/workflows/release.yml +128 -0
  1915. package/skills/loki-mode/ACKNOWLEDGEMENTS.md +184 -0
  1916. package/skills/loki-mode/CHANGELOG.md +1822 -0
  1917. package/skills/loki-mode/CLAUDE.md +120 -0
  1918. package/skills/loki-mode/CONTEXT-EXPORT.md +206 -0
  1919. package/skills/loki-mode/INSTALLATION.md +384 -0
  1920. package/skills/loki-mode/LICENSE +21 -0
  1921. package/skills/loki-mode/README.md +548 -0
  1922. package/skills/loki-mode/SKILL.md +721 -0
  1923. package/skills/loki-mode/VERSION +1 -0
  1924. package/skills/loki-mode/autonomy/.loki/dashboard/index.html +497 -0
  1925. package/skills/loki-mode/autonomy/CONSTITUTION.md +402 -0
  1926. package/skills/loki-mode/autonomy/README.md +201 -0
  1927. package/skills/loki-mode/autonomy/run.sh +1991 -0
  1928. package/skills/loki-mode/benchmarks/datasets/humaneval.jsonl +164 -0
  1929. package/skills/loki-mode/benchmarks/datasets/swebench-lite.json +10 -0
  1930. package/skills/loki-mode/benchmarks/prepare-submission.sh +215 -0
  1931. package/skills/loki-mode/benchmarks/results/2026-01-05-00-23-56/SUMMARY.md +48 -0
  1932. package/skills/loki-mode/benchmarks/results/2026-01-05-00-23-56/humaneval-results.json +15 -0
  1933. package/skills/loki-mode/benchmarks/results/2026-01-05-00-23-56/swebench-results.json +10 -0
  1934. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/SUMMARY.md +50 -0
  1935. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-results.json +1000 -0
  1936. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/0.py +16 -0
  1937. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/1.py +28 -0
  1938. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/10.py +25 -0
  1939. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/100.py +20 -0
  1940. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/101.py +15 -0
  1941. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/102.py +16 -0
  1942. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/103.py +15 -0
  1943. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/104.py +22 -0
  1944. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/105.py +39 -0
  1945. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/106.py +21 -0
  1946. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/107.py +35 -0
  1947. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/108.py +22 -0
  1948. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/109.py +41 -0
  1949. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/11.py +16 -0
  1950. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/110.py +20 -0
  1951. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/111.py +28 -0
  1952. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/112.py +14 -0
  1953. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/113.py +19 -0
  1954. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/114.py +16 -0
  1955. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/115.py +41 -0
  1956. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/116.py +12 -0
  1957. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/117.py +25 -0
  1958. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/118.py +26 -0
  1959. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/119.py +30 -0
  1960. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/12.py +21 -0
  1961. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/120.py +28 -0
  1962. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/121.py +10 -0
  1963. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/122.py +19 -0
  1964. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/123.py +31 -0
  1965. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/124.py +56 -0
  1966. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/125.py +20 -0
  1967. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/126.py +29 -0
  1968. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/127.py +47 -0
  1969. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/128.py +25 -0
  1970. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/129.py +61 -0
  1971. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/13.py +10 -0
  1972. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/130.py +29 -0
  1973. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/131.py +18 -0
  1974. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/132.py +36 -0
  1975. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/133.py +16 -0
  1976. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/134.py +27 -0
  1977. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/135.py +15 -0
  1978. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/136.py +19 -0
  1979. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/137.py +26 -0
  1980. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/138.py +8 -0
  1981. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/139.py +18 -0
  1982. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/14.py +9 -0
  1983. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/140.py +30 -0
  1984. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/141.py +35 -0
  1985. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/142.py +20 -0
  1986. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/143.py +35 -0
  1987. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/144.py +19 -0
  1988. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/145.py +22 -0
  1989. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/146.py +21 -0
  1990. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/147.py +22 -0
  1991. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/148.py +28 -0
  1992. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/149.py +17 -0
  1993. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/15.py +8 -0
  1994. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/150.py +15 -0
  1995. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/151.py +20 -0
  1996. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/152.py +16 -0
  1997. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/153.py +30 -0
  1998. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/154.py +15 -0
  1999. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/155.py +15 -0
  2000. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/156.py +32 -0
  2001. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/157.py +12 -0
  2002. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/158.py +11 -0
  2003. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/159.py +33 -0
  2004. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/16.py +8 -0
  2005. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/160.py +29 -0
  2006. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/161.py +24 -0
  2007. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/162.py +11 -0
  2008. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/163.py +14 -0
  2009. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/17.py +27 -0
  2010. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/18.py +23 -0
  2011. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/19.py +21 -0
  2012. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/2.py +10 -0
  2013. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/20.py +22 -0
  2014. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/21.py +13 -0
  2015. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/22.py +11 -0
  2016. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/23.py +8 -0
  2017. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/24.py +9 -0
  2018. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/25.py +24 -0
  2019. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/26.py +12 -0
  2020. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/27.py +6 -0
  2021. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/28.py +11 -0
  2022. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/29.py +11 -0
  2023. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/3.py +18 -0
  2024. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/30.py +8 -0
  2025. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/31.py +27 -0
  2026. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/32.py +50 -0
  2027. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/33.py +20 -0
  2028. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/34.py +6 -0
  2029. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/35.py +8 -0
  2030. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/36.py +14 -0
  2031. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/37.py +14 -0
  2032. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/38.py +11 -0
  2033. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/39.py +35 -0
  2034. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/4.py +14 -0
  2035. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/40.py +24 -0
  2036. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/41.py +13 -0
  2037. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/42.py +8 -0
  2038. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/43.py +22 -0
  2039. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/44.py +18 -0
  2040. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/45.py +6 -0
  2041. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/46.py +23 -0
  2042. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/47.py +14 -0
  2043. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/48.py +13 -0
  2044. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/49.py +14 -0
  2045. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/5.py +19 -0
  2046. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/50.py +12 -0
  2047. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/51.py +18 -0
  2048. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/52.py +8 -0
  2049. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/53.py +8 -0
  2050. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/54.py +17 -0
  2051. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/55.py +18 -0
  2052. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/56.py +22 -0
  2053. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/57.py +16 -0
  2054. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/58.py +9 -0
  2055. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/59.py +22 -0
  2056. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/6.py +26 -0
  2057. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/60.py +14 -0
  2058. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/61.py +22 -0
  2059. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/62.py +10 -0
  2060. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/63.py +25 -0
  2061. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/64.py +20 -0
  2062. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/65.py +14 -0
  2063. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/66.py +14 -0
  2064. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/67.py +16 -0
  2065. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/68.py +50 -0
  2066. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/69.py +21 -0
  2067. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/7.py +11 -0
  2068. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/70.py +26 -0
  2069. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/71.py +17 -0
  2070. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/72.py +21 -0
  2071. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/73.py +17 -0
  2072. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/74.py +21 -0
  2073. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/75.py +30 -0
  2074. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/76.py +20 -0
  2075. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/77.py +17 -0
  2076. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/78.py +24 -0
  2077. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/79.py +13 -0
  2078. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/8.py +17 -0
  2079. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/80.py +18 -0
  2080. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/81.py +54 -0
  2081. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/82.py +20 -0
  2082. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/83.py +21 -0
  2083. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/84.py +16 -0
  2084. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/85.py +12 -0
  2085. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/86.py +16 -0
  2086. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/87.py +29 -0
  2087. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/88.py +24 -0
  2088. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/89.py +23 -0
  2089. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/9.py +20 -0
  2090. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/90.py +20 -0
  2091. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/91.py +20 -0
  2092. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/92.py +25 -0
  2093. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/93.py +34 -0
  2094. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/94.py +33 -0
  2095. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/95.py +27 -0
  2096. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/96.py +28 -0
  2097. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/97.py +13 -0
  2098. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/98.py +15 -0
  2099. package/skills/loki-mode/benchmarks/results/2026-01-05-00-49-17/humaneval-solutions/99.py +30 -0
  2100. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/SUMMARY.md +48 -0
  2101. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/astropy__astropy-12907.patch +16 -0
  2102. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/astropy__astropy-14182.patch +59 -0
  2103. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/astropy__astropy-14365.patch +21 -0
  2104. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/astropy__astropy-14995.patch +15 -0
  2105. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/astropy__astropy-6938.patch +20 -0
  2106. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/astropy__astropy-7746.patch +31 -0
  2107. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-10914.patch +72 -0
  2108. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-10924.patch +41 -0
  2109. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11001.patch +80 -0
  2110. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11019.patch +489 -0
  2111. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11039.patch +87 -0
  2112. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11049.patch +24 -0
  2113. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11099.patch +28 -0
  2114. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11133.patch +20 -0
  2115. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11179.patch +49 -0
  2116. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11283.patch +47 -0
  2117. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11422.patch +25 -0
  2118. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11564.patch +285 -0
  2119. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11583.patch +22 -0
  2120. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11620.patch +21 -0
  2121. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11630.patch +45 -0
  2122. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11742.patch +32 -0
  2123. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11797.patch +38 -0
  2124. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11815.patch +20 -0
  2125. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11848.patch +21 -0
  2126. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11905.patch +16 -0
  2127. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11910.patch +29 -0
  2128. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11964.patch +54 -0
  2129. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-11999.patch +15 -0
  2130. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12113.patch +31 -0
  2131. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12125.patch +27 -0
  2132. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12184.patch +28 -0
  2133. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12284.patch +31 -0
  2134. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12286.patch +29 -0
  2135. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12308.patch +22 -0
  2136. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12453.patch +31 -0
  2137. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12470.patch +53 -0
  2138. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12497.patch +26 -0
  2139. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12589.patch +157 -0
  2140. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12700.patch +27 -0
  2141. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12708.patch +64 -0
  2142. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12747.patch +15 -0
  2143. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12856.patch +16 -0
  2144. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12908.patch +15 -0
  2145. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12915.patch +82 -0
  2146. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-12983.patch +21 -0
  2147. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13028.patch +13 -0
  2148. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13033.patch +17 -0
  2149. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13158.patch +14 -0
  2150. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13220.patch +57 -0
  2151. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13230.patch +14 -0
  2152. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13265.patch +44 -0
  2153. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13315.patch +53 -0
  2154. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13321.patch +33 -0
  2155. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13401.patch +30 -0
  2156. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13447.patch +40 -0
  2157. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13448.patch +203 -0
  2158. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13551.patch +17 -0
  2159. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13590.patch +17 -0
  2160. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13658.patch +19 -0
  2161. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13660.patch +27 -0
  2162. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13710.patch +23 -0
  2163. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13757.patch +51 -0
  2164. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13768.patch +32 -0
  2165. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13925.patch +116 -0
  2166. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13933.patch +62 -0
  2167. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-13964.patch +17 -0
  2168. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14016.patch +138 -0
  2169. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14017.patch +88 -0
  2170. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14155.patch +74 -0
  2171. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14238.patch +132 -0
  2172. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14382.patch +17 -0
  2173. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14411.patch +16 -0
  2174. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14534.patch +29 -0
  2175. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14580.patch +15 -0
  2176. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14608.patch +32 -0
  2177. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14667.patch +33 -0
  2178. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14672.patch +59 -0
  2179. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14730.patch +80 -0
  2180. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14752.patch +35 -0
  2181. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14787.patch +24 -0
  2182. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14855.patch +23 -0
  2183. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14915.patch +19 -0
  2184. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14997.patch +40 -0
  2185. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-14999.patch +26 -0
  2186. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15061.patch +24 -0
  2187. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15202.patch +18 -0
  2188. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15213.patch +70 -0
  2189. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15252.patch +63 -0
  2190. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15320.patch +36 -0
  2191. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15347.patch +36 -0
  2192. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15388.patch +26 -0
  2193. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15400.patch +14 -0
  2194. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15498.patch +14 -0
  2195. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15695.patch +32 -0
  2196. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15738.patch +251 -0
  2197. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15781.patch +18 -0
  2198. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15789.patch +50 -0
  2199. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15790.patch +34 -0
  2200. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15814.patch +18 -0
  2201. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15819.patch +127 -0
  2202. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15851.patch +16 -0
  2203. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15902.patch +15 -0
  2204. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-15996.patch +33 -0
  2205. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16041.patch +30 -0
  2206. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16046.patch +16 -0
  2207. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16139.patch +19 -0
  2208. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16229.patch +142 -0
  2209. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16255.patch +21 -0
  2210. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16379.patch +32 -0
  2211. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16400.patch +34 -0
  2212. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16408.patch +27 -0
  2213. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16527.patch +14 -0
  2214. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16595.patch +14 -0
  2215. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16816.patch +30 -0
  2216. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16820.patch +188 -0
  2217. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-16873.patch +37 -0
  2218. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-17051.patch +51 -0
  2219. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/django__django-17087.patch +21 -0
  2220. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-18869.patch +75 -0
  2221. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-22711.patch +42 -0
  2222. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-22835.patch +58 -0
  2223. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23299.patch +92 -0
  2224. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23314.patch +16 -0
  2225. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23476.patch +73 -0
  2226. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23562.patch +33 -0
  2227. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23563.patch +22 -0
  2228. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23913.patch +207 -0
  2229. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23964.patch +29 -0
  2230. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-23987.patch +43 -0
  2231. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-24149.patch +27 -0
  2232. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-24265.patch +76 -0
  2233. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-24334.patch +17 -0
  2234. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-24970.patch +24 -0
  2235. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-25079.patch +15 -0
  2236. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-25311.patch +29 -0
  2237. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-25332.patch +28 -0
  2238. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-25433.patch +240 -0
  2239. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-25442.patch +28 -0
  2240. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-25498.patch +79 -0
  2241. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-26011.patch +90 -0
  2242. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/matplotlib__matplotlib-26020.patch +35 -0
  2243. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/mwaskom__seaborn-2848.patch +55 -0
  2244. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/mwaskom__seaborn-3010.patch +60 -0
  2245. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/mwaskom__seaborn-3190.patch +18 -0
  2246. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/mwaskom__seaborn-3407.patch +28 -0
  2247. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pallets__flask-4045.patch +23 -0
  2248. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pallets__flask-4992.patch +33 -0
  2249. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pallets__flask-5063.patch +99 -0
  2250. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/psf__requests-1963.patch +117 -0
  2251. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/psf__requests-2148.patch +37 -0
  2252. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/psf__requests-2317.patch +54 -0
  2253. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/psf__requests-2674.patch +157 -0
  2254. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/psf__requests-3362.patch +19 -0
  2255. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/psf__requests-863.patch +35 -0
  2256. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pydata__xarray-3364.patch +392 -0
  2257. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pydata__xarray-4094.patch +40 -0
  2258. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pydata__xarray-4248.patch +124 -0
  2259. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pydata__xarray-4493.patch +39 -0
  2260. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pydata__xarray-5131.patch +45 -0
  2261. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pylint-dev__pylint-5859.patch +13 -0
  2262. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pylint-dev__pylint-6506.patch +25 -0
  2263. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pylint-dev__pylint-7080.patch +33 -0
  2264. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pylint-dev__pylint-7114.patch +161 -0
  2265. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pylint-dev__pylint-7228.patch +34 -0
  2266. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pylint-dev__pylint-7993.patch +21 -0
  2267. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-11143.patch +25 -0
  2268. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-11148.patch +57 -0
  2269. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-5103.patch +345 -0
  2270. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-5221.patch +28 -0
  2271. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-5227.patch +16 -0
  2272. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-5413.patch +35 -0
  2273. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-5495.patch +24 -0
  2274. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-5692.patch +33 -0
  2275. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-6116.patch +12 -0
  2276. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-7168.patch +28 -0
  2277. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-7220.patch +535 -0
  2278. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-7373.patch +47 -0
  2279. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-7432.patch +76 -0
  2280. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-7490.patch +61 -0
  2281. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-8365.patch +123 -0
  2282. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-8906.patch +38 -0
  2283. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/pytest-dev__pytest-9359.patch +22 -0
  2284. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-10297.patch +53 -0
  2285. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-10508.patch +17 -0
  2286. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-10949.patch +94 -0
  2287. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-11040.patch +39 -0
  2288. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-11281.patch +65 -0
  2289. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-12471.patch +54 -0
  2290. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13142.patch +35 -0
  2291. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13241.patch +29 -0
  2292. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13439.patch +34 -0
  2293. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13496.patch +59 -0
  2294. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13497.patch +15 -0
  2295. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13584.patch +25 -0
  2296. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-13779.patch +16 -0
  2297. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-14087.patch +33 -0
  2298. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-14092.patch +35 -0
  2299. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-14894.patch +24 -0
  2300. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-14983.patch +23 -0
  2301. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-15512.patch +77 -0
  2302. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-15535.patch +44 -0
  2303. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-25500.patch +64 -0
  2304. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-25570.patch +96 -0
  2305. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-25638.patch +52 -0
  2306. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/scikit-learn__scikit-learn-25747.patch +29 -0
  2307. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-10325.patch +185 -0
  2308. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-10451.patch +129 -0
  2309. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-11445.patch +119 -0
  2310. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-7686.patch +19 -0
  2311. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-7738.patch +37 -0
  2312. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-7975.patch +89 -0
  2313. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8273.patch +38 -0
  2314. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8282.patch +95 -0
  2315. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8435.patch +104 -0
  2316. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8474.patch +73 -0
  2317. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8506.patch +49 -0
  2318. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8595.patch +15 -0
  2319. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8627.patch +50 -0
  2320. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8713.patch +41 -0
  2321. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8721.patch +25 -0
  2322. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sphinx-doc__sphinx-8801.patch +73 -0
  2323. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-11400.patch +27 -0
  2324. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-11870.patch +96 -0
  2325. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-11897.patch +134 -0
  2326. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-12171.patch +17 -0
  2327. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-12236.patch +20 -0
  2328. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-12419.patch +35 -0
  2329. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-12454.patch +55 -0
  2330. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-12481.patch +68 -0
  2331. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13031.patch +33 -0
  2332. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13043.patch +35 -0
  2333. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13146.patch +32 -0
  2334. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13177.patch +36 -0
  2335. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13437.patch +15 -0
  2336. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13471.patch +26 -0
  2337. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13480.patch +13 -0
  2338. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13647.patch +41 -0
  2339. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13773.patch +22 -0
  2340. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13895.patch +28 -0
  2341. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13915.patch +97 -0
  2342. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-13971.patch +19 -0
  2343. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-14024.patch +27 -0
  2344. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-14308.patch +20 -0
  2345. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-14317.patch +42 -0
  2346. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-14396.patch +38 -0
  2347. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-14774.patch +13 -0
  2348. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-14817.patch +54 -0
  2349. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-15011.patch +38 -0
  2350. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-15308.patch +21 -0
  2351. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-15345.patch +27 -0
  2352. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-15346.patch +26 -0
  2353. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-15609.patch +29 -0
  2354. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-15678.patch +92 -0
  2355. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-16106.patch +78 -0
  2356. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-16281.patch +141 -0
  2357. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-16503.patch +69 -0
  2358. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-16792.patch +16 -0
  2359. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-16988.patch +16 -0
  2360. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-17022.patch +65 -0
  2361. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-17139.patch +33 -0
  2362. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-17630.patch +90 -0
  2363. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-17655.patch +23 -0
  2364. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18057.patch +28 -0
  2365. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18087.patch +81 -0
  2366. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18189.patch +13 -0
  2367. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18199.patch +23 -0
  2368. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18532.patch +130 -0
  2369. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18621.patch +15 -0
  2370. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18698.patch +105 -0
  2371. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-18835.patch +30 -0
  2372. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-19007.patch +66 -0
  2373. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-19254.patch +72 -0
  2374. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-19487.patch +23 -0
  2375. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20049.patch +125 -0
  2376. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20154.patch +46 -0
  2377. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20212.patch +17 -0
  2378. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20322.patch +24 -0
  2379. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20442.patch +27 -0
  2380. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20590.patch +23 -0
  2381. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-20639.patch +66 -0
  2382. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21055.patch +56 -0
  2383. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21171.patch +36 -0
  2384. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21379.patch +36 -0
  2385. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21612.patch +26 -0
  2386. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21614.patch +37 -0
  2387. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21627.patch +26 -0
  2388. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21847.patch +24 -0
  2389. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-22005.patch +36 -0
  2390. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-22714.patch +486 -0
  2391. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-22840.patch +76 -0
  2392. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-23117.patch +24 -0
  2393. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-23191.patch +302 -0
  2394. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-23262.patch +13 -0
  2395. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-24066.patch +66 -0
  2396. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-24102.patch +12 -0
  2397. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-24152.patch +25 -0
  2398. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-24213.patch +25 -0
  2399. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-24909.patch +19 -0
  2400. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-predictions.json +1502 -0
  2401. package/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-results.json +1516 -0
  2402. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/SUMMARY.md +48 -0
  2403. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/astropy__astropy-12907.patch +31 -0
  2404. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/astropy__astropy-14182.patch +42 -0
  2405. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/astropy__astropy-14365.patch +50 -0
  2406. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/astropy__astropy-14995.patch +17 -0
  2407. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/astropy__astropy-6938.patch +13 -0
  2408. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/astropy__astropy-7746.patch +21 -0
  2409. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-10914.patch +76 -0
  2410. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-10924.patch +33 -0
  2411. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11001.patch +35 -0
  2412. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11019.patch +90 -0
  2413. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11039.patch +37 -0
  2414. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11049.patch +10 -0
  2415. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11099.patch +24 -0
  2416. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11133.patch +21 -0
  2417. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11179.patch +47 -0
  2418. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11283.patch +35 -0
  2419. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11422.patch +18 -0
  2420. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11564.patch +62 -0
  2421. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11583.patch +25 -0
  2422. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11620.patch +19 -0
  2423. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11630.patch +79 -0
  2424. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11742.patch +38 -0
  2425. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11797.patch +15 -0
  2426. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11815.patch +20 -0
  2427. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11848.patch +19 -0
  2428. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11905.patch +18 -0
  2429. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11910.patch +17 -0
  2430. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11964.patch +31 -0
  2431. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-11999.patch +26 -0
  2432. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12113.patch +27 -0
  2433. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12125.patch +17 -0
  2434. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12184.patch +83 -0
  2435. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12284.patch +21 -0
  2436. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12286.patch +21 -0
  2437. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12308.patch +24 -0
  2438. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12453.patch +31 -0
  2439. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12470.patch +137 -0
  2440. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12497.patch +21 -0
  2441. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12589.patch +28 -0
  2442. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12700.patch +17 -0
  2443. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12708.patch +22 -0
  2444. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12747.patch +43 -0
  2445. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12856.patch +61 -0
  2446. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12908.patch +19 -0
  2447. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12915.patch +39 -0
  2448. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-12983.patch +21 -0
  2449. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-13028.patch +13 -0
  2450. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-13033.patch +26 -0
  2451. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-13158.patch +12 -0
  2452. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-patches/django__django-13220.patch +55 -0
  2453. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-predictions.json +252 -0
  2454. package/skills/loki-mode/benchmarks/results/2026-01-05-01-35-39/swebench-results.json +266 -0
  2455. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/SUMMARY.md +32 -0
  2456. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/astropy__astropy-12907.patch +23 -0
  2457. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/astropy__astropy-14182.patch +19 -0
  2458. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/astropy__astropy-14365.patch +44 -0
  2459. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/astropy__astropy-14995.patch +19 -0
  2460. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/astropy__astropy-6938.patch +14 -0
  2461. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/astropy__astropy-7746.patch +28 -0
  2462. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-10914.patch +76 -0
  2463. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-10924.patch +25 -0
  2464. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11001.patch +20 -0
  2465. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11019.patch +158 -0
  2466. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11039.patch +38 -0
  2467. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11049.patch +18 -0
  2468. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11099.patch +24 -0
  2469. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11133.patch +15 -0
  2470. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11179.patch +14 -0
  2471. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11283.patch +29 -0
  2472. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11422.patch +21 -0
  2473. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11564.patch +140 -0
  2474. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11583.patch +24 -0
  2475. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11620.patch +18 -0
  2476. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11630.patch +38 -0
  2477. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11742.patch +49 -0
  2478. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11797.patch +18 -0
  2479. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11815.patch +22 -0
  2480. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11848.patch +24 -0
  2481. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11905.patch +32 -0
  2482. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11910.patch +100 -0
  2483. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11964.patch +62 -0
  2484. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-11999.patch +20 -0
  2485. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12113.patch +24 -0
  2486. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12125.patch +17 -0
  2487. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12184.patch +82 -0
  2488. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12284.patch +15 -0
  2489. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12286.patch +41 -0
  2490. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12308.patch +31 -0
  2491. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12453.patch +32 -0
  2492. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12470.patch +21 -0
  2493. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12497.patch +17 -0
  2494. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12589.patch +56 -0
  2495. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12700.patch +28 -0
  2496. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12708.patch +61 -0
  2497. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12747.patch +15 -0
  2498. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12856.patch +62 -0
  2499. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12908.patch +21 -0
  2500. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12915.patch +18 -0
  2501. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-12983.patch +21 -0
  2502. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13028.patch +18 -0
  2503. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13033.patch +15 -0
  2504. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13158.patch +15 -0
  2505. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13220.patch +126 -0
  2506. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13230.patch +24 -0
  2507. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13265.patch +87 -0
  2508. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13315.patch +16 -0
  2509. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13321.patch +29 -0
  2510. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13401.patch +31 -0
  2511. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13447.patch +42 -0
  2512. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13448.patch +94 -0
  2513. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13551.patch +16 -0
  2514. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13590.patch +15 -0
  2515. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13658.patch +22 -0
  2516. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13660.patch +22 -0
  2517. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13710.patch +42 -0
  2518. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13757.patch +32 -0
  2519. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13768.patch +32 -0
  2520. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13925.patch +20 -0
  2521. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13933.patch +31 -0
  2522. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-13964.patch +15 -0
  2523. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14016.patch +103 -0
  2524. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14017.patch +20 -0
  2525. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14155.patch +121 -0
  2526. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14238.patch +14 -0
  2527. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14382.patch +15 -0
  2528. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14411.patch +16 -0
  2529. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14534.patch +15 -0
  2530. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14580.patch +15 -0
  2531. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14608.patch +34 -0
  2532. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14667.patch +29 -0
  2533. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14672.patch +12 -0
  2534. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14730.patch +43 -0
  2535. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14752.patch +32 -0
  2536. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14787.patch +35 -0
  2537. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14855.patch +23 -0
  2538. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14915.patch +21 -0
  2539. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14997.patch +15 -0
  2540. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-14999.patch +28 -0
  2541. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15061.patch +19 -0
  2542. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15202.patch +22 -0
  2543. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15213.patch +16 -0
  2544. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15252.patch +59 -0
  2545. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15320.patch +13 -0
  2546. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15347.patch +15 -0
  2547. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15388.patch +25 -0
  2548. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15400.patch +19 -0
  2549. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15498.patch +14 -0
  2550. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15695.patch +39 -0
  2551. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15738.patch +185 -0
  2552. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15781.patch +20 -0
  2553. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15789.patch +69 -0
  2554. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15790.patch +38 -0
  2555. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15814.patch +14 -0
  2556. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15819.patch +101 -0
  2557. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15851.patch +40 -0
  2558. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15902.patch +17 -0
  2559. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-15996.patch +28 -0
  2560. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16041.patch +27 -0
  2561. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16046.patch +17 -0
  2562. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16139.patch +15 -0
  2563. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16229.patch +19 -0
  2564. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16255.patch +17 -0
  2565. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16379.patch +21 -0
  2566. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16400.patch +29 -0
  2567. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16408.patch +39 -0
  2568. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16527.patch +14 -0
  2569. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16595.patch +39 -0
  2570. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16816.patch +27 -0
  2571. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16820.patch +98 -0
  2572. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16873.patch +23 -0
  2573. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-16910.patch +39 -0
  2574. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-17051.patch +15 -0
  2575. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/django__django-17087.patch +19 -0
  2576. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-18869.patch +29 -0
  2577. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-22711.patch +38 -0
  2578. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-22835.patch +27 -0
  2579. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23299.patch +65 -0
  2580. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23314.patch +15 -0
  2581. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23476.patch +19 -0
  2582. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23562.patch +23 -0
  2583. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23563.patch +14 -0
  2584. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23913.patch +95 -0
  2585. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23964.patch +14 -0
  2586. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-23987.patch +55 -0
  2587. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-24149.patch +20 -0
  2588. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-24265.patch +52 -0
  2589. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-24334.patch +23 -0
  2590. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-24970.patch +24 -0
  2591. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-25079.patch +38 -0
  2592. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-25311.patch +62 -0
  2593. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-25332.patch +42 -0
  2594. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-25433.patch +126 -0
  2595. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-25442.patch +27 -0
  2596. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-25498.patch +67 -0
  2597. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-26011.patch +55 -0
  2598. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/matplotlib__matplotlib-26020.patch +42 -0
  2599. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/mwaskom__seaborn-2848.patch +95 -0
  2600. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/mwaskom__seaborn-3010.patch +17 -0
  2601. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/mwaskom__seaborn-3190.patch +73 -0
  2602. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/mwaskom__seaborn-3407.patch +31 -0
  2603. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pallets__flask-4045.patch +21 -0
  2604. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pallets__flask-4992.patch +47 -0
  2605. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pallets__flask-5063.patch +90 -0
  2606. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/psf__requests-1963.patch +29 -0
  2607. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/psf__requests-2148.patch +79 -0
  2608. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/psf__requests-2317.patch +38 -0
  2609. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/psf__requests-2674.patch +58 -0
  2610. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/psf__requests-3362.patch +17 -0
  2611. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/psf__requests-863.patch +20 -0
  2612. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pydata__xarray-3364.patch +159 -0
  2613. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pydata__xarray-4094.patch +17 -0
  2614. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pydata__xarray-4248.patch +134 -0
  2615. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pydata__xarray-4493.patch +20 -0
  2616. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pydata__xarray-5131.patch +23 -0
  2617. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pylint-dev__pylint-5859.patch +15 -0
  2618. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pylint-dev__pylint-6506.patch +36 -0
  2619. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pylint-dev__pylint-7080.patch +31 -0
  2620. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pylint-dev__pylint-7114.patch +51 -0
  2621. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pylint-dev__pylint-7228.patch +80 -0
  2622. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pylint-dev__pylint-7993.patch +54 -0
  2623. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-11143.patch +17 -0
  2624. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-11148.patch +27 -0
  2625. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-5103.patch +350 -0
  2626. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-5221.patch +18 -0
  2627. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-5227.patch +15 -0
  2628. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-5413.patch +20 -0
  2629. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-5495.patch +44 -0
  2630. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-5692.patch +69 -0
  2631. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-6116.patch +17 -0
  2632. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-7168.patch +14 -0
  2633. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-7220.patch +391 -0
  2634. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-7373.patch +48 -0
  2635. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-7432.patch +99 -0
  2636. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-7490.patch +4 -0
  2637. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-8365.patch +27 -0
  2638. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-8906.patch +23 -0
  2639. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/pytest-dev__pytest-9359.patch +89 -0
  2640. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-10297.patch +22 -0
  2641. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-10508.patch +37 -0
  2642. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-10949.patch +66 -0
  2643. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-11040.patch +147 -0
  2644. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-11281.patch +107 -0
  2645. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-12471.patch +22 -0
  2646. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13142.patch +19 -0
  2647. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13241.patch +26 -0
  2648. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13439.patch +29 -0
  2649. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13496.patch +62 -0
  2650. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13497.patch +23 -0
  2651. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13584.patch +38 -0
  2652. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-13779.patch +16 -0
  2653. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-14087.patch +17 -0
  2654. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-14092.patch +61 -0
  2655. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-14894.patch +45 -0
  2656. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-14983.patch +36 -0
  2657. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-15512.patch +143 -0
  2658. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-15535.patch +17 -0
  2659. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-25500.patch +79 -0
  2660. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-25570.patch +71 -0
  2661. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-25638.patch +70 -0
  2662. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/scikit-learn__scikit-learn-25747.patch +14 -0
  2663. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-10325.patch +153 -0
  2664. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-10451.patch +99 -0
  2665. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-11445.patch +67 -0
  2666. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-7686.patch +50 -0
  2667. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-7738.patch +22 -0
  2668. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-7975.patch +92 -0
  2669. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8273.patch +103 -0
  2670. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8282.patch +45 -0
  2671. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8435.patch +56 -0
  2672. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8474.patch +21 -0
  2673. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8506.patch +33 -0
  2674. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8595.patch +45 -0
  2675. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8627.patch +62 -0
  2676. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8713.patch +19 -0
  2677. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8721.patch +17 -0
  2678. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sphinx-doc__sphinx-8801.patch +101 -0
  2679. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-11400.patch +55 -0
  2680. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-11870.patch +47 -0
  2681. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-11897.patch +152 -0
  2682. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-12171.patch +20 -0
  2683. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-12236.patch +17 -0
  2684. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-12419.patch +37 -0
  2685. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-12454.patch +22 -0
  2686. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-12481.patch +44 -0
  2687. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13031.patch +71 -0
  2688. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13043.patch +25 -0
  2689. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13146.patch +54 -0
  2690. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13177.patch +14 -0
  2691. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13437.patch +17 -0
  2692. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13471.patch +15 -0
  2693. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13480.patch +19 -0
  2694. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13647.patch +22 -0
  2695. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13773.patch +32 -0
  2696. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13895.patch +55 -0
  2697. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13915.patch +70 -0
  2698. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-13971.patch +20 -0
  2699. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-14024.patch +56 -0
  2700. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-14308.patch +189 -0
  2701. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-14317.patch +41 -0
  2702. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-14396.patch +32 -0
  2703. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-14774.patch +15 -0
  2704. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-14817.patch +19 -0
  2705. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15011.patch +31 -0
  2706. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15308.patch +21 -0
  2707. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15345.patch +13 -0
  2708. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15346.patch +21 -0
  2709. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15609.patch +11 -0
  2710. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15678.patch +87 -0
  2711. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-16106.patch +66 -0
  2712. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-16281.patch +88 -0
  2713. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-16503.patch +18 -0
  2714. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-16792.patch +20 -0
  2715. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-16988.patch +22 -0
  2716. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-17022.patch +38 -0
  2717. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-17139.patch +48 -0
  2718. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-17630.patch +116 -0
  2719. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-17655.patch +27 -0
  2720. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18057.patch +31 -0
  2721. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18087.patch +55 -0
  2722. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18189.patch +15 -0
  2723. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18199.patch +25 -0
  2724. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18532.patch +84 -0
  2725. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18621.patch +21 -0
  2726. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18698.patch +60 -0
  2727. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-18835.patch +39 -0
  2728. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-19007.patch +143 -0
  2729. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-19254.patch +79 -0
  2730. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-19487.patch +37 -0
  2731. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20049.patch +37 -0
  2732. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20154.patch +27 -0
  2733. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20212.patch +15 -0
  2734. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20322.patch +23 -0
  2735. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20442.patch +73 -0
  2736. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20590.patch +16 -0
  2737. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-20639.patch +20 -0
  2738. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21055.patch +47 -0
  2739. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21171.patch +27 -0
  2740. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21379.patch +27 -0
  2741. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21612.patch +46 -0
  2742. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21614.patch +23 -0
  2743. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21627.patch +28 -0
  2744. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-21847.patch +24 -0
  2745. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-22005.patch +36 -0
  2746. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-22714.patch +19 -0
  2747. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-22840.patch +19 -0
  2748. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-23117.patch +18 -0
  2749. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-23191.patch +42 -0
  2750. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-23262.patch +18 -0
  2751. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-24066.patch +26 -0
  2752. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-24102.patch +17 -0
  2753. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-24152.patch +23 -0
  2754. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-24213.patch +18 -0
  2755. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-24909.patch +39 -0
  2756. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-predictions.json +1802 -0
  2757. package/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-results.json +1816 -0
  2758. package/skills/loki-mode/benchmarks/results/SUMMARY.md +32 -0
  2759. package/skills/loki-mode/benchmarks/results/humaneval-loki-results.json +1001 -0
  2760. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/0.py +21 -0
  2761. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/1.py +36 -0
  2762. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/10.py +30 -0
  2763. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/100.py +23 -0
  2764. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/101.py +17 -0
  2765. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/102.py +21 -0
  2766. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/103.py +22 -0
  2767. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/104.py +23 -0
  2768. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/105.py +34 -0
  2769. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/106.py +26 -0
  2770. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/107.py +40 -0
  2771. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/108.py +27 -0
  2772. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/109.py +53 -0
  2773. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/11.py +21 -0
  2774. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/110.py +25 -0
  2775. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/111.py +34 -0
  2776. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/112.py +20 -0
  2777. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/113.py +25 -0
  2778. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/114.py +24 -0
  2779. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/115.py +41 -0
  2780. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/116.py +17 -0
  2781. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/117.py +30 -0
  2782. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/118.py +31 -0
  2783. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/119.py +35 -0
  2784. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/12.py +27 -0
  2785. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/120.py +33 -0
  2786. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/121.py +15 -0
  2787. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/122.py +24 -0
  2788. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/123.py +35 -0
  2789. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/124.py +58 -0
  2790. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/125.py +25 -0
  2791. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/126.py +34 -0
  2792. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/127.py +41 -0
  2793. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/128.py +31 -0
  2794. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/129.py +62 -0
  2795. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/13.py +17 -0
  2796. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/130.py +35 -0
  2797. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/131.py +24 -0
  2798. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/132.py +32 -0
  2799. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/133.py +21 -0
  2800. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/134.py +23 -0
  2801. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/135.py +20 -0
  2802. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/136.py +24 -0
  2803. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/137.py +31 -0
  2804. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/138.py +13 -0
  2805. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/139.py +23 -0
  2806. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/14.py +14 -0
  2807. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/140.py +26 -0
  2808. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/141.py +42 -0
  2809. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/142.py +25 -0
  2810. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/143.py +40 -0
  2811. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/144.py +24 -0
  2812. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/145.py +24 -0
  2813. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/146.py +21 -0
  2814. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/147.py +32 -0
  2815. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/148.py +33 -0
  2816. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/149.py +22 -0
  2817. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/15.py +13 -0
  2818. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/150.py +26 -0
  2819. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/151.py +22 -0
  2820. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/152.py +21 -0
  2821. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/153.py +32 -0
  2822. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/154.py +25 -0
  2823. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/155.py +20 -0
  2824. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/156.py +39 -0
  2825. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/157.py +28 -0
  2826. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/158.py +16 -0
  2827. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/159.py +36 -0
  2828. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/16.py +13 -0
  2829. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/160.py +34 -0
  2830. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/161.py +29 -0
  2831. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/162.py +16 -0
  2832. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/163.py +18 -0
  2833. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/17.py +27 -0
  2834. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/18.py +23 -0
  2835. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/19.py +34 -0
  2836. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/2.py +15 -0
  2837. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/20.py +27 -0
  2838. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/21.py +18 -0
  2839. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/22.py +16 -0
  2840. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/23.py +13 -0
  2841. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/24.py +14 -0
  2842. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/25.py +29 -0
  2843. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/26.py +17 -0
  2844. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/27.py +11 -0
  2845. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/28.py +16 -0
  2846. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/29.py +16 -0
  2847. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/3.py +23 -0
  2848. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/30.py +13 -0
  2849. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/31.py +34 -0
  2850. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/32.py +37 -0
  2851. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/33.py +19 -0
  2852. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/34.py +11 -0
  2853. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/35.py +13 -0
  2854. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/36.py +19 -0
  2855. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/37.py +19 -0
  2856. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/38.py +25 -0
  2857. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/39.py +40 -0
  2858. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/4.py +23 -0
  2859. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/40.py +43 -0
  2860. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/41.py +18 -0
  2861. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/42.py +13 -0
  2862. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/43.py +27 -0
  2863. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/44.py +25 -0
  2864. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/45.py +11 -0
  2865. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/46.py +35 -0
  2866. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/47.py +19 -0
  2867. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/48.py +18 -0
  2868. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/49.py +26 -0
  2869. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/5.py +25 -0
  2870. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/50.py +10 -0
  2871. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/51.py +23 -0
  2872. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/52.py +13 -0
  2873. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/53.py +13 -0
  2874. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/54.py +22 -0
  2875. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/55.py +20 -0
  2876. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/56.py +27 -0
  2877. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/57.py +27 -0
  2878. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/58.py +14 -0
  2879. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/59.py +32 -0
  2880. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/6.py +33 -0
  2881. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/60.py +19 -0
  2882. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/61.py +27 -0
  2883. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/62.py +15 -0
  2884. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/63.py +30 -0
  2885. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/64.py +29 -0
  2886. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/65.py +18 -0
  2887. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/66.py +23 -0
  2888. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/67.py +22 -0
  2889. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/68.py +55 -0
  2890. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/69.py +26 -0
  2891. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/7.py +16 -0
  2892. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/70.py +35 -0
  2893. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/71.py +29 -0
  2894. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/72.py +24 -0
  2895. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/73.py +22 -0
  2896. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/74.py +26 -0
  2897. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/75.py +42 -0
  2898. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/76.py +25 -0
  2899. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/77.py +25 -0
  2900. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/78.py +29 -0
  2901. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/79.py +18 -0
  2902. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/8.py +24 -0
  2903. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/80.py +26 -0
  2904. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/81.py +61 -0
  2905. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/82.py +21 -0
  2906. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/83.py +13 -0
  2907. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/84.py +21 -0
  2908. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/85.py +17 -0
  2909. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/86.py +21 -0
  2910. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/87.py +31 -0
  2911. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/88.py +29 -0
  2912. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/89.py +25 -0
  2913. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/9.py +25 -0
  2914. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/90.py +21 -0
  2915. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/91.py +31 -0
  2916. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/92.py +29 -0
  2917. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/93.py +30 -0
  2918. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/94.py +32 -0
  2919. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/95.py +32 -0
  2920. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/96.py +38 -0
  2921. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/97.py +16 -0
  2922. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/98.py +20 -0
  2923. package/skills/loki-mode/benchmarks/results/humaneval-loki-solutions/99.py +36 -0
  2924. package/skills/loki-mode/benchmarks/run-benchmarks.sh +1948 -0
  2925. package/skills/loki-mode/benchmarks/submission-template/README.md +111 -0
  2926. package/skills/loki-mode/benchmarks/submission-template/metadata.yaml +76 -0
  2927. package/skills/loki-mode/demo/README.md +137 -0
  2928. package/skills/loki-mode/demo/loki-demo.gif +0 -0
  2929. package/skills/loki-mode/demo/record-demo.sh +69 -0
  2930. package/skills/loki-mode/demo/record-full-demo.sh +208 -0
  2931. package/skills/loki-mode/demo/recordings/loki-demo.cast +93 -0
  2932. package/skills/loki-mode/demo/run-demo-auto.sh +293 -0
  2933. package/skills/loki-mode/demo/run-demo.sh +323 -0
  2934. package/skills/loki-mode/demo/vhs-tape.tape +223 -0
  2935. package/skills/loki-mode/demo/voice-over-script.md +246 -0
  2936. package/skills/loki-mode/docs/COMPETITIVE-ANALYSIS.md +333 -0
  2937. package/skills/loki-mode/docs/screenshots/README.md +149 -0
  2938. package/skills/loki-mode/docs/screenshots/dashboard-agents.png +0 -0
  2939. package/skills/loki-mode/docs/screenshots/dashboard-tasks.png +0 -0
  2940. package/skills/loki-mode/examples/api-only.md +79 -0
  2941. package/skills/loki-mode/examples/full-stack-demo.md +123 -0
  2942. package/skills/loki-mode/examples/simple-todo-app.md +60 -0
  2943. package/skills/loki-mode/examples/static-landing-page.md +73 -0
  2944. package/skills/loki-mode/examples/todo-app-generated/.loki/CONTINUITY.md +59 -0
  2945. package/skills/loki-mode/examples/todo-app-generated/.loki/queue/completed.json +1 -0
  2946. package/skills/loki-mode/examples/todo-app-generated/.loki/queue/dead-letter.json +1 -0
  2947. package/skills/loki-mode/examples/todo-app-generated/.loki/queue/failed.json +1 -0
  2948. package/skills/loki-mode/examples/todo-app-generated/.loki/queue/in-progress.json +1 -0
  2949. package/skills/loki-mode/examples/todo-app-generated/.loki/queue/pending.json +382 -0
  2950. package/skills/loki-mode/examples/todo-app-generated/.loki/state/orchestrator.json +41 -0
  2951. package/skills/loki-mode/examples/todo-app-generated/E2E_VERIFICATION_REPORT.md +668 -0
  2952. package/skills/loki-mode/examples/todo-app-generated/PRD.md +60 -0
  2953. package/skills/loki-mode/examples/todo-app-generated/TASK_018_COMPLETION.md +229 -0
  2954. package/skills/loki-mode/examples/todo-app-generated/TESTING_DOCUMENTATION.md +327 -0
  2955. package/skills/loki-mode/examples/todo-app-generated/TEST_REPORT.md +201 -0
  2956. package/skills/loki-mode/examples/todo-app-generated/VERIFICATION_SUMMARY.txt +362 -0
  2957. package/skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +2698 -0
  2958. package/skills/loki-mode/examples/todo-app-generated/backend/package.json +26 -0
  2959. package/skills/loki-mode/examples/todo-app-generated/backend/src/db/database.ts +24 -0
  2960. package/skills/loki-mode/examples/todo-app-generated/backend/src/db/db.ts +35 -0
  2961. package/skills/loki-mode/examples/todo-app-generated/backend/src/db/index.ts +2 -0
  2962. package/skills/loki-mode/examples/todo-app-generated/backend/src/db/migrations.ts +31 -0
  2963. package/skills/loki-mode/examples/todo-app-generated/backend/src/db/schema.sql +8 -0
  2964. package/skills/loki-mode/examples/todo-app-generated/backend/src/index.ts +44 -0
  2965. package/skills/loki-mode/examples/todo-app-generated/backend/src/routes/todos.ts +155 -0
  2966. package/skills/loki-mode/examples/todo-app-generated/backend/src/types/index.ts +35 -0
  2967. package/skills/loki-mode/examples/todo-app-generated/backend/todos.db-shm +0 -0
  2968. package/skills/loki-mode/examples/todo-app-generated/backend/todos.db-wal +0 -0
  2969. package/skills/loki-mode/examples/todo-app-generated/backend/tsconfig.json +30 -0
  2970. package/skills/loki-mode/examples/todo-app-generated/frontend/index.html +13 -0
  2971. package/skills/loki-mode/examples/todo-app-generated/frontend/package-lock.json +2014 -0
  2972. package/skills/loki-mode/examples/todo-app-generated/frontend/package.json +26 -0
  2973. package/skills/loki-mode/examples/todo-app-generated/frontend/src/App.css +384 -0
  2974. package/skills/loki-mode/examples/todo-app-generated/frontend/src/App.tsx +81 -0
  2975. package/skills/loki-mode/examples/todo-app-generated/frontend/src/api/todos.ts +57 -0
  2976. package/skills/loki-mode/examples/todo-app-generated/frontend/src/components/ConfirmDialog.tsx +26 -0
  2977. package/skills/loki-mode/examples/todo-app-generated/frontend/src/components/EmptyState.tsx +8 -0
  2978. package/skills/loki-mode/examples/todo-app-generated/frontend/src/components/TodoForm.tsx +43 -0
  2979. package/skills/loki-mode/examples/todo-app-generated/frontend/src/components/TodoItem.tsx +36 -0
  2980. package/skills/loki-mode/examples/todo-app-generated/frontend/src/components/TodoList.tsx +27 -0
  2981. package/skills/loki-mode/examples/todo-app-generated/frontend/src/hooks/useTodos.ts +81 -0
  2982. package/skills/loki-mode/examples/todo-app-generated/frontend/src/index.css +48 -0
  2983. package/skills/loki-mode/examples/todo-app-generated/frontend/src/main.tsx +10 -0
  2984. package/skills/loki-mode/examples/todo-app-generated/frontend/src/vite-env.d.ts +1 -0
  2985. package/skills/loki-mode/examples/todo-app-generated/frontend/tsconfig.json +23 -0
  2986. package/skills/loki-mode/examples/todo-app-generated/frontend/tsconfig.node.json +10 -0
  2987. package/skills/loki-mode/examples/todo-app-generated/frontend/vite.config.ts +15 -0
  2988. package/skills/loki-mode/integrations/vibe-kanban.md +194 -0
  2989. package/skills/loki-mode/references/advanced-patterns.md +453 -0
  2990. package/skills/loki-mode/references/agent-types.md +188 -0
  2991. package/skills/loki-mode/references/agents.md +1043 -0
  2992. package/skills/loki-mode/references/business-ops.md +550 -0
  2993. package/skills/loki-mode/references/core-workflow.md +275 -0
  2994. package/skills/loki-mode/references/deployment.md +604 -0
  2995. package/skills/loki-mode/references/lab-research-patterns.md +534 -0
  2996. package/skills/loki-mode/references/memory-system.md +444 -0
  2997. package/skills/loki-mode/references/openai-patterns.md +647 -0
  2998. package/skills/loki-mode/references/production-patterns.md +568 -0
  2999. package/skills/loki-mode/references/quality-control.md +437 -0
  3000. package/skills/loki-mode/references/sdlc-phases.md +410 -0
  3001. package/skills/loki-mode/references/task-queue.md +361 -0
  3002. package/skills/loki-mode/references/tool-orchestration.md +691 -0
  3003. package/skills/loki-mode/scripts/export-to-vibe-kanban.sh +178 -0
  3004. package/skills/loki-mode/scripts/loki-wrapper.sh +281 -0
  3005. package/skills/loki-mode/scripts/take-screenshots.js +55 -0
  3006. package/skills/loki-mode/tests/run-all-tests.sh +78 -0
  3007. package/skills/loki-mode/tests/test-agent-timeout.sh +348 -0
  3008. package/skills/loki-mode/tests/test-bootstrap.sh +196 -0
  3009. package/skills/loki-mode/tests/test-circuit-breaker.sh +389 -0
  3010. package/skills/loki-mode/tests/test-state-recovery.sh +393 -0
  3011. package/skills/loki-mode/tests/test-task-queue.sh +396 -0
  3012. package/skills/loki-mode/tests/test-wrapper.sh +314 -0
  3013. package/skills/markdown-novel-viewer/SKILL.md +281 -0
  3014. package/skills/markdown-novel-viewer/assets/directory-browser.css +215 -0
  3015. package/skills/markdown-novel-viewer/assets/favicon.png +0 -0
  3016. package/skills/markdown-novel-viewer/assets/novel-theme.css +872 -0
  3017. package/skills/markdown-novel-viewer/assets/reader.js +357 -0
  3018. package/skills/markdown-novel-viewer/assets/template.html +85 -0
  3019. package/skills/markdown-novel-viewer/package-lock.json +146 -0
  3020. package/skills/markdown-novel-viewer/package.json +15 -0
  3021. package/skills/markdown-novel-viewer/scripts/lib/http-server.cjs +434 -0
  3022. package/skills/markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +335 -0
  3023. package/skills/markdown-novel-viewer/scripts/lib/plan-navigator.cjs +509 -0
  3024. package/skills/markdown-novel-viewer/scripts/lib/port-finder.cjs +48 -0
  3025. package/skills/markdown-novel-viewer/scripts/lib/process-mgr.cjs +150 -0
  3026. package/skills/markdown-novel-viewer/scripts/server.cjs +411 -0
  3027. package/skills/markdown-novel-viewer/scripts/tests/server.test.cjs +283 -0
  3028. package/skills/markdown-novel-viewer/tests/dashboard-assets.test.cjs +340 -0
  3029. package/skills/markdown-novel-viewer/tests/dashboard-renderer.test.cjs +404 -0
  3030. package/skills/markdown-novel-viewer/tests/http-server.test.cjs +271 -0
  3031. package/skills/markdown-novel-viewer/tests/run-tests.cjs +51 -0
  3032. package/skills/markdown-novel-viewer/tests/test-framework.cjs +154 -0
  3033. package/skills/markdown-novel-viewer/tests/verify-xss.cjs +90 -0
  3034. package/skills/marketing-ideas/SKILL.md +221 -0
  3035. package/skills/marketing-psychology/SKILL.md +255 -0
  3036. package/skills/mcp-builder/LICENSE.txt +202 -0
  3037. package/skills/mcp-builder/SKILL.md +236 -0
  3038. package/skills/mcp-builder/reference/evaluation.md +602 -0
  3039. package/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
  3040. package/skills/mcp-builder/reference/node_mcp_server.md +970 -0
  3041. package/skills/mcp-builder/reference/python_mcp_server.md +719 -0
  3042. package/skills/mcp-builder/scripts/connections.py +151 -0
  3043. package/skills/mcp-builder/scripts/evaluation.py +373 -0
  3044. package/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  3045. package/skills/mcp-builder/scripts/requirements.txt +2 -0
  3046. package/skills/mcp-developer/SKILL.md +94 -0
  3047. package/skills/mcp-developer/references/protocol.md +247 -0
  3048. package/skills/mcp-developer/references/python-sdk.md +370 -0
  3049. package/skills/mcp-developer/references/resources.md +557 -0
  3050. package/skills/mcp-developer/references/tools.md +483 -0
  3051. package/skills/mcp-developer/references/typescript-sdk.md +353 -0
  3052. package/skills/mcp-management/README.md +219 -0
  3053. package/skills/mcp-management/SKILL.md +209 -0
  3054. package/skills/mcp-management/assets/tools.json +3146 -0
  3055. package/skills/mcp-management/references/configuration.md +114 -0
  3056. package/skills/mcp-management/references/gemini-cli-integration.md +215 -0
  3057. package/skills/mcp-management/references/mcp-protocol.md +116 -0
  3058. package/skills/mcp-management/scripts/.env.example +10 -0
  3059. package/skills/mcp-management/scripts/cli.ts +195 -0
  3060. package/skills/mcp-management/scripts/mcp-client.ts +230 -0
  3061. package/skills/mcp-management/scripts/package.json +20 -0
  3062. package/skills/mcp-management/scripts/tsconfig.json +15 -0
  3063. package/skills/media-processing/SKILL.md +358 -0
  3064. package/skills/media-processing/references/ffmpeg-encoding.md +358 -0
  3065. package/skills/media-processing/references/ffmpeg-filters.md +503 -0
  3066. package/skills/media-processing/references/ffmpeg-streaming.md +403 -0
  3067. package/skills/media-processing/references/format-compatibility.md +375 -0
  3068. package/skills/media-processing/references/imagemagick-batch.md +612 -0
  3069. package/skills/media-processing/references/imagemagick-editing.md +623 -0
  3070. package/skills/media-processing/scripts/batch_resize.py +342 -0
  3071. package/skills/media-processing/scripts/media_convert.py +311 -0
  3072. package/skills/media-processing/scripts/requirements.txt +24 -0
  3073. package/skills/media-processing/scripts/tests/.coverage +0 -0
  3074. package/skills/media-processing/scripts/tests/requirements.txt +2 -0
  3075. package/skills/media-processing/scripts/tests/test_batch_resize.py +372 -0
  3076. package/skills/media-processing/scripts/tests/test_media_convert.py +259 -0
  3077. package/skills/media-processing/scripts/tests/test_video_optimize.py +397 -0
  3078. package/skills/media-processing/scripts/video_optimize.py +414 -0
  3079. package/skills/meeting-insights-analyzer/SKILL.md +327 -0
  3080. package/skills/mermaidjs-v11/SKILL.md +115 -0
  3081. package/skills/mermaidjs-v11/references/cli-usage.md +228 -0
  3082. package/skills/mermaidjs-v11/references/configuration.md +232 -0
  3083. package/skills/mermaidjs-v11/references/diagram-types.md +315 -0
  3084. package/skills/mermaidjs-v11/references/examples.md +344 -0
  3085. package/skills/mermaidjs-v11/references/integration.md +310 -0
  3086. package/skills/metasploit-framework/SKILL.md +478 -0
  3087. package/skills/micro-saas-launcher/SKILL.md +212 -0
  3088. package/skills/microservices-architect/SKILL.md +102 -0
  3089. package/skills/microservices-architect/references/communication.md +499 -0
  3090. package/skills/microservices-architect/references/data.md +721 -0
  3091. package/skills/microservices-architect/references/decomposition.md +344 -0
  3092. package/skills/microservices-architect/references/observability.md +805 -0
  3093. package/skills/microservices-architect/references/patterns.md +603 -0
  3094. package/skills/ml-pipeline/SKILL.md +111 -0
  3095. package/skills/ml-pipeline/references/experiment-tracking.md +843 -0
  3096. package/skills/ml-pipeline/references/feature-engineering.md +639 -0
  3097. package/skills/ml-pipeline/references/model-validation.md +989 -0
  3098. package/skills/ml-pipeline/references/pipeline-orchestration.md +938 -0
  3099. package/skills/ml-pipeline/references/training-pipelines.md +793 -0
  3100. package/skills/mobile-design/SKILL.md +284 -0
  3101. package/skills/mobile-design/decision-trees.md +516 -0
  3102. package/skills/mobile-design/mobile-backend.md +491 -0
  3103. package/skills/mobile-design/mobile-color-system.md +420 -0
  3104. package/skills/mobile-design/mobile-debugging.md +122 -0
  3105. package/skills/mobile-design/mobile-design-thinking.md +357 -0
  3106. package/skills/mobile-design/mobile-navigation.md +458 -0
  3107. package/skills/mobile-design/mobile-performance.md +767 -0
  3108. package/skills/mobile-design/mobile-testing.md +356 -0
  3109. package/skills/mobile-design/mobile-typography.md +433 -0
  3110. package/skills/mobile-design/platform-android.md +666 -0
  3111. package/skills/mobile-design/platform-ios.md +561 -0
  3112. package/skills/mobile-design/scripts/mobile_audit.py +670 -0
  3113. package/skills/mobile-design/touch-psychology.md +537 -0
  3114. package/skills/mobile-development/SKILL.md +212 -0
  3115. package/skills/mobile-development/references/mobile-android.md +604 -0
  3116. package/skills/mobile-development/references/mobile-best-practices.md +545 -0
  3117. package/skills/mobile-development/references/mobile-debugging.md +1089 -0
  3118. package/skills/mobile-development/references/mobile-frameworks.md +465 -0
  3119. package/skills/mobile-development/references/mobile-ios.md +496 -0
  3120. package/skills/mobile-development/references/mobile-mindset.md +544 -0
  3121. package/skills/monitoring-expert/SKILL.md +92 -0
  3122. package/skills/monitoring-expert/references/alerting-rules.md +144 -0
  3123. package/skills/monitoring-expert/references/application-profiling.md +334 -0
  3124. package/skills/monitoring-expert/references/capacity-planning.md +347 -0
  3125. package/skills/monitoring-expert/references/dashboards.md +129 -0
  3126. package/skills/monitoring-expert/references/opentelemetry.md +126 -0
  3127. package/skills/monitoring-expert/references/performance-testing.md +272 -0
  3128. package/skills/monitoring-expert/references/prometheus-metrics.md +139 -0
  3129. package/skills/monitoring-expert/references/structured-logging.md +145 -0
  3130. package/skills/moodle-external-api-development/SKILL.md +597 -0
  3131. package/skills/multi-agent-brainstorming/SKILL.md +256 -0
  3132. package/skills/neon-postgres/SKILL.md +56 -0
  3133. package/skills/nestjs-expert/SKILL.md +552 -0
  3134. package/skills/network-101/SKILL.md +342 -0
  3135. package/skills/nextjs-best-practices/SKILL.md +203 -0
  3136. package/skills/nextjs-developer/SKILL.md +97 -0
  3137. package/skills/nextjs-developer/references/app-router.md +314 -0
  3138. package/skills/nextjs-developer/references/data-fetching.md +485 -0
  3139. package/skills/nextjs-developer/references/deployment.md +548 -0
  3140. package/skills/nextjs-developer/references/server-actions.md +465 -0
  3141. package/skills/nextjs-developer/references/server-components.md +387 -0
  3142. package/skills/nextjs-supabase-auth/SKILL.md +56 -0
  3143. package/skills/nodejs-best-practices/SKILL.md +333 -0
  3144. package/skills/nosql-expert/SKILL.md +111 -0
  3145. package/skills/notebooklm/AUTHENTICATION.md +154 -0
  3146. package/skills/notebooklm/CHANGELOG.md +44 -0
  3147. package/skills/notebooklm/LICENSE +21 -0
  3148. package/skills/notebooklm/README.md +412 -0
  3149. package/skills/notebooklm/SKILL.md +269 -0
  3150. package/skills/notebooklm/images/example_notebookchat.png +0 -0
  3151. package/skills/notebooklm/references/api_reference.md +309 -0
  3152. package/skills/notebooklm/references/troubleshooting.md +376 -0
  3153. package/skills/notebooklm/references/usage_patterns.md +338 -0
  3154. package/skills/notebooklm/requirements.txt +10 -0
  3155. package/skills/notebooklm/scripts/__init__.py +81 -0
  3156. package/skills/notebooklm/scripts/ask_question.py +256 -0
  3157. package/skills/notebooklm/scripts/auth_manager.py +358 -0
  3158. package/skills/notebooklm/scripts/browser_session.py +255 -0
  3159. package/skills/notebooklm/scripts/browser_utils.py +107 -0
  3160. package/skills/notebooklm/scripts/cleanup_manager.py +302 -0
  3161. package/skills/notebooklm/scripts/config.py +44 -0
  3162. package/skills/notebooklm/scripts/notebook_manager.py +410 -0
  3163. package/skills/notebooklm/scripts/run.py +102 -0
  3164. package/skills/notebooklm/scripts/setup_environment.py +204 -0
  3165. package/skills/notebooklm-skill/AUTHENTICATION.md +154 -0
  3166. package/skills/notebooklm-skill/SKILL.md +269 -0
  3167. package/skills/notebooklm-skill/references/api_reference.md +309 -0
  3168. package/skills/notebooklm-skill/references/troubleshooting.md +376 -0
  3169. package/skills/notebooklm-skill/references/usage_patterns.md +338 -0
  3170. package/skills/notebooklm-skill/scripts/__init__.py +81 -0
  3171. package/skills/notebooklm-skill/scripts/ask_question.py +256 -0
  3172. package/skills/notebooklm-skill/scripts/auth_manager.py +358 -0
  3173. package/skills/notebooklm-skill/scripts/browser_session.py +255 -0
  3174. package/skills/notebooklm-skill/scripts/browser_utils.py +107 -0
  3175. package/skills/notebooklm-skill/scripts/cleanup_manager.py +302 -0
  3176. package/skills/notebooklm-skill/scripts/config.py +44 -0
  3177. package/skills/notebooklm-skill/scripts/notebook_manager.py +410 -0
  3178. package/skills/notebooklm-skill/scripts/run.py +102 -0
  3179. package/skills/notebooklm-skill/scripts/setup_environment.py +204 -0
  3180. package/skills/notion-template-business/SKILL.md +216 -0
  3181. package/skills/obsidian-clipper-template-creator/SKILL.md +64 -0
  3182. package/skills/obsidian-clipper-template-creator/assets/clipping-template.json +51 -0
  3183. package/skills/obsidian-clipper-template-creator/assets/recipe-template.json +48 -0
  3184. package/skills/obsidian-clipper-template-creator/references/analysis-workflow.md +79 -0
  3185. package/skills/obsidian-clipper-template-creator/references/bases-workflow.md +44 -0
  3186. package/skills/obsidian-clipper-template-creator/references/filters.md +51 -0
  3187. package/skills/obsidian-clipper-template-creator/references/json-schema.md +71 -0
  3188. package/skills/obsidian-clipper-template-creator/references/variables.md +59 -0
  3189. package/skills/onboarding-cro/SKILL.md +433 -0
  3190. package/skills/page-cro/SKILL.md +343 -0
  3191. package/skills/paid-ads/SKILL.md +551 -0
  3192. package/skills/pandas-pro/SKILL.md +96 -0
  3193. package/skills/pandas-pro/references/aggregation-groupby.md +548 -0
  3194. package/skills/pandas-pro/references/data-cleaning.md +503 -0
  3195. package/skills/pandas-pro/references/dataframe-operations.md +423 -0
  3196. package/skills/pandas-pro/references/merging-joining.md +599 -0
  3197. package/skills/pandas-pro/references/performance-optimization.md +600 -0
  3198. package/skills/parallel-agents/SKILL.md +175 -0
  3199. package/skills/payment-integration/README.md +185 -0
  3200. package/skills/payment-integration/SKILL.md +118 -0
  3201. package/skills/payment-integration/references/polar/benefits.md +396 -0
  3202. package/skills/payment-integration/references/polar/best-practices.md +482 -0
  3203. package/skills/payment-integration/references/polar/checkouts.md +266 -0
  3204. package/skills/payment-integration/references/polar/overview.md +184 -0
  3205. package/skills/payment-integration/references/polar/products.md +244 -0
  3206. package/skills/payment-integration/references/polar/sdk.md +436 -0
  3207. package/skills/payment-integration/references/polar/subscriptions.md +340 -0
  3208. package/skills/payment-integration/references/polar/webhooks.md +405 -0
  3209. package/skills/payment-integration/references/sepay/api.md +140 -0
  3210. package/skills/payment-integration/references/sepay/best-practices.md +337 -0
  3211. package/skills/payment-integration/references/sepay/overview.md +138 -0
  3212. package/skills/payment-integration/references/sepay/qr-codes.md +228 -0
  3213. package/skills/payment-integration/references/sepay/sdk.md +213 -0
  3214. package/skills/payment-integration/references/sepay/webhooks.md +208 -0
  3215. package/skills/payment-integration/scripts/.env.example +20 -0
  3216. package/skills/payment-integration/scripts/checkout-helper.js +244 -0
  3217. package/skills/payment-integration/scripts/package.json +17 -0
  3218. package/skills/payment-integration/scripts/polar-webhook-verify.js +202 -0
  3219. package/skills/payment-integration/scripts/sepay-webhook-verify.js +193 -0
  3220. package/skills/payment-integration/scripts/test-scripts.js +237 -0
  3221. package/skills/paywall-upgrade-cro/SKILL.md +570 -0
  3222. package/skills/pdf/SKILL.md +104 -0
  3223. package/skills/pdf-official/LICENSE.txt +30 -0
  3224. package/skills/pdf-official/SKILL.md +294 -0
  3225. package/skills/pdf-official/forms.md +205 -0
  3226. package/skills/pdf-official/reference.md +612 -0
  3227. package/skills/pdf-official/scripts/check_bounding_boxes.py +70 -0
  3228. package/skills/pdf-official/scripts/check_bounding_boxes_test.py +226 -0
  3229. package/skills/pdf-official/scripts/check_fillable_fields.py +12 -0
  3230. package/skills/pdf-official/scripts/convert_pdf_to_images.py +35 -0
  3231. package/skills/pdf-official/scripts/create_validation_image.py +41 -0
  3232. package/skills/pdf-official/scripts/extract_form_field_info.py +152 -0
  3233. package/skills/pdf-official/scripts/fill_fillable_fields.py +114 -0
  3234. package/skills/pdf-official/scripts/fill_pdf_form_with_annotations.py +108 -0
  3235. package/skills/pentest-checklist/SKILL.md +334 -0
  3236. package/skills/pentest-commands/SKILL.md +438 -0
  3237. package/skills/performance-profiling/SKILL.md +143 -0
  3238. package/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
  3239. package/skills/personal-tool-builder/SKILL.md +289 -0
  3240. package/skills/php-pro/SKILL.md +95 -0
  3241. package/skills/php-pro/references/async-patterns.md +415 -0
  3242. package/skills/php-pro/references/laravel-patterns.md +380 -0
  3243. package/skills/php-pro/references/modern-php-features.md +326 -0
  3244. package/skills/php-pro/references/symfony-patterns.md +474 -0
  3245. package/skills/php-pro/references/testing-quality.md +469 -0
  3246. package/skills/plaid-fintech/SKILL.md +50 -0
  3247. package/skills/plan-writing/SKILL.md +152 -0
  3248. package/skills/planning/SKILL.md +95 -0
  3249. package/skills/planning/references/codebase-understanding.md +61 -0
  3250. package/skills/planning/references/output-standards.md +87 -0
  3251. package/skills/planning/references/plan-organization.md +115 -0
  3252. package/skills/planning/references/research-phase.md +49 -0
  3253. package/skills/planning/references/solution-design.md +63 -0
  3254. package/skills/planning-with-files/SKILL.md +211 -0
  3255. package/skills/planning-with-files/examples.md +202 -0
  3256. package/skills/planning-with-files/reference.md +218 -0
  3257. package/skills/planning-with-files/scripts/check-complete.sh +44 -0
  3258. package/skills/planning-with-files/scripts/init-session.sh +120 -0
  3259. package/skills/planning-with-files/templates/findings.md +95 -0
  3260. package/skills/planning-with-files/templates/progress.md +114 -0
  3261. package/skills/planning-with-files/templates/task_plan.md +132 -0
  3262. package/skills/plans-kanban/SKILL.md +166 -0
  3263. package/skills/plans-kanban/assets/dashboard-template.html +119 -0
  3264. package/skills/plans-kanban/assets/dashboard.css +1594 -0
  3265. package/skills/plans-kanban/assets/dashboard.js +596 -0
  3266. package/skills/plans-kanban/assets/favicon.png +0 -0
  3267. package/skills/plans-kanban/package-lock.json +123 -0
  3268. package/skills/plans-kanban/package.json +13 -0
  3269. package/skills/plans-kanban/scripts/lib/dashboard-renderer.cjs +884 -0
  3270. package/skills/plans-kanban/scripts/lib/http-server.cjs +310 -0
  3271. package/skills/plans-kanban/scripts/lib/plan-metadata-extractor.cjs +489 -0
  3272. package/skills/plans-kanban/scripts/lib/plan-parser.cjs +175 -0
  3273. package/skills/plans-kanban/scripts/lib/plan-scanner.cjs +272 -0
  3274. package/skills/plans-kanban/scripts/lib/port-finder.cjs +48 -0
  3275. package/skills/plans-kanban/scripts/lib/process-mgr.cjs +128 -0
  3276. package/skills/plans-kanban/scripts/server.cjs +260 -0
  3277. package/skills/playwright-expert/SKILL.md +87 -0
  3278. package/skills/playwright-expert/references/api-mocking.md +143 -0
  3279. package/skills/playwright-expert/references/configuration.md +158 -0
  3280. package/skills/playwright-expert/references/debugging-flaky.md +153 -0
  3281. package/skills/playwright-expert/references/page-object-model.md +155 -0
  3282. package/skills/playwright-expert/references/selectors-locators.md +122 -0
  3283. package/skills/playwright-skill/API_REFERENCE.md +653 -0
  3284. package/skills/playwright-skill/SKILL.md +453 -0
  3285. package/skills/playwright-skill/lib/helpers.js +441 -0
  3286. package/skills/playwright-skill/package.json +26 -0
  3287. package/skills/playwright-skill/run.js +228 -0
  3288. package/skills/podcast-generation/SKILL.md +123 -0
  3289. package/skills/podcast-generation/references/architecture.md +87 -0
  3290. package/skills/podcast-generation/references/code-examples.md +189 -0
  3291. package/skills/podcast-generation/scripts/pcm_to_wav.py +73 -0
  3292. package/skills/popup-cro/SKILL.md +346 -0
  3293. package/skills/postgres-best-practices/AGENTS.md +1490 -0
  3294. package/skills/postgres-best-practices/README.md +119 -0
  3295. package/skills/postgres-best-practices/SKILL.md +57 -0
  3296. package/skills/postgres-best-practices/metadata.json +13 -0
  3297. package/skills/postgres-best-practices/rules/_contributing.md +171 -0
  3298. package/skills/postgres-best-practices/rules/_sections.md +39 -0
  3299. package/skills/postgres-best-practices/rules/_template.md +34 -0
  3300. package/skills/postgres-best-practices/rules/advanced-full-text-search.md +55 -0
  3301. package/skills/postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
  3302. package/skills/postgres-best-practices/rules/conn-idle-timeout.md +46 -0
  3303. package/skills/postgres-best-practices/rules/conn-limits.md +44 -0
  3304. package/skills/postgres-best-practices/rules/conn-pooling.md +41 -0
  3305. package/skills/postgres-best-practices/rules/conn-prepared-statements.md +46 -0
  3306. package/skills/postgres-best-practices/rules/data-batch-inserts.md +54 -0
  3307. package/skills/postgres-best-practices/rules/data-n-plus-one.md +53 -0
  3308. package/skills/postgres-best-practices/rules/data-pagination.md +50 -0
  3309. package/skills/postgres-best-practices/rules/data-upsert.md +50 -0
  3310. package/skills/postgres-best-practices/rules/lock-advisory.md +56 -0
  3311. package/skills/postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
  3312. package/skills/postgres-best-practices/rules/lock-short-transactions.md +50 -0
  3313. package/skills/postgres-best-practices/rules/lock-skip-locked.md +54 -0
  3314. package/skills/postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
  3315. package/skills/postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
  3316. package/skills/postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
  3317. package/skills/postgres-best-practices/rules/query-composite-indexes.md +44 -0
  3318. package/skills/postgres-best-practices/rules/query-covering-indexes.md +40 -0
  3319. package/skills/postgres-best-practices/rules/query-index-types.md +45 -0
  3320. package/skills/postgres-best-practices/rules/query-missing-indexes.md +43 -0
  3321. package/skills/postgres-best-practices/rules/query-partial-indexes.md +45 -0
  3322. package/skills/postgres-best-practices/rules/schema-data-types.md +46 -0
  3323. package/skills/postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
  3324. package/skills/postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
  3325. package/skills/postgres-best-practices/rules/schema-partitioning.md +55 -0
  3326. package/skills/postgres-best-practices/rules/schema-primary-keys.md +61 -0
  3327. package/skills/postgres-best-practices/rules/security-privileges.md +54 -0
  3328. package/skills/postgres-best-practices/rules/security-rls-basics.md +50 -0
  3329. package/skills/postgres-best-practices/rules/security-rls-performance.md +57 -0
  3330. package/skills/postgres-pro/SKILL.md +98 -0
  3331. package/skills/postgres-pro/references/extensions.md +407 -0
  3332. package/skills/postgres-pro/references/jsonb.md +324 -0
  3333. package/skills/postgres-pro/references/maintenance.md +484 -0
  3334. package/skills/postgres-pro/references/performance.md +268 -0
  3335. package/skills/postgres-pro/references/replication.md +449 -0
  3336. package/skills/powershell-windows/SKILL.md +167 -0
  3337. package/skills/pptx/SKILL.md +114 -0
  3338. package/skills/pptx-official/LICENSE.txt +30 -0
  3339. package/skills/pptx-official/SKILL.md +484 -0
  3340. package/skills/pptx-official/html2pptx.md +625 -0
  3341. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  3342. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  3343. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  3344. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  3345. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  3346. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  3347. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  3348. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  3349. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  3350. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  3351. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  3352. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  3353. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  3354. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  3355. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  3356. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  3357. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  3358. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  3359. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  3360. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  3361. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  3362. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  3363. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  3364. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  3365. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  3366. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  3367. package/skills/pptx-official/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  3368. package/skills/pptx-official/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  3369. package/skills/pptx-official/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  3370. package/skills/pptx-official/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  3371. package/skills/pptx-official/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  3372. package/skills/pptx-official/ooxml/schemas/mce/mc.xsd +75 -0
  3373. package/skills/pptx-official/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  3374. package/skills/pptx-official/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  3375. package/skills/pptx-official/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  3376. package/skills/pptx-official/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  3377. package/skills/pptx-official/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  3378. package/skills/pptx-official/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  3379. package/skills/pptx-official/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  3380. package/skills/pptx-official/ooxml/scripts/pack.py +159 -0
  3381. package/skills/pptx-official/ooxml/scripts/unpack.py +29 -0
  3382. package/skills/pptx-official/ooxml/scripts/validate.py +69 -0
  3383. package/skills/pptx-official/ooxml/scripts/validation/__init__.py +15 -0
  3384. package/skills/pptx-official/ooxml/scripts/validation/base.py +951 -0
  3385. package/skills/pptx-official/ooxml/scripts/validation/docx.py +274 -0
  3386. package/skills/pptx-official/ooxml/scripts/validation/pptx.py +315 -0
  3387. package/skills/pptx-official/ooxml/scripts/validation/redlining.py +279 -0
  3388. package/skills/pptx-official/ooxml.md +427 -0
  3389. package/skills/pptx-official/scripts/html2pptx.js +979 -0
  3390. package/skills/pptx-official/scripts/inventory.py +1020 -0
  3391. package/skills/pptx-official/scripts/rearrange.py +231 -0
  3392. package/skills/pptx-official/scripts/replace.py +385 -0
  3393. package/skills/pptx-official/scripts/thumbnail.py +450 -0
  3394. package/skills/pricing-strategy/SKILL.md +356 -0
  3395. package/skills/prisma-expert/SKILL.md +355 -0
  3396. package/skills/privilege-escalation-methods/SKILL.md +333 -0
  3397. package/skills/problem-solving/SKILL.md +96 -0
  3398. package/skills/problem-solving/references/attribution.md +69 -0
  3399. package/skills/problem-solving/references/collision-zone-thinking.md +79 -0
  3400. package/skills/problem-solving/references/inversion-exercise.md +91 -0
  3401. package/skills/problem-solving/references/meta-pattern-recognition.md +87 -0
  3402. package/skills/problem-solving/references/scale-game.md +95 -0
  3403. package/skills/problem-solving/references/simplification-cascades.md +80 -0
  3404. package/skills/problem-solving/references/when-stuck.md +72 -0
  3405. package/skills/product-manager-toolkit/SKILL.md +351 -0
  3406. package/skills/product-manager-toolkit/references/prd_templates.md +317 -0
  3407. package/skills/product-manager-toolkit/scripts/customer_interview_analyzer.py +441 -0
  3408. package/skills/product-manager-toolkit/scripts/rice_prioritizer.py +296 -0
  3409. package/skills/product-strategist/SKILL.md +26 -0
  3410. package/skills/product-strategist/scripts/okr_cascade_generator.py +478 -0
  3411. package/skills/production-code-audit/SKILL.md +540 -0
  3412. package/skills/programmatic-seo/SKILL.md +351 -0
  3413. package/skills/prompt-caching/SKILL.md +61 -0
  3414. package/skills/prompt-engineer/SKILL.md +93 -0
  3415. package/skills/prompt-engineering/SKILL.md +171 -0
  3416. package/skills/prompt-library/SKILL.md +322 -0
  3417. package/skills/pydantic-models/SKILL.md +58 -0
  3418. package/skills/pydantic-models/assets/template.py +124 -0
  3419. package/skills/python-development/SKILL.md +139 -0
  3420. package/skills/python-patterns/SKILL.md +441 -0
  3421. package/skills/python-pro/SKILL.md +92 -0
  3422. package/skills/python-pro/references/async-patterns.md +359 -0
  3423. package/skills/python-pro/references/packaging.md +463 -0
  3424. package/skills/python-pro/references/standard-library.md +381 -0
  3425. package/skills/python-pro/references/testing.md +407 -0
  3426. package/skills/python-pro/references/type-system.md +293 -0
  3427. package/skills/qa-regression/SKILL.md +337 -0
  3428. package/skills/raffle-winner-picker/SKILL.md +159 -0
  3429. package/skills/rag-architect/SKILL.md +100 -0
  3430. package/skills/rag-architect/references/chunking-strategies.md +881 -0
  3431. package/skills/rag-architect/references/embedding-models.md +564 -0
  3432. package/skills/rag-architect/references/rag-evaluation.md +836 -0
  3433. package/skills/rag-architect/references/retrieval-optimization.md +798 -0
  3434. package/skills/rag-architect/references/vector-databases.md +592 -0
  3435. package/skills/rag-engineer/SKILL.md +90 -0
  3436. package/skills/rag-implementation/SKILL.md +63 -0
  3437. package/skills/rails-expert/SKILL.md +97 -0
  3438. package/skills/rails-expert/references/active-record.md +247 -0
  3439. package/skills/rails-expert/references/api-development.md +404 -0
  3440. package/skills/rails-expert/references/background-jobs.md +275 -0
  3441. package/skills/rails-expert/references/hotwire-turbo.md +231 -0
  3442. package/skills/rails-expert/references/rspec-testing.md +370 -0
  3443. package/skills/react-best-practices/AGENTS.md +2249 -0
  3444. package/skills/react-best-practices/README.md +123 -0
  3445. package/skills/react-best-practices/SKILL.md +121 -0
  3446. package/skills/react-best-practices/metadata.json +15 -0
  3447. package/skills/react-best-practices/rules/_sections.md +46 -0
  3448. package/skills/react-best-practices/rules/_template.md +28 -0
  3449. package/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  3450. package/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  3451. package/skills/react-best-practices/rules/async-api-routes.md +38 -0
  3452. package/skills/react-best-practices/rules/async-defer-await.md +80 -0
  3453. package/skills/react-best-practices/rules/async-dependencies.md +36 -0
  3454. package/skills/react-best-practices/rules/async-parallel.md +28 -0
  3455. package/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  3456. package/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  3457. package/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  3458. package/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  3459. package/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  3460. package/skills/react-best-practices/rules/bundle-preload.md +50 -0
  3461. package/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  3462. package/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  3463. package/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  3464. package/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  3465. package/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  3466. package/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  3467. package/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  3468. package/skills/react-best-practices/rules/js-early-exit.md +50 -0
  3469. package/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  3470. package/skills/react-best-practices/rules/js-index-maps.md +37 -0
  3471. package/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  3472. package/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  3473. package/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  3474. package/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  3475. package/skills/react-best-practices/rules/rendering-activity.md +26 -0
  3476. package/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  3477. package/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  3478. package/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  3479. package/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  3480. package/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  3481. package/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  3482. package/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  3483. package/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  3484. package/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  3485. package/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  3486. package/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  3487. package/skills/react-best-practices/rules/rerender-memo.md +44 -0
  3488. package/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  3489. package/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  3490. package/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  3491. package/skills/react-best-practices/rules/server-cache-react.md +26 -0
  3492. package/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  3493. package/skills/react-best-practices/rules/server-serialization.md +38 -0
  3494. package/skills/react-expert/SKILL.md +98 -0
  3495. package/skills/react-expert/references/hooks-patterns.md +165 -0
  3496. package/skills/react-expert/references/migration-class-to-modern.md +1122 -0
  3497. package/skills/react-expert/references/performance.md +171 -0
  3498. package/skills/react-expert/references/react-19-features.md +177 -0
  3499. package/skills/react-expert/references/server-components.md +146 -0
  3500. package/skills/react-expert/references/state-management.md +174 -0
  3501. package/skills/react-expert/references/testing-react.md +177 -0
  3502. package/skills/react-flow-node/SKILL.md +66 -0
  3503. package/skills/react-flow-node/assets/template.tsx +108 -0
  3504. package/skills/react-flow-node/assets/types.template.ts +34 -0
  3505. package/skills/react-native-expert/SKILL.md +88 -0
  3506. package/skills/react-native-expert/references/expo-router.md +190 -0
  3507. package/skills/react-native-expert/references/list-optimization.md +207 -0
  3508. package/skills/react-native-expert/references/platform-handling.md +191 -0
  3509. package/skills/react-native-expert/references/project-structure.md +174 -0
  3510. package/skills/react-native-expert/references/storage-hooks.md +176 -0
  3511. package/skills/react-patterns/SKILL.md +198 -0
  3512. package/skills/react-ui-patterns/SKILL.md +289 -0
  3513. package/skills/receiving-code-review/SKILL.md +213 -0
  3514. package/skills/red-team-tactics/SKILL.md +199 -0
  3515. package/skills/red-team-tools/SKILL.md +310 -0
  3516. package/skills/referral-program/SKILL.md +602 -0
  3517. package/skills/remotion-best-practices/SKILL.md +45 -0
  3518. package/skills/remotion-best-practices/rules/3d.md +86 -0
  3519. package/skills/remotion-best-practices/rules/animations.md +29 -0
  3520. package/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
  3521. package/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
  3522. package/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +108 -0
  3523. package/skills/remotion-best-practices/rules/assets.md +78 -0
  3524. package/skills/remotion-best-practices/rules/audio.md +172 -0
  3525. package/skills/remotion-best-practices/rules/calculate-metadata.md +104 -0
  3526. package/skills/remotion-best-practices/rules/can-decode.md +75 -0
  3527. package/skills/remotion-best-practices/rules/charts.md +58 -0
  3528. package/skills/remotion-best-practices/rules/compositions.md +146 -0
  3529. package/skills/remotion-best-practices/rules/display-captions.md +126 -0
  3530. package/skills/remotion-best-practices/rules/extract-frames.md +229 -0
  3531. package/skills/remotion-best-practices/rules/fonts.md +152 -0
  3532. package/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
  3533. package/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
  3534. package/skills/remotion-best-practices/rules/get-video-duration.md +58 -0
  3535. package/skills/remotion-best-practices/rules/gifs.md +138 -0
  3536. package/skills/remotion-best-practices/rules/images.md +130 -0
  3537. package/skills/remotion-best-practices/rules/import-srt-captions.md +67 -0
  3538. package/skills/remotion-best-practices/rules/lottie.md +68 -0
  3539. package/skills/remotion-best-practices/rules/measuring-dom-nodes.md +35 -0
  3540. package/skills/remotion-best-practices/rules/measuring-text.md +143 -0
  3541. package/skills/remotion-best-practices/rules/sequencing.md +106 -0
  3542. package/skills/remotion-best-practices/rules/tailwind.md +11 -0
  3543. package/skills/remotion-best-practices/rules/text-animations.md +20 -0
  3544. package/skills/remotion-best-practices/rules/timing.md +179 -0
  3545. package/skills/remotion-best-practices/rules/transcribe-captions.md +19 -0
  3546. package/skills/remotion-best-practices/rules/transitions.md +122 -0
  3547. package/skills/remotion-best-practices/rules/trimming.md +53 -0
  3548. package/skills/remotion-best-practices/rules/videos.md +171 -0
  3549. package/skills/repomix/SKILL.md +275 -0
  3550. package/skills/repomix/references/configuration.md +211 -0
  3551. package/skills/repomix/references/usage-patterns.md +291 -0
  3552. package/skills/repomix/scripts/.coverage +0 -0
  3553. package/skills/repomix/scripts/README.md +179 -0
  3554. package/skills/repomix/scripts/repomix_batch.py +455 -0
  3555. package/skills/repomix/scripts/repos.example.json +15 -0
  3556. package/skills/repomix/scripts/requirements.txt +15 -0
  3557. package/skills/repomix/scripts/tests/test_repomix_batch.py +531 -0
  3558. package/skills/requesting-code-review/SKILL.md +105 -0
  3559. package/skills/requesting-code-review/code-reviewer.md +146 -0
  3560. package/skills/research/SKILL.md +191 -0
  3561. package/skills/research-engineer/SKILL.md +135 -0
  3562. package/skills/rust-engineer/SKILL.md +96 -0
  3563. package/skills/rust-engineer/references/async.md +461 -0
  3564. package/skills/rust-engineer/references/error-handling.md +337 -0
  3565. package/skills/rust-engineer/references/ownership.md +281 -0
  3566. package/skills/rust-engineer/references/testing.md +473 -0
  3567. package/skills/rust-engineer/references/traits.md +416 -0
  3568. package/skills/salesforce-developer/SKILL.md +105 -0
  3569. package/skills/salesforce-developer/references/apex-development.md +789 -0
  3570. package/skills/salesforce-developer/references/deployment-devops.md +863 -0
  3571. package/skills/salesforce-developer/references/integration-patterns.md +951 -0
  3572. package/skills/salesforce-developer/references/lightning-web-components.md +908 -0
  3573. package/skills/salesforce-developer/references/soql-sosl.md +683 -0
  3574. package/skills/salesforce-development/SKILL.md +51 -0
  3575. package/skills/scanning-tools/SKILL.md +589 -0
  3576. package/skills/schema-markup/SKILL.md +360 -0
  3577. package/skills/scroll-experience/SKILL.md +263 -0
  3578. package/skills/secure-code-guardian/SKILL.md +93 -0
  3579. package/skills/secure-code-guardian/references/authentication.md +139 -0
  3580. package/skills/secure-code-guardian/references/input-validation.md +149 -0
  3581. package/skills/secure-code-guardian/references/owasp-prevention.md +138 -0
  3582. package/skills/secure-code-guardian/references/security-headers.md +136 -0
  3583. package/skills/secure-code-guardian/references/xss-csrf.md +160 -0
  3584. package/skills/security-reviewer/SKILL.md +94 -0
  3585. package/skills/security-reviewer/references/infrastructure-security.md +271 -0
  3586. package/skills/security-reviewer/references/penetration-testing.md +271 -0
  3587. package/skills/security-reviewer/references/report-template.md +173 -0
  3588. package/skills/security-reviewer/references/sast-tools.md +120 -0
  3589. package/skills/security-reviewer/references/secret-scanning.md +128 -0
  3590. package/skills/security-reviewer/references/vulnerability-patterns.md +155 -0
  3591. package/skills/segment-cdp/SKILL.md +50 -0
  3592. package/skills/senior-architect/SKILL.md +209 -0
  3593. package/skills/senior-architect/references/architecture_patterns.md +103 -0
  3594. package/skills/senior-architect/references/system_design_workflows.md +103 -0
  3595. package/skills/senior-architect/references/tech_decision_guide.md +103 -0
  3596. package/skills/senior-architect/scripts/architecture_diagram_generator.py +114 -0
  3597. package/skills/senior-architect/scripts/dependency_analyzer.py +114 -0
  3598. package/skills/senior-architect/scripts/project_architect.py +114 -0
  3599. package/skills/senior-backend/SKILL.md +209 -0
  3600. package/skills/senior-backend/references/api_design_patterns.md +103 -0
  3601. package/skills/senior-backend/references/backend_security_practices.md +103 -0
  3602. package/skills/senior-backend/references/database_optimization_guide.md +103 -0
  3603. package/skills/senior-backend/scripts/api_load_tester.py +114 -0
  3604. package/skills/senior-backend/scripts/api_scaffolder.py +114 -0
  3605. package/skills/senior-backend/scripts/database_migration_tool.py +114 -0
  3606. package/skills/senior-computer-vision/SKILL.md +226 -0
  3607. package/skills/senior-computer-vision/references/computer_vision_architectures.md +80 -0
  3608. package/skills/senior-computer-vision/references/object_detection_optimization.md +80 -0
  3609. package/skills/senior-computer-vision/references/production_vision_systems.md +80 -0
  3610. package/skills/senior-computer-vision/scripts/dataset_pipeline_builder.py +100 -0
  3611. package/skills/senior-computer-vision/scripts/inference_optimizer.py +100 -0
  3612. package/skills/senior-computer-vision/scripts/vision_model_trainer.py +100 -0
  3613. package/skills/senior-data-engineer/SKILL.md +226 -0
  3614. package/skills/senior-data-engineer/references/data_modeling_patterns.md +80 -0
  3615. package/skills/senior-data-engineer/references/data_pipeline_architecture.md +80 -0
  3616. package/skills/senior-data-engineer/references/dataops_best_practices.md +80 -0
  3617. package/skills/senior-data-engineer/scripts/data_quality_validator.py +100 -0
  3618. package/skills/senior-data-engineer/scripts/etl_performance_optimizer.py +100 -0
  3619. package/skills/senior-data-engineer/scripts/pipeline_orchestrator.py +100 -0
  3620. package/skills/senior-data-scientist/SKILL.md +226 -0
  3621. package/skills/senior-data-scientist/references/experiment_design_frameworks.md +80 -0
  3622. package/skills/senior-data-scientist/references/feature_engineering_patterns.md +80 -0
  3623. package/skills/senior-data-scientist/references/statistical_methods_advanced.md +80 -0
  3624. package/skills/senior-data-scientist/scripts/experiment_designer.py +100 -0
  3625. package/skills/senior-data-scientist/scripts/feature_engineering_pipeline.py +100 -0
  3626. package/skills/senior-data-scientist/scripts/model_evaluation_suite.py +100 -0
  3627. package/skills/senior-devops/SKILL.md +209 -0
  3628. package/skills/senior-devops/references/cicd_pipeline_guide.md +103 -0
  3629. package/skills/senior-devops/references/deployment_strategies.md +103 -0
  3630. package/skills/senior-devops/references/infrastructure_as_code.md +103 -0
  3631. package/skills/senior-devops/scripts/deployment_manager.py +114 -0
  3632. package/skills/senior-devops/scripts/pipeline_generator.py +114 -0
  3633. package/skills/senior-devops/scripts/terraform_scaffolder.py +114 -0
  3634. package/skills/senior-frontend/SKILL.md +209 -0
  3635. package/skills/senior-frontend/references/frontend_best_practices.md +103 -0
  3636. package/skills/senior-frontend/references/nextjs_optimization_guide.md +103 -0
  3637. package/skills/senior-frontend/references/react_patterns.md +103 -0
  3638. package/skills/senior-frontend/scripts/bundle_analyzer.py +114 -0
  3639. package/skills/senior-frontend/scripts/component_generator.py +114 -0
  3640. package/skills/senior-frontend/scripts/frontend_scaffolder.py +114 -0
  3641. package/skills/senior-fullstack/SKILL.md +209 -0
  3642. package/skills/senior-fullstack/references/architecture_patterns.md +103 -0
  3643. package/skills/senior-fullstack/references/development_workflows.md +103 -0
  3644. package/skills/senior-fullstack/references/tech_stack_guide.md +103 -0
  3645. package/skills/senior-fullstack/scripts/code_quality_analyzer.py +114 -0
  3646. package/skills/senior-fullstack/scripts/fullstack_scaffolder.py +114 -0
  3647. package/skills/senior-fullstack/scripts/project_scaffolder.py +114 -0
  3648. package/skills/senior-ml-engineer/SKILL.md +226 -0
  3649. package/skills/senior-ml-engineer/references/llm_integration_guide.md +80 -0
  3650. package/skills/senior-ml-engineer/references/mlops_production_patterns.md +80 -0
  3651. package/skills/senior-ml-engineer/references/rag_system_architecture.md +80 -0
  3652. package/skills/senior-ml-engineer/scripts/ml_monitoring_suite.py +100 -0
  3653. package/skills/senior-ml-engineer/scripts/model_deployment_pipeline.py +100 -0
  3654. package/skills/senior-ml-engineer/scripts/rag_system_builder.py +100 -0
  3655. package/skills/senior-prompt-engineer/SKILL.md +226 -0
  3656. package/skills/senior-prompt-engineer/references/agentic_system_design.md +80 -0
  3657. package/skills/senior-prompt-engineer/references/llm_evaluation_frameworks.md +80 -0
  3658. package/skills/senior-prompt-engineer/references/prompt_engineering_patterns.md +80 -0
  3659. package/skills/senior-prompt-engineer/scripts/agent_orchestrator.py +100 -0
  3660. package/skills/senior-prompt-engineer/scripts/prompt_optimizer.py +100 -0
  3661. package/skills/senior-prompt-engineer/scripts/rag_evaluator.py +100 -0
  3662. package/skills/senior-qa/SKILL.md +209 -0
  3663. package/skills/senior-qa/references/qa_best_practices.md +103 -0
  3664. package/skills/senior-qa/references/test_automation_patterns.md +103 -0
  3665. package/skills/senior-qa/references/testing_strategies.md +103 -0
  3666. package/skills/senior-qa/scripts/coverage_analyzer.py +114 -0
  3667. package/skills/senior-qa/scripts/e2e_test_scaffolder.py +114 -0
  3668. package/skills/senior-qa/scripts/test_suite_generator.py +114 -0
  3669. package/skills/senior-secops/SKILL.md +209 -0
  3670. package/skills/senior-secops/references/compliance_requirements.md +103 -0
  3671. package/skills/senior-secops/references/security_standards.md +103 -0
  3672. package/skills/senior-secops/references/vulnerability_management_guide.md +103 -0
  3673. package/skills/senior-secops/scripts/compliance_checker.py +114 -0
  3674. package/skills/senior-secops/scripts/security_scanner.py +114 -0
  3675. package/skills/senior-secops/scripts/vulnerability_assessor.py +114 -0
  3676. package/skills/senior-security/SKILL.md +209 -0
  3677. package/skills/senior-security/references/cryptography_implementation.md +103 -0
  3678. package/skills/senior-security/references/penetration_testing_guide.md +103 -0
  3679. package/skills/senior-security/references/security_architecture_patterns.md +103 -0
  3680. package/skills/senior-security/scripts/pentest_automator.py +114 -0
  3681. package/skills/senior-security/scripts/security_auditor.py +114 -0
  3682. package/skills/senior-security/scripts/threat_modeler.py +114 -0
  3683. package/skills/seo-audit/SKILL.md +487 -0
  3684. package/skills/seo-fundamentals/SKILL.md +173 -0
  3685. package/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
  3686. package/skills/sequential-thinking/.env.example +8 -0
  3687. package/skills/sequential-thinking/README.md +189 -0
  3688. package/skills/sequential-thinking/SKILL.md +94 -0
  3689. package/skills/sequential-thinking/package.json +30 -0
  3690. package/skills/sequential-thinking/references/advanced-strategies.md +79 -0
  3691. package/skills/sequential-thinking/references/advanced-techniques.md +76 -0
  3692. package/skills/sequential-thinking/references/core-patterns.md +95 -0
  3693. package/skills/sequential-thinking/references/examples-api.md +88 -0
  3694. package/skills/sequential-thinking/references/examples-architecture.md +94 -0
  3695. package/skills/sequential-thinking/references/examples-debug.md +90 -0
  3696. package/skills/sequential-thinking/scripts/format-thought.js +159 -0
  3697. package/skills/sequential-thinking/scripts/process-thought.js +236 -0
  3698. package/skills/sequential-thinking/tests/format-thought.test.js +133 -0
  3699. package/skills/sequential-thinking/tests/process-thought.test.js +215 -0
  3700. package/skills/server-management/SKILL.md +161 -0
  3701. package/skills/shodan-reconnaissance/SKILL.md +503 -0
  3702. package/skills/shopify-apps/SKILL.md +42 -0
  3703. package/skills/shopify-development/README.md +60 -0
  3704. package/skills/shopify-development/SKILL.md +366 -0
  3705. package/skills/shopify-development/references/app-development.md +578 -0
  3706. package/skills/shopify-development/references/extensions.md +555 -0
  3707. package/skills/shopify-development/references/themes.md +498 -0
  3708. package/skills/shopify-development/scripts/requirements.txt +19 -0
  3709. package/skills/shopify-development/scripts/shopify_graphql.py +428 -0
  3710. package/skills/shopify-development/scripts/shopify_init.py +441 -0
  3711. package/skills/shopify-development/scripts/tests/test_shopify_init.py +379 -0
  3712. package/skills/shopify-expert/SKILL.md +102 -0
  3713. package/skills/shopify-expert/references/app-development.md +897 -0
  3714. package/skills/shopify-expert/references/checkout-customization.md +877 -0
  3715. package/skills/shopify-expert/references/liquid-templating.md +693 -0
  3716. package/skills/shopify-expert/references/performance-optimization.md +725 -0
  3717. package/skills/shopify-expert/references/storefront-api.md +939 -0
  3718. package/skills/signup-flow-cro/SKILL.md +355 -0
  3719. package/skills/skill-creator/LICENSE.txt +202 -0
  3720. package/skills/skill-creator/SKILL.md +356 -0
  3721. package/skills/skill-creator/references/output-patterns.md +82 -0
  3722. package/skills/skill-creator/references/workflows.md +28 -0
  3723. package/skills/skill-creator/scripts/init_skill.py +303 -0
  3724. package/skills/skill-creator/scripts/package_skill.py +110 -0
  3725. package/skills/skill-creator/scripts/quick_validate.py +95 -0
  3726. package/skills/skill-developer/ADVANCED.md +197 -0
  3727. package/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
  3728. package/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
  3729. package/skills/skill-developer/SKILL.md +426 -0
  3730. package/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
  3731. package/skills/skill-developer/TRIGGER_TYPES.md +305 -0
  3732. package/skills/skill-developer/TROUBLESHOOTING.md +514 -0
  3733. package/skills/skill-share/SKILL.md +80 -0
  3734. package/skills/slack-bot-builder/SKILL.md +264 -0
  3735. package/skills/slack-gif-creator/LICENSE.txt +202 -0
  3736. package/skills/slack-gif-creator/SKILL.md +254 -0
  3737. package/skills/slack-gif-creator/core/easing.py +234 -0
  3738. package/skills/slack-gif-creator/core/frame_composer.py +176 -0
  3739. package/skills/slack-gif-creator/core/gif_builder.py +269 -0
  3740. package/skills/slack-gif-creator/core/validators.py +136 -0
  3741. package/skills/slack-gif-creator/requirements.txt +4 -0
  3742. package/skills/smtp-penetration-testing/SKILL.md +500 -0
  3743. package/skills/social-content/SKILL.md +807 -0
  3744. package/skills/software-architecture/SKILL.md +75 -0
  3745. package/skills/spark-engineer/SKILL.md +100 -0
  3746. package/skills/spark-engineer/references/partitioning-caching.md +546 -0
  3747. package/skills/spark-engineer/references/performance-tuning.md +547 -0
  3748. package/skills/spark-engineer/references/rdd-operations.md +602 -0
  3749. package/skills/spark-engineer/references/spark-sql-dataframes.md +477 -0
  3750. package/skills/spark-engineer/references/streaming-patterns.md +789 -0
  3751. package/skills/spec-miner/SKILL.md +88 -0
  3752. package/skills/spec-miner/references/analysis-checklist.md +68 -0
  3753. package/skills/spec-miner/references/analysis-process.md +73 -0
  3754. package/skills/spec-miner/references/ears-format.md +89 -0
  3755. package/skills/spec-miner/references/specification-template.md +103 -0
  3756. package/skills/spring-boot-engineer/SKILL.md +104 -0
  3757. package/skills/spring-boot-engineer/references/cloud.md +501 -0
  3758. package/skills/spring-boot-engineer/references/data.md +384 -0
  3759. package/skills/spring-boot-engineer/references/security.md +462 -0
  3760. package/skills/spring-boot-engineer/references/testing.md +548 -0
  3761. package/skills/spring-boot-engineer/references/web.md +298 -0
  3762. package/skills/sql-injection-testing/SKILL.md +448 -0
  3763. package/skills/sql-pro/SKILL.md +97 -0
  3764. package/skills/sql-pro/references/database-design.md +405 -0
  3765. package/skills/sql-pro/references/dialect-differences.md +422 -0
  3766. package/skills/sql-pro/references/optimization.md +387 -0
  3767. package/skills/sql-pro/references/query-patterns.md +288 -0
  3768. package/skills/sql-pro/references/window-functions.md +331 -0
  3769. package/skills/sqlmap-database-pentesting/SKILL.md +400 -0
  3770. package/skills/sre-engineer/SKILL.md +98 -0
  3771. package/skills/sre-engineer/references/automation-toil.md +495 -0
  3772. package/skills/sre-engineer/references/error-budget-policy.md +337 -0
  3773. package/skills/sre-engineer/references/incident-chaos.md +578 -0
  3774. package/skills/sre-engineer/references/monitoring-alerting.md +427 -0
  3775. package/skills/sre-engineer/references/slo-sli-management.md +241 -0
  3776. package/skills/ssh-penetration-testing/SKILL.md +488 -0
  3777. package/skills/stripe-integration/SKILL.md +69 -0
  3778. package/skills/subagent-driven-development/SKILL.md +240 -0
  3779. package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
  3780. package/skills/subagent-driven-development/implementer-prompt.md +78 -0
  3781. package/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  3782. package/skills/swift-expert/SKILL.md +94 -0
  3783. package/skills/swift-expert/references/async-concurrency.md +363 -0
  3784. package/skills/swift-expert/references/memory-performance.md +380 -0
  3785. package/skills/swift-expert/references/protocol-oriented.md +357 -0
  3786. package/skills/swift-expert/references/swiftui-patterns.md +294 -0
  3787. package/skills/swift-expert/references/testing-patterns.md +402 -0
  3788. package/skills/systematic-debugging/CREATION-LOG.md +119 -0
  3789. package/skills/systematic-debugging/SKILL.md +296 -0
  3790. package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
  3791. package/skills/systematic-debugging/condition-based-waiting.md +115 -0
  3792. package/skills/systematic-debugging/defense-in-depth.md +122 -0
  3793. package/skills/systematic-debugging/find-polluter.sh +63 -0
  3794. package/skills/systematic-debugging/root-cause-tracing.md +169 -0
  3795. package/skills/systematic-debugging/test-academic.md +14 -0
  3796. package/skills/systematic-debugging/test-pressure-1.md +58 -0
  3797. package/skills/systematic-debugging/test-pressure-2.md +68 -0
  3798. package/skills/systematic-debugging/test-pressure-3.md +69 -0
  3799. package/skills/tailwind-patterns/SKILL.md +269 -0
  3800. package/skills/tavily-web/SKILL.md +36 -0
  3801. package/skills/tdd-workflow/SKILL.md +149 -0
  3802. package/skills/telegram-bot-builder/SKILL.md +254 -0
  3803. package/skills/telegram-mini-app/SKILL.md +279 -0
  3804. package/skills/template-skill/SKILL.md +6 -0
  3805. package/skills/terraform-engineer/SKILL.md +97 -0
  3806. package/skills/terraform-engineer/references/best-practices.md +586 -0
  3807. package/skills/terraform-engineer/references/module-patterns.md +300 -0
  3808. package/skills/terraform-engineer/references/providers.md +455 -0
  3809. package/skills/terraform-engineer/references/state-management.md +374 -0
  3810. package/skills/terraform-engineer/references/testing.md +489 -0
  3811. package/skills/test-driven-development/SKILL.md +371 -0
  3812. package/skills/test-driven-development/testing-anti-patterns.md +299 -0
  3813. package/skills/test-fixing/SKILL.md +119 -0
  3814. package/skills/test-master/SKILL.md +104 -0
  3815. package/skills/test-master/references/automation-frameworks.md +297 -0
  3816. package/skills/test-master/references/e2e-testing.md +131 -0
  3817. package/skills/test-master/references/integration-testing.md +123 -0
  3818. package/skills/test-master/references/performance-testing.md +121 -0
  3819. package/skills/test-master/references/qa-methodology.md +250 -0
  3820. package/skills/test-master/references/security-testing.md +130 -0
  3821. package/skills/test-master/references/tdd-iron-laws.md +177 -0
  3822. package/skills/test-master/references/test-reports.md +107 -0
  3823. package/skills/test-master/references/testing-anti-patterns.md +234 -0
  3824. package/skills/test-master/references/unit-testing.md +116 -0
  3825. package/skills/testing-patterns/SKILL.md +259 -0
  3826. package/skills/theme-factory/LICENSE.txt +202 -0
  3827. package/skills/theme-factory/SKILL.md +59 -0
  3828. package/skills/theme-factory/theme-showcase.pdf +0 -0
  3829. package/skills/theme-factory/themes/arctic-frost.md +19 -0
  3830. package/skills/theme-factory/themes/botanical-garden.md +19 -0
  3831. package/skills/theme-factory/themes/desert-rose.md +19 -0
  3832. package/skills/theme-factory/themes/forest-canopy.md +19 -0
  3833. package/skills/theme-factory/themes/golden-hour.md +19 -0
  3834. package/skills/theme-factory/themes/midnight-galaxy.md +19 -0
  3835. package/skills/theme-factory/themes/modern-minimalist.md +19 -0
  3836. package/skills/theme-factory/themes/ocean-depths.md +19 -0
  3837. package/skills/theme-factory/themes/sunset-boulevard.md +19 -0
  3838. package/skills/theme-factory/themes/tech-innovation.md +19 -0
  3839. package/skills/threejs/SKILL.md +89 -0
  3840. package/skills/threejs/references/01-getting-started.md +177 -0
  3841. package/skills/threejs/references/02-loaders.md +169 -0
  3842. package/skills/threejs/references/03-textures.md +170 -0
  3843. package/skills/threejs/references/04-cameras.md +195 -0
  3844. package/skills/threejs/references/05-lights.md +183 -0
  3845. package/skills/threejs/references/06-animations.md +214 -0
  3846. package/skills/threejs/references/07-math.md +260 -0
  3847. package/skills/threejs/references/08-interaction.md +267 -0
  3848. package/skills/threejs/references/09-postprocessing.md +240 -0
  3849. package/skills/threejs/references/10-controls.md +259 -0
  3850. package/skills/threejs/references/11-materials-advanced.md +270 -0
  3851. package/skills/threejs/references/12-performance.md +269 -0
  3852. package/skills/threejs/references/13-node-materials.md +298 -0
  3853. package/skills/threejs/references/14-physics-vr.md +304 -0
  3854. package/skills/threejs/references/15-specialized-loaders.md +333 -0
  3855. package/skills/threejs/references/16-webgpu.md +302 -0
  3856. package/skills/top-web-vulnerabilities/SKILL.md +543 -0
  3857. package/skills/trigger-dev/SKILL.md +67 -0
  3858. package/skills/twilio-communications/SKILL.md +295 -0
  3859. package/skills/typescript-expert/SKILL.md +429 -0
  3860. package/skills/typescript-expert/references/tsconfig-strict.json +92 -0
  3861. package/skills/typescript-expert/references/typescript-cheatsheet.md +383 -0
  3862. package/skills/typescript-expert/references/utility-types.ts +335 -0
  3863. package/skills/typescript-expert/scripts/ts_diagnostic.py +203 -0
  3864. package/skills/typescript-pro/SKILL.md +94 -0
  3865. package/skills/typescript-pro/references/advanced-types.md +262 -0
  3866. package/skills/typescript-pro/references/configuration.md +448 -0
  3867. package/skills/typescript-pro/references/patterns.md +487 -0
  3868. package/skills/typescript-pro/references/type-guards.md +355 -0
  3869. package/skills/typescript-pro/references/utility-types.md +332 -0
  3870. package/skills/ui-design-system/SKILL.md +32 -0
  3871. package/skills/ui-design-system/scripts/design_token_generator.py +529 -0
  3872. package/skills/ui-styling/LICENSE.txt +202 -0
  3873. package/skills/ui-styling/SKILL.md +321 -0
  3874. package/skills/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  3875. package/skills/ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  3876. package/skills/ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  3877. package/skills/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -0
  3878. package/skills/ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  3879. package/skills/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -0
  3880. package/skills/ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
  3881. package/skills/ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  3882. package/skills/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  3883. package/skills/ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  3884. package/skills/ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  3885. package/skills/ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  3886. package/skills/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  3887. package/skills/ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  3888. package/skills/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -0
  3889. package/skills/ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
  3890. package/skills/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -0
  3891. package/skills/ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
  3892. package/skills/ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
  3893. package/skills/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -0
  3894. package/skills/ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
  3895. package/skills/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -0
  3896. package/skills/ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
  3897. package/skills/ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  3898. package/skills/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  3899. package/skills/ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  3900. package/skills/ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  3901. package/skills/ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  3902. package/skills/ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  3903. package/skills/ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  3904. package/skills/ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  3905. package/skills/ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  3906. package/skills/ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  3907. package/skills/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  3908. package/skills/ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  3909. package/skills/ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  3910. package/skills/ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  3911. package/skills/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -0
  3912. package/skills/ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
  3913. package/skills/ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  3914. package/skills/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  3915. package/skills/ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  3916. package/skills/ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
  3917. package/skills/ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
  3918. package/skills/ui-styling/canvas-fonts/Jura-OFL.txt +93 -0
  3919. package/skills/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  3920. package/skills/ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  3921. package/skills/ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
  3922. package/skills/ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  3923. package/skills/ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
  3924. package/skills/ui-styling/canvas-fonts/Lora-OFL.txt +93 -0
  3925. package/skills/ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
  3926. package/skills/ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
  3927. package/skills/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -0
  3928. package/skills/ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
  3929. package/skills/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  3930. package/skills/ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  3931. package/skills/ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
  3932. package/skills/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -0
  3933. package/skills/ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
  3934. package/skills/ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  3935. package/skills/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -0
  3936. package/skills/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -0
  3937. package/skills/ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  3938. package/skills/ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  3939. package/skills/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -0
  3940. package/skills/ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  3941. package/skills/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -0
  3942. package/skills/ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  3943. package/skills/ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  3944. package/skills/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -0
  3945. package/skills/ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
  3946. package/skills/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -0
  3947. package/skills/ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
  3948. package/skills/ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
  3949. package/skills/ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  3950. package/skills/ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
  3951. package/skills/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -0
  3952. package/skills/ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
  3953. package/skills/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -0
  3954. package/skills/ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  3955. package/skills/ui-styling/references/canvas-design-system.md +320 -0
  3956. package/skills/ui-styling/references/shadcn-accessibility.md +471 -0
  3957. package/skills/ui-styling/references/shadcn-components.md +424 -0
  3958. package/skills/ui-styling/references/shadcn-theming.md +373 -0
  3959. package/skills/ui-styling/references/tailwind-customization.md +483 -0
  3960. package/skills/ui-styling/references/tailwind-responsive.md +382 -0
  3961. package/skills/ui-styling/references/tailwind-utilities.md +455 -0
  3962. package/skills/ui-styling/scripts/.coverage +0 -0
  3963. package/skills/ui-styling/scripts/requirements.txt +17 -0
  3964. package/skills/ui-styling/scripts/shadcn_add.py +292 -0
  3965. package/skills/ui-styling/scripts/tailwind_config_gen.py +456 -0
  3966. package/skills/ui-styling/scripts/tests/coverage-ui.json +1 -0
  3967. package/skills/ui-styling/scripts/tests/requirements.txt +3 -0
  3968. package/skills/ui-styling/scripts/tests/test_shadcn_add.py +266 -0
  3969. package/skills/ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -0
  3970. package/skills/ui-ux-pro-max/SKILL.md +351 -0
  3971. package/skills/ui-ux-pro-max/data/charts.csv +26 -0
  3972. package/skills/ui-ux-pro-max/data/colors.csv +97 -0
  3973. package/skills/ui-ux-pro-max/data/icons.csv +101 -0
  3974. package/skills/ui-ux-pro-max/data/landing.csv +31 -0
  3975. package/skills/ui-ux-pro-max/data/products.csv +97 -0
  3976. package/skills/ui-ux-pro-max/data/prompts.csv +24 -0
  3977. package/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  3978. package/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  3979. package/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  3980. package/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  3981. package/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  3982. package/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  3983. package/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  3984. package/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  3985. package/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  3986. package/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  3987. package/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  3988. package/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  3989. package/skills/ui-ux-pro-max/data/styles.csv +59 -0
  3990. package/skills/ui-ux-pro-max/data/typography.csv +58 -0
  3991. package/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  3992. package/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  3993. package/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
  3994. package/skills/ui-ux-pro-max/scripts/core.py +257 -0
  3995. package/skills/ui-ux-pro-max/scripts/design_system.py +487 -0
  3996. package/skills/ui-ux-pro-max/scripts/search.py +76 -0
  3997. package/skills/upgrading-expo/SKILL.md +22 -0
  3998. package/skills/upstash-qstash/SKILL.md +68 -0
  3999. package/skills/using-git-worktrees/SKILL.md +217 -0
  4000. package/skills/using-superpowers/SKILL.md +87 -0
  4001. package/skills/ux-researcher-designer/SKILL.md +30 -0
  4002. package/skills/ux-researcher-designer/scripts/persona_generator.py +508 -0
  4003. package/skills/vercel-deploy/SKILL.md +22 -0
  4004. package/skills/vercel-deployment/SKILL.md +69 -0
  4005. package/skills/verification-before-completion/SKILL.md +139 -0
  4006. package/skills/video-downloader/SKILL.md +106 -0
  4007. package/skills/viral-generator-builder/SKILL.md +199 -0
  4008. package/skills/voice-agents/SKILL.md +68 -0
  4009. package/skills/voice-ai-development/SKILL.md +302 -0
  4010. package/skills/voice-ai-engine-development/README.md +175 -0
  4011. package/skills/voice-ai-engine-development/SKILL.md +721 -0
  4012. package/skills/voice-ai-engine-development/examples/complete_voice_engine.py +423 -0
  4013. package/skills/voice-ai-engine-development/examples/gemini_agent_example.py +239 -0
  4014. package/skills/voice-ai-engine-development/examples/interrupt_system_example.py +334 -0
  4015. package/skills/voice-ai-engine-development/references/common_pitfalls.md +471 -0
  4016. package/skills/voice-ai-engine-development/references/provider_comparison.md +515 -0
  4017. package/skills/voice-ai-engine-development/templates/base_worker_template.py +193 -0
  4018. package/skills/voice-ai-engine-development/templates/multi_provider_factory_template.py +289 -0
  4019. package/skills/vue-expert/SKILL.md +374 -0
  4020. package/skills/vue-expert/references/component-template.vue +232 -0
  4021. package/skills/vue-expert/references/composables-template.ts +247 -0
  4022. package/skills/vue-expert/references/composition-api-cheatsheet.md +281 -0
  4023. package/skills/vue-expert/references/pinia-store-template.ts +141 -0
  4024. package/skills/vue-expert/scripts/vue_diagnostic.py +144 -0
  4025. package/skills/vue-expert-js/SKILL.md +91 -0
  4026. package/skills/vue-expert-js/references/jsdoc-typing.md +538 -0
  4027. package/skills/vulnerability-scanner/SKILL.md +276 -0
  4028. package/skills/vulnerability-scanner/checklists.md +121 -0
  4029. package/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
  4030. package/skills/web-artifacts-builder/LICENSE.txt +202 -0
  4031. package/skills/web-artifacts-builder/SKILL.md +74 -0
  4032. package/skills/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
  4033. package/skills/web-artifacts-builder/scripts/init-artifact.sh +322 -0
  4034. package/skills/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  4035. package/skills/web-design-guidelines/SKILL.md +36 -0
  4036. package/skills/web-frameworks/SKILL.md +324 -0
  4037. package/skills/web-frameworks/references/nextjs-app-router.md +465 -0
  4038. package/skills/web-frameworks/references/nextjs-data-fetching.md +459 -0
  4039. package/skills/web-frameworks/references/nextjs-optimization.md +511 -0
  4040. package/skills/web-frameworks/references/nextjs-server-components.md +495 -0
  4041. package/skills/web-frameworks/references/remix-icon-integration.md +603 -0
  4042. package/skills/web-frameworks/references/turborepo-caching.md +551 -0
  4043. package/skills/web-frameworks/references/turborepo-pipelines.md +517 -0
  4044. package/skills/web-frameworks/references/turborepo-setup.md +542 -0
  4045. package/skills/web-frameworks/scripts/.coverage +0 -0
  4046. package/skills/web-frameworks/scripts/__init__.py +0 -0
  4047. package/skills/web-frameworks/scripts/nextjs_init.py +547 -0
  4048. package/skills/web-frameworks/scripts/requirements.txt +16 -0
  4049. package/skills/web-frameworks/scripts/tests/coverage-web.json +1 -0
  4050. package/skills/web-frameworks/scripts/tests/requirements.txt +3 -0
  4051. package/skills/web-frameworks/scripts/tests/test_nextjs_init.py +319 -0
  4052. package/skills/web-frameworks/scripts/tests/test_turborepo_migrate.py +374 -0
  4053. package/skills/web-frameworks/scripts/turborepo_migrate.py +394 -0
  4054. package/skills/web-performance-optimization/SKILL.md +646 -0
  4055. package/skills/webapp-testing/LICENSE.txt +202 -0
  4056. package/skills/webapp-testing/SKILL.md +96 -0
  4057. package/skills/webapp-testing/scripts/with_server.py +106 -0
  4058. package/skills/websocket-engineer/SKILL.md +96 -0
  4059. package/skills/websocket-engineer/references/alternatives.md +391 -0
  4060. package/skills/websocket-engineer/references/patterns.md +400 -0
  4061. package/skills/websocket-engineer/references/protocol.md +195 -0
  4062. package/skills/websocket-engineer/references/scaling.md +333 -0
  4063. package/skills/websocket-engineer/references/security.md +474 -0
  4064. package/skills/windows-privilege-escalation/SKILL.md +496 -0
  4065. package/skills/wireshark-analysis/SKILL.md +497 -0
  4066. package/skills/wordpress-penetration-testing/SKILL.md +485 -0
  4067. package/skills/wordpress-pro/SKILL.md +105 -0
  4068. package/skills/wordpress-pro/references/gutenberg-blocks.md +873 -0
  4069. package/skills/wordpress-pro/references/hooks-filters.md +848 -0
  4070. package/skills/wordpress-pro/references/performance-security.md +1015 -0
  4071. package/skills/wordpress-pro/references/plugin-architecture.md +1044 -0
  4072. package/skills/wordpress-pro/references/theme-development.md +861 -0
  4073. package/skills/workflow-automation/SKILL.md +68 -0
  4074. package/skills/writing-plans/SKILL.md +116 -0
  4075. package/skills/writing-skills/SKILL.md +737 -0
  4076. package/skills/writing-skills/anthropic-best-practices.md +1150 -0
  4077. package/skills/writing-skills/graphviz-conventions.dot +172 -0
  4078. package/skills/writing-skills/persuasion-principles.md +187 -0
  4079. package/skills/writing-skills/render-graphs.js +168 -0
  4080. package/skills/writing-skills/testing-skills-with-subagents.md +384 -0
  4081. package/skills/xlsx/SKILL.md +100 -0
  4082. package/skills/xlsx-official/LICENSE.txt +30 -0
  4083. package/skills/xlsx-official/SKILL.md +289 -0
  4084. package/skills/xlsx-official/recalc.py +178 -0
  4085. package/skills/xss-html-injection/SKILL.md +499 -0
  4086. package/skills/youtube-transcript/SKILL.md +415 -0
  4087. package/skills/zapier-make-patterns/SKILL.md +67 -0
  4088. package/skills/zustand-store/SKILL.md +68 -0
  4089. package/skills/zustand-store/assets/template.ts +117 -0
  4090. package/statusline.cjs +500 -0
  4091. package/statusline.ps1 +307 -0
  4092. package/statusline.sh +237 -0
  4093. package/workflows/development-rules.md +42 -0
  4094. package/workflows/documentation-management.md +121 -0
  4095. package/workflows/orchestration-protocol.md +16 -0
  4096. package/workflows/primary-workflow.md +45 -0
@@ -0,0 +1,1991 @@
1
+ #!/bin/bash
2
+ #===============================================================================
3
+ # Loki Mode - Autonomous Runner
4
+ # Single script that handles prerequisites, setup, and autonomous execution
5
+ #
6
+ # Usage:
7
+ # ./autonomy/run.sh [PRD_PATH]
8
+ # ./autonomy/run.sh ./docs/requirements.md
9
+ # ./autonomy/run.sh # Interactive mode
10
+ #
11
+ # Environment Variables:
12
+ # LOKI_MAX_RETRIES - Max retry attempts (default: 50)
13
+ # LOKI_BASE_WAIT - Base wait time in seconds (default: 60)
14
+ # LOKI_MAX_WAIT - Max wait time in seconds (default: 3600)
15
+ # LOKI_SKIP_PREREQS - Skip prerequisite checks (default: false)
16
+ # LOKI_DASHBOARD - Enable web dashboard (default: true)
17
+ # LOKI_DASHBOARD_PORT - Dashboard port (default: 57374)
18
+ #
19
+ # Resource Monitoring (prevents system overload):
20
+ # LOKI_RESOURCE_CHECK_INTERVAL - Check resources every N seconds (default: 300 = 5min)
21
+ # LOKI_RESOURCE_CPU_THRESHOLD - CPU % threshold to warn (default: 80)
22
+ # LOKI_RESOURCE_MEM_THRESHOLD - Memory % threshold to warn (default: 80)
23
+ #
24
+ # Security & Autonomy Controls (Enterprise):
25
+ # LOKI_STAGED_AUTONOMY - Require approval before execution (default: false)
26
+ # LOKI_AUDIT_LOG - Enable audit logging (default: false)
27
+ # LOKI_MAX_PARALLEL_AGENTS - Limit concurrent agent spawning (default: 10)
28
+ # LOKI_SANDBOX_MODE - Run in sandboxed container (default: false, requires Docker)
29
+ # LOKI_ALLOWED_PATHS - Comma-separated paths agents can modify (default: all)
30
+ # LOKI_BLOCKED_COMMANDS - Comma-separated blocked shell commands (default: rm -rf /)
31
+ #
32
+ # SDLC Phase Controls (all enabled by default, set to 'false' to skip):
33
+ # LOKI_PHASE_UNIT_TESTS - Run unit tests (default: true)
34
+ # LOKI_PHASE_API_TESTS - Functional API testing (default: true)
35
+ # LOKI_PHASE_E2E_TESTS - E2E/UI testing with Playwright (default: true)
36
+ # LOKI_PHASE_SECURITY - Security scanning OWASP/auth (default: true)
37
+ # LOKI_PHASE_INTEGRATION - Integration tests SAML/OIDC/SSO (default: true)
38
+ # LOKI_PHASE_CODE_REVIEW - 3-reviewer parallel code review (default: true)
39
+ # LOKI_PHASE_WEB_RESEARCH - Competitor/feature gap research (default: true)
40
+ # LOKI_PHASE_PERFORMANCE - Load/performance testing (default: true)
41
+ # LOKI_PHASE_ACCESSIBILITY - WCAG compliance testing (default: true)
42
+ # LOKI_PHASE_REGRESSION - Regression testing (default: true)
43
+ # LOKI_PHASE_UAT - UAT simulation (default: true)
44
+ #
45
+ # Autonomous Loop Controls (Ralph Wiggum Mode):
46
+ # LOKI_COMPLETION_PROMISE - EXPLICIT stop condition text (default: none - runs forever)
47
+ # Example: "ALL TESTS PASSING 100%"
48
+ # Only stops when Claude outputs this EXACT text
49
+ # LOKI_MAX_ITERATIONS - Max loop iterations before exit (default: 1000)
50
+ # LOKI_PERPETUAL_MODE - Ignore ALL completion signals (default: false)
51
+ # Set to 'true' for truly infinite operation
52
+ #===============================================================================
53
+
54
+ set -uo pipefail
55
+
56
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
57
+ PROJECT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
58
+
59
+ #===============================================================================
60
+ # Self-Copy Protection
61
+ # Bash reads scripts incrementally, so editing a running script corrupts execution.
62
+ # Solution: Copy ourselves to /tmp and run from there. The original can be safely edited.
63
+ #===============================================================================
64
+ if [[ -z "${LOKI_RUNNING_FROM_TEMP:-}" ]]; then
65
+ TEMP_SCRIPT="/tmp/loki-run-$$.sh"
66
+ cp "${BASH_SOURCE[0]}" "$TEMP_SCRIPT"
67
+ chmod +x "$TEMP_SCRIPT"
68
+ export LOKI_RUNNING_FROM_TEMP=1
69
+ export LOKI_ORIGINAL_SCRIPT_DIR="$SCRIPT_DIR"
70
+ export LOKI_ORIGINAL_PROJECT_DIR="$PROJECT_DIR"
71
+ exec "$TEMP_SCRIPT" "$@"
72
+ fi
73
+
74
+ # Restore original paths when running from temp
75
+ SCRIPT_DIR="${LOKI_ORIGINAL_SCRIPT_DIR:-$SCRIPT_DIR}"
76
+ PROJECT_DIR="${LOKI_ORIGINAL_PROJECT_DIR:-$PROJECT_DIR}"
77
+
78
+ # Clean up temp script on exit
79
+ trap 'rm -f "${BASH_SOURCE[0]}" 2>/dev/null' EXIT
80
+
81
+ # Configuration
82
+ MAX_RETRIES=${LOKI_MAX_RETRIES:-50}
83
+ BASE_WAIT=${LOKI_BASE_WAIT:-60}
84
+ MAX_WAIT=${LOKI_MAX_WAIT:-3600}
85
+ SKIP_PREREQS=${LOKI_SKIP_PREREQS:-false}
86
+ ENABLE_DASHBOARD=${LOKI_DASHBOARD:-true}
87
+ DASHBOARD_PORT=${LOKI_DASHBOARD_PORT:-57374}
88
+ RESOURCE_CHECK_INTERVAL=${LOKI_RESOURCE_CHECK_INTERVAL:-300} # Check every 5 minutes
89
+ RESOURCE_CPU_THRESHOLD=${LOKI_RESOURCE_CPU_THRESHOLD:-80} # CPU % threshold
90
+ RESOURCE_MEM_THRESHOLD=${LOKI_RESOURCE_MEM_THRESHOLD:-80} # Memory % threshold
91
+
92
+ # Security & Autonomy Controls
93
+ STAGED_AUTONOMY=${LOKI_STAGED_AUTONOMY:-false} # Require plan approval
94
+ AUDIT_LOG_ENABLED=${LOKI_AUDIT_LOG:-false} # Enable audit logging
95
+ MAX_PARALLEL_AGENTS=${LOKI_MAX_PARALLEL_AGENTS:-10} # Limit concurrent agents
96
+ SANDBOX_MODE=${LOKI_SANDBOX_MODE:-false} # Docker sandbox mode
97
+ ALLOWED_PATHS=${LOKI_ALLOWED_PATHS:-""} # Empty = all paths allowed
98
+ BLOCKED_COMMANDS=${LOKI_BLOCKED_COMMANDS:-"rm -rf /,dd if=,mkfs,:(){ :|:& };:"}
99
+
100
+ STATUS_MONITOR_PID=""
101
+ DASHBOARD_PID=""
102
+ RESOURCE_MONITOR_PID=""
103
+
104
+ # SDLC Phase Controls (all enabled by default)
105
+ PHASE_UNIT_TESTS=${LOKI_PHASE_UNIT_TESTS:-true}
106
+ PHASE_API_TESTS=${LOKI_PHASE_API_TESTS:-true}
107
+ PHASE_E2E_TESTS=${LOKI_PHASE_E2E_TESTS:-true}
108
+ PHASE_SECURITY=${LOKI_PHASE_SECURITY:-true}
109
+ PHASE_INTEGRATION=${LOKI_PHASE_INTEGRATION:-true}
110
+ PHASE_CODE_REVIEW=${LOKI_PHASE_CODE_REVIEW:-true}
111
+ PHASE_WEB_RESEARCH=${LOKI_PHASE_WEB_RESEARCH:-true}
112
+ PHASE_PERFORMANCE=${LOKI_PHASE_PERFORMANCE:-true}
113
+ PHASE_ACCESSIBILITY=${LOKI_PHASE_ACCESSIBILITY:-true}
114
+ PHASE_REGRESSION=${LOKI_PHASE_REGRESSION:-true}
115
+ PHASE_UAT=${LOKI_PHASE_UAT:-true}
116
+
117
+ # Autonomous Loop Controls (Ralph Wiggum Mode)
118
+ # Default: No auto-completion - runs until max iterations or explicit promise
119
+ COMPLETION_PROMISE=${LOKI_COMPLETION_PROMISE:-""}
120
+ MAX_ITERATIONS=${LOKI_MAX_ITERATIONS:-1000}
121
+ ITERATION_COUNT=0
122
+ # Perpetual mode: never stop unless max iterations (ignores all completion signals)
123
+ PERPETUAL_MODE=${LOKI_PERPETUAL_MODE:-false}
124
+
125
+ # Colors
126
+ RED='\033[0;31m'
127
+ GREEN='\033[0;32m'
128
+ YELLOW='\033[1;33m'
129
+ BLUE='\033[0;34m'
130
+ CYAN='\033[0;36m'
131
+ BOLD='\033[1m'
132
+ NC='\033[0m'
133
+
134
+ #===============================================================================
135
+ # Logging Functions
136
+ #===============================================================================
137
+
138
+ log_header() {
139
+ echo ""
140
+ echo -e "${BLUE}╔════════════════════════════════════════════════════════════════╗${NC}"
141
+ echo -e "${BLUE}║${NC} ${BOLD}$1${NC}"
142
+ echo -e "${BLUE}╚════════════════════════════════════════════════════════════════╝${NC}"
143
+ }
144
+
145
+ log_info() { echo -e "${GREEN}[INFO]${NC} $*"; }
146
+ log_warn() { echo -e "${YELLOW}[WARN]${NC} $*"; }
147
+ log_warning() { log_warn "$@"; } # Alias for backwards compatibility
148
+ log_error() { echo -e "${RED}[ERROR]${NC} $*"; }
149
+ log_step() { echo -e "${CYAN}[STEP]${NC} $*"; }
150
+
151
+ #===============================================================================
152
+ # Prerequisites Check
153
+ #===============================================================================
154
+
155
+ check_prerequisites() {
156
+ log_header "Checking Prerequisites"
157
+
158
+ local missing=()
159
+
160
+ # Check Claude Code CLI
161
+ log_step "Checking Claude Code CLI..."
162
+ if command -v claude &> /dev/null; then
163
+ local version=$(claude --version 2>/dev/null | head -1 || echo "unknown")
164
+ log_info "Claude Code CLI: $version"
165
+ else
166
+ missing+=("claude")
167
+ log_error "Claude Code CLI not found"
168
+ log_info "Install: https://claude.ai/code or npm install -g @anthropic-ai/claude-code"
169
+ fi
170
+
171
+ # Check Python 3
172
+ log_step "Checking Python 3..."
173
+ if command -v python3 &> /dev/null; then
174
+ local py_version=$(python3 --version 2>&1)
175
+ log_info "Python: $py_version"
176
+ else
177
+ missing+=("python3")
178
+ log_error "Python 3 not found"
179
+ fi
180
+
181
+ # Check Git
182
+ log_step "Checking Git..."
183
+ if command -v git &> /dev/null; then
184
+ local git_version=$(git --version)
185
+ log_info "Git: $git_version"
186
+ else
187
+ missing+=("git")
188
+ log_error "Git not found"
189
+ fi
190
+
191
+ # Check Node.js (optional but recommended)
192
+ log_step "Checking Node.js (optional)..."
193
+ if command -v node &> /dev/null; then
194
+ local node_version=$(node --version)
195
+ log_info "Node.js: $node_version"
196
+ else
197
+ log_warn "Node.js not found (optional, needed for some builds)"
198
+ fi
199
+
200
+ # Check npm (optional)
201
+ if command -v npm &> /dev/null; then
202
+ local npm_version=$(npm --version)
203
+ log_info "npm: $npm_version"
204
+ fi
205
+
206
+ # Check curl (for web fetches)
207
+ log_step "Checking curl..."
208
+ if command -v curl &> /dev/null; then
209
+ log_info "curl: available"
210
+ else
211
+ missing+=("curl")
212
+ log_error "curl not found"
213
+ fi
214
+
215
+ # Check jq (optional but helpful)
216
+ log_step "Checking jq (optional)..."
217
+ if command -v jq &> /dev/null; then
218
+ log_info "jq: available"
219
+ else
220
+ log_warn "jq not found (optional, for JSON parsing)"
221
+ fi
222
+
223
+ # Summary
224
+ echo ""
225
+ if [ ${#missing[@]} -gt 0 ]; then
226
+ log_error "Missing required tools: ${missing[*]}"
227
+ log_info "Please install the missing tools and try again."
228
+ return 1
229
+ else
230
+ log_info "All required prerequisites are installed!"
231
+ return 0
232
+ fi
233
+ }
234
+
235
+ #===============================================================================
236
+ # Skill Installation Check
237
+ #===============================================================================
238
+
239
+ check_skill_installed() {
240
+ log_header "Checking Loki Mode Skill"
241
+
242
+ local skill_locations=(
243
+ "$HOME/.claude/skills/loki-mode/SKILL.md"
244
+ ".claude/skills/loki-mode/SKILL.md"
245
+ "$PROJECT_DIR/SKILL.md"
246
+ )
247
+
248
+ for loc in "${skill_locations[@]}"; do
249
+ if [ -f "$loc" ]; then
250
+ log_info "Skill found: $loc"
251
+ return 0
252
+ fi
253
+ done
254
+
255
+ log_warn "Loki Mode skill not found in standard locations"
256
+ log_info "The skill will be used from: $PROJECT_DIR/SKILL.md"
257
+
258
+ if [ -f "$PROJECT_DIR/SKILL.md" ]; then
259
+ log_info "Using skill from project directory"
260
+ return 0
261
+ else
262
+ log_error "SKILL.md not found!"
263
+ return 1
264
+ fi
265
+ }
266
+
267
+ #===============================================================================
268
+ # Initialize Loki Directory
269
+ #===============================================================================
270
+
271
+ init_loki_dir() {
272
+ log_header "Initializing Loki Mode Directory"
273
+
274
+ mkdir -p .loki/{state,queue,messages,logs,config,prompts,artifacts,scripts}
275
+ mkdir -p .loki/queue
276
+ mkdir -p .loki/state/checkpoints
277
+ mkdir -p .loki/artifacts/{releases,reports,backups}
278
+ mkdir -p .loki/memory/{ledgers,handoffs,learnings,episodic,semantic,skills}
279
+ mkdir -p .loki/metrics/{efficiency,rewards}
280
+ mkdir -p .loki/rules
281
+ mkdir -p .loki/signals
282
+
283
+ # Initialize queue files if they don't exist
284
+ for queue in pending in-progress completed failed dead-letter; do
285
+ if [ ! -f ".loki/queue/${queue}.json" ]; then
286
+ echo "[]" > ".loki/queue/${queue}.json"
287
+ fi
288
+ done
289
+
290
+ # Initialize orchestrator state if it doesn't exist
291
+ if [ ! -f ".loki/state/orchestrator.json" ]; then
292
+ cat > ".loki/state/orchestrator.json" << EOF
293
+ {
294
+ "version": "$(cat "$PROJECT_DIR/VERSION" 2>/dev/null || echo "2.2.0")",
295
+ "currentPhase": "BOOTSTRAP",
296
+ "startedAt": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
297
+ "agents": {},
298
+ "metrics": {
299
+ "tasksCompleted": 0,
300
+ "tasksFailed": 0,
301
+ "retries": 0
302
+ }
303
+ }
304
+ EOF
305
+ fi
306
+
307
+ log_info "Loki directory initialized: .loki/"
308
+ }
309
+
310
+ #===============================================================================
311
+ # Task Status Monitor
312
+ #===============================================================================
313
+
314
+ update_status_file() {
315
+ # Create a human-readable status file
316
+ local status_file=".loki/STATUS.txt"
317
+
318
+ # Get current phase
319
+ local current_phase="UNKNOWN"
320
+ if [ -f ".loki/state/orchestrator.json" ]; then
321
+ current_phase=$(python3 -c "import json; print(json.load(open('.loki/state/orchestrator.json')).get('currentPhase', 'UNKNOWN'))" 2>/dev/null || echo "UNKNOWN")
322
+ fi
323
+
324
+ # Count tasks in each queue
325
+ local pending=0 in_progress=0 completed=0 failed=0
326
+ [ -f ".loki/queue/pending.json" ] && pending=$(python3 -c "import json; print(len(json.load(open('.loki/queue/pending.json'))))" 2>/dev/null || echo "0")
327
+ [ -f ".loki/queue/in-progress.json" ] && in_progress=$(python3 -c "import json; print(len(json.load(open('.loki/queue/in-progress.json'))))" 2>/dev/null || echo "0")
328
+ [ -f ".loki/queue/completed.json" ] && completed=$(python3 -c "import json; print(len(json.load(open('.loki/queue/completed.json'))))" 2>/dev/null || echo "0")
329
+ [ -f ".loki/queue/failed.json" ] && failed=$(python3 -c "import json; print(len(json.load(open('.loki/queue/failed.json'))))" 2>/dev/null || echo "0")
330
+
331
+ cat > "$status_file" << EOF
332
+ ╔════════════════════════════════════════════════════════════════╗
333
+ ║ LOKI MODE STATUS ║
334
+ ╚════════════════════════════════════════════════════════════════╝
335
+
336
+ Updated: $(date)
337
+
338
+ Phase: $current_phase
339
+
340
+ Tasks:
341
+ ├─ Pending: $pending
342
+ ├─ In Progress: $in_progress
343
+ ├─ Completed: $completed
344
+ └─ Failed: $failed
345
+
346
+ Monitor: watch -n 2 cat .loki/STATUS.txt
347
+ EOF
348
+ }
349
+
350
+ start_status_monitor() {
351
+ log_step "Starting status monitor..."
352
+
353
+ # Initial update
354
+ update_status_file
355
+ update_agents_state
356
+
357
+ # Background update loop
358
+ (
359
+ while true; do
360
+ update_status_file
361
+ update_agents_state
362
+ sleep 5
363
+ done
364
+ ) &
365
+ STATUS_MONITOR_PID=$!
366
+
367
+ log_info "Status monitor started"
368
+ log_info "Monitor progress: ${CYAN}watch -n 2 cat .loki/STATUS.txt${NC}"
369
+ }
370
+
371
+ stop_status_monitor() {
372
+ if [ -n "$STATUS_MONITOR_PID" ]; then
373
+ kill "$STATUS_MONITOR_PID" 2>/dev/null || true
374
+ wait "$STATUS_MONITOR_PID" 2>/dev/null || true
375
+ fi
376
+ stop_resource_monitor
377
+ }
378
+
379
+ #===============================================================================
380
+ # Web Dashboard
381
+ #===============================================================================
382
+
383
+ generate_dashboard() {
384
+ # Generate HTML dashboard with Anthropic design language + Agent Monitoring
385
+ cat > .loki/dashboard/index.html << 'DASHBOARD_HTML'
386
+ <!DOCTYPE html>
387
+ <html lang="en">
388
+ <head>
389
+ <meta charset="UTF-8">
390
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
391
+ <title>Loki Mode Dashboard</title>
392
+ <style>
393
+ * { box-sizing: border-box; margin: 0; padding: 0; }
394
+ body {
395
+ font-family: 'Söhne', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
396
+ background: #FAF9F6;
397
+ color: #1A1A1A;
398
+ padding: 24px;
399
+ min-height: 100vh;
400
+ }
401
+ .header {
402
+ text-align: center;
403
+ padding: 32px 20px;
404
+ margin-bottom: 32px;
405
+ }
406
+ .header h1 {
407
+ color: #D97757;
408
+ font-size: 28px;
409
+ font-weight: 600;
410
+ letter-spacing: -0.5px;
411
+ margin-bottom: 8px;
412
+ }
413
+ .header .subtitle {
414
+ color: #666;
415
+ font-size: 14px;
416
+ font-weight: 400;
417
+ }
418
+ .header .phase {
419
+ display: inline-block;
420
+ margin-top: 16px;
421
+ padding: 8px 16px;
422
+ background: #FFF;
423
+ border: 1px solid #E5E3DE;
424
+ border-radius: 20px;
425
+ font-size: 13px;
426
+ color: #1A1A1A;
427
+ font-weight: 500;
428
+ }
429
+ .stats {
430
+ display: flex;
431
+ justify-content: center;
432
+ gap: 16px;
433
+ margin-bottom: 40px;
434
+ flex-wrap: wrap;
435
+ }
436
+ .stat {
437
+ background: #FFF;
438
+ border: 1px solid #E5E3DE;
439
+ border-radius: 12px;
440
+ padding: 20px 32px;
441
+ text-align: center;
442
+ min-width: 140px;
443
+ transition: box-shadow 0.2s ease;
444
+ }
445
+ .stat:hover { box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
446
+ .stat .number { font-size: 36px; font-weight: 600; margin-bottom: 4px; }
447
+ .stat .label { font-size: 12px; color: #888; text-transform: uppercase; letter-spacing: 0.5px; }
448
+ .stat.pending .number { color: #D97757; }
449
+ .stat.progress .number { color: #5B8DEF; }
450
+ .stat.completed .number { color: #2E9E6E; }
451
+ .stat.failed .number { color: #D44F4F; }
452
+ .stat.agents .number { color: #9B6DD6; }
453
+ .section-header {
454
+ text-align: center;
455
+ font-size: 16px;
456
+ font-weight: 600;
457
+ color: #666;
458
+ margin: 40px 0 20px 0;
459
+ text-transform: uppercase;
460
+ letter-spacing: 1px;
461
+ }
462
+ .agents-grid {
463
+ display: grid;
464
+ grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
465
+ gap: 16px;
466
+ max-width: 1400px;
467
+ margin: 0 auto 40px auto;
468
+ }
469
+ .agent-card {
470
+ background: #FFF;
471
+ border: 1px solid #E5E3DE;
472
+ border-radius: 12px;
473
+ padding: 16px;
474
+ transition: box-shadow 0.2s ease, border-color 0.2s ease;
475
+ }
476
+ .agent-card:hover {
477
+ box-shadow: 0 4px 12px rgba(0,0,0,0.06);
478
+ border-color: #9B6DD6;
479
+ }
480
+ .agent-card .agent-header {
481
+ display: flex;
482
+ justify-content: space-between;
483
+ align-items: flex-start;
484
+ margin-bottom: 12px;
485
+ }
486
+ .agent-card .agent-id {
487
+ font-size: 11px;
488
+ color: #999;
489
+ font-family: monospace;
490
+ }
491
+ .agent-card .model-badge {
492
+ padding: 4px 10px;
493
+ border-radius: 6px;
494
+ font-size: 10px;
495
+ font-weight: 600;
496
+ text-transform: uppercase;
497
+ letter-spacing: 0.5px;
498
+ }
499
+ .agent-card .model-badge.sonnet {
500
+ background: #E8F0FD;
501
+ color: #5B8DEF;
502
+ }
503
+ .agent-card .model-badge.haiku {
504
+ background: #FFF4E6;
505
+ color: #F59E0B;
506
+ }
507
+ .agent-card .model-badge.opus {
508
+ background: #F3E8FF;
509
+ color: #9B6DD6;
510
+ }
511
+ .agent-card .agent-type {
512
+ font-size: 14px;
513
+ font-weight: 600;
514
+ color: #1A1A1A;
515
+ margin-bottom: 8px;
516
+ }
517
+ .agent-card .agent-status {
518
+ display: inline-block;
519
+ padding: 3px 8px;
520
+ border-radius: 4px;
521
+ font-size: 10px;
522
+ font-weight: 500;
523
+ margin-bottom: 12px;
524
+ }
525
+ .agent-card .agent-status.active {
526
+ background: #E6F5EE;
527
+ color: #2E9E6E;
528
+ }
529
+ .agent-card .agent-status.completed {
530
+ background: #F0EFEA;
531
+ color: #666;
532
+ }
533
+ .agent-card .agent-work {
534
+ font-size: 12px;
535
+ color: #666;
536
+ line-height: 1.5;
537
+ margin-bottom: 8px;
538
+ }
539
+ .agent-card .agent-meta {
540
+ display: flex;
541
+ gap: 12px;
542
+ font-size: 11px;
543
+ color: #999;
544
+ margin-top: 8px;
545
+ padding-top: 8px;
546
+ border-top: 1px solid #F0EFEA;
547
+ }
548
+ .agent-card .agent-meta span {
549
+ display: flex;
550
+ align-items: center;
551
+ gap: 4px;
552
+ }
553
+ .columns {
554
+ display: flex;
555
+ gap: 20px;
556
+ overflow-x: auto;
557
+ padding-bottom: 24px;
558
+ max-width: 1400px;
559
+ margin: 0 auto;
560
+ }
561
+ .column {
562
+ flex: 1;
563
+ min-width: 300px;
564
+ max-width: 350px;
565
+ background: #FFF;
566
+ border: 1px solid #E5E3DE;
567
+ border-radius: 12px;
568
+ padding: 20px;
569
+ }
570
+ .column h2 {
571
+ font-size: 13px;
572
+ font-weight: 600;
573
+ color: #666;
574
+ margin-bottom: 16px;
575
+ display: flex;
576
+ align-items: center;
577
+ gap: 10px;
578
+ text-transform: uppercase;
579
+ letter-spacing: 0.5px;
580
+ }
581
+ .column h2 .count {
582
+ background: #F0EFEA;
583
+ padding: 3px 10px;
584
+ border-radius: 12px;
585
+ font-size: 11px;
586
+ color: #1A1A1A;
587
+ }
588
+ .column.pending h2 .count { background: #FCEEE8; color: #D97757; }
589
+ .column.progress h2 .count { background: #E8F0FD; color: #5B8DEF; }
590
+ .column.completed h2 .count { background: #E6F5EE; color: #2E9E6E; }
591
+ .column.failed h2 .count { background: #FCE8E8; color: #D44F4F; }
592
+ .task {
593
+ background: #FAF9F6;
594
+ border: 1px solid #E5E3DE;
595
+ border-radius: 8px;
596
+ padding: 14px;
597
+ margin-bottom: 12px;
598
+ transition: border-color 0.2s ease;
599
+ }
600
+ .task:hover { border-color: #D97757; }
601
+ .task .id { font-size: 10px; color: #999; margin-bottom: 6px; font-family: monospace; }
602
+ .task .type {
603
+ display: inline-block;
604
+ background: #FCEEE8;
605
+ color: #D97757;
606
+ padding: 3px 10px;
607
+ border-radius: 4px;
608
+ font-size: 11px;
609
+ font-weight: 500;
610
+ margin-bottom: 8px;
611
+ }
612
+ .task .title { font-size: 13px; color: #1A1A1A; line-height: 1.5; }
613
+ .task .error {
614
+ font-size: 11px;
615
+ color: #D44F4F;
616
+ margin-top: 10px;
617
+ padding: 10px;
618
+ background: #FCE8E8;
619
+ border-radius: 6px;
620
+ font-family: monospace;
621
+ }
622
+ .refresh {
623
+ position: fixed;
624
+ bottom: 24px;
625
+ right: 24px;
626
+ background: #D97757;
627
+ color: white;
628
+ border: none;
629
+ padding: 12px 24px;
630
+ border-radius: 8px;
631
+ cursor: pointer;
632
+ font-size: 14px;
633
+ font-weight: 500;
634
+ transition: background 0.2s ease;
635
+ box-shadow: 0 4px 12px rgba(217, 119, 87, 0.3);
636
+ }
637
+ .refresh:hover { background: #C56747; }
638
+ .updated {
639
+ text-align: center;
640
+ color: #999;
641
+ font-size: 12px;
642
+ margin-top: 24px;
643
+ }
644
+ .empty {
645
+ color: #999;
646
+ font-size: 13px;
647
+ text-align: center;
648
+ padding: 24px;
649
+ font-style: italic;
650
+ }
651
+ .powered-by {
652
+ text-align: center;
653
+ margin-top: 40px;
654
+ padding-top: 24px;
655
+ border-top: 1px solid #E5E3DE;
656
+ color: #999;
657
+ font-size: 12px;
658
+ }
659
+ .powered-by span { color: #D97757; font-weight: 500; }
660
+ </style>
661
+ </head>
662
+ <body>
663
+ <div class="header">
664
+ <h1>LOKI MODE</h1>
665
+ <div class="subtitle">Autonomous Multi-Agent Startup System</div>
666
+ <div class="phase" id="phase">Loading...</div>
667
+ </div>
668
+ <div class="stats">
669
+ <div class="stat agents"><div class="number" id="agents-count">-</div><div class="label">Active Agents</div></div>
670
+ <div class="stat pending"><div class="number" id="pending-count">-</div><div class="label">Pending</div></div>
671
+ <div class="stat progress"><div class="number" id="progress-count">-</div><div class="label">In Progress</div></div>
672
+ <div class="stat completed"><div class="number" id="completed-count">-</div><div class="label">Completed</div></div>
673
+ <div class="stat failed"><div class="number" id="failed-count">-</div><div class="label">Failed</div></div>
674
+ </div>
675
+ <div class="section-header">Active Agents</div>
676
+ <div class="agents-grid" id="agents-grid"></div>
677
+ <div class="section-header">Task Queue</div>
678
+ <div class="columns">
679
+ <div class="column pending"><h2>Pending <span class="count" id="pending-badge">0</span></h2><div id="pending-tasks"></div></div>
680
+ <div class="column progress"><h2>In Progress <span class="count" id="progress-badge">0</span></h2><div id="progress-tasks"></div></div>
681
+ <div class="column completed"><h2>Completed <span class="count" id="completed-badge">0</span></h2><div id="completed-tasks"></div></div>
682
+ <div class="column failed"><h2>Failed <span class="count" id="failed-badge">0</span></h2><div id="failed-tasks"></div></div>
683
+ </div>
684
+ <div class="updated" id="updated">Last updated: -</div>
685
+ <div class="powered-by">Powered by <span>Claude</span></div>
686
+ <button class="refresh" onclick="loadData()">Refresh</button>
687
+ <script>
688
+ async function loadJSON(path) {
689
+ try {
690
+ const res = await fetch(path + '?t=' + Date.now());
691
+ if (!res.ok) return [];
692
+ const text = await res.text();
693
+ if (!text.trim()) return [];
694
+ const data = JSON.parse(text);
695
+ return Array.isArray(data) ? data : (data.tasks || data.agents || []);
696
+ } catch { return []; }
697
+ }
698
+ function getModelClass(model) {
699
+ if (!model) return 'sonnet';
700
+ const m = model.toLowerCase();
701
+ if (m.includes('haiku')) return 'haiku';
702
+ if (m.includes('opus')) return 'opus';
703
+ return 'sonnet';
704
+ }
705
+ function formatDuration(isoDate) {
706
+ if (!isoDate) return 'Unknown';
707
+ const start = new Date(isoDate);
708
+ const now = new Date();
709
+ const seconds = Math.floor((now - start) / 1000);
710
+ if (seconds < 60) return seconds + 's';
711
+ if (seconds < 3600) return Math.floor(seconds / 60) + 'm';
712
+ return Math.floor(seconds / 3600) + 'h ' + Math.floor((seconds % 3600) / 60) + 'm';
713
+ }
714
+ function renderAgent(agent) {
715
+ const modelClass = getModelClass(agent.model);
716
+ const modelName = agent.model || 'Sonnet 4.5';
717
+ const agentType = agent.agent_type || 'general-purpose';
718
+ const status = agent.status === 'completed' ? 'completed' : 'active';
719
+ const currentTask = agent.current_task || (agent.tasks_completed && agent.tasks_completed.length > 0
720
+ ? 'Completed: ' + agent.tasks_completed.join(', ')
721
+ : 'Initializing...');
722
+ const duration = formatDuration(agent.spawned_at);
723
+ const tasksCount = agent.tasks_completed ? agent.tasks_completed.length : 0;
724
+
725
+ return `
726
+ <div class="agent-card">
727
+ <div class="agent-header">
728
+ <div class="agent-id">${agent.agent_id || 'Unknown'}</div>
729
+ <div class="model-badge ${modelClass}">${modelName}</div>
730
+ </div>
731
+ <div class="agent-type">${agentType}</div>
732
+ <div class="agent-status ${status}">${status}</div>
733
+ <div class="agent-work">${currentTask}</div>
734
+ <div class="agent-meta">
735
+ <span>⏱ ${duration}</span>
736
+ <span>✓ ${tasksCount} tasks</span>
737
+ </div>
738
+ </div>
739
+ `;
740
+ }
741
+ function renderTask(task) {
742
+ const payload = task.payload || {};
743
+ const title = payload.description || payload.action || task.type || 'Task';
744
+ const error = task.lastError ? `<div class="error">${task.lastError}</div>` : '';
745
+ return `<div class="task"><div class="id">${task.id}</div><span class="type">${task.type || 'general'}</span><div class="title">${title}</div>${error}</div>`;
746
+ }
747
+ async function loadData() {
748
+ const [pending, progress, completed, failed, agents] = await Promise.all([
749
+ loadJSON('../queue/pending.json'),
750
+ loadJSON('../queue/in-progress.json'),
751
+ loadJSON('../queue/completed.json'),
752
+ loadJSON('../queue/failed.json'),
753
+ loadJSON('../state/agents.json')
754
+ ]);
755
+
756
+ // Agent stats
757
+ document.getElementById('agents-count').textContent = agents.length;
758
+ document.getElementById('agents-grid').innerHTML = agents.length
759
+ ? agents.map(renderAgent).join('')
760
+ : '<div class="empty">No active agents</div>';
761
+
762
+ // Task stats
763
+ document.getElementById('pending-count').textContent = pending.length;
764
+ document.getElementById('progress-count').textContent = progress.length;
765
+ document.getElementById('completed-count').textContent = completed.length;
766
+ document.getElementById('failed-count').textContent = failed.length;
767
+ document.getElementById('pending-badge').textContent = pending.length;
768
+ document.getElementById('progress-badge').textContent = progress.length;
769
+ document.getElementById('completed-badge').textContent = completed.length;
770
+ document.getElementById('failed-badge').textContent = failed.length;
771
+ document.getElementById('pending-tasks').innerHTML = pending.length ? pending.map(renderTask).join('') : '<div class="empty">No pending tasks</div>';
772
+ document.getElementById('progress-tasks').innerHTML = progress.length ? progress.map(renderTask).join('') : '<div class="empty">No tasks in progress</div>';
773
+ document.getElementById('completed-tasks').innerHTML = completed.length ? completed.slice(-10).reverse().map(renderTask).join('') : '<div class="empty">No completed tasks</div>';
774
+ document.getElementById('failed-tasks').innerHTML = failed.length ? failed.map(renderTask).join('') : '<div class="empty">No failed tasks</div>';
775
+
776
+ try {
777
+ const state = await fetch('../state/orchestrator.json?t=' + Date.now()).then(r => r.json());
778
+ document.getElementById('phase').textContent = 'Phase: ' + (state.currentPhase || 'UNKNOWN');
779
+ } catch { document.getElementById('phase').textContent = 'Phase: UNKNOWN'; }
780
+ document.getElementById('updated').textContent = 'Last updated: ' + new Date().toLocaleTimeString();
781
+ }
782
+ loadData();
783
+ setInterval(loadData, 3000);
784
+ </script>
785
+ </body>
786
+ </html>
787
+ DASHBOARD_HTML
788
+ }
789
+
790
+ update_agents_state() {
791
+ # Aggregate agent information from .agent/sub-agents/*.json into .loki/state/agents.json
792
+ local agents_dir=".agent/sub-agents"
793
+ local output_file=".loki/state/agents.json"
794
+
795
+ # Initialize empty array if no agents directory
796
+ if [ ! -d "$agents_dir" ]; then
797
+ echo "[]" > "$output_file"
798
+ return
799
+ fi
800
+
801
+ # Find all agent JSON files and aggregate them
802
+ local agents_json="["
803
+ local first=true
804
+
805
+ for agent_file in "$agents_dir"/*.json; do
806
+ # Skip if no JSON files exist
807
+ [ -e "$agent_file" ] || continue
808
+
809
+ # Read agent JSON
810
+ local agent_data=$(cat "$agent_file" 2>/dev/null)
811
+ if [ -n "$agent_data" ]; then
812
+ # Add comma separator for all but first entry
813
+ if [ "$first" = true ]; then
814
+ first=false
815
+ else
816
+ agents_json="${agents_json},"
817
+ fi
818
+ agents_json="${agents_json}${agent_data}"
819
+ fi
820
+ done
821
+
822
+ agents_json="${agents_json}]"
823
+
824
+ # Write aggregated data
825
+ echo "$agents_json" > "$output_file"
826
+ }
827
+
828
+ #===============================================================================
829
+ # Resource Monitoring
830
+ #===============================================================================
831
+
832
+ check_system_resources() {
833
+ # Check CPU and memory usage and write status to .loki/state/resources.json
834
+ local output_file=".loki/state/resources.json"
835
+
836
+ # Get CPU usage (average across all cores)
837
+ local cpu_usage=0
838
+ if [[ "$OSTYPE" == "darwin"* ]]; then
839
+ # macOS: get CPU idle from top header, calculate usage = 100 - idle
840
+ local idle=$(top -l 2 -n 0 | grep "CPU usage" | tail -1 | awk -F'[:,]' '{for(i=1;i<=NF;i++) if($i ~ /idle/) print $(i)}' | awk '{print int($1)}')
841
+ cpu_usage=$((100 - ${idle:-0}))
842
+ elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
843
+ # Linux: use top or mpstat
844
+ cpu_usage=$(top -bn2 | grep "Cpu(s)" | tail -1 | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print int(100 - $1)}')
845
+ else
846
+ cpu_usage=0
847
+ fi
848
+
849
+ # Get memory usage
850
+ local mem_usage=0
851
+ if [[ "$OSTYPE" == "darwin"* ]]; then
852
+ # macOS: use vm_stat
853
+ local page_size=$(pagesize)
854
+ local vm_stat=$(vm_stat)
855
+ local pages_free=$(echo "$vm_stat" | awk '/Pages free/ {print $3}' | tr -d '.')
856
+ local pages_active=$(echo "$vm_stat" | awk '/Pages active/ {print $3}' | tr -d '.')
857
+ local pages_inactive=$(echo "$vm_stat" | awk '/Pages inactive/ {print $3}' | tr -d '.')
858
+ local pages_speculative=$(echo "$vm_stat" | awk '/Pages speculative/ {print $3}' | tr -d '.')
859
+ local pages_wired=$(echo "$vm_stat" | awk '/Pages wired down/ {print $4}' | tr -d '.')
860
+
861
+ local total_pages=$((pages_free + pages_active + pages_inactive + pages_speculative + pages_wired))
862
+ local used_pages=$((pages_active + pages_wired))
863
+ mem_usage=$((used_pages * 100 / total_pages))
864
+ elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
865
+ # Linux: use free
866
+ mem_usage=$(free | grep Mem | awk '{print int($3/$2 * 100)}')
867
+ else
868
+ mem_usage=0
869
+ fi
870
+
871
+ # Determine status
872
+ local cpu_status="ok"
873
+ local mem_status="ok"
874
+ local overall_status="ok"
875
+ local warning_message=""
876
+
877
+ if [ "$cpu_usage" -ge "$RESOURCE_CPU_THRESHOLD" ]; then
878
+ cpu_status="high"
879
+ overall_status="warning"
880
+ warning_message="CPU usage is ${cpu_usage}% (threshold: ${RESOURCE_CPU_THRESHOLD}%). Consider reducing parallel agent count or pausing non-critical tasks."
881
+ fi
882
+
883
+ if [ "$mem_usage" -ge "$RESOURCE_MEM_THRESHOLD" ]; then
884
+ mem_status="high"
885
+ overall_status="warning"
886
+ if [ -n "$warning_message" ]; then
887
+ warning_message="${warning_message} Memory usage is ${mem_usage}% (threshold: ${RESOURCE_MEM_THRESHOLD}%)."
888
+ else
889
+ warning_message="Memory usage is ${mem_usage}% (threshold: ${RESOURCE_MEM_THRESHOLD}%). Consider reducing parallel agent count or cleaning up resources."
890
+ fi
891
+ fi
892
+
893
+ # Write JSON status
894
+ cat > "$output_file" << EOF
895
+ {
896
+ "timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
897
+ "cpu": {
898
+ "usage_percent": $cpu_usage,
899
+ "threshold_percent": $RESOURCE_CPU_THRESHOLD,
900
+ "status": "$cpu_status"
901
+ },
902
+ "memory": {
903
+ "usage_percent": $mem_usage,
904
+ "threshold_percent": $RESOURCE_MEM_THRESHOLD,
905
+ "status": "$mem_status"
906
+ },
907
+ "overall_status": "$overall_status",
908
+ "warning_message": "$warning_message"
909
+ }
910
+ EOF
911
+
912
+ # Log warning if resources are high
913
+ if [ "$overall_status" = "warning" ]; then
914
+ log_warn "RESOURCE WARNING: $warning_message"
915
+ fi
916
+ }
917
+
918
+ start_resource_monitor() {
919
+ log_step "Starting resource monitor (checks every ${RESOURCE_CHECK_INTERVAL}s)..."
920
+
921
+ # Initial check
922
+ check_system_resources
923
+
924
+ # Background monitoring loop
925
+ (
926
+ while true; do
927
+ sleep "$RESOURCE_CHECK_INTERVAL"
928
+ check_system_resources
929
+ done
930
+ ) &
931
+ RESOURCE_MONITOR_PID=$!
932
+
933
+ log_info "Resource monitor started (CPU threshold: ${RESOURCE_CPU_THRESHOLD}%, Memory threshold: ${RESOURCE_MEM_THRESHOLD}%)"
934
+ log_info "Check status: ${CYAN}cat .loki/state/resources.json${NC}"
935
+ }
936
+
937
+ stop_resource_monitor() {
938
+ if [ -n "$RESOURCE_MONITOR_PID" ]; then
939
+ kill "$RESOURCE_MONITOR_PID" 2>/dev/null || true
940
+ wait "$RESOURCE_MONITOR_PID" 2>/dev/null || true
941
+ fi
942
+ }
943
+
944
+ #===============================================================================
945
+ # Audit Logging (Enterprise Security)
946
+ #===============================================================================
947
+
948
+ audit_log() {
949
+ # Log security-relevant events for enterprise compliance
950
+ local event_type="$1"
951
+ local event_data="$2"
952
+ local audit_file=".loki/logs/audit-$(date +%Y%m%d).jsonl"
953
+
954
+ if [ "$AUDIT_LOG_ENABLED" != "true" ]; then
955
+ return
956
+ fi
957
+
958
+ mkdir -p .loki/logs
959
+
960
+ local log_entry=$(cat << EOF
961
+ {"timestamp":"$(date -u +%Y-%m-%dT%H:%M:%SZ)","event":"$event_type","data":"$event_data","user":"$(whoami)","pid":$$}
962
+ EOF
963
+ )
964
+ echo "$log_entry" >> "$audit_file"
965
+ }
966
+
967
+ check_staged_autonomy() {
968
+ # In staged autonomy mode, write plan and wait for approval
969
+ local plan_file="$1"
970
+
971
+ if [ "$STAGED_AUTONOMY" != "true" ]; then
972
+ return 0
973
+ fi
974
+
975
+ log_info "STAGED AUTONOMY: Waiting for plan approval..."
976
+ log_info "Review plan at: $plan_file"
977
+ log_info "Create .loki/signals/PLAN_APPROVED to continue"
978
+
979
+ audit_log "STAGED_AUTONOMY_WAIT" "plan=$plan_file"
980
+
981
+ # Wait for approval signal
982
+ while [ ! -f ".loki/signals/PLAN_APPROVED" ]; do
983
+ sleep 5
984
+ done
985
+
986
+ rm -f ".loki/signals/PLAN_APPROVED"
987
+ audit_log "STAGED_AUTONOMY_APPROVED" "plan=$plan_file"
988
+ log_success "Plan approved, continuing execution..."
989
+ }
990
+
991
+ check_command_allowed() {
992
+ # Check if a command is in the blocked list
993
+ local command="$1"
994
+
995
+ IFS=',' read -ra BLOCKED_ARRAY <<< "$BLOCKED_COMMANDS"
996
+ for blocked in "${BLOCKED_ARRAY[@]}"; do
997
+ if [[ "$command" == *"$blocked"* ]]; then
998
+ audit_log "BLOCKED_COMMAND" "command=$command,pattern=$blocked"
999
+ log_error "SECURITY: Blocked dangerous command: $command"
1000
+ return 1
1001
+ fi
1002
+ done
1003
+
1004
+ return 0
1005
+ }
1006
+
1007
+ #===============================================================================
1008
+ # Cross-Project Learnings Database
1009
+ #===============================================================================
1010
+
1011
+ init_learnings_db() {
1012
+ # Initialize the cross-project learnings database
1013
+ local learnings_dir="${HOME}/.loki/learnings"
1014
+ mkdir -p "$learnings_dir"
1015
+
1016
+ # Create database files if they don't exist
1017
+ if [ ! -f "$learnings_dir/patterns.jsonl" ]; then
1018
+ echo '{"version":"1.0","created":"'"$(date -u +%Y-%m-%dT%H:%M:%SZ)"'"}' > "$learnings_dir/patterns.jsonl"
1019
+ fi
1020
+
1021
+ if [ ! -f "$learnings_dir/mistakes.jsonl" ]; then
1022
+ echo '{"version":"1.0","created":"'"$(date -u +%Y-%m-%dT%H:%M:%SZ)"'"}' > "$learnings_dir/mistakes.jsonl"
1023
+ fi
1024
+
1025
+ if [ ! -f "$learnings_dir/successes.jsonl" ]; then
1026
+ echo '{"version":"1.0","created":"'"$(date -u +%Y-%m-%dT%H:%M:%SZ)"'"}' > "$learnings_dir/successes.jsonl"
1027
+ fi
1028
+
1029
+ log_info "Learnings database initialized at: $learnings_dir"
1030
+ }
1031
+
1032
+ save_learning() {
1033
+ # Save a learning to the cross-project database
1034
+ local learning_type="$1" # pattern, mistake, success
1035
+ local category="$2"
1036
+ local description="$3"
1037
+ local project="${4:-$(basename "$(pwd)")}"
1038
+
1039
+ local learnings_dir="${HOME}/.loki/learnings"
1040
+ local target_file="$learnings_dir/${learning_type}s.jsonl"
1041
+
1042
+ if [ ! -d "$learnings_dir" ]; then
1043
+ init_learnings_db
1044
+ fi
1045
+
1046
+ local learning_entry=$(cat << EOF
1047
+ {"timestamp":"$(date -u +%Y-%m-%dT%H:%M:%SZ)","project":"$project","category":"$category","description":"$description"}
1048
+ EOF
1049
+ )
1050
+ echo "$learning_entry" >> "$target_file"
1051
+ log_info "Saved $learning_type: $category"
1052
+ }
1053
+
1054
+ get_relevant_learnings() {
1055
+ # Get learnings relevant to the current context
1056
+ local context="$1"
1057
+ local learnings_dir="${HOME}/.loki/learnings"
1058
+ local output_file=".loki/state/relevant-learnings.json"
1059
+
1060
+ if [ ! -d "$learnings_dir" ]; then
1061
+ echo '{"patterns":[],"mistakes":[],"successes":[]}' > "$output_file"
1062
+ return
1063
+ fi
1064
+
1065
+ # Simple grep-based relevance (can be enhanced with embeddings)
1066
+ # Pass context via environment variable to avoid quote escaping issues
1067
+ export LOKI_CONTEXT="$context"
1068
+ python3 << 'LEARNINGS_SCRIPT'
1069
+ import json
1070
+ import os
1071
+
1072
+ learnings_dir = os.path.expanduser("~/.loki/learnings")
1073
+ context = os.environ.get("LOKI_CONTEXT", "").lower()
1074
+
1075
+ def load_jsonl(filepath):
1076
+ entries = []
1077
+ try:
1078
+ with open(filepath, 'r') as f:
1079
+ for line in f:
1080
+ try:
1081
+ entry = json.loads(line)
1082
+ if 'description' in entry:
1083
+ entries.append(entry)
1084
+ except:
1085
+ continue
1086
+ except:
1087
+ pass
1088
+ return entries
1089
+
1090
+ def filter_relevant(entries, context, limit=5):
1091
+ scored = []
1092
+ for e in entries:
1093
+ desc = e.get('description', '').lower()
1094
+ cat = e.get('category', '').lower()
1095
+ score = sum(1 for word in context.split() if word in desc or word in cat)
1096
+ if score > 0:
1097
+ scored.append((score, e))
1098
+ scored.sort(reverse=True, key=lambda x: x[0])
1099
+ return [e for _, e in scored[:limit]]
1100
+
1101
+ patterns = load_jsonl(f"{learnings_dir}/patterns.jsonl")
1102
+ mistakes = load_jsonl(f"{learnings_dir}/mistakes.jsonl")
1103
+ successes = load_jsonl(f"{learnings_dir}/successes.jsonl")
1104
+
1105
+ result = {
1106
+ "patterns": filter_relevant(patterns, context),
1107
+ "mistakes": filter_relevant(mistakes, context),
1108
+ "successes": filter_relevant(successes, context)
1109
+ }
1110
+
1111
+ with open(".loki/state/relevant-learnings.json", 'w') as f:
1112
+ json.dump(result, f, indent=2)
1113
+ LEARNINGS_SCRIPT
1114
+
1115
+ log_info "Loaded relevant learnings to: $output_file"
1116
+ }
1117
+
1118
+ extract_learnings_from_session() {
1119
+ # Extract learnings from completed session
1120
+ local continuity_file=".loki/CONTINUITY.md"
1121
+
1122
+ if [ ! -f "$continuity_file" ]; then
1123
+ return
1124
+ fi
1125
+
1126
+ log_info "Extracting learnings from session..."
1127
+
1128
+ # Parse CONTINUITY.md for Mistakes & Learnings section
1129
+ python3 << EXTRACT_SCRIPT
1130
+ import re
1131
+ import json
1132
+ import os
1133
+ from datetime import datetime, timezone
1134
+
1135
+ continuity_file = ".loki/CONTINUITY.md"
1136
+ learnings_dir = os.path.expanduser("~/.loki/learnings")
1137
+
1138
+ if not os.path.exists(continuity_file):
1139
+ exit(0)
1140
+
1141
+ with open(continuity_file, 'r') as f:
1142
+ content = f.read()
1143
+
1144
+ # Find Mistakes & Learnings section
1145
+ mistakes_match = re.search(r'## Mistakes & Learnings\n(.*?)(?=\n## |\Z)', content, re.DOTALL)
1146
+ if mistakes_match:
1147
+ mistakes_text = mistakes_match.group(1)
1148
+ # Extract bullet points
1149
+ bullets = re.findall(r'[-*]\s+(.+)', mistakes_text)
1150
+ for bullet in bullets:
1151
+ entry = {
1152
+ "timestamp": datetime.now(timezone.utc).isoformat().replace("+00:00", "Z"),
1153
+ "project": os.path.basename(os.getcwd()),
1154
+ "category": "session",
1155
+ "description": bullet.strip()
1156
+ }
1157
+ with open(f"{learnings_dir}/mistakes.jsonl", 'a') as f:
1158
+ f.write(json.dumps(entry) + "\n")
1159
+ print(f"Extracted: {bullet[:50]}...")
1160
+
1161
+ print("Learning extraction complete")
1162
+ EXTRACT_SCRIPT
1163
+ }
1164
+
1165
+ start_dashboard() {
1166
+ log_header "Starting Loki Dashboard"
1167
+
1168
+ # Create dashboard directory
1169
+ mkdir -p .loki/dashboard
1170
+
1171
+ # Generate HTML
1172
+ generate_dashboard
1173
+
1174
+ # Kill any existing process on the dashboard port
1175
+ if lsof -i :$DASHBOARD_PORT &>/dev/null; then
1176
+ log_step "Killing existing process on port $DASHBOARD_PORT..."
1177
+ lsof -ti :$DASHBOARD_PORT | xargs kill -9 2>/dev/null || true
1178
+ sleep 1
1179
+ fi
1180
+
1181
+ # Start Python HTTP server from .loki/ root so it can serve queue/ and state/
1182
+ log_step "Starting dashboard server..."
1183
+ (
1184
+ cd .loki
1185
+ python3 -m http.server $DASHBOARD_PORT --bind 127.0.0.1 2>&1 | while read line; do
1186
+ echo "[dashboard] $line" >> logs/dashboard.log
1187
+ done
1188
+ ) &
1189
+ DASHBOARD_PID=$!
1190
+
1191
+ sleep 1
1192
+
1193
+ if kill -0 $DASHBOARD_PID 2>/dev/null; then
1194
+ log_info "Dashboard started (PID: $DASHBOARD_PID)"
1195
+ log_info "Dashboard: ${CYAN}http://127.0.0.1:$DASHBOARD_PORT/dashboard/index.html${NC}"
1196
+
1197
+ # Open in browser (macOS)
1198
+ if [[ "$OSTYPE" == "darwin"* ]]; then
1199
+ open "http://127.0.0.1:$DASHBOARD_PORT/dashboard/index.html" 2>/dev/null || true
1200
+ fi
1201
+ return 0
1202
+ else
1203
+ log_warn "Dashboard failed to start"
1204
+ DASHBOARD_PID=""
1205
+ return 1
1206
+ fi
1207
+ }
1208
+
1209
+ stop_dashboard() {
1210
+ if [ -n "$DASHBOARD_PID" ]; then
1211
+ kill "$DASHBOARD_PID" 2>/dev/null || true
1212
+ wait "$DASHBOARD_PID" 2>/dev/null || true
1213
+ fi
1214
+ }
1215
+
1216
+ #===============================================================================
1217
+ # Calculate Exponential Backoff
1218
+ #===============================================================================
1219
+
1220
+ calculate_wait() {
1221
+ local retry="$1"
1222
+ local wait_time=$((BASE_WAIT * (2 ** retry)))
1223
+
1224
+ # Add jitter (0-30 seconds)
1225
+ local jitter=$((RANDOM % 30))
1226
+ wait_time=$((wait_time + jitter))
1227
+
1228
+ # Cap at max wait
1229
+ if [ $wait_time -gt $MAX_WAIT ]; then
1230
+ wait_time=$MAX_WAIT
1231
+ fi
1232
+
1233
+ echo $wait_time
1234
+ }
1235
+
1236
+ #===============================================================================
1237
+ # Rate Limit Detection
1238
+ #===============================================================================
1239
+
1240
+ # Detect rate limit from log and calculate wait time until reset
1241
+ # Returns: seconds to wait, or 0 if no rate limit detected
1242
+ detect_rate_limit() {
1243
+ local log_file="$1"
1244
+
1245
+ # Look for rate limit message like "resets 4am" or "resets 10pm"
1246
+ local reset_time=$(grep -o "resets [0-9]\+[ap]m" "$log_file" 2>/dev/null | tail -1 | grep -o "[0-9]\+[ap]m")
1247
+
1248
+ if [ -z "$reset_time" ]; then
1249
+ echo 0
1250
+ return
1251
+ fi
1252
+
1253
+ # Parse the reset time
1254
+ local hour=$(echo "$reset_time" | grep -o "[0-9]\+")
1255
+ local ampm=$(echo "$reset_time" | grep -o "[ap]m")
1256
+
1257
+ # Convert to 24-hour format
1258
+ if [ "$ampm" = "pm" ] && [ "$hour" -ne 12 ]; then
1259
+ hour=$((hour + 12))
1260
+ elif [ "$ampm" = "am" ] && [ "$hour" -eq 12 ]; then
1261
+ hour=0
1262
+ fi
1263
+
1264
+ # Get current time
1265
+ local current_hour=$(date +%H)
1266
+ local current_min=$(date +%M)
1267
+ local current_sec=$(date +%S)
1268
+
1269
+ # Calculate seconds until reset
1270
+ local current_secs=$((current_hour * 3600 + current_min * 60 + current_sec))
1271
+ local reset_secs=$((hour * 3600))
1272
+
1273
+ local wait_secs=$((reset_secs - current_secs))
1274
+
1275
+ # If reset time is in the past, it means tomorrow
1276
+ if [ $wait_secs -le 0 ]; then
1277
+ wait_secs=$((wait_secs + 86400)) # Add 24 hours
1278
+ fi
1279
+
1280
+ # Add 2 minute buffer to ensure limit is actually reset
1281
+ wait_secs=$((wait_secs + 120))
1282
+
1283
+ echo $wait_secs
1284
+ }
1285
+
1286
+ # Format seconds into human-readable time
1287
+ format_duration() {
1288
+ local secs="$1"
1289
+ local hours=$((secs / 3600))
1290
+ local mins=$(((secs % 3600) / 60))
1291
+
1292
+ if [ $hours -gt 0 ]; then
1293
+ echo "${hours}h ${mins}m"
1294
+ else
1295
+ echo "${mins}m"
1296
+ fi
1297
+ }
1298
+
1299
+ #===============================================================================
1300
+ # Check Completion
1301
+ #===============================================================================
1302
+
1303
+ is_completed() {
1304
+ # Check orchestrator state
1305
+ if [ -f ".loki/state/orchestrator.json" ]; then
1306
+ if command -v python3 &> /dev/null; then
1307
+ local phase=$(python3 -c "import json; print(json.load(open('.loki/state/orchestrator.json')).get('currentPhase', ''))" 2>/dev/null || echo "")
1308
+ # Accept various completion states
1309
+ if [ "$phase" = "COMPLETED" ] || [ "$phase" = "complete" ] || [ "$phase" = "finalized" ] || [ "$phase" = "growth-loop" ]; then
1310
+ return 0
1311
+ fi
1312
+ fi
1313
+ fi
1314
+
1315
+ # Check for completion marker
1316
+ if [ -f ".loki/COMPLETED" ]; then
1317
+ return 0
1318
+ fi
1319
+
1320
+ return 1
1321
+ }
1322
+
1323
+ # Check if completion promise is fulfilled in log output
1324
+ check_completion_promise() {
1325
+ local log_file="$1"
1326
+
1327
+ # Check for the completion promise phrase in recent log output
1328
+ if grep -q "COMPLETION PROMISE FULFILLED" "$log_file" 2>/dev/null; then
1329
+ return 0
1330
+ fi
1331
+
1332
+ # Check for custom completion promise text
1333
+ if [ -n "$COMPLETION_PROMISE" ] && grep -qF "$COMPLETION_PROMISE" "$log_file" 2>/dev/null; then
1334
+ return 0
1335
+ fi
1336
+
1337
+ return 1
1338
+ }
1339
+
1340
+ # Check if max iterations reached
1341
+ check_max_iterations() {
1342
+ if [ $ITERATION_COUNT -ge $MAX_ITERATIONS ]; then
1343
+ log_warn "Max iterations ($MAX_ITERATIONS) reached. Stopping."
1344
+ return 0
1345
+ fi
1346
+ return 1
1347
+ }
1348
+
1349
+ # Check if context clear was requested by agent
1350
+ check_context_clear_signal() {
1351
+ if [ -f ".loki/signals/CONTEXT_CLEAR_REQUESTED" ]; then
1352
+ log_info "Context clear signal detected from agent"
1353
+ rm -f ".loki/signals/CONTEXT_CLEAR_REQUESTED"
1354
+ return 0
1355
+ fi
1356
+ return 1
1357
+ }
1358
+
1359
+ # Load latest ledger content for context injection
1360
+ load_ledger_context() {
1361
+ local ledger_content=""
1362
+
1363
+ # Find most recent ledger
1364
+ local latest_ledger=$(ls -t .loki/memory/ledgers/LEDGER-*.md 2>/dev/null | head -1)
1365
+
1366
+ if [ -n "$latest_ledger" ] && [ -f "$latest_ledger" ]; then
1367
+ ledger_content=$(cat "$latest_ledger" | head -100)
1368
+ echo "$ledger_content"
1369
+ fi
1370
+ }
1371
+
1372
+ # Load recent handoffs for context
1373
+ load_handoff_context() {
1374
+ local handoff_content=""
1375
+
1376
+ # Find most recent handoff (last 24 hours)
1377
+ local recent_handoff=$(find .loki/memory/handoffs -name "*.md" -mtime -1 2>/dev/null | head -1)
1378
+
1379
+ if [ -n "$recent_handoff" ] && [ -f "$recent_handoff" ]; then
1380
+ handoff_content=$(cat "$recent_handoff" | head -80)
1381
+ echo "$handoff_content"
1382
+ fi
1383
+ }
1384
+
1385
+ # Load relevant learnings
1386
+ load_learnings_context() {
1387
+ local learnings=""
1388
+
1389
+ # Get recent learnings (last 7 days)
1390
+ for learning in $(find .loki/memory/learnings -name "*.md" -mtime -7 2>/dev/null | head -5); do
1391
+ learnings+="$(head -30 "$learning")\n---\n"
1392
+ done
1393
+
1394
+ echo -e "$learnings"
1395
+ }
1396
+
1397
+ #===============================================================================
1398
+ # Save/Load Wrapper State
1399
+ #===============================================================================
1400
+
1401
+ save_state() {
1402
+ local retry_count="$1"
1403
+ local status="$2"
1404
+ local exit_code="$3"
1405
+
1406
+ cat > ".loki/autonomy-state.json" << EOF
1407
+ {
1408
+ "retryCount": $retry_count,
1409
+ "status": "$status",
1410
+ "lastExitCode": $exit_code,
1411
+ "lastRun": "$(date -u +%Y-%m-%dT%H:%M:%SZ)",
1412
+ "prdPath": "${PRD_PATH:-}",
1413
+ "pid": $$,
1414
+ "maxRetries": $MAX_RETRIES,
1415
+ "baseWait": $BASE_WAIT
1416
+ }
1417
+ EOF
1418
+ }
1419
+
1420
+ load_state() {
1421
+ if [ -f ".loki/autonomy-state.json" ]; then
1422
+ if command -v python3 &> /dev/null; then
1423
+ RETRY_COUNT=$(python3 -c "import json; print(json.load(open('.loki/autonomy-state.json')).get('retryCount', 0))" 2>/dev/null || echo "0")
1424
+ else
1425
+ RETRY_COUNT=0
1426
+ fi
1427
+ else
1428
+ RETRY_COUNT=0
1429
+ fi
1430
+ }
1431
+
1432
+ #===============================================================================
1433
+ # Build Resume Prompt
1434
+ #===============================================================================
1435
+
1436
+ build_prompt() {
1437
+ local retry="$1"
1438
+ local prd="$2"
1439
+ local iteration="$3"
1440
+
1441
+ # Build SDLC phases configuration
1442
+ local phases=""
1443
+ [ "$PHASE_UNIT_TESTS" = "true" ] && phases="${phases}UNIT_TESTS,"
1444
+ [ "$PHASE_API_TESTS" = "true" ] && phases="${phases}API_TESTS,"
1445
+ [ "$PHASE_E2E_TESTS" = "true" ] && phases="${phases}E2E_TESTS,"
1446
+ [ "$PHASE_SECURITY" = "true" ] && phases="${phases}SECURITY,"
1447
+ [ "$PHASE_INTEGRATION" = "true" ] && phases="${phases}INTEGRATION,"
1448
+ [ "$PHASE_CODE_REVIEW" = "true" ] && phases="${phases}CODE_REVIEW,"
1449
+ [ "$PHASE_WEB_RESEARCH" = "true" ] && phases="${phases}WEB_RESEARCH,"
1450
+ [ "$PHASE_PERFORMANCE" = "true" ] && phases="${phases}PERFORMANCE,"
1451
+ [ "$PHASE_ACCESSIBILITY" = "true" ] && phases="${phases}ACCESSIBILITY,"
1452
+ [ "$PHASE_REGRESSION" = "true" ] && phases="${phases}REGRESSION,"
1453
+ [ "$PHASE_UAT" = "true" ] && phases="${phases}UAT,"
1454
+ phases="${phases%,}" # Remove trailing comma
1455
+
1456
+ # Ralph Wiggum Mode - Reason-Act-Reflect-VERIFY cycle with self-verification loop (Boris Cherny pattern)
1457
+ local rarv_instruction="RALPH WIGGUM MODE ACTIVE. Use Reason-Act-Reflect-VERIFY cycle: 1) REASON - READ .loki/CONTINUITY.md including 'Mistakes & Learnings' section to avoid past errors. CHECK .loki/state/relevant-learnings.json for cross-project learnings from previous projects (mistakes to avoid, patterns to apply). Check .loki/state/ and .loki/queue/, identify next task. CHECK .loki/state/resources.json for system resource warnings - if CPU or memory is high, reduce parallel agent spawning or pause non-critical tasks. Limit to MAX_PARALLEL_AGENTS=${MAX_PARALLEL_AGENTS}. If queue empty, find new improvements. 2) ACT - Execute task, write code, commit changes atomically (git checkpoint). 3) REFLECT - Update .loki/CONTINUITY.md with progress, update state, identify NEXT improvement. Save valuable learnings for future projects. 4) VERIFY - Run automated tests (unit, integration, E2E), check compilation/build, verify against spec. IF VERIFICATION FAILS: a) Capture error details (stack trace, logs), b) Analyze root cause, c) UPDATE 'Mistakes & Learnings' in CONTINUITY.md with what failed, why, and how to prevent, d) Rollback to last good git checkpoint if needed, e) Apply learning and RETRY from REASON. If verification passes, mark task complete and continue. This self-verification loop achieves 2-3x quality improvement. CRITICAL: There is NEVER a 'finished' state - always find the next improvement, optimization, test, or feature."
1458
+
1459
+ # Completion promise instruction (only if set)
1460
+ local completion_instruction=""
1461
+ if [ -n "$COMPLETION_PROMISE" ]; then
1462
+ completion_instruction="COMPLETION_PROMISE: [$COMPLETION_PROMISE]. ONLY output 'COMPLETION PROMISE FULFILLED: $COMPLETION_PROMISE' when this EXACT condition is met."
1463
+ else
1464
+ completion_instruction="NO COMPLETION PROMISE SET. Run forever finding improvements. Iteration $iteration of max $MAX_ITERATIONS."
1465
+ fi
1466
+
1467
+ # Core autonomous instructions - NO questions, NO waiting, NEVER say done
1468
+ local autonomous_suffix="CRITICAL AUTONOMY RULES: 1) NEVER ask questions - just decide. 2) NEVER wait for confirmation - just act. 3) NEVER say 'done' or 'complete' - there's always more to improve. 4) NEVER stop voluntarily - if out of tasks, create new ones (add tests, optimize, refactor, add features). 5) Work continues PERPETUALLY. Even if PRD is implemented, find bugs, add tests, improve UX, optimize performance."
1469
+
1470
+ local sdlc_instruction="SDLC_PHASES_ENABLED: [$phases]. Execute ALL enabled phases. Log results to .loki/logs/. See SKILL.md for phase details."
1471
+
1472
+ # Codebase Analysis Mode - when no PRD provided
1473
+ local analysis_instruction="CODEBASE_ANALYSIS_MODE: No PRD. FIRST: Analyze codebase - scan structure, read package.json/requirements.txt, examine README. THEN: Generate PRD at .loki/generated-prd.md. FINALLY: Execute SDLC phases."
1474
+
1475
+ # Context Memory Instructions
1476
+ local memory_instruction="CONTEXT MEMORY: Save state to .loki/memory/ledgers/LEDGER-orchestrator.md before complex operations. Create handoffs at .loki/memory/handoffs/ when passing work to subagents. Extract learnings to .loki/memory/learnings/ after completing tasks. Check .loki/rules/ for established patterns. If context feels heavy, create .loki/signals/CONTEXT_CLEAR_REQUESTED and the wrapper will reset context with your ledger preserved."
1477
+
1478
+ # Load existing context if resuming
1479
+ local context_injection=""
1480
+ if [ $retry -gt 0 ]; then
1481
+ local ledger=$(load_ledger_context)
1482
+ local handoff=$(load_handoff_context)
1483
+
1484
+ if [ -n "$ledger" ]; then
1485
+ context_injection="PREVIOUS_LEDGER_STATE: $ledger"
1486
+ fi
1487
+ if [ -n "$handoff" ]; then
1488
+ context_injection="$context_injection RECENT_HANDOFF: $handoff"
1489
+ fi
1490
+ fi
1491
+
1492
+ if [ $retry -eq 0 ]; then
1493
+ if [ -n "$prd" ]; then
1494
+ echo "Loki Mode with PRD at $prd. $rarv_instruction $memory_instruction $completion_instruction $sdlc_instruction $autonomous_suffix"
1495
+ else
1496
+ echo "Loki Mode. $analysis_instruction $rarv_instruction $memory_instruction $completion_instruction $sdlc_instruction $autonomous_suffix"
1497
+ fi
1498
+ else
1499
+ if [ -n "$prd" ]; then
1500
+ echo "Loki Mode - Resume iteration #$iteration (retry #$retry). PRD: $prd. $context_injection $rarv_instruction $memory_instruction $completion_instruction $sdlc_instruction $autonomous_suffix"
1501
+ else
1502
+ echo "Loki Mode - Resume iteration #$iteration (retry #$retry). $context_injection Use .loki/generated-prd.md if exists. $rarv_instruction $memory_instruction $completion_instruction $sdlc_instruction $autonomous_suffix"
1503
+ fi
1504
+ fi
1505
+ }
1506
+
1507
+ #===============================================================================
1508
+ # Main Autonomous Loop
1509
+ #===============================================================================
1510
+
1511
+ run_autonomous() {
1512
+ local prd_path="$1"
1513
+
1514
+ log_header "Starting Autonomous Execution"
1515
+
1516
+ # Auto-detect PRD if not provided
1517
+ if [ -z "$prd_path" ]; then
1518
+ log_step "No PRD provided, searching for existing PRD files..."
1519
+ local found_prd=""
1520
+
1521
+ # Search common PRD file patterns
1522
+ for pattern in "PRD.md" "prd.md" "REQUIREMENTS.md" "requirements.md" "SPEC.md" "spec.md" \
1523
+ "docs/PRD.md" "docs/prd.md" "docs/REQUIREMENTS.md" "docs/requirements.md" \
1524
+ "docs/SPEC.md" "docs/spec.md" ".github/PRD.md" "PROJECT.md" "project.md"; do
1525
+ if [ -f "$pattern" ]; then
1526
+ found_prd="$pattern"
1527
+ break
1528
+ fi
1529
+ done
1530
+
1531
+ if [ -n "$found_prd" ]; then
1532
+ log_info "Found existing PRD: $found_prd"
1533
+ prd_path="$found_prd"
1534
+ elif [ -f ".loki/generated-prd.md" ]; then
1535
+ log_info "Using previously generated PRD: .loki/generated-prd.md"
1536
+ prd_path=".loki/generated-prd.md"
1537
+ else
1538
+ log_info "No PRD found - will analyze codebase and generate one"
1539
+ fi
1540
+ fi
1541
+
1542
+ log_info "PRD: ${prd_path:-Codebase Analysis Mode}"
1543
+ log_info "Max retries: $MAX_RETRIES"
1544
+ log_info "Max iterations: $MAX_ITERATIONS"
1545
+ log_info "Completion promise: $COMPLETION_PROMISE"
1546
+ log_info "Base wait: ${BASE_WAIT}s"
1547
+ log_info "Max wait: ${MAX_WAIT}s"
1548
+ echo ""
1549
+
1550
+ load_state
1551
+ local retry=$RETRY_COUNT
1552
+
1553
+ # Check max iterations before starting
1554
+ if check_max_iterations; then
1555
+ log_error "Max iterations already reached. Reset with: rm .loki/autonomy-state.json"
1556
+ return 1
1557
+ fi
1558
+
1559
+ while [ $retry -lt $MAX_RETRIES ]; do
1560
+ # Increment iteration count
1561
+ ((ITERATION_COUNT++))
1562
+
1563
+ # Check max iterations
1564
+ if check_max_iterations; then
1565
+ save_state $retry "max_iterations_reached" 0
1566
+ return 0
1567
+ fi
1568
+
1569
+ local prompt=$(build_prompt $retry "$prd_path" $ITERATION_COUNT)
1570
+
1571
+ echo ""
1572
+ log_header "Attempt $((retry + 1)) of $MAX_RETRIES"
1573
+ log_info "Prompt: $prompt"
1574
+ echo ""
1575
+
1576
+ save_state $retry "running" 0
1577
+
1578
+ # Run Claude Code with live output
1579
+ local start_time=$(date +%s)
1580
+ local log_file=".loki/logs/autonomy-$(date +%Y%m%d).log"
1581
+
1582
+ echo ""
1583
+ echo -e "${CYAN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
1584
+ echo -e "${CYAN} CLAUDE CODE OUTPUT (live)${NC}"
1585
+ echo -e "${CYAN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
1586
+ echo ""
1587
+
1588
+ # Log start time
1589
+ echo "=== Session started at $(date) ===" >> "$log_file"
1590
+ echo "=== Prompt: $prompt ===" >> "$log_file"
1591
+
1592
+ set +e
1593
+ # Run Claude with stream-json for real-time output
1594
+ # Parse JSON stream, display formatted output, and track agents
1595
+ claude --dangerously-skip-permissions -p "$prompt" \
1596
+ --output-format stream-json --verbose 2>&1 | \
1597
+ tee -a "$log_file" | \
1598
+ python3 -u -c '
1599
+ import sys
1600
+ import json
1601
+ import os
1602
+ from datetime import datetime, timezone
1603
+
1604
+ # ANSI colors
1605
+ CYAN = "\033[0;36m"
1606
+ GREEN = "\033[0;32m"
1607
+ YELLOW = "\033[1;33m"
1608
+ MAGENTA = "\033[0;35m"
1609
+ DIM = "\033[2m"
1610
+ NC = "\033[0m"
1611
+
1612
+ # Agent tracking
1613
+ AGENTS_FILE = ".loki/state/agents.json"
1614
+ QUEUE_IN_PROGRESS = ".loki/queue/in-progress.json"
1615
+ active_agents = {} # tool_id -> agent_info
1616
+ orchestrator_id = "orchestrator-main"
1617
+ session_start = datetime.now(timezone.utc).isoformat().replace("+00:00", "Z")
1618
+
1619
+ def init_orchestrator():
1620
+ """Initialize the main orchestrator agent (always visible)."""
1621
+ active_agents[orchestrator_id] = {
1622
+ "agent_id": orchestrator_id,
1623
+ "tool_id": orchestrator_id,
1624
+ "agent_type": "orchestrator",
1625
+ "model": "sonnet",
1626
+ "current_task": "Initializing...",
1627
+ "status": "active",
1628
+ "spawned_at": session_start,
1629
+ "tasks_completed": [],
1630
+ "tool_count": 0
1631
+ }
1632
+ save_agents()
1633
+
1634
+ def update_orchestrator_task(tool_name, description=""):
1635
+ """Update orchestrator current task based on tool usage."""
1636
+ if orchestrator_id in active_agents:
1637
+ active_agents[orchestrator_id]["tool_count"] = active_agents[orchestrator_id].get("tool_count", 0) + 1
1638
+ if description:
1639
+ active_agents[orchestrator_id]["current_task"] = f"{tool_name}: {description[:80]}"
1640
+ else:
1641
+ active_agents[orchestrator_id]["current_task"] = f"Using {tool_name}..."
1642
+ save_agents()
1643
+
1644
+ def load_agents():
1645
+ """Load existing agents from file."""
1646
+ try:
1647
+ if os.path.exists(AGENTS_FILE):
1648
+ with open(AGENTS_FILE, "r") as f:
1649
+ data = json.load(f)
1650
+ return {a.get("tool_id", a.get("agent_id")): a for a in data if isinstance(a, dict)}
1651
+ except:
1652
+ pass
1653
+ return {}
1654
+
1655
+ def save_agents():
1656
+ """Save agents to file for dashboard."""
1657
+ try:
1658
+ os.makedirs(os.path.dirname(AGENTS_FILE), exist_ok=True)
1659
+ agents_list = list(active_agents.values())
1660
+ with open(AGENTS_FILE, "w") as f:
1661
+ json.dump(agents_list, f, indent=2)
1662
+ except Exception as e:
1663
+ print(f"{YELLOW}[Agent save error: {e}]{NC}", file=sys.stderr)
1664
+
1665
+ def save_in_progress(tasks):
1666
+ """Save in-progress tasks to queue file."""
1667
+ try:
1668
+ os.makedirs(os.path.dirname(QUEUE_IN_PROGRESS), exist_ok=True)
1669
+ with open(QUEUE_IN_PROGRESS, "w") as f:
1670
+ json.dump(tasks, f, indent=2)
1671
+ except:
1672
+ pass
1673
+
1674
+ def process_stream():
1675
+ global active_agents
1676
+ active_agents = load_agents()
1677
+
1678
+ # Always show the main orchestrator
1679
+ init_orchestrator()
1680
+ print(f"{MAGENTA}[Orchestrator Active]{NC} Main agent started", flush=True)
1681
+
1682
+ for line in sys.stdin:
1683
+ line = line.strip()
1684
+ if not line:
1685
+ continue
1686
+ try:
1687
+ data = json.loads(line)
1688
+ msg_type = data.get("type", "")
1689
+
1690
+ if msg_type == "assistant":
1691
+ # Extract and print assistant text
1692
+ message = data.get("message", {})
1693
+ content = message.get("content", [])
1694
+ for item in content:
1695
+ if item.get("type") == "text":
1696
+ text = item.get("text", "")
1697
+ if text:
1698
+ print(text, end="", flush=True)
1699
+ elif item.get("type") == "tool_use":
1700
+ tool = item.get("name", "unknown")
1701
+ tool_id = item.get("id", "")
1702
+ tool_input = item.get("input", {})
1703
+
1704
+ # Extract description based on tool type
1705
+ tool_desc = ""
1706
+ if tool == "Read":
1707
+ tool_desc = tool_input.get("file_path", "")
1708
+ elif tool == "Edit" or tool == "Write":
1709
+ tool_desc = tool_input.get("file_path", "")
1710
+ elif tool == "Bash":
1711
+ tool_desc = tool_input.get("description", tool_input.get("command", "")[:60])
1712
+ elif tool == "Grep":
1713
+ tool_desc = f"pattern: {tool_input.get('pattern', '')}"
1714
+ elif tool == "Glob":
1715
+ tool_desc = tool_input.get("pattern", "")
1716
+
1717
+ # Update orchestrator with current tool activity
1718
+ update_orchestrator_task(tool, tool_desc)
1719
+
1720
+ # Track Task tool calls (agent spawning)
1721
+ if tool == "Task":
1722
+ agent_type = tool_input.get("subagent_type", "general-purpose")
1723
+ description = tool_input.get("description", "")
1724
+ model = tool_input.get("model", "sonnet")
1725
+
1726
+ agent_info = {
1727
+ "agent_id": f"agent-{tool_id[:8]}",
1728
+ "tool_id": tool_id,
1729
+ "agent_type": agent_type,
1730
+ "model": model,
1731
+ "current_task": description,
1732
+ "status": "active",
1733
+ "spawned_at": datetime.now(timezone.utc).isoformat().replace("+00:00", "Z"),
1734
+ "tasks_completed": []
1735
+ }
1736
+ active_agents[tool_id] = agent_info
1737
+ save_agents()
1738
+ print(f"\n{MAGENTA}[Agent Spawned: {agent_type}]{NC} {description}", flush=True)
1739
+
1740
+ # Track TodoWrite for task updates
1741
+ elif tool == "TodoWrite":
1742
+ todos = tool_input.get("todos", [])
1743
+ in_progress = [t for t in todos if t.get("status") == "in_progress"]
1744
+ save_in_progress([{"id": f"todo-{i}", "type": "todo", "payload": {"action": t.get("content", "")}} for i, t in enumerate(in_progress)])
1745
+ print(f"\n{CYAN}[Tool: {tool}]{NC} {len(todos)} items", flush=True)
1746
+
1747
+ else:
1748
+ print(f"\n{CYAN}[Tool: {tool}]{NC}", flush=True)
1749
+
1750
+ elif msg_type == "user":
1751
+ # Tool results - check for agent completion
1752
+ content = data.get("message", {}).get("content", [])
1753
+ for item in content:
1754
+ if item.get("type") == "tool_result":
1755
+ tool_id = item.get("tool_use_id", "")
1756
+
1757
+ # Mark agent as completed if it was a Task
1758
+ if tool_id in active_agents:
1759
+ active_agents[tool_id]["status"] = "completed"
1760
+ active_agents[tool_id]["completed_at"] = datetime.now(timezone.utc).isoformat().replace("+00:00", "Z")
1761
+ save_agents()
1762
+ print(f"{DIM}[Agent Complete]{NC} ", end="", flush=True)
1763
+ else:
1764
+ print(f"{DIM}[Result]{NC} ", end="", flush=True)
1765
+
1766
+ elif msg_type == "result":
1767
+ # Session complete - mark all agents as completed
1768
+ completed_at = datetime.now(timezone.utc).isoformat().replace("+00:00", "Z")
1769
+ for agent_id in active_agents:
1770
+ if active_agents[agent_id].get("status") == "active":
1771
+ active_agents[agent_id]["status"] = "completed"
1772
+ active_agents[agent_id]["completed_at"] = completed_at
1773
+ active_agents[agent_id]["current_task"] = "Session complete"
1774
+
1775
+ # Add session stats to orchestrator
1776
+ if orchestrator_id in active_agents:
1777
+ tool_count = active_agents[orchestrator_id].get("tool_count", 0)
1778
+ active_agents[orchestrator_id]["tasks_completed"].append(f"{tool_count} tools used")
1779
+
1780
+ save_agents()
1781
+ print(f"\n{GREEN}[Session complete]{NC}", flush=True)
1782
+ is_error = data.get("is_error", False)
1783
+ sys.exit(1 if is_error else 0)
1784
+
1785
+ except json.JSONDecodeError:
1786
+ # Not JSON, print as-is
1787
+ print(line, flush=True)
1788
+ except Exception as e:
1789
+ print(f"{YELLOW}[Parse error: {e}]{NC}", file=sys.stderr)
1790
+
1791
+ if __name__ == "__main__":
1792
+ try:
1793
+ process_stream()
1794
+ except KeyboardInterrupt:
1795
+ sys.exit(130)
1796
+ except BrokenPipeError:
1797
+ sys.exit(0)
1798
+ '
1799
+ local exit_code=${PIPESTATUS[0]}
1800
+ set -e
1801
+
1802
+ echo ""
1803
+ echo -e "${CYAN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
1804
+ echo ""
1805
+
1806
+ # Log end time
1807
+ echo "=== Session ended at $(date) with exit code $exit_code ===" >> "$log_file"
1808
+
1809
+ local end_time=$(date +%s)
1810
+ local duration=$((end_time - start_time))
1811
+
1812
+ log_info "Claude exited with code $exit_code after ${duration}s"
1813
+ save_state $retry "exited" $exit_code
1814
+
1815
+ # Check for success - ONLY stop on explicit completion promise
1816
+ # There's never a "complete" product - always improvements, bugs, features
1817
+ if [ $exit_code -eq 0 ]; then
1818
+ # Perpetual mode: NEVER stop, always continue
1819
+ if [ "$PERPETUAL_MODE" = "true" ]; then
1820
+ log_info "Perpetual mode: Ignoring exit, continuing immediately..."
1821
+ ((retry++))
1822
+ continue # Immediately start next iteration, no wait
1823
+ fi
1824
+
1825
+ # Only stop if EXPLICIT completion promise text was output
1826
+ if [ -n "$COMPLETION_PROMISE" ] && check_completion_promise "$log_file"; then
1827
+ echo ""
1828
+ log_header "COMPLETION PROMISE FULFILLED: $COMPLETION_PROMISE"
1829
+ log_info "Explicit completion promise detected in output."
1830
+ save_state $retry "completion_promise_fulfilled" 0
1831
+ return 0
1832
+ fi
1833
+
1834
+ # Warn if Claude says it's "done" but no explicit promise
1835
+ if is_completed; then
1836
+ log_warn "Claude claims completion, but no explicit promise fulfilled."
1837
+ log_warn "Projects are never truly complete - there are always improvements!"
1838
+ fi
1839
+
1840
+ # SUCCESS exit - continue IMMEDIATELY to next iteration (no wait!)
1841
+ log_info "Iteration complete. Continuing to next iteration..."
1842
+ ((retry++))
1843
+ continue # Immediately start next iteration, no exponential backoff
1844
+ fi
1845
+
1846
+ # Only apply retry logic for ERRORS (non-zero exit code)
1847
+ # Handle retry - check for rate limit first
1848
+ local rate_limit_wait=$(detect_rate_limit "$log_file")
1849
+ local wait_time
1850
+
1851
+ if [ $rate_limit_wait -gt 0 ]; then
1852
+ wait_time=$rate_limit_wait
1853
+ local human_time=$(format_duration $wait_time)
1854
+ log_warn "Rate limit detected! Waiting until reset (~$human_time)..."
1855
+ log_info "Rate limit resets at approximately $(date -v+${wait_time}S '+%I:%M %p' 2>/dev/null || date -d "+${wait_time} seconds" '+%I:%M %p' 2>/dev/null || echo 'soon')"
1856
+ else
1857
+ wait_time=$(calculate_wait $retry)
1858
+ log_warn "Will retry in ${wait_time}s..."
1859
+ fi
1860
+
1861
+ log_info "Press Ctrl+C to cancel"
1862
+
1863
+ # Countdown with progress
1864
+ local remaining=$wait_time
1865
+ local interval=10
1866
+ # Use longer interval for long waits
1867
+ if [ $wait_time -gt 1800 ]; then
1868
+ interval=60
1869
+ fi
1870
+
1871
+ while [ $remaining -gt 0 ]; do
1872
+ local human_remaining=$(format_duration $remaining)
1873
+ printf "\r${YELLOW}Resuming in ${human_remaining}...${NC} "
1874
+ sleep $interval
1875
+ remaining=$((remaining - interval))
1876
+ done
1877
+ echo ""
1878
+
1879
+ ((retry++))
1880
+ done
1881
+
1882
+ log_error "Max retries ($MAX_RETRIES) exceeded"
1883
+ save_state $retry "failed" 1
1884
+ return 1
1885
+ }
1886
+
1887
+ #===============================================================================
1888
+ # Cleanup Handler
1889
+ #===============================================================================
1890
+
1891
+ cleanup() {
1892
+ echo ""
1893
+ log_warn "Received interrupt signal"
1894
+ stop_dashboard
1895
+ stop_status_monitor
1896
+ save_state ${RETRY_COUNT:-0} "interrupted" 130
1897
+ log_info "State saved. Run again to resume."
1898
+ exit 130
1899
+ }
1900
+
1901
+ #===============================================================================
1902
+ # Main Entry Point
1903
+ #===============================================================================
1904
+
1905
+ main() {
1906
+ trap cleanup INT TERM
1907
+
1908
+ echo ""
1909
+ echo -e "${BOLD}${BLUE}"
1910
+ echo " ██╗ ██████╗ ██╗ ██╗██╗ ███╗ ███╗ ██████╗ ██████╗ ███████╗"
1911
+ echo " ██║ ██╔═══██╗██║ ██╔╝██║ ████╗ ████║██╔═══██╗██╔══██╗██╔════╝"
1912
+ echo " ██║ ██║ ██║█████╔╝ ██║ ██╔████╔██║██║ ██║██║ ██║█████╗ "
1913
+ echo " ██║ ██║ ██║██╔═██╗ ██║ ██║╚██╔╝██║██║ ██║██║ ██║██╔══╝ "
1914
+ echo " ███████╗╚██████╔╝██║ ██╗██║ ██║ ╚═╝ ██║╚██████╔╝██████╔╝███████╗"
1915
+ echo " ╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝"
1916
+ echo -e "${NC}"
1917
+ echo -e " ${CYAN}Autonomous Multi-Agent Startup System${NC}"
1918
+ echo -e " ${CYAN}Version: $(cat "$PROJECT_DIR/VERSION" 2>/dev/null || echo "2.x.x")${NC}"
1919
+ echo ""
1920
+
1921
+ # Parse arguments
1922
+ PRD_PATH="${1:-}"
1923
+
1924
+ # Validate PRD if provided
1925
+ if [ -n "$PRD_PATH" ] && [ ! -f "$PRD_PATH" ]; then
1926
+ log_error "PRD file not found: $PRD_PATH"
1927
+ exit 1
1928
+ fi
1929
+
1930
+ # Check prerequisites (unless skipped)
1931
+ if [ "$SKIP_PREREQS" != "true" ]; then
1932
+ if ! check_prerequisites; then
1933
+ exit 1
1934
+ fi
1935
+ else
1936
+ log_warn "Skipping prerequisite checks (LOKI_SKIP_PREREQS=true)"
1937
+ fi
1938
+
1939
+ # Check skill installation
1940
+ if ! check_skill_installed; then
1941
+ exit 1
1942
+ fi
1943
+
1944
+ # Initialize .loki directory
1945
+ init_loki_dir
1946
+
1947
+ # Start web dashboard (if enabled)
1948
+ if [ "$ENABLE_DASHBOARD" = "true" ]; then
1949
+ start_dashboard
1950
+ else
1951
+ log_info "Dashboard disabled (LOKI_DASHBOARD=false)"
1952
+ fi
1953
+
1954
+ # Start status monitor (background updates to .loki/STATUS.txt)
1955
+ start_status_monitor
1956
+
1957
+ # Start resource monitor (background CPU/memory checks)
1958
+ start_resource_monitor
1959
+
1960
+ # Initialize cross-project learnings database
1961
+ init_learnings_db
1962
+
1963
+ # Load relevant learnings for this project context
1964
+ if [ -n "$PRD_PATH" ] && [ -f "$PRD_PATH" ]; then
1965
+ get_relevant_learnings "$(cat "$PRD_PATH" | head -100)"
1966
+ else
1967
+ get_relevant_learnings "general development"
1968
+ fi
1969
+
1970
+ # Log session start for audit
1971
+ audit_log "SESSION_START" "prd=$PRD_PATH,dashboard=$ENABLE_DASHBOARD,staged_autonomy=$STAGED_AUTONOMY"
1972
+
1973
+ # Run autonomous loop
1974
+ local result=0
1975
+ run_autonomous "$PRD_PATH" || result=$?
1976
+
1977
+ # Extract and save learnings from this session
1978
+ extract_learnings_from_session
1979
+
1980
+ # Log session end for audit
1981
+ audit_log "SESSION_END" "result=$result,prd=$PRD_PATH"
1982
+
1983
+ # Cleanup
1984
+ stop_dashboard
1985
+ stop_status_monitor
1986
+
1987
+ exit $result
1988
+ }
1989
+
1990
+ # Run main
1991
+ main "$@"