mcli-framework 7.11.0__tar.gz → 7.11.2__tar.gz

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.

Potentially problematic release.


This version of mcli-framework might be problematic. Click here for more details.

Files changed (400) hide show
  1. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/publish-self-hosted.yml +12 -9
  2. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/PKG-INFO +19 -1
  3. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/README.md +18 -0
  4. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/pyproject.toml +1 -1
  5. mcli_framework-7.11.2/src/mcli/__init__.py +160 -0
  6. mcli_framework-7.11.2/src/mcli/__main__.py +14 -0
  7. mcli_framework-7.11.2/src/mcli/app/__init__.py +23 -0
  8. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/app/commands_cmd.py +261 -0
  9. mcli_framework-7.11.2/src/mcli/app/video/__init__.py +5 -0
  10. mcli_framework-7.11.2/src/mcli/chat/__init__.py +34 -0
  11. mcli_framework-7.11.2/src/mcli/lib/__init__.py +0 -0
  12. mcli_framework-7.11.2/src/mcli/lib/api/__init__.py +0 -0
  13. mcli_framework-7.11.2/src/mcli/lib/auth/__init__.py +1 -0
  14. mcli_framework-7.11.2/src/mcli/lib/config/__init__.py +1 -0
  15. mcli_framework-7.11.2/src/mcli/lib/erd/__init__.py +25 -0
  16. mcli_framework-7.11.2/src/mcli/lib/files/__init__.py +0 -0
  17. mcli_framework-7.11.2/src/mcli/lib/fs/__init__.py +1 -0
  18. mcli_framework-7.11.2/src/mcli/lib/logger/__init__.py +3 -0
  19. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/paths.py +6 -2
  20. mcli_framework-7.11.2/src/mcli/lib/performance/__init__.py +17 -0
  21. mcli_framework-7.11.2/src/mcli/lib/pickles/__init__.py +1 -0
  22. mcli_framework-7.11.2/src/mcli/lib/secrets/__init__.py +10 -0
  23. mcli_framework-7.11.2/src/mcli/lib/shell/__init__.py +0 -0
  24. mcli_framework-7.11.2/src/mcli/lib/toml/__init__.py +1 -0
  25. mcli_framework-7.11.2/src/mcli/lib/watcher/__init__.py +0 -0
  26. mcli_framework-7.11.2/src/mcli/ml/__init__.py +16 -0
  27. mcli_framework-7.11.2/src/mcli/ml/api/__init__.py +30 -0
  28. mcli_framework-7.11.2/src/mcli/ml/api/routers/__init__.py +27 -0
  29. mcli_framework-7.11.2/src/mcli/ml/auth/__init__.py +41 -0
  30. mcli_framework-7.11.2/src/mcli/ml/backtesting/__init__.py +33 -0
  31. mcli_framework-7.11.2/src/mcli/ml/cli/__init__.py +5 -0
  32. mcli_framework-7.11.2/src/mcli/ml/config/__init__.py +33 -0
  33. mcli_framework-7.11.2/src/mcli/ml/configs/__init__.py +16 -0
  34. mcli_framework-7.11.2/src/mcli/ml/dashboard/__init__.py +12 -0
  35. mcli_framework-7.11.2/src/mcli/ml/dashboard/components/__init__.py +7 -0
  36. mcli_framework-7.11.2/src/mcli/ml/dashboard/pages/__init__.py +6 -0
  37. mcli_framework-7.11.2/src/mcli/ml/data_ingestion/__init__.py +29 -0
  38. mcli_framework-7.11.2/src/mcli/ml/database/__init__.py +40 -0
  39. mcli_framework-7.11.2/src/mcli/ml/experimentation/__init__.py +29 -0
  40. mcli_framework-7.11.2/src/mcli/ml/features/__init__.py +39 -0
  41. mcli_framework-7.11.2/src/mcli/ml/mlops/__init__.py +19 -0
  42. mcli_framework-7.11.2/src/mcli/ml/models/__init__.py +90 -0
  43. mcli_framework-7.11.2/src/mcli/ml/monitoring/__init__.py +25 -0
  44. mcli_framework-7.11.2/src/mcli/ml/optimization/__init__.py +27 -0
  45. mcli_framework-7.11.2/src/mcli/ml/predictions/__init__.py +5 -0
  46. mcli_framework-7.11.2/src/mcli/ml/preprocessing/__init__.py +24 -0
  47. mcli_framework-7.11.2/src/mcli/ml/scripts/__init__.py +1 -0
  48. mcli_framework-7.11.2/src/mcli/ml/serving/__init__.py +1 -0
  49. mcli_framework-7.11.2/src/mcli/ml/trading/__init__.py +63 -0
  50. mcli_framework-7.11.2/src/mcli/ml/training/__init__.py +7 -0
  51. mcli_framework-7.11.2/src/mcli/mygroup/__init__.py +3 -0
  52. mcli_framework-7.11.2/src/mcli/public/__init__.py +1 -0
  53. mcli_framework-7.11.2/src/mcli/public/commands/__init__.py +2 -0
  54. mcli_framework-7.11.2/src/mcli/self/__init__.py +3 -0
  55. mcli_framework-7.11.2/src/mcli/workflow/__init__.py +0 -0
  56. mcli_framework-7.11.2/src/mcli/workflow/daemon/__init__.py +15 -0
  57. mcli_framework-7.11.2/src/mcli/workflow/dashboard/__init__.py +5 -0
  58. mcli_framework-7.11.2/src/mcli/workflow/docker/__init__.py +0 -0
  59. mcli_framework-7.11.2/src/mcli/workflow/docker/docker.py +0 -0
  60. mcli_framework-7.11.2/src/mcli/workflow/file/__init__.py +0 -0
  61. mcli_framework-7.11.2/src/mcli/workflow/gcloud/__init__.py +1 -0
  62. mcli_framework-7.11.2/src/mcli/workflow/git_commit/__init__.py +0 -0
  63. mcli_framework-7.11.2/src/mcli/workflow/interview/__init__.py +0 -0
  64. mcli_framework-7.11.2/src/mcli/workflow/notebook/__init__.py +16 -0
  65. mcli_framework-7.11.2/src/mcli/workflow/registry/__init__.py +0 -0
  66. mcli_framework-7.11.2/src/mcli/workflow/repo/__init__.py +0 -0
  67. mcli_framework-7.11.2/src/mcli/workflow/scheduler/__init__.py +25 -0
  68. mcli_framework-7.11.2/src/mcli/workflow/search/__init__.py +0 -0
  69. mcli_framework-7.11.2/src/mcli/workflow/secrets/__init__.py +4 -0
  70. mcli_framework-7.11.2/src/mcli/workflow/sync/__init__.py +5 -0
  71. mcli_framework-7.11.2/src/mcli/workflow/videos/__init__.py +1 -0
  72. mcli_framework-7.11.2/src/mcli/workflow/wakatime/__init__.py +80 -0
  73. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli_framework.egg-info/PKG-INFO +19 -1
  74. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli_framework.egg-info/SOURCES.txt +73 -0
  75. mcli_framework-7.11.2/tests/cli/__init__.py +0 -0
  76. mcli_framework-7.11.2/tests/e2e/__init__.py +0 -0
  77. mcli_framework-7.11.2/tests/fixtures/__init__.py +59 -0
  78. mcli_framework-7.11.2/tests/integration/__init__.py +0 -0
  79. mcli_framework-7.11.2/tests/performance/__init__.py +0 -0
  80. mcli_framework-7.11.2/tests/property/__init__.py +0 -0
  81. mcli_framework-7.11.2/tests/unit/__init__.py +0 -0
  82. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/dependabot.yml +0 -0
  83. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/build.yml +0 -0
  84. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/ci.yml +0 -0
  85. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/codeql.yml +0 -0
  86. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/main_mcli.yml +0 -0
  87. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/ml-pipeline.yml +0 -0
  88. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/publish.yml +0 -0
  89. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/release.yml +0 -0
  90. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/security.yml +0 -0
  91. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/.github/workflows/test.yml +0 -0
  92. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/LICENSE +0 -0
  93. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/MANIFEST.in +0 -0
  94. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/mcli_rust/Cargo.toml +0 -0
  95. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/mcli_rust/src/command_parser.rs +0 -0
  96. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/mcli_rust/src/file_watcher.rs +0 -0
  97. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/mcli_rust/src/lib.rs +0 -0
  98. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/mcli_rust/src/process_manager.rs +0 -0
  99. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/mcli_rust/src/tfidf.rs +0 -0
  100. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/setup.cfg +0 -0
  101. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/app/completion_helpers.py +0 -0
  102. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/app/main.py +0 -0
  103. /mcli_framework-7.11.0/src/mcli/workflow/docker/docker.py → /mcli_framework-7.11.2/src/mcli/app/model/__init__.py +0 -0
  104. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/app/model/model.py +0 -0
  105. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/app/model_cmd.py +0 -0
  106. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/app/video/video.py +0 -0
  107. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/chat/chat.py +0 -0
  108. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/chat/command_rag.py +0 -0
  109. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/chat/enhanced_chat.py +0 -0
  110. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/chat/system_controller.py +0 -0
  111. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/chat/system_integration.py +0 -0
  112. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/cli.py +0 -0
  113. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/config.toml +0 -0
  114. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/api/api.py +0 -0
  115. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/api/daemon_client.py +0 -0
  116. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/api/daemon_client_local.py +0 -0
  117. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/api/daemon_decorator.py +0 -0
  118. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/api/mcli_decorators.py +0 -0
  119. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/auth.py +0 -0
  120. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/aws_manager.py +0 -0
  121. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/azure_manager.py +0 -0
  122. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/credential_manager.py +0 -0
  123. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/gcp_manager.py +0 -0
  124. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/key_manager.py +0 -0
  125. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/mcli_manager.py +0 -0
  126. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/token_manager.py +0 -0
  127. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/auth/token_util.py +0 -0
  128. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/config/config.py +0 -0
  129. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/custom_commands.py +0 -0
  130. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/discovery/__init__.py +0 -0
  131. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/discovery/command_discovery.py +0 -0
  132. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/erd/erd.py +0 -0
  133. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/erd/generate_graph.py +0 -0
  134. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/files/files.py +0 -0
  135. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/fs/fs.py +0 -0
  136. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/lib.py +0 -0
  137. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/logger/logger.py +0 -0
  138. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/optional_deps.py +0 -0
  139. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/performance/optimizer.py +0 -0
  140. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/performance/rust_bridge.py +0 -0
  141. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/performance/uvloop_config.py +0 -0
  142. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/pickles/pickles.py +0 -0
  143. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/search/cached_vectorizer.py +0 -0
  144. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/secrets/commands.py +0 -0
  145. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/secrets/manager.py +0 -0
  146. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/secrets/repl.py +0 -0
  147. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/secrets/store.py +0 -0
  148. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/services/data_pipeline.py +0 -0
  149. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/services/lsh_client.py +0 -0
  150. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/services/redis_service.py +0 -0
  151. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/shell/shell.py +0 -0
  152. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/toml/toml.py +0 -0
  153. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/ui/styling.py +0 -0
  154. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/ui/visual_effects.py +0 -0
  155. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/lib/watcher/watcher.py +0 -0
  156. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/app.py +0 -0
  157. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/middleware.py +0 -0
  158. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/admin_router.py +0 -0
  159. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/auth_router.py +0 -0
  160. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/backtest_router.py +0 -0
  161. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/data_router.py +0 -0
  162. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/model_router.py +0 -0
  163. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/monitoring_router.py +0 -0
  164. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/portfolio_router.py +0 -0
  165. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/prediction_router.py +0 -0
  166. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/trade_router.py +0 -0
  167. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/routers/websocket_router.py +0 -0
  168. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/api/schemas.py +0 -0
  169. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/auth/auth_manager.py +0 -0
  170. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/auth/models.py +0 -0
  171. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/auth/permissions.py +0 -0
  172. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/backtesting/backtest_engine.py +0 -0
  173. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/backtesting/performance_metrics.py +0 -0
  174. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/backtesting/run.py +0 -0
  175. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/cache.py +0 -0
  176. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/cli/main.py +0 -0
  177. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/config/settings.py +0 -0
  178. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/configs/dvc_config.py +0 -0
  179. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/configs/mlflow_config.py +0 -0
  180. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/configs/mlops_manager.py +0 -0
  181. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/app.py +0 -0
  182. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/app_integrated.py +0 -0
  183. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/app_supabase.py +0 -0
  184. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/app_training.py +0 -0
  185. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/cli.py +0 -0
  186. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/common.py +0 -0
  187. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/components/charts.py +0 -0
  188. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/components/metrics.py +0 -0
  189. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/components/tables.py +0 -0
  190. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/overview.py +0 -0
  191. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/cicd.py +0 -0
  192. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/debug_dependencies.py +0 -0
  193. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/gravity_viz.py +0 -0
  194. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/monte_carlo_predictions.py +0 -0
  195. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/predictions_enhanced.py +0 -0
  196. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/scrapers_and_logs.py +0 -0
  197. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/test_portfolio.py +0 -0
  198. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/trading.py +0 -0
  199. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/pages/workflows.py +0 -0
  200. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/streamlit_extras_utils.py +0 -0
  201. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/styles.py +0 -0
  202. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/utils.py +0 -0
  203. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/dashboard/warning_suppression.py +0 -0
  204. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/data_ingestion/api_connectors.py +0 -0
  205. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/data_ingestion/data_pipeline.py +0 -0
  206. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/data_ingestion/stream_processor.py +0 -0
  207. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/database/migrations/env.py +0 -0
  208. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/database/models.py +0 -0
  209. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/database/session.py +0 -0
  210. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/experimentation/ab_testing.py +0 -0
  211. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/features/ensemble_features.py +0 -0
  212. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/features/recommendation_engine.py +0 -0
  213. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/features/stock_features.py +0 -0
  214. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/features/test_feature_engineering.py +0 -0
  215. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/logging.py +0 -0
  216. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/mlops/data_versioning.py +0 -0
  217. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/mlops/experiment_tracker.py +0 -0
  218. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/mlops/model_serving.py +0 -0
  219. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/mlops/pipeline_orchestrator.py +0 -0
  220. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/models/base_models.py +0 -0
  221. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/models/ensemble_models.py +0 -0
  222. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/models/recommendation_models.py +0 -0
  223. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/models/test_models.py +0 -0
  224. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/monitoring/drift_detection.py +0 -0
  225. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/monitoring/metrics.py +0 -0
  226. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/optimization/optimize.py +0 -0
  227. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/optimization/portfolio_optimizer.py +0 -0
  228. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/predictions/monte_carlo.py +0 -0
  229. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/predictions/prediction_engine.py +0 -0
  230. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/preprocessing/data_cleaners.py +0 -0
  231. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/preprocessing/feature_extractors.py +0 -0
  232. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/preprocessing/ml_pipeline.py +0 -0
  233. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/preprocessing/test_preprocessing.py +0 -0
  234. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/scripts/populate_sample_data.py +0 -0
  235. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/serving/serve.py +0 -0
  236. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/tasks.py +0 -0
  237. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/tests/test_integration.py +0 -0
  238. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/tests/test_training_dashboard.py +0 -0
  239. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/trading/alpaca_client.py +0 -0
  240. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/trading/migrations.py +0 -0
  241. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/trading/models.py +0 -0
  242. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/trading/paper_trading.py +0 -0
  243. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/trading/risk_management.py +0 -0
  244. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/trading/trading_service.py +0 -0
  245. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/training/train.py +0 -0
  246. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/ml/training/train_model.py +0 -0
  247. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/mygroup/test_cmd.py +0 -0
  248. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/public/oi/oi.py +0 -0
  249. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/public/public.py +0 -0
  250. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/completion_cmd.py +0 -0
  251. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/logs_cmd.py +0 -0
  252. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/migrate_cmd.py +0 -0
  253. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/redis_cmd.py +0 -0
  254. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/self_cmd.py +0 -0
  255. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/store_cmd.py +0 -0
  256. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/test_cmd.py +0 -0
  257. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/visual_cmd.py +0 -0
  258. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/self/zsh_cmd.py +0 -0
  259. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/async_command_database.py +0 -0
  260. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/async_process_manager.py +0 -0
  261. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/client.py +0 -0
  262. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/daemon.py +0 -0
  263. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/daemon_api.py +0 -0
  264. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/enhanced_daemon.py +0 -0
  265. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/process_cli.py +0 -0
  266. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/process_manager.py +0 -0
  267. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/daemon/test_daemon.py +0 -0
  268. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/dashboard/dashboard_cmd.py +0 -0
  269. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/doc_convert.py +0 -0
  270. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/gcloud/config.toml +0 -0
  271. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/gcloud/gcloud.py +0 -0
  272. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/git_commit/ai_service.py +0 -0
  273. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/lsh_integration.py +0 -0
  274. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/client.py +0 -0
  275. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/download_and_run_efficient_models.py +0 -0
  276. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/lightweight_embedder.py +0 -0
  277. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/lightweight_model_server.py +0 -0
  278. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/lightweight_test.py +0 -0
  279. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/model_service.py +0 -0
  280. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/ollama_efficient_runner.py +0 -0
  281. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/openai_adapter.py +0 -0
  282. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/pdf_processor.py +0 -0
  283. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/test_efficient_runner.py +0 -0
  284. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/test_example.py +0 -0
  285. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/test_integration.py +0 -0
  286. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/model_service/test_new_features.py +0 -0
  287. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/notebook/converter.py +0 -0
  288. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/notebook/notebook_cmd.py +0 -0
  289. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/notebook/schema.py +0 -0
  290. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/notebook/validator.py +0 -0
  291. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/openai/openai.py +0 -0
  292. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/registry/registry.py +0 -0
  293. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/repo/repo.py +0 -0
  294. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/scheduler/cron_parser.py +0 -0
  295. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/scheduler/job.py +0 -0
  296. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/scheduler/monitor.py +0 -0
  297. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/scheduler/persistence.py +0 -0
  298. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/scheduler/scheduler.py +0 -0
  299. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/secrets/secrets_cmd.py +0 -0
  300. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/sync/test_cmd.py +0 -0
  301. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/wakatime/wakatime.py +0 -0
  302. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli/workflow/workflow.py +0 -0
  303. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli_framework.egg-info/dependency_links.txt +0 -0
  304. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli_framework.egg-info/entry_points.txt +0 -0
  305. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli_framework.egg-info/requires.txt +0 -0
  306. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/src/mcli_framework.egg-info/top_level.txt +0 -0
  307. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_all_commands.py +0 -0
  308. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_app_logs_cmd.py +0 -0
  309. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_app_redis_cmd.py +0 -0
  310. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_logs_cmd.py +0 -0
  311. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_main_app.py +0 -0
  312. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_model_cmd.py +0 -0
  313. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_self_cmd.py +0 -0
  314. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_self_cmd_commands.py +0 -0
  315. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_self_cmd_plugins.py +0 -0
  316. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_self_cmd_utilities.py +0 -0
  317. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_workflow_file.py +0 -0
  318. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_workflow_gcloud.py +0 -0
  319. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/cli/test_workflow_registry.py +0 -0
  320. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/conftest.py +0 -0
  321. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/demo_generate_graph.py +0 -0
  322. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/demo_hierarchical_transform.py +0 -0
  323. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/e2e/test_complete_workflows.py +0 -0
  324. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/e2e/test_model_workflow.py +0 -0
  325. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/e2e/test_new_user_workflow.py +0 -0
  326. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/e2e/test_update_workflow.py +0 -0
  327. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/fixtures/chat_fixtures.py +0 -0
  328. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/fixtures/cli_fixtures.py +0 -0
  329. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/fixtures/data_fixtures.py +0 -0
  330. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/fixtures/db_fixtures.py +0 -0
  331. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/fixtures/model_fixtures.py +0 -0
  332. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_agent.py +0 -0
  333. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_chat_client.py +0 -0
  334. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_chat_system.py +0 -0
  335. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_daemon_server.py +0 -0
  336. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_e2e_dashboard_lsh_supabase.py +0 -0
  337. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_flask_webapp.py +0 -0
  338. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_gcloud_services.py +0 -0
  339. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_lsh_client.py +0 -0
  340. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_lsh_service.py +0 -0
  341. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_ml_auth.py +0 -0
  342. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_ml_data_pipeline.py +0 -0
  343. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_ml_models.py +0 -0
  344. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_ml_pipeline.py +0 -0
  345. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_module_imports.py +0 -0
  346. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_oi_service.py +0 -0
  347. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_repo_operations.py +0 -0
  348. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_scheduler_integration.py +0 -0
  349. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_service_registry.py +0 -0
  350. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_supabase_live_connection.py +0 -0
  351. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_video_processing.py +0 -0
  352. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_wakatime_api.py +0 -0
  353. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_webapp_full.py +0 -0
  354. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_workflow.py +0 -0
  355. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/integration/test_workflow_commands.py +0 -0
  356. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/run_tests.py +0 -0
  357. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/test_harness.py +0 -0
  358. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/test_openai_adapter.py +0 -0
  359. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_api_utils.py +0 -0
  360. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_async_process_manager.py +0 -0
  361. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_auth_modules.py +0 -0
  362. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_bug_fixes.py +0 -0
  363. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_config.py +0 -0
  364. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_custom_commands.py +0 -0
  365. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_custom_commands_filtering.py +0 -0
  366. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_daemon_api.py +0 -0
  367. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_dashboard_components.py +0 -0
  368. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_dashboard_functions.py +0 -0
  369. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_dashboard_pages.py +0 -0
  370. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_dependencies.py +0 -0
  371. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_doc_convert_workflow.py +0 -0
  372. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_emulator_workflow.py +0 -0
  373. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_erd_generation.py +0 -0
  374. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_erd_generic.py +0 -0
  375. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_erd_imports.py +0 -0
  376. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_git_commit_workflow.py +0 -0
  377. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_lib_auth.py +0 -0
  378. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_lib_files.py +0 -0
  379. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_lib_utils.py +0 -0
  380. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_logger.py +0 -0
  381. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_ml_preprocessing.py +0 -0
  382. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_optional_deps.py +0 -0
  383. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_paths.py +0 -0
  384. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_pdf_compress.py +0 -0
  385. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_prediction_engine.py +0 -0
  386. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_regression.py +0 -0
  387. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_scheduler.py +0 -0
  388. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_scheduler_cron_parser.py +0 -0
  389. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_scheduler_job.py +0 -0
  390. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_scheduler_monitor.py +0 -0
  391. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_scheduler_persistence.py +0 -0
  392. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_self_update.py +0 -0
  393. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_store_cmd.py +0 -0
  394. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_supabase_connection.py +0 -0
  395. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_supabase_pagination.py +0 -0
  396. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_toml_utils.py +0 -0
  397. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_trading_imports.py +0 -0
  398. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_ui_rich.py +0 -0
  399. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/test_uv_compat.py +0 -0
  400. {mcli_framework-7.11.0 → mcli_framework-7.11.2}/tests/unit/workflow/test_notebook.py +0 -0
