@rosetears/aili-pi 0.1.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 (531) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +109 -0
  3. package/THIRD_PARTY_NOTICES.md +64 -0
  4. package/extensions/index.ts +6 -0
  5. package/install.sh +5 -0
  6. package/manifests/adapter-evidence.json +45 -0
  7. package/manifests/capabilities.json +124 -0
  8. package/manifests/live-verification.json +26 -0
  9. package/manifests/provenance.json +71 -0
  10. package/manifests/roles.json +474 -0
  11. package/manifests/sbom.json +7797 -0
  12. package/manifests/skill-compatibility.json +8100 -0
  13. package/manifests/subagent-provenance.json +37 -0
  14. package/package.json +91 -0
  15. package/prompts/build.md +8 -0
  16. package/prompts/define.md +8 -0
  17. package/prompts/ideate.md +8 -0
  18. package/prompts/local-review.md +8 -0
  19. package/prompts/ship.md +8 -0
  20. package/roles/agent-evaluator.md +47 -0
  21. package/roles/ai-regression-scout.md +47 -0
  22. package/roles/browser-qa-runner.md +47 -0
  23. package/roles/code-reviewer.md +47 -0
  24. package/roles/code-scout.md +47 -0
  25. package/roles/convergence-reviewer.md +55 -0
  26. package/roles/doc-researcher.md +47 -0
  27. package/roles/e2e-artifact-runner.md +47 -0
  28. package/roles/implementer.md +47 -0
  29. package/roles/opensource-sanitizer.md +47 -0
  30. package/roles/plan-auditor.md +47 -0
  31. package/roles/pr-test-analyzer.md +47 -0
  32. package/roles/security-auditor.md +47 -0
  33. package/roles/silent-failure-reviewer.md +47 -0
  34. package/roles/spec-miner.md +47 -0
  35. package/roles/test-coverage-reviewer.md +47 -0
  36. package/roles/test-engineer.md +48 -0
  37. package/roles/web-performance-auditor.md +47 -0
  38. package/roles/web-researcher.md +47 -0
  39. package/scripts/apply-adapter-evidence.ts +73 -0
  40. package/scripts/bootstrap.sh +180 -0
  41. package/scripts/generate-provenance.ts +143 -0
  42. package/scripts/local-package-e2e.ts +51 -0
  43. package/scripts/sync-roles.ts +213 -0
  44. package/scripts/sync-skills.ts +356 -0
  45. package/scripts/validate-runtime.ts +11 -0
  46. package/skills/academic-paper-review/SKILL.md +81 -0
  47. package/skills/agents-md-initialization/SKILL.md +121 -0
  48. package/skills/agents-md-initialization/references/agents-template.md +83 -0
  49. package/skills/agents-md-initialization/references/agents_md.py +215 -0
  50. package/skills/ai-regression-scout/SKILL.md +24 -0
  51. package/skills/aili-delivery-flow/SKILL.md +125 -0
  52. package/skills/aili-delivery-flow/references/artifact-contracts.md +138 -0
  53. package/skills/aili-delivery-flow/references/backend-routing.md +40 -0
  54. package/skills/aili-delivery-flow/references/build-execution-loop.md +113 -0
  55. package/skills/aili-delivery-flow/references/build-goal-mode.md +3 -0
  56. package/skills/aili-delivery-flow/references/direct-vs-delegated-work.md +38 -0
  57. package/skills/aili-delivery-flow/references/implementation-packages.md +54 -0
  58. package/skills/aili-delivery-flow/references/lifecycle.md +127 -0
  59. package/skills/aili-delivery-flow/references/protocols/acceptance-test-plan.md +18 -0
  60. package/skills/aili-delivery-flow/references/protocols/alignment-questionnaire.md +10 -0
  61. package/skills/aili-delivery-flow/references/protocols/closeout-report.md +101 -0
  62. package/skills/aili-delivery-flow/references/protocols/compact-evidence-pack.md +46 -0
  63. package/skills/aili-delivery-flow/references/protocols/idea-brief.md +10 -0
  64. package/skills/aili-delivery-flow/references/protocols/implementation-package.md +53 -0
  65. package/skills/aili-delivery-flow/references/protocols/research-evidence-pack.md +19 -0
  66. package/skills/aili-delivery-flow/references/protocols/review-report.md +7 -0
  67. package/skills/aili-delivery-flow/references/protocols/spec-draft.md +12 -0
  68. package/skills/aili-delivery-flow/references/protocols/subagent-result.md +60 -0
  69. package/skills/aili-delivery-flow/references/protocols/subagent-task-packet.md +29 -0
  70. package/skills/aili-delivery-flow/references/protocols/worktree-context.md +109 -0
  71. package/skills/aili-delivery-flow/references/questionnaire-policy.md +62 -0
  72. package/skills/aili-delivery-flow/references/review-repair-loop.md +16 -0
  73. package/skills/aili-delivery-flow/references/test-document-policy.md +35 -0
  74. package/skills/android-native-dev/SKILL.md +722 -0
  75. package/skills/android-native-dev/references/accessibility.md +209 -0
  76. package/skills/android-native-dev/references/adaptive-screens.md +231 -0
  77. package/skills/android-native-dev/references/design-style-guide.md +365 -0
  78. package/skills/android-native-dev/references/functional-requirements.md +229 -0
  79. package/skills/android-native-dev/references/motion-system.md +203 -0
  80. package/skills/android-native-dev/references/performance-stability.md +223 -0
  81. package/skills/android-native-dev/references/privacy-security.md +244 -0
  82. package/skills/android-native-dev/references/testing.md +554 -0
  83. package/skills/android-native-dev/references/visual-design.md +246 -0
  84. package/skills/api-and-interface-design/SKILL.md +318 -0
  85. package/skills/browser-qa/SKILL.md +32 -0
  86. package/skills/browser-testing-with-devtools/SKILL.md +323 -0
  87. package/skills/build-failure-repair/SKILL.md +49 -0
  88. package/skills/chart-visualization/SKILL.md +73 -0
  89. package/skills/ci-cd-and-automation/SKILL.md +353 -0
  90. package/skills/code-review-and-quality/SKILL.md +375 -0
  91. package/skills/code-review-quality-gates/SKILL.md +132 -0
  92. package/skills/code-simplification/SKILL.md +371 -0
  93. package/skills/comment-accuracy-review/SKILL.md +37 -0
  94. package/skills/consulting-analysis/SKILL.md +69 -0
  95. package/skills/context-engineering/SKILL.md +375 -0
  96. package/skills/coverage-review/SKILL.md +24 -0
  97. package/skills/data-analysis/SKILL.md +74 -0
  98. package/skills/deprecation-and-migration/SKILL.md +222 -0
  99. package/skills/documentation-and-adrs/SKILL.md +330 -0
  100. package/skills/e2e-artifact-handling/SKILL.md +30 -0
  101. package/skills/evidence-scoped-retrospective/SKILL.md +156 -0
  102. package/skills/explain-by-allegory/SKILL.md +99 -0
  103. package/skills/flutter-dev/SKILL.md +162 -0
  104. package/skills/flutter-dev/references/animations.md +497 -0
  105. package/skills/flutter-dev/references/bloc-state.md +281 -0
  106. package/skills/flutter-dev/references/forms.md +656 -0
  107. package/skills/flutter-dev/references/gorouter-navigation.md +257 -0
  108. package/skills/flutter-dev/references/localization.md +510 -0
  109. package/skills/flutter-dev/references/networking.md +566 -0
  110. package/skills/flutter-dev/references/performance.md +305 -0
  111. package/skills/flutter-dev/references/platform-specific.md +417 -0
  112. package/skills/flutter-dev/references/project-structure.md +273 -0
  113. package/skills/flutter-dev/references/riverpod-state.md +232 -0
  114. package/skills/flutter-dev/references/testing.md +364 -0
  115. package/skills/flutter-dev/references/widget-patterns.md +233 -0
  116. package/skills/frontend-dev/SKILL.md +468 -0
  117. package/skills/frontend-dev/canvas-fonts/ArsenalSC-OFL.txt +93 -0
  118. package/skills/frontend-dev/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  119. package/skills/frontend-dev/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  120. package/skills/frontend-dev/canvas-fonts/BigShoulders-OFL.txt +93 -0
  121. package/skills/frontend-dev/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  122. package/skills/frontend-dev/canvas-fonts/Boldonse-OFL.txt +93 -0
  123. package/skills/frontend-dev/canvas-fonts/Boldonse-Regular.ttf +0 -0
  124. package/skills/frontend-dev/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  125. package/skills/frontend-dev/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
  126. package/skills/frontend-dev/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  127. package/skills/frontend-dev/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  128. package/skills/frontend-dev/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  129. package/skills/frontend-dev/canvas-fonts/CrimsonPro-OFL.txt +93 -0
  130. package/skills/frontend-dev/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  131. package/skills/frontend-dev/canvas-fonts/DMMono-OFL.txt +93 -0
  132. package/skills/frontend-dev/canvas-fonts/DMMono-Regular.ttf +0 -0
  133. package/skills/frontend-dev/canvas-fonts/EricaOne-OFL.txt +94 -0
  134. package/skills/frontend-dev/canvas-fonts/EricaOne-Regular.ttf +0 -0
  135. package/skills/frontend-dev/canvas-fonts/GeistMono-Bold.ttf +0 -0
  136. package/skills/frontend-dev/canvas-fonts/GeistMono-OFL.txt +93 -0
  137. package/skills/frontend-dev/canvas-fonts/GeistMono-Regular.ttf +0 -0
  138. package/skills/frontend-dev/canvas-fonts/Gloock-OFL.txt +93 -0
  139. package/skills/frontend-dev/canvas-fonts/Gloock-Regular.ttf +0 -0
  140. package/skills/frontend-dev/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  141. package/skills/frontend-dev/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
  142. package/skills/frontend-dev/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  143. package/skills/frontend-dev/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  144. package/skills/frontend-dev/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  145. package/skills/frontend-dev/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  146. package/skills/frontend-dev/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  147. package/skills/frontend-dev/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  148. package/skills/frontend-dev/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  149. package/skills/frontend-dev/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  150. package/skills/frontend-dev/canvas-fonts/InstrumentSans-OFL.txt +93 -0
  151. package/skills/frontend-dev/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  152. package/skills/frontend-dev/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  153. package/skills/frontend-dev/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  154. package/skills/frontend-dev/canvas-fonts/Italiana-OFL.txt +93 -0
  155. package/skills/frontend-dev/canvas-fonts/Italiana-Regular.ttf +0 -0
  156. package/skills/frontend-dev/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  157. package/skills/frontend-dev/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
  158. package/skills/frontend-dev/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  159. package/skills/frontend-dev/canvas-fonts/Jura-Light.ttf +0 -0
  160. package/skills/frontend-dev/canvas-fonts/Jura-Medium.ttf +0 -0
  161. package/skills/frontend-dev/canvas-fonts/Jura-OFL.txt +93 -0
  162. package/skills/frontend-dev/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
  163. package/skills/frontend-dev/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  164. package/skills/frontend-dev/canvas-fonts/Lora-Bold.ttf +0 -0
  165. package/skills/frontend-dev/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  166. package/skills/frontend-dev/canvas-fonts/Lora-Italic.ttf +0 -0
  167. package/skills/frontend-dev/canvas-fonts/Lora-OFL.txt +93 -0
  168. package/skills/frontend-dev/canvas-fonts/Lora-Regular.ttf +0 -0
  169. package/skills/frontend-dev/canvas-fonts/NationalPark-Bold.ttf +0 -0
  170. package/skills/frontend-dev/canvas-fonts/NationalPark-OFL.txt +93 -0
  171. package/skills/frontend-dev/canvas-fonts/NationalPark-Regular.ttf +0 -0
  172. package/skills/frontend-dev/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
  173. package/skills/frontend-dev/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  174. package/skills/frontend-dev/canvas-fonts/Outfit-Bold.ttf +0 -0
  175. package/skills/frontend-dev/canvas-fonts/Outfit-OFL.txt +93 -0
  176. package/skills/frontend-dev/canvas-fonts/Outfit-Regular.ttf +0 -0
  177. package/skills/frontend-dev/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  178. package/skills/frontend-dev/canvas-fonts/PixelifySans-OFL.txt +93 -0
  179. package/skills/frontend-dev/canvas-fonts/PoiretOne-OFL.txt +93 -0
  180. package/skills/frontend-dev/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  181. package/skills/frontend-dev/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  182. package/skills/frontend-dev/canvas-fonts/RedHatMono-OFL.txt +93 -0
  183. package/skills/frontend-dev/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  184. package/skills/frontend-dev/canvas-fonts/Silkscreen-OFL.txt +93 -0
  185. package/skills/frontend-dev/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  186. package/skills/frontend-dev/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  187. package/skills/frontend-dev/canvas-fonts/SmoochSans-OFL.txt +93 -0
  188. package/skills/frontend-dev/canvas-fonts/Tektur-Medium.ttf +0 -0
  189. package/skills/frontend-dev/canvas-fonts/Tektur-OFL.txt +93 -0
  190. package/skills/frontend-dev/canvas-fonts/Tektur-Regular.ttf +0 -0
  191. package/skills/frontend-dev/canvas-fonts/WorkSans-Bold.ttf +0 -0
  192. package/skills/frontend-dev/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  193. package/skills/frontend-dev/canvas-fonts/WorkSans-Italic.ttf +0 -0
  194. package/skills/frontend-dev/canvas-fonts/WorkSans-OFL.txt +93 -0
  195. package/skills/frontend-dev/canvas-fonts/WorkSans-Regular.ttf +0 -0
  196. package/skills/frontend-dev/canvas-fonts/YoungSerif-OFL.txt +93 -0
  197. package/skills/frontend-dev/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  198. package/skills/frontend-dev/references/asset-prompt-guide.md +43 -0
  199. package/skills/frontend-dev/references/env-setup.md +33 -0
  200. package/skills/frontend-dev/references/minimax-cli-reference.md +133 -0
  201. package/skills/frontend-dev/references/minimax-image-guide.md +65 -0
  202. package/skills/frontend-dev/references/minimax-music-guide.md +216 -0
  203. package/skills/frontend-dev/references/minimax-tts-guide.md +78 -0
  204. package/skills/frontend-dev/references/minimax-video-guide.md +82 -0
  205. package/skills/frontend-dev/references/minimax-voice-catalog.md +685 -0
  206. package/skills/frontend-dev/references/motion-recipes.md +407 -0
  207. package/skills/frontend-dev/references/troubleshooting.md +85 -0
  208. package/skills/frontend-dev/scripts/minimax_image.py +137 -0
  209. package/skills/frontend-dev/scripts/minimax_music.py +157 -0
  210. package/skills/frontend-dev/scripts/minimax_tts.py +127 -0
  211. package/skills/frontend-dev/scripts/minimax_video.py +187 -0
  212. package/skills/frontend-dev/templates/generator_template.js +223 -0
  213. package/skills/frontend-dev/templates/viewer.html +599 -0
  214. package/skills/frontend-ui-engineering/SKILL.md +367 -0
  215. package/skills/fullstack-dev/SKILL.md +819 -0
  216. package/skills/fullstack-dev/references/api-design.md +444 -0
  217. package/skills/fullstack-dev/references/auth-flow.md +165 -0
  218. package/skills/fullstack-dev/references/db-schema.md +706 -0
  219. package/skills/fullstack-dev/references/django-best-practices.md +466 -0
  220. package/skills/fullstack-dev/references/environment-management.md +78 -0
  221. package/skills/fullstack-dev/references/release-checklist.md +278 -0
  222. package/skills/fullstack-dev/references/technology-selection.md +254 -0
  223. package/skills/fullstack-dev/references/testing-strategy.md +404 -0
  224. package/skills/git-workflow-and-versioning/SKILL.md +446 -0
  225. package/skills/github-evidence-triage/SKILL.md +115 -0
  226. package/skills/harness-evolution/SKILL.md +59 -0
  227. package/skills/harness-evolution/references/activation-matrix.md +13 -0
  228. package/skills/harness-evolution/references/approval-policy.md +20 -0
  229. package/skills/harness-evolution/references/change-report-template.md +33 -0
  230. package/skills/harness-evolution/references/component-taxonomy.md +19 -0
  231. package/skills/harness-evolution/references/verdict-policy.md +13 -0
  232. package/skills/harness-issue-triage/SKILL.md +72 -0
  233. package/skills/harness-issue-triage/references/component-diagnosis.md +25 -0
  234. package/skills/harness-issue-triage/references/triage-report-template.md +34 -0
  235. package/skills/harness-optimization-audit/SKILL.md +125 -0
  236. package/skills/idea-refine/SKILL.md +191 -0
  237. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/LICENSE +21 -0
  238. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/NOTICE.md +9 -0
  239. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/idea-refine/SKILL.upstream.md +178 -0
  240. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/idea-refine/examples.md +238 -0
  241. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/idea-refine/frameworks.md +99 -0
  242. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/idea-refine/refinement-criteria.md +113 -0
  243. package/skills/idea-refine/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/idea-refine/scripts/idea-refine.upstream.sh +15 -0
  244. package/skills/incremental-implementation/SKILL.md +252 -0
  245. package/skills/ios-application-dev/SKILL.md +212 -0
  246. package/skills/ios-application-dev/references/accessibility.md +259 -0
  247. package/skills/ios-application-dev/references/graphics-animation.md +350 -0
  248. package/skills/ios-application-dev/references/layout-system.md +199 -0
  249. package/skills/ios-application-dev/references/metal-shader.md +178 -0
  250. package/skills/ios-application-dev/references/navigation-patterns.md +175 -0
  251. package/skills/ios-application-dev/references/swift-coding-standards.md +757 -0
  252. package/skills/ios-application-dev/references/swiftui-design-guidelines.md +1167 -0
  253. package/skills/ios-application-dev/references/system-integration.md +401 -0
  254. package/skills/ios-application-dev/references/uikit-components.md +297 -0
  255. package/skills/local-review-gate/SKILL.md +207 -0
  256. package/skills/local-review-gate/references/addyosmani-code-review-rubric.md +33 -0
  257. package/skills/local-review-gate/references/codex-github-compatibility.md +26 -0
  258. package/skills/local-review-gate/references/ecc-code-review-adaptation.md +40 -0
  259. package/skills/local-review-gate/references/graphify-local-review.md +33 -0
  260. package/skills/local-review-gate/references/orchestration-adaptation.md +51 -0
  261. package/skills/local-review-gate/references/review-repair-lane-adaptation.md +46 -0
  262. package/skills/local-review-gate/references/upstream-provenance.md +61 -0
  263. package/skills/mature-project-pattern-research/SKILL.md +155 -0
  264. package/skills/mature-project-pattern-research/references/research-rubric.md +45 -0
  265. package/skills/minimax-docx/LICENSE +21 -0
  266. package/skills/minimax-docx/SKILL.md +273 -0
  267. package/skills/minimax-docx/assets/styles/academic_styles.xml +250 -0
  268. package/skills/minimax-docx/assets/styles/corporate_styles.xml +284 -0
  269. package/skills/minimax-docx/assets/styles/default_styles.xml +449 -0
  270. package/skills/minimax-docx/assets/xsd/aesthetic-rules.xsd +470 -0
  271. package/skills/minimax-docx/assets/xsd/business-rules.xsd +130 -0
  272. package/skills/minimax-docx/assets/xsd/common-types.xsd +159 -0
  273. package/skills/minimax-docx/assets/xsd/wml-subset.xsd +589 -0
  274. package/skills/minimax-docx/references/cjk_typography.md +357 -0
  275. package/skills/minimax-docx/references/cjk_university_template_guide.md +184 -0
  276. package/skills/minimax-docx/references/comments_guide.md +191 -0
  277. package/skills/minimax-docx/references/design_good_bad_examples.md +829 -0
  278. package/skills/minimax-docx/references/design_principles.md +819 -0
  279. package/skills/minimax-docx/references/openxml_element_order.md +308 -0
  280. package/skills/minimax-docx/references/openxml_encyclopedia_part1.md +4061 -0
  281. package/skills/minimax-docx/references/openxml_encyclopedia_part2.md +2820 -0
  282. package/skills/minimax-docx/references/openxml_encyclopedia_part3.md +3381 -0
  283. package/skills/minimax-docx/references/openxml_namespaces.md +82 -0
  284. package/skills/minimax-docx/references/openxml_units.md +72 -0
  285. package/skills/minimax-docx/references/scenario_a_create.md +284 -0
  286. package/skills/minimax-docx/references/scenario_b_edit_content.md +295 -0
  287. package/skills/minimax-docx/references/scenario_c_apply_template.md +456 -0
  288. package/skills/minimax-docx/references/track_changes_guide.md +200 -0
  289. package/skills/minimax-docx/references/troubleshooting.md +506 -0
  290. package/skills/minimax-docx/references/typography_guide.md +294 -0
  291. package/skills/minimax-docx/references/xsd_validation_guide.md +158 -0
  292. package/skills/minimax-docx/scripts/doc_to_docx.sh +40 -0
  293. package/skills/minimax-docx/scripts/docx_preview.sh +37 -0
  294. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Cli/MiniMaxAIDocx.Cli.csproj +19 -0
  295. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Cli/Program.cs +18 -0
  296. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/AnalyzeCommand.cs +147 -0
  297. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/ApplyTemplateCommand.cs +322 -0
  298. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/CreateCommand.cs +324 -0
  299. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/DiffCommand.cs +155 -0
  300. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/EditContentCommand.cs +487 -0
  301. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/FixOrderCommand.cs +108 -0
  302. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/MergeRunsCommand.cs +122 -0
  303. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/ValidateCommand.cs +107 -0
  304. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/MiniMaxAIDocx.Core.csproj +15 -0
  305. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/CommentSynchronizer.cs +169 -0
  306. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/ElementOrder.cs +80 -0
  307. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/NamespaceConstants.cs +42 -0
  308. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/RunMerger.cs +81 -0
  309. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/StyleAnalyzer.cs +81 -0
  310. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/TrackChangesHelper.cs +99 -0
  311. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/UnitConverter.cs +23 -0
  312. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples.cs +1832 -0
  313. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch1.cs +910 -0
  314. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch2.cs +999 -0
  315. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch3.cs +1048 -0
  316. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch4.cs +1038 -0
  317. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/CharacterFormattingSamples.cs +1020 -0
  318. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/DocumentCreationSamples.cs +1121 -0
  319. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/FieldAndTocSamples.cs +624 -0
  320. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/FootnoteAndCommentSamples.cs +675 -0
  321. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/HeaderFooterSamples.cs +838 -0
  322. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ImageSamples.cs +917 -0
  323. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ListAndNumberingSamples.cs +826 -0
  324. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ParagraphFormattingSamples.cs +1199 -0
  325. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/StyleSystemSamples.cs +1487 -0
  326. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/TableSamples.cs +1163 -0
  327. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/TrackChangesSamples.cs +595 -0
  328. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/CjkHelper.cs +39 -0
  329. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/FontDefaults.cs +24 -0
  330. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/PageSizes.cs +20 -0
  331. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/BusinessRuleValidator.cs +224 -0
  332. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/GateCheckValidator.cs +148 -0
  333. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/ValidationResult.cs +23 -0
  334. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/XsdValidator.cs +69 -0
  335. package/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.slnx +4 -0
  336. package/skills/minimax-docx/scripts/env_check.sh +196 -0
  337. package/skills/minimax-docx/scripts/setup.ps1 +274 -0
  338. package/skills/minimax-docx/scripts/setup.sh +504 -0
  339. package/skills/minimax-pdf/README.md +222 -0
  340. package/skills/minimax-pdf/SKILL.md +218 -0
  341. package/skills/minimax-pdf/design/design.md +381 -0
  342. package/skills/minimax-pdf/scripts/cover.py +1579 -0
  343. package/skills/minimax-pdf/scripts/fill_inspect.py +200 -0
  344. package/skills/minimax-pdf/scripts/fill_write.py +242 -0
  345. package/skills/minimax-pdf/scripts/make.sh +491 -0
  346. package/skills/minimax-pdf/scripts/merge.py +112 -0
  347. package/skills/minimax-pdf/scripts/palette.py +521 -0
  348. package/skills/minimax-pdf/scripts/reformat_parse.py +374 -0
  349. package/skills/minimax-pdf/scripts/render_body.py +1052 -0
  350. package/skills/minimax-pdf/scripts/render_cover.js +111 -0
  351. package/skills/minimax-xlsx/SKILL.md +156 -0
  352. package/skills/minimax-xlsx/references/create.md +691 -0
  353. package/skills/minimax-xlsx/references/edit.md +684 -0
  354. package/skills/minimax-xlsx/references/fix.md +37 -0
  355. package/skills/minimax-xlsx/references/format.md +768 -0
  356. package/skills/minimax-xlsx/references/ooxml-cheatsheet.md +231 -0
  357. package/skills/minimax-xlsx/references/read-analyze.md +97 -0
  358. package/skills/minimax-xlsx/references/validate.md +772 -0
  359. package/skills/minimax-xlsx/scripts/formula_check.py +422 -0
  360. package/skills/minimax-xlsx/scripts/libreoffice_recalc.py +248 -0
  361. package/skills/minimax-xlsx/scripts/shared_strings_builder.py +163 -0
  362. package/skills/minimax-xlsx/scripts/style_audit.py +575 -0
  363. package/skills/minimax-xlsx/scripts/xlsx_add_column.py +395 -0
  364. package/skills/minimax-xlsx/scripts/xlsx_insert_row.py +274 -0
  365. package/skills/minimax-xlsx/scripts/xlsx_pack.py +87 -0
  366. package/skills/minimax-xlsx/scripts/xlsx_reader.py +362 -0
  367. package/skills/minimax-xlsx/scripts/xlsx_shift_rows.py +396 -0
  368. package/skills/minimax-xlsx/scripts/xlsx_unpack.py +130 -0
  369. package/skills/minimax-xlsx/templates/minimal_xlsx/[Content_Types].xml +9 -0
  370. package/skills/minimax-xlsx/templates/minimal_xlsx/_rels/.rels +6 -0
  371. package/skills/minimax-xlsx/templates/minimal_xlsx/xl/_rels/workbook.xml.rels +19 -0
  372. package/skills/minimax-xlsx/templates/minimal_xlsx/xl/sharedStrings.xml +33 -0
  373. package/skills/minimax-xlsx/templates/minimal_xlsx/xl/styles.xml +160 -0
  374. package/skills/minimax-xlsx/templates/minimal_xlsx/xl/workbook.xml +30 -0
  375. package/skills/minimax-xlsx/templates/minimal_xlsx/xl/worksheets/sheet1.xml +70 -0
  376. package/skills/newsletter-generation/SKILL.md +71 -0
  377. package/skills/oss-release-readiness/SKILL.md +47 -0
  378. package/skills/parallel-subagent-dispatch/SKILL.md +58 -0
  379. package/skills/performance-optimization/SKILL.md +364 -0
  380. package/skills/planning-and-task-breakdown/SKILL.md +290 -0
  381. package/skills/pptx-generator/SKILL.md +275 -0
  382. package/skills/pptx-generator/references/design-system.md +392 -0
  383. package/skills/pptx-generator/references/editing.md +162 -0
  384. package/skills/pptx-generator/references/pitfalls.md +112 -0
  385. package/skills/pptx-generator/references/pptxgenjs.md +420 -0
  386. package/skills/pptx-generator/references/slide-types.md +413 -0
  387. package/skills/pr-test-analysis/SKILL.md +24 -0
  388. package/skills/react-native-dev/SKILL.md +180 -0
  389. package/skills/react-native-dev/references/animations.md +254 -0
  390. package/skills/react-native-dev/references/components.md +124 -0
  391. package/skills/react-native-dev/references/engineering.md +527 -0
  392. package/skills/react-native-dev/references/forms.md +300 -0
  393. package/skills/react-native-dev/references/native-capabilities.md +163 -0
  394. package/skills/react-native-dev/references/navigation.md +271 -0
  395. package/skills/react-native-dev/references/networking.md +346 -0
  396. package/skills/react-native-dev/references/performance.md +215 -0
  397. package/skills/react-native-dev/references/state-management.md +230 -0
  398. package/skills/react-native-dev/references/styling.md +117 -0
  399. package/skills/react-native-dev/references/testing.md +341 -0
  400. package/skills/requirements-grilling/SKILL.md +447 -0
  401. package/skills/requirements-grilling/references/ADR-FORMAT.md +46 -0
  402. package/skills/requirements-grilling/references/CONTEXT-FORMAT.md +41 -0
  403. package/skills/requirements-grilling/references/INTERVIEW-PACKET-FORMAT.md +62 -0
  404. package/skills/requirements-grilling/references/MIT-LICENSE-MATT-POCOCK.md +25 -0
  405. package/skills/requirements-grilling/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/LICENSE +21 -0
  406. package/skills/requirements-grilling/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/NOTICE.md +9 -0
  407. package/skills/requirements-grilling/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/interview-me/SKILL.upstream.md +225 -0
  408. package/skills/requirements-grilling/references/upstream/mattpocock-skills/9603c1cc8118d08bc1b3bf34cf714f62178dea3b/LICENSE +21 -0
  409. package/skills/requirements-grilling/references/upstream/mattpocock-skills/9603c1cc8118d08bc1b3bf34cf714f62178dea3b/NOTICE.md +12 -0
  410. package/skills/requirements-grilling/references/upstream/mattpocock-skills/9603c1cc8118d08bc1b3bf34cf714f62178dea3b/batch-grill-me/SKILL.upstream.md +15 -0
  411. package/skills/requirements-grilling/references/upstream/mattpocock-skills/9603c1cc8118d08bc1b3bf34cf714f62178dea3b/grill-me/SKILL.upstream.md +7 -0
  412. package/skills/requirements-grilling/references/upstream/mattpocock-skills/9603c1cc8118d08bc1b3bf34cf714f62178dea3b/grilling/SKILL.upstream.md +12 -0
  413. package/skills/review-pipeline/SKILL.md +38 -0
  414. package/skills/rose-memory/SKILL.md +210 -0
  415. package/skills/rose-memory/references/README.md +48 -0
  416. package/skills/rose-memory/references/memory_cli.py +2384 -0
  417. package/skills/rose-memory/references/schema.sql +315 -0
  418. package/skills/security-and-hardening/SKILL.md +369 -0
  419. package/skills/session-handoff/SKILL.md +88 -0
  420. package/skills/session-handoff/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/LICENSE +21 -0
  421. package/skills/session-handoff/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/NOTICE.md +9 -0
  422. package/skills/session-handoff/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/productivity/handoff/SKILL.upstream.md +16 -0
  423. package/skills/session-handoff/scripts/session_handoff.py +764 -0
  424. package/skills/shader-dev/SKILL.md +316 -0
  425. package/skills/shader-dev/reference/ambient-occlusion.md +382 -0
  426. package/skills/shader-dev/reference/analytic-ray-tracing.md +651 -0
  427. package/skills/shader-dev/reference/anti-aliasing.md +71 -0
  428. package/skills/shader-dev/reference/atmospheric-scattering.md +571 -0
  429. package/skills/shader-dev/reference/camera-effects.md +80 -0
  430. package/skills/shader-dev/reference/cellular-automata.md +635 -0
  431. package/skills/shader-dev/reference/color-palette.md +481 -0
  432. package/skills/shader-dev/reference/csg-boolean-operations.md +466 -0
  433. package/skills/shader-dev/reference/domain-repetition.md +436 -0
  434. package/skills/shader-dev/reference/domain-warping.md +419 -0
  435. package/skills/shader-dev/reference/fluid-simulation.md +425 -0
  436. package/skills/shader-dev/reference/fractal-rendering.md +525 -0
  437. package/skills/shader-dev/reference/lighting-model.md +639 -0
  438. package/skills/shader-dev/reference/matrix-transform.md +535 -0
  439. package/skills/shader-dev/reference/multipass-buffer.md +571 -0
  440. package/skills/shader-dev/reference/normal-estimation.md +418 -0
  441. package/skills/shader-dev/reference/particle-system.md +589 -0
  442. package/skills/shader-dev/reference/path-tracing-gi.md +602 -0
  443. package/skills/shader-dev/reference/polar-uv-manipulation.md +521 -0
  444. package/skills/shader-dev/reference/post-processing.md +375 -0
  445. package/skills/shader-dev/reference/procedural-2d-pattern.md +439 -0
  446. package/skills/shader-dev/reference/procedural-noise.md +551 -0
  447. package/skills/shader-dev/reference/ray-marching.md +396 -0
  448. package/skills/shader-dev/reference/sdf-2d.md +724 -0
  449. package/skills/shader-dev/reference/sdf-3d.md +805 -0
  450. package/skills/shader-dev/reference/sdf-tricks.md +63 -0
  451. package/skills/shader-dev/reference/shadow-techniques.md +476 -0
  452. package/skills/shader-dev/reference/simulation-physics.md +644 -0
  453. package/skills/shader-dev/reference/sound-synthesis.md +578 -0
  454. package/skills/shader-dev/reference/terrain-rendering.md +839 -0
  455. package/skills/shader-dev/reference/texture-mapping-advanced.md +87 -0
  456. package/skills/shader-dev/reference/texture-sampling.md +553 -0
  457. package/skills/shader-dev/reference/volumetric-rendering.md +608 -0
  458. package/skills/shader-dev/reference/voronoi-cellular-noise.md +486 -0
  459. package/skills/shader-dev/reference/voxel-rendering.md +701 -0
  460. package/skills/shader-dev/reference/water-ocean.md +445 -0
  461. package/skills/shader-dev/reference/webgl-pitfalls.md +41 -0
  462. package/skills/shader-dev/techniques/ambient-occlusion.md +364 -0
  463. package/skills/shader-dev/techniques/analytic-ray-tracing.md +542 -0
  464. package/skills/shader-dev/techniques/anti-aliasing.md +124 -0
  465. package/skills/shader-dev/techniques/atmospheric-scattering.md +522 -0
  466. package/skills/shader-dev/techniques/camera-effects.md +115 -0
  467. package/skills/shader-dev/techniques/cellular-automata.md +531 -0
  468. package/skills/shader-dev/techniques/color-palette.md +380 -0
  469. package/skills/shader-dev/techniques/csg-boolean-operations.md +491 -0
  470. package/skills/shader-dev/techniques/domain-repetition.md +333 -0
  471. package/skills/shader-dev/techniques/domain-warping.md +414 -0
  472. package/skills/shader-dev/techniques/fluid-simulation.md +1175 -0
  473. package/skills/shader-dev/techniques/fractal-rendering.md +436 -0
  474. package/skills/shader-dev/techniques/lighting-model.md +527 -0
  475. package/skills/shader-dev/techniques/matrix-transform.md +455 -0
  476. package/skills/shader-dev/techniques/multipass-buffer.md +922 -0
  477. package/skills/shader-dev/techniques/normal-estimation.md +318 -0
  478. package/skills/shader-dev/techniques/particle-system.md +1203 -0
  479. package/skills/shader-dev/techniques/path-tracing-gi.md +623 -0
  480. package/skills/shader-dev/techniques/polar-uv-manipulation.md +373 -0
  481. package/skills/shader-dev/techniques/post-processing.md +788 -0
  482. package/skills/shader-dev/techniques/procedural-2d-pattern.md +346 -0
  483. package/skills/shader-dev/techniques/procedural-noise.md +554 -0
  484. package/skills/shader-dev/techniques/ray-marching.md +467 -0
  485. package/skills/shader-dev/techniques/sdf-2d.md +631 -0
  486. package/skills/shader-dev/techniques/sdf-3d.md +589 -0
  487. package/skills/shader-dev/techniques/sdf-tricks.md +100 -0
  488. package/skills/shader-dev/techniques/shadow-techniques.md +776 -0
  489. package/skills/shader-dev/techniques/simulation-physics.md +1542 -0
  490. package/skills/shader-dev/techniques/sound-synthesis.md +490 -0
  491. package/skills/shader-dev/techniques/terrain-rendering.md +408 -0
  492. package/skills/shader-dev/techniques/texture-mapping-advanced.md +121 -0
  493. package/skills/shader-dev/techniques/texture-sampling.md +382 -0
  494. package/skills/shader-dev/techniques/volumetric-rendering.md +375 -0
  495. package/skills/shader-dev/techniques/voronoi-cellular-noise.md +458 -0
  496. package/skills/shader-dev/techniques/voxel-rendering.md +985 -0
  497. package/skills/shader-dev/techniques/water-ocean.md +490 -0
  498. package/skills/shader-dev/techniques/webgl-pitfalls.md +170 -0
  499. package/skills/shipping-and-launch/SKILL.md +334 -0
  500. package/skills/silent-failure-hunting/SKILL.md +24 -0
  501. package/skills/source-driven-development/SKILL.md +223 -0
  502. package/skills/spec-driven-development/SKILL.md +235 -0
  503. package/skills/spec-driven-development/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/LICENSE +21 -0
  504. package/skills/spec-driven-development/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/NOTICE.md +9 -0
  505. package/skills/spec-driven-development/references/upstream/addyosmani-agent-skills/6bcfeb9dae52b11eaad23511acc165109746dbc3/spec-driven-development/SKILL.upstream.md +206 -0
  506. package/skills/strategy-stress-test/SKILL.md +185 -0
  507. package/skills/systematic-literature-review/SKILL.md +77 -0
  508. package/skills/test-document-generator/SKILL.md +152 -0
  509. package/skills/test-document-generator/references/test-document-template.md +45 -0
  510. package/skills/test-driven-development/SKILL.md +399 -0
  511. package/skills/write-skills/GLOSSARY.md +113 -0
  512. package/skills/write-skills/SKILL.md +133 -0
  513. package/skills/write-skills/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/LICENSE +21 -0
  514. package/skills/write-skills/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/NOTICE.md +9 -0
  515. package/skills/write-skills/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/productivity/writing-great-skills/GLOSSARY.md +201 -0
  516. package/skills/write-skills/references/upstream/mattpocock-skills/391a2701dd948f94f56a39f7533f8eea9a859c87/productivity/writing-great-skills/SKILL.upstream.md +83 -0
  517. package/src/runtime/child-guard.ts +70 -0
  518. package/src/runtime/conflicts.ts +25 -0
  519. package/src/runtime/contracts.ts +9 -0
  520. package/src/runtime/doctor.ts +134 -0
  521. package/src/runtime/global-resources.ts +152 -0
  522. package/src/runtime/index.ts +23 -0
  523. package/src/runtime/lifecycle.ts +19 -0
  524. package/src/runtime/native-integrations.ts +44 -0
  525. package/src/runtime/path-boundaries.ts +69 -0
  526. package/src/runtime/registry.ts +213 -0
  527. package/src/runtime/roles.ts +64 -0
  528. package/src/runtime/rose-context.ts +24 -0
  529. package/src/runtime/subagents.ts +426 -0
  530. package/templates/APPEND_SYSTEM.md +12 -0
  531. package/upstream/aili-workflows.lock.json +3226 -0
