flock-core 0.2.12__tar.gz → 0.2.14__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 (468) hide show
  1. {flock_core-0.2.12 → flock_core-0.2.14}/PKG-INFO +9 -1
  2. {flock_core-0.2.12 → flock_core-0.2.14}/README.md +7 -0
  3. flock_core-0.2.14/examples/02_cook_book/save_and_load/load_01.py +14 -0
  4. flock_core-0.2.14/examples/02_cook_book/save_and_load/load_02.py +27 -0
  5. flock_core-0.2.14/examples/02_cook_book/save_and_load/load_03.py +10 -0
  6. flock_core-0.2.14/examples/02_cook_book/save_and_load/load_04.py +9 -0
  7. flock_core-0.2.14/examples/02_cook_book/save_and_load/save_01.py +13 -0
  8. flock_core-0.2.14/examples/02_cook_book/save_and_load/save_02.py +30 -0
  9. flock_core-0.2.14/examples/02_cook_book/save_and_load/save_03.py +40 -0
  10. {flock_core-0.2.12 → flock_core-0.2.14}/examples/02_cook_book/self_improvement.py +22 -3
  11. {flock_core-0.2.12 → flock_core-0.2.14}/examples/03_misc_wip/logging_examples/02_temporal_logging.py +2 -2
  12. flock_core-0.2.14/examples/data/bloggy.json +1 -0
  13. flock_core-0.2.14/examples/data/chatty.json +1 -0
  14. flock_core-0.2.14/examples/data/custom_bloggy.json +1 -0
  15. flock_core-0.2.14/examples/data/flock.json +1 -0
  16. flock_core-0.2.14/examples/data/inherited_bloggy.json +1 -0
  17. {flock_core-0.2.12 → flock_core-0.2.14}/pyproject.toml +2 -1
  18. flock_core-0.2.14/src/flock/__init__.py +51 -0
  19. flock_core-0.2.14/src/flock/cli/constants.py +22 -0
  20. flock_core-0.2.14/src/flock/cli/create_agent.py +1 -0
  21. flock_core-0.2.14/src/flock/cli/create_flock.py +1 -0
  22. flock_core-0.2.14/src/flock/cli/examples/chatty.flock +1 -0
  23. flock_core-0.2.14/src/flock/cli/examples/chatty.json +1 -0
  24. flock_core-0.2.14/src/flock/cli/load_agent.py +1 -0
  25. flock_core-0.2.14/src/flock/cli/load_examples.py +1 -0
  26. flock_core-0.2.14/src/flock/cli/load_flock.py +38 -0
  27. flock_core-0.2.14/src/flock/cli/settings.py +1 -0
  28. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/flock.py +193 -18
  29. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/flock_agent.py +48 -9
  30. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/formatters/pprint_formatter.py +8 -2
  31. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/mixin/dspy_integration.py +6 -1
  32. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/workflow/activities.py +1 -1
  33. {flock_core-0.2.12 → flock_core-0.2.14}/tests/unittests/test_flock.py +1 -1
  34. {flock_core-0.2.12 → flock_core-0.2.14}/uv.lock +18 -1
  35. flock_core-0.2.12/src/flock/__init__.py +0 -1
  36. {flock_core-0.2.12 → flock_core-0.2.14}/.devcontainer/devcontainer.json +0 -0
  37. {flock_core-0.2.12 → flock_core-0.2.14}/.env_template +0 -0
  38. {flock_core-0.2.12 → flock_core-0.2.14}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  39. {flock_core-0.2.12 → flock_core-0.2.14}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  40. {flock_core-0.2.12 → flock_core-0.2.14}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  41. {flock_core-0.2.12 → flock_core-0.2.14}/.github/workflows/.gitkeep +0 -0
  42. {flock_core-0.2.12 → flock_core-0.2.14}/.github/workflows/deploy-whiteduck-pypi.yml +0 -0
  43. {flock_core-0.2.12 → flock_core-0.2.14}/.gitignore +0 -0
  44. {flock_core-0.2.12 → flock_core-0.2.14}/.vscode/launch.json +0 -0
  45. {flock_core-0.2.12 → flock_core-0.2.14}/.vscode/settings.json +0 -0
  46. {flock_core-0.2.12 → flock_core-0.2.14}/.vscode/tasks.json +0 -0
  47. {flock_core-0.2.12 → flock_core-0.2.14}/LICENSE +0 -0
  48. {flock_core-0.2.12 → flock_core-0.2.14}/docs/agent_mechanics.md +0 -0
  49. {flock_core-0.2.12 → flock_core-0.2.14}/docs/api/flock.md +0 -0
  50. {flock_core-0.2.12 → flock_core-0.2.14}/docs/api/flock_agents.md +0 -0
  51. {flock_core-0.2.12 → flock_core-0.2.14}/docs/api.md +0 -0
  52. {flock_core-0.2.12 → flock_core-0.2.14}/docs/architecture.drawio +0 -0
  53. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/01_introduction/01_simple_example.md +0 -0
  54. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/01_introduction/02_typed_output.md +0 -0
  55. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/01_introduction/03_tool_and_code_agent.md +0 -0
  56. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/01_introduction/04_descriptions.md +0 -0
  57. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/01_introduction/05_typed_output2.md +0 -0
  58. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/01_introduction/06_simple_hand_off.md +0 -0
  59. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/02_cook_book_wip/flock_without_llms.md +0 -0
  60. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples/02_cook_book_wip/project_manager.md +0 -0
  61. {flock_core-0.2.12 → flock_core-0.2.14}/docs/examples.md +0 -0
  62. {flock_core-0.2.12 → flock_core-0.2.14}/docs/generate_examples_docs.py +0 -0
  63. {flock_core-0.2.12 → flock_core-0.2.14}/docs/generate_nav.py +0 -0
  64. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/cli_outputs/out.png +0 -0
  65. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/component_diagramm.png +0 -0
  66. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/examples/01_01.png +0 -0
  67. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/examples/01_02.png +0 -0
  68. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/examples/01_03.png +0 -0
  69. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/examples/01_04.png +0 -0
  70. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/examples/01_05.png +0 -0
  71. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/examples/01_06.png +0 -0
  72. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/flock.png +0 -0
  73. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/flock_cli.png +0 -0
  74. {flock_core-0.2.12 → flock_core-0.2.14}/docs/img/flow_diagramm.png +0 -0
  75. {flock_core-0.2.12 → flock_core-0.2.14}/docs/index.md +0 -0
  76. {flock_core-0.2.12 → flock_core-0.2.14}/docs/installation.md +0 -0
  77. {flock_core-0.2.12 → flock_core-0.2.14}/docs/overrides/extra.css +0 -0
  78. {flock_core-0.2.12 → flock_core-0.2.14}/docs/overrides/extra.js +0 -0
  79. {flock_core-0.2.12 → flock_core-0.2.14}/examples/01_introduction/01_simple_example.py +0 -0
  80. {flock_core-0.2.12 → flock_core-0.2.14}/examples/01_introduction/02_typed_output.py +0 -0
  81. {flock_core-0.2.12 → flock_core-0.2.14}/examples/01_introduction/03_tool_and_code_agent.py +0 -0
  82. {flock_core-0.2.12 → flock_core-0.2.14}/examples/01_introduction/04_descriptions.py +0 -0
  83. {flock_core-0.2.12 → flock_core-0.2.14}/examples/01_introduction/05_typed_output2.py +0 -0
  84. {flock_core-0.2.12 → flock_core-0.2.14}/examples/01_introduction/06_simple_hand_off.py +0 -0
  85. {flock_core-0.2.12 → flock_core-0.2.14}/examples/02_cook_book/flock_without_llms.py +0 -0
  86. {flock_core-0.2.12 → flock_core-0.2.14}/examples/02_cook_book/long_research_no_handoff.py +0 -0
  87. {flock_core-0.2.12 → flock_core-0.2.14}/examples/02_cook_book/project_manager.py +0 -0
  88. {flock_core-0.2.12 → flock_core-0.2.14}/examples/03_misc_wip/formatting/01_pretty_print.py +0 -0
  89. {flock_core-0.2.12 → flock_core-0.2.14}/examples/03_misc_wip/formatting/02_r/303/255ch_table.py" +0 -0
  90. {flock_core-0.2.12 → flock_core-0.2.14}/examples/03_misc_wip/formatting/03_themed_table.py +0 -0
  91. {flock_core-0.2.12 → flock_core-0.2.14}/examples/03_misc_wip/logging_examples/01_basic_logging.py +0 -0
  92. {flock_core-0.2.12 → flock_core-0.2.14}/examples/README.md +0 -0
  93. {flock_core-0.2.12 → flock_core-0.2.14}/examples/notebooks_wip/Untitled-1.ipynb +0 -0
  94. {flock_core-0.2.12 → flock_core-0.2.14}/examples/notebooks_wip/my_agent.json +0 -0
  95. {flock_core-0.2.12 → flock_core-0.2.14}/mkdocs.yml +0 -0
  96. {flock_core-0.2.12 → flock_core-0.2.14}/requirements.txt +0 -0
  97. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/config.py +0 -0
  98. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/__init__.py +0 -0
  99. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/context/context.py +0 -0
  100. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/context/context_manager.py +0 -0
  101. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/context/context_vars.py +0 -0
  102. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/execution/local_executor.py +0 -0
  103. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/execution/temporal_executor.py +0 -0
  104. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/__init__.py +0 -0
  105. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/formatters/base_formatter.py +0 -0
  106. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/formatters/formatter_factory.py +0 -0
  107. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/formatters/rich_formatters.py +0 -0
  108. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/formatters/theme_builder.py +0 -0
  109. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/formatters/themed_formatter.py +0 -0
  110. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/logging.py +0 -0
  111. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/span_middleware/baggage_span_processor.py +0 -0
  112. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/telemetry.py +0 -0
  113. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/telemetry_exporter/base_exporter.py +0 -0
  114. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/telemetry_exporter/file_exporter.py +0 -0
  115. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/telemetry_exporter/sqlite_exporter.py +0 -0
  116. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/logging/trace_and_logged.py +0 -0
  117. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/mixin/prompt_parser.py +0 -0
  118. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/registry/agent_registry.py +0 -0
  119. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/tools/basic_tools.py +0 -0
  120. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/tools/dev_tools/github.py +0 -0
  121. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/util/cli_helper.py +0 -0
  122. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/util/input_resolver.py +0 -0
  123. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/core/util/serializable.py +0 -0
  124. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/interpreter/python_interpreter.py +0 -0
  125. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/platform/docker_tools.py +0 -0
  126. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/platform/jaeger_install.py +0 -0
  127. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/3024-day.toml +0 -0
  128. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/3024-night.toml +0 -0
  129. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/aardvark-blue.toml +0 -0
  130. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/abernathy.toml +0 -0
  131. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/adventure.toml +0 -0
  132. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/adventuretime.toml +0 -0
  133. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/afterglow.toml +0 -0
  134. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/alabaster.toml +0 -0
  135. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/alienblood.toml +0 -0
  136. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/andromeda.toml +0 -0
  137. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/apple-classic.toml +0 -0
  138. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/apple-system-colors.toml +0 -0
  139. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/arcoiris.toml +0 -0
  140. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/argonaut copy.toml +0 -0
  141. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/argonaut.toml +0 -0
  142. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/arthur.toml +0 -0
  143. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ateliersulphurpool.toml +0 -0
  144. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/atom.toml +0 -0
  145. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/atom_test.toml +0 -0
  146. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/atomonelight.toml +0 -0
  147. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/aurora.toml +0 -0
  148. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ayu copy.toml +0 -0
  149. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ayu-light.toml +0 -0
  150. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ayu-mirage.toml +0 -0
  151. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ayu.toml +0 -0
  152. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/banana-blueberry.toml +0 -0
  153. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/batman.toml +0 -0
  154. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/belafonte-day.toml +0 -0
  155. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/belafonte-night.toml +0 -0
  156. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/birdsofparadise.toml +0 -0
  157. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/blazer.toml +0 -0
  158. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/blue-matrix.toml +0 -0
  159. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/blueberrypie.toml +0 -0
  160. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/bluedolphin.toml +0 -0
  161. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/blulocodark.toml +0 -0
  162. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/blulocolight.toml +0 -0
  163. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/borland.toml +0 -0
  164. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/breeze.toml +0 -0
  165. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/bright-lights.toml +0 -0
  166. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/broadcast.toml +0 -0
  167. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/brogrammer.toml +0 -0
  168. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-dark.toml +0 -0
  169. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-light.toml +0 -0
  170. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-pastel-dark.toml +0 -0
  171. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-solarized-dark.toml +0 -0
  172. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-solarized-light.toml +0 -0
  173. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-tango-dark.toml +0 -0
  174. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/builtin-tango-light.toml +0 -0
  175. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/c64.toml +0 -0
  176. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/calamity.toml +0 -0
  177. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/catppuccin-frappe.toml +0 -0
  178. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/catppuccin-latte.toml +0 -0
  179. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/catppuccin-macchiato.toml +0 -0
  180. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/catppuccin-mocha.toml +0 -0
  181. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cga.toml +0 -0
  182. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/chalk.toml +0 -0
  183. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/chalkboard.toml +0 -0
  184. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/challengerdeep.toml +0 -0
  185. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/chester.toml +0 -0
  186. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ciapre.toml +0 -0
  187. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/clrs.toml +0 -0
  188. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cobalt-neon.toml +0 -0
  189. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cobalt2.toml +0 -0
  190. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/coffee-theme.toml +0 -0
  191. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/crayonponyfish.toml +0 -0
  192. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cutiepro.toml +0 -0
  193. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cyberdyne.toml +0 -0
  194. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cyberpunk.toml +0 -0
  195. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/cyberpunkscarletprotocol.toml +0 -0
  196. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dark+.toml +0 -0
  197. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dark-pastel.toml +0 -0
  198. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/darkermatrix.toml +0 -0
  199. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/darkmatrix.toml +0 -0
  200. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/darkside.toml +0 -0
  201. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dayfox.toml +0 -0
  202. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/deep.toml +0 -0
  203. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/desert.toml +0 -0
  204. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dimidium.toml +0 -0
  205. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dimmedmonokai.toml +0 -0
  206. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/django.toml +0 -0
  207. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/djangorebornagain.toml +0 -0
  208. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/djangosmooth.toml +0 -0
  209. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/doom-peacock.toml +0 -0
  210. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/doomone.toml +0 -0
  211. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dotgov.toml +0 -0
  212. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dracula+.toml +0 -0
  213. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/dracula.toml +0 -0
  214. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/duckbones.toml +0 -0
  215. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/duotone-dark.toml +0 -0
  216. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/earthsong.toml +0 -0
  217. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/elemental.toml +0 -0
  218. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/elementary.toml +0 -0
  219. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/encom.toml +0 -0
  220. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/espresso-libre.toml +0 -0
  221. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/espresso.toml +0 -0
  222. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/everblush.toml +0 -0
  223. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/fahrenheit.toml +0 -0
  224. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/fairyfloss.toml +0 -0
  225. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/farmhouse-dark.toml +0 -0
  226. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/farmhouse-light.toml +0 -0
  227. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/fideloper.toml +0 -0
  228. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/firefly-traditional.toml +0 -0
  229. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/firefoxdev.toml +0 -0
  230. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/firewatch.toml +0 -0
  231. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/fishtank.toml +0 -0
  232. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/flat.toml +0 -0
  233. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/flatland.toml +0 -0
  234. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/flexoki-dark.toml +0 -0
  235. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/flexoki-light.toml +0 -0
  236. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/floraverse.toml +0 -0
  237. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/forestblue.toml +0 -0
  238. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/framer.toml +0 -0
  239. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/frontenddelight.toml +0 -0
  240. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/funforrest.toml +0 -0
  241. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/galaxy.toml +0 -0
  242. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/galizur.toml +0 -0
  243. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/github-dark.toml +0 -0
  244. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/github.toml +0 -0
  245. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/glacier.toml +0 -0
  246. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/grape.toml +0 -0
  247. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/grass.toml +0 -0
  248. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/grey-green.toml +0 -0
  249. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/gruber-darker.toml +0 -0
  250. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/gruvboxdark.toml +0 -0
  251. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/gruvboxdarkhard.toml +0 -0
  252. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/gruvboxlight.toml +0 -0
  253. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/guezwhoz.toml +0 -0
  254. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hacktober.toml +0 -0
  255. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hardcore.toml +0 -0
  256. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/harper.toml +0 -0
  257. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hax0r-blue.toml +0 -0
  258. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hax0r-gr33n.toml +0 -0
  259. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hax0r-r3d.toml +0 -0
  260. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/highway.toml +0 -0
  261. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hipster-green.toml +0 -0
  262. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hivacruz.toml +0 -0
  263. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/homebrew.toml +0 -0
  264. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hopscotch.256.toml +0 -0
  265. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hopscotch.toml +0 -0
  266. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hurtado.toml +0 -0
  267. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/hybrid.toml +0 -0
  268. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ic-green-ppl.toml +0 -0
  269. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ic-orange-ppl.toml +0 -0
  270. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iceberg-dark.toml +0 -0
  271. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iceberg-light.toml +0 -0
  272. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/idea.toml +0 -0
  273. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/idletoes.toml +0 -0
  274. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ir-black.toml +0 -0
  275. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-dark-background.toml +0 -0
  276. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-default.toml +0 -0
  277. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-light-background.toml +0 -0
  278. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-pastel-dark-background.toml +0 -0
  279. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-smoooooth.toml +0 -0
  280. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-solarized-dark.toml +0 -0
  281. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-solarized-light.toml +0 -0
  282. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-tango-dark.toml +0 -0
  283. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/iterm2-tango-light.toml +0 -0
  284. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/jackie-brown.toml +0 -0
  285. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/japanesque.toml +0 -0
  286. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/jellybeans.toml +0 -0
  287. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/jetbrains-darcula.toml +0 -0
  288. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/jubi.toml +0 -0
  289. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/kanagawabones.toml +0 -0
  290. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/kibble.toml +0 -0
  291. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/kolorit.toml +0 -0
  292. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/konsolas.toml +0 -0
  293. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/kurokula.toml +0 -0
  294. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/lab-fox.toml +0 -0
  295. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/laser.toml +0 -0
  296. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/later-this-evening.toml +0 -0
  297. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/lavandula.toml +0 -0
  298. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/liquidcarbon.toml +0 -0
  299. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/liquidcarbontransparent.toml +0 -0
  300. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/liquidcarbontransparentinverse.toml +0 -0
  301. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/lovelace.toml +0 -0
  302. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/man-page.toml +0 -0
  303. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/mariana.toml +0 -0
  304. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/material.toml +0 -0
  305. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/materialdark.toml +0 -0
  306. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/materialdarker.toml +0 -0
  307. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/materialdesigncolors.toml +0 -0
  308. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/materialocean.toml +0 -0
  309. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/mathias.toml +0 -0
  310. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/matrix.toml +0 -0
  311. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/medallion.toml +0 -0
  312. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/mellifluous.toml +0 -0
  313. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/midnight-in-mojave.toml +0 -0
  314. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/mirage.toml +0 -0
  315. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/misterioso.toml +0 -0
  316. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/molokai.toml +0 -0
  317. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/monalisa.toml +0 -0
  318. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/monokai-remastered.toml +0 -0
  319. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/monokai-soda.toml +0 -0
  320. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/monokai-vivid.toml +0 -0
  321. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/n0tch2k.toml +0 -0
  322. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/neobones-dark.toml +0 -0
  323. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/neobones-light.toml +0 -0
  324. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/neon.toml +0 -0
  325. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/neopolitan.toml +0 -0
  326. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/neutron.toml +0 -0
  327. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/night-owlish-light.toml +0 -0
  328. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nightfox.toml +0 -0
  329. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nightlion-v1.toml +0 -0
  330. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nightlion-v2.toml +0 -0
  331. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/niji.toml +0 -0
  332. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nocturnal-winter.toml +0 -0
  333. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nord-light.toml +0 -0
  334. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nord.toml +0 -0
  335. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/novel.toml +0 -0
  336. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nvimdark.toml +0 -0
  337. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/nvimlight.toml +0 -0
  338. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/obsidian.toml +0 -0
  339. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ocean.toml +0 -0
  340. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/oceanic-next.toml +0 -0
  341. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/oceanicmaterial.toml +0 -0
  342. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ollie.toml +0 -0
  343. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/onehalfdark.toml +0 -0
  344. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/onehalflight.toml +0 -0
  345. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/operator-mono-dark.toml +0 -0
  346. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/overnight-slumber.toml +0 -0
  347. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/oxocarbon.toml +0 -0
  348. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/palenighthc.toml +0 -0
  349. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/pandora.toml +0 -0
  350. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/paraiso-dark.toml +0 -0
  351. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/paulmillr.toml +0 -0
  352. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/pencildark.toml +0 -0
  353. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/pencillight.toml +0 -0
  354. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/peppermint.toml +0 -0
  355. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/piatto-light.toml +0 -0
  356. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/pnevma.toml +0 -0
  357. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/popping-and-locking.toml +0 -0
  358. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/primary.toml +0 -0
  359. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/pro-light.toml +0 -0
  360. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/pro.toml +0 -0
  361. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/purple-rain.toml +0 -0
  362. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/purplepeter.toml +0 -0
  363. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rapture.toml +0 -0
  364. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/raycast-dark.toml +0 -0
  365. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/raycast-light.toml +0 -0
  366. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rebecca.toml +0 -0
  367. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/red-alert.toml +0 -0
  368. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/red-planet.toml +0 -0
  369. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/red-sands.toml +0 -0
  370. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/relaxed.toml +0 -0
  371. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/retro.toml +0 -0
  372. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rippedcasts.toml +0 -0
  373. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rose-pine-dawn.toml +0 -0
  374. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rose-pine-moon.toml +0 -0
  375. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rose-pine.toml +0 -0
  376. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/rouge-2.toml +0 -0
  377. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/royal.toml +0 -0
  378. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ryuuko.toml +0 -0
  379. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/sakura.toml +0 -0
  380. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/scarlet-protocol.toml +0 -0
  381. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/seafoam-pastel.toml +0 -0
  382. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/seashells.toml +0 -0
  383. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/seoulbones-dark.toml +0 -0
  384. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/seoulbones-light.toml +0 -0
  385. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/seti.toml +0 -0
  386. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/shades-of-purple.toml +0 -0
  387. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/shaman.toml +0 -0
  388. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/slate.toml +0 -0
  389. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/sleepyhollow.toml +0 -0
  390. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/smyck.toml +0 -0
  391. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/snazzy.toml +0 -0
  392. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/softserver.toml +0 -0
  393. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/solarized-darcula.toml +0 -0
  394. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/solarized-dark---patched.toml +0 -0
  395. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/solarized-dark-higher-contrast.toml +0 -0
  396. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/spacedust.toml +0 -0
  397. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/spacegray-eighties-dull.toml +0 -0
  398. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/spacegray-eighties.toml +0 -0
  399. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/spacegray.toml +0 -0
  400. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/spiderman.toml +0 -0
  401. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/spring.toml +0 -0
  402. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/square.toml +0 -0
  403. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/sublette.toml +0 -0
  404. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/subliminal.toml +0 -0
  405. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/sugarplum.toml +0 -0
  406. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/sundried.toml +0 -0
  407. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/symfonic.toml +0 -0
  408. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/synthwave-everything.toml +0 -0
  409. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/synthwave.toml +0 -0
  410. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/synthwavealpha.toml +0 -0
  411. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tango-adapted.toml +0 -0
  412. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tango-half-adapted.toml +0 -0
  413. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/teerb.toml +0 -0
  414. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/terafox.toml +0 -0
  415. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/terminal-basic.toml +0 -0
  416. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/thayer-bright.toml +0 -0
  417. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/the-hulk.toml +0 -0
  418. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tinacious-design-(dark).toml +0 -0
  419. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tinacious-design-(light).toml +0 -0
  420. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tokyonight-day.toml +0 -0
  421. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tokyonight-storm.toml +0 -0
  422. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tokyonight.toml +0 -0
  423. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tomorrow-night-blue.toml +0 -0
  424. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tomorrow-night-bright.toml +0 -0
  425. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tomorrow-night-burns.toml +0 -0
  426. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tomorrow-night-eighties.toml +0 -0
  427. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tomorrow-night.toml +0 -0
  428. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/tomorrow.toml +0 -0
  429. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/toychest.toml +0 -0
  430. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/treehouse.toml +0 -0
  431. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/twilight.toml +0 -0
  432. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ubuntu.toml +0 -0
  433. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ultradark.toml +0 -0
  434. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/ultraviolent.toml +0 -0
  435. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/underthesea.toml +0 -0
  436. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/unikitty.toml +0 -0
  437. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/urple.toml +0 -0
  438. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/vaughn.toml +0 -0
  439. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/vesper.toml +0 -0
  440. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/vibrantink.toml +0 -0
  441. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/vimbones.toml +0 -0
  442. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/violet-dark.toml +0 -0
  443. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/violet-light.toml +0 -0
  444. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/warmneon.toml +0 -0
  445. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/wez.toml +0 -0
  446. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/whimsy.toml +0 -0
  447. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/wildcherry.toml +0 -0
  448. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/wilmersdorf.toml +0 -0
  449. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/wombat.toml +0 -0
  450. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/wryan.toml +0 -0
  451. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/xcodedark.toml +0 -0
  452. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/xcodedarkhc.toml +0 -0
  453. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/xcodelight.toml +0 -0
  454. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/xcodelighthc.toml +0 -0
  455. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/xcodewwdc.toml +0 -0
  456. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenbones-dark.toml +0 -0
  457. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenbones-light.toml +0 -0
  458. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenbones.toml +0 -0
  459. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenburn.toml +0 -0
  460. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenburned.toml +0 -0
  461. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenwritten-dark.toml +0 -0
  462. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/themes/zenwritten-light.toml +0 -0
  463. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/workflow/__init__.py +0 -0
  464. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/workflow/agent_activities.py +0 -0
  465. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/workflow/temporal_setup.py +0 -0
  466. {flock_core-0.2.12 → flock_core-0.2.14}/src/flock/workflow/workflow.py +0 -0
  467. {flock_core-0.2.12 → flock_core-0.2.14}/tests/integration/test_agent_integration.py +0 -0
  468. {flock_core-0.2.12 → flock_core-0.2.14}/tests/unittests/test_flock_agent.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flock-core