@@ -11,15 +11,16 @@ on:
11
11
  - test-pypi
12
12
  - production-pypi
13
13
  - both
14
- push:
15
- branches:
16
- - main
17
- - dev
18
- tags:
19
- - 'v*'
20
- paths-ignore:
21
- - '**.md'
22
- - '.github/workflows/publish.yml'
14
+ # Disabled automatic triggers - self-hosted runner offline
15
+ # push:
16
+ # branches:
17
+ # - main
18
+ # - dev
19
+ # tags:
20
+ # - 'v*'
21
+ # paths-ignore:
22
+ # - '**.md'
23
+ # - '.github/workflows/publish.yml'
23
24
 
24
25
  permissions:
25
26
  contents: write
@@ -68,6 +69,8 @@ jobs:
68
69
  run: |
69
70
  export PYENV_ROOT="$HOME/.pyenv"
70
71
  export PATH="$PYENV_ROOT/bin:$HOME/.local/bin:$HOME/.cargo/bin:$PATH"
72
+ export UV_CACHE_DIR="${GITHUB_WORKSPACE}/.uv-cache"
73
+ mkdir -p "${UV_CACHE_DIR}"
71
74
  eval "$(pyenv init --path)" 2>/dev/null || true
72
75
  eval "$(pyenv init -)" 2>/dev/null || true