@@ -0,0 +1,246 @@
1
+ # Visual Design Guidelines
2
+
3
+ Detailed specifications for colors, typography, spacing, elevation, and shapes in Material Design 3.
4
+
5
+ ## Color System
6
+
7
+ ### Color Roles (Tokens)
8
+
9
+ Material Design 3 uses a token-based color system with three accent groups:
10
+
11
+ | Role | Usage |
12
+ |------|-------|
13
+ | **Primary** | Key components, FAB, prominent buttons |
14
+ | **Secondary** | Less prominent components, filters, chips |
15
+ | **Tertiary** | Accent, complementary elements |
16
+ | **Error** | Error states, destructive actions |
17
+ | **Surface** | Backgrounds, cards, dialogs |
18
+
19
+ Each role includes variants: base color, onColor, container, onContainer.
20
+
21
+ ### Color Contrast Requirements
22
+
23
+ | Element | Minimum Contrast Ratio | Notes |
24
+ |---------|----------------------|-------|
25
+ | Body text | **4.5:1** | WCAG AA compliance |
26
+ | Large text (18sp+) | **3:1** | 14sp bold also qualifies |
27
+ | UI components | **3:1** | Icons, borders, controls |
28
+ | Focus indicators | **3:1** | Must be clearly visible |
29
+
30
+ ### Recommended Color Palettes
31
+
32
+ #### Modern Professional (Business Apps)
33
+
34
+ | Role | Color | Name |
35
+ |------|-------|------|
36
+ | Primary | #1976D2 | Blue 700 |
37
+ | Secondary | #455A64 | Blue Grey 700 |
38
+ | Tertiary | #00897B | Teal 600 |
39
+ | Background | #FAFAFA | Grey 50 |
40
+
41
+ #### Vibrant & Playful (Consumer Apps)
42
+
43
+ | Role | Color | Name |
44
+ |------|-------|------|
45
+ | Primary | #6200EE | Deep Purple |
46
+ | Secondary | #03DAC6 | Teal Accent |
47
+ | Tertiary | #FF5722 | Deep Orange |
48
+ | Background | #FFFFFF | White |
49
+
50
+ #### Dark & Elegant (Premium Apps)
51
+
52
+ | Role | Color | Name |
53
+ |------|-------|------|
54
+ | Primary | #BB86FC | Purple 200 |
55
+ | Secondary | #03DAC6 | Teal 200 |
56
+ | Tertiary | #CF6679 | Red 200 |
57
+ | Background | #121212 | Dark surface |
58
+
59
+ #### Nature & Wellness (Health Apps)
60
+
61
+ | Role | Color | Name |
62
+ |------|-------|------|
63
+ | Primary | #4CAF50 | Green 500 |
64
+ | Secondary | #8BC34A | Light Green 500 |
65
+ | Tertiary | #FFEB3B | Yellow 500 |
66
+ | Background | #F1F8E9 | Light Green 50 |
67
+
68
+ #### Finance & Trust (Banking Apps)
69
+
70
+ | Role | Color | Name |
71
+ |------|-------|------|
72
+ | Primary | #00695C | Teal 800 |
73
+ | Secondary | #37474F | Blue Grey 800 |
74
+ | Tertiary | #FFC107 | Amber 500 |
75
+ | Background | #ECEFF1 | Blue Grey 50 |
76
+
77
+ ### Dark Theme Requirements
78
+
79
+ - Background: #121212 or darker
80
+ - Surface colors use elevation-based tonal overlay
81
+ - Primary colors should be lighter variants (200-300 range)
82
+ - Maintain contrast ratios in dark mode
83
+ - Test all states (hover, focus, pressed) in dark mode
84
+
85
+ ## Typography System
86
+
87
+ ### Type Scale
88
+
89
+ | Style | Size | Weight | Line Height | Usage |
90
+ |-------|------|--------|-------------|-------|
91
+ | Display Large | 57sp | 400 | 64sp | Hero text |
92
+ | Display Medium | 45sp | 400 | 52sp | Large headers |
93
+ | Display Small | 36sp | 400 | 44sp | Section headers |
94
+ | Headline Large | 32sp | 400 | 40sp | Screen titles |
95
+ | Headline Medium | 28sp | 400 | 36sp | Subsection titles |
96
+ | Headline Small | 24sp | 400 | 32sp | Card titles |
97
+ | Title Large | 22sp | 400 | 28sp | App bar titles |
98
+ | Title Medium | 16sp | 500 | 24sp | List item titles |
99
+ | Title Small | 14sp | 500 | 20sp | Tabs |
100
+ | Body Large | 16sp | 400 | 24sp | Primary body text |
101
+ | Body Medium | 14sp | 400 | 20sp | Secondary body text |
102
+ | Body Small | 12sp | 400 | 16sp | Captions |
103
+ | Label Large | 14sp | 500 | 20sp | Button text |
104
+ | Label Medium | 12sp | 500 | 16sp | Navigation labels |
105
+ | Label Small | 11sp | 500 | 16sp | Badges |
106
+
107
+ ### Recommended Fonts
108
+
109
+ | Category | Fonts |
110
+ |----------|-------|
111
+ | Primary | Roboto (system default) |
112
+ | Display | Roboto Serif, Google Sans |
113
+ | Monospace | Roboto Mono, JetBrains Mono |
114
+
115
+ ### Text Readability
116
+
117
+ - **Line length**: 45-75 characters per line (including spaces)
118
+ - **Paragraph spacing**: 1.5x line height between paragraphs
119
+ - **Letter spacing**: Use default unless brand requires adjustment
120
+ - **Text alignment**: Left-aligned for body text (LTR languages)
121
+
122
+ ## Spacing & Layout
123
+
124
+ ### 8dp Grid System
125
+
126
+ All spacing values should be multiples of 8dp (with 4dp for fine adjustments).
127
+
128
+ | Token | Value | Usage |
129
+ |-------|-------|-------|
130
+ | xs | 4dp | Icon padding, fine adjustments |
131
+ | sm | 8dp | Tight spacing, inline elements |
132
+ | md | 16dp | Default padding, card content |
133
+ | lg | 24dp | Section spacing |
134
+ | xl | 32dp | Large gaps, group separation |
135
+ | xxl | 48dp | Screen margins, major sections |
136
+
137
+ ### Component Dimensions
138
+
139
+ | Component | Height | Min Width | Notes |
140
+ |-----------|--------|-----------|-------|
141
+ | Button | 40dp | 64dp | Touch target 48dp |
142
+ | FAB | 56dp | 56dp | Standard size |
143
+ | Mini FAB | 40dp | 40dp | Secondary actions |
144
+ | Extended FAB | 56dp | 80dp | With text label |
145
+ | Text Field | 56dp | 280dp | Including label |
146
+ | App Bar | 64dp | - | Top app bar |
147
+ | Bottom Nav | 80dp | - | With labels |
148
+ | Nav Rail | - | 80dp | Tablet/desktop |
149
+ | List Item | 56-88dp | - | Depends on content |
150
+ | Chip | 32dp | - | Filter/action chips |
151
+
152
+ ### Touch Targets
153
+
154
+ | Type | Size | Notes |
155
+ |------|------|-------|
156
+ | Minimum | 48 × 48dp | WCAG requirement |
157
+ | Recommended | 56 × 56dp | Primary actions |
158
+ | Kids apps | 56dp+ | Larger for motor skills |
159
+ | Spacing | 8dp minimum | Between adjacent targets |
160
+
161
+ ## Elevation & Shadows
162
+
163
+ ### Elevation Levels
164
+
165
+ | Level | Elevation | Usage |
166
+ |-------|-----------|-------|
167
+ | Level 0 | 0dp | Flat surfaces |
168
+ | Level 1 | 1dp | Cards, elevated buttons |
169
+ | Level 2 | 3dp | FAB (resting), raised elements |
170
+ | Level 3 | 6dp | Navigation drawer, bottom sheet |
171
+ | Level 4 | 8dp | FAB (pressed), menus |
172
+ | Level 5 | 12dp | Dialogs, modal surfaces |
173
+
174
+ ### Shadow Guidelines
175
+
176
+ - Use elevation consistently for same component types
177
+ - Higher elevation = more important/prominent
178
+ - In dark theme, use surface tint instead of shadows
179
+ - Avoid excessive elevation (keeps UI grounded)
180
+
181
+ ## Shape System
182
+
183
+ ### Corner Radius
184
+
185
+ | Size | Radius | Usage |
186
+ |------|--------|-------|
187
+ | None | 0dp | Sharp edges, dividers |
188
+ | Extra Small | 4dp | Badges, small chips |
189
+ | Small | 8dp | Buttons, chips, small cards |
190
+ | Medium | 12dp | Cards, dialogs, text fields |
191
+ | Large | 16dp | FAB, bottom sheets |
192
+ | Extra Large | 28dp | Large sheets, expanded cards |
193
+ | Full | 50% | Pills, avatars, circular buttons |
194
+
195
+ ### M3 Expressive Shapes
196
+
197
+ Material 3 Expressive introduces 35 new decorative shapes:
198
+ - Organic curves
199
+ - Asymmetric corners
200
+ - Cut corners
201
+ - Scalloped edges
202
+
203
+ Use sparingly for brand differentiation and visual interest.
204
+
205
+ ### Shape Consistency Rules
206
+
207
+ - Same component type = same shape
208
+ - Related components should share shape family
209
+ - Don't mix too many shape styles on one screen
210
+ - Consider shape in dark/light theme transitions
211
+
212
+ ## Icons
213
+
214
+ ### Size Specifications
215
+
216
+ | Size | Dimensions | Usage |
217
+ |------|------------|-------|
218
+ | Small | 20 × 20dp | Compact UI, inline |
219
+ | Standard | 24 × 24dp | Default for most uses |
220
+ | Large | 40 × 40dp | Emphasis, empty states |
221
+
222
+ ### Icon Guidelines
223
+
224
+ - **Touch target**: Always wrap in 48dp minimum clickable area
225
+ - **Style**: Outlined (default), Filled (selected/active states)
226
+ - **Stroke width**: 2dp for outlined icons
227
+ - **Optical alignment**: May need visual adjustments
228
+ - **Color**: Use semantic colors (primary, error, etc.)
229
+
230
+ ### Recommended Icon Sets
231
+
232
+ | Set | Usage |
233
+ |-----|-------|
234
+ | Material Symbols | Recommended, variable font support |
235
+ | Material Icons | Legacy, still widely used |
236
+
237
+ ### Adaptive Icons (App Icon)
238
+
239
+ | Property | Value |
240
+ |----------|-------|
241
+ | Canvas size | 108 × 108dp |
242
+ | Safe zone | 66 × 66dp (centered circle) |
243
+ | Logo size | 48-66dp |
244
+ | Max display | 72 × 72dp |
245
+ | Layers | Foreground + Background (both 108dp) |
246
+ | Android 13+ | Include monochrome layer for theming |
@@ -0,0 +1,318 @@
1
+ ---
2
+ name: api-and-interface-design
3
+ description: Guides stable API and interface design. Use when designing APIs, module boundaries, or any public interface. Use when creating REST or GraphQL endpoints, defining type contracts between modules, or establishing boundaries between frontend and backend.
4
+ ---
5
+
6
+ # API and Interface Design
7
+
8
+ ## Overview
9
+
10
+ Design stable, well-documented interfaces that are hard to misuse. Good interfaces make the right thing easy and the wrong thing hard. This applies to REST APIs, GraphQL schemas, module boundaries, component props, and any surface where one piece of code talks to another.
11
+
12
+ ## When to Use
13
+
14
+ - Designing new API endpoints
15
+ - Defining module boundaries or contracts between teams
16
+ - Creating component prop interfaces
17
+ - Establishing database schema that informs API shape
18
+ - Changing existing public interfaces
19
+
20
+ ## Contract Design Workflow
21
+
22
+ 1. **Identify consumers:** list current and expected clients, internal callers, SDKs, jobs, integrations, and tests that observe the interface.
23
+ 2. **Define the contract first:** write request/input, response/output, error shape, authorization expectations, idempotency, pagination, and versioning/deprecation notes before implementation.
24
+ 3. **Check compatibility:** classify every change as additive, behavior-preserving, or breaking; prefer optional additions over field removals or type changes.
25
+ 4. **Validate boundary data:** place validation at external boundaries and parse third-party responses before using them.
26
+ 5. **Design verification:** add or update contract tests, schema checks, typed clients, or examples that prove consumer-visible behavior.
27
+ 6. **Document the contract:** keep types, OpenAPI/GraphQL schema, route docs, or module docs in sync with the implementation.
28
+
29
+ 🔴 CHECKPOINT / 🛑 STOP: Before changing a public route, field type, enum value, error shape, authorization rule, pagination contract, or module interface, pause and confirm whether a breaking-change plan, migration path, or deprecation window is required.
30
+
31
+ ## Fallbacks for Unclear Contracts
32
+
33
+ | Trigger condition | First response | If still unresolved |
34
+ |---|---|---|
35
+ | Consumers are unknown | Search callers, clients, docs, tests, schemas, and usage examples | Treat the interface as public and avoid breaking changes |
36
+ | Versioning policy is unclear | Prefer one-version-compatible additive changes | Escalate for product/architecture decision before version forks |
37
+ | Error semantics differ across existing endpoints | Follow the nearest established API family | Document the inconsistency and avoid introducing a third pattern |
38
+ | Required behavior conflicts with compatibility | Propose an additive field/endpoint or feature flag | Stop until migration/deprecation is approved |
39
+ | Third-party response shape is undocumented | Validate with a narrow schema and fail closed | Report the unverified external contract |
40
+
41
+ ## Core Principles
42
+
43
+ ### Hyrum's Law
44
+
45
+ > With a sufficient number of users of an API, all observable behaviors of your system will be depended on by somebody, regardless of what you promise in the contract.
46
+
47
+ This means: every public behavior — including undocumented quirks, error message text, timing, and ordering — becomes a de facto contract once users depend on it. Design implications:
48
+
49
+ - **Be intentional about what you expose.** Every observable behavior is a potential commitment.
50
+ - **Don't leak implementation details.** If users can observe it, they will depend on it.
51
+ - **Plan for deprecation at design time.** See `deprecation-and-migration` for how to safely remove things users depend on.
52
+ - **Tests are not enough.** Even with perfect contract tests, Hyrum's Law means "safe" changes can break real users who depend on undocumented behavior.
53
+
54
+ ### The One-Version Rule
55
+
56
+ Avoid forcing consumers to choose between multiple versions of the same dependency or API. Diamond dependency problems arise when different consumers need different versions of the same thing. Design for a world where only one version exists at a time — extend rather than fork.
57
+
58
+ ### 1. Contract First
59
+
60
+ Define the interface before implementing it. The contract is the spec — implementation follows.
61
+
62
+ ```typescript
63
+ // Define the contract first
64
+ interface TaskAPI {
65
+ // Creates a task and returns the created task with server-generated fields
66
+ createTask(input: CreateTaskInput): Promise<Task>;
67
+
68
+ // Returns paginated tasks matching filters
69
+ listTasks(params: ListTasksParams): Promise<PaginatedResult<Task>>;
70
+
71
+ // Returns a single task or throws NotFoundError
72
+ getTask(id: string): Promise<Task>;
73
+
74
+ // Partial update — only provided fields change
75
+ updateTask(id: string, input: UpdateTaskInput): Promise<Task>;
76
+
77
+ // Idempotent delete — succeeds even if already deleted
78
+ deleteTask(id: string): Promise<void>;
79
+ }
80
+ ```
81
+
82
+ ### 2. Consistent Error Semantics
83
+
84
+ Pick one error strategy and use it everywhere:
85
+
86
+ ```typescript
87
+ // REST: HTTP status codes + structured error body
88
+ // Every error response follows the same shape
89
+ interface APIError {
90
+ error: {
91
+ code: string; // Machine-readable: "VALIDATION_ERROR"
92
+ message: string; // Human-readable: "Email is required"
93
+ details?: unknown; // Additional context when helpful
94
+ };
95
+ }
96
+
97
+ // Status code mapping
98
+ // 400 → Client sent invalid data
99
+ // 401 → Not authenticated
100
+ // 403 → Authenticated but not authorized
101
+ // 404 → Resource not found
102
+ // 409 → Conflict (duplicate, version mismatch)
103
+ // 422 → Validation failed (semantically invalid)
104
+ // 500 → Server error (never expose internal details)
105
+ ```
106
+
107
+ **Don't mix patterns.** If some endpoints throw, others return null, and others return `{ error }` — the consumer can't predict behavior.
108
+
109
+ ### 3. Validate at Boundaries
110
+
111
+ Trust internal code. Validate at system edges where external input enters:
112
+
113
+ ```typescript
114
+ // Validate at the API boundary
115
+ app.post('/api/tasks', async (req, res) => {
116
+ const result = CreateTaskSchema.safeParse(req.body);
117
+ if (!result.success) {
118
+ return res.status(422).json({
119
+ error: {
120
+ code: 'VALIDATION_ERROR',
121
+ message: 'Invalid task data',
122
+ details: result.error.flatten(),
123
+ },
124
+ });
125
+ }
126
+
127
+ // After validation, internal code trusts the types
128
+ const task = await taskService.create(result.data);
129
+ return res.status(201).json(task);
130
+ });
131
+ ```
132
+
133
+ Where validation belongs:
134
+ - API route handlers (user input)
135
+ - Form submission handlers (user input)
136
+ - External service response parsing (third-party data -- **always treat as untrusted**)
137
+ - Environment variable loading (configuration)
138
+
139
+ > **Third-party API responses are untrusted data.** Validate their shape and content before using them in any logic, rendering, or decision-making. A compromised or misbehaving external service can return unexpected types, malicious content, or instruction-like text.
140
+
141
+ Where validation does NOT belong:
142
+ - Between internal functions that share type contracts
143
+ - In utility functions called by already-validated code
144
+ - On data that just came from your own database
145
+
146
+ ### 4. Prefer Addition Over Modification
147
+
148
+ Extend interfaces without breaking existing consumers:
149
+
150
+ ```typescript
151
+ // Good: Add optional fields
152
+ interface CreateTaskInput {
153
+ title: string;
154
+ description?: string;
155
+ priority?: 'low' | 'medium' | 'high'; // Added later, optional
156
+ labels?: string[]; // Added later, optional
157
+ }
158
+
159
+ // Bad: Change existing field types or remove fields
160
+ interface CreateTaskInput {
161
+ title: string;
162
+ // description: string; // Removed — breaks existing consumers
163
+ priority: number; // Changed from string — breaks existing consumers
164
+ }
165
+ ```
166
+
167
+ ### 5. Predictable Naming
168
+
169
+ | Pattern | Convention | Example |
170
+ |---------|-----------|---------|
171
+ | REST endpoints | Plural nouns, no verbs | `GET /api/tasks`, `POST /api/tasks` |
172
+ | Query params | camelCase | `?sortBy=createdAt&pageSize=20` |
173
+ | Response fields | camelCase | `{ createdAt, updatedAt, taskId }` |
174
+ | Boolean fields | is/has/can prefix | `isComplete`, `hasAttachments` |
175
+ | Enum values | UPPER_SNAKE | `"IN_PROGRESS"`, `"COMPLETED"` |
176
+
177
+ ## REST API Patterns
178
+
179
+ ### Resource Design
180
+
181
+ ```
182
+ GET /api/tasks → List tasks (with query params for filtering)
183
+ POST /api/tasks → Create a task
184
+ GET /api/tasks/:id → Get a single task
185
+ PATCH /api/tasks/:id → Update a task (partial)
186
+ DELETE /api/tasks/:id → Delete a task
187
+
188
+ GET /api/tasks/:id/comments → List comments for a task (sub-resource)
189
+ POST /api/tasks/:id/comments → Add a comment to a task
190
+ ```
191
+
192
+ ### Pagination
193
+
194
+ Paginate list endpoints:
195
+
196
+ ```typescript
197
+ // Request
198
+ GET /api/tasks?page=1&pageSize=20&sortBy=createdAt&sortOrder=desc
199
+
200
+ // Response
201
+ {
202
+ "data": [...],
203
+ "pagination": {
204
+ "page": 1,
205
+ "pageSize": 20,
206
+ "totalItems": 142,
207
+ "totalPages": 8
208
+ }
209
+ }
210
+ ```
211
+
212
+ ### Filtering
213
+
214
+ Use query parameters for filters:
215
+
216
+ ```
217
+ GET /api/tasks?status=in_progress&assignee=user123&createdAfter=2025-01-01
218
+ ```
219
+
220
+ ### Partial Updates (PATCH)
221
+
222
+ Accept partial objects — only update what's provided:
223
+
224
+ ```typescript
225
+ // Only title changes, everything else preserved
226
+ PATCH /api/tasks/123
227
+ { "title": "Updated title" }
228
+ ```
229
+
230
+ ## TypeScript Interface Patterns
231
+
232
+ ### Use Discriminated Unions for Variants
233
+
234
+ ```typescript
235
+ // Good: Each variant is explicit
236
+ type TaskStatus =
237
+ | { type: 'pending' }
238
+ | { type: 'in_progress'; assignee: string; startedAt: Date }
239
+ | { type: 'completed'; completedAt: Date; completedBy: string }
240
+ | { type: 'cancelled'; reason: string; cancelledAt: Date };
241
+
242
+ // Consumer gets type narrowing
243
+ function getStatusLabel(status: TaskStatus): string {
244
+ switch (status.type) {
245
+ case 'pending': return 'Pending';
246
+ case 'in_progress': return `In progress (${status.assignee})`;
247
+ case 'completed': return `Done on ${status.completedAt}`;
248
+ case 'cancelled': return `Cancelled: ${status.reason}`;
249
+ }
250
+ }
251
+ ```
252
+
253
+ ### Input/Output Separation
254
+
255
+ ```typescript
256
+ // Input: what the caller provides
257
+ interface CreateTaskInput {
258
+ title: string;
259
+ description?: string;
260
+ }
261
+
262
+ // Output: what the system returns (includes server-generated fields)
263
+ interface Task {
264
+ id: string;
265
+ title: string;
266
+ description: string | null;
267
+ createdAt: Date;
268
+ updatedAt: Date;
269
+ createdBy: string;
270
+ }
271
+ ```
272
+
273
+ ### Use Branded Types for IDs
274
+
275
+ ```typescript
276
+ type TaskId = string & { readonly __brand: 'TaskId' };
277
+ type UserId = string & { readonly __brand: 'UserId' };
278
+
279
+ // Prevents accidentally passing a UserId where a TaskId is expected
280
+ function getTask(id: TaskId): Promise<Task> { ... }
281
+ ```
282
+
283
+ ## Common Rationalizations
284
+
285
+ | Rationalization | Reality |
286
+ |---|---|
287
+ | "We'll document the API later" | The types ARE the documentation. Define them first. |
288
+ | "We don't need pagination for now" | You will the moment someone has 100+ items. Add it from the start. |
289
+ | "PATCH is complicated, let's just use PUT" | PUT requires the full object every time. PATCH is what clients actually want. |
290
+ | "We'll version the API when we need to" | Breaking changes without versioning break consumers. Design for extension from the start. |
291
+ | "Nobody uses that undocumented behavior" | Hyrum's Law: if it's observable, somebody depends on it. Treat every public behavior as a commitment. |
292
+ | "We can just maintain two versions" | Multiple versions multiply maintenance cost and create diamond dependency problems. Prefer the One-Version Rule. |
293
+ | "Internal APIs don't need contracts" | Internal consumers are still consumers. Contracts prevent coupling and enable parallel work. |
294
+
295
+ ## Red Flags
296
+
297
+ - Endpoints that return different shapes depending on conditions
298
+ - Inconsistent error formats across endpoints
299
+ - Validation scattered throughout internal code instead of at boundaries
300
+ - Breaking changes to existing fields (type changes, removals)
301
+ - List endpoints without pagination
302
+ - Verbs in REST URLs (`/api/createTask`, `/api/getUsers`)
303
+ - Third-party API responses used without validation or sanitization
304
+ - Public interface changes without consumer inventory or migration notes
305
+ - New versioned endpoints created only to avoid designing backward compatibility
306
+ - Error messages or enum values changed without checking observable consumer behavior
307
+
308
+ ## Verification
309
+
310
+ After designing an API:
311
+
312
+ - [ ] Every endpoint has typed input and output schemas
313
+ - [ ] Error responses follow a single consistent format
314
+ - [ ] Validation happens at system boundaries only
315
+ - [ ] List endpoints support pagination
316
+ - [ ] New fields are additive and optional (backward compatible)
317
+ - [ ] Naming follows consistent conventions across all endpoints
318
+ - [ ] API documentation or types are committed alongside the implementation
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: browser-qa
3
+ description: Route an explicitly requested independent/delegated browser QA assignment or durable E2E evidence need; do not trigger for direct Playwright/DOM/console/network inspection, ordinary UI implementation, backend-only work, or production-mutating flows.
4
+ ---
5
+
6
+ # Browser QA
7
+
8
+ Use this skill only for the delegated browser path. Direct browser inspection is owned by `browser-testing-with-devtools`; the two paths are mutually exclusive for one current intent.
9
+
10
+ ## Trigger
11
+
12
+ - The user explicitly requests independent/delegated browser QA.
13
+ - One concrete browser evidence gap requires `browser-qa-runner` rather than direct browser tools.
14
+ - Durable browser/E2E artifact evidence is explicitly required and placement is resolved.
15
+
16
+ ## Required Safety Gate
17
+
18
+ - Resolve the target URL/environment from current user/project evidence. Ask only when target identity is materially ambiguous or the action could cross an external/production gate.
19
+ - Avoid production mutation: no real purchases, messages, account changes, destructive forms, or production data writes without the exact operation-specific approval.
20
+ - Before saving screenshots, traces, videos, reports, console logs, or network logs, obtain a repository-local artifact placement. If no placement exists, keep evidence inline/ephemeral and report no durable artifact.
21
+
22
+ ## Near Misses
23
+
24
+ - Persistent E2E packaging, direct local browser inspection, or backend-only verification are different primary intents. Return the exact mismatch to ROSE; do not select another skill here or combine the direct/delegated browser paths.
25
+ - Creating Playwright config or test directories: requires explicit implementation scope and placement decision.
26
+
27
+ ## Required Routing
28
+
29
+ - Canonical owner: ROSE/`aili-delivery-flow`.
30
+ - Optional agent: one fresh, terminal `browser-qa-runner` assignment after a new benefit decision.
31
+
32
+ ROSE/`aili-delivery-flow` owns mode, exact external/production approvals, artifact placement decisions, and final verification. This skill may return one bounded delegation need but does not invoke another skill or create a retry/review chain. One fresh QA assignment is terminal; report `complete`, `need-user`, `need-evidence`, `material-delta`, `blocked`, or `Unverified`. Canonical claim-matched verification wins.