@mytechtoday/augment-extensions 0.2.0 → 0.5.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 (420) hide show
  1. package/README.md +614 -39
  2. package/augment-extensions/coding-standards/bash/README.md +196 -0
  3. package/augment-extensions/coding-standards/bash/module.json +163 -0
  4. package/augment-extensions/coding-standards/bash/rules/naming-conventions.md +336 -0
  5. package/augment-extensions/coding-standards/bash/rules/universal-standards.md +289 -0
  6. package/augment-extensions/coding-standards/css/README.md +40 -0
  7. package/augment-extensions/coding-standards/css/examples/css-examples.css +550 -0
  8. package/augment-extensions/coding-standards/css/module.json +44 -0
  9. package/augment-extensions/coding-standards/css/rules/css-modern-features.md +448 -0
  10. package/augment-extensions/coding-standards/css/rules/css-standards.md +492 -0
  11. package/augment-extensions/coding-standards/html/README.md +40 -0
  12. package/augment-extensions/coding-standards/html/examples/html-examples.html +267 -0
  13. package/augment-extensions/coding-standards/html/examples/responsive-layout.html +505 -0
  14. package/augment-extensions/coding-standards/html/module.json +44 -0
  15. package/augment-extensions/coding-standards/html/rules/html-standards.md +349 -0
  16. package/augment-extensions/coding-standards/html-css-js/README.md +194 -0
  17. package/augment-extensions/coding-standards/html-css-js/examples/async-examples.js +487 -0
  18. package/augment-extensions/coding-standards/html-css-js/examples/css-examples.css +550 -0
  19. package/augment-extensions/coding-standards/html-css-js/examples/dom-examples.js +667 -0
  20. package/augment-extensions/coding-standards/html-css-js/examples/html-examples.html +267 -0
  21. package/augment-extensions/coding-standards/html-css-js/examples/javascript-examples.js +612 -0
  22. package/augment-extensions/coding-standards/html-css-js/examples/responsive-layout.html +505 -0
  23. package/augment-extensions/coding-standards/html-css-js/module.json +48 -0
  24. package/augment-extensions/coding-standards/html-css-js/rules/async-patterns.md +515 -0
  25. package/augment-extensions/coding-standards/html-css-js/rules/css-modern-features.md +448 -0
  26. package/augment-extensions/coding-standards/html-css-js/rules/css-standards.md +492 -0
  27. package/augment-extensions/coding-standards/html-css-js/rules/dom-manipulation.md +439 -0
  28. package/augment-extensions/coding-standards/html-css-js/rules/html-standards.md +349 -0
  29. package/augment-extensions/coding-standards/html-css-js/rules/javascript-standards.md +486 -0
  30. package/augment-extensions/coding-standards/html-css-js/rules/performance.md +463 -0
  31. package/augment-extensions/coding-standards/html-css-js/rules/tooling.md +543 -0
  32. package/augment-extensions/coding-standards/js/README.md +46 -0
  33. package/augment-extensions/coding-standards/js/examples/async-examples.js +487 -0
  34. package/augment-extensions/coding-standards/js/examples/dom-examples.js +667 -0
  35. package/augment-extensions/coding-standards/js/examples/javascript-examples.js +612 -0
  36. package/augment-extensions/coding-standards/js/module.json +49 -0
  37. package/augment-extensions/coding-standards/js/rules/async-patterns.md +515 -0
  38. package/augment-extensions/coding-standards/js/rules/dom-manipulation.md +439 -0
  39. package/augment-extensions/coding-standards/js/rules/javascript-standards.md +486 -0
  40. package/augment-extensions/coding-standards/js/rules/performance.md +463 -0
  41. package/augment-extensions/coding-standards/js/rules/tooling.md +543 -0
  42. package/augment-extensions/coding-standards/php/README.md +248 -0
  43. package/augment-extensions/coding-standards/php/examples/api-endpoint-example.php +204 -0
  44. package/augment-extensions/coding-standards/php/examples/cli-command-example.php +206 -0
  45. package/augment-extensions/coding-standards/php/examples/legacy-refactoring-example.php +234 -0
  46. package/augment-extensions/coding-standards/php/examples/web-application-example.php +211 -0
  47. package/augment-extensions/coding-standards/php/examples/woocommerce-extension-example.php +215 -0
  48. package/augment-extensions/coding-standards/php/examples/wordpress-plugin-example.php +189 -0
  49. package/augment-extensions/coding-standards/php/module.json +166 -0
  50. package/augment-extensions/coding-standards/php/rules/api-development.md +480 -0
  51. package/augment-extensions/coding-standards/php/rules/category-configuration.md +332 -0
  52. package/augment-extensions/coding-standards/php/rules/cli-tools.md +472 -0
  53. package/augment-extensions/coding-standards/php/rules/cms-integration.md +561 -0
  54. package/augment-extensions/coding-standards/php/rules/code-quality.md +402 -0
  55. package/augment-extensions/coding-standards/php/rules/documentation.md +425 -0
  56. package/augment-extensions/coding-standards/php/rules/ecommerce.md +627 -0
  57. package/augment-extensions/coding-standards/php/rules/error-handling.md +336 -0
  58. package/augment-extensions/coding-standards/php/rules/legacy-migration.md +677 -0
  59. package/augment-extensions/coding-standards/php/rules/naming-conventions.md +279 -0
  60. package/augment-extensions/coding-standards/php/rules/performance.md +392 -0
  61. package/augment-extensions/coding-standards/php/rules/psr-standards.md +186 -0
  62. package/augment-extensions/coding-standards/php/rules/security.md +358 -0
  63. package/augment-extensions/coding-standards/php/rules/testing.md +403 -0
  64. package/augment-extensions/coding-standards/php/rules/type-declarations.md +331 -0
  65. package/augment-extensions/coding-standards/php/rules/web-applications.md +426 -0
  66. package/augment-extensions/coding-standards/powershell/README.md +154 -0
  67. package/augment-extensions/coding-standards/powershell/examples/admin-example.ps1 +272 -0
  68. package/augment-extensions/coding-standards/powershell/examples/automation-example.ps1 +173 -0
  69. package/augment-extensions/coding-standards/powershell/examples/cloud-example.ps1 +243 -0
  70. package/augment-extensions/coding-standards/powershell/examples/cross-platform-example.ps1 +297 -0
  71. package/augment-extensions/coding-standards/powershell/examples/dsc-example.ps1 +224 -0
  72. package/augment-extensions/coding-standards/powershell/examples/legacy-migration-example.ps1 +340 -0
  73. package/augment-extensions/coding-standards/powershell/examples/module-example.psm1 +255 -0
  74. package/augment-extensions/coding-standards/powershell/module.json +165 -0
  75. package/augment-extensions/coding-standards/powershell/rules/administrative-tools.md +439 -0
  76. package/augment-extensions/coding-standards/powershell/rules/automation-scripts.md +240 -0
  77. package/augment-extensions/coding-standards/powershell/rules/cloud-orchestration.md +384 -0
  78. package/augment-extensions/coding-standards/powershell/rules/configuration-schema.md +383 -0
  79. package/augment-extensions/coding-standards/powershell/rules/cross-platform-scripts.md +482 -0
  80. package/augment-extensions/coding-standards/powershell/rules/dsc-configurations.md +296 -0
  81. package/augment-extensions/coding-standards/powershell/rules/error-handling.md +314 -0
  82. package/augment-extensions/coding-standards/powershell/rules/legacy-migrations.md +466 -0
  83. package/augment-extensions/coding-standards/powershell/rules/modules-functions.md +244 -0
  84. package/augment-extensions/coding-standards/powershell/rules/naming-conventions.md +266 -0
  85. package/augment-extensions/coding-standards/powershell/rules/performance-optimization.md +209 -0
  86. package/augment-extensions/coding-standards/powershell/rules/security-practices.md +314 -0
  87. package/augment-extensions/coding-standards/powershell/rules/testing-guidelines.md +268 -0
  88. package/augment-extensions/coding-standards/powershell/rules/universal-standards.md +197 -0
  89. package/augment-extensions/coding-standards/python/README.md +12 -8
  90. package/augment-extensions/coding-standards/python/examples/best-practices.py +373 -0
  91. package/augment-extensions/coding-standards/python/module.json +8 -4
  92. package/augment-extensions/coding-standards/python/rules/async-patterns.md +884 -0
  93. package/augment-extensions/coding-standards/python/rules/documentation.md +831 -0
  94. package/augment-extensions/coding-standards/python/rules/error-handling.md +855 -68
  95. package/augment-extensions/coding-standards/python/rules/testing.md +409 -0
  96. package/augment-extensions/coding-standards/python/rules/tooling.md +446 -0
  97. package/augment-extensions/coding-standards/python/rules/type-hints.md +115 -50
  98. package/augment-extensions/collections/html-css-js/README.md +82 -0
  99. package/augment-extensions/collections/html-css-js/collection.json +41 -0
  100. package/augment-extensions/domain-rules/database/README.md +161 -0
  101. package/augment-extensions/domain-rules/database/examples/flat-database-example.md +793 -0
  102. package/augment-extensions/domain-rules/database/examples/hybrid-database-example.md +1132 -0
  103. package/augment-extensions/domain-rules/database/examples/nosql-document-example.md +868 -0
  104. package/augment-extensions/domain-rules/database/examples/nosql-graph-example.md +805 -0
  105. package/augment-extensions/domain-rules/database/examples/relational-schema-example.md +621 -0
  106. package/augment-extensions/domain-rules/database/examples/vector-database-example.md +965 -0
  107. package/augment-extensions/domain-rules/database/module.json +28 -0
  108. package/augment-extensions/domain-rules/database/rules/flat-databases.md +624 -0
  109. package/augment-extensions/domain-rules/database/rules/nosql-databases.md +588 -0
  110. package/augment-extensions/domain-rules/database/rules/nosql-document-stores.md +856 -0
  111. package/augment-extensions/domain-rules/database/rules/nosql-graph-databases.md +778 -0
  112. package/augment-extensions/domain-rules/database/rules/nosql-key-value-stores.md +963 -0
  113. package/augment-extensions/domain-rules/database/rules/performance-optimization.md +1076 -0
  114. package/augment-extensions/domain-rules/database/rules/relational-databases.md +697 -0
  115. package/augment-extensions/domain-rules/database/rules/relational-indexing.md +671 -0
  116. package/augment-extensions/domain-rules/database/rules/relational-query-optimization.md +607 -0
  117. package/augment-extensions/domain-rules/database/rules/relational-schema-design.md +907 -0
  118. package/augment-extensions/domain-rules/database/rules/relational-transactions.md +783 -0
  119. package/augment-extensions/domain-rules/database/rules/security-standards.md +980 -0
  120. package/augment-extensions/domain-rules/database/rules/universal-best-practices.md +485 -0
  121. package/augment-extensions/domain-rules/database/rules/vector-databases.md +521 -0
  122. package/augment-extensions/domain-rules/database/rules/vector-embeddings.md +858 -0
  123. package/augment-extensions/domain-rules/database/rules/vector-indexing.md +934 -0
  124. package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/README.md +23 -0
  125. package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/module.json +26 -0
  126. package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/README.md +23 -0
  127. package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/module.json +26 -0
  128. package/augment-extensions/domain-rules/design/color/themes/dracula/README.md +23 -0
  129. package/augment-extensions/domain-rules/design/color/themes/dracula/module.json +26 -0
  130. package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/README.md +23 -0
  131. package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/module.json +26 -0
  132. package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/README.md +23 -0
  133. package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/module.json +26 -0
  134. package/augment-extensions/domain-rules/design/color/themes/high-contrast/README.md +27 -0
  135. package/augment-extensions/domain-rules/design/color/themes/high-contrast/module.json +26 -0
  136. package/augment-extensions/domain-rules/design/color/themes/monokai/README.md +23 -0
  137. package/augment-extensions/domain-rules/design/color/themes/monokai/module.json +26 -0
  138. package/augment-extensions/domain-rules/design/color/themes/nord/README.md +23 -0
  139. package/augment-extensions/domain-rules/design/color/themes/nord/module.json +26 -0
  140. package/augment-extensions/domain-rules/design/color/themes/one-dark/README.md +23 -0
  141. package/augment-extensions/domain-rules/design/color/themes/one-dark/module.json +26 -0
  142. package/augment-extensions/domain-rules/design/color/themes/one-light/README.md +23 -0
  143. package/augment-extensions/domain-rules/design/color/themes/one-light/module.json +26 -0
  144. package/augment-extensions/domain-rules/design/color/themes/solarized-dark/README.md +23 -0
  145. package/augment-extensions/domain-rules/design/color/themes/solarized-dark/module.json +26 -0
  146. package/augment-extensions/domain-rules/design/color/themes/solarized-light/README.md +23 -0
  147. package/augment-extensions/domain-rules/design/color/themes/solarized-light/module.json +26 -0
  148. package/augment-extensions/domain-rules/design/color/themes/tokyo-night/README.md +23 -0
  149. package/augment-extensions/domain-rules/design/color/themes/tokyo-night/module.json +26 -0
  150. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/README.md +136 -0
  151. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/SCHEMA-VALIDATION-REPORT.md +216 -0
  152. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/brand-kit-example.yaml +292 -0
  153. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/campaign-brief-example.yaml +389 -0
  154. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/content-calendar-example.yaml +643 -0
  155. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/email-newsletter-example.md +376 -0
  156. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/landing-page-example.md +934 -0
  157. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/ppc-ad-copy-example.md +301 -0
  158. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/seo-blog-post-example.md +347 -0
  159. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/examples/social-media-campaign-example.md +606 -0
  160. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/module.json +50 -0
  161. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/affiliate-influencer-marketing.md +593 -0
  162. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/asset-management.md +418 -0
  163. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/brand-consistency.md +210 -0
  164. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/content-marketing.md +337 -0
  165. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/conversion-optimization.md +455 -0
  166. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/direct-sales.md +499 -0
  167. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/email-marketing.md +439 -0
  168. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/legal-compliance.md +227 -0
  169. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/ppc-advertising.md +569 -0
  170. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/seo-optimization.md +470 -0
  171. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/social-media-marketing.md +414 -0
  172. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/rules/universal-marketing.md +177 -0
  173. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/asset-inventory.schema.json +247 -0
  174. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/brand-kit.schema.json +326 -0
  175. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/campaign-brief.schema.json +342 -0
  176. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/color-palette.schema.json +223 -0
  177. package/augment-extensions/domain-rules/marketing-standards/seo-sales-marketing/schemas/content-template.schema.json +383 -0
  178. package/augment-extensions/domain-rules/mcp/README.md +150 -0
  179. package/augment-extensions/domain-rules/mcp/examples/compressed-example.md +522 -0
  180. package/augment-extensions/domain-rules/mcp/examples/graph-augmented-example.md +520 -0
  181. package/augment-extensions/domain-rules/mcp/examples/hybrid-example.md +570 -0
  182. package/augment-extensions/domain-rules/mcp/examples/state-based-example.md +427 -0
  183. package/augment-extensions/domain-rules/mcp/examples/token-based-example.md +435 -0
  184. package/augment-extensions/domain-rules/mcp/examples/vector-based-example.md +502 -0
  185. package/augment-extensions/domain-rules/mcp/module.json +49 -0
  186. package/augment-extensions/domain-rules/mcp/rules/compressed-mcp.md +595 -0
  187. package/augment-extensions/domain-rules/mcp/rules/configuration.md +345 -0
  188. package/augment-extensions/domain-rules/mcp/rules/graph-augmented-mcp.md +687 -0
  189. package/augment-extensions/domain-rules/mcp/rules/hybrid-mcp.md +636 -0
  190. package/augment-extensions/domain-rules/mcp/rules/state-based-mcp.md +484 -0
  191. package/augment-extensions/domain-rules/mcp/rules/testing-validation.md +360 -0
  192. package/augment-extensions/domain-rules/mcp/rules/token-based-mcp.md +393 -0
  193. package/augment-extensions/domain-rules/mcp/rules/universal-rules.md +194 -0
  194. package/augment-extensions/domain-rules/mcp/rules/vector-based-mcp.md +625 -0
  195. package/augment-extensions/workflows/beads/module.json +4 -3
  196. package/augment-extensions/workflows/beads-integration/IMPLEMENTATION-STATUS.md +145 -0
  197. package/augment-extensions/workflows/beads-integration/README.md +143 -0
  198. package/augment-extensions/workflows/beads-integration/config/defaults.json +32 -0
  199. package/augment-extensions/workflows/beads-integration/config/schema.json +140 -0
  200. package/augment-extensions/workflows/beads-integration/examples/basic-task-generation.md +293 -0
  201. package/augment-extensions/workflows/beads-integration/module.json +75 -0
  202. package/augment-extensions/workflows/beads-integration/rules/core-rules.md +219 -0
  203. package/augment-extensions/workflows/beads-integration/rules/effectiveness-standards.md +256 -0
  204. package/augment-extensions/workflows/beads-integration/rules/task-generation.md +607 -0
  205. package/augment-extensions/workflows/database/README.md +195 -0
  206. package/augment-extensions/workflows/database/ai-prompt-testing.md +295 -0
  207. package/augment-extensions/workflows/database/examples/migration-example.md +498 -0
  208. package/augment-extensions/workflows/database/examples/optimization-example.md +496 -0
  209. package/augment-extensions/workflows/database/examples/schema-design-example.md +444 -0
  210. package/augment-extensions/workflows/database/module.json +42 -0
  211. package/augment-extensions/workflows/database/rules/data-migration.md +249 -0
  212. package/augment-extensions/workflows/database/rules/documentation-standards.md +339 -0
  213. package/augment-extensions/workflows/database/rules/migration-workflow.md +352 -0
  214. package/augment-extensions/workflows/database/rules/optimization-workflow.md +435 -0
  215. package/augment-extensions/workflows/database/rules/schema-design-workflow.md +535 -0
  216. package/augment-extensions/workflows/database/rules/testing-patterns.md +305 -0
  217. package/augment-extensions/workflows/database/rules/workflow.md +458 -0
  218. package/augment-extensions/workflows/openspec/module.json +4 -3
  219. package/augment-extensions/writing-standards/screenplay/README.md +300 -0
  220. package/augment-extensions/writing-standards/screenplay/_templates/README.md +121 -0
  221. package/augment-extensions/writing-standards/screenplay/_templates/genre-template.md +153 -0
  222. package/augment-extensions/writing-standards/screenplay/_templates/style-template.md +243 -0
  223. package/augment-extensions/writing-standards/screenplay/_templates/theme-template.md +213 -0
  224. package/augment-extensions/writing-standards/screenplay/examples/aaa-hollywood-scene.fountain +164 -0
  225. package/augment-extensions/writing-standards/screenplay/examples/beat-sheet-example.yaml +95 -0
  226. package/augment-extensions/writing-standards/screenplay/examples/character-profile-example.yaml +116 -0
  227. package/augment-extensions/writing-standards/screenplay/examples/commercial-30sec.fountain +151 -0
  228. package/augment-extensions/writing-standards/screenplay/examples/independent-monologue.fountain +67 -0
  229. package/augment-extensions/writing-standards/screenplay/examples/news-segment.fountain +142 -0
  230. package/augment-extensions/writing-standards/screenplay/examples/plot-outline-example.yaml +184 -0
  231. package/augment-extensions/writing-standards/screenplay/examples/tv-episode-teaser.fountain +204 -0
  232. package/augment-extensions/writing-standards/screenplay/genres/README.md +181 -0
  233. package/augment-extensions/writing-standards/screenplay/genres/examples/.gitkeep +2 -0
  234. package/augment-extensions/writing-standards/screenplay/genres/module.json +70 -0
  235. package/augment-extensions/writing-standards/screenplay/genres/rules/.gitkeep +2 -0
  236. package/augment-extensions/writing-standards/screenplay/genres/rules/action.md +399 -0
  237. package/augment-extensions/writing-standards/screenplay/genres/rules/adventure.md +407 -0
  238. package/augment-extensions/writing-standards/screenplay/genres/rules/animation.md +293 -0
  239. package/augment-extensions/writing-standards/screenplay/genres/rules/biographical.md +293 -0
  240. package/augment-extensions/writing-standards/screenplay/genres/rules/comedy.md +401 -0
  241. package/augment-extensions/writing-standards/screenplay/genres/rules/documentary.md +293 -0
  242. package/augment-extensions/writing-standards/screenplay/genres/rules/drama.md +409 -0
  243. package/augment-extensions/writing-standards/screenplay/genres/rules/fantasy.md +293 -0
  244. package/augment-extensions/writing-standards/screenplay/genres/rules/historical.md +293 -0
  245. package/augment-extensions/writing-standards/screenplay/genres/rules/horror.md +268 -0
  246. package/augment-extensions/writing-standards/screenplay/genres/rules/musical.md +294 -0
  247. package/augment-extensions/writing-standards/screenplay/genres/rules/mystery.md +293 -0
  248. package/augment-extensions/writing-standards/screenplay/genres/rules/noir.md +294 -0
  249. package/augment-extensions/writing-standards/screenplay/genres/rules/romance.md +293 -0
  250. package/augment-extensions/writing-standards/screenplay/genres/rules/sci-fi.md +289 -0
  251. package/augment-extensions/writing-standards/screenplay/genres/rules/superhero.md +293 -0
  252. package/augment-extensions/writing-standards/screenplay/genres/rules/thriller.md +294 -0
  253. package/augment-extensions/writing-standards/screenplay/genres/rules/western.md +293 -0
  254. package/augment-extensions/writing-standards/screenplay/module.json +124 -0
  255. package/augment-extensions/writing-standards/screenplay/rules/aaa-hollywood-films.md +339 -0
  256. package/augment-extensions/writing-standards/screenplay/rules/ai-integration-testing.md +329 -0
  257. package/augment-extensions/writing-standards/screenplay/rules/character-development.md +169 -0
  258. package/augment-extensions/writing-standards/screenplay/rules/commercials.md +437 -0
  259. package/augment-extensions/writing-standards/screenplay/rules/dialogue-writing.md +263 -0
  260. package/augment-extensions/writing-standards/screenplay/rules/diversity-inclusion.md +261 -0
  261. package/augment-extensions/writing-standards/screenplay/rules/examples-guide.md +315 -0
  262. package/augment-extensions/writing-standards/screenplay/rules/formatting-validation.md +413 -0
  263. package/augment-extensions/writing-standards/screenplay/rules/fountain-format.md +372 -0
  264. package/augment-extensions/writing-standards/screenplay/rules/independent-films.md +374 -0
  265. package/augment-extensions/writing-standards/screenplay/rules/live-tv-productions.md +443 -0
  266. package/augment-extensions/writing-standards/screenplay/rules/narrative-structures.md +207 -0
  267. package/augment-extensions/writing-standards/screenplay/rules/news-broadcasts.md +444 -0
  268. package/augment-extensions/writing-standards/screenplay/rules/pacing-timing.md +331 -0
  269. package/augment-extensions/writing-standards/screenplay/rules/quality-review-checklist.md +334 -0
  270. package/augment-extensions/writing-standards/screenplay/rules/quick-reference.md +299 -0
  271. package/augment-extensions/writing-standards/screenplay/rules/screen-continuity.md +263 -0
  272. package/augment-extensions/writing-standards/screenplay/rules/streaming-content.md +412 -0
  273. package/augment-extensions/writing-standards/screenplay/rules/trope-management.md +370 -0
  274. package/augment-extensions/writing-standards/screenplay/rules/tv-series.md +374 -0
  275. package/augment-extensions/writing-standards/screenplay/rules/universal-formatting.md +339 -0
  276. package/augment-extensions/writing-standards/screenplay/rules/vscode-integration.md +277 -0
  277. package/augment-extensions/writing-standards/screenplay/rules/web-content.md +393 -0
  278. package/augment-extensions/writing-standards/screenplay/schemas/beat-sheet.json +332 -0
  279. package/augment-extensions/writing-standards/screenplay/schemas/character-profile.json +247 -0
  280. package/augment-extensions/writing-standards/screenplay/schemas/feature-selection.json +200 -0
  281. package/augment-extensions/writing-standards/screenplay/schemas/plot-outline.json +233 -0
  282. package/augment-extensions/writing-standards/screenplay/schemas/screenplay-config.json +245 -0
  283. package/augment-extensions/writing-standards/screenplay/schemas/trope-inventory.json +221 -0
  284. package/augment-extensions/writing-standards/screenplay/styles/README.md +159 -0
  285. package/augment-extensions/writing-standards/screenplay/styles/examples/.gitkeep +2 -0
  286. package/augment-extensions/writing-standards/screenplay/styles/examples/style-applications.md +1449 -0
  287. package/augment-extensions/writing-standards/screenplay/styles/module.json +64 -0
  288. package/augment-extensions/writing-standards/screenplay/styles/rules/.gitkeep +2 -0
  289. package/augment-extensions/writing-standards/screenplay/styles/rules/dialogue-centric.md +520 -0
  290. package/augment-extensions/writing-standards/screenplay/styles/rules/ensemble.md +499 -0
  291. package/augment-extensions/writing-standards/screenplay/styles/rules/epic.md +497 -0
  292. package/augment-extensions/writing-standards/screenplay/styles/rules/experimental.md +492 -0
  293. package/augment-extensions/writing-standards/screenplay/styles/rules/flashback.md +509 -0
  294. package/augment-extensions/writing-standards/screenplay/styles/rules/linear.md +490 -0
  295. package/augment-extensions/writing-standards/screenplay/styles/rules/minimalist.md +499 -0
  296. package/augment-extensions/writing-standards/screenplay/styles/rules/non-linear.md +501 -0
  297. package/augment-extensions/writing-standards/screenplay/styles/rules/poetic.md +499 -0
  298. package/augment-extensions/writing-standards/screenplay/styles/rules/realistic.md +498 -0
  299. package/augment-extensions/writing-standards/screenplay/styles/rules/satirical.md +499 -0
  300. package/augment-extensions/writing-standards/screenplay/styles/rules/surreal.md +508 -0
  301. package/augment-extensions/writing-standards/screenplay/styles/rules/voice-over.md +500 -0
  302. package/augment-extensions/writing-standards/screenplay/themes/README.md +158 -0
  303. package/augment-extensions/writing-standards/screenplay/themes/examples/.gitkeep +2 -0
  304. package/augment-extensions/writing-standards/screenplay/themes/examples/common-mistakes-and-fixes.md +643 -0
  305. package/augment-extensions/writing-standards/screenplay/themes/examples/complete-scene-example.md +311 -0
  306. package/augment-extensions/writing-standards/screenplay/themes/examples/individual-theme-examples.md +562 -0
  307. package/augment-extensions/writing-standards/screenplay/themes/examples/multi-theme-weaving.md +538 -0
  308. package/augment-extensions/writing-standards/screenplay/themes/examples/theme-application-guide.md +432 -0
  309. package/augment-extensions/writing-standards/screenplay/themes/examples/theme-integration-across-acts.md +637 -0
  310. package/augment-extensions/writing-standards/screenplay/themes/module.json +66 -0
  311. package/augment-extensions/writing-standards/screenplay/themes/rules/.gitkeep +2 -0
  312. package/augment-extensions/writing-standards/screenplay/themes/rules/ambition.md +458 -0
  313. package/augment-extensions/writing-standards/screenplay/themes/rules/betrayal.md +490 -0
  314. package/augment-extensions/writing-standards/screenplay/themes/rules/environment.md +458 -0
  315. package/augment-extensions/writing-standards/screenplay/themes/rules/fate.md +459 -0
  316. package/augment-extensions/writing-standards/screenplay/themes/rules/friendship.md +491 -0
  317. package/augment-extensions/writing-standards/screenplay/themes/rules/growth.md +491 -0
  318. package/augment-extensions/writing-standards/screenplay/themes/rules/identity.md +490 -0
  319. package/augment-extensions/writing-standards/screenplay/themes/rules/isolation.md +464 -0
  320. package/augment-extensions/writing-standards/screenplay/themes/rules/justice.md +461 -0
  321. package/augment-extensions/writing-standards/screenplay/themes/rules/love.md +489 -0
  322. package/augment-extensions/writing-standards/screenplay/themes/rules/power.md +494 -0
  323. package/augment-extensions/writing-standards/screenplay/themes/rules/redemption.md +483 -0
  324. package/augment-extensions/writing-standards/screenplay/themes/rules/revenge.md +489 -0
  325. package/augment-extensions/writing-standards/screenplay/themes/rules/survival.md +496 -0
  326. package/augment-extensions/writing-standards/screenplay/themes/rules/technology.md +463 -0
  327. package/cli/MODULES.md +302 -0
  328. package/cli/dist/cli.js +168 -10
  329. package/cli/dist/cli.js.map +1 -1
  330. package/cli/dist/commands/catalog.d.ts +13 -0
  331. package/cli/dist/commands/catalog.d.ts.map +1 -0
  332. package/cli/dist/commands/catalog.js +104 -0
  333. package/cli/dist/commands/catalog.js.map +1 -0
  334. package/cli/dist/commands/gui.d.ts +6 -0
  335. package/cli/dist/commands/gui.d.ts.map +1 -0
  336. package/cli/dist/commands/gui.js +211 -0
  337. package/cli/dist/commands/gui.js.map +1 -0
  338. package/cli/dist/commands/init.d.ts.map +1 -1
  339. package/cli/dist/commands/init.js +12 -0
  340. package/cli/dist/commands/init.js.map +1 -1
  341. package/cli/dist/commands/install-rules.d.ts +14 -0
  342. package/cli/dist/commands/install-rules.d.ts.map +1 -0
  343. package/cli/dist/commands/install-rules.js +127 -0
  344. package/cli/dist/commands/install-rules.js.map +1 -0
  345. package/cli/dist/commands/link.d.ts.map +1 -1
  346. package/cli/dist/commands/link.js +9 -11
  347. package/cli/dist/commands/link.js.map +1 -1
  348. package/cli/dist/commands/list.d.ts.map +1 -1
  349. package/cli/dist/commands/list.js +11 -28
  350. package/cli/dist/commands/list.js.map +1 -1
  351. package/cli/dist/commands/mcp.d.ts +48 -0
  352. package/cli/dist/commands/mcp.d.ts.map +1 -0
  353. package/cli/dist/commands/mcp.js +229 -0
  354. package/cli/dist/commands/mcp.js.map +1 -0
  355. package/cli/dist/commands/self-remove.d.ts +7 -0
  356. package/cli/dist/commands/self-remove.d.ts.map +1 -0
  357. package/cli/dist/commands/self-remove.js +179 -0
  358. package/cli/dist/commands/self-remove.js.map +1 -0
  359. package/cli/dist/commands/show.d.ts +19 -0
  360. package/cli/dist/commands/show.d.ts.map +1 -1
  361. package/cli/dist/commands/show.js +478 -63
  362. package/cli/dist/commands/show.js.map +1 -1
  363. package/cli/dist/commands/skill.d.ts +67 -0
  364. package/cli/dist/commands/skill.d.ts.map +1 -0
  365. package/cli/dist/commands/skill.js +513 -0
  366. package/cli/dist/commands/skill.js.map +1 -0
  367. package/cli/dist/commands/unlink.d.ts +6 -0
  368. package/cli/dist/commands/unlink.d.ts.map +1 -0
  369. package/cli/dist/commands/unlink.js +115 -0
  370. package/cli/dist/commands/unlink.js.map +1 -0
  371. package/cli/dist/commands/validate.d.ts +6 -0
  372. package/cli/dist/commands/validate.d.ts.map +1 -0
  373. package/cli/dist/commands/validate.js +159 -0
  374. package/cli/dist/commands/validate.js.map +1 -0
  375. package/cli/dist/types/gui.d.ts +62 -0
  376. package/cli/dist/types/gui.d.ts.map +1 -0
  377. package/cli/dist/types/gui.js +30 -0
  378. package/cli/dist/types/gui.js.map +1 -0
  379. package/cli/dist/utils/catalog-sync.d.ts +22 -0
  380. package/cli/dist/utils/catalog-sync.d.ts.map +1 -0
  381. package/cli/dist/utils/catalog-sync.js +157 -0
  382. package/cli/dist/utils/catalog-sync.js.map +1 -0
  383. package/cli/dist/utils/character-count.d.ts +56 -0
  384. package/cli/dist/utils/character-count.d.ts.map +1 -0
  385. package/cli/dist/utils/character-count.js +190 -0
  386. package/cli/dist/utils/character-count.js.map +1 -0
  387. package/cli/dist/utils/documentation-validator.d.ts +18 -0
  388. package/cli/dist/utils/documentation-validator.d.ts.map +1 -0
  389. package/cli/dist/utils/documentation-validator.js +233 -0
  390. package/cli/dist/utils/documentation-validator.js.map +1 -0
  391. package/cli/dist/utils/gui-helpers.d.ts +23 -0
  392. package/cli/dist/utils/gui-helpers.d.ts.map +1 -0
  393. package/cli/dist/utils/gui-helpers.js +159 -0
  394. package/cli/dist/utils/gui-helpers.js.map +1 -0
  395. package/cli/dist/utils/install-rules.d.ts +32 -0
  396. package/cli/dist/utils/install-rules.d.ts.map +1 -0
  397. package/cli/dist/utils/install-rules.js +375 -0
  398. package/cli/dist/utils/install-rules.js.map +1 -0
  399. package/cli/dist/utils/mcp-integration.d.ts +70 -0
  400. package/cli/dist/utils/mcp-integration.d.ts.map +1 -0
  401. package/cli/dist/utils/mcp-integration.js +292 -0
  402. package/cli/dist/utils/mcp-integration.js.map +1 -0
  403. package/cli/dist/utils/module-system.d.ts +232 -0
  404. package/cli/dist/utils/module-system.d.ts.map +1 -0
  405. package/cli/dist/utils/module-system.js +900 -0
  406. package/cli/dist/utils/module-system.js.map +1 -0
  407. package/cli/dist/utils/modules-catalog.d.ts +33 -0
  408. package/cli/dist/utils/modules-catalog.d.ts.map +1 -0
  409. package/cli/dist/utils/modules-catalog.js +163 -0
  410. package/cli/dist/utils/modules-catalog.js.map +1 -0
  411. package/cli/dist/utils/rule-install-hooks.d.ts +19 -0
  412. package/cli/dist/utils/rule-install-hooks.d.ts.map +1 -0
  413. package/cli/dist/utils/rule-install-hooks.js +224 -0
  414. package/cli/dist/utils/rule-install-hooks.js.map +1 -0
  415. package/cli/dist/utils/skill-system.d.ts +95 -0
  416. package/cli/dist/utils/skill-system.d.ts.map +1 -0
  417. package/cli/dist/utils/skill-system.js +313 -0
  418. package/cli/dist/utils/skill-system.js.map +1 -0
  419. package/modules.md +559 -105
  420. package/package.json +17 -6