73
76
  uv venv --python python${{ matrix.python-version }}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mcli-framework
3
- Version: 7.11.0
3
+ Version: 7.11.2
4
4
  Summary: Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/commands/, version with lockfile, run as daemon or cron job.
5
5
  Author-email: Luis Fernandez de la Vara <luis@lefv.io>
6
6
  Maintainer-email: Luis Fernandez de la Vara <luis@lefv.io>
@@ -216,6 +216,24 @@ pip install mcli-framework
216
216
  uv pip install mcli-framework
217
217
  ```
218
218
 
219
+ ### Initialize Workflows Directory
220
+
221
+ ```bash
222
+ # Initialize workflows in current git repository
223
+ mcli workflow init
224
+
225
+ # Or initialize global workflows
226
+ mcli workflow init --global
227
+
228
+ # Initialize with git repository for workflows
229
+ mcli workflow init --git
230
+ ```
231
+
232
+ This creates a `.mcli/workflows/` directory (local to your repo) or `~/.mcli/workflows/` (global) with:
233
+ - README.md with usage instructions
234
+ - commands.lock.json for version tracking
235
+ - .gitignore for backup files
236
+
219
237
  ### Create Your First Workflow
220
238
 
221
239
  #### Method 1: From a Python Script
@@ -56,6 +56,24 @@ pip install mcli-framework
56
56
  uv pip install mcli-framework
57
57
  ```
