flock-core 0.4.0b17__tar.gz → 0.4.0b19__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 flock-core might be problematic. Click here for more details.

Files changed (640) hide show
  1. flock_core-0.4.0b19/PKG-INFO +280 -0
  2. flock_core-0.4.0b19/README.md +220 -0
  3. flock_core-0.4.0b19/docs/interacting-with-flock/cli-tool.md +40 -0
  4. flock_core-0.4.0b19/docs/interacting-with-flock/index.md +20 -0
  5. flock_core-0.4.0b19/docs/interacting-with-flock/interactive-cli.md +79 -0
  6. flock_core-0.4.0b19/docs/interacting-with-flock/programmatic.md +185 -0
  7. flock_core-0.4.0b19/docs/interacting-with-flock/rest-api.md +140 -0
  8. flock_core-0.4.0b19/docs/interacting-with-flock/web-ui.md +75 -0
  9. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/mkdocs.yml +4 -2
  10. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/pyproject.toml +1 -1
  11. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/requirements.txt +6 -0
  12. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/runner.py +1 -1
  13. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/logging.py +2 -0
  14. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/serialization_utils.py +70 -1
  15. flock_core-0.4.0b19/src/flock/core/util/hydrator.py +326 -0
  16. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/uv.lock +1 -1
  17. flock_core-0.4.0b17/.cursorignore +0 -4
  18. flock_core-0.4.0b17/.project/SPECS.md +0 -120
  19. flock_core-0.4.0b17/.project/TASKS.md +0 -76
  20. flock_core-0.4.0b17/.project/USERSTORIES.md +0 -23
  21. flock_core-0.4.0b17/.project/analyze_repo_prompt.md +0 -5
  22. flock_core-0.4.0b17/.project/implementation.md +0 -639
  23. flock_core-0.4.0b17/.project/llm/1.md +0 -61
  24. flock_core-0.4.0b17/.project/llm/code-04-04-2025.txt +0 -24496
  25. flock_core-0.4.0b17/.project/llm/code-07-04.txt +0 -27922
  26. flock_core-0.4.0b17/.project/llm/code-batch-07-04-2025.txt +0 -41665
  27. flock_core-0.4.0b17/.project/llm/code-docs.txt +0 -42646
  28. flock_core-0.4.0b17/.project/llm/code09042025.txt +0 -43908
  29. flock_core-0.4.0b17/.project/llm/flock-02-04-25-dynamic-ui.txt +0 -22270
  30. flock_core-0.4.0b17/.project/llm/flock-29_03_2025-yaml.txt +0 -22294
  31. flock_core-0.4.0b17/.project/llm/llms-ctx-fasthtml.txt +0 -3274
  32. flock_core-0.4.0b17/.project/llm/llms-ctx-full_monsterui.txt +0 -7292
  33. flock_core-0.4.0b17/.project/llm/old_ui_poc.txt +0 -608
  34. flock_core-0.4.0b17/.project/planning_prompt.md +0 -184
  35. flock_core-0.4.0b17/.project/specs/01_core_architecture.md +0 -147
  36. flock_core-0.4.0b17/.project/specs/02_agent_factory.md +0 -82
  37. flock_core-0.4.0b17/.project/specs/03_module_system.md +0 -116
  38. flock_core-0.4.0b17/.project/specs/04_evaluator_system.md +0 -103
  39. flock_core-0.4.0b17/.project/specs/05_router_system.md +0 -131
  40. flock_core-0.4.0b17/.project/specs/06_tool_system.md +0 -119
  41. flock_core-0.4.0b17/.project/specs/07_execution_system.md +0 -119
  42. flock_core-0.4.0b17/.project/specs/08_context_system.md +0 -121
  43. flock_core-0.4.0b17/.project/specs/09_cli_system.md +0 -117
  44. flock_core-0.4.0b17/.project/specs/10_workflow_system.md +0 -140
  45. flock_core-0.4.0b17/.project/specs/11_memory_system.md +0 -130
  46. flock_core-0.4.0b17/.project/specs/12_platform_system.md +0 -83
  47. flock_core-0.4.0b17/.project/specs/13_registry_system.md +0 -130
  48. flock_core-0.4.0b17/.project/specs/14_serialization_system.md +0 -140
  49. flock_core-0.4.0b17/.project/tasks/US007-T005-YAML-Documentation-and-Examples.md +0 -73
  50. flock_core-0.4.0b17/.project/tasks/US007-T006-YAML-Editor-CLI.md +0 -380
  51. flock_core-0.4.0b17/.project/tasks/done/US001-001-env-settings-editor.md +0 -82
  52. flock_core-0.4.0b17/.project/tasks/done/US001-002-env-settings-ui-components.md +0 -70
  53. flock_core-0.4.0b17/.project/tasks/done/US001-003-env-settings-file-operations.md +0 -66
  54. flock_core-0.4.0b17/.project/tasks/done/US001-004-settings-security-features.md +0 -67
  55. flock_core-0.4.0b17/.project/tasks/done/US001-005-env-profile-switching.md +0 -77
  56. flock_core-0.4.0b17/.project/tasks/done/US007-T001-YAML-Serializable-Base.md +0 -131
  57. flock_core-0.4.0b17/.project/tasks/done/US007-T002.1-FlockAgent-YAML-Formatting.md +0 -72
  58. flock_core-0.4.0b17/.project/tasks/done/US007-T002.2-FlockAgent-YAML-Examples.md +0 -73
  59. flock_core-0.4.0b17/.project/tasks/done/US007-T003.1-Flock-System-YAML-Formatting.md +0 -73
  60. flock_core-0.4.0b17/.project/tasks/done/US007-T003.2-YAML-Schema-Documentation.md +0 -73
  61. flock_core-0.4.0b17/.project/tasks/done/US007-T004-Callable-Reference-System.md +0 -79
  62. flock_core-0.4.0b17/.project/tasks/done/US007-T007-YAML-Serialization-Tests.md +0 -137
  63. flock_core-0.4.0b17/.project/userstories/US007-YAML-Serialization.md +0 -357
  64. flock_core-0.4.0b17/.project/userstories/done/US001-Settings-Editor.md +0 -186
  65. flock_core-0.4.0b17/PKG-INFO +0 -572
  66. flock_core-0.4.0b17/README.md +0 -512
  67. flock_core-0.4.0b17/batch_results.csv +0 -3
  68. flock_core-0.4.0b17/docs/interacting-with-flock/api.md +0 -0
  69. flock_core-0.4.0b17/docs/interacting-with-flock/cli.md +0 -0
  70. flock_core-0.4.0b17/docs/interacting-with-flock/index.md +0 -0
  71. flock_core-0.4.0b17/docs/interacting-with-flock/web-ui.md +0 -0
  72. flock_core-0.4.0b17/examples/01_introduction/01_simple_example.py +0 -46
  73. flock_core-0.4.0b17/examples/01_introduction/02_the_flock_syntax.py +0 -36
  74. flock_core-0.4.0b17/examples/01_introduction/02_typed_output.py +0 -56
  75. flock_core-0.4.0b17/examples/01_introduction/03_tool_and_code_agent.py +0 -43
  76. flock_core-0.4.0b17/examples/01_introduction/04_descriptions.py +0 -28
  77. flock_core-0.4.0b17/examples/01_introduction/05_typed_output2.py +0 -84
  78. flock_core-0.4.0b17/examples/01_introduction/06_simple_hand_off.py +0 -40
  79. flock_core-0.4.0b17/examples/01_introduction/07_all_base_concepts.py +0 -76
  80. flock_core-0.4.0b17/examples/01_introduction/08a_serialization.py +0 -134
  81. flock_core-0.4.0b17/examples/01_introduction/08b_deserialization.py +0 -57
  82. flock_core-0.4.0b17/examples/01_introduction/09_batch_processing.py +0 -57
  83. flock_core-0.4.0b17/examples/01_introduction/10_benchmark.py +0 -149
  84. flock_core-0.4.0b17/examples/01_introduction/11_stream.py +0 -120
  85. flock_core-0.4.0b17/examples/01_introduction/data/file_path_demo.flock.yaml +0 -170
  86. flock_core-0.4.0b17/examples/02_concepts/api/api_client.py +0 -19
  87. flock_core-0.4.0b17/examples/02_concepts/api/api_server.py +0 -19
  88. flock_core-0.4.0b17/examples/02_concepts/api/batch_processing.http +0 -32
  89. flock_core-0.4.0b17/examples/02_concepts/api/batch_processing.py +0 -19
  90. flock_core-0.4.0b17/examples/02_concepts/context/context.py +0 -57
  91. flock_core-0.4.0b17/examples/02_concepts/data/own_tools.flock.yaml +0 -90
  92. flock_core-0.4.0b17/examples/02_concepts/data/tools/tools.py +0 -22
  93. flock_core-0.4.0b17/examples/02_concepts/evaluator/multi_hops_memory.py +0 -81
  94. flock_core-0.4.0b17/examples/02_concepts/evaluator/multi_hops_zep.py +0 -85
  95. flock_core-0.4.0b17/examples/02_concepts/modules/use_modules.py +0 -67
  96. flock_core-0.4.0b17/examples/02_concepts/router/router_example.py +0 -98
  97. flock_core-0.4.0b17/examples/02_concepts/tools/azure_search_query.py +0 -76
  98. flock_core-0.4.0b17/examples/02_concepts/tools/azure_tools_example.py +0 -221
  99. flock_core-0.4.0b17/examples/02_concepts/tools/own_tools.py +0 -56
  100. flock_core-0.4.0b17/examples/03_apps/dynamic_apps/main.py +0 -53
  101. flock_core-0.4.0b17/examples/03_apps/gemini_dev/main.py +0 -46
  102. flock_core-0.4.0b17/examples/03_apps/roguelike/game.py +0 -505
  103. flock_core-0.4.0b17/examples/03_apps/story_gen/cursor.py +0 -65
  104. flock_core-0.4.0b17/examples/03_apps/story_gen/main.py +0 -160
  105. flock_core-0.4.0b17/examples/04_comparison/rag_comparison/rag.ipynb +0 -289
  106. flock_core-0.4.0b17/examples/05_documentation/getting-started/first_agent_01.py +0 -26
  107. flock_core-0.4.0b17/examples/05_documentation/getting-started/first_agent_02.py +0 -32
  108. flock_core-0.4.0b17/examples/05_documentation/getting-started/first_agent_03.py +0 -31
  109. flock_core-0.4.0b17/examples/README.md +0 -27
  110. flock_core-0.4.0b17/examples/playground/02_cook_book/flock_without_llms.py +0 -79
  111. flock_core-0.4.0b17/examples/playground/02_cook_book/long_research_no_handoff.py +0 -71
  112. flock_core-0.4.0b17/examples/playground/02_cook_book/painting_by_numbers.py +0 -86
  113. flock_core-0.4.0b17/examples/playground/02_cook_book/project_manager.py +0 -112
  114. flock_core-0.4.0b17/examples/playground/02_cook_book/repo_analyzer/repo_analyzer.py +0 -721
  115. flock_core-0.4.0b17/examples/playground/02_cook_book/repo_analyzer/repo_analyzer_llm.py +0 -285
  116. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/load_01.py +0 -14
  117. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/load_02.py +0 -27
  118. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/load_03.py +0 -10
  119. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/load_04.py +0 -9
  120. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/save_01.py +0 -13
  121. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/save_02.py +0 -30
  122. flock_core-0.4.0b17/examples/playground/02_cook_book/save_and_load/save_03.py +0 -40
  123. flock_core-0.4.0b17/examples/playground/02_cook_book/self_improvement_with_memory.py +0 -110
  124. flock_core-0.4.0b17/examples/playground/hier/her_vis.py +0 -405
  125. flock_core-0.4.0b17/examples/playground/hier/hier_mem.py +0 -175
  126. flock_core-0.4.0b17/examples/playground/misc/memory.py +0 -261
  127. flock_core-0.4.0b17/examples/playground/misc/self_learner.py +0 -164
  128. flock_core-0.4.0b17/examples/playground/misc/self_learner2.py +0 -157
  129. flock_core-0.4.0b17/examples/playground/website/app.py +0 -15
  130. flock_core-0.4.0b17/repo.txt +0 -31928
  131. flock_core-0.4.0b17/src/flock/core/util/hydrator.py +0 -306
  132. flock_core-0.4.0b17/src/flock/modules/output/output_module.py +0 -194
  133. flock_core-0.4.0b17/story_agent.flock.yaml +0 -311
  134. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.devcontainer/devcontainer.json +0 -0
  135. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.env_template +0 -0
  136. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  137. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  138. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  139. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.github/workflows/.gitkeep +0 -0
  140. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.github/workflows/deploy-documentation.yml +0 -0
  141. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.github/workflows/deploy-whiteduck-pypi.yml +0 -0
  142. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.gitignore +0 -0
  143. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.sesskey +0 -0
  144. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.vscode/launch.json +0 -0
  145. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.vscode/settings.json +0 -0
  146. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/.vscode/tasks.json +0 -0
  147. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/LICENSE +0 -0
  148. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/about/changelog.md +0 -0
  149. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/about/contributing.md +0 -0
  150. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/drawio/architecture.drawio +0 -0
  151. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/cli_outputs/out.png +0 -0
  152. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/components_chart.png +0 -0
  153. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/examples/01_01.png +0 -0
  154. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/examples/01_02.png +0 -0
  155. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/examples/01_03.png +0 -0
  156. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/examples/01_04.png +0 -0
  157. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/examples/01_05.png +0 -0
  158. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/examples/01_06.png +0 -0
  159. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/flock.png +0 -0
  160. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/flock_cli.png +0 -0
  161. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/flow_chart.png +0 -0
  162. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/getting-started/first_agent_00.png +0 -0
  163. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/hummingbird.png +0 -0
  164. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/icon.png +0 -0
  165. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/icon.png~ +0 -0
  166. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/logo.png +0 -0
  167. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/memory_concepts.png +0 -0
  168. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/memory_flow.png +0 -0
  169. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/assets/images/memory_flow_chart.png +0 -0
  170. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/components/evaluators.md +0 -0
  171. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/components/index.md +0 -0
  172. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/components/modules.md +0 -0
  173. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/components/tools.md +0 -0
  174. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/core-concepts/agents.md +0 -0
  175. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/core-concepts/declarative.md +0 -0
  176. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/core-concepts/index.md +0 -0
  177. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/core-concepts/workflows.md +0 -0
  178. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/create_doc_boilerplate.py +0 -0
  179. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/deployment/index.md +0 -0
  180. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/deployment/temporal.md +0 -0
  181. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/getting-started/configuration.md +0 -0
  182. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/getting-started/index.md +0 -0
  183. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/getting-started/installation.md +0 -0
  184. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/getting-started/quickstart.md +0 -0
  185. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/guides/chaining-agents.md +0 -0
  186. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/guides/index.md +0 -0
  187. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/index.md +0 -0
  188. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/reference/flock_agent.md +0 -0
  189. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/reference/index.md +0 -0
  190. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/release-notes/magpie.md +0 -0
  191. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/docs/stylesheets/extra.css +0 -0
  192. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/scripts/code_collector.py +0 -0
  193. {flock_core-0.4.0b17 → flock_core-0.4.0b19/scripts}/create_docs.py +0 -0
  194. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/__init__.py +0 -0
  195. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/assets/release_notes.md +0 -0
  196. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/config.py +0 -0
  197. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/constants.py +0 -0
  198. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/create_agent.py +0 -0
  199. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/create_flock.py +0 -0
  200. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/execute_flock.py +0 -0
  201. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/load_agent.py +0 -0
  202. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/load_examples.py +0 -0
  203. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/load_flock.py +0 -0
  204. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/load_release_notes.py +0 -0
  205. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/loaded_flock_cli.py +0 -0
  206. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/manage_agents.py +0 -0
  207. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/registry_management.py +0 -0
  208. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/settings.py +0 -0
  209. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/view_results.py +0 -0
  210. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/cli/yaml_editor.py +0 -0
  211. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/config.py +0 -0
  212. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/__init__.py +0 -0
  213. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/__init__.py +0 -0
  214. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/endpoints.py +0 -0
  215. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/main.py +0 -0
  216. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/models.py +0 -0
  217. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/run_store.py +0 -0
  218. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/runner.py +0 -0
  219. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/ui/__init__.py +0 -0
  220. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/ui/routes.py +0 -0
  221. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/api/ui/utils.py +0 -0
  222. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/context/context.py +0 -0
  223. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/context/context_manager.py +0 -0
  224. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/context/context_vars.py +0 -0
  225. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/evaluation/utils.py +0 -0
  226. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/execution/batch_executor.py +0 -0
  227. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/execution/evaluation_executor.py +0 -0
  228. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/execution/local_executor.py +0 -0
  229. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/execution/temporal_executor.py +0 -0
  230. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock.py +0 -0
  231. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock_agent.py +0 -0
  232. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock_evaluator.py +0 -0
  233. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock_factory.py +0 -0
  234. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock_module.py +0 -0
  235. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock_registry.py +0 -0
  236. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/flock_router.py +0 -0
  237. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/interpreter/python_interpreter.py +0 -0
  238. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/__init__.py +0 -0
  239. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/formatters/enum_builder.py +0 -0
  240. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/formatters/theme_builder.py +0 -0
  241. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/formatters/themed_formatter.py +0 -0
  242. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/formatters/themes.py +0 -0
  243. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/span_middleware/baggage_span_processor.py +0 -0
  244. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/telemetry.py +0 -0
  245. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/telemetry_exporter/base_exporter.py +0 -0
  246. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/telemetry_exporter/file_exporter.py +0 -0
  247. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/telemetry_exporter/sqlite_exporter.py +0 -0
  248. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/logging/trace_and_logged.py +0 -0
  249. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/mixin/dspy_integration.py +0 -0
  250. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/mixin/prompt_parser.py +0 -0
  251. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/__init__.py +0 -0
  252. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/callable_registry.py +0 -0
  253. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/flock_serializer.py +0 -0
  254. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/json_encoder.py +0 -0
  255. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/secure_serializer.py +0 -0
  256. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/serialization/serializable.py +0 -0
  257. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/tools/azure_tools.py +0 -0
  258. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/tools/basic_tools.py +0 -0
  259. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/tools/dev_tools/github.py +0 -0
  260. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/tools/llm_tools.py +0 -0
  261. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/tools/markdown_tools.py +0 -0
  262. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/tools/zendesk_tools.py +0 -0
  263. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/util/cli_helper.py +0 -0
  264. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/util/file_path_utils.py +0 -0
  265. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/util/input_resolver.py +0 -0
  266. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/core/util/loader.py +0 -0
  267. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/evaluators/declarative/declarative_evaluator.py +0 -0
  268. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/evaluators/memory/azure_search_evaluator.py +0 -0
  269. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/evaluators/memory/memory_evaluator.py +0 -0
  270. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/evaluators/natural_language/natural_language_evaluator.py +0 -0
  271. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/evaluators/test/test_case_evaluator.py +0 -0
  272. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/evaluators/zep/zep_evaluator.py +0 -0
  273. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/azure-search/azure_search_module.py +0 -0
  274. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/callback/callback_module.py +0 -0
  275. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/memory/memory_module.py +0 -0
  276. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/memory/memory_parser.py +0 -0
  277. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/memory/memory_storage.py +0 -0
  278. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/performance/metrics_module.py +0 -0
  279. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/modules/zep/zep_module.py +0 -0
  280. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/platform/docker_tools.py +0 -0
  281. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/platform/jaeger_install.py +0 -0
  282. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/__init__.py +0 -0
  283. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/agent/__init__.py +0 -0
  284. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/agent/agent_router.py +0 -0
  285. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/agent/handoff_agent.py +0 -0
  286. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/default/__init__.py +0 -0
  287. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/default/default_router.py +0 -0
  288. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/llm/__init__.py +0 -0
  289. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/routers/llm/llm_router.py +0 -0
  290. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/3024-day.toml +0 -0
  291. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/3024-night.toml +0 -0
  292. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/aardvark-blue.toml +0 -0
  293. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/abernathy.toml +0 -0
  294. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/adventure.toml +0 -0
  295. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/adventuretime.toml +0 -0
  296. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/afterglow.toml +0 -0
  297. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/alabaster.toml +0 -0
  298. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/alienblood.toml +0 -0
  299. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/andromeda.toml +0 -0
  300. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/apple-classic.toml +0 -0
  301. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/apple-system-colors.toml +0 -0
  302. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/arcoiris.toml +0 -0
  303. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/argonaut copy.toml +0 -0
  304. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/argonaut.toml +0 -0
  305. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/arthur.toml +0 -0
  306. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ateliersulphurpool.toml +0 -0
  307. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/atom.toml +0 -0
  308. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/atom_test.toml +0 -0
  309. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/atomonelight.toml +0 -0
  310. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/aurora.toml +0 -0
  311. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ayu copy.toml +0 -0
  312. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ayu-light.toml +0 -0
  313. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ayu-mirage.toml +0 -0
  314. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ayu.toml +0 -0
  315. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/banana-blueberry.toml +0 -0
  316. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/batman.toml +0 -0
  317. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/belafonte-day.toml +0 -0
  318. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/belafonte-night.toml +0 -0
  319. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/birdsofparadise.toml +0 -0
  320. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/blazer.toml +0 -0
  321. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/blue-matrix.toml +0 -0
  322. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/blueberrypie.toml +0 -0
  323. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/bluedolphin.toml +0 -0
  324. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/blulocodark.toml +0 -0
  325. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/blulocolight.toml +0 -0
  326. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/borland.toml +0 -0
  327. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/breeze.toml +0 -0
  328. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/bright-lights.toml +0 -0
  329. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/broadcast.toml +0 -0
  330. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/brogrammer.toml +0 -0
  331. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-dark.toml +0 -0
  332. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-light.toml +0 -0
  333. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-pastel-dark.toml +0 -0
  334. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-solarized-dark.toml +0 -0
  335. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-solarized-light.toml +0 -0
  336. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-tango-dark.toml +0 -0
  337. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/builtin-tango-light.toml +0 -0
  338. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/c64.toml +0 -0
  339. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/calamity.toml +0 -0
  340. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/catppuccin-frappe.toml +0 -0
  341. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/catppuccin-latte.toml +0 -0
  342. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/catppuccin-macchiato.toml +0 -0
  343. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/catppuccin-mocha.toml +0 -0
  344. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cga.toml +0 -0
  345. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/chalk.toml +0 -0
  346. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/chalkboard.toml +0 -0
  347. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/challengerdeep.toml +0 -0
  348. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/chester.toml +0 -0
  349. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ciapre.toml +0 -0
  350. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/clrs.toml +0 -0
  351. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cobalt-neon.toml +0 -0
  352. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cobalt2.toml +0 -0
  353. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/coffee-theme.toml +0 -0
  354. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/crayonponyfish.toml +0 -0
  355. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cutiepro.toml +0 -0
  356. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cyberdyne.toml +0 -0
  357. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cyberpunk.toml +0 -0
  358. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/cyberpunkscarletprotocol.toml +0 -0
  359. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dark+.toml +0 -0
  360. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dark-pastel.toml +0 -0
  361. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/darkermatrix.toml +0 -0
  362. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/darkmatrix.toml +0 -0
  363. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/darkside.toml +0 -0
  364. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dayfox.toml +0 -0
  365. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/deep.toml +0 -0
  366. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/desert.toml +0 -0
  367. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dimidium.toml +0 -0
  368. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dimmedmonokai.toml +0 -0
  369. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/django.toml +0 -0
  370. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/djangorebornagain.toml +0 -0
  371. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/djangosmooth.toml +0 -0
  372. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/doom-peacock.toml +0 -0
  373. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/doomone.toml +0 -0
  374. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dotgov.toml +0 -0
  375. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dracula+.toml +0 -0
  376. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/dracula.toml +0 -0
  377. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/duckbones.toml +0 -0
  378. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/duotone-dark.toml +0 -0
  379. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/earthsong.toml +0 -0
  380. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/elemental.toml +0 -0
  381. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/elementary.toml +0 -0
  382. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/encom.toml +0 -0
  383. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/espresso-libre.toml +0 -0
  384. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/espresso.toml +0 -0
  385. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/everblush.toml +0 -0
  386. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/fahrenheit.toml +0 -0
  387. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/fairyfloss.toml +0 -0
  388. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/farmhouse-dark.toml +0 -0
  389. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/farmhouse-light.toml +0 -0
  390. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/fideloper.toml +0 -0
  391. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/firefly-traditional.toml +0 -0
  392. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/firefoxdev.toml +0 -0
  393. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/firewatch.toml +0 -0
  394. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/fishtank.toml +0 -0
  395. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/flat.toml +0 -0
  396. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/flatland.toml +0 -0
  397. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/flexoki-dark.toml +0 -0
  398. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/flexoki-light.toml +0 -0
  399. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/floraverse.toml +0 -0
  400. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/forestblue.toml +0 -0
  401. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/framer.toml +0 -0
  402. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/frontenddelight.toml +0 -0
  403. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/funforrest.toml +0 -0
  404. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/galaxy.toml +0 -0
  405. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/galizur.toml +0 -0
  406. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/github-dark.toml +0 -0
  407. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/github.toml +0 -0
  408. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/glacier.toml +0 -0
  409. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/grape.toml +0 -0
  410. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/grass.toml +0 -0
  411. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/grey-green.toml +0 -0
  412. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/gruber-darker.toml +0 -0
  413. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/gruvboxdark.toml +0 -0
  414. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/gruvboxdarkhard.toml +0 -0
  415. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/gruvboxlight.toml +0 -0
  416. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/guezwhoz.toml +0 -0
  417. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hacktober.toml +0 -0
  418. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hardcore.toml +0 -0
  419. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/harper.toml +0 -0
  420. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hax0r-blue.toml +0 -0
  421. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hax0r-gr33n.toml +0 -0
  422. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hax0r-r3d.toml +0 -0
  423. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/highway.toml +0 -0
  424. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hipster-green.toml +0 -0
  425. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hivacruz.toml +0 -0
  426. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/homebrew.toml +0 -0
  427. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hopscotch.256.toml +0 -0
  428. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hopscotch.toml +0 -0
  429. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hurtado.toml +0 -0
  430. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/hybrid.toml +0 -0
  431. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ic-green-ppl.toml +0 -0
  432. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ic-orange-ppl.toml +0 -0
  433. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iceberg-dark.toml +0 -0
  434. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iceberg-light.toml +0 -0
  435. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/idea.toml +0 -0
  436. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/idletoes.toml +0 -0
  437. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ir-black.toml +0 -0
  438. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-dark-background.toml +0 -0
  439. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-default.toml +0 -0
  440. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-light-background.toml +0 -0
  441. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-pastel-dark-background.toml +0 -0
  442. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-smoooooth.toml +0 -0
  443. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-solarized-dark.toml +0 -0
  444. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-solarized-light.toml +0 -0
  445. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-tango-dark.toml +0 -0
  446. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/iterm2-tango-light.toml +0 -0
  447. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/jackie-brown.toml +0 -0
  448. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/japanesque.toml +0 -0
  449. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/jellybeans.toml +0 -0
  450. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/jetbrains-darcula.toml +0 -0
  451. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/jubi.toml +0 -0
  452. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/kanagawabones.toml +0 -0
  453. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/kibble.toml +0 -0
  454. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/kolorit.toml +0 -0
  455. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/konsolas.toml +0 -0
  456. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/kurokula.toml +0 -0
  457. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/lab-fox.toml +0 -0
  458. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/laser.toml +0 -0
  459. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/later-this-evening.toml +0 -0
  460. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/lavandula.toml +0 -0
  461. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/liquidcarbon.toml +0 -0
  462. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/liquidcarbontransparent.toml +0 -0
  463. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/liquidcarbontransparentinverse.toml +0 -0
  464. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/lovelace.toml +0 -0
  465. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/man-page.toml +0 -0
  466. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/mariana.toml +0 -0
  467. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/material.toml +0 -0
  468. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/materialdark.toml +0 -0
  469. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/materialdarker.toml +0 -0
  470. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/materialdesigncolors.toml +0 -0
  471. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/materialocean.toml +0 -0
  472. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/mathias.toml +0 -0
  473. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/matrix.toml +0 -0
  474. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/medallion.toml +0 -0
  475. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/mellifluous.toml +0 -0
  476. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/midnight-in-mojave.toml +0 -0
  477. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/mirage.toml +0 -0
  478. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/misterioso.toml +0 -0
  479. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/molokai.toml +0 -0
  480. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/monalisa.toml +0 -0
  481. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/monokai-remastered.toml +0 -0
  482. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/monokai-soda.toml +0 -0
  483. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/monokai-vivid.toml +0 -0
  484. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/n0tch2k.toml +0 -0
  485. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/neobones-dark.toml +0 -0
  486. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/neobones-light.toml +0 -0
  487. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/neon.toml +0 -0
  488. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/neopolitan.toml +0 -0
  489. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/neutron.toml +0 -0
  490. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/night-owlish-light.toml +0 -0
  491. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nightfox.toml +0 -0
  492. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nightlion-v1.toml +0 -0
  493. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nightlion-v2.toml +0 -0
  494. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/niji.toml +0 -0
  495. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nocturnal-winter.toml +0 -0
  496. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nord-light.toml +0 -0
  497. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nord.toml +0 -0
  498. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/novel.toml +0 -0
  499. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nvimdark.toml +0 -0
  500. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/nvimlight.toml +0 -0
  501. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/obsidian.toml +0 -0
  502. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ocean.toml +0 -0
  503. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/oceanic-next.toml +0 -0
  504. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/oceanicmaterial.toml +0 -0
  505. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ollie.toml +0 -0
  506. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/onehalfdark.toml +0 -0
  507. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/onehalflight.toml +0 -0
  508. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/operator-mono-dark.toml +0 -0
  509. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/overnight-slumber.toml +0 -0
  510. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/oxocarbon.toml +0 -0
  511. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/palenighthc.toml +0 -0
  512. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/pandora.toml +0 -0
  513. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/paraiso-dark.toml +0 -0
  514. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/paulmillr.toml +0 -0
  515. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/pencildark.toml +0 -0
  516. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/pencillight.toml +0 -0
  517. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/peppermint.toml +0 -0
  518. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/piatto-light.toml +0 -0
  519. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/pnevma.toml +0 -0
  520. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/popping-and-locking.toml +0 -0
  521. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/primary.toml +0 -0
  522. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/pro-light.toml +0 -0
  523. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/pro.toml +0 -0
  524. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/purple-rain.toml +0 -0
  525. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/purplepeter.toml +0 -0
  526. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rapture.toml +0 -0
  527. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/raycast-dark.toml +0 -0
  528. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/raycast-light.toml +0 -0
  529. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rebecca.toml +0 -0
  530. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/red-alert.toml +0 -0
  531. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/red-planet.toml +0 -0
  532. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/red-sands.toml +0 -0
  533. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/relaxed.toml +0 -0
  534. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/retro.toml +0 -0
  535. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rippedcasts.toml +0 -0
  536. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rose-pine-dawn.toml +0 -0
  537. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rose-pine-moon.toml +0 -0
  538. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rose-pine.toml +0 -0
  539. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/rouge-2.toml +0 -0
  540. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/royal.toml +0 -0
  541. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ryuuko.toml +0 -0
  542. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/sakura.toml +0 -0
  543. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/scarlet-protocol.toml +0 -0
  544. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/seafoam-pastel.toml +0 -0
  545. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/seashells.toml +0 -0
  546. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/seoulbones-dark.toml +0 -0
  547. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/seoulbones-light.toml +0 -0
  548. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/seti.toml +0 -0
  549. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/shades-of-purple.toml +0 -0
  550. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/shaman.toml +0 -0
  551. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/slate.toml +0 -0
  552. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/sleepyhollow.toml +0 -0
  553. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/smyck.toml +0 -0
  554. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/snazzy.toml +0 -0
  555. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/softserver.toml +0 -0
  556. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/solarized-darcula.toml +0 -0
  557. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/solarized-dark---patched.toml +0 -0
  558. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/solarized-dark-higher-contrast.toml +0 -0
  559. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/spacedust.toml +0 -0
  560. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/spacegray-eighties-dull.toml +0 -0
  561. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/spacegray-eighties.toml +0 -0
  562. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/spacegray.toml +0 -0
  563. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/spiderman.toml +0 -0
  564. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/spring.toml +0 -0
  565. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/square.toml +0 -0
  566. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/sublette.toml +0 -0
  567. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/subliminal.toml +0 -0
  568. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/sugarplum.toml +0 -0
  569. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/sundried.toml +0 -0
  570. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/symfonic.toml +0 -0
  571. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/synthwave-everything.toml +0 -0
  572. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/synthwave.toml +0 -0
  573. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/synthwavealpha.toml +0 -0
  574. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tango-adapted.toml +0 -0
  575. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tango-half-adapted.toml +0 -0
  576. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/teerb.toml +0 -0
  577. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/terafox.toml +0 -0
  578. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/terminal-basic.toml +0 -0
  579. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/thayer-bright.toml +0 -0
  580. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/the-hulk.toml +0 -0
  581. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tinacious-design-(dark).toml +0 -0
  582. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tinacious-design-(light).toml +0 -0
  583. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tokyonight-day.toml +0 -0
  584. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tokyonight-storm.toml +0 -0
  585. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tokyonight.toml +0 -0
  586. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tomorrow-night-blue.toml +0 -0
  587. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tomorrow-night-bright.toml +0 -0
  588. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tomorrow-night-burns.toml +0 -0
  589. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tomorrow-night-eighties.toml +0 -0
  590. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tomorrow-night.toml +0 -0
  591. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/tomorrow.toml +0 -0
  592. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/toychest.toml +0 -0
  593. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/treehouse.toml +0 -0
  594. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/twilight.toml +0 -0
  595. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ubuntu.toml +0 -0
  596. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ultradark.toml +0 -0
  597. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/ultraviolent.toml +0 -0
  598. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/underthesea.toml +0 -0
  599. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/unikitty.toml +0 -0
  600. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/urple.toml +0 -0
  601. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/vaughn.toml +0 -0
  602. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/vesper.toml +0 -0
  603. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/vibrantink.toml +0 -0
  604. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/vimbones.toml +0 -0
  605. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/violet-dark.toml +0 -0
  606. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/violet-light.toml +0 -0
  607. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/warmneon.toml +0 -0
  608. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/wez.toml +0 -0
  609. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/whimsy.toml +0 -0
  610. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/wildcherry.toml +0 -0
  611. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/wilmersdorf.toml +0 -0
  612. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/wombat.toml +0 -0
  613. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/wryan.toml +0 -0
  614. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/xcodedark.toml +0 -0
  615. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/xcodedarkhc.toml +0 -0
  616. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/xcodelight.toml +0 -0
  617. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/xcodelighthc.toml +0 -0
  618. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/xcodewwdc.toml +0 -0
  619. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenbones-dark.toml +0 -0
  620. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenbones-light.toml +0 -0
  621. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenbones.toml +0 -0
  622. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenburn.toml +0 -0
  623. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenburned.toml +0 -0
  624. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenwritten-dark.toml +0 -0
  625. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/themes/zenwritten-light.toml +0 -0
  626. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/workflow/__init__.py +0 -0
  627. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/workflow/activities.py +0 -0
  628. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/workflow/agent_activities.py +0 -0
  629. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/workflow/temporal_setup.py +0 -0
  630. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/src/flock/workflow/workflow.py +0 -0
  631. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/__init__.py +0 -0
  632. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/core/test_flock_batch.py +0 -0
  633. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/core/test_flock_core.py +0 -0
  634. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/serialization/__init__.py +0 -0
  635. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/serialization/test_enhanced_serialization.py +0 -0
  636. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/serialization/test_file_path_serialization.py +0 -0
  637. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/serialization/test_flock_serializer.py +0 -0
  638. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/serialization/test_nested_serialization.py +0 -0
  639. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/serialization/test_yaml_serialization.py +0 -0
  640. {flock_core-0.4.0b17 → flock_core-0.4.0b19}/tests/tools/test_zendesk_tools.py +0 -0
