flock-core 0.4.511__py3-none-any.whl → 0.4.513__py3-none-any.whl

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 (56) hide show
  1. flock/core/config/flock_agent_config.py +11 -0
  2. flock/core/config/scheduled_agent_config.py +40 -0
  3. flock/core/flock_agent.py +7 -1
  4. flock/core/flock_factory.py +129 -2
  5. flock/core/flock_scheduler.py +166 -0
  6. flock/core/logging/logging.py +8 -0
  7. flock/core/mcp/flock_mcp_server.py +30 -4
  8. flock/core/mcp/flock_mcp_tool_base.py +1 -1
  9. flock/core/mcp/mcp_client.py +57 -28
  10. flock/core/mcp/mcp_client_manager.py +1 -1
  11. flock/core/mcp/mcp_config.py +245 -9
  12. flock/core/mcp/types/callbacks.py +3 -5
  13. flock/core/mcp/types/factories.py +12 -14
  14. flock/core/mcp/types/handlers.py +9 -12
  15. flock/core/mcp/types/types.py +205 -2
  16. flock/mcp/servers/sse/flock_sse_server.py +21 -14
  17. flock/mcp/servers/streamable_http/__init__.py +0 -0
  18. flock/mcp/servers/streamable_http/flock_streamable_http_server.py +169 -0
  19. flock/mcp/servers/websockets/flock_websocket_server.py +3 -3
  20. flock/webapp/app/main.py +66 -11
  21. flock/webapp/app/services/sharing_store.py +173 -0
  22. flock/webapp/run.py +3 -1
  23. flock/webapp/templates/base.html +10 -11
  24. flock/webapp/templates/chat.html +7 -10
  25. flock/webapp/templates/chat_settings.html +3 -4
  26. flock/webapp/templates/flock_editor.html +1 -2
  27. flock/webapp/templates/index.html +1 -1
  28. flock/webapp/templates/partials/_agent_detail_form.html +7 -13
  29. flock/webapp/templates/partials/_agent_list.html +1 -2
  30. flock/webapp/templates/partials/_agent_manager_view.html +2 -3
  31. flock/webapp/templates/partials/_chat_container.html +2 -2
  32. flock/webapp/templates/partials/_chat_settings_form.html +6 -8
  33. flock/webapp/templates/partials/_create_flock_form.html +2 -4
  34. flock/webapp/templates/partials/_dashboard_flock_detail.html +2 -3
  35. flock/webapp/templates/partials/_dashboard_flock_file_list.html +1 -2
  36. flock/webapp/templates/partials/_dashboard_flock_properties_preview.html +2 -3
  37. flock/webapp/templates/partials/_dashboard_upload_flock_form.html +1 -2
  38. flock/webapp/templates/partials/_env_vars_table.html +2 -4
  39. flock/webapp/templates/partials/_execution_form.html +12 -10
  40. flock/webapp/templates/partials/_execution_view_container.html +2 -3
  41. flock/webapp/templates/partials/_flock_file_list.html +2 -3
  42. flock/webapp/templates/partials/_flock_properties_form.html +2 -2
  43. flock/webapp/templates/partials/_flock_upload_form.html +1 -2
  44. flock/webapp/templates/partials/_load_manager_view.html +2 -3
  45. flock/webapp/templates/partials/_registry_viewer_content.html +4 -5
  46. flock/webapp/templates/partials/_settings_env_content.html +2 -3
  47. flock/webapp/templates/partials/_settings_theme_content.html +2 -2
  48. flock/webapp/templates/partials/_settings_view.html +2 -2
  49. flock/webapp/templates/partials/_sidebar.html +27 -39
  50. flock/webapp/templates/registry_viewer.html +7 -10
  51. flock/webapp/templates/shared_run_page.html +7 -10
  52. {flock_core-0.4.511.dist-info → flock_core-0.4.513.dist-info}/METADATA +3 -1
  53. {flock_core-0.4.511.dist-info → flock_core-0.4.513.dist-info}/RECORD +56 -51
  54. {flock_core-0.4.511.dist-info → flock_core-0.4.513.dist-info}/WHEEL +0 -0
  55. {flock_core-0.4.511.dist-info → flock_core-0.4.513.dist-info}/entry_points.txt +0 -0
  56. {flock_core-0.4.511.dist-info → flock_core-0.4.513.dist-info}/licenses/LICENSE +0 -0
@@ -1,7 +1,6 @@
1
1
  {% if flock_files %}
2
2
  <ul class="item-list">
3
- {% for file_name in flock_files %}
4
- <li hx-post="/ui/load-flock-action/by-name"
3
+ {% for file_name in flock_files %} <li hx-post="{{ url_for('ui_load_flock_by_name_action') }}"
5
4
  hx-vals='{"selected_flock_filename": "{{ file_name }}"}'