58
58
 
59
+ ### Initialize Workflows Directory
60
+
61
+ ```bash
62
+ # Initialize workflows in current git repository
63
+ mcli workflow init
64
+
65
+ # Or initialize global workflows
66
+ mcli workflow init --global
67
+
68
+ # Initialize with git repository for workflows
69
+ mcli workflow init --git
70
+ ```
71
+
72
+ This creates a `.mcli/workflows/` directory (local to your repo) or `~/.mcli/workflows/` (global) with:
73
+ - README.md with usage instructions
74
+ - commands.lock.json for version tracking
75
+ - .gitignore for backup files
76
+
59
77
  ### Create Your First Workflow
60
78
 
61
79
  #### Method 1: From a Python Script
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mcli-framework"
3
- version = "7.11.0"
3
+ version = "7.11.2"
4
4
  description = "Portable workflow framework - transform any script into a versioned, schedulable command. Store in ~/.mcli/commands/, version with lockfile, run as daemon or cron job."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.9"
@@ -0,0 +1,160 @@
1
+ # logger.info("I am in mcli.__init__.py")
2
+ import sys
3
+
4
+ try:
5
+ from mcli.app import main
6
+
7
+ # from mcli.public import *
8
+ # from mcli.private import *
9
+ # Import the complete Click superset decorators
10
+ from mcli.lib.api.mcli_decorators import BOOL # mcli.BOOL - Click BOOL type
11
+ from mcli.lib.api.mcli_decorators import FLOAT # mcli.FLOAT - Click FLOAT type
12
+ from mcli.lib.api.mcli_decorators import INT # mcli.INT - Click INT type
13
+ from mcli.lib.api.mcli_decorators import STRING # mcli.STRING - Click STRING type
14
+ from mcli.lib.api.mcli_decorators import UNPROCESSED # mcli.UNPROCESSED - Click UNPROCESSED
15
+ from mcli.lib.api.mcli_decorators import UUID # mcli.UUID - Click UUID type
16
+ from mcli.lib.api.mcli_decorators import Abort # mcli.Abort - Click Abort
17
+ from mcli.lib.api.mcli_decorators import BadParameter # mcli.BadParameter - Click BadParameter
18
+ from mcli.lib.api.mcli_decorators import Choice # mcli.Choice - Click Choice type
19
+ from mcli.lib.api.mcli_decorators import File # mcli.File - Click File type
20
+ from mcli.lib.api.mcli_decorators import FloatRange # mcli.FloatRange - Click FloatRange type
21
+ from mcli.lib.api.mcli_decorators import IntRange # mcli.IntRange - Click IntRange type
22
+ from mcli.lib.api.mcli_decorators import ParamType # mcli.ParamType - Click ParamType
23
+ from mcli.lib.api.mcli_decorators import Path # mcli.Path - Click Path type
24
+ from mcli.lib.api.mcli_decorators import UsageError # mcli.UsageError - Click UsageError
25
+ from mcli.lib.api.mcli_decorators import api # @mcli.api - Legacy API decorator
26
+ from mcli.lib.api.mcli_decorators import (
27
+ api_command, # @mcli.api_command - Convenience for API endpoints
28
+ )
29
+ from mcli.lib.api.mcli_decorators import argument # @mcli.argument - Click argument decorator
30
+ from mcli.lib.api.mcli_decorators import (
31
+ background, # @mcli.background - Legacy background decorator
32
+ )
33
+ from mcli.lib.api.mcli_decorators import (
34
+ background_command, # @mcli.background_command - Convenience for background
35
+ )
36
+ from mcli.lib.api.mcli_decorators import clear # mcli.clear - Click clear
37
+ from mcli.lib.api.mcli_decorators import (
38
+ cli_with_api, # @mcli.cli_with_api - Legacy combined decorator
39
+ )
40
+ from mcli.lib.api.mcli_decorators import (
41
+ command, # @mcli.command - Complete Click command with API/background
42
+ )
43
+ from mcli.lib.api.mcli_decorators import confirm # mcli.confirm - Click confirmation
44
+ from mcli.lib.api.mcli_decorators import echo # mcli.echo - Click echo function
45
+ from mcli.lib.api.mcli_decorators import edit # mcli.edit - Click editor
46
+ from mcli.lib.api.mcli_decorators import (
47
+ format_filename, # mcli.format_filename - Click filename
48
+ )
49
+ from mcli.lib.api.mcli_decorators import get_app # mcli.get_app - Click app
50
+ from mcli.lib.api.mcli_decorators import get_app_dir # mcli.get_app_dir - Click app directory
51
+ from mcli.lib.api.mcli_decorators import (
52
+ get_binary_stream, # mcli.get_binary_stream - Click binary stream
53
+ )
54
+ from mcli.lib.api.mcli_decorators import (
55
+ get_current_context, # mcli.get_current_context - Click context
56
+ )
57
+ from mcli.lib.api.mcli_decorators import (
58
+ get_network_credentials, # mcli.get_network_credentials - Click network
59
+ )
60
+ from mcli.lib.api.mcli_decorators import get_os_args # mcli.get_os_args - Click OS args
61
+ from mcli.lib.api.mcli_decorators import (
62
+ get_terminal_size, # mcli.get_terminal_size - Click terminal size
63
+ )
64
+ from mcli.lib.api.mcli_decorators import (
65
+ get_text_stream, # mcli.get_text_stream - Click text stream
66
+ )
67
+ from mcli.lib.api.mcli_decorators import getchar # mcli.getchar - Click character input
68
+ from mcli.lib.api.mcli_decorators import (
69
+ group, # @mcli.group - Complete Click group with API support
70
+ )
71
+ from mcli.lib.api.mcli_decorators import launch # mcli.launch - Click launch
72
+ from mcli.lib.api.mcli_decorators import open_file # mcli.open_file - Click file operations
73
+ from mcli.lib.api.mcli_decorators import option # @mcli.option - Click option decorator
74
+ from mcli.lib.api.mcli_decorators import pause # mcli.pause - Click pause
75
+ from mcli.lib.api.mcli_decorators import progressbar # mcli.progressbar - Click progress bar
76
+ from mcli.lib.api.mcli_decorators import prompt # mcli.prompt - Click prompt
77
+ from mcli.lib.api.mcli_decorators import secho # mcli.secho - Click styled echo
78
+ from mcli.lib.api.mcli_decorators import style # mcli.style - Click styling
79
+ from mcli.lib.api.mcli_decorators import unstyle # mcli.unstyle - Click unstyle
80
+ from mcli.lib.api.mcli_decorators import ( # Core decorators (complete Click superset); Click re-exports (complete subsume); Click types (complete subsume); Convenience decorators; Legacy decorators (for backward compatibility); Server management; Configuration; Convenience functions
81
+ disable_api_server,
82
+ enable_api_server,
83
+ get_api_config,
84
+ health_check,
85
+ is_background_available,
86
+ is_server_running,
87
+ start_server,
88
+ status_check,
89
+ stop_server,
90
+ )
91
+
92
+ # Make everything available at the top level (complete Click subsume)
93
+ __all__ = [
94
+ "main",
95
+ # Core decorators (complete Click superset)
96
+ "command",
97
+ "group",
98
+ # Click re-exports (complete subsume)
99
+ "option",
100
+ "argument",
101
+ "echo",
102
+ "get_current_context",
103
+ "get_app",
104
+ "launch",
105
+ "open_file",
106
+ "get_os_args",
107
+ "get_binary_stream",
108
+ "get_text_stream",
109
+ "format_filename",
110
+ "getchar",
111
+ "pause",
112
+ "clear",
113
+ "style",
114
+ "unstyle",
115
+ "secho",
116
+ "edit",
117
+ "confirm",
118
+ "prompt",
119
+ "progressbar",
120
+ "get_terminal_size",
121
+ "get_app_dir",
122
+ "get_network_credentials",
123
+ # Click types (complete subsume)
124
+ "Path",
125
+ "Choice",
126
+ "IntRange",
127
+ "FloatRange",
128
+ "UNPROCESSED",
129
+ "STRING",
130
+ "INT",
131
+ "FLOAT",
132
+ "BOOL",
133
+ "UUID",
134
+ "File",
135
+ "ParamType",
136
+ "BadParameter",
137
+ "UsageError",
138
+ "Abort",
139
+ # Convenience decorators
140
+ "api_command",
141
+ "background_command",
142
+ # Legacy decorators (for backward compatibility)
143
+ "api",
144
+ "background",
145
+ "cli_with_api",
146
+ # Server management
147
+ "start_server",
148
+ "stop_server",
149
+ "is_server_running",
150
+ "is_background_available",
151
+ "get_api_config",
152
+ "enable_api_server",
153
+ "disable_api_server",
154
+ "health_check",
155
+ "status_check",
156
+ ]
157
+
158
+ except ImportError:
159
+ # from .app import main
160
+ sys.exit(1)
@@ -0,0 +1,14 @@
1
+ # logger.info("I am in mcli.__init__.py")
2
+
3
+ try:
4
+ from mcli.app.main import main as main_func
5
+
6
+ # from mcli.public import *
7
+ # from mcli.private import *
8
+ except ImportError:
9
+ from .app.main import main as main_func
10
+
11
+ __all__ = ["main_func"]
12
+
13
+ if __name__ == "__main__":
14
+ main_func()
@@ -0,0 +1,23 @@
1
+ # src/mcli/app/__init__.py
2
+ import importlib
3
+ from pathlib import Path
4
+
5
+ from mcli.lib.logger.logger import get_logger
6
+
7
+ logger = get_logger(__name__)
8
+
9
+ logger.info("Initializing mcli.app package")
10
+
11
+ # Import main function
12
+ try:
13
+ from .main import main
14
+
15
+ logger.info("Successfully imported main from .main")
16
+ except ImportError as e:
17
+ logger.error(f"Failed to import main: {e}")
18
+ import traceback
19
+
20
+ logger.error(f"Traceback: {traceback.format_exc()}")
21
+ raise
22
+
23
+ __all__ = ["main"]
@@ -182,6 +182,267 @@ def workflow():
182
182
  commands = workflow
