10xscale-agentflow-cli 0.2.9__tar.gz → 0.3.1__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.
Files changed (146) hide show
  1. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/PKG-INFO +27 -2
  2. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/SOURCES.txt +42 -0
  3. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/requires.txt +2 -1
  4. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/MANIFEST.in +1 -0
  5. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/PKG-INFO +27 -2
  6. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/README.md +24 -0
  7. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow.json +1 -2
  8. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/commands/api.py +211 -0
  9. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/commands/skills.py +306 -0
  10. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/constants.py +1 -0
  11. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/main.py +125 -1
  12. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/SKILL.md +100 -0
  13. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/agents-and-tools.md +65 -0
  14. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/api-client.md +67 -0
  15. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/api-configuration.md +64 -0
  16. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/api-settings-and-middleware.md +82 -0
  17. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/architecture.md +55 -0
  18. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/auth-and-authorization.md +88 -0
  19. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/callbacks-and-command.md +102 -0
  20. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/checkpointing-and-threads.md +63 -0
  21. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/cli-commands.md +73 -0
  22. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/client-auth-and-errors.md +95 -0
  23. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/client-messages-invoke-stream.md +117 -0
  24. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/client-threads-memory-files.md +82 -0
  25. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/context-id-background.md +82 -0
  26. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/dependency-injection.md +58 -0
  27. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/id-and-thread-name-generators.md +71 -0
  28. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/media-and-files.md +66 -0
  29. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/memory-and-store.md +70 -0
  30. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/prebuilt-agents-and-tools.md +60 -0
  31. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/production-runtime.md +56 -0
  32. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/providers-and-adapters.md +81 -0
  33. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/publishers-and-runtime-protocols.md +78 -0
  34. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/remote-tools.md +86 -0
  35. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/rest-api-and-errors.md +93 -0
  36. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/security-and-validators.md +69 -0
  37. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/state-and-messages.md +68 -0
  38. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/state-graph.md +67 -0
  39. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/streaming.md +53 -0
  40. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/agent-skills/references/testing-and-evaluation.md +66 -0
  41. 10xscale_agentflow_cli-0.3.1/agentflow_cli/cli/templates/skills/copilot/agentflow.instructions.md +51 -0
  42. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/auth/jwt_auth.py +7 -8
  43. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/core/config/media_settings.py +50 -0
  44. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/settings.py +8 -3
  45. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/exceptions/handle_errors.py +1 -1
  46. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/loader.py +15 -3
  47. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/main.py +29 -1
  48. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/checkpointer/router.py +4 -13
  49. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/checkpointer/schemas/checkpointer_schemas.py +1 -1
  50. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/checkpointer/services/checkpointer_service.py +12 -3
  51. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/graph/router.py +1 -1
  52. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/graph/schemas/graph_schemas.py +1 -1
  53. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/graph/services/graph_service.py +49 -11
  54. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/routers/graph/services/multimodal_preprocessor.py +89 -0
  55. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/routers/media/__init__.py +395 -0
  56. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/routers/media/router.py +154 -0
  57. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/routers/media/schemas.py +40 -0
  58. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/setup_router.py +2 -0
  59. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/store/schemas/store_schemas.py +2 -2
  60. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/store/services/store_service.py +12 -3
  61. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/utils/media/__init__.py +15 -0
  62. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/utils/media/extractor.py +73 -0
  63. 10xscale_agentflow_cli-0.3.1/agentflow_cli/src/app/utils/media/pipeline.py +83 -0
  64. 10xscale_agentflow_cli-0.3.1/graph/react.py +95 -0
  65. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/pyproject.toml +10 -10
  66. 10xscale_agentflow_cli-0.3.1/requirements.txt +31 -0
  67. 10xscale_agentflow_cli-0.3.1/tests/test_multimodal_sprint2_extraction.py +213 -0
  68. 10xscale_agentflow_cli-0.3.1/tests/test_sprint4_media_api.py +340 -0
  69. 10xscale_agentflow_cli-0.2.9/agentflow_cli/cli/commands/api.py +0 -101
  70. 10xscale_agentflow_cli-0.2.9/graph/react.py +0 -214
  71. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/dependency_links.txt +0 -0
  72. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/entry_points.txt +0 -0
  73. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/not-zip-safe +0 -0
  74. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/10xscale_agentflow_cli.egg-info/top_level.txt +0 -0
  75. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/ActionPlan.md +0 -0
  76. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/__init__.py +0 -0
  77. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/__init__.py +0 -0
  78. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/commands/__init__.py +0 -0
  79. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/commands/build.py +0 -0
  80. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/commands/init.py +0 -0
  81. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/commands/version.py +0 -0
  82. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/core/__init__.py +0 -0
  83. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/core/config.py +0 -0
  84. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/core/output.py +0 -0
  85. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/core/validation.py +0 -0
  86. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/exceptions.py +0 -0
  87. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/logger.py +0 -0
  88. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/templates/__init__.py +0 -0
  89. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/cli/templates/defaults.py +0 -0
  90. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/__init__.py +0 -0
  91. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/__init__.py +0 -0
  92. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/__init__.py +0 -0
  93. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/auth/__init__.py +0 -0
  94. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/auth/auth_backend.py +0 -0
  95. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/auth/authorization.py +0 -0
  96. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/auth/base_auth.py +0 -0
  97. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/auth/permissions.py +0 -0
  98. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/__init__.py +0 -0
  99. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/graph_config.py +0 -0
  100. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/sentry_config.py +0 -0
  101. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/setup_logs.py +0 -0
  102. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/setup_middleware.py +0 -0
  103. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/config/worker_middleware.py +0 -0
  104. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/exceptions/__init__.py +0 -0
  105. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/exceptions/general_exception.py +0 -0
  106. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/exceptions/resources_exceptions.py +0 -0
  107. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/exceptions/user_exception.py +0 -0
  108. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/middleware/__init__.py +0 -0
  109. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/middleware/request_limits.py +0 -0
  110. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/middleware/security_headers.py +0 -0
  111. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/utils/__init__.py +0 -0
  112. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/core/utils/log_sanitizer.py +0 -0
  113. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/__init__.py +0 -0
  114. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/a2a.py +0 -0
  115. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/a2ui.py +0 -0
  116. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/checkpointer/__init__.py +0 -0
  117. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/checkpointer/schemas/__init__.py +0 -0
  118. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/checkpointer/services/__init__.py +0 -0
  119. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/graph/__init__.py +0 -0
  120. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/graph/schemas/__init__.py +0 -0
  121. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/graph/services/__init__.py +0 -0
  122. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/ping/__init__.py +0 -0
  123. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/ping/router.py +0 -0
  124. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/store/__init__.py +0 -0
  125. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/store/router.py +0 -0
  126. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/store/schemas/__init__.py +0 -0
  127. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/routers/store/services/__init__.py +0 -0
  128. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/tasks/__init__.py +0 -0
  129. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/tasks/user_tasks.py +0 -0
  130. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/__init__.py +0 -0
  131. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/callable_helper.py +0 -0
  132. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/parse_output.py +0 -0
  133. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/response_helper.py +0 -0
  134. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/schemas/__init__.py +0 -0
  135. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/schemas/output_schemas.py +0 -0
  136. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/schemas/user_schemas.py +0 -0
  137. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/snowflake_id_generator.py +0 -0
  138. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/swagger_helper.py +0 -0
  139. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/utils/thread_name_generator.py +0 -0
  140. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/agentflow_cli/src/app/worker.py +0 -0
  141. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/graph/__init__.py +0 -0
  142. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/graph/thread_name_generator.py +0 -0
  143. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/plan.md +0 -0
  144. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/scripts/generate_docs.py +0 -0
  145. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/setup.cfg +0 -0
  146. {10xscale_agentflow_cli-0.2.9 → 10xscale_agentflow_cli-0.3.1}/tests/test_utils_parse_and_callable.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: 10xscale-agentflow-cli