3
- Version: 0.2.12
3
+ Version: 0.2.14
4
4
  Summary: Declarative LLM Orchestration at Scale
5
5
  Author-email: Andre Ratzenberger <andre.ratzenberger@whiteduck.de>
6
6
  License-File: LICENSE
@@ -24,6 +24,7 @@ Requires-Dist: opentelemetry-sdk>=1.30.0
24
24
  Requires-Dist: pydantic>=2.10.5
25
25
  Requires-Dist: python-box>=7.3.2
26
26
  Requires-Dist: python-decouple>=3.8
27
+ Requires-Dist: questionary>=2.1.0
27
28
  Requires-Dist: rich>=13.9.4
28
29
  Requires-Dist: temporalio>=1.9.0
29
30
  Requires-Dist: toml>=0.10.2
@@ -63,6 +64,13 @@ Flock is a framework for orchestrating LLM-powered agents. It leverages a **decl
63
64
  | • Hard to scale and parallelize | • Modular, concurrent, and batch processing |
64
65
  | | |
65
66
 
67
+ ## Video Demonstration
68
+
69
+
70
+ https://github.com/user-attachments/assets/bdab4786-d532-459f-806a-024727164dcc
71
+
72
+
73
+
66
74
 
67
75
  ## Key Innovations
68
76
 