183
183
 
184
184
 
185
+ @workflow.command("init")
186
+ @click.option(
187
+ "--global", "-g", "is_global", is_flag=True, help="Initialize global workflows directory instead of local"
188
+ )
189
+ @click.option(
190
+ "--git", is_flag=True, help="Initialize git repository in workflows directory"
191
+ )
192
+ @click.option(
193
+ "--force", "-f", is_flag=True, help="Force initialization even if directory exists"
194
+ )
195
+ def init_workflows(is_global, git, force):
196
+ """
197
+ Initialize workflows directory structure.
198
+
199
+ Creates the necessary directories and configuration files for managing
200
+ custom workflows. By default, creates a local .mcli/workflows/ directory
201
+ if in a git repository, otherwise uses ~/.mcli/workflows/.
202
+
203
+ Examples:
204
+ mcli workflow init # Initialize local workflows (if in git repo)
205
+ mcli workflow init --global # Initialize global workflows
206
+ mcli workflow init --git # Also initialize git repository
207
+ """
208
+ from mcli.lib.paths import (
209
+ get_mcli_home,
210
+ get_local_mcli_dir,
211
+ get_git_root,
212
+ is_git_repository,
213
+ )
214
+
215
+ # Determine if we're in a git repository
216
+ in_git_repo = is_git_repository() and not is_global
217
+ git_root = get_git_root() if in_git_repo else None
218
+
219
+ # Explicitly create workflows directory (not commands)
220
+ # This bypasses the migration logic that would check for old commands/ directory
221
+ if not is_global and in_git_repo:
222
+ local_mcli = get_local_mcli_dir()
223
+ workflows_dir = local_mcli / "workflows"
224
+ else:
225
+ workflows_dir = get_mcli_home() / "workflows"
226
+
227
+ lockfile_path = workflows_dir / "commands.lock.json"
228
+
229
+ # Check if already initialized
230
+ if workflows_dir.exists() and not force:
231
+ if lockfile_path.exists():
232
+ console.print(f"[yellow]Workflows directory already initialized at:[/yellow] {workflows_dir}")
233
+ console.print(f"[dim]Use --force to reinitialize[/dim]")
234
+
235
+ should_continue = Prompt.ask(
236
+ "Continue anyway?", choices=["y", "n"], default="n"
237
+ )
238
+ if should_continue.lower() != "y":
239
+ return 0
240
+
241
+ # Create workflows directory
242
+ workflows_dir.mkdir(parents=True, exist_ok=True)
243
+ console.print(f"[green]✓[/green] Created workflows directory: {workflows_dir}")
244
+
245
+ # Create README.md
246
+ readme_path = workflows_dir / "README.md"
247
+ if not readme_path.exists() or force:
248
+ scope = "local" if in_git_repo else "global"
249
+ scope_desc = f"for repository: {git_root.name}" if in_git_repo else "globally"
250
+
251
+ readme_content = f"""# MCLI Custom Workflows
252
+
253
+ This directory contains custom workflow commands {scope_desc}.
254
+
255
+ ## Quick Start
256
+
257
+ ### Create a New Workflow
258
+
259
+ ```bash
260
+ # Python workflow
261
+ mcli workflow add my-workflow
262
+
263
+ # Shell workflow
264
+ mcli workflow add my-script --language shell
265
+ ```
266
+
267
+ ### List Workflows
268
+
269
+ ```bash
270
+ mcli workflow list --custom-only
271
+ ```
272
+
273
+ ### Execute a Workflow
274
+
275
+ ```bash
276
+ mcli workflows my-workflow
277
+ ```
278
+
279
+ ### Edit a Workflow
280
+
281
+ ```bash
282
+ mcli workflow edit my-workflow
283
+ ```
284
+
285
+ ### Export/Import Workflows
286
+
287
+ ```bash
288
+ # Export all workflows
289
+ mcli workflow export workflows-backup.json
290
+
291
+ # Import workflows
292
+ mcli workflow import workflows-backup.json
293
+ ```
294
+
295
+ ## Directory Structure
296
+
297
+ ```
298
+ {workflows_dir.name}/
299
+ ├── README.md # This file
300
+ ├── commands.lock.json # Lockfile for workflow state
301
+ └── *.json # Individual workflow definitions
302
+ ```
303
+
304
+ ## Workflow Format
305
+
306
+ Workflows are stored as JSON files with the following structure:
307
+
308
+ ```json
309
+ {{
310
+ "name": "workflow-name",
311
+ "description": "Workflow description",
312
+ "code": "Python or shell code",
313
+ "language": "python",
314
+ "group": "workflow",
315
+ "version": "1.0",
316
+ "created_at": "2025-10-30T...",
317
+ "updated_at": "2025-10-30T..."
318
+ }}
319
+ ```
320
+
321
+ ## Scope
322
+
323
+ - **Scope**: {'Local (repository-specific)' if in_git_repo else 'Global (user-wide)'}
324
+ - **Location**: `{workflows_dir}`
325
+ {f"- **Git Repository**: `{git_root}`" if git_root else ""}
326
+
327
+ ## Documentation
328
+
329
+ - [MCLI Documentation](https://github.com/gwicho38/mcli)
330
+ - [Workflow Guide](https://github.com/gwicho38/mcli/blob/main/docs/features/LOCAL_VS_GLOBAL_COMMANDS.md)
331
+
332
+ ---
333
+
334
+ *Initialized: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}*
335
+ """
336
+
337
+ readme_path.write_text(readme_content)
338
+ console.print(f"[green]✓[/green] Created README: {readme_path.name}")
339
+
340
+ # Initialize lockfile
341
+ if not lockfile_path.exists() or force:
342
+ lockfile_data = {
343
+ "version": "1.0",
344
+ "initialized_at": datetime.now().isoformat(),
345
+ "scope": "local" if in_git_repo else "global",
346
+ "commands": {}
347
+ }
348
+
349
+ with open(lockfile_path, "w") as f:
350
+ json.dump(lockfile_data, f, indent=2)
351
+
352
+ console.print(f"[green]✓[/green] Initialized lockfile: {lockfile_path.name}")
353
+
354
+ # Create .gitignore if in workflows directory
355
+ gitignore_path = workflows_dir / ".gitignore"
356
+ if not gitignore_path.exists() or force:
357
+ gitignore_content = """# Backup files
358
+ *.backup
359
+ *.bak
360
+
361
+ # Temporary files
362
+ *.tmp
363
+ *.temp
364
+
365
+ # OS files
366
+ .DS_Store
367
+ Thumbs.db
368
+
369
+ # Editor files
370
+ *.swp
371
+ *.swo
372
+ *~
373
+ .vscode/
374
+ .idea/
375
+ """
376
+ gitignore_path.write_text(gitignore_content)
377
+ console.print(f"[green]✓[/green] Created .gitignore")
378
+
379
+ # Initialize git if requested
380
+ if git and not (workflows_dir / ".git").exists():
381
+ try:
382
+ subprocess.run(
383
+ ["git", "init"],
384
+ cwd=workflows_dir,
385
+ check=True,
386
+ capture_output=True
387
+ )
388
+ console.print(f"[green]✓[/green] Initialized git repository in workflows directory")
389
+
390
+ # Create initial commit
391
+ subprocess.run(
392
+ ["git", "add", "."],
393
+ cwd=workflows_dir,
394
+ check=True,
395
+ capture_output=True
396
+ )
397
+ subprocess.run(
398
+ ["git", "commit", "-m", "Initial commit: Initialize workflows directory"],
399
+ cwd=workflows_dir,
400
+ check=True,
401
+ capture_output=True
402
+ )
403
+ console.print(f"[green]✓[/green] Created initial commit")
404
+
405
+ except subprocess.CalledProcessError as e:
406
+ console.print(f"[yellow]⚠[/yellow] Git initialization failed: {e}")
407
+ except FileNotFoundError:
408
+ console.print(f"[yellow]⚠[/yellow] Git not found. Skipping git initialization.")
409
+
410
+ # Summary
411
+ console.print()
412
+ console.print("[bold green]Workflows directory initialized successfully![/bold green]")
413
+ console.print()
414
+
415
+ # Display summary table
416
+ table = Table(title="Initialization Summary", show_header=False)
417
+ table.add_column("Property", style="cyan")
418
+ table.add_column("Value", style="green")
419
+
420
+ table.add_row("Scope", "Local (repository-specific)" if in_git_repo else "Global (user-wide)")
421
+ table.add_row("Location", str(workflows_dir))
422
+ if git_root:
423
+ table.add_row("Git Repository", str(git_root))
424
+ table.add_row("Lockfile", str(lockfile_path))
425
+ table.add_row("Git Initialized", "Yes" if git and (workflows_dir / ".git").exists() else "No")
426
+
427
+ console.print(table)
428
+ console.print()
429
+
430
+ # Next steps
431
+ console.print("[bold]Next Steps:[/bold]")
432
+ console.print(" 1. Create a workflow: [cyan]mcli workflow add my-workflow[/cyan]")
433
+ console.print(" 2. List workflows: [cyan]mcli workflow list --custom-only[/cyan]")
434
+ console.print(" 3. Execute workflow: [cyan]mcli workflows my-workflow[/cyan]")
435
+ console.print(" 4. View README: [cyan]cat {}/README.md[/cyan]".format(workflows_dir))
436
+ console.print()
437
+
438
+ if in_git_repo:
439
+ console.print(f"[dim]Tip: Workflows are local to this repository. Use --global for user-wide workflows.[/dim]")
440
+ else:
441
+ console.print(f"[dim]Tip: Use workflows in any git repository, or create local ones with 'mcli workflow init' inside repos.[/dim]")
442
+
443
+ return 0
444
+
445
+
185
446
  @workflow.command("list")