3
- Version: 0.2.9
3
+ Version: 0.3.1
4
4
  Summary: CLI and API for 10xscale AgentFlow
5
5
  Author-email: 10xscale <contact@10xscale.ai>
6
6
  Maintainer-email: Shudipto Trafder <shudiptotrafder@gmail.com>
@@ -21,7 +21,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
21
21
  Classifier: Topic :: Internet :: WWW/HTTP :: HTTP Servers
22
22
  Requires-Python: >=3.12
23
23
  Description-Content-Type: text/markdown
24
- Requires-Dist: 10xscale-agentflow>=0.5.0
24
+ Requires-Dist: 10xscale-agentflow>=0.7.0
25
25
  Requires-Dist: fastapi
26
26
  Requires-Dist: gunicorn
27
27
  Requires-Dist: orjson
@@ -32,6 +32,7 @@ Requires-Dist: uvicorn
32
32
  Requires-Dist: typer
33
33
  Requires-Dist: python-dotenv
34
34
  Requires-Dist: PyJWT
35
+ Requires-Dist: textxtract[docx,html,md,pdf,xml]>=0.2.0
35
36
  Provides-Extra: sentry
36
37
  Requires-Dist: sentry-sdk>=2.10.0; extra == "sentry"
37
38
  Provides-Extra: firebase