@@ -25,6 +25,13 @@ Flock is a framework for orchestrating LLM-powered agents. It leverages a **decl
25
25
  | • Hard to scale and parallelize | • Modular, concurrent, and batch processing |
26
26
  | | |
27
27
 
28
+ ## Video Demonstration
29
+
30
+
31
+ https://github.com/user-attachments/assets/bdab4786-d532-459f-806a-024727164dcc
32
+
33
+
34
+
28
35
 
29
36
  ## Key Innovations
30
37
 
@@ -0,0 +1,14 @@
1
+
2
+
3
+ from flock.core import FlockAgent
4
+ from flock.core.logging.formatters.pprint_formatter import PrettyPrintFormatter
5
+
6
+
7
+ loaded_bloggy = FlockAgent.load_from_file("examples/data/bloggy.json")
8
+
9
+ result = loaded_bloggy.run(inputs={"blog_idea": "Idea for a blog post."})
10
+ PrettyPrintFormatter().display_data(result)
11
+
12
+
13
+
14
+
@@ -0,0 +1,27 @@
1
+ from typing import Any, Dict
2
+ from flock.core import FlockAgent
3
+ from flock.core.logging.formatters.pprint_formatter import PrettyPrintFormatter
4
+
5
+ # Load agents with custom logic - Everything passed to the constructor is loaded
6
+ custom_bloggy = FlockAgent.load_from_file("examples/data/custom_bloggy.json")
7
+
8
+ result = custom_bloggy.run(inputs={"blog_idea": "Idea for a blog post."})
9
+ PrettyPrintFormatter().display_data(result)
10
+
11
+ # Inherited FlockAgents have to load from their own class
12
+ # so that the custom logic is loaded as well.
13
+ # this won't work:
14
+ inherited_agent = FlockAgent.load_from_file("examples/data/inherited_bloggy.json")
15
+
16
+ result = inherited_agent.run(inputs={"blog_idea": "This will fail"})
17
+ PrettyPrintFormatter().display_data(result)
18
+
19
+ # this will work:
20
+ class MyInheritedAgent(FlockAgent):
21
+ async def evaluate(self, inputs: Dict[str, Any]) -> Dict[str, Any]:
22
+ return {"result": "Hello, world!"}
23
+
24
+ inherited_agent = MyInheritedAgent.load_from_file("examples/data/inherited_bloggy.json")
25
+
26
+ result = inherited_agent.run(inputs={"blog_idea": "Idea for a blog post."})
27
+ PrettyPrintFormatter().display_data(result)
@@ -0,0 +1,10 @@
1
+
2
+
3
+ from flock.core import FlockAgent
4
+ from flock.core.logging.formatters.pprint_formatter import PrettyPrintFormatter
5
+
6
+ # chatty is a rather compley agent. no problem for Flock to load it.
7
+ loaded_bloggy = FlockAgent.load_from_file("examples/data/chatty.json")
8
+
9
+ result = loaded_bloggy.run(inputs={})
10
+ PrettyPrintFormatter().display_data(result)
@@ -0,0 +1,9 @@
1
+
2
+
3
+ from flock.core.flock import Flock
4
+
5
+
6
+ flock = Flock.load_from_file("flock.json")
7
+ agent = flock.agents
8
+
9
+ flock.run(start_agent=agent["bloggy"], input={"blog_idea": "A blog about cats"})
@@ -0,0 +1,13 @@
1
+
2
+
3
+ from typing import Any, Dict, Type
4
+ from flock.core import FlockAgent
5
+ from flock.core.logging.formatters.pprint_formatter import PrettyPrintFormatter
6
+
7
+
8
+ # Save and load agents
9
+
10
+ bloggy = FlockAgent(name="bloggy", input="blog_idea", output="funny_blog_title, blog_headers")
11
+ bloggy.save_to_file("examples/data/bloggy.json")
12
+
13
+
@@ -0,0 +1,30 @@
1
+
2
+
3
+ from typing import Any, Dict, Type
4
+ from flock.core import FlockAgent
5
+ from flock.core.logging.formatters.pprint_formatter import PrettyPrintFormatter
6
+
7
+
8
+ # Save and load agents with custom logic
9
+
10
+ async def evaluate(self, inputs: Dict[str, Any]) -> Dict[str, Any]:
11
+ return {"result": "Hello, world!"}
12
+
13
+ async def on_terminate(agent,input,output):
14
+ print(f"Agent {agent.name} has been terminated.")
15
+
16
+ custom_bloggy = FlockAgent(name="custom_bloggy",
17
+ input="blog_idea",
18
+ output="result",
19
+ terminate_callback=on_terminate,
20
+ evaluate_callback=evaluate)
21
+ custom_bloggy.save_to_file("examples/data/custom_bloggy.json")
22
+
23
+
24
+ class MyInheritedAgent(FlockAgent):
25
+ async def evaluate(self, inputs: Dict[str, Any]) -> Dict[str, Any]:
26
+ return {"result": "Hello, world!"}
27
+
28
+ inherited_agent = MyInheritedAgent(name="inherited_bloggy")
29
+ inherited_agent.save_to_file("examples/data/inherited_bloggy.json")
30
+
@@ -0,0 +1,40 @@
1
+ """
2
+ Title: Building Your First Flock Agent
3
+
4
+ In this example, we'll walk you through creating and running a simple Flock system with a single agent.
5
+ Flock enables you to build LLM-powered agents by simply declaring what data each agent receives and what it
6
+ produces—no more tedious prompt engineering!
7
+
8
+ What you'll learn:
9
+ - How to set up the Flock model (using litellm; check out https://docs.litellm.ai/docs/providers for valid model IDs).
10
+ - How to create a Flock instance that serves as the central orchestrator and context holder.
11
+ - How to define a simple agent (named "bloggy") by declaring its input and output.
12
+ - How to add the agent to your Flock.
13
+ - How to run the agent workflow asynchronously in local debug mode (without needing Temporal).
14
+
15
+ The "bloggy" agent in this example is designed to take a blog idea as input and generate a funny blog title
16
+ along with a list of blog headers as output.
17
+
18
+ Let's get started!
19
+ """
20
+
21
+ import asyncio
22
+
23
+ from flock.core.flock import Flock
24
+ from flock.core.flock_agent import FlockAgent
25
+
26
+
27
+ MODEL = "openai/gpt-4o"
28
+
29
+ flock = Flock(model=MODEL, local_debug=True)
30
+
31
+
32
+ bloggy = FlockAgent(
33
+ name="bloggy",
34
+ input="blog_idea",
35
+ output="funny_blog_title, blog_headers"
36
+ )
37
+ flock.add_agent(bloggy)
38
+
39
+ flock.save_to_file("examples/data/flock.json")
40
+
@@ -75,6 +75,14 @@ class Chat:
75
75
  if self.user_query.lower() == "goodbye":