@@ -0,0 +1,280 @@
1
+ Metadata-Version: 2.4
2
+ Name: flock-core
3
+ Version: 0.4.0b19
4
+ Summary: Declarative LLM Orchestration at Scale
5
+ Author-email: Andre Ratzenberger <andre.ratzenberger@whiteduck.de>
6
+ License-File: LICENSE
7
+ Classifier: License :: OSI Approved :: MIT License
8
+ Classifier: Operating System :: OS Independent
9
+ Classifier: Programming Language :: Python :: 3
10
+ Requires-Python: >=3.10
11
+ Requires-Dist: azure-search-documents>=11.5.2
12
+ Requires-Dist: chromadb>=0.6.3
13
+ Requires-Dist: cloudpickle>=3.1.1
14
+ Requires-Dist: datasets>=3.2.0
15
+ Requires-Dist: devtools>=0.12.2
16
+ Requires-Dist: dspy==2.6.16
17
+ Requires-Dist: duckduckgo-search>=7.3.2
18
+ Requires-Dist: fastapi>=0.115.8
19
+ Requires-Dist: httpx>=0.28.1
20
+ Requires-Dist: litellm==1.63.7
21
+ Requires-Dist: loguru>=0.7.3
22
+ Requires-Dist: matplotlib>=3.10.0
23
+ Requires-Dist: msgpack>=1.1.0
24
+ Requires-Dist: nltk>=3.9.1
25
+ Requires-Dist: notion-client>=2.3.0
26
+ Requires-Dist: opentelemetry-api>=1.30.0
27
+ Requires-Dist: opentelemetry-exporter-jaeger-proto-grpc>=1.21.0
28
+ Requires-Dist: opentelemetry-exporter-jaeger>=1.21.0
29
+ Requires-Dist: opentelemetry-exporter-otlp>=1.30.0
30
+ Requires-Dist: opentelemetry-instrumentation-logging>=0.51b0
31
+ Requires-Dist: opentelemetry-sdk>=1.30.0
32
+ Requires-Dist: pandas>=2.2.3
33
+ Requires-Dist: pillow>=10.4.0
34
+ Requires-Dist: prometheus-client>=0.21.1
35
+ Requires-Dist: psutil>=6.1.1
36
+ Requires-Dist: pydantic-settings>=2.7.1
37
+ Requires-Dist: pydantic>=2.10.5
38
+ Requires-Dist: python-box>=7.3.2
39
+ Requires-Dist: python-decouple>=3.8
40
+ Requires-Dist: python-dotenv>=1.0.1
41
+ Requires-Dist: python-fasthtml>=0.12.6
42
+ Requires-Dist: pyyaml>=6.0
43
+ Requires-Dist: questionary>=2.1.0
44
+ Requires-Dist: rich>=13.9.4
45
+ Requires-Dist: sentence-transformers>=3.4.1
46
+ Requires-Dist: temporalio>=1.9.0
47
+ Requires-Dist: tiktoken>=0.8.0
48
+ Requires-Dist: toml>=0.10.2
49
+ Requires-Dist: tqdm>=4.67.1
50
+ Requires-Dist: uvicorn>=0.34.0
51
+ Requires-Dist: zep-python>=2.0.2
52
+ Provides-Extra: all
53
+ Requires-Dist: docling>=2.18.0; extra == 'all'
54
+ Requires-Dist: markdownify>=0.14.1; extra == 'all'
55
+ Requires-Dist: tavily-python>=0.5.0; extra == 'all'
56
+ Provides-Extra: tools
57
+ Requires-Dist: markdownify>=0.14.1; extra == 'tools'
58
+ Requires-Dist: tavily-python>=0.5.0; extra == 'tools'
59
+ Description-Content-Type: text/markdown
60
+
61
+ # 🚀 Flock: The Declarative AI Agent Framework 🚀
62
+
63
+ <p align="center">
64
+ <!-- Placeholder for your Flock Logo/Banner - Replace URL -->
65
+ <img alt="Flock Banner" src="https://raw.githubusercontent.com/whiteducksoftware/flock/master/docs/assets/images/flock.png" width="600">
66
+ </p>
67
+ <p align="center">
68
+ <!-- Update badges -->
69
+ <a href="https://pypi.org/project/flock-core/" target="_blank"><img alt="PyPI Version" src="https://img.shields.io/pypi/v/flock-core?style=for-the-badge&logo=pypi&label=pip%20version"></a>
70
+ <img alt="Python Version" src="https://img.shields.io/badge/python-3.10%2B-blue?style=for-the-badge&logo=python">
71
+ <a href="https://github.com/whiteducksoftware/flock/actions/workflows/deploy-whiteduck-pypi.yml" target="_blank"><img alt="CI Status" src="https://img.shields.io/github/actions/workflow/status/whiteducksoftware/flock/deploy-whiteduck-pypi.yml?branch=master&style=for-the-badge&logo=githubactions&logoColor=white"></a>
72
+ <a href="https://github.com/whiteducksoftware/flock/blob/master/LICENSE" target="_blank"><img alt="License" src="https://img.shields.io/pypi/l/flock-core?style=for-the-badge"></a>
73
+ <a href="https://whiteduck.de" target="_blank"><img alt="Built by white duck" src="https://img.shields.io/badge/Built%20by-white%20duck%20GmbH-white?style=for-the-badge&labelColor=black"></a>
74
+ <a href="https://www.linkedin.com/company/whiteduck" target="_blank"><img alt="LinkedIn" src="https://img.shields.io/badge/linkedin-%230077B5.svg?style=for-the-badge&logo=linkedin&logoColor=white&label=whiteduck"></a>
75
+ <a href="https://bsky.app/profile/whiteduck-gmbh.bsky.social" target="_blank"><img alt="Bluesky" src="https://img.shields.io/badge/bluesky-Follow-blue?style=for-the-badge&logo=bluesky&logoColor=%23fff&color=%23333&labelColor=%230285FF&label=whiteduck-gmbh"></a>
76
+ </p>
77
+
78
+ 🐤 Flock 0.4.0 currently in beta - use `pip install flock-core==0.4.0b5` 🐤
79
+
80
+ 🐤 `pip install flock-core` will install the latest non-beta version 🐤
81
+
82
+ 🐤 Expected Release for 0.4.0 `Magpie`: End of April 2025 🐤
83
+
84
+ ---
85
+
86
+ **Tired of wrestling with paragraphs of prompt text just to get your AI agent to perform a specific, structured task?** 😫
87
+
88
+ Enter **Flock**, the agent framework that lets you ditch the prompt-palaver and focus on **what** you want your agents to achieve through a **declarative approach**. Define your agent's inputs, outputs, and available tools using clear Python structures (including type hints!), and let Flock handle the complex LLM interactions and orchestration.
89
+
90
+ Built with real-world deployment in mind, Flock integrates seamlessly with tools like **Temporal** (optional) for building robust, fault-tolerant, and scalable agent systems right out of the box.
91
+
92
+ **Looking for examples and tutorials?** Check out the dedicated [**👉 flock-showcase Repository**](https://github.com/whiteducksoftware/flock-showcase)!
93
+
94
+ ## ✨ Why Join the Flock?
95
+
96
+ Flock offers a different way to build agentic systems:
97
+
98
+ | Traditional Agent Frameworks 😟 | Flock Framework 🐤🐧🐓🦆 |
99
+ | :------------------------------------- | :------------------------------------ |
100
+ | 🤯 **Prompt Nightmare** | ✅ **Declarative Simplicity** |
101
+ | *Long, brittle, hard-to-tune prompts* | *Clear input/output specs (typed!)* |
102
+ | 💥 **Fragile & Unpredictable** | ⚡ **Robust & Production-Ready** |
103
+ | *Single errors can halt everything* | *Fault-tolerant via Temporal option* |
104
+ | 🧩 **Monolithic & Rigid** | 🔧 **Modular & Flexible** |
105
+ | *Hard to extend or modify logic* | *Pluggable Evaluators, Modules, Tools*|
106
+ | ⛓️ **Basic Chaining** | 🚀 **Advanced Orchestration** |
107
+ | *Often just linear workflows* | *Dynamic Routing, Batch Processing* |
108
+ | 🧪 **Difficult Testing** | ✅ **Testable Components** |
109
+ | *Hard to unit test prompt logic* | *Clear I/O contracts aid testing* |
110
+ | 📄 **Unstructured Output** | ✨ **Structured Data Handling** |
111
+ | *Parsing unreliable LLM text output* | *Native Pydantic/Typed Dict support* |
112
+
113
+ ## 💡 Core Concepts
114
+
115
+ Flock's power comes from a few key ideas (Learn more in the [Full Documentation](https://whiteducksoftware.github.io/flock/)):
116
+
117
+ 1. **Declarative Agents:** Define agents by *what* they do (inputs/outputs), not *how*. Flock uses **Evaluators** (like the default `DeclarativeEvaluator` powered by DSPy) to handle the underlying logic.
118
+ 2. **Typed Signatures:** Specify agent inputs and outputs using Python type hints and optional descriptions (e.g., `"query: str | User request, context: Optional[List[MyType]]"`).
119
+ 3. **Modular Components:** Extend agent capabilities with pluggable **Modules** (e.g., for memory, metrics, output formatting) that hook into the agent's lifecycle.
120
+ 4. **Intelligent Workflows:** Chain agents explicitly or use **Routers** (LLM-based, Agent-based, or custom) for dynamic decision-making.
121
+ 5. **Reliable Execution:** Run locally for easy debugging or seamlessly switch to **Temporal** (optional) for production-grade fault tolerance, retries, and state management.
122
+ 6. **Tool Integration:** Equip agents with standard or custom Python functions (`@flock_tool`) registered via the `FlockRegistry`.
123
+ 7. **Registry:** A central place (`@flock_component`, `@flock_type`, `@flock_tool`) to register your custom classes, types, and functions, enabling robust serialization and dynamic loading.
124
+
125
+ ## 💾 Installation
126
+
127
+ Get started with the core Flock library:
128
+
129
+ ```bash
130
+ # Using uv (recommended)
131
+ uv pip install flock-core
132
+
133
+ # Using pip
134
+ pip install flock-core
135
+ ```
136
+
137
+ Extras: Install optional dependencies for specific features:
138
+
139
+ ```bash
140
+ # Common tools (Tavily, Markdownify)
141
+ uv pip install flock-core[tools]
142
+
143
+ # All optional dependencies (including tools, docling, etc.)
144
+ uv pip install flock-core[all]
145
+ ```
146
+
147
+ Environment Setup:
148
+
149
+ Flock uses environment variables (typically in a .env file) for configuration, especially API keys. Create a .env file in your project root:
150
+
151
+ ```bash
152
+ # .env - Example
153
+
154
+ # --- LLM Provider API Keys (Required by most examples) ---
155
+ # Add keys for providers you use (OpenAI, Anthropic, Gemini, Azure, etc.)
156
+ # Refer to litellm docs (https://docs.litellm.ai/docs/providers) for names
157
+ OPENAI_API_KEY="your-openai-api-key"
158
+ # ANTHROPIC_API_KEY="your-anthropic-api-key"
159
+
160
+ # --- Tool-Specific Keys (Optional) ---
161
+ # TAVILY_API_KEY="your-tavily-search-key"
162
+ # GITHUB_PAT="your-github-personal-access-token"
163
+
164
+ # --- Default Flock Settings (Optional) ---
165
+ DEFAULT_MODEL="openai/gpt-4o" # Default LLM if agent doesn't specify
166
+
167
+ # --- Flock CLI Settings (Managed by `flock settings`) ---
168
+ # SHOW_SECRETS="False"
169
+ # VARS_PER_PAGE="20"
170
+ ```
171
+
172
+ Remember to add .env to your .gitignore!
173
+
174
+ ## ⚡ Quick Start Syntax
175
+
176
+ While detailed examples and tutorials now live in the flock-showcase repository, here's a minimal example to illustrate the core syntax:
177
+
178
+ ```python
179
+ from flock.core import Flock, FlockFactory
180
+
181
+ # 1. Create the main orchestrator
182
+ # Uses DEFAULT_MODEL from .env or defaults to "openai/gpt-4o" if not set
183
+ my_flock = Flock(name="SimpleFlock")
184
+
185
+ # 2. Declaratively define an agent using the Factory
186
+ # Input: a topic (string)
187
+ # Output: a title (string) and bullet points (list of strings)
188
+ brainstorm_agent = FlockFactory.create_default_agent(
189
+ name="idea_generator",
190
+ description="Generates titles and key points for a given topic.",
191
+ input="topic: str | The subject to brainstorm about",
192
+ output="catchy_title: str, key_points: list[str] | 3-5 main bullet points"
193
+ )
194
+
195
+ # 3. Add the agent to the Flock
196
+ my_flock.add_agent(brainstorm_agent)
197
+
198
+ # 4. Run the agent!
199
+ if __name__ == "__main__":
200
+ input_data = {"topic": "The future of AI agents"}
201
+ try:
202
+ # The result is a Box object (dot-accessible dict)
203
+ result = my_flock.run(start_agent="idea_generator", input=input_data)
204
+ print(f"Generated Title: {result.catchy_title}")
205
+ print("Key Points:")
206
+ for point in result.key_points:
207
+ print(f"- {point}")
208
+ except Exception as e:
209
+ print(f"An error occurred: {e}")
210
+ print("Ensure your LLM API key (e.g., OPENAI_API_KEY) is set in your .env file!")
211
+ ```
212
+
213
+ ## ✨ Utility: @flockclass Hydrator
214
+
215
+ Flock also provides conveniences. The @flockclass decorator allows you to easily populate Pydantic models using an LLM:
216
+
217
+ ```python
218
+ from pydantic import BaseModel
219
+ from flock.util.hydrator import flockclass # Assuming hydrator utility exists
220
+ import asyncio
221
+
222
+ @flockclass(model="openai/gpt-4o") # Decorate your Pydantic model
223
+ class CharacterIdea(BaseModel):
224
+ name: str
225
+ char_class: str
226
+ race: str
227
+ backstory_hook: str | None = None # Field to be filled by hydrate
228
+ personality_trait: str | None = None # Field to be filled by hydrate
229
+
230
+ async def create_character():
231
+ # Create with minimal data
232
+ char = CharacterIdea(name="Gorok", char_class="Barbarian", race="Orc")
233
+ print(f"Before Hydration: {char}")
234
+
235
+ # Call hydrate to fill in the None fields using the LLM
236
+ hydrated_char = await char.hydrate()
237
+
238
+ print(f"\nAfter Hydration: {hydrated_char}")
239
+ print(f"Backstory Hook: {hydrated_char.backstory_hook}")
240
+
241
+ # asyncio.run(create_character())
242
+ ```
243
+
244
+ ## 📚 Examples & Tutorials
245
+
246
+ For a comprehensive set of examples, ranging from basic usage to complex projects and advanced features, please visit our dedicated showcase repository:
247
+
248
+ ➡️ [github.com/whiteducksoftware/flock-showcase](https://github.com/whiteducksoftware/flock-showcase) ⬅️
249
+
250
+ The showcase includes:
251
+
252
+ - Step-by-step guides for core concepts.
253
+ - Examples of tool usage, routing, memory, and more.
254
+ - Complete mini-projects demonstrating practical applications.
255
+
256
+ ## 📖 Documentation
257
+
258
+ Full documentation, including API references and conceptual explanations, can be found at:
259
+
260
+ ➡️ [whiteducksoftware.github.io/flock/](https://whiteducksoftware.github.io/flock/) ⬅️
261
+
262
+ ## 🤝 Contributing
263
+
264
+ We welcome contributions! Please see the CONTRIBUTING.md file (if available) or open an issue/pull request on GitHub.
265
+
266
+ Ways to contribute:
267
+
268
+ - Report bugs or suggest features.
269
+ - Improve documentation.
270
+ - Contribute new Modules, Evaluators, or Routers.
271
+ - Add examples to the flock-showcase repository.
272
+ - Join our Discord Community to discuss development! <!-- Add Discord link -->
273
+
274
+ ## 📜 License
275
+
276
+ Flock is licensed under the Apache License 2.0. See the LICENSE file for details.
277
+
278
+ ## 🏢 About
279
+
280
+ Flock is developed and maintained by white duck GmbH, your partner for cloud-native solutions and AI integration.
@@ -0,0 +1,220 @@
1
+ # 🚀 Flock: The Declarative AI Agent Framework 🚀
2
+
3
+ <p align="center">
4
+ <!-- Placeholder for your Flock Logo/Banner - Replace URL -->
5
+ <img alt="Flock Banner" src="https://raw.githubusercontent.com/whiteducksoftware/flock/master/docs/assets/images/flock.png" width="600">
6
+ </p>
7
+ <p align="center">
8
+ <!-- Update badges -->
9
+ <a href="https://pypi.org/project/flock-core/" target="_blank"><img alt="PyPI Version" src="https://img.shields.io/pypi/v/flock-core?style=for-the-badge&logo=pypi&label=pip%20version"></a>
10
+ <img alt="Python Version" src="https://img.shields.io/badge/python-3.10%2B-blue?style=for-the-badge&logo=python">
11
+ <a href="https://github.com/whiteducksoftware/flock/actions/workflows/deploy-whiteduck-pypi.yml" target="_blank"><img alt="CI Status" src="https://img.shields.io/github/actions/workflow/status/whiteducksoftware/flock/deploy-whiteduck-pypi.yml?branch=master&style=for-the-badge&logo=githubactions&logoColor=white"></a>
12
+ <a href="https://github.com/whiteducksoftware/flock/blob/master/LICENSE" target="_blank"><img alt="License" src="https://img.shields.io/pypi/l/flock-core?style=for-the-badge"></a>
13
+ <a href="https://whiteduck.de" target="_blank"><img alt="Built by white duck" src="https://img.shields.io/badge/Built%20by-white%20duck%20GmbH-white?style=for-the-badge&labelColor=black"></a>
14
+ <a href="https://www.linkedin.com/company/whiteduck" target="_blank"><img alt="LinkedIn" src="https://img.shields.io/badge/linkedin-%230077B5.svg?style=for-the-badge&logo=linkedin&logoColor=white&label=whiteduck"></a>
15
+ <a href="https://bsky.app/profile/whiteduck-gmbh.bsky.social" target="_blank"><img alt="Bluesky" src="https://img.shields.io/badge/bluesky-Follow-blue?style=for-the-badge&logo=bluesky&logoColor=%23fff&color=%23333&labelColor=%230285FF&label=whiteduck-gmbh"></a>
16
+ </p>
17
+
18
+ 🐤 Flock 0.4.0 currently in beta - use `pip install flock-core==0.4.0b5` 🐤
19
+
20
+ 🐤 `pip install flock-core` will install the latest non-beta version 🐤
21
+
22
+ 🐤 Expected Release for 0.4.0 `Magpie`: End of April 2025 🐤
23
+
24
+ ---
25
+
26
+ **Tired of wrestling with paragraphs of prompt text just to get your AI agent to perform a specific, structured task?** 😫
27
+
28
+ Enter **Flock**, the agent framework that lets you ditch the prompt-palaver and focus on **what** you want your agents to achieve through a **declarative approach**. Define your agent's inputs, outputs, and available tools using clear Python structures (including type hints!), and let Flock handle the complex LLM interactions and orchestration.
29
+
30
+ Built with real-world deployment in mind, Flock integrates seamlessly with tools like **Temporal** (optional) for building robust, fault-tolerant, and scalable agent systems right out of the box.
31
+
32
+ **Looking for examples and tutorials?** Check out the dedicated [**👉 flock-showcase Repository**](https://github.com/whiteducksoftware/flock-showcase)!
33
+
34
+ ## ✨ Why Join the Flock?
35
+
36
+ Flock offers a different way to build agentic systems:
37
+
38
+ | Traditional Agent Frameworks 😟 | Flock Framework 🐤🐧🐓🦆 |
39
+ | :------------------------------------- | :------------------------------------ |
40
+ | 🤯 **Prompt Nightmare** | ✅ **Declarative Simplicity** |
41
+ | *Long, brittle, hard-to-tune prompts* | *Clear input/output specs (typed!)* |
42
+ | 💥 **Fragile & Unpredictable** | ⚡ **Robust & Production-Ready** |
43
+ | *Single errors can halt everything* | *Fault-tolerant via Temporal option* |
44
+ | 🧩 **Monolithic & Rigid** | 🔧 **Modular & Flexible** |
45
+ | *Hard to extend or modify logic* | *Pluggable Evaluators, Modules, Tools*|
46
+ | ⛓️ **Basic Chaining** | 🚀 **Advanced Orchestration** |
47
+ | *Often just linear workflows* | *Dynamic Routing, Batch Processing* |
48
+ | 🧪 **Difficult Testing** | ✅ **Testable Components** |
49
+ | *Hard to unit test prompt logic* | *Clear I/O contracts aid testing* |
50
+ | 📄 **Unstructured Output** | ✨ **Structured Data Handling** |
51
+ | *Parsing unreliable LLM text output* | *Native Pydantic/Typed Dict support* |
52
+
53
+ ## 💡 Core Concepts
54
+
55
+ Flock's power comes from a few key ideas (Learn more in the [Full Documentation](https://whiteducksoftware.github.io/flock/)):
56
+
57
+ 1. **Declarative Agents:** Define agents by *what* they do (inputs/outputs), not *how*. Flock uses **Evaluators** (like the default `DeclarativeEvaluator` powered by DSPy) to handle the underlying logic.
58
+ 2. **Typed Signatures:** Specify agent inputs and outputs using Python type hints and optional descriptions (e.g., `"query: str | User request, context: Optional[List[MyType]]"`).
59
+ 3. **Modular Components:** Extend agent capabilities with pluggable **Modules** (e.g., for memory, metrics, output formatting) that hook into the agent's lifecycle.
60
+ 4. **Intelligent Workflows:** Chain agents explicitly or use **Routers** (LLM-based, Agent-based, or custom) for dynamic decision-making.
61
+ 5. **Reliable Execution:** Run locally for easy debugging or seamlessly switch to **Temporal** (optional) for production-grade fault tolerance, retries, and state management.
62
+ 6. **Tool Integration:** Equip agents with standard or custom Python functions (`@flock_tool`) registered via the `FlockRegistry`.
63
+ 7. **Registry:** A central place (`@flock_component`, `@flock_type`, `@flock_tool`) to register your custom classes, types, and functions, enabling robust serialization and dynamic loading.
64
+
65
+ ## 💾 Installation
66
+
67
+ Get started with the core Flock library:
68
+
69
+ ```bash
70
+ # Using uv (recommended)
71
+ uv pip install flock-core
72
+
73
+ # Using pip
74
+ pip install flock-core
75
+ ```
76
+
77
+ Extras: Install optional dependencies for specific features:
78
+
79
+ ```bash
80
+ # Common tools (Tavily, Markdownify)
81
+ uv pip install flock-core[tools]
82
+
83
+ # All optional dependencies (including tools, docling, etc.)
84
+ uv pip install flock-core[all]
85
+ ```
86
+
87
+ Environment Setup:
88
+
89
+ Flock uses environment variables (typically in a .env file) for configuration, especially API keys. Create a .env file in your project root:
90
+
91
+ ```bash
92
+ # .env - Example
93
+
94
+ # --- LLM Provider API Keys (Required by most examples) ---
95
+ # Add keys for providers you use (OpenAI, Anthropic, Gemini, Azure, etc.)
96
+ # Refer to litellm docs (https://docs.litellm.ai/docs/providers) for names
97
+ OPENAI_API_KEY="your-openai-api-key"
98
+ # ANTHROPIC_API_KEY="your-anthropic-api-key"
99
+
100
+ # --- Tool-Specific Keys (Optional) ---
101
+ # TAVILY_API_KEY="your-tavily-search-key"
102
+ # GITHUB_PAT="your-github-personal-access-token"
103
+
104
+ # --- Default Flock Settings (Optional) ---
105
+ DEFAULT_MODEL="openai/gpt-4o" # Default LLM if agent doesn't specify
106
+
107
+ # --- Flock CLI Settings (Managed by `flock settings`) ---
108
+ # SHOW_SECRETS="False"
109
+ # VARS_PER_PAGE="20"
110
+ ```
111
+
112
+ Remember to add .env to your .gitignore!
113
+
114
+ ## ⚡ Quick Start Syntax
115
+
116
+ While detailed examples and tutorials now live in the flock-showcase repository, here's a minimal example to illustrate the core syntax:
117
+
118
+ ```python
119
+ from flock.core import Flock, FlockFactory
120
+
121
+ # 1. Create the main orchestrator
122
+ # Uses DEFAULT_MODEL from .env or defaults to "openai/gpt-4o" if not set
123
+ my_flock = Flock(name="SimpleFlock")
124
+
125
+ # 2. Declaratively define an agent using the Factory
126
+ # Input: a topic (string)
127
+ # Output: a title (string) and bullet points (list of strings)
128
+ brainstorm_agent = FlockFactory.create_default_agent(
129
+ name="idea_generator",
130
+ description="Generates titles and key points for a given topic.",
131
+ input="topic: str | The subject to brainstorm about",
132
+ output="catchy_title: str, key_points: list[str] | 3-5 main bullet points"
133
+ )
134
+
135
+ # 3. Add the agent to the Flock
136
+ my_flock.add_agent(brainstorm_agent)
137
+
138
+ # 4. Run the agent!
139
+ if __name__ == "__main__":
140
+ input_data = {"topic": "The future of AI agents"}
141
+ try:
142
+ # The result is a Box object (dot-accessible dict)
143
+ result = my_flock.run(start_agent="idea_generator", input=input_data)
144
+ print(f"Generated Title: {result.catchy_title}")
145
+ print("Key Points:")
146
+ for point in result.key_points:
147
+ print(f"- {point}")
148
+ except Exception as e:
149
+ print(f"An error occurred: {e}")
150
+ print("Ensure your LLM API key (e.g., OPENAI_API_KEY) is set in your .env file!")
151
+ ```
152
+
153
+ ## ✨ Utility: @flockclass Hydrator
154
+
155
+ Flock also provides conveniences. The @flockclass decorator allows you to easily populate Pydantic models using an LLM:
156
+
157
+ ```python
158
+ from pydantic import BaseModel
159
+ from flock.util.hydrator import flockclass # Assuming hydrator utility exists
160
+ import asyncio
161
+
162
+ @flockclass(model="openai/gpt-4o") # Decorate your Pydantic model
163
+ class CharacterIdea(BaseModel):
164
+ name: str
165
+ char_class: str
166
+ race: str
167
+ backstory_hook: str | None = None # Field to be filled by hydrate
168
+ personality_trait: str | None = None # Field to be filled by hydrate
169
+
170
+ async def create_character():
171
+ # Create with minimal data
172
+ char = CharacterIdea(name="Gorok", char_class="Barbarian", race="Orc")
173
+ print(f"Before Hydration: {char}")
174
+
175
+ # Call hydrate to fill in the None fields using the LLM
176
+ hydrated_char = await char.hydrate()
177
+
178
+ print(f"\nAfter Hydration: {hydrated_char}")
179
+ print(f"Backstory Hook: {hydrated_char.backstory_hook}")
180
+
181
+ # asyncio.run(create_character())
182
+ ```
183
+
184
+ ## 📚 Examples & Tutorials
185
+
186
+ For a comprehensive set of examples, ranging from basic usage to complex projects and advanced features, please visit our dedicated showcase repository:
187
+
188
+ ➡️ [github.com/whiteducksoftware/flock-showcase](https://github.com/whiteducksoftware/flock-showcase) ⬅️
189
+
190
+ The showcase includes:
191
+
192
+ - Step-by-step guides for core concepts.
193
+ - Examples of tool usage, routing, memory, and more.
194
+ - Complete mini-projects demonstrating practical applications.
195
+
196
+ ## 📖 Documentation
197
+
198
+ Full documentation, including API references and conceptual explanations, can be found at:
199
+
200
+ ➡️ [whiteducksoftware.github.io/flock/](https://whiteducksoftware.github.io/flock/) ⬅️
201
+
202
+ ## 🤝 Contributing
203
+
204
+ We welcome contributions! Please see the CONTRIBUTING.md file (if available) or open an issue/pull request on GitHub.
205
+
206
+ Ways to contribute:
207
+
208
+ - Report bugs or suggest features.
209
+ - Improve documentation.
210
+ - Contribute new Modules, Evaluators, or Routers.
211
+ - Add examples to the flock-showcase repository.
212
+ - Join our Discord Community to discuss development! <!-- Add Discord link -->
213
+
214
+ ## 📜 License
215
+
216
+ Flock is licensed under the Apache License 2.0. See the LICENSE file for details.
217
+
218
+ ## 🏢 About
219
+
220
+ Flock is developed and maintained by white duck GmbH, your partner for cloud-native solutions and AI integration.
@@ -0,0 +1,40 @@
1
+ ---
2
+ hide:
3
+ - toc
4
+ ---
5
+
6
+ # 🛠️ Flock CLI Tool
7
+
8
+ Beyond integrating Flock into your Python code or exposing it via an API, Flock provides a dedicated command-line interface (CLI) tool, accessed simply by running `flock` in your terminal (once installed).
9
+
10
+ This tool is primarily designed for **managing and interacting with persistent Flock configurations** stored in `.flock.yaml` files.
11
+
12
+ ## Key Features
13
+
14
+ * **Loading Flocks:** Load complete Flock configurations, including agents, types, and components, from `.flock.yaml` files.
15
+ * **Creating Flocks:** A guided wizard (`flock` -> "Create a new Flock") helps you scaffold a new `.flock.yaml` file with basic settings and initial agents.
16
+ * **Executing Flocks:** Run workflows (single or batch) defined within a loaded `.flock.yaml` file directly from the command line.
17
+ * **Registry Management:** View, add, remove, and automatically scan for components (agents, types, callables/tools) in the global Flock registry. This is crucial for ensuring correct serialization and deserialization.
18
+ * **Settings Management:** View and edit global Flock settings, primarily environment variables stored in `~/.flock/.env`, including API keys and configuration flags. Manage different `.env` profiles.
19
+ * **Theme Builder:** Interactively preview and configure output themes for agents using rich tables.
20
+ * **(Future):** Potential deployment commands (e.g., to Docker, Kubernetes).
21
+
22
+ ## How to Use
23
+
24
+ 1. **Installation:** Ensure `flock-core` (or the relevant package) is installed in your environment.
25
+ 2. **Run:** Simply type `flock` in your terminal.
26
+ 3. **Navigate:** Use the interactive menu (powered by `questionary`) to select actions like "Load a *.flock file", "Create a new Flock", "Registry management", "Settings", etc.
27
+
28
+ *(Placeholder: Screenshot of the main `flock` CLI menu)*
29
+
30
+ ## Distinction from Other Interaction Methods
31
+
32
+ * **vs. Programmatic API:** The CLI tool operates on *serialized* Flock states (`.flock.yaml`), while the programmatic API works with `Flock` *objects* in Python memory. The CLI is for management; the API is for integration.
33
+ * **vs. Interactive Script CLI:** The `flock` tool is a standalone application for managing configurations. The `flock.start_cli()` method discussed in [Interactive Script CLI](interactive-cli.md) is used *within* a Python script for debugging the *current*, in-memory `Flock` instance.
34
+
35
+ Use the Flock CLI tool when you need to:
36
+
37
+ * Save and load reusable Flock configurations.
38
+ * Execute predefined workflows without writing Python scripts each time.
39
+ * Manage the global registry of components, types, and tools shared across your projects.
40
+ * Configure global settings like API keys or CLI behavior.
@@ -0,0 +1,20 @@
1
+ ---
2
+ hide:
3
+ - toc
4
+ ---
5
+
6
+ # Interacting with Flock: Beyond the Build 🚀
7
+
8
+ You've designed your Flock, defined your agents, and maybe even chained them together. Now what? How do you actually *use* your sophisticated AI system?
9
+
10
+ Flock is designed for flexibility, offering multiple ways to interact with your agents and workflows, catering to different needs from development and debugging to integration and deployment.
11
+
12
+ This section explores the primary methods for interacting with a configured `Flock` instance:
13
+
14
+ * **[🐍 Programmatic API (Python)](programmatic.md):** The most direct way. Integrate Flock directly into your Python applications, trigger runs, and process results using simple method calls like `flock.run()`, `flock.run_async()`, and `flock.run_batch()`. Ideal for core development and integration within Python projects.
15
+ * **[🌐 REST API](rest-api.md):** Expose your Flock as a web service. Start a FastAPI server (`flock.start_api()`) to allow remote execution via HTTP requests. Perfect for integrating Flock with web frontends, other microservices, or external systems.
16
+ * **[🖥️ Web UI (FastHTML)](web-ui.md):** A simple, automatically generated web interface for interactive testing and demonstrations. Launch it alongside the REST API (`flock.start_api(create_ui=True)`) for a quick way to select agents, provide inputs, and view results in your browser.
17
+ * **[🛠️ Flock CLI Tool](cli-tool.md):** Manage your Flock configurations using the main `flock` command-line tool. Load `.flock.yaml` files, execute runs, manage the registry, and configure settings without writing Python code. Best for system administration and managing saved Flock states.
18
+ * **[⌨️ Interactive Script CLI](interactive-cli.md):** Debug agent interactions directly within your terminal while running a Python script using `flock.start_cli()`. Useful for stepping through agent handoffs and inspecting context during development.
19
+
20
+ Choose the interaction method that best suits your current task, whether it's embedding AI logic deep within an application, providing an API for others, quickly demoing capabilities, or managing persistent configurations.
@@ -0,0 +1,79 @@
1
+ ---
2
+ hide:
3
+ - toc
4
+ ---
5
+
6
+ # ⌨️ Interactive Script CLI (`flock.start_cli()`)
7
+
8
+ While the main [Flock CLI Tool](cli-tool.md) is used for managing saved configurations, Flock also offers an **interactive command-line interface directly within your running Python script** using the `flock.start_cli()` method.
9
+
10
+ This mode is specifically designed for **development and debugging** purposes, allowing you to step through agent interactions and inspect the context of your *current, in-memory* `Flock` instance.
11
+
12
+ ## Starting the Interactive CLI
13
+
14
+ You typically call `start_cli()` at a point in your script where you have a fully configured `Flock` object ready.
15
+
16
+ ```python
17
+ from flock.core import Flock, FlockFactory
18
+ from flock.routers.default import DefaultRouter, DefaultRouterConfig # Assuming DefaultRouter is used
19
+
20
+ # --- Configure your Flock and Agents ---
21
+ flock = Flock(name="Debug Flock", model="openai/gpt-4o")
22
+
23
+ agent_a = FlockFactory.create_default_agent(
24
+ name="AgentA",
25
+ input="start_query: str",
26
+ output="intermediate_result: str",
27
+ wait_for_input=True # Useful in interactive mode
28
+ )
29
+
30
+ agent_b = FlockFactory.create_default_agent(
31
+ name="AgentB",
32
+ input="intermediate_result: str", # Takes output from AgentA
33
+ output="final_answer: str",
34
+ wait_for_input=True # Useful in interactive mode
35
+ )
36
+
37
+ # Setup handoff (simple chain)
38
+ agent_a.handoff_router = DefaultRouter(config=DefaultRouterConfig(hand_off=agent_b.name))
39
+
40
+ flock.add_agent(agent_a)
41
+ flock.add_agent(agent_b)
42
+
43
+ # --- Start the Interactive CLI ---
44
+ if __name__ == "__main__":
45
+ print("Starting Flock Interactive CLI...")
46
+ print("Type your initial query for AgentA, or 'quit' to exit.")
47
+ # This call enters an interactive loop in the terminal
48
+ flock.start_cli(start_agent=agent_a) # Specify the starting agent
49
+
50
+ print("Interactive CLI finished.")
51
+ ```
52
+
53
+ ## Using the Interactive CLI
54
+
55
+ When you run the script above, instead of executing the full workflow automatically, `flock.start_cli()` will present an interactive prompt in your terminal:
56
+
57
+ 1. **Initial Input:** It will typically prompt for the input required by the start_agent you specified.
58
+
59
+ 2. **Agent Execution:** After you provide input, the starting agent (AgentA in the example) executes.
60
+
61
+ 3. **Output Display:** The agent's output is displayed (often using the configured OutputModule, potentially with rich tables).
62
+
63
+ 4. **Handoff & Next Input:** If the agent has a handoff_router, Flock determines the next agent (AgentB). If the next agent is configured with wait_for_input=True (or if interaction is needed), the CLI might pause or show the next agent's expected input. Often, data flows automatically via context matching the handoff mode.
64
+
65
+ 5. **Loop:** The process repeats for the next agent.
66
+
67
+ 6. **Commands:** You can typically type commands like `quit`, `exit`, or potentially others (depending on implementation details) to control the flow or inspect state.
68
+
69
+ (Placeholder: Screenshot of the terminal during an interactive flock.start_cli() session)
70
+
71
+ ## Use Cases
72
+
73
+ - **Debugging Agent Chains:** Observe the output of each agent in a sequence.
74
+ - **Inspecting Context:** (If enhanced) See how the FlockContext changes after each step.
75
+ - **Testing Routers:** Verify that your LLMRouter or AgentRouter selects the expected next agent based on intermediate results.
76
+ - **Manual Control:** Intervene in the workflow or provide specific inputs at different stages.
77
+
78
+ **Important:** `flock.start_cli()` operates on the Flock object currently in your Python script's memory. It does not load or save .flock.yaml files like the main flock management tool. It's purely a development aid within a script.
79
+