@@ -81,6 +82,12 @@ agentflow init --prod
81
82
  agentflow api
82
83
  ```
83
84
 
85
+ ### Start API With Play
86
+
87
+ ```bash
88
+ agentflow play
89
+ ```
90
+
84
91
  ### Generate Docker Files
85
92
 
86
93
  ```bash
@@ -142,6 +149,24 @@ agentflow api --no-reload
142
149
  agentflow api --verbose
143
150
  ```
144
151
 
152
+ ### `agentflow play`
153
+
154
+ Start the development API server and open the hosted playground with your local backend URL preconfigured.
155
+
156
+ ```bash
157
+ # Start with defaults and open the playground
158
+ agentflow play
159
+
160
+ # Custom host and port
161
+ agentflow play --host 127.0.0.1 --port 9000
162
+
163
+ # Custom config file
164
+ agentflow play --config production.json
165
+
166
+ # Disable auto-reload
167
+ agentflow play --no-reload
168
+ ```
169
+
145
170
  ### `agentflow build`
146
171
 
147
172
  Generate production Docker files.
@@ -4,6 +4,7 @@ README.md
4
4
  agentflow.json
5
5
  plan.md
6
6
  pyproject.toml
7
+ requirements.txt
7
8
  10xscale_agentflow_cli.egg-info/PKG-INFO
8
9
  10xscale_agentflow_cli.egg-info/SOURCES.txt
9
10
  10xscale_agentflow_cli.egg-info/dependency_links.txt
@@ -21,6 +22,7 @@ agentflow_cli/cli/commands/__init__.py
21
22
  agentflow_cli/cli/commands/api.py
22
23
  agentflow_cli/cli/commands/build.py
23
24
  agentflow_cli/cli/commands/init.py
25
+ agentflow_cli/cli/commands/skills.py
24
26
  agentflow_cli/cli/commands/version.py
25
27
  agentflow_cli/cli/core/__init__.py
26
28
  agentflow_cli/cli/core/config.py
@@ -28,6 +30,36 @@ agentflow_cli/cli/core/output.py
28
30
  agentflow_cli/cli/core/validation.py
29
31
  agentflow_cli/cli/templates/__init__.py
30
32
  agentflow_cli/cli/templates/defaults.py
33
+ agentflow_cli/cli/templates/skills/agent-skills/SKILL.md
34
+ agentflow_cli/cli/templates/skills/agent-skills/references/agents-and-tools.md
35
+ agentflow_cli/cli/templates/skills/agent-skills/references/api-client.md
36
+ agentflow_cli/cli/templates/skills/agent-skills/references/api-configuration.md
37
+ agentflow_cli/cli/templates/skills/agent-skills/references/api-settings-and-middleware.md
38
+ agentflow_cli/cli/templates/skills/agent-skills/references/architecture.md
39
+ agentflow_cli/cli/templates/skills/agent-skills/references/auth-and-authorization.md
40
+ agentflow_cli/cli/templates/skills/agent-skills/references/callbacks-and-command.md
41
+ agentflow_cli/cli/templates/skills/agent-skills/references/checkpointing-and-threads.md
42
+ agentflow_cli/cli/templates/skills/agent-skills/references/cli-commands.md
43
+ agentflow_cli/cli/templates/skills/agent-skills/references/client-auth-and-errors.md
44
+ agentflow_cli/cli/templates/skills/agent-skills/references/client-messages-invoke-stream.md
45
+ agentflow_cli/cli/templates/skills/agent-skills/references/client-threads-memory-files.md
46
+ agentflow_cli/cli/templates/skills/agent-skills/references/context-id-background.md
47
+ agentflow_cli/cli/templates/skills/agent-skills/references/dependency-injection.md
48
+ agentflow_cli/cli/templates/skills/agent-skills/references/id-and-thread-name-generators.md
49
+ agentflow_cli/cli/templates/skills/agent-skills/references/media-and-files.md
50
+ agentflow_cli/cli/templates/skills/agent-skills/references/memory-and-store.md
51
+ agentflow_cli/cli/templates/skills/agent-skills/references/prebuilt-agents-and-tools.md
52
+ agentflow_cli/cli/templates/skills/agent-skills/references/production-runtime.md
53
+ agentflow_cli/cli/templates/skills/agent-skills/references/providers-and-adapters.md
54
+ agentflow_cli/cli/templates/skills/agent-skills/references/publishers-and-runtime-protocols.md
55
+ agentflow_cli/cli/templates/skills/agent-skills/references/remote-tools.md
56
+ agentflow_cli/cli/templates/skills/agent-skills/references/rest-api-and-errors.md
57
+ agentflow_cli/cli/templates/skills/agent-skills/references/security-and-validators.md
58
+ agentflow_cli/cli/templates/skills/agent-skills/references/state-and-messages.md
59
+ agentflow_cli/cli/templates/skills/agent-skills/references/state-graph.md
60
+ agentflow_cli/cli/templates/skills/agent-skills/references/streaming.md
61
+ agentflow_cli/cli/templates/skills/agent-skills/references/testing-and-evaluation.md
62
+ agentflow_cli/cli/templates/skills/copilot/agentflow.instructions.md
31
63
  agentflow_cli/src/__init__.py
32
64
  agentflow_cli/src/app/__init__.py
33
65
  agentflow_cli/src/app/loader.py
@@ -42,6 +74,7 @@ agentflow_cli/src/app/core/auth/jwt_auth.py
42
74
  agentflow_cli/src/app/core/auth/permissions.py
43
75
  agentflow_cli/src/app/core/config/__init__.py
44
76
  agentflow_cli/src/app/core/config/graph_config.py
77
+ agentflow_cli/src/app/core/config/media_settings.py
45
78
  agentflow_cli/src/app/core/config/sentry_config.py
46
79
  agentflow_cli/src/app/core/config/settings.py
47
80
  agentflow_cli/src/app/core/config/setup_logs.py
@@ -73,6 +106,10 @@ agentflow_cli/src/app/routers/graph/schemas/__init__.py
73
106
  agentflow_cli/src/app/routers/graph/schemas/graph_schemas.py
74
107
  agentflow_cli/src/app/routers/graph/services/__init__.py
75
108
  agentflow_cli/src/app/routers/graph/services/graph_service.py
109
+ agentflow_cli/src/app/routers/graph/services/multimodal_preprocessor.py
110
+ agentflow_cli/src/app/routers/media/__init__.py
111
+ agentflow_cli/src/app/routers/media/router.py
112
+ agentflow_cli/src/app/routers/media/schemas.py
76
113
  agentflow_cli/src/app/routers/ping/__init__.py
77
114
  agentflow_cli/src/app/routers/ping/router.py
78
115
  agentflow_cli/src/app/routers/store/__init__.py
@@ -90,6 +127,9 @@ agentflow_cli/src/app/utils/response_helper.py
90
127
  agentflow_cli/src/app/utils/snowflake_id_generator.py
91
128
  agentflow_cli/src/app/utils/swagger_helper.py
92
129
  agentflow_cli/src/app/utils/thread_name_generator.py
130
+ agentflow_cli/src/app/utils/media/__init__.py
131
+ agentflow_cli/src/app/utils/media/extractor.py
132
+ agentflow_cli/src/app/utils/media/pipeline.py
93
133
  agentflow_cli/src/app/utils/schemas/__init__.py
94
134
  agentflow_cli/src/app/utils/schemas/output_schemas.py
95
135
  agentflow_cli/src/app/utils/schemas/user_schemas.py
@@ -97,4 +137,6 @@ graph/__init__.py
97
137
  graph/react.py
98
138
  graph/thread_name_generator.py
99
139
  scripts/generate_docs.py
140
+ tests/test_multimodal_sprint2_extraction.py
141
+ tests/test_sprint4_media_api.py
100
142
  tests/test_utils_parse_and_callable.py
@@ -1,4 +1,4 @@
1
- 10xscale-agentflow>=0.5.0
1
+ 10xscale-agentflow>=0.7.0
2
2
  fastapi
3
3
  gunicorn
4
4
  orjson
@@ -9,6 +9,7 @@ uvicorn
9
9
  typer
10
10
  python-dotenv
11
11
  PyJWT
12
+ textxtract[docx,html,md,pdf,xml]>=0.2.0
12
13
 
13
14
  [firebase]
14
15
  firebase-admin>=6.5.0
@@ -6,6 +6,7 @@ include example_weather_agent.py
6
6
  recursive-include agentflow_cli *.json
7
7
  recursive-include agentflow_cli *.yaml
8
8
  recursive-include agentflow_cli *.yml
9
+ recursive-include agentflow_cli *.md
9
10
  recursive-include agentflow_cli *.py
10
11
  recursive-include src *.json
11
12
  recursive-include src *.yaml
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: 10xscale-agentflow-cli
3
- Version: 0.2.9
3
+ Version: 0.3.1
4
4
  Summary: CLI and API for 10xscale AgentFlow
5
5
  Author-email: 10xscale <contact@10xscale.ai>
6
6
  Maintainer-email: Shudipto Trafder <shudiptotrafder@gmail.com>
@@ -21,7 +21,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
21
21
  Classifier: Topic :: Internet :: WWW/HTTP :: HTTP Servers
22
22
  Requires-Python: >=3.12
23
23
  Description-Content-Type: text/markdown
24
- Requires-Dist: 10xscale-agentflow>=0.5.0
24
+ Requires-Dist: 10xscale-agentflow>=0.7.0
25
25
  Requires-Dist: fastapi
26
26
  Requires-Dist: gunicorn
27
27
  Requires-Dist: orjson
@@ -32,6 +32,7 @@ Requires-Dist: uvicorn
32
32
  Requires-Dist: typer
33
33
  Requires-Dist: python-dotenv
34
34
  Requires-Dist: PyJWT
35
+ Requires-Dist: textxtract[docx,html,md,pdf,xml]>=0.2.0
35
36
  Provides-Extra: sentry
36
37
  Requires-Dist: sentry-sdk>=2.10.0; extra == "sentry"
37
38
  Provides-Extra: firebase
@@ -81,6 +82,12 @@ agentflow init --prod
81
82
  agentflow api
82
83
  ```