76
76
  return None
77
77
  return HandOff(next_agent="chatty")
78
+
79
+
80
+ def optimize_memory(optimized_memory:str):
81
+ try:
82
+ with open("memory.txt", "w") as file:
83
+ file.write(optimized_memory)
84
+ except FileNotFoundError:
85
+ pass
78
86
 
79
87
 
80
88
  MODEL = "openai/gpt-4o"
@@ -87,18 +95,29 @@ async def main():
87
95
 
88
96
  chatty = FlockAgent(
89
97
  name="chatty",
90
- description=f"You are Chatty, a friendly assistant that loves to chat. Today is {datetime.now().strftime('%A, %B %d, %Y')}",
98
+ description=f"""You are Chatty, a friendly assistant that loves to chat.
99
+ Today is {datetime.now().strftime('%A, %B %d, %Y')}.
100
+ Use web_search_duckduckgo to search the web,
101
+ +get_web_content_as_markdown to get web content as markdown,
102
+ and code_eval for all tasks that require code execution.
103
+ Save knowledge to memory for future reference.
104
+ Once in a while optimize your knowledge by calling the optimize_memory tool
105
+ with the optimized memory as input.
106
+ """,
91
107
  input="user_query, memory | Memory of previous interactions, chat_history | the current chat history",
92
108
  output="answer_to_query, important_new_knowledge_to_add_to_memory | Empty string if no knowledge to add",
93
109
  initialize_callback=chat_helper.before_response,
94
110
  terminate_callback=chat_helper.after_response,
95
111
  config=FlockAgentConfig(disable_output=True),
96
- tools=[basic_tools.web_search_tavily],
112
+ tools=[basic_tools.web_search_duckduckgo,
113
+ basic_tools.get_web_content_as_markdown,
114
+ basic_tools.code_eval,optimize_memory],
97
115
  )
116
+
98
117
  flock.add_agent(chatty)
99
118
 
100
119
  chatty.hand_off = chat_helper.hand_off