@@ -0,0 +1,522 @@
1
+ # Compressed MCP Example: Mobile Assistant
2
+
3
+ ## Use Case
4
+
5
+ A mobile AI assistant that operates under strict resource constraints (limited bandwidth, battery, storage) requiring aggressive context compression.
6
+
7
+ **Challenges**:
8
+ - Minimize token usage for cost/latency
9
+ - Compress context without losing critical information
10
+ - Operate on mobile devices with limited resources
11
+ - Balance compression ratio vs. information retention
12
+
13
+ ---
14
+
15
+ ## Configuration
16
+
17
+ ```json
18
+ {
19
+ "mcp": {
20
+ "type": "compressed",
21
+ "compression": {
22
+ "strategy": "multi_stage",
23
+ "stages": [
24
+ {"type": "deduplication", "enabled": true},
25
+ {"type": "summarization", "ratio": 0.3},
26
+ {"type": "entity_extraction", "enabled": true},
27
+ {"type": "semantic_compression", "ratio": 0.5}
28
+ ],
29
+ "targetRatio": 0.15,
30
+ "minQualityScore": 0.7
31
+ },
32
+ "caching": {
33
+ "enabled": true,
34
+ "maxSize": "10MB",
35
+ "evictionPolicy": "lru"
36
+ },
37
+ "optimization": {
38
+ "batchRequests": true,
39
+ "prefetch": true,
40
+ "deltaEncoding": true
41
+ }
42
+ }
43
+ }
44
+ ```
45
+
46
+ ---
47
+
48
+ ## Architecture
49
+
50
+ ```
51
+ ┌─────────────────────────────────────────────────────────────┐
52
+ │ Original Context (10,000 tokens) │
53
+ └─────────────────────────────────────────────────────────────┘
54
+
55
+
56
+ ┌─────────────────────────────────────────────────────────────┐
57
+ │ Stage 1: Deduplication │
58
+ │ Remove duplicate sentences/phrases │
59
+ │ Output: 8,000 tokens (20% reduction) │
60
+ └─────────────────────────────────────────────────────────────┘
61
+
62
+
63
+ ┌─────────────────────────────────────────────────────────────┐
64
+ │ Stage 2: Summarization │
65
+ │ Compress to 30% of original │
66
+ │ Output: 2,400 tokens (70% reduction) │
67
+ └─────────────────────────────────────────────────────────────┘
68
+
69
+
70
+ ┌─────────────────────────────────────────────────────────────┐
71
+ │ Stage 3: Entity Extraction │
72
+ │ Extract key entities and facts │
73
+ │ Output: Structured entities + 1,800 tokens │
74
+ └─────────────────────────────────────────────────────────────┘
75
+
76
+
77
+ ┌─────────────────────────────────────────────────────────────┐
78
+ │ Stage 4: Semantic Compression │
79
+ │ Compress to 50% using semantic similarity │
80
+ │ Output: 900 tokens (91% total reduction) │
81
+ └─────────────────────────────────────────────────────────────┘
82
+
83
+
84
+ ┌─────────────────────────────────────────────────────────────┐
85
+ │ Final Compressed Context (1,500 tokens) │
86
+ │ Entities + Compressed Text │
87
+ │ Compression Ratio: 15% │
88
+ └─────────────────────────────────────────────────────────────┘
89
+ ```
90
+
91
+ ---
92
+
93
+ ## Implementation
94
+
95
+ ### Step 1: Compression Pipeline
96
+
97
+ ```python
98
+ import tiktoken
99
+ from typing import List, Dict, Any
100
+ import openai
101
+ from collections import Counter
102
+ import hashlib
103
+
104
+ class CompressionPipeline:
105
+ def __init__(self, config: Dict[str, Any], openai_api_key: str):
106
+ self.config = config
107
+ self.client = openai.OpenAI(api_key=openai_api_key)
108
+ self.tokenizer = tiktoken.encoding_for_model("gpt-4o")
109
+ self.target_ratio = config["compression"]["targetRatio"]
110
+
111
+ def compress(self, text: str) -> Dict[str, Any]:
112
+ """Apply multi-stage compression"""
113
+ stages = self.config["compression"]["stages"]
114
+
115
+ current_text = text
116
+ original_tokens = len(self.tokenizer.encode(text))
117
+ compression_log = []
118
+
119
+ for stage in stages:
120
+ if not stage.get("enabled", True):
121
+ continue
122
+
123
+ stage_type = stage["type"]
124
+
125
+ if stage_type == "deduplication":
126
+ current_text = self._deduplicate(current_text)
127
+ elif stage_type == "summarization":
128
+ current_text = self._summarize(current_text, stage["ratio"])
129
+ elif stage_type == "entity_extraction":
130
+ entities = self._extract_entities(current_text)
131
+ current_text = self._compress_with_entities(current_text, entities)
132
+ elif stage_type == "semantic_compression":
133
+ current_text = self._semantic_compress(current_text, stage["ratio"])
134
+
135
+ current_tokens = len(self.tokenizer.encode(current_text))
136
+ compression_log.append({
137
+ "stage": stage_type,
138
+ "tokens": current_tokens,
139
+ "ratio": current_tokens / original_tokens
140
+ })
141
+
142
+ final_tokens = len(self.tokenizer.encode(current_text))
143
+
144
+ return {
145
+ "compressed_text": current_text,
146
+ "original_tokens": original_tokens,
147
+ "compressed_tokens": final_tokens,
148
+ "compression_ratio": final_tokens / original_tokens,
149
+ "stages": compression_log
150
+ }
151
+
152
+ def _deduplicate(self, text: str) -> str:
153
+ """Remove duplicate sentences"""
154
+ sentences = text.split('. ')
155
+ seen = set()
156
+ unique_sentences = []
157
+
158
+ for sentence in sentences:
159
+ # Hash sentence for deduplication
160
+ sentence_hash = hashlib.md5(sentence.lower().strip().encode()).hexdigest()
161
+
162
+ if sentence_hash not in seen:
163
+ seen.add(sentence_hash)
164
+ unique_sentences.append(sentence)
165
+
166
+ return '. '.join(unique_sentences)
167
+
168
+ def _summarize(self, text: str, ratio: float) -> str:
169
+ """Summarize text to target ratio"""
170
+ current_tokens = len(self.tokenizer.encode(text))
171
+ target_tokens = int(current_tokens * ratio)
172
+
173
+ response = self.client.chat.completions.create(
174
+ model="gpt-4o-mini", # Use mini for cost efficiency
175
+ messages=[
176
+ {
177
+ "role": "system",
178
+ "content": f"Summarize the text to approximately {target_tokens} tokens. Preserve key information."
179
+ },
180
+ {
181
+ "role": "user",
182
+ "content": text
183
+ }
184
+ ],
185
+ temperature=0.3
186
+ )
187
+
188
+ return response.choices[0].message.content
189
+
190
+ def _extract_entities(self, text: str) -> List[Dict[str, Any]]:
191
+ """Extract key entities from text"""
192
+ response = self.client.chat.completions.create(
193
+ model="gpt-4o-mini",
194
+ messages=[
195
+ {
196
+ "role": "system",
197
+ "content": """Extract key entities from the text.
198
+
199
+ Return JSON array:
200
+ [{"type": "PERSON", "value": "John"}, {"type": "DATE", "value": "2024-01-15"}, ...]"""
201
+ },
202
+ {
203
+ "role": "user",
204
+ "content": text
205
+ }
206
+ ],
207
+ response_format={"type": "json_object"}
208
+ )
209
+
210
+ import json
211
+ result = json.loads(response.choices[0].message.content)
212
+ return result.get("entities", [])
213
+
214
+ def _compress_with_entities(self, text: str, entities: List[Dict[str, Any]]) -> str:
215
+ """Compress text while preserving entities"""
216
+ # Create entity placeholders
217
+ entity_map = {}
218
+ compressed_text = text
219
+
220
+ for i, entity in enumerate(entities):
221
+ placeholder = f"[E{i}]"
222
+ entity_map[placeholder] = f"{entity['type']}:{entity['value']}"
223
+ compressed_text = compressed_text.replace(entity['value'], placeholder)
224
+
225
+ # Add entity legend
226
+ entity_legend = "\n\nEntities: " + ", ".join(f"{k}={v}" for k, v in entity_map.items())
227
+
228
+ return compressed_text + entity_legend
229
+
230
+ def _semantic_compress(self, text: str, ratio: float) -> str:
231
+ """Compress using semantic similarity (remove redundant sentences)"""
232
+ sentences = text.split('. ')
233
+
234
+ if len(sentences) <= 3:
235
+ return text
236
+
237
+ # Simple heuristic: keep sentences with unique keywords
238
+ target_count = max(3, int(len(sentences) * ratio))
239
+
240
+ # Score sentences by keyword diversity
241
+ all_words = ' '.join(sentences).lower().split()
242
+ word_freq = Counter(all_words)
243
+
244
+ sentence_scores = []
245
+ for sentence in sentences:
246
+ words = sentence.lower().split()
247
+ # Score based on rare words (more informative)
248
+ score = sum(1 / (word_freq[word] + 1) for word in words if word in word_freq)
249
+ sentence_scores.append((score, sentence))
250
+
251
+ # Keep top-scoring sentences
252
+ sentence_scores.sort(reverse=True)
253
+ selected_sentences = [s for _, s in sentence_scores[:target_count]]
254
+
255
+ return '. '.join(selected_sentences)
256
+
257
+ class MobileAssistant:
258
+ def __init__(self, config: Dict[str, Any], openai_api_key: str):
259
+ self.compression_pipeline = CompressionPipeline(config, openai_api_key)
260
+ self.client = openai.OpenAI(api_key=openai_api_key)
261
+ self.cache = {} # Simple in-memory cache
262
+ self.cache_max_size = 10 * 1024 * 1024 # 10MB
263
+
264
+ def process_query(self, query: str, context: str) -> Dict[str, Any]:
265
+ """Process query with compressed context"""
266
+ # Check cache
267
+ cache_key = hashlib.md5(context.encode()).hexdigest()
268
+
269
+ if cache_key in self.cache:
270
+ compressed_result = self.cache[cache_key]
271
+ else:
272
+ # Compress context
273
+ compressed_result = self.compression_pipeline.compress(context)
274
+
275
+ # Cache result
276
+ self._cache_result(cache_key, compressed_result)
277
+
278
+ # Generate response with compressed context
279
+ response = self.client.chat.completions.create(
280
+ model="gpt-4o-mini", # Use mini for mobile efficiency
281
+ messages=[
282
+ {
283
+ "role": "system",
284
+ "content": "You are a helpful mobile assistant. Use the compressed context to answer questions concisely."
285
+ },
286
+ {
287
+ "role": "user",
288
+ "content": f"""Context (compressed):
289
+ {compressed_result['compressed_text']}
290
+
291
+ Question: {query}
292
+
293
+ Answer:"""
294
+ }
295
+ ],
296
+ temperature=0.5,
297
+ max_tokens=200 # Limit response length for mobile
298
+ )
299
+
300
+ answer = response.choices[0].message.content
301
+
302
+ return {
303
+ "answer": answer,
304
+ "compression_stats": {
305
+ "original_tokens": compressed_result["original_tokens"],
306
+ "compressed_tokens": compressed_result["compressed_tokens"],
307
+ "compression_ratio": compressed_result["compression_ratio"],
308
+ "stages": compressed_result["stages"]
309
+ },
310
+ "cached": cache_key in self.cache
311
+ }
312
+
313
+ def _cache_result(self, key: str, result: Dict[str, Any]) -> None:
314
+ """Cache compression result with LRU eviction"""
315
+ import sys
316
+
317
+ result_size = sys.getsizeof(result)
318
+
319
+ # Simple LRU: remove oldest if cache full
320
+ if sum(sys.getsizeof(v) for v in self.cache.values()) + result_size > self.cache_max_size:
321
+ if self.cache:
322
+ oldest_key = next(iter(self.cache))
323
+ del self.cache[oldest_key]
324
+
325
+ self.cache[key] = result
326
+ ```
327
+
328
+ ---
329
+
330
+ ## Usage Example
331
+
332
+ ```python
333
+ # Configuration
334
+ config = {
335
+ "compression": {
336
+ "strategy": "multi_stage",
337
+ "stages": [
338
+ {"type": "deduplication", "enabled": True},
339
+ {"type": "summarization", "ratio": 0.3},
340
+ {"type": "entity_extraction", "enabled": True},
341
+ {"type": "semantic_compression", "ratio": 0.5}
342
+ ],
343
+ "targetRatio": 0.15,
344
+ "minQualityScore": 0.7
345
+ },
346
+ "caching": {
347
+ "enabled": True,
348
+ "maxSize": "10MB",
349
+ "evictionPolicy": "lru"
350
+ }
351
+ }
352
+
353
+ # Initialize assistant
354
+ assistant = MobileAssistant(config, "your-openai-key")
355
+
356
+ # Long context (e.g., article, documentation)
357
+ long_context = """
358
+ [Long article text here - 10,000 tokens]
359
+ Python is a high-level programming language. Python is widely used.
360
+ Python supports multiple programming paradigms. Python has a large ecosystem.
361
+ ...
362
+ """
363
+
364
+ # Process query with compression
365
+ result = assistant.process_query(
366
+ query="What are the key features of Python?",
367
+ context=long_context
368
+ )
369
+
370
+ print(f"Answer: {result['answer']}")
371
+ print(f"\nCompression Stats:")
372
+ print(f" Original: {result['compression_stats']['original_tokens']} tokens")
373
+ print(f" Compressed: {result['compression_stats']['compressed_tokens']} tokens")
374
+ print(f" Ratio: {result['compression_stats']['compression_ratio']:.2%}")
375
+ print(f" Cached: {result['cached']}")
376
+ ```
377
+
378
+ ---
379
+
380
+ ## Key Features
381
+
382
+ ### 1. Multi-Stage Compression
383
+ - Deduplication (remove duplicates)
384
+ - Summarization (compress to ratio)
385
+ - Entity extraction (preserve key info)
386
+ - Semantic compression (remove redundancy)
387
+
388
+ ### 2. Caching
389
+ - LRU eviction policy
390
+ - Size-based limits (10MB)
391
+ - Cache hit tracking
392
+
393
+ ### 3. Mobile Optimization
394
+ - Use gpt-4o-mini for cost/speed
395
+ - Limit response tokens (200)
396
+ - Batch requests when possible
397
+ - Prefetch common contexts
398
+
399
+ ### 4. Quality Preservation
400
+ - Entity preservation
401
+ - Keyword diversity scoring
402
+ - Configurable quality thresholds
403
+
404
+ ---
405
+
406
+ ## Testing
407
+
408
+ ```python
409
+ import pytest
410
+
411
+ def test_deduplication():
412
+ pipeline = CompressionPipeline(config, "key")
413
+
414
+ text = "Python is great. Python is great. Python is awesome."
415
+ result = pipeline._deduplicate(text)
416
+
417
+ assert result.count("Python is great") == 1
418
+
419
+ def test_compression_ratio():
420
+ pipeline = CompressionPipeline(config, "key")
421
+
422
+ text = "This is a long text. " * 100
423
+ result = pipeline.compress(text)
424
+
425
+ assert result["compression_ratio"] < 0.5
426
+ assert result["compressed_tokens"] < result["original_tokens"]
427
+
428
+ def test_caching():
429
+ assistant = MobileAssistant(config, "key")
430
+
431
+ context = "Test context"
432
+
433
+ # First call - not cached
434
+ result1 = assistant.process_query("test", context)
435
+ assert not result1["cached"]
436
+
437
+ # Second call - cached
438
+ result2 = assistant.process_query("test", context)
439
+ assert result2["cached"]
440
+
441
+ def test_entity_extraction():
442
+ pipeline = CompressionPipeline(config, "key")
443
+
444
+ text = "John met Mary on January 15, 2024 in New York."
445
+ entities = pipeline._extract_entities(text)
446
+
447
+ assert len(entities) > 0
448
+ assert any(e["type"] == "PERSON" for e in entities)
449
+ ```
450
+
451
+ ---
452
+
453
+ ## Best Practices
454
+
455
+ 1. **Compression Ratio**: Target 10-20% for mobile use cases
456
+ 2. **Quality Monitoring**: Track information retention metrics
457
+ 3. **Caching Strategy**: Cache frequently accessed contexts
458
+ 4. **Model Selection**: Use gpt-4o-mini for cost efficiency
459
+ 5. **Batch Processing**: Batch multiple compressions
460
+ 6. **Progressive Compression**: Compress incrementally as needed
461
+ 7. **Fallback**: Keep original context for quality checks
462
+ 8. **Monitoring**: Track compression performance and quality
463
+
464
+ ---
465
+
466
+ ## Performance Optimization
467
+
468
+ - **Parallel Compression**: Compress multiple contexts in parallel
469
+ - **Incremental Updates**: Only compress new content
470
+ - **Delta Encoding**: Store only changes from previous version
471
+ - **Prefetching**: Prefetch and compress common contexts
472
+ - **Lazy Compression**: Compress only when needed
473
+ - **Compression Levels**: Offer multiple compression levels
474
+
475
+ ---
476
+
477
+ ## Quality Metrics
478
+
479
+ ### Compression Metrics
480
+ - **Compression Ratio**: Compressed tokens / Original tokens
481
+ - **Latency**: Time to compress
482
+ - **Cache Hit Rate**: Cached requests / Total requests
483
+
484
+ ### Quality Metrics
485
+ - **Information Retention**: Key facts preserved
486
+ - **Entity Preservation**: Critical entities retained
487
+ - **Semantic Similarity**: Cosine similarity to original
488
+ - **User Satisfaction**: Feedback on answer quality
489
+
490
+ ---
491
+
492
+ ## Mobile-Specific Optimizations
493
+
494
+ ### Bandwidth Optimization
495
+ - Compress requests/responses
496
+ - Use delta encoding for updates
497
+ - Batch multiple requests
498
+ - Prefetch common queries
499
+
500
+ ### Battery Optimization
501
+ - Minimize API calls
502
+ - Cache aggressively
503
+ - Use efficient models (mini)
504
+ - Reduce token usage
505
+
506
+ ### Storage Optimization
507
+ - Limit cache size (10MB)
508
+ - LRU eviction
509
+ - Compress cached data
510
+ - Periodic cache cleanup
511
+
512
+ ---
513
+
514
+ ## Security
515
+
516
+ - **Data Minimization**: Only compress necessary data
517
+ - **Cache Encryption**: Encrypt cached contexts
518
+ - **PII Handling**: Remove PII before compression
519
+ - **Audit Logging**: Log compression operations
520
+ - **Rate Limiting**: Limit compression requests per user
521
+ ```
522
+