83
84
 
85
+ ### Start API With Play
86
+
87
+ ```bash
88
+ agentflow play
89
+ ```
90
+
84
91
  ### Generate Docker Files
85
92
 
86
93
  ```bash
@@ -142,6 +149,24 @@ agentflow api --no-reload
142
149
  agentflow api --verbose
143
150
  ```
144
151
 
152
+ ### `agentflow play`
153
+
154
+ Start the development API server and open the hosted playground with your local backend URL preconfigured.
155
+
156
+ ```bash
157
+ # Start with defaults and open the playground
158
+ agentflow play
159
+
160
+ # Custom host and port
161
+ agentflow play --host 127.0.0.1 --port 9000
162
+
163
+ # Custom config file
164
+ agentflow play --config production.json
165
+
166
+ # Disable auto-reload
167
+ agentflow play --no-reload
168
+ ```
169
+
145
170
  ### `agentflow build`
146
171
 
147
172
  Generate production Docker files.
@@ -35,6 +35,12 @@ agentflow init --prod
35
35
  agentflow api
36
36
  ```
37
37
 
38
+ ### Start API With Play
39
+
40
+ ```bash
41
+ agentflow play
42
+ ```
43
+
38
44
  ### Generate Docker Files
39
45
 
40
46
  ```bash