6
5
  {# After successful load, the main.py route for by-name will now return
7
6
  the flock properties form targeted to the main content area AND
@@ -13,7 +12,7 @@
13
12
  hx-target="#main-content-area" {# This will load the editor page content #}
14
13
  hx-swap="innerHTML"
15
14
  hx-indicator="#flock-file-list-loading-indicator"
16
- hx-push-url="/ui/editor/properties"> {# Push URL to editor after load #}
15
+ hx-push-url="{{ url_for('page_editor_section', ui_mode='properties') }}"> {# Push URL to editor after load #}
17
16
  {{ file_name }}
18
17
  </li>
19
18
  {% endfor %}
@@ -23,7 +23,7 @@
23
23
  </div>
24
24
  {% endif %}
25
25
 
26
- <form hx-post="/ui/api/flock/htmx/flock-properties" hx-target="#flock-properties-form-article" hx-swap="innerHTML" hx-indicator="#flock-props-loading">
26
+ <form hx-post="{{ url_for('htmx_update_flock_properties') }}" hx-target="#flock-properties-form-article" hx-swap="innerHTML" hx-indicator="#flock-props-loading">
27
27
  <label for="flock_name">Flock Name</label>
28
28
  <input type="text" id="flock_name" name="flock_name" value="{{ flock.name if flock else '' }}" required>
29
29
 
@@ -38,7 +38,7 @@
38
38
  </div>
39
39
  </form>
40
40
  <hr>
41
- <form hx-post="/ui/api/flock/htmx/save-flock" hx-target="#flock-properties-form-article" hx-swap="innerHTML" hx-indicator="#flock-save-loading">
41
+ <form hx-post="{{ url_for('htmx_save_flock') }}" hx-target="#flock-properties-form-article" hx-swap="innerHTML" hx-indicator="#flock-save-loading">
42
42
  <label for="save_filename">Save Flock As:</label>
43
43
  <input type="text" id="save_filename" name="save_filename"
44
44
  value="{{ current_filename if current_filename else (flock.name.replace(' ', '_').lower() + '.flock.yaml' if flock and flock.name else 'my_flock.flock.yaml') }}"
@@ -1,8 +1,7 @@
1
1
  <article>
2
2
  <header>
3
3
  <h5>Upload New Flock File</h5>
4
- </header>
5
- <form hx-post="/ui/load-flock-action/by-upload"
4
+ </header> <form hx-post="{{ url_for('load_flock_by_upload') }}"
6
5
  hx-target="#main-content-area" {# After upload, go to editor #}
7
6
  hx-swap="innerHTML"
8
7
  hx-encoding="multipart/form-data"
@@ -20,12 +20,11 @@
20
20
  <header class="grid">
21
21
  <h2>Load Flock</h2> {# Moved title here #}
22
22
  <div style="text-align: right;">
23
- <button role="button" class="outline" hx-get="/ui/htmx/create-flock-form?ui_mode={{ ui_mode }}" hx-target="#flock-properties-or-action-content" hx-swap="innerHTML">Add New Flock</button>
23
+ <button role="button" class="outline" hx-get="{{ url_for('htmx_get_create_flock_form') }}?ui_mode={{ ui_mode }}" hx-target="#flock-properties-or-action-content" hx-swap="innerHTML">Add New Flock</button>
24
24
  </div>
25
25
  </header>
26
26
  {# Content of the left pane now goes into this article #}
27
- <div style="padding: var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal); flex-grow: 1; display: flex; flex-direction: column;">
28
- <div hx-get="/ui/htmx/dashboard-flock-file-list"
27
+ <div style="padding: var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal); flex-grow: 1; display: flex; flex-direction: column;"> <div hx-get="{{ url_for('htmx_get_dashboard_flock_file_list_partial') }}"
29
28
  hx-trigger="load, flockFileListChanged from:body"
30
29
  hx-swap="innerHTML"
31
30
  id="dashboard-flock-file-list-target"
@@ -5,19 +5,18 @@
5
5
  </header>
6
6
 
7
7
  <nav>
8
- <ul role="group">
9
- <li>
10
- <button role="button" class="outline" hx-get="/ui/api/registry/htmx/type/table" hx-target="#registry-table-container" hx-indicator="#registry-loading" hx-on:click="setActiveButton(this)">
8
+ <ul role="group"> <li>
9
+ <button role="button" class="outline" hx-get="{{ url_for('htmx_get_registry_table', item_type='type') }}" hx-target="#registry-table-container" hx-indicator="#registry-loading" hx-on:click="setActiveButton(this)">
11
10
  View Types
12
11
  </button>
13
12
  </li>
14
13
  <li>
15
- <button role="button" class="outline" hx-get="/ui/api/registry/htmx/tool/table" hx-target="#registry-table-container" hx-indicator="#registry-loading" hx-on:click="setActiveButton(this)">
14
+ <button role="button" class="outline" hx-get="{{ url_for('htmx_get_registry_table', item_type='tool') }}" hx-target="#registry-table-container" hx-indicator="#registry-loading" hx-on:click="setActiveButton(this)">
16
15
  View Tools/Callables
17
16
  </button>
18
17
  </li>
19
18
  <li>
20
- <button role="button" class="outline" hx-get="/ui/api/registry/htmx/component/table" hx-target="#registry-table-container" hx-indicator="#registry-loading" hx-on:click="setActiveButton(this)">
19
+ <button role="button" class="outline" hx-get="{{ url_for('htmx_get_registry_table', item_type='component') }}" hx-target="#registry-table-container" hx-indicator="#registry-loading" hx-on:click="setActiveButton(this)">
21
20
  View Components
22
21
  </button>
23
22
  </li>
@@ -1,10 +1,9 @@
1
1
  <article>
2
2
  <h3>Environment Variables</h3>
3
- <div style="display:flex; gap:0.5rem; flex-wrap:wrap;">
4
- <button class="outline small" id="toggle-secrets-btn" hx-post="/ui/htmx/toggle-show-secrets" hx-target="#env-vars-container" hx-swap="outerHTML">
3
+ <div style="display:flex; gap:0.5rem; flex-wrap:wrap;"> <button class="outline small" id="toggle-secrets-btn" hx-post="{{ url_for('htmx_toggle_show_secrets') }}" hx-target="#env-vars-container" hx-swap="outerHTML">
5
4
  {% if show_secrets %}Hide Secrets{% else %}Show Secrets{% endif %}
6
5
  </button>
7
- <button class="outline small" hx-get="/ui/htmx/env-add-form" hx-target="#env-vars-container" hx-swap="afterbegin">Add Variable</button>
6
+ <button class="outline small" hx-get="{{ url_for('htmx_env_add_form') }}" hx-target="#env-vars-container" hx-swap="afterbegin">Add Variable</button>
8
7
  </div>
9
8
  {% include 'partials/_env_vars_table.html' %}
10
9
  </article>
@@ -2,12 +2,12 @@
2
2
  <h3>Theme Switcher</h3>
3
3
  <div style="display:flex; gap:0.5rem; flex-wrap:wrap; align-items:center;">
4
4
  <label for="theme-select" style="margin:0;">Select Theme:</label>
5
- <select id="theme-select" name="theme" hx-get="/ui/htmx/theme-preview" hx-target="#theme-preview" hx-trigger="load, change" hx-include="#theme-select">
5
+ <select id="theme-select" name="theme" hx-get="{{ url_for('htmx_theme_preview') }}" hx-target="#theme-preview" hx-trigger="load, change" hx-include="#theme-select">
6
6
  {% for t in themes %}
7
7
  <option value="{{ t }}" {% if t == current_theme %}selected{% endif %}>{{ t }}</option>
8
8
  {% endfor %}
9
9
  </select>
10
- <button class="small" hx-post="/ui/apply-theme" hx-target="body" hx-include="#theme-select" hx-swap="none">Apply</button>
10
+ <button class="small" hx-post="{{ url_for('apply_theme') }}" hx-target="body" hx-include="#theme-select" hx-swap="none">Apply</button>
11
11
  </div>
12
12
  <div id="theme-preview" style="margin-top:1rem;">
13
13
  <!-- Preview generated by theme-preview endpoint -->
@@ -6,10 +6,10 @@
6
6
  <nav>
7
7
  <ul role="group">
8
8
  <li>
9
- <button role="button" class="primary" hx-get="/ui/htmx/settings/env-vars" hx-target="#settings-content-container" hx-indicator="#settings-loading" hx-on:click="setActiveButton(this)">Environment</button>
9
+ <button role="button" class="primary" hx-get="{{ url_for('htmx_settings_env_vars') }}" hx-target="#settings-content-container" hx-indicator="#settings-loading" hx-on:click="setActiveButton(this)">Environment</button>
10
10
  </li>
11
11
  <li>
12
- <button role="button" class="outline" hx-get="/ui/htmx/settings/theme" hx-target="#settings-content-container" hx-indicator="#settings-loading" hx-on:click="setActiveButton(this)">Theme</button>
12
+ <button role="button" class="outline" hx-get="{{ url_for('htmx_settings_theme') }}" hx-target="#settings-content-container" hx-indicator="#settings-loading" hx-on:click="setActiveButton(this)">Theme</button>
13
13
  </li>
14
14
  </ul>
15
15
  </nav>
@@ -2,17 +2,15 @@
2
2
  {% if ui_mode == 'standalone' %}
3
3
  <h5>Manage Flocks</h5>
4
4
  <ul>
5
- <li>
6
- <button hx-get="/ui/htmx/load-flock-view?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
7
- hx-push-url="/?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
8
- class="contrast {% if request.url.path == '/' or request.url.path == '/ui/htmx/load-flock-view' %}active-nav{% endif %}">
5
+ <li> <button hx-get="{{ url_for('htmx_get_load_flock_view') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
6
+ hx-push-url="{{ url_for('page_dashboard') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
7
+ class="contrast {% if request.url.path == url_for('page_dashboard') or request.url.path == url_for('htmx_get_load_flock_view') %}active-nav{% endif %}">
9
8
  <i class="fas fa-folder-open"></i> Load Flock
10
9
  </button>
11
10
  </li>
12
- <!-- <li>
13
- <button hx-get="/ui/htmx/create-flock-form?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
14
- hx-push-url="/ui/create?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
15
- class="contrast {% if request.url.path == '/ui/create' %}active-nav{% endif %}">
11
+ <!-- <li> <button hx-get="{{ url_for('htmx_get_create_flock_form') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
12
+ hx-push-url="{{ url_for('page_create') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
13
+ class="contrast {% if request.url.path == url_for('page_create') %}active-nav{% endif %}">>
16
14
  <i class="fas fa-plus-circle"></i> Create New Flock
17
15
  </button>
18
16
  </li> -->
@@ -23,24 +21,20 @@
23
21
  <hr>
24
22
  <h5>Current Flock</h5>
25
23
  <ul>
26
- <li>
27
- <button hx-get="/ui/htmx/execution-view-container?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
28
- hx-push-url="/ui/editor/execute?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
29
- class="contrast {% if request.url.path == '/ui/editor/execute' %}active-nav{% endif %}">
24
+ <li> <button hx-get="{{ url_for('htmx_get_execution_view_container') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
25
+ hx-push-url="{{ url_for('page_editor_section', section='execute') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
26
+ class="contrast {% if request.url.path == url_for('page_editor_section', section='execute') %}active-nav{% endif %}">
30
27
  <i class="fas fa-play-circle"></i> Execute Flock
31
28
  </button>
32
29
  </li>
33
- <li>
34
- <button hx-get="/ui/htmx/agent-manager-view?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
35
- hx-push-url="/ui/editor/agents?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
36
- class="contrast{% if request.url.path == '/ui/editor/agents' %}active-nav{% endif %}">
30
+ <li> <button hx-get="{{ url_for('htmx_get_agent_manager_view') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
31
+ hx-push-url="{{ url_for('page_editor_section', section='agents') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
32
+ class="contrast{% if request.url.path == url_for('page_editor_section', section='agents') %}active-nav{% endif %}">
37
33
  <i class="fas fa-robot"></i> Agents ({{ current_flock.agents|length }})
38
34
  </button>
39
- </li>
40
- <li>
41
- <button hx-get="/ui/api/flock/htmx/flock-properties-form?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
42
- hx-push-url="/ui/editor/properties?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
43
- class="contrast {% if request.url.path == '/ui/editor/properties' %}active-nav{% endif %}">
35
+ </li> <li> <button hx-get="{{ url_for('htmx_get_flock_properties_form') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
36
+ hx-push-url="{{ url_for('page_editor_section', section='properties') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
37
+ class="contrast {% if request.url.path == url_for('page_editor_section', section='properties') %}active-nav{% endif %}">
44
38
  <i class="fas fa-cog"></i> Properties
45
39
  </button>
46
40
  </li>
@@ -50,32 +44,26 @@
50
44
  <hr>
51
45
  <h5>Tools</h5>
52
46
  <ul>
53
- <li>
54
- <button hx-get="/ui/htmx/registry-viewer?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
55
- hx-push-url="/ui/registry?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
56
- class="contrast {% if request.url.path == '/ui/registry' %}active-nav{% endif %}">
47
+ <li> <button hx-get="{{ url_for('htmx_get_registry_viewer') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
48
+ hx-push-url="{{ url_for('page_registry') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
49
+ class="contrast {% if request.url.path == url_for('page_registry') %}active-nav{% endif %}">
57
50
  <i class="fas fa-book"></i> View Registry
58
51
  </button>
59
52
  </li>
60
- <li>
61
- <button hx-get="/ui/htmx/settings-view?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
62
- hx-push-url="/ui/settings?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
63
- class="contrast {% if request.url.path == '/ui/settings' %}active-nav{% endif %}">
53
+ <li> <button hx-get="{{ url_for('htmx_get_settings_view') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
54
+ hx-push-url="{{ url_for('page_settings') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
55
+ class="contrast {% if request.url.path == url_for('page_settings') %}active-nav{% endif %}">
64
56
  <i class="fas fa-sliders-h"></i> Settings
65
57
  </button>
66
58
  </li>
67
- {% if chat_enabled %}
68
- <li>
69
- <button hx-get="/ui/htmx/chat-view?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
70
- hx-push-url="/ui/chat?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
71
- class="contrast {% if request.url.path == '/ui/chat' %}active-nav{% endif %}">
59
+ {% if chat_enabled %} <li> <button hx-get="{{ url_for('htmx_get_chat_view') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
60
+ hx-push-url="{{ url_for('page_chat') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
61
+ class="contrast {% if request.url.path == url_for('page_chat') %}active-nav{% endif %}">
72
62
  <i class="fas fa-comments"></i> Chat
73
63
  </button>
74
- </li>
75
- <li>
76
- <button hx-get="/ui/htmx/chat-settings-form?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
77
- hx-push-url="/ui/chat-settings?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
78
- class="contrast {% if request.url.path == '/ui/chat-settings' %}active-nav{% endif %}">
64
+ </li> <li> <button hx-get="{{ url_for('chat_settings_form') }}?ui_mode={{ ui_mode }}" hx-target="#main-content-area"
65
+ hx-push-url="{{ url_for('chat_settings_standalone') }}?ui_mode={{ ui_mode }}" hx-indicator="#content-loading-indicator-main"
66
+ class="contrast {% if request.url.path == url_for('chat_settings_standalone') %}active-nav{% endif %}">
79
67
  <i class="fas fa-sliders-h"></i> Chat Settings
80
68
  </button>
81
69
  </li>
@@ -13,9 +13,8 @@
13
13
  <ul role="group">
14
14
  <li>
15
15
  <button role="button"
16
- class="outline"
17
- hx-get="/ui/api/registry/htmx/type/table"
18
- hx-target="#registry-table-container"
16
+ class="outline" hx-get="{{ url_for('htmx_get_registry_table', item_type='type') }}"
17
+ hx-target="#registry-table-container"
19
18
  hx-indicator="#registry-loading"
20
19
  hx-on:click="setActiveButton(this)">
21
20
  View Types
@@ -23,9 +22,8 @@
23
22
  </li>
24
23
  <li>
25
24
  <button role="button"
26
- class="outline"
27
- hx-get="/ui/api/registry/htmx/tool/table"
28
- hx-target="#registry-table-container"
25
+ class="outline" hx-get="{{ url_for('htmx_get_registry_table', item_type='tool') }}"
26
+ hx-target="#registry-table-container"
29
27
  hx-indicator="#registry-loading"
30
28
  hx-on:click="setActiveButton(this)">
31
29
  View Tools/Callables
@@ -33,9 +31,8 @@
33
31
  </li>
34
32
  <li>
35
33
  <button role="button"
36
- class="outline"
37
- hx-get="/ui/api/registry/htmx/component/table"
38
- hx-target="#registry-table-container"
34
+ class="outline" hx-get="{{ url_for('htmx_get_registry_table', item_type='component') }}"
35
+ hx-target="#registry-table-container"
39
36
  hx-indicator="#registry-loading"
40
37
  hx-on:click="setActiveButton(this)">
41
38
  View Components
@@ -53,7 +50,7 @@
53
50
  </div>
54
51
 
55
52
  <footer style="margin-top: 2rem;">
56
- <a href="/ui/editor" role="button" class="secondary contrast">Back to Editor</a>
53
+ <a href="{{ url_for('page_editor_section', section='execute') }}" role="button" class="secondary contrast">Back to Editor</a>
57
54
  </footer>
58
55
  </article>
59
56
 
@@ -6,12 +6,11 @@
6
6
  <title>Flock Shared Agent: {{ selected_agent_name }}</title>
7
7
 
8
8
  {# Link to Pico.css #}
9
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css" />
10
- <link rel="stylesheet" href="/static/css/layout.css">
11
- <link rel="stylesheet" href="/static/css/header.css">
12
- <link rel="stylesheet" href="/static/css/sidebar.css">
13
- <link rel="stylesheet" href="/static/css/components.css">
14
- <link rel="stylesheet" href="/static/css/chat.css">
9
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css" /> <link rel="stylesheet" href="{{ url_for('static', path='css/layout.css') }}">
10
+ <link rel="stylesheet" href="{{ url_for('static', path='css/header.css') }}">
11
+ <link rel="stylesheet" href="{{ url_for('static', path='css/sidebar.css') }}">
12
+ <link rel="stylesheet" href="{{ url_for('static', path='css/components.css') }}">
13
+ <link rel="stylesheet" href="{{ url_for('static', path='css/chat.css') }}">
15
14
  <!-- Font Awesome for icons -->
16
15
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">
17
16
  <!-- Prism.js CSS for syntax highlighting (okaidia theme) -->
@@ -49,10 +48,8 @@
49
48
  {% if selected_agent_name and not error_message %} {# Only show form if no fatal error and agent is selected #}
50
49
  <div style="display: flex; gap: var(--pico-spacing, 1rem);">
51
50
  <div style="flex: 1;">
52
- <article id="execution-form-content">
53
- <form id="agent-run-form-shared"
54
- hx-post="/ui/api/flock/htmx/run-shared"
55
- hx-target="#results-display"
51
+ <article id="execution-form-content"> <form id="agent-run-form-shared" hx-post="{{ url_for('htmx_run_shared_flock') }}"
52
+ hx-target="#results-display"
56
53
  hx-swap="innerHTML"
57
54
  hx-indicator="#run-loading-indicator">
58
55
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flock-core
3
- Version: 0.4.511
3
+ Version: 0.4.513
4
4
  Summary: Declarative LLM Orchestration at Scale
5
5
  Author-email: Andre Ratzenberger <andre.ratzenberger@whiteduck.de>
6
6
  License-File: LICENSE
@@ -9,7 +9,9 @@ Classifier: Operating System :: OS Independent
9
9
  Classifier: Programming Language :: Python :: 3
10
10
  Requires-Python: >=3.10
11
11
  Requires-Dist: aiosqlite>=0.21.0
12
+ Requires-Dist: azure-data-tables>=12.7.0
12
13
  Requires-Dist: cloudpickle>=3.1.1
14
+ Requires-Dist: croniter>=6.0.0
13
15
  Requires-Dist: devtools>=0.12.2
14
16
  Requires-Dist: dspy==2.6.23
15
17
  Requires-Dist: fastapi>=0.115.8
@@ -27,12 +27,13 @@ flock/cli/yaml_editor.py,sha256=K3N0bh61G1TSDAZDnurqW9e_-hO6CtSQKXQqlDhCjVo,1252
27
27
  flock/cli/assets/release_notes.md,sha256=bqnk50jxM3w5uY44Dc7MkdT8XmRREFxrVBAG9XCOSSU,4896
28
28
  flock/core/__init__.py,sha256=juwyNr3QqKXUS5-E3hlMYRhgqHgQBqgtP12OF3tUCAI,1249
29
29
  flock/core/flock.py,sha256=iR4i0_z0w2ns_iHbP7FqN--7wlsPIWch1H-BVecPs_I,38205
30
- flock/core/flock_agent.py,sha256=EHI0p3axr8X364wfHMB2js16MQT7H1Awe6SzJQR7bhw,48573
30
+ flock/core/flock_agent.py,sha256=Hl6TONSiJi2I-N_49-1hkW2q_hyPXMebMr-5oZLI-PY,48842
31
31
  flock/core/flock_evaluator.py,sha256=TPy6u6XX3cqkY1r9NW1w2lTwCMNW7pxhFYKLefnEbXg,1820
32
- flock/core/flock_factory.py,sha256=36eOtha-XG67_kK_VadG7UQ8cMgAcd7y1k5yFkT-pR0,14017
32
+ flock/core/flock_factory.py,sha256=L3EFEUKqQmyxM_q0mh23ikLHPexSkV4Q8ifxIBSGA6s,18805
33
33
  flock/core/flock_module.py,sha256=ObILimpVaPnaaqYvcBYJJ20lQzfrjgTdADplaNRjHU0,7448
34
34
  flock/core/flock_registry.py,sha256=KzdFfc3QC-Dk42G24hdf6Prp3HvGj9ymXR3TTBe-T-A,27161
35
35
  flock/core/flock_router.py,sha256=1OAXDsdaIIFApEfo6SRfFEDoTuGt3Si7n2MXiySEfis,2644
36
+ flock/core/flock_scheduler.py,sha256=fu99UXMhs8qkbTLi1q1h4-mR4TxmsyA156EGXuXZ3-Q,8772
36
37
  flock/core/flock_server_manager.py,sha256=YU6HOcg_IBXtnkbTIBNBONh3MZkvIjdKWHaiSOo16sE,4555
37
38
  flock/core/api/__init__.py,sha256=KdzUwBOwhxqqy7lAMLpysKL5GvpIiwOy6CxXELZVWaY,186
38
39
  flock/core/api/custom_endpoint.py,sha256=Mbk2owdcXVATaT5FtEWXFzllgursozcmqP8ouG5btc0,1305
@@ -42,6 +43,8 @@ flock/core/api/models.py,sha256=seqKuzhbN37nCNO7KrcJjI2mWuwiOKCLFcJcTPvTtag,3422
42
43
  flock/core/api/run_store.py,sha256=bFodJvVyWogzoezVy0cOoWWU3MdEBXf_6_5sBqCRWps,9227
43
44
  flock/core/api/runner.py,sha256=3izg6cVk1RoR1hDIDwMAO1gi3lnLcp8DPv7AnJBYx6A,1443
44
45
  flock/core/api/service.py,sha256=HRHs4xt-bGeSm5hdN92H1vWQtLzqZalhZxIh6iwww8Y,11381
46
+ flock/core/config/flock_agent_config.py,sha256=XP96-Ceh4CfVsHFHXT-YxyRnX_URvabz1xlwdHkD8go,282
47
+ flock/core/config/scheduled_agent_config.py,sha256=3okCjpggJSKkc1Dp8ZJuQP010tQvN3dk8n_llbTc5aE,1506
45
48
  flock/core/context/context.py,sha256=zdQuB1YWPJmQVv_2_sm1HK7FSnusa3Jl-83PcTuaLUk,7791
46
49
  flock/core/context/context_manager.py,sha256=FANSWa6DEhdhtZ7t_9Gza0v80UdpoDOhHbfVOccmjkA,1181
47
50
  flock/core/context/context_vars.py,sha256=ASPA29hpENWub4mgRoG62FtTVakCHQZfn6IhJQKe3C8,347
@@ -52,7 +55,7 @@ flock/core/execution/local_executor.py,sha256=rnIQvaJOs6zZORUcR3vvyS6LPREDJTjayg
52
55
  flock/core/execution/temporal_executor.py,sha256=dHcb0xuzPFWU_wbwTgI7glLNyyppei93Txs2sapjhaw,6283
53
56
  flock/core/interpreter/python_interpreter.py,sha256=RaUMZuufsKBNQ4FAeSaOgUuxzs8VYu5TgUUs-xwaxxM,26376
54
57
  flock/core/logging/__init__.py,sha256=xn5fC-8IgsdIv0ywe_cICK1KVhTrVD8t-jYORg0ETUA,155
55
- flock/core/logging/logging.py,sha256=-fYk4rv41LUbSLCzaSApg3cFTAk04bDR64-4ve-2mHk,19541
58
+ flock/core/logging/logging.py,sha256=VyBsin-3q8UQ0DY-K72t8FtrGJQbUwIfzxaC7rIWMvQ,19820
56
59
  flock/core/logging/telemetry.py,sha256=Trssqx02SBovTL843YwY3L-ZGj3KvcfMHLMU7Syk8L0,6561
57
60
  flock/core/logging/trace_and_logged.py,sha256=5vNrK1kxuPMoPJ0-QjQg-EDJL1oiEzvU6UNi6X8FiMs,2117
58
61
  flock/core/logging/formatters/enum_builder.py,sha256=LgEYXUv84wK5vwHflZ5h8HBGgvLH3sByvUQe8tZiyY0,981
@@ -64,16 +67,16 @@ flock/core/logging/telemetry_exporter/base_exporter.py,sha256=rQJJzS6q9n2aojoSqw
64
67
  flock/core/logging/telemetry_exporter/file_exporter.py,sha256=nKAjJSZtA7FqHSTuTiFtYYepaxOq7l1rDvs8U8rSBlA,3023
65
68
  flock/core/logging/telemetry_exporter/sqlite_exporter.py,sha256=CDsiMb9QcqeXelZ6ZqPSS56ovMPGqOu6whzBZRK__Vg,3498
66
69
  flock/core/mcp/__init__.py,sha256=g3hzM_9ntsr-Af9dE9cCZEjQ9YX2jk7-Jm-0JcHSk1A,25
67
- flock/core/mcp/flock_mcp_server.py,sha256=-rdIRwRoEqdxxd-pd_m4G5ySanFCr4EwedEUrNT_rnk,24732
68
- flock/core/mcp/flock_mcp_tool_base.py,sha256=pMxyHPRc2qx6bt38jq2VYBarZLVxhK2TpvK32EmdS8s,6814
69
- flock/core/mcp/mcp_client.py,sha256=LiX3TRnwBaV01_fNS9pZpBpjOARs0RD7fk_x1cY1_p0,24666
70
- flock/core/mcp/mcp_client_manager.py,sha256=YCNWgGMG8Va5AYfOmbG3s83EBzIrPGRrdPywUevqnT4,8075
71
- flock/core/mcp/mcp_config.py,sha256=knKywvyNPvYkQqaKFBLb3WayupSd5mt7KNrxx_ZjBco,7325
70
+ flock/core/mcp/flock_mcp_server.py,sha256=WgvQDMq5qFj-PzuTXght0uFsztodYEkcIUXQ5TC4Q4M,25852
71
+ flock/core/mcp/flock_mcp_tool_base.py,sha256=ZY6bUJEW3FY0Q5W5vNW0F8RqIovzKZU-X0JrVmK0TuA,6804
72
+ flock/core/mcp/mcp_client.py,sha256=Nf-fC5EtX2egeoqgDx02EIWlwEd6aaNuT1n2DEbnvg0,25934
73
+ flock/core/mcp/mcp_client_manager.py,sha256=hn97F9xEpYNbs02ruEbrtQo4PYD7TNKQAC0AwuAh6xw,8061
74
+ flock/core/mcp/mcp_config.py,sha256=izO07hTD-2CrAhilqF9WDTpHNaK5l1T4UwFn6VsDwYc,16575
72
75
  flock/core/mcp/types/__init__.py,sha256=YgEJvTXe5VfSMfJNlpefdBYJOmMbMWQsXzc_qmOAybg,25
73
- flock/core/mcp/types/callbacks.py,sha256=kD5PnuL-oMYhHjKU-l1pAk8NkJ7RmeDDLu0pjMgK7oU,2547
74
- flock/core/mcp/types/factories.py,sha256=fgdbZUlZPwn-HH3Q3ljh-DsB7lcR6u5qFnzhC-jAM3I,3528
75
- flock/core/mcp/types/handlers.py,sha256=mhAoSS6vA3K7YP_mF9Sb2Zn2RvFM8fXxtbwC4zgU2JQ,7888
76
- flock/core/mcp/types/types.py,sha256=NFVFv0BXy4P79SGe8rKBO4VH41xkpF6Y-yvU3Fmzx6w,4872
76
+ flock/core/mcp/types/callbacks.py,sha256=M4dvL9-PUVmojPTK18fg8ngHqYd7AogMoO6HixM9q10,2494
77
+ flock/core/mcp/types/factories.py,sha256=T4fIyyJYibP8AGg_gjR1Pu5LO5xP5LsAfmBxyD6bBmY,3440
78
+ flock/core/mcp/types/handlers.py,sha256=VEpOx5ShvlvOEvgo2Fs5rql-x0obVQYgEpcb8FBrm24,7788
79
+ flock/core/mcp/types/types.py,sha256=2amE-oastGe1GGVI4gbH2ltCX7QvYnJebSArATvttUU,11410
77
80
  flock/core/mcp/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
78
81
  flock/core/mcp/util/helpers.py,sha256=Xlf4iKW_lZxsVMTRoOnV29JsJfAppfmEJrb6sIcoCH4,636
79
82
  flock/core/mixin/dspy_integration.py,sha256=LQN4cfcG6Myi6kX0-2bKCuK1K_k_lu3SNaTdHHk3lEU,17745
@@ -98,11 +101,13 @@ flock/evaluators/memory/memory_evaluator.py,sha256=ySwz7kcc8suXMJ7gKNSWThW8iOMlE
98
101
  flock/evaluators/test/test_case_evaluator.py,sha256=3Emcoty0LOLLBIuPGxSpKphuZC9Fu1DTr1vbGg-hd0Q,1233
99
102
  flock/evaluators/zep/zep_evaluator.py,sha256=6_5vTdU0yJAH8I8w3-MPXiAZx6iUPhAVCsHjrHzkPLM,2058
100
103
  flock/mcp/servers/sse/__init__.py,sha256=r6YtleRSOMJqKhTtKQeFKd3QDaUJVz9R1BGJgOm_PF8,51
101
- flock/mcp/servers/sse/flock_sse_server.py,sha256=mtFW4JlOZFRA9uGXUTSRv4iTMXvFnyRV-ztxfujsuEE,4764
104
+ flock/mcp/servers/sse/flock_sse_server.py,sha256=YesBrgdbxOsZO6Lgm8EQ8SsDDqhQGkTUPcEuLcqy89A,4980
102
105
  flock/mcp/servers/stdio/__init__.py,sha256=36QMguWwHCklLbISNNe1m2cq-y9klAWRf_QnuYpD2aY,53
103
106
  flock/mcp/servers/stdio/flock_stdio_server.py,sha256=E78F7iJ6hDyiHREZqNvou5-31NOBRGAYnpeEcRUF5VA,4921
107
+ flock/mcp/servers/streamable_http/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
108
+ flock/mcp/servers/streamable_http/flock_streamable_http_server.py,sha256=3bKxx5zBkVXZIvD9qz31oL1ucsMeEO4kdOpv4S558zo,5818
104
109
  flock/mcp/servers/websockets/__init__.py,sha256=KeNgNQRdeCQ9xgpaHB1I0-HyYeBhkifAuZPTIA8eDqM,47
105
- flock/mcp/servers/websockets/flock_websocket_server.py,sha256=uxgCNOHQdlK_ZrWlWKyNt440BxJSwtwey2fm4bQ5J4I,4315
110
+ flock/mcp/servers/websockets/flock_websocket_server.py,sha256=ntDLKMM20xTGd7k2TbNEK3ToJAF14oyW6vwofNzvqtM,4324
106
111
  flock/modules/__init__.py,sha256=Y0cEkx0dujRmy--TDpKoTqFSLzbyFz8BwEOv8kdSUhg,22
107
112
  flock/modules/assertion/__init__.py,sha256=Y0cEkx0dujRmy--TDpKoTqFSLzbyFz8BwEOv8kdSUhg,22
108
113
  flock/modules/assertion/assertion_module.py,sha256=2p9mIj8yBXRGgfe5pUWYXcLT86Ny13KyWHpRhe0Ehtg,12877
@@ -484,12 +489,12 @@ flock/tools/text_tools.py,sha256=mMQ8tkyYDxIorqqzl9ccGyWYjrSynYiYFIeP9qypfdg,224
484
489
  flock/tools/web_tools.py,sha256=Wl3qO5lKq4PYtmYahgeFGBQ8tDC0uKY4k9A1Zn-MqFw,2588
485
490
  flock/tools/zendesk_tools.py,sha256=e7KMfHVl7wGbstwdz9CvoChyuoZfpS9n4TEtvrxawgI,5162
486
491
  flock/webapp/__init__.py,sha256=YtRbbyciN3Z2oMB9fdXZuvM3e49R8m2mY5qHLDoapRA,37
487
- flock/webapp/run.py,sha256=Ekg-mQSl7RUDJAEDTBJMIlLyvhWqWPMjg8hPqmgFREE,8945
492
+ flock/webapp/run.py,sha256=btKVwIqrFg3FhLRuj2RN_fazwaFat3Ue5yiFiIg60rQ,9054
488
493
  flock/webapp/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
489
494
  flock/webapp/app/chat.py,sha256=d5a_mr3H2nuWNFSpSlI_HyqX-J_4krndd4A-8S25EKM,28679
490
495
  flock/webapp/app/config.py,sha256=lqmneujnNZk-EFJV5cWpvxkqisxH3T3zT_YOI0JYThE,4809
491
496
  flock/webapp/app/dependencies.py,sha256=JUcwY1N6SZplU141lMN2wk9dOC9er5HCedrKTJN9wJk,5533
492
- flock/webapp/app/main.py,sha256=g3kjtzJOC0UzWBBT4D9KyBKJxQWM1TkxHgsDaFqNuGs,54247
497
+ flock/webapp/app/main.py,sha256=Clzfp1KeSe15jZzhna4Ung5hmQkdljT_0C-0RhU6rVw,57141
493
498
  flock/webapp/app/models_ui.py,sha256=vrEBLbhEp6FziAgBSFOLT1M7ckwadsTdT7qus5_NduE,329
494
499
  flock/webapp/app/theme_mapper.py,sha256=QzWwLWpED78oYp3FjZ9zxv1KxCyj43m8MZ0fhfzz37w,34302
495
500
  flock/webapp/app/utils.py,sha256=RF8DMKKAj1XPmm4txUdo2OdswI1ATQ7cqUm6G9JFDzA,2942
@@ -501,7 +506,7 @@ flock/webapp/app/api/registry_viewer.py,sha256=IoInxJiRR0yFlecG_l2_eRc6l35RQQyED
501
506
  flock/webapp/app/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
502
507
  flock/webapp/app/services/flock_service.py,sha256=olU1My3YYkrTCVIOYPgRted-8YgAop-Yi7G4gbRHTrg,14941
503
508
  flock/webapp/app/services/sharing_models.py,sha256=XeJk1akILV_1l-cIUaG8k_eYhjV3EWBCWZ2kpwbdImA,3609
504
- flock/webapp/app/services/sharing_store.py,sha256=lcamERCXfmDnLObdukXI4TWeJPAP7-2gm4IsN6R4DjI,9409
509
+ flock/webapp/app/services/sharing_store.py,sha256=qegEx2rbhlhJgxGjZ-5MJXCnxDBYoPnfL0THcobuEIk,17816
505
510
  flock/webapp/app/templates/theme_mapper.html,sha256=z8ZY7nmk6PiUGzD_-px7wSXcEnuBM121rMq6u-2oaCo,14249
506
511
  flock/webapp/static/css/chat.css,sha256=Njc9gXfQzbXMrqtFJH2Yda-IQlwNPd2z4apXxzfA0sY,8169
507
512
  flock/webapp/static/css/components.css,sha256=WnicEHy3ptPzggKmyG9_oZp3X30EMJBUW3KEXaiUCUE,6018
@@ -509,43 +514,43 @@ flock/webapp/static/css/header.css,sha256=E9MgItZCk34S65NfMJ001ZsRz4oyFSJex8KvIN
509
514
  flock/webapp/static/css/layout.css,sha256=ocDd7dmezdQzNAQDuQSv1xZ8-pcbNgYLUYJB1SKcfvw,1526
510
515
  flock/webapp/static/css/sidebar.css,sha256=gCwLTAiIvmHGksm0rHDpMsOGCDKBMxqx_aEc8ZQcQF8,3066
511
516
  flock/webapp/static/css/two-pane.css,sha256=dTrCm5y3odO105Pt_yHtAl3uzUSy2fqDSCEC_jxeEDM,1181
512
- flock/webapp/templates/base.html,sha256=4aGkj-tL-tOcPtpNvrsiOhGUn6EfaCpAOsto_MB4IKs,9817
513
- flock/webapp/templates/chat.html,sha256=9JMupaOFvVLxJ2DnLRmjaPWBN96nIOgQRYkHe3h_OzQ,7397
514
- flock/webapp/templates/chat_settings.html,sha256=nYz6ihYAUA9zN-Jru565QNl8_eJdoLMWC2LdZJtZ-20,862
515
- flock/webapp/templates/flock_editor.html,sha256=ysDExf9zMj4SMsSXZUpCtG9EjIv8VJ5xL4IJQOMlb7o,542
516
- flock/webapp/templates/index.html,sha256=eK7s5Cnh63unqPwq9NGZGEKyvYwkhudfmSn9su3Ctyg,412
517
- flock/webapp/templates/registry_viewer.html,sha256=suAiWDvBxJ8SsF9MhheuN6MMQUZuIhTlurmbFOcYJfI,3235
518
- flock/webapp/templates/shared_run_page.html,sha256=VaiCieI1kXP6y1eFprbVh9tG1-5CS-d-z7Kw2cUAeis,7985
519
- flock/webapp/templates/partials/_agent_detail_form.html,sha256=a-YM1CozCXBRoBEdfAw3tL9X-rjRy4OWeiwxk6Dcjfg,6024
520
- flock/webapp/templates/partials/_agent_list.html,sha256=comYjOeUxQvlJzS-3D4OruJKlhC3uhCgo-X-nqiOhkA,1037
521
- flock/webapp/templates/partials/_agent_manager_view.html,sha256=oUJ-t2Mk3o4xjQ_HtHz0glgaHM8eqZpPB4i24ToJiJ8,2565
517
+ flock/webapp/templates/base.html,sha256=-XFV6cAyl77_fdF0_syUYYDmV1Rdje6ATEumxkyn7Gk,10006
518
+ flock/webapp/templates/chat.html,sha256=kz1No9tZfOt6eFzI1KNmfYrSglWIr9bxkGZDEaBH9oc,7506
519
+ flock/webapp/templates/chat_settings.html,sha256=eUHOOEt52jW8DxAMM6jLOPPsdHMdhiQzKuEdgeT0BOI,930
520
+ flock/webapp/templates/flock_editor.html,sha256=Zlo-jLbNZshsxvC9vFDnqWNxdJiKelITlsvX5CAl4RI,547
521
+ flock/webapp/templates/index.html,sha256=1SDfAfaGBNJhI26bc6z7qBo9mrOK7HKQIS9aRGvMnBA,429
522
+ flock/webapp/templates/registry_viewer.html,sha256=Rq0Ao3r6mqwgF6bWM73d-KmnslwQoz79a2PGbL5M4Fo,3349
523
+ flock/webapp/templates/shared_run_page.html,sha256=RX1J3hgEuIJXaGYlquY7m54yxPTIrJJAZH2HB6v33WY,8109
524
+ flock/webapp/templates/partials/_agent_detail_form.html,sha256=jpcbj2-zN_eWH6vlhWGBAviObmK2IZvezU_b2_UW-Tc,6067
525
+ flock/webapp/templates/partials/_agent_list.html,sha256=2Gvm84BPX5Wm3IwmuqTNX-I5c46P18obC-k0quEQ8VQ,1048
526
+ flock/webapp/templates/partials/_agent_manager_view.html,sha256=8oJlxjtgeOkCQcfhaAmE4s_tklk25Jw0XScXpS_MVr0,2571
522
527
  flock/webapp/templates/partials/_agent_tools_checklist.html,sha256=T60fb7OrJYHUw0hJLC_otskgvbH9dZXbv5klgWBkSWk,686
523
- flock/webapp/templates/partials/_chat_container.html,sha256=n4MzCHAYvTw7rpINIW1dw7LgMSC0ifRORTU47We0p4s,804
528
+ flock/webapp/templates/partials/_chat_container.html,sha256=MHj9yRHy_wVZD6f_Csc0bZBhtxJMfr2V5bRRAaXiqtU,843
524
529
  flock/webapp/templates/partials/_chat_messages.html,sha256=Tt9wD8JoX1bQ6lPWOCGtWWY9rw-ULyToVDcmEaDz07M,3790
525
- flock/webapp/templates/partials/_chat_settings_form.html,sha256=JAO1OXw654WusY871MtjfxAeSuraBEH_taf1tQ2zKhA,4479
526
- flock/webapp/templates/partials/_create_flock_form.html,sha256=nQVbuTWqOQ59q5zyGXkuBixikvCkaZIPVW8CRF6wCm0,2806
527
- flock/webapp/templates/partials/_dashboard_flock_detail.html,sha256=c7srF0nL8ETmP0ATsIxF8MMHMtHVXJqWVzdrnu2i-1Q,1012
528
- flock/webapp/templates/partials/_dashboard_flock_file_list.html,sha256=hevhRzK94tHJC6j8_iLc0ORCOb0wEYHCpRWecXB-5io,795
529
- flock/webapp/templates/partials/_dashboard_flock_properties_preview.html,sha256=jxBKR6hnDXccqxUqFV6zJjsE1YeXhdELwlXGB6uMDEU,1595
530
- flock/webapp/templates/partials/_dashboard_upload_flock_form.html,sha256=lQxR75yLgeRdm1vSkpGGgkhhfQ5JQvu14jx1y-QZUAM,956
530
+ flock/webapp/templates/partials/_chat_settings_form.html,sha256=iPb0XT52VLyU9HDsoFH41uXosGJsuXwaU1smKDWc_ms,4538
531
+ flock/webapp/templates/partials/_create_flock_form.html,sha256=7IukF4rQwdn3D5fVXqusGlTmNeoJXEwclhzQt57NVDY,2823
532
+ flock/webapp/templates/partials/_dashboard_flock_detail.html,sha256=RWPshcq3-11j13jw5j-x4r3AMULdNHsWK4ejfLYD4MM,1044
533
+ flock/webapp/templates/partials/_dashboard_flock_file_list.html,sha256=TT-4qh9Lx6pHi3MLIteMbeEM3O6w78KHw5zgqkOJMuo,815
534
+ flock/webapp/templates/partials/_dashboard_flock_properties_preview.html,sha256=7xkc2vxJFhERQXI_rNWXaUQuJ4X6_AJpgmPZa75OV3A,1620
535
+ flock/webapp/templates/partials/_dashboard_upload_flock_form.html,sha256=UWU_WpIsq6iw5FwK989ANmhzcCOcDKVjdakZ4kxY8lU,961
531
536
  flock/webapp/templates/partials/_dynamic_input_form_content.html,sha256=WYr2M7Mb5vKITFhIVXXEHppRx9IjGew91yLo1_I9kkI,1230
532
- flock/webapp/templates/partials/_env_vars_table.html,sha256=6TFUWvkYwzwodqXZ0yJhH_NU6L4tz7V09mDamSfDI8c,1082
533
- flock/webapp/templates/partials/_execution_form.html,sha256=296AFx0WSbCzX8t-L1pRl8s0AUzeOb2fmTiRlcwYoIg,3274
534
- flock/webapp/templates/partials/_execution_view_container.html,sha256=8_kvsXBfROHcpqFfKl8MNhDWLusUOA2-7ygwtdJax7o,1702
535
- flock/webapp/templates/partials/_flock_file_list.html,sha256=FjIxAqB0OxA0mQ8f2jBX1_M_AM5ea7gCA8PEjPpiZVc,1209
536
- flock/webapp/templates/partials/_flock_properties_form.html,sha256=alOsGYzktVX6aYtfxRHganBfipkzx5Kk4RxF6C0IHhk,2891
537
- flock/webapp/templates/partials/_flock_upload_form.html,sha256=h2dIPwPeTg5dv_ubrZiwBXReF0NjzJ6eKSwwz7mbQQs,960
537
+ flock/webapp/templates/partials/_env_vars_table.html,sha256=st8bRQpIJ3TJ_znEdyOwDT43ZhO2QTLne2IZNxQdQNM,1106
538
+ flock/webapp/templates/partials/_execution_form.html,sha256=0Tgqk-JWW8tzSJPKZ4CFT4ZvNCB02Zesib2QN6bEiUk,3526
539
+ flock/webapp/templates/partials/_execution_view_container.html,sha256=w4QEr-yPs0k1vF2oxMhhPoOr-ki0YJzzUltGmZgfRfY,1672
540
+ flock/webapp/templates/partials/_flock_file_list.html,sha256=3F1RE1EaeRSQeyIWeA2ALHU2j4oGwureDtY6k1aZVjQ,1261
541
+ flock/webapp/templates/partials/_flock_properties_form.html,sha256=kUHoxB6_C_R9nMDD_ClLRDL_9zQ6E8gFCrlkEkqcUYo,2904
542
+ flock/webapp/templates/partials/_flock_upload_form.html,sha256=IK4Kk_82z3m9zlutKak58NBj9PMpTGXtTmeiPSoJVy0,965
538
543
  flock/webapp/templates/partials/_header_flock_status.html,sha256=reNB4Prsu9lObz5tFhGk3AMe4bNw92gDJZUKABVaVBM,158
539
- flock/webapp/templates/partials/_load_manager_view.html,sha256=2u4lufQMEpUlQOThUzo1zrE3AulDQ-aErruS6t91W44,2909
544
+ flock/webapp/templates/partials/_load_manager_view.html,sha256=lu_2yKJcBPF8yZEeA0rnCPpYODieVfQgjq8HzKoPTzs,2950
540
545
  flock/webapp/templates/partials/_registry_table.html,sha256=z4EW5G3DTknymBeSlpL2PZLcb2143P35upMnmHFfeJs,715
541
- flock/webapp/templates/partials/_registry_viewer_content.html,sha256=iQyxaLUzz1IcZouRLcMg73k-xcOZvOHVPfpuU7uXgYo,1891
546
+ flock/webapp/templates/partials/_registry_viewer_content.html,sha256=FBqP1YRL-rfE6YpgtWnpyFqATUhVKUHTGvF6QbIOKrw,1968
542
547
  flock/webapp/templates/partials/_results_display.html,sha256=1UJvCeyJTPxuJYUcGUM8O8uhNvCxxOfxpCjC-PCr80U,5268
543
- flock/webapp/templates/partials/_settings_env_content.html,sha256=Q1Xr6wLHLlqiduqNk6PyF1B4juP-vvqLOLZyiHHNRLc,572
544
- flock/webapp/templates/partials/_settings_theme_content.html,sha256=-y5vGRKBZf3Cp5DDE1M4Qw-yunuMtCG54Sa7r60XfJE,807
545
- flock/webapp/templates/partials/_settings_view.html,sha256=7Uy2EfAgVJ2Kac5S6nkeaIEr2tSagVyR5CBbf07fbSQ,1349
548
+ flock/webapp/templates/partials/_settings_env_content.html,sha256=16h1ppTGNY7wNkxQkaNhouTNN22tlw_u5rBk6cdhzFk,597
549
+ flock/webapp/templates/partials/_settings_theme_content.html,sha256=wjd4Pg_NjEaraTo84DekbJhfKO5AIMnDje6eR-kMufo,833
550
+ flock/webapp/templates/partials/_settings_view.html,sha256=f2h9jnDv8-JRkDzsbk_1oqAGoCBrMwL0Zp4-ENSAdwY,1375
546
551
  flock/webapp/templates/partials/_share_chat_link_snippet.html,sha256=N83lNAbkZiDfzZYviKwURPGGErSZhRlxnNzUqXsB7lE,793
547
552
  flock/webapp/templates/partials/_share_link_snippet.html,sha256=6en9lOdtu8FwVbtmkJzSQpHQ1WFXHnCbe84FDgAEF3U,1533
548
- flock/webapp/templates/partials/_sidebar.html,sha256=uA-SZKfVpxImT8Acpw2hhpJbOk1BlaLeSzRjleYfuSE,4450
553
+ flock/webapp/templates/partials/_sidebar.html,sha256=yfhEcF3xKI5j1c3iq46mU8mmPvgyvCHXe6xT7vsE6KM,4984
549
554
  flock/webapp/templates/partials/_structured_data_view.html,sha256=TEaXcMGba9ruxEc_MLxygIO1qWcuSTo1FnosFtGSKWI,2101
550
555
  flock/webapp/templates/partials/_theme_preview.html,sha256=81vP5z8958LjhGWGwjVAVw3zW0uvYwfcXlU30i9exmo,867
551
556
  flock/workflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -555,8 +560,8 @@ flock/workflow/agent_execution_activity.py,sha256=Gy6FtuVAjf0NiUXmC3syS2eJpNQF4R
555
560
  flock/workflow/flock_workflow.py,sha256=iSUF_soFvWar0ffpkzE4irkDZRx0p4HnwmEBi_Ne2sY,9666
556
561
  flock/workflow/temporal_config.py,sha256=3_8O7SDEjMsSMXsWJBfnb6XTp0TFaz39uyzSlMTSF_I,3988
557
562
  flock/workflow/temporal_setup.py,sha256=YIHnSBntzOchHfMSh8hoLeNXrz3B1UbR14YrR6soM7A,1606
558
- flock_core-0.4.511.dist-info/METADATA,sha256=z5Ej34edD5OxdhIiXbXIkSxvMfr97CG0SHh_d_NfTmY,22584
559
- flock_core-0.4.511.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
560
- flock_core-0.4.511.dist-info/entry_points.txt,sha256=rWaS5KSpkTmWySURGFZk6PhbJ87TmvcFQDi2uzjlagQ,37
561
- flock_core-0.4.511.dist-info/licenses/LICENSE,sha256=iYEqWy0wjULzM9GAERaybP4LBiPeu7Z1NEliLUdJKSc,1072
562
- flock_core-0.4.511.dist-info/RECORD,,
563
+ flock_core-0.4.513.dist-info/METADATA,sha256=B1qPt_zjSDR-AT1CZrY4VxbYOa6s6DXdsW2LV_07OsY,22656
564
+ flock_core-0.4.513.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
565
+ flock_core-0.4.513.dist-info/entry_points.txt,sha256=rWaS5KSpkTmWySURGFZk6PhbJ87TmvcFQDi2uzjlagQ,37
566
+ flock_core-0.4.513.dist-info/licenses/LICENSE,sha256=iYEqWy0wjULzM9GAERaybP4LBiPeu7Z1NEliLUdJKSc,1072
567
+ flock_core-0.4.513.dist-info/RECORD,,