101
-
120
+
102
121
  await flock.run_async(
103
122
  start_agent=chatty,
104
123
  input={"memory": "","user_query": "","chat_history": ""}
@@ -13,7 +13,7 @@ from flock.core.logging import flock_logger, live_update_handler, performance_ha
13
13
  class TemporalLoggingAgent(FlockAgent):
14
14
  """Demo agent that showcases logging with Temporal integration."""
15
15
 
16
- async def run(self, context: FlockContext) -> dict:
16
+ async def run_async(self, context: FlockContext) -> dict:
17
17
  workflow_id = context.state.get("workflow_id", "temporal-demo")
18
18
  flock_logger.set_context(workflow_id=workflow_id)
19
19
 
@@ -97,7 +97,7 @@ async def main():
97
97
  agent = TemporalLoggingAgent(name="local-demo", model="demo-model")
98
98
  context = FlockContext()
99
99
  context.state["workflow_id"] = workflow_id
100
- await agent.run(context)
100
+ await agent.run_async(context)
101
101
  else:
102
102
  # Let our error handler format other errors beautifully
103
103
  raise
@@ -0,0 +1 @@
1
+ {"name": "bloggy", "model": "openai/gpt-4o", "description": "", "input": "blog_idea", "output": "funny_blog_title, blog_headers", "tools": null, "use_cache": true, "hand_off": null, "termination": null, "config": {"agent_type_override": null, "disable_output": false, "temperature": 0.0, "max_tokens": 2000}, "initialize_callback": null, "evaluate_callback": null, "terminate_callback": null, "on_error_callback": null}
@@ -0,0 +1 @@
1
+ {"name": "chatty", "model": "openai/gpt-4o", "description": "You are Chatty, a friendly assistant that loves to chat. Today is Saturday, February 15, 2025", "input": "user_query, memory | Memory of previous interactions, chat_history | the current chat history", "output": "answer_to_query, important_new_knowledge_to_add_to_memory | Empty string if no knowledge to add", "tools": ["80059536000000000000008c1c666c6f636b2e636f72652e746f6f6c732e62617369635f746f6f6c73948c117765625f7365617263685f746176696c799493942e"], "use_cache": true, "hand_off": null, "termination": null, "config": {"agent_type_override": null, "disable_output": true, "temperature": 0.0, "max_tokens": 2000}, "initialize_callback": "800595991a0000000000008c17636c6f75647069636b6c652e636c6f75647069636b6c65948c0d5f6275696c74696e5f747970659493948c0a4d6574686f6454797065948594529468008c0e5f6d616b655f66756e6374696f6e9493942868028c08436f6465547970659485945294284b034b004b004b054b064b8342480100004b000100970074010000000000000000ab000000000000007d0309007403000000000000000064016402ab0200000000000035007d047c046a05000000000000000000000000000000000000ab000000000000007c005f030000000000000000640064006400ab020000000000000100740b00000000000000006a0c0000000000000000000000000000000000006404ab010000000000007c005f0700000000000000007c006a0e0000000000000000000000000000000000007c0264053c0000007c006a100000000000000000000000000000000000007c0264063c0000007c006a060000000000000000000000000000000000007c0264073c0000007900230031007301770201005900010001008c517803590077012300740800000000000000002400720a010064037c005f03000000000000000059008c667700780359007701ad03770194284e8c0a6d656d6f72792e747874948c0172948c00948c1b5b626f6c64206379616e5d557365725b2f626f6c64206379616e5d948c0a757365725f7175657279948c0c636861745f686973746f7279948c066d656d6f7279947494288c07436f6e736f6c65948c046f70656e948c04726561649468128c1146696c654e6f74466f756e644572726f72948c0650726f6d7074948c0361736b94681068117494288c0473656c66948c056167656e74948c06696e70757473948c07636f6e736f6c65948c0466696c659474948c3b643a5c50726f6a656374735c666c6f636b5c6578616d706c65735c30325f636f6f6b5f626f6f6b5c73656c665f696d70726f76656d656e742e7079948c0f6265666f72655f726573706f6e7365948c14436861742e6265666f72655f726573706f6e7365944b1c438ce800f88000dc121993298807f00404091ddc1115906ca043d41128a844d81e229f6999699b6b9004940bf703001229f40c001b219f2a992ad02542d31a4388048c0fd81f239f7f997f8806887cd1081cd82125d72132d121328806887ed1081ed81b1f9f3b993b88068878d20818f713001229d01128fbe40f20f20001091dd81a1c88448e4bf00301091dfc94433e820b4222018e0c420c009a16420003b008420c00b84108422201c20005420907c20507420c00c20c10421f03c21c02422201c21e01421f03c21f03422201942929749452947d94288c0b5f5f7061636b6167655f5f944e8c085f5f6e616d655f5f948c085f5f6d61696e5f5f948c085f5f66696c655f5f946821754e4e4e7494529468008c125f66756e6374696f6e5f7365747374617465949394682e7d947d9428682a8c0f6265666f72655f726573706f6e7365948c0c5f5f7175616c6e616d655f5f948c14436861742e6265666f72655f726573706f6e7365948c0f5f5f616e6e6f746174696f6e735f5f947d948c0e5f5f6b7764656661756c74735f5f944e8c0c5f5f64656661756c74735f5f944e8c0a5f5f6d6f64756c655f5f94682b8c075f5f646f635f5f944e8c0b5f5f636c6f737572655f5f944e8c175f636c6f75647069636b6c655f7375626d6f64756c6573945d948c0b5f5f676c6f62616c735f5f947d942868148c0c726963682e636f6e736f6c65946814939468188c0b726963682e70726f6d707494681893947575869486523068008c145f6d616b655f736b656c65746f6e5f636c617373949394288c086275696c74696e73948c04747970659493948c04436861749468488c066f626a65637494939485947d94683a682b738c206431613137373932326538383462656338303536613963303637613930373335944e7494529468008c0f5f636c6173735f736574737461746594939468527d94288c0f5f5f616e6e6f746174696f6e735f5f947d9428681168028c0c47656e65726963416c696173948594529468488c046c69737494939468488c037374729493948594869452946810685e8c0f616e737765725f746f5f717565727994685e6812685e758c145f5f64617461636c6173735f6669656c64735f5f947d942868118c0b64617461636c6173736573948c054669656c649493942981944e7d94288c046e616d659468118c04747970659468618c0764656661756c749468658c0d5f4d495353494e475f545950459493942981948c0f64656661756c745f666163746f727994685c8c047265707294888c0468617368944e8c04696e697494888c07636f6d7061726594888c086d657461646174619468028c104d617070696e6750726f78795479706594859452947d94859452948c076b775f6f6e6c7994898c0b5f6669656c645f747970659468008c225f6765745f64617461636c6173735f6669656c645f747970655f73656e74696e656c9493948c065f4649454c44948594529475869462681068672981944e7d9428686a6810686b685e686c680e6870686f68718868724e6873886874886875687b687c89687d688275869462686268672981944e7d9428686a6862686b685e686c680e6870686f68718868724e6873886874886875687b687c89687d688275869462681268672981944e7d9428686a6812686b685e686c680e6870686f68718868724e6873886874886875687b687c89687d688275869462758c145f5f64617461636c6173735f706172616d735f5f9468658c105f44617461636c617373506172616d739493942981944e7d94286873886871888c02657194888c056f7264657294898c0b756e736166655f6861736894898c0666726f7a656e94898c0a6d617463685f617267739488687c898c05736c6f747394898c0c7765616b7265665f736c6f749489758694628c075f5f646f635f5f948c6c4368617428636861745f686973746f72793a206c6973745b7374725d203d203c666163746f72793e2c20757365725f71756572793a20737472203d2027272c20616e737765725f746f5f71756572793a20737472203d2027272c206d656d6f72793a20737472203d20272729948c065f5f65715f5f94680728680a284b024b004b004b024b054b1343f897007c016a000000000000000000000000000000000000007c006a000000000000000000000000000000000000007500725d7c006a020000000000000000000000000000000000007c006a040000000000000000000000000000000000007c006a060000000000000000000000000000000000007c006a0800000000000000000000000000000000000066047c016a020000000000000000000000000000000000007c016a040000000000000000000000000000000000007c016a060000000000000000000000000000000000007c016a0800000000000000000000000000000000000066046b2800005300740a00000000000000005300944e8594288c095f5f636c6173735f5f9468116810686268128c0e4e6f74496d706c656d656e746564947494681b8c056f746865729486948c083c737472696e673e948c065f5f65715f5f948c1d5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f65715f5f944b0243838000d8050a875f815f98049f0e990ed10526d80b0fd70b1cd10b1c98549f5f995fa854d72d41d12d41c024c72bc12bd00a4fd05257d75264d15264d0656ad76575d16575d0767bf7000077014c02f1000077014c02f000004d025202f700004d025902f100004d025902f0000052015b02f100000b5b02f00000045b02dc0917d002179443009429297494529468284e4e4e74945294683068ac7d947d9428682a8c065f5f65715f5f9468348c0b436861742e5f5f65715f5f9468367d9468384e68394e683a682b683b4e683c4e683d5d94683f7d947586948652308c085f5f686173685f5f944e8c085f5f696e69745f5f94680728680a284b054b004b004b054b024b134354950297007c0189057500720702008906ab000000000000006e017c017c005f0000000000000000007c027c005f0100000000000000007c037c005f0200000000000000007c047c005f0300000000000000007900944e8594286811681068626812749428681b6811681068626812749468a48c085f5f696e69745f5f948c1f5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f696e69745f5f944b024330f88000d83945d0496ad1396ad11433d41435d0707c8024d40213d8121c8024842fd817268024d40216d80e148024852b9468a88c215f5f64617461636c6173735f4841535f44454641554c545f464143544f52595f5f948c1f5f5f64617461636c6173735f64666c745f636861745f686973746f72795f5f948694297494529468284e4e68008c105f6d616b655f656d7074795f63656c6c94939429529468c4295294869474945294683068c97d947d9428682a8c085f5f696e69745f5f9468348c0d436861742e5f5f696e69745f5f9468367d9428681168616810685e6862685e6812685e8c0672657475726e944e7568384e68392868658c1a5f4841535f44454641554c545f464143544f52595f434c415353949394298194680e680e680e7494683a682b683b4e683c68008c0a5f6d616b655f63656c6c94939468d28594529468d5685c859452948694683d5d94683f7d947586948652308c0e5f5f6d617463685f617267735f5f9428681168106862681274948c0a5f5f6d6f64756c655f5f94682b8c085f5f726570725f5f94680728680a284b014b004b004b034b054b1343d295029700740100000000000000007c00ab01000000000000740300000000000000006a04000000000000000000000000000000000000ab0000000000000066027d017c01890376007201790189036a070000000000000000000000000000000000007c01ab0100000000000001000900020089047c00ab010000000000007d0289036a090000000000000000000000000000000000007c01ab0100000000000001007c025300230089036a090000000000000000000000000000000000007c01ab0100000000000001007700780359007701944e8c032e2e2e948694288c026964948c075f746872656164948c096765745f6964656e74948c03616464948c0764697363617264947494681b8c036b6579948c06726573756c749487948c5e433a5c55736572735c617261747a5c417070446174615c526f616d696e675c75765c707974686f6e5c63707974686f6e2d332e31322e382d77696e646f77732d7838365f36342d6e6f6e655c4c69625c64617461636c61737365732e7079948c0777726170706572948c205f7265637572736976655f726570722e3c6c6f63616c733e2e77726170706572944bff4367f88000e40e1090148b689c07d71829d11829d3182bd00e2b8803d80b0e902cd10b1ed81318d80814d70818d108189813d4081df002030926d91522a034d315288846e00c18d70c20d10c20a013d40c25d80f15880df8f003000d19d70c20d10c20a013d50c25fa94430bb808411300c11313412603948c0c726570725f72756e6e696e67948c0d757365725f66756e6374696f6e94869429749452947d94286829680e682a6865682c8c5e433a5c55736572735c617261747a5c417070446174615c526f616d696e675c75765c707974686f6e5c63707974686f6e2d332e31322e382d77696e646f77732d7838365f36342d6e6f6e655c4c69625c64617461636c61737365732e707994754e4e68c429529468c4295294869474945294683068fe7d948c0b5f5f777261707065645f5f94680728680a284b014b004b004b014b0a4b13439e97007c006a000000000000000000000000000000000000006a0200000000000000000000000000000000000064017c006a040000000000000000000000000000000000009b0264027c006a060000000000000000000000000000000000009b0264037c006a080000000000000000000000000000000000009b0264047c006a0a0000000000000000000000000000000000009b0264059d097a000000530094284e8c0e28636861745f686973746f72793d948c0d2c20757365725f71756572793d948c122c20616e737765725f746f5f71756572793d948c092c206d656d6f72793d948c012994749428689f683468116810686268127494681b859468a48c085f5f726570725f5f948c1f5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f726570725f5f944b0243858000d8090d8f1e891ed70924d10924a81eb804d73849d13849d0374cc84dd05a5ed75a69d15a69d0596cd06c7ef0000040024402f7000040025402f1000040025402f000007f015702f0000057026002f0000061026502f7000061026c02f1000061026c02f0000060026f02f000006f027002f00000287102f100000a7102f000000371029468a829297494529468284e4e4e7494529468306a100100007d947d9428682a8c085f5f726570725f5f9468348c1f5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f726570725f5f9468367d9468384e68394e683a682b683b4e683c4e683d5d94683f7d94758694865230737d9428682a8c085f5f726570725f5f9468348c0d436861742e5f5f726570725f5f9468366a1501000068384e68394e683a682b683b4e683c68d58f948594529468d56a10010000859452948694683d5d94683f7d9468e668008c09737562696d706f727494939468e685945294737586948652308c0d5f5f736c6f746e616d65735f5f945d948c0e61667465725f726573706f6e736594680728680a284b044b004b004b094b064b8342180200004b000100970074010000000000000000ab000000000000007d047c036401190000007c005f0100000000000000007c006a040000000000000000000000000000000000006a070000000000000000000000000000000000007c006a080000000000000000000000000000000000007c006a0200000000000000000000000000000000000064029c02ab0100000000000001007c0078016a0a0000000000000000000000000000000000007c036a0d00000000000000000000000000000000000064036404ab0200000000000064057a0000007a0d000063025f050000000000000000740f000000000000000064066407ab0200000000000035007d057c056a110000000000000000000000000000000000007c006a0a000000000000000000000000000000000000ab010000000000000100640064006400ab0200000000000001007c036a0d00000000000000000000000000000000000064086404ab020000000000007d067c06721f741300000000000000007c066409640aac0bab030000000000007d077c046a150000000000000000000000000000000000007c07ab010000000000000100741300000000000000007c006a02000000000000000000000000000000000000640c640dac0bab030000000000007d087c046a150000000000000000000000000000000000007c08ab0100000000000001007900230031007301770201005900010001008c66780359007701ad03770194284e68628c0475736572948c09617373697374616e749486948c28696d706f7274616e745f6e65775f6b6e6f776c656467655f746f5f6164645f746f5f6d656d6f727994680e8c010a94680c8c0177948c09726561736f6e696e67948c2a5b626f6c6420626c75655d417373697374616e7420526561736f6e696e675b2f626f6c6420626c75655d948c04626c7565948c057469746c65948c0c626f726465725f7374796c659486948c295b626f6c6420677265656e5d417373697374616e7420416e737765725b2f626f6c6420677265656e5d948c05677265656e947494286814686268118c06617070656e6494681068128c036765749468158c057772697465948c0550616e656c948c057072696e7494749428681b681c681d8c076f75747075747394681e681f6a330100008c0f726561736f6e696e675f70616e656c948c0c616e737765725f70616e656c94749468218c0e61667465725f726573706f6e7365948c13436861742e61667465725f726573706f6e7365944b2c43e8e800f88000e4121993298807d81f26d02738d11f398804d4081cd8080cd70819d10819d70820d10820a824af2fa92fc804d7485cd1485cd1215dd4085ed8080c8f0b8a0b9077977b917bd0234dc872d31752d05559d11759d108598d0bf406000e12902ca003d40d24a804d80c108f4a894a9074977b917bd40c23f703000e25f00800151c974b914ba00ba852d314308809d90b14dc1e23d81019d81642d81d23f407041f0e884ff00a000d148f4d894d982fd40c2af40600181dd80c10d70c20d10c20d8123dd81920f40704180a880cf00a0009108f0d890d906cd50823f727000e25d00d24fc94431f82413b440a01c13d1c433e03c2194125440a01c33e05440707c40307440a019429297494529468284e4e4e7494529468306a4d0100007d947d9428682a8c0e61667465725f726573706f6e73659468348c13436861742e61667465725f726573706f6e73659468367d9468384e68394e683a682b683b4e683c4e683d5d94683f7d9428681468426a3f0100008c0a726963682e70616e656c946a3f0100009394757586948652308c0f616e737765725f746f5f717565727994680e8c0f6265666f72655f726573706f6e736594682e8c0868616e645f6f666694680728680a284b034b004b004b034b034b03435697007c006a000000000000000000000000000000000000006a03000000000000000000000000000000000000ab0000000000000064016b28000072017900740500000000000000006402ac03ab01000000000000530094284e8c07676f6f64627965948c06636861747479948c0a6e6578745f6167656e74948594749468108c056c6f776572948c0748616e644f6666948794681b8c07636f6e746578749468ec879468218c0868616e645f6f6666948c0d436861742e68616e645f6f6666944b4a43258000d80b0f8f3f893fd70b20d10b20d30b22a069d20b2fd81317dc0f16a028d40f2bd0082b9468a829297494529468284e4e4e7494529468306a6c0100007d947d9428682a8c0868616e645f6f66669468348c0d436861742e68616e645f6f66669468367d9468384e68394e683a682b683b4e683c4e683d5d94683f7d946a620100008c16666c6f636b2e636f72652e666c6f636b5f6167656e74946a620100009394737586948652308c066d656d6f727994680e8c0a757365725f717565727994680e757d9486948652302981947d942868115d946810680e6862680e6812680e7562869452942e", "evaluate_callback": null, "terminate_callback": "800595991a0000000000008c17636c6f75647069636b6c652e636c6f75647069636b6c65948c0d5f6275696c74696e5f747970659493948c0a4d6574686f6454797065948594529468008c0e5f6d616b655f66756e6374696f6e9493942868028c08436f6465547970659485945294284b044b004b004b094b064b8342180200004b000100970074010000000000000000ab000000000000007d047c036401190000007c005f0100000000000000007c006a040000000000000000000000000000000000006a070000000000000000000000000000000000007c006a080000000000000000000000000000000000007c006a0200000000000000000000000000000000000064029c02ab0100000000000001007c0078016a0a0000000000000000000000000000000000007c036a0d00000000000000000000000000000000000064036404ab0200000000000064057a0000007a0d000063025f050000000000000000740f000000000000000064066407ab0200000000000035007d057c056a110000000000000000000000000000000000007c006a0a000000000000000000000000000000000000ab010000000000000100640064006400ab0200000000000001007c036a0d00000000000000000000000000000000000064086404ab020000000000007d067c06721f741300000000000000007c066409640aac0bab030000000000007d077c046a150000000000000000000000000000000000007c07ab010000000000000100741300000000000000007c006a02000000000000000000000000000000000000640c640dac0bab030000000000007d087c046a150000000000000000000000000000000000007c08ab0100000000000001007900230031007301770201005900010001008c66780359007701ad03770194284e8c0f616e737765725f746f5f7175657279948c0475736572948c09617373697374616e749486948c28696d706f7274616e745f6e65775f6b6e6f776c656467655f746f5f6164645f746f5f6d656d6f7279948c00948c010a948c0a6d656d6f72792e747874948c0177948c09726561736f6e696e67948c2a5b626f6c6420626c75655d417373697374616e7420526561736f6e696e675b2f626f6c6420626c75655d948c04626c7565948c057469746c65948c0c626f726465725f7374796c659486948c295b626f6c6420677265656e5d417373697374616e7420416e737765725b2f626f6c6420677265656e5d948c05677265656e947494288c07436f6e736f6c6594680c8c0c636861745f686973746f7279948c06617070656e64948c0a757365725f7175657279948c066d656d6f7279948c03676574948c046f70656e948c057772697465948c0550616e656c948c057072696e74947494288c0473656c66948c056167656e74948c06696e70757473948c076f757470757473948c07636f6e736f6c65948c0466696c659468158c0f726561736f6e696e675f70616e656c948c0c616e737765725f70616e656c9474948c3b643a5c50726f6a656374735c666c6f636b5c6578616d706c65735c30325f636f6f6b5f626f6f6b5c73656c665f696d70726f76656d656e742e7079948c0e61667465725f726573706f6e7365948c13436861742e61667465725f726573706f6e7365944b2c43e8e800f88000e4121993298807d81f26d02738d11f398804d4081cd8080cd70819d10819d70820d10820a824af2fa92fc804d7485cd1485cd1215dd4085ed8080c8f0b8a0b9077977b917bd0234dc872d31752d05559d11759d108598d0bf406000e12902ca003d40d24a804d80c108f4a894a9074977b917bd40c23f703000e25f00800151c974b914ba00ba852d314308809d90b14dc1e23d81019d81642d81d23f407041f0e884ff00a000d148f4d894d982fd40c2af40600181dd80c10d70c20d10c20d8123dd81920f40704180a880cf00a0009108f0d890d906cd50823f727000e25d00d24fc94431f82413b440a01c13d1c433e03c2194125440a01c33e05440707c40307440a01942929749452947d94288c0b5f5f7061636b6167655f5f944e8c085f5f6e616d655f5f948c085f5f6d61696e5f5f948c085f5f66696c655f5f946832754e4e4e7494529468008c125f66756e6374696f6e5f7365747374617465949394683f7d947d9428683b8c0e61667465725f726573706f6e7365948c0c5f5f7175616c6e616d655f5f948c13436861742e61667465725f726573706f6e7365948c0f5f5f616e6e6f746174696f6e735f5f947d948c0e5f5f6b7764656661756c74735f5f944e8c0c5f5f64656661756c74735f5f944e8c0a5f5f6d6f64756c655f5f94683c8c075f5f646f635f5f944e8c0b5f5f636c6f737572655f5f944e8c175f636c6f75647069636b6c655f7375626d6f64756c6573945d948c0b5f5f676c6f62616c735f5f947d9428681e8c0c726963682e636f6e736f6c6594681e939468268c0a726963682e70616e656c94682693947575869486523068008c145f6d616b655f736b656c65746f6e5f636c617373949394288c086275696c74696e73948c04747970659493948c04436861749468598c066f626a65637494939485947d94684b683c738c206431613137373932326538383462656338303536613963303637613930373335944e7494529468008c0f5f636c6173735f736574737461746594939468637d94288c0f5f5f616e6e6f746174696f6e735f5f947d9428681f68028c0c47656e65726963416c696173948594529468598c046c69737494939468598c037374729493948594869452946821686f680c686f6822686f758c145f5f64617461636c6173735f6669656c64735f5f947d9428681f8c0b64617461636c6173736573948c054669656c649493942981944e7d94288c046e616d6594681f8c04747970659468728c0764656661756c749468758c0d5f4d495353494e475f545950459493942981948c0f64656661756c745f666163746f727994686d8c047265707294888c0468617368944e8c04696e697494888c07636f6d7061726594888c086d657461646174619468028c104d617070696e6750726f78795479706594859452947d94859452948c076b775f6f6e6c7994898c0b5f6669656c645f747970659468008c225f6765745f64617461636c6173735f6669656c645f747970655f73656e74696e656c9493948c065f4649454c44948594529475869462682168772981944e7d9428687a6821687b686f687c68116880687f68818868824e6883886884886885688b688c89688d689275869462680c68772981944e7d9428687a680c687b686f687c68116880687f68818868824e6883886884886885688b688c89688d689275869462682268772981944e7d9428687a6822687b686f687c68116880687f68818868824e6883886884886885688b688c89688d689275869462758c145f5f64617461636c6173735f706172616d735f5f9468758c105f44617461636c617373506172616d739493942981944e7d94286883886881888c02657194888c056f7264657294898c0b756e736166655f6861736894898c0666726f7a656e94898c0a6d617463685f617267739488688c898c05736c6f747394898c0c7765616b7265665f736c6f749489758694628c075f5f646f635f5f948c6c4368617428636861745f686973746f72793a206c6973745b7374725d203d203c666163746f72793e2c20757365725f71756572793a20737472203d2027272c20616e737765725f746f5f71756572793a20737472203d2027272c206d656d6f72793a20737472203d20272729948c065f5f65715f5f94680728680a284b024b004b004b024b054b1343f897007c016a000000000000000000000000000000000000007c006a000000000000000000000000000000000000007500725d7c006a020000000000000000000000000000000000007c006a040000000000000000000000000000000000007c006a060000000000000000000000000000000000007c006a0800000000000000000000000000000000000066047c016a020000000000000000000000000000000000007c016a040000000000000000000000000000000000007c016a060000000000000000000000000000000000007c016a0800000000000000000000000000000000000066046b2800005300740a00000000000000005300944e8594288c095f5f636c6173735f5f94681f6821680c68228c0e4e6f74496d706c656d656e74656494749468298c056f746865729486948c083c737472696e673e948c065f5f65715f5f948c1d5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f65715f5f944b0243838000d8050a875f815f98049f0e990ed10526d80b0fd70b1cd10b1c98549f5f995fa854d72d41d12d41c024c72bc12bd00a4fd05257d75264d15264d0656ad76575d16575d0767bf7000077014c02f1000077014c02f000004d025202f700004d025902f100004d025902f0000052015b02f100000b5b02f00000045b02dc0917d002179443009429297494529468394e4e4e74945294684168bc7d947d9428683b8c065f5f65715f5f9468458c0b436861742e5f5f65715f5f9468477d9468494e684a4e684b683c684c4e684d4e684e5d9468507d947586948652308c085f5f686173685f5f944e8c085f5f696e69745f5f94680728680a284b054b004b004b054b024b134354950297007c0189057500720702008906ab000000000000006e017c017c005f0000000000000000007c027c005f0100000000000000007c037c005f0200000000000000007c047c005f0300000000000000007900944e859428681f6821680c68227494286829681f6821680c6822749468b48c085f5f696e69745f5f948c1f5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f696e69745f5f944b024330f88000d83945d0496ad1396ad11433d41435d0707c8024d40213d8121c8024842fd817268024d40216d80e148024852b9468b88c215f5f64617461636c6173735f4841535f44454641554c545f464143544f52595f5f948c1f5f5f64617461636c6173735f64666c745f636861745f686973746f72795f5f948694297494529468394e4e68008c105f6d616b655f656d7074795f63656c6c94939429529468d4295294869474945294684168d97d947d9428683b8c085f5f696e69745f5f9468458c0d436861742e5f5f696e69745f5f9468477d9428681f68726821686f680c686f6822686f8c0672657475726e944e7568494e684a2868758c1a5f4841535f44454641554c545f464143544f52595f434c4153539493942981946811681168117494684b683c684c4e684d68008c0a5f6d616b655f63656c6c94939468e28594529468e5686d859452948694684e5d9468507d947586948652308c0e5f5f6d617463685f617267735f5f9428681f6821680c682274948c0a5f5f6d6f64756c655f5f94683c8c085f5f726570725f5f94680728680a284b014b004b004b034b054b1343d295029700740100000000000000007c00ab01000000000000740300000000000000006a04000000000000000000000000000000000000ab0000000000000066027d017c01890376007201790189036a070000000000000000000000000000000000007c01ab0100000000000001000900020089047c00ab010000000000007d0289036a090000000000000000000000000000000000007c01ab0100000000000001007c025300230089036a090000000000000000000000000000000000007c01ab0100000000000001007700780359007701944e8c032e2e2e948694288c026964948c075f746872656164948c096765745f6964656e74948c03616464948c076469736361726494749468298c036b6579948c06726573756c749487948c5e433a5c55736572735c617261747a5c417070446174615c526f616d696e675c75765c707974686f6e5c63707974686f6e2d332e31322e382d77696e646f77732d7838365f36342d6e6f6e655c4c69625c64617461636c61737365732e7079948c0777726170706572948c205f7265637572736976655f726570722e3c6c6f63616c733e2e77726170706572944bff4367f88000e40e1090148b689c07d71829d11829d3182bd00e2b8803d80b0e902cd10b1ed81318d80814d70818d108189813d4081df002030926d91522a034d315288846e00c18d70c20d10c20a013d40c25d80f15880df8f003000d19d70c20d10c20a013d50c25fa94430bb808411300c11313412603948c0c726570725f72756e6e696e67948c0d757365725f66756e6374696f6e94869429749452947d9428683a6811683b6875683d8c5e433a5c55736572735c617261747a5c417070446174615c526f616d696e675c75765c707974686f6e5c63707974686f6e2d332e31322e382d77696e646f77732d7838365f36342d6e6f6e655c4c69625c64617461636c61737365732e707994754e4e68d429529468d429529486947494529468416a0e0100007d948c0b5f5f777261707065645f5f94680728680a284b014b004b004b014b0a4b13439e97007c006a000000000000000000000000000000000000006a0200000000000000000000000000000000000064017c006a040000000000000000000000000000000000009b0264027c006a060000000000000000000000000000000000009b0264037c006a080000000000000000000000000000000000009b0264047c006a0a0000000000000000000000000000000000009b0264059d097a000000530094284e8c0e28636861745f686973746f72793d948c0d2c20757365725f71756572793d948c122c20616e737765725f746f5f71756572793d948c092c206d656d6f72793d948c01299474942868af6845681f6821680c682274946829859468b48c085f5f726570725f5f948c1f5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f726570725f5f944b0243858000d8090d8f1e891ed70924d10924a81eb804d73849d13849d0374cc84dd05a5ed75a69d15a69d0596cd06c7ef0000040024402f7000040025402f1000040025402f000007f015702f0000057026002f0000061026502f7000061026c02f1000061026c02f0000060026f02f000006f027002f00000287102f100000a7102f000000371029468b829297494529468394e4e4e7494529468416a200100007d947d9428683b8c085f5f726570725f5f9468458c1f5f5f6372656174655f666e5f5f2e3c6c6f63616c733e2e5f5f726570725f5f9468477d9468494e684a4e684b683c684c4e684d4e684e5d9468507d94758694865230737d9428683b8c085f5f726570725f5f9468458c0d436861742e5f5f726570725f5f9468476a2501000068494e684a4e684b683c684c4e684d68e58f948594529468e56a20010000859452948694684e5d9468507d9468f668008c09737562696d706f727494939468f685945294737586948652308c0d5f5f736c6f746e616d65735f5f945d948c0e61667465725f726573706f6e736594683f8c0f616e737765725f746f5f71756572799468118c0f6265666f72655f726573706f6e736594680728680a284b034b004b004b054b064b8342480100004b000100970074010000000000000000ab000000000000007d0309007403000000000000000064016402ab0200000000000035007d047c046a05000000000000000000000000000000000000ab000000000000007c005f030000000000000000640064006400ab020000000000000100740b00000000000000006a0c0000000000000000000000000000000000006404ab010000000000007c005f0700000000000000007c006a0e0000000000000000000000000000000000007c0264053c0000007c006a100000000000000000000000000000000000007c0264063c0000007c006a060000000000000000000000000000000000007c0264073c0000007900230031007301770201005900010001008c517803590077012300740800000000000000002400720a010064037c005f03000000000000000059008c667700780359007701ad03770194284e68138c01729468118c1b5b626f6c64206379616e5d557365725b2f626f6c64206379616e5d946821681f6822749428681e68248c04726561649468228c1146696c654e6f74466f756e644572726f72948c0650726f6d7074948c0361736b946821681f7494286829682a682b682d682e749468328c0f6265666f72655f726573706f6e7365948c14436861742e6265666f72655f726573706f6e7365944b1c438ce800f88000dc121993298807f00404091ddc1115906ca043d41128a844d81e229f6999699b6b9004940bf703001229f40c001b219f2a992ad02542d31a4388048c0fd81f239f7f997f8806887cd1081cd82125d72132d121328806887ed1081ed81b1f9f3b993b88068878d20818f713001229d01128fbe40f20f20001091dd81a1c88448e4bf00301091dfc94433e820b4222018e0c420c009a16420003b008420c00b84108422201c20005420907c20507420c00c20c10421f03c21c02422201c21e01421f03c21f034222019429297494529468394e4e4e7494529468416a4f0100007d947d9428683b8c0f6265666f72655f726573706f6e73659468458c14436861742e6265666f72655f726573706f6e73659468477d9468494e684a4e684b683c684c4e684d4e684e5d9468507d9428681e68536a440100008c0b726963682e70726f6d7074946a440100009394757586948652308c0868616e645f6f666694680728680a284b034b004b004b034b034b03435697007c006a000000000000000000000000000000000000006a03000000000000000000000000000000000000ab0000000000000064016b28000072017900740500000000000000006402ac03ab01000000000000530094284e8c07676f6f64627965948c06636861747479948c0a6e6578745f6167656e74948594749468218c056c6f776572948c0748616e644f666694879468298c07636f6e746578749468fc879468328c0868616e645f6f6666948c0d436861742e68616e645f6f6666944b4a43258000d80b0f8f3f893fd70b20d10b20d30b22a069d20b2fd81317dc0f16a028d40f2bd0082b9468b829297494529468394e4e4e7494529468416a6c0100007d947d9428683b8c0868616e645f6f66669468458c0d436861742e68616e645f6f66669468477d9468494e684a4e684b683c684c4e684d4e684e5d9468507d946a620100008c16666c6f636b2e636f72652e666c6f636b5f6167656e74946a620100009394737586948652308c066d656d6f72799468118c0a757365725f7175657279946811757d9486948652302981947d9428681f5d9468216811680c6811682268117562869452942e", "on_error_callback": null}
@@ -0,0 +1 @@
1
+ {"name": "custom_bloggy", "model": "openai/gpt-4o", "description": "", "input": "blog_idea", "output": "result", "tools": null, "use_cache": true, "hand_off": null, "termination": null, "config": {"agent_type_override": null, "disable_output": false, "temperature": 0.0, "max_tokens": 2000}, "initialize_callback": null, "evaluate_callback": "80059593020000000000008c17636c6f75647069636b6c652e636c6f75647069636b6c65948c0e5f6d616b655f66756e6374696f6e9493942868008c0d5f6275696c74696e5f747970659493948c08436f6465547970659485945294284b024b004b004b024b024b8343124b00010097006401640269015300ad037701944e8c06726573756c74948c0d48656c6c6f2c20776f726c6421948794298c0473656c66948c06696e707574739486948c412f55736572732f617261747a2f666c6f636b2f6578616d706c65732f30325f636f6f6b5f626f6f6b2f736176655f616e645f6c6f61642f736176655f30322e7079948c086576616c75617465948c086576616c75617465944b0a4311e800f88000d80c14906fd00b26d00426f994430482050701942929749452947d94288c0b5f5f7061636b6167655f5f948c00948c085f5f6e616d655f5f948c085f5f6d61696e5f5f948c085f5f66696c655f5f94680f754e4e4e7494529468008c125f66756e6374696f6e5f7365747374617465949394681d7d947d942868198c086576616c75617465948c0c5f5f7175616c6e616d655f5f948c086576616c75617465948c0f5f5f616e6e6f746174696f6e735f5f947d9428680d8c095f6f70657261746f72948c076765746974656d9493948c06747970696e67948c04446963749493948c086275696c74696e73948c03737472949394682a8c03416e799493948694869452948c0672657475726e946834758c0e5f5f6b7764656661756c74735f5f944e8c0c5f5f64656661756c74735f5f944e8c0a5f5f6d6f64756c655f5f94681a8c075f5f646f635f5f944e8c0b5f5f636c6f737572655f5f944e8c175f636c6f75647069636b6c655f7375626d6f64756c6573945d948c0b5f5f676c6f62616c735f5f947d947586948652302e", "terminate_callback": "8005959f020000000000008c17636c6f75647069636b6c652e636c6f75647069636b6c65948c0e5f6d616b655f66756e6374696f6e9493942868008c0d5f6275696c74696e5f747970659493948c08436f6465547970659485945294284b034b004b004b034b054b83433e4b00010097007401000000000000000064017c006a020000000000000000000000000000000000009b0064029d03ab0100000000000001007900ad037701944e8c064167656e7420948c1520686173206265656e207465726d696e617465642e9487948c057072696e74948c046e616d659486948c056167656e74948c05696e707574948c066f75747075749487948c412f55736572732f617261747a2f666c6f636b2f6578616d706c65732f30325f636f6f6b5f626f6f6b2f736176655f616e645f6c6f61642f736176655f30322e7079948c0c6f6e5f7465726d696e617465948c0c6f6e5f7465726d696e617465944b0d431ce800f88000dc040988469035973a913a902cd01e33d00a34d50435f9944304821b1d01942929749452947d94288c0b5f5f7061636b6167655f5f948c00948c085f5f6e616d655f5f948c085f5f6d61696e5f5f948c085f5f66696c655f5f946813754e4e4e7494529468008c125f66756e6374696f6e5f736574737461746594939468217d947d9428681d8c0c6f6e5f7465726d696e617465948c0c5f5f7175616c6e616d655f5f948c0c6f6e5f7465726d696e617465948c0f5f5f616e6e6f746174696f6e735f5f947d948c0e5f5f6b7764656661756c74735f5f944e8c0c5f5f64656661756c74735f5f944e8c0a5f5f6d6f64756c655f5f94681e8c075f5f646f635f5f944e8c0b5f5f636c6f737572655f5f944e8c175f636c6f75647069636b6c655f7375626d6f64756c6573945d948c0b5f5f676c6f62616c735f5f947d947586948652302e", "on_error_callback": null}
@@ -0,0 +1 @@
1
+ 8005952a050000000000008c10666c6f636b2e636f72652e666c6f636b948c05466c6f636b9493942981947d94288c066167656e7473947d948c06626c6f676779948c16666c6f636b2e636f72652e666c6f636b5f6167656e74948c0a466c6f636b4167656e749493942981947d94288c085f5f646963745f5f947d94288c046e616d659468078c056d6f64656c948c0d6f70656e61692f6770742d346f948c0b6465736372697074696f6e948c00948c05696e707574948c09626c6f675f69646561948c066f7574707574948c1e66756e6e795f626c6f675f7469746c652c20626c6f675f68656164657273948c05746f6f6c73944e8c097573655f636163686594888c0868616e645f6f6666944e8c0b7465726d696e6174696f6e944e8c06636f6e6669679468088c10466c6f636b4167656e74436f6e6669679493942981947d94288c136167656e745f747970655f6f76657272696465944e8c0e64697361626c655f6f757470757494898c0b74656d7065726174757265944700000000000000008c0a6d61785f746f6b656e73944dd00775628c13696e697469616c697a655f63616c6c6261636b944e8c116576616c756174655f63616c6c6261636b944e8c127465726d696e6174655f63616c6c6261636b944e8c116f6e5f6572726f725f63616c6c6261636b944e758c125f5f707964616e7469635f65787472615f5f944e8c175f5f707964616e7469635f6669656c64735f7365745f5f948f94286816680f6814908c145f5f707964616e7469635f707269766174655f5f944e7562738c087265676973747279948c22666c6f636b2e636f72652e72656769737472792e6167656e745f7265676973747279948c0852656769737472799493942981947d94288c075f6167656e7473945d94680b618c065f746f6f6c73945d9475628c07636f6e74657874948c1a666c6f636b2e636f72652e636f6e746578742e636f6e74657874948c0c466c6f636b436f6e746578749493942981947d94288c057374617465947d948c07686973746f7279945d948c116167656e745f646566696e6974696f6e73947d94680768388c0f4167656e74446566696e6974696f6e9493942981947d94288c0a6167656e745f747970659468098c0a6167656e745f6e616d659468078c0a6167656e745f64617461947d9428680f68076810681168126813681468156816681768184e681988681a4e681b4e681c7d94288c136167656e745f747970655f6f76657272696465944e8c0e64697361626c655f6f757470757494898c0b74656d7065726174757265944700000000000000008c0a6d61785f746f6b656e73944dd0077568254e68264e68274e68284e758c0a73657269616c697a6572948c0b636c6f75647069636b6c65947562738c0672756e5f69649468138c0b776f726b666c6f775f69649468138c12776f726b666c6f775f74696d657374616d70946813756268108c0d6f70656e61692f6770742d346f948c0b6c6f63616c5f646562756794888c106f75747075745f666f726d6174746572948c2c666c6f636b2e636f72652e6c6f6767696e672e666f726d6174746572732e626173655f666f726d6174746572948c10466f726d61747465724f7074696f6e739493942981947d94288c09666f726d6174746572948c2e666c6f636b2e636f72652e6c6f6767696e672e666f726d6174746572732e707072696e745f666f726d6174746572948c145072657474795072696e74466f726d61747465729493948c0e776169745f666f725f696e70757494898c0a6d61785f6c656e677468944de8038c0873657474696e6773944e756275622e
@@ -0,0 +1 @@
1
+ {"name": "inherited_bloggy", "model": "openai/gpt-4o", "description": "", "input": null, "output": null, "tools": null, "use_cache": true, "hand_off": null, "termination": null, "config": {"agent_type_override": null, "disable_output": false, "temperature": 0.0, "max_tokens": 2000}, "initialize_callback": null, "evaluate_callback": null, "terminate_callback": null, "on_error_callback": null}
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "flock-core"
3
- version = "0.2.12"
3
+ version = "0.2.14"
4
4
  description = "Declarative LLM Orchestration at Scale"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -29,6 +29,7 @@ dependencies = [
29
29
  "pydantic>=2.10.5",
30
30
  "python-box>=7.3.2",
31
31
  "python-decouple>=3.8",
32
+ "questionary>=2.1.0",
32
33
  "rich>=13.9.4",
33
34
  "temporalio>=1.9.0",
34
35
  "toml>=0.10.2",
@@ -0,0 +1,51 @@
1
+ """Flock package initialization."""
2
+
3
+
4
+ def main():
5
+ """Main function."""
6
+ import questionary
7
+ from rich.console import Console
8
+
9
+ from flock.cli.constants import (
10
+ CLI_CREATE_AGENT,
11
+ CLI_CREATE_FLOCK,
12
+ CLI_LOAD_AGENT,
13
+ CLI_LOAD_EXAMPLE,
14
+ CLI_LOAD_FLOCK,
15
+ CLI_SETTINGS,
16
+ CLI_START_ADVANCED_MODE,
17
+ CLI_START_WEB_SERVER,
18
+ )
19
+ from flock.cli.load_flock import load_flock
20
+ from flock.core.util.cli_helper import display_banner
21
+
22
+ console = Console()
23
+
24
+ display_banner()
25
+
26
+ console.print("Flock Management Console\n", style="bold green")
27
+
28
+ result = questionary.select(
29
+ "What do you want to do?",
30
+ choices=[
31
+ questionary.Separator(line=" "),
32
+ # CLI_CREATE_AGENT,
33
+ # CLI_CREATE_FLOCK,
34
+ # CLI_LOAD_AGENT,
35
+ CLI_LOAD_FLOCK,
36
+ # CLI_LOAD_EXAMPLE,
37
+ questionary.Separator(),
38
+ CLI_SETTINGS,
39
+ questionary.Separator(),
40
+ CLI_START_ADVANCED_MODE,
41
+ CLI_START_WEB_SERVER,
42
+ "Exit",
43
+ ],
44
+ ).ask()
45
+
46
+ if result == CLI_LOAD_FLOCK:
47
+ load_flock()
48
+
49
+
50
+ if __name__ == "__main__":
51
+ main()
@@ -0,0 +1,22 @@
1
+ """Constants for the CLI module."""
2
+
3
+ CLI_CREATE_AGENT = "Create an agent"
4
+ CLI_CREATE_FLOCK = "Create a flock"
5
+ CLI_LOAD_AGENT = "Load an agent"
6
+ CLI_LOAD_FLOCK = "Load a *.flock file"
7
+ CLI_LOAD_EXAMPLE = "Load a example"
8
+ CLI_SETTINGS = "Settings"
9
+ CLI_START_ADVANCED_MODE = "Start advanced mode (coming soon)"
10
+ CLI_START_WEB_SERVER = "Start web server (coming soon)"
11
+ CLI_EXIT = "Exit"
12
+ CLI_CHOICES = [
13
+ CLI_CREATE_AGENT,
14
+ CLI_CREATE_FLOCK,
15
+ CLI_LOAD_AGENT,
16
+ CLI_LOAD_FLOCK,
17
+ CLI_LOAD_EXAMPLE,
18
+ CLI_SETTINGS,
19
+ CLI_START_ADVANCED_MODE,
20
+ CLI_START_WEB_SERVER,
21
+ CLI_EXIT,
22
+ ]
@@ -0,0 +1 @@
1
+ # TODO
@@ -0,0 +1 @@
1
+ # TODO