186
447
  @click.option("--include-groups", is_flag=True, help="Include command groups in listing")
187
448
  @click.option("--daemon-only", is_flag=True, help="Show only daemon database commands")
@@ -0,0 +1,5 @@
1
+ """
2
+ Video processing commands for mcli.
3
+ """
4
+
5
+ from .video import *
@@ -0,0 +1,34 @@
1
+ """
2
+ MCLI Chat System
3
+ Real-time system control and interaction capabilities for MCLI chat
4
+ """
5
+
6
+ from .system_controller import (
7
+ SystemController,
8
+ control_app,
9
+ execute_system_command,
10
+ open_file_or_url,
11
+ open_textedit_and_write,
12
+ system_controller,
13
+ take_screenshot,
14
+ )
15
+ from .system_integration import (
16
+ ChatSystemIntegration,
17
+ chat_system_integration,
18
+ get_system_capabilities,
19
+ handle_system_request,
20
+ )
21
+
22
+ __all__ = [
23
+ "SystemController",
24
+ "system_controller",
25
+ "ChatSystemIntegration",
26
+ "chat_system_integration",
27
+ "handle_system_request",
28
+ "get_system_capabilities",
29
+ "open_textedit_and_write",
30
+ "control_app",
31
+ "execute_system_command",
32
+ "take_screenshot",
33
+ "open_file_or_url",
34
+ ]
File without changes
File without changes
@@ -0,0 +1 @@
1
+ from .auth import *
@@ -0,0 +1 @@
1
+ from .config import *
@@ -0,0 +1,25 @@
1
+ """
2
+ Entity Relationship Diagram (ERD) package.
3
+
4
+ This package provides utilities for generating Entity Relationship Diagrams from MCLI type metadata.
5
+ """
6
+
7
+ # Import and export all public functions from erd.py
8
+ from .erd import (
9
+ analyze_graph_for_hierarchical_exports,
10
+ create_merged_erd,
11
+ do_erd,
12
+ find_top_nodes_in_graph,
13
+ generate_erd_for_top_nodes,
14
+ generate_merged_erd_for_types,
15
+ )
16
+
17
+ # Define __all__ to control exports
18
+ __all__ = [
19
+ "do_erd",
20
+ "create_merged_erd",
21
+ "generate_merged_erd_for_types",
22
+ "find_top_nodes_in_graph",
23
+ "generate_erd_for_top_nodes",
24
+ "analyze_graph_for_hierarchical_exports",
25
+ ]
File without changes
@@ -0,0 +1 @@
1
+ from .fs import *
@@ -0,0 +1,3 @@
1
+ from .logger import get_logger
2
+
3
+ __all__ = ["get_logger"]
@@ -158,9 +158,13 @@ def get_local_commands_dir() -> Optional[Path]:
158
158
  if workflows_dir.exists():
159
159
  return workflows_dir
160
160
 
161
- # Fall back to old commands directory for migration support
161
+ # Check if old commands directory exists (for migration support)
162
162
  commands_dir = local_mcli / "commands"
163
- return commands_dir
163
+ if commands_dir.exists():
164
+ return commands_dir
165
+
166
+ # If neither exists, return workflows path (for new installations)
167
+ return workflows_dir
164
168
  return None
165
169
 
166
170