@@ -96,6 +102,24 @@ agentflow api --no-reload
96
102
  agentflow api --verbose
97
103
  ```
98
104
 
105
+ ### `agentflow play`
106
+
107
+ Start the development API server and open the hosted playground with your local backend URL preconfigured.
108
+
109
+ ```bash
110
+ # Start with defaults and open the playground
111
+ agentflow play
112
+
113
+ # Custom host and port
114
+ agentflow play --host 127.0.0.1 --port 9000
115
+
116
+ # Custom config file
117
+ agentflow play --config production.json
118
+
119
+ # Disable auto-reload
120
+ agentflow play --no-reload
121
+ ```
122
+
99
123
  ### `agentflow build`
100
124
 
101
125
  Generate production Docker files.
@@ -2,6 +2,5 @@
2
2
  "agent": "graph.react:app",
3
3
  "thread_name_generator": "graph.thread_name_generator:MyNameGenerator",
4
4
  "env": ".env",
5
- "auth": null,
6
- "agent_card": "agent_card.md"
5
+ "auth": null
7
6
  }
@@ -0,0 +1,211 @@
1
+ """API server command implementation."""
2
+
3
+ import ipaddress
4
+ import os
5
+ import socket
6
+ import sys
7
+ import threading
8
+ import time
9
+ import webbrowser
10
+ from pathlib import Path
11
+ from typing import Any
12
+ from urllib.parse import urlencode
13
+
14
+ import uvicorn
15
+ from dotenv import load_dotenv
16
+
17
+ from agentflow_cli.cli.commands import BaseCommand
18
+ from agentflow_cli.cli.constants import (
19
+ DEFAULT_CONFIG_FILE,
20
+ DEFAULT_HOST,
21
+ DEFAULT_PLAYGROUND_URL,
22
+ DEFAULT_PORT,
23
+ )
24
+ from agentflow_cli.cli.core.config import ConfigManager
25
+ from agentflow_cli.cli.core.validation import validate_cli_options
26
+ from agentflow_cli.cli.exceptions import ConfigurationError, ServerError
27
+
28
+
29
+ class APICommand(BaseCommand):
30
+ """Command to start the Pyagenity API server."""
31
+
32
+ _PLAYGROUND_WAIT_TIMEOUT_SECONDS = 30.0
33
+ _PLAYGROUND_WAIT_INTERVAL_SECONDS = 0.25
34
+
35
+ def execute(
36
+ self,
37
+ config: str = DEFAULT_CONFIG_FILE,
38
+ host: str = DEFAULT_HOST,
39
+ port: int = DEFAULT_PORT,
40
+ reload: bool = True,
41
+ open_playground: bool = False,
42
+ playground_url: str = DEFAULT_PLAYGROUND_URL,
43
+ **kwargs: Any,
44
+ ) -> int:
45
+ """Execute the API server command.
46
+
47
+ Args:
48
+ config: Path to config file
49
+ host: Host to bind to
50
+ port: Port to bind to
51
+ reload: Enable auto-reload
52
+ open_playground: Open the hosted playground after the API becomes reachable
53
+ playground_url: Hosted playground base URL
54
+ **kwargs: Additional arguments
55
+
56
+ Returns:
57
+ Exit code
58
+ """
59
+ try:
60
+ # Print banner
61
+ self.output.print_banner(
62
+ "API (development)",
63
+ "Starting development server via Uvicorn. Not for production use.",
64
+ )
65
+
66
+ # Validate inputs
67
+ validated_options = validate_cli_options(host, port, config)
68
+
69
+ # Load configuration
70
+ config_manager = ConfigManager()
71
+ actual_config_path = config_manager.find_config_file(validated_options["config"])
72
+ # Load and validate config
73
+ config_manager.load_config(str(actual_config_path))
74
+
75
+ # Load environment file if specified
76
+ env_file_path = config_manager.resolve_env_file()
77
+ if env_file_path:
78
+ self.logger.info("Loading environment from: %s", env_file_path)
79
+ load_dotenv(env_file_path)
80
+ else:
81
+ # Load default .env if it exists
82
+ load_dotenv()
83
+
84
+ # Set environment variables
85
+ os.environ["GRAPH_PATH"] = str(actual_config_path)
86
+
87
+ # Add project root to sys.path for importing graph modules
88
+ sys.path.insert(0, str(actual_config_path.parent))
89
+
90
+ # Ensure we're using the correct module path
91
+ sys.path.insert(0, str(Path(__file__).parent.parent.parent))
92
+
93
+ self.logger.info(
94
+ "Starting API with config: %s, host: %s, port: %d",
95
+ actual_config_path,
96
+ validated_options["host"],
97
+ validated_options["port"],
98
+ )
99
+
100
+ if open_playground:
101
+ self._schedule_playground_launch(
102
+ host=validated_options["host"],
103
+ port=validated_options["port"],
104
+ playground_base_url=playground_url,
105
+ )
106
+
107
+ # Start the server
108
+ uvicorn.run(
109
+ "agentflow_cli.src.app.main:app",
110
+ host=validated_options["host"],
111
+ port=validated_options["port"],
112
+ reload=reload,
113
+ workers=1,
114
+ )
115
+
116
+ return 0
117
+
118
+ except (ConfigurationError, ServerError) as e:
119
+ return self.handle_error(e)
120
+ except Exception as e:
121
+ server_error = ServerError(
122
+ f"Failed to start API server: {e}",
123
+ host=host,
124
+ port=port,
125
+ )
126
+ return self.handle_error(server_error)
127
+
128
+ def _schedule_playground_launch(
129
+ self,
130
+ host: str,
131
+ port: int,
132
+ playground_base_url: str,
133
+ ) -> None:
134
+ browser_host = self._normalize_browser_host(host)
135
+ launch_url = self._build_playground_url(browser_host, port, playground_base_url)
136
+ self.output.info(
137
+ f"Playground will open at {launch_url} when the API is ready.",
138
+ emoji=False,
139
+ )
140
+ launch_thread = threading.Thread(
141
+ target=self._open_playground_when_ready,
142
+ args=(launch_url, browser_host, port),
143
+ daemon=True,
144
+ name="agentflow-playground-launcher",
145
+ )
146
+ launch_thread.start()
147
+
148
+ def _open_playground_when_ready(
149
+ self,
150
+ launch_url: str,
151
+ host: str,
152
+ port: int,
153
+ ) -> None:
154
+ if not self._wait_for_server(host, port):
155
+ self.logger.warning(
156
+ "API server did not become reachable in time. Open the playground manually: %s",
157
+ launch_url,
158
+ )
159
+ return
160
+
161
+ opened = webbrowser.open_new_tab(launch_url)
162
+ if opened:
163
+ self.logger.info("Opened playground URL: %s", launch_url)
164
+ return
165
+
166
+ self.logger.warning(
167
+ "Browser launch returned false. Open the playground manually: %s",
168
+ launch_url,
169
+ )
170
+
171
+ def _wait_for_server(
172
+ self,
173
+ host: str,
174
+ port: int,
175
+ ) -> bool:
176
+ deadline = time.monotonic() + self._PLAYGROUND_WAIT_TIMEOUT_SECONDS
177
+ while time.monotonic() < deadline:
178
+ try:
179
+ with socket.create_connection((host, port), timeout=1):
180
+ return True
181
+ except OSError:
182
+ time.sleep(self._PLAYGROUND_WAIT_INTERVAL_SECONDS)
183
+
184
+ return False
185
+
186
+ def _build_playground_url(
187
+ self,
188
+ host: str,
189
+ port: int,
190
+ playground_base_url: str,
191
+ ) -> str:
192
+ backend_host = host
193
+ if ":" in backend_host and not backend_host.startswith("["):
194
+ backend_host = f"[{backend_host}]"
195
+
196
+ backend_url = f"http://{backend_host}:{port}"
197
+ return f"{playground_base_url}?{urlencode({'backendUrl': backend_url})}"
198
+
199
+ def _normalize_browser_host(self, host: str) -> str:
200
+ if not host:
201
+ return "127.0.0.1"
202
+
203
+ normalized_host = host[1:-1] if host.startswith("[") and host.endswith("]") else host
204
+
205
+ try:
206
+ if ipaddress.ip_address(normalized_host).is_unspecified:
207
+ return "127.0.0.1"
208
+ except ValueError:
209
+ pass
210
+
211
+ return normalized_host