hexdag 0.5.0.dev1__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.
- hexdag/__init__.py +116 -0
- hexdag/__main__.py +30 -0
- hexdag/adapters/executors/__init__.py +5 -0
- hexdag/adapters/executors/local_executor.py +316 -0
- hexdag/builtin/__init__.py +6 -0
- hexdag/builtin/adapters/__init__.py +51 -0
- hexdag/builtin/adapters/anthropic/__init__.py +5 -0
- hexdag/builtin/adapters/anthropic/anthropic_adapter.py +151 -0
- hexdag/builtin/adapters/database/__init__.py +6 -0
- hexdag/builtin/adapters/database/csv/csv_adapter.py +249 -0
- hexdag/builtin/adapters/database/pgvector/__init__.py +5 -0
- hexdag/builtin/adapters/database/pgvector/pgvector_adapter.py +478 -0
- hexdag/builtin/adapters/database/sqlalchemy/sqlalchemy_adapter.py +252 -0
- hexdag/builtin/adapters/database/sqlite/__init__.py +5 -0
- hexdag/builtin/adapters/database/sqlite/sqlite_adapter.py +410 -0
- hexdag/builtin/adapters/local/README.md +59 -0
- hexdag/builtin/adapters/local/__init__.py +7 -0
- hexdag/builtin/adapters/local/local_observer_manager.py +696 -0
- hexdag/builtin/adapters/memory/__init__.py +47 -0
- hexdag/builtin/adapters/memory/file_memory_adapter.py +297 -0
- hexdag/builtin/adapters/memory/in_memory_memory.py +216 -0
- hexdag/builtin/adapters/memory/schemas.py +57 -0
- hexdag/builtin/adapters/memory/session_memory.py +178 -0
- hexdag/builtin/adapters/memory/sqlite_memory_adapter.py +215 -0
- hexdag/builtin/adapters/memory/state_memory.py +280 -0
- hexdag/builtin/adapters/mock/README.md +89 -0
- hexdag/builtin/adapters/mock/__init__.py +15 -0
- hexdag/builtin/adapters/mock/hexdag.toml +50 -0
- hexdag/builtin/adapters/mock/mock_database.py +225 -0
- hexdag/builtin/adapters/mock/mock_embedding.py +223 -0
- hexdag/builtin/adapters/mock/mock_llm.py +177 -0
- hexdag/builtin/adapters/mock/mock_tool_adapter.py +192 -0
- hexdag/builtin/adapters/mock/mock_tool_router.py +232 -0
- hexdag/builtin/adapters/openai/__init__.py +5 -0
- hexdag/builtin/adapters/openai/openai_adapter.py +634 -0
- hexdag/builtin/adapters/secret/__init__.py +7 -0
- hexdag/builtin/adapters/secret/local_secret_adapter.py +248 -0
- hexdag/builtin/adapters/unified_tool_router.py +280 -0
- hexdag/builtin/macros/__init__.py +17 -0
- hexdag/builtin/macros/conversation_agent.py +390 -0
- hexdag/builtin/macros/llm_macro.py +151 -0
- hexdag/builtin/macros/reasoning_agent.py +423 -0
- hexdag/builtin/macros/tool_macro.py +380 -0
- hexdag/builtin/nodes/__init__.py +38 -0
- hexdag/builtin/nodes/_discovery.py +123 -0
- hexdag/builtin/nodes/agent_node.py +696 -0
- hexdag/builtin/nodes/base_node_factory.py +242 -0
- hexdag/builtin/nodes/composite_node.py +926 -0
- hexdag/builtin/nodes/data_node.py +201 -0
- hexdag/builtin/nodes/expression_node.py +487 -0
- hexdag/builtin/nodes/function_node.py +454 -0
- hexdag/builtin/nodes/llm_node.py +491 -0
- hexdag/builtin/nodes/loop_node.py +920 -0
- hexdag/builtin/nodes/mapped_input.py +518 -0
- hexdag/builtin/nodes/port_call_node.py +269 -0
- hexdag/builtin/nodes/tool_call_node.py +195 -0
- hexdag/builtin/nodes/tool_utils.py +390 -0
- hexdag/builtin/prompts/__init__.py +68 -0
- hexdag/builtin/prompts/base.py +422 -0
- hexdag/builtin/prompts/chat_prompts.py +303 -0
- hexdag/builtin/prompts/error_correction_prompts.py +320 -0
- hexdag/builtin/prompts/tool_prompts.py +160 -0
- hexdag/builtin/tools/builtin_tools.py +84 -0
- hexdag/builtin/tools/database_tools.py +164 -0
- hexdag/cli/__init__.py +17 -0
- hexdag/cli/__main__.py +7 -0
- hexdag/cli/commands/__init__.py +27 -0
- hexdag/cli/commands/build_cmd.py +812 -0
- hexdag/cli/commands/create_cmd.py +208 -0
- hexdag/cli/commands/docs_cmd.py +293 -0
- hexdag/cli/commands/generate_types_cmd.py +252 -0
- hexdag/cli/commands/init_cmd.py +188 -0
- hexdag/cli/commands/pipeline_cmd.py +494 -0
- hexdag/cli/commands/plugin_dev_cmd.py +529 -0
- hexdag/cli/commands/plugins_cmd.py +441 -0
- hexdag/cli/commands/studio_cmd.py +101 -0
- hexdag/cli/commands/validate_cmd.py +221 -0
- hexdag/cli/main.py +84 -0
- hexdag/core/__init__.py +83 -0
- hexdag/core/config/__init__.py +20 -0
- hexdag/core/config/loader.py +479 -0
- hexdag/core/config/models.py +150 -0
- hexdag/core/configurable.py +294 -0
- hexdag/core/context/__init__.py +37 -0
- hexdag/core/context/execution_context.py +378 -0
- hexdag/core/docs/__init__.py +26 -0
- hexdag/core/docs/extractors.py +678 -0
- hexdag/core/docs/generators.py +890 -0
- hexdag/core/docs/models.py +120 -0
- hexdag/core/domain/__init__.py +10 -0
- hexdag/core/domain/dag.py +1225 -0
- hexdag/core/exceptions.py +234 -0
- hexdag/core/expression_parser.py +569 -0
- hexdag/core/logging.py +449 -0
- hexdag/core/models/__init__.py +17 -0
- hexdag/core/models/base.py +138 -0
- hexdag/core/orchestration/__init__.py +46 -0
- hexdag/core/orchestration/body_executor.py +481 -0
- hexdag/core/orchestration/components/__init__.py +97 -0
- hexdag/core/orchestration/components/adapter_lifecycle_manager.py +113 -0
- hexdag/core/orchestration/components/checkpoint_manager.py +134 -0
- hexdag/core/orchestration/components/execution_coordinator.py +360 -0
- hexdag/core/orchestration/components/health_check_manager.py +176 -0
- hexdag/core/orchestration/components/input_mapper.py +143 -0
- hexdag/core/orchestration/components/lifecycle_manager.py +583 -0
- hexdag/core/orchestration/components/node_executor.py +377 -0
- hexdag/core/orchestration/components/secret_manager.py +202 -0
- hexdag/core/orchestration/components/wave_executor.py +158 -0
- hexdag/core/orchestration/constants.py +17 -0
- hexdag/core/orchestration/events/README.md +312 -0
- hexdag/core/orchestration/events/__init__.py +104 -0
- hexdag/core/orchestration/events/batching.py +330 -0
- hexdag/core/orchestration/events/decorators.py +139 -0
- hexdag/core/orchestration/events/events.py +573 -0
- hexdag/core/orchestration/events/observers/__init__.py +30 -0
- hexdag/core/orchestration/events/observers/core_observers.py +690 -0
- hexdag/core/orchestration/events/observers/models.py +111 -0
- hexdag/core/orchestration/events/taxonomy.py +269 -0
- hexdag/core/orchestration/hook_context.py +237 -0
- hexdag/core/orchestration/hooks.py +437 -0
- hexdag/core/orchestration/models.py +418 -0
- hexdag/core/orchestration/orchestrator.py +910 -0
- hexdag/core/orchestration/orchestrator_factory.py +275 -0
- hexdag/core/orchestration/port_wrappers.py +327 -0
- hexdag/core/orchestration/prompt/__init__.py +32 -0
- hexdag/core/orchestration/prompt/template.py +332 -0
- hexdag/core/pipeline_builder/__init__.py +21 -0
- hexdag/core/pipeline_builder/component_instantiator.py +386 -0
- hexdag/core/pipeline_builder/include_tag.py +265 -0
- hexdag/core/pipeline_builder/pipeline_config.py +133 -0
- hexdag/core/pipeline_builder/py_tag.py +223 -0
- hexdag/core/pipeline_builder/tag_discovery.py +268 -0
- hexdag/core/pipeline_builder/yaml_builder.py +1196 -0
- hexdag/core/pipeline_builder/yaml_validator.py +569 -0
- hexdag/core/ports/__init__.py +65 -0
- hexdag/core/ports/api_call.py +133 -0
- hexdag/core/ports/database.py +489 -0
- hexdag/core/ports/embedding.py +215 -0
- hexdag/core/ports/executor.py +237 -0
- hexdag/core/ports/file_storage.py +117 -0
- hexdag/core/ports/healthcheck.py +87 -0
- hexdag/core/ports/llm.py +551 -0
- hexdag/core/ports/memory.py +70 -0
- hexdag/core/ports/observer_manager.py +130 -0
- hexdag/core/ports/secret.py +145 -0
- hexdag/core/ports/tool_router.py +94 -0
- hexdag/core/ports_builder.py +623 -0
- hexdag/core/protocols.py +273 -0
- hexdag/core/resolver.py +304 -0
- hexdag/core/schema/__init__.py +9 -0
- hexdag/core/schema/generator.py +742 -0
- hexdag/core/secrets.py +242 -0
- hexdag/core/types.py +413 -0
- hexdag/core/utils/async_warnings.py +206 -0
- hexdag/core/utils/schema_conversion.py +78 -0
- hexdag/core/utils/sql_validation.py +86 -0
- hexdag/core/validation/secure_json.py +148 -0
- hexdag/core/yaml_macro.py +517 -0
- hexdag/mcp_server.py +3120 -0
- hexdag/studio/__init__.py +10 -0
- hexdag/studio/build_ui.py +92 -0
- hexdag/studio/server/__init__.py +1 -0
- hexdag/studio/server/main.py +100 -0
- hexdag/studio/server/routes/__init__.py +9 -0
- hexdag/studio/server/routes/execute.py +208 -0
- hexdag/studio/server/routes/export.py +558 -0
- hexdag/studio/server/routes/files.py +207 -0
- hexdag/studio/server/routes/plugins.py +419 -0
- hexdag/studio/server/routes/validate.py +220 -0
- hexdag/studio/ui/index.html +13 -0
- hexdag/studio/ui/package-lock.json +2992 -0
- hexdag/studio/ui/package.json +31 -0
- hexdag/studio/ui/postcss.config.js +6 -0
- hexdag/studio/ui/public/hexdag.svg +5 -0
- hexdag/studio/ui/src/App.tsx +251 -0
- hexdag/studio/ui/src/components/Canvas.tsx +408 -0
- hexdag/studio/ui/src/components/ContextMenu.tsx +187 -0
- hexdag/studio/ui/src/components/FileBrowser.tsx +123 -0
- hexdag/studio/ui/src/components/Header.tsx +181 -0
- hexdag/studio/ui/src/components/HexdagNode.tsx +193 -0
- hexdag/studio/ui/src/components/NodeInspector.tsx +512 -0
- hexdag/studio/ui/src/components/NodePalette.tsx +262 -0
- hexdag/studio/ui/src/components/NodePortsSection.tsx +403 -0
- hexdag/studio/ui/src/components/PluginManager.tsx +347 -0
- hexdag/studio/ui/src/components/PortsEditor.tsx +481 -0
- hexdag/studio/ui/src/components/PythonEditor.tsx +195 -0
- hexdag/studio/ui/src/components/ValidationPanel.tsx +105 -0
- hexdag/studio/ui/src/components/YamlEditor.tsx +196 -0
- hexdag/studio/ui/src/components/index.ts +8 -0
- hexdag/studio/ui/src/index.css +92 -0
- hexdag/studio/ui/src/main.tsx +10 -0
- hexdag/studio/ui/src/types/index.ts +123 -0
- hexdag/studio/ui/src/vite-env.d.ts +1 -0
- hexdag/studio/ui/tailwind.config.js +29 -0
- hexdag/studio/ui/tsconfig.json +37 -0
- hexdag/studio/ui/tsconfig.node.json +13 -0
- hexdag/studio/ui/vite.config.ts +35 -0
- hexdag/visualization/__init__.py +69 -0
- hexdag/visualization/dag_visualizer.py +1020 -0
- hexdag-0.5.0.dev1.dist-info/METADATA +369 -0
- hexdag-0.5.0.dev1.dist-info/RECORD +261 -0
- hexdag-0.5.0.dev1.dist-info/WHEEL +4 -0
- hexdag-0.5.0.dev1.dist-info/entry_points.txt +4 -0
- hexdag-0.5.0.dev1.dist-info/licenses/LICENSE +190 -0
- hexdag_plugins/.gitignore +43 -0
- hexdag_plugins/README.md +73 -0
- hexdag_plugins/__init__.py +1 -0
- hexdag_plugins/azure/LICENSE +21 -0
- hexdag_plugins/azure/README.md +414 -0
- hexdag_plugins/azure/__init__.py +21 -0
- hexdag_plugins/azure/azure_blob_adapter.py +450 -0
- hexdag_plugins/azure/azure_cosmos_adapter.py +383 -0
- hexdag_plugins/azure/azure_keyvault_adapter.py +314 -0
- hexdag_plugins/azure/azure_openai_adapter.py +415 -0
- hexdag_plugins/azure/pyproject.toml +107 -0
- hexdag_plugins/azure/tests/__init__.py +1 -0
- hexdag_plugins/azure/tests/test_azure_blob_adapter.py +350 -0
- hexdag_plugins/azure/tests/test_azure_cosmos_adapter.py +323 -0
- hexdag_plugins/azure/tests/test_azure_keyvault_adapter.py +330 -0
- hexdag_plugins/azure/tests/test_azure_openai_adapter.py +329 -0
- hexdag_plugins/hexdag_etl/README.md +168 -0
- hexdag_plugins/hexdag_etl/__init__.py +53 -0
- hexdag_plugins/hexdag_etl/examples/01_simple_pandas_transform.py +270 -0
- hexdag_plugins/hexdag_etl/examples/02_simple_pandas_only.py +149 -0
- hexdag_plugins/hexdag_etl/examples/03_file_io_pipeline.py +109 -0
- hexdag_plugins/hexdag_etl/examples/test_pandas_transform.py +84 -0
- hexdag_plugins/hexdag_etl/hexdag.toml +25 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/__init__.py +48 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/__init__.py +13 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/api_extract.py +230 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/base_node_factory.py +181 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/file_io.py +415 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/outlook.py +492 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/pandas_transform.py +563 -0
- hexdag_plugins/hexdag_etl/hexdag_etl/nodes/sql_extract_load.py +112 -0
- hexdag_plugins/hexdag_etl/pyproject.toml +82 -0
- hexdag_plugins/hexdag_etl/test_transform.py +54 -0
- hexdag_plugins/hexdag_etl/tests/test_plugin_integration.py +62 -0
- hexdag_plugins/mysql_adapter/LICENSE +21 -0
- hexdag_plugins/mysql_adapter/README.md +224 -0
- hexdag_plugins/mysql_adapter/__init__.py +6 -0
- hexdag_plugins/mysql_adapter/mysql_adapter.py +408 -0
- hexdag_plugins/mysql_adapter/pyproject.toml +93 -0
- hexdag_plugins/mysql_adapter/tests/test_mysql_adapter.py +259 -0
- hexdag_plugins/storage/README.md +184 -0
- hexdag_plugins/storage/__init__.py +19 -0
- hexdag_plugins/storage/file/__init__.py +5 -0
- hexdag_plugins/storage/file/local.py +325 -0
- hexdag_plugins/storage/ports/__init__.py +5 -0
- hexdag_plugins/storage/ports/vector_store.py +236 -0
- hexdag_plugins/storage/sql/__init__.py +7 -0
- hexdag_plugins/storage/sql/base.py +187 -0
- hexdag_plugins/storage/sql/mysql.py +27 -0
- hexdag_plugins/storage/sql/postgresql.py +27 -0
- hexdag_plugins/storage/tests/__init__.py +1 -0
- hexdag_plugins/storage/tests/test_local_file_storage.py +161 -0
- hexdag_plugins/storage/tests/test_sql_adapters.py +212 -0
- hexdag_plugins/storage/vector/__init__.py +7 -0
- hexdag_plugins/storage/vector/chromadb.py +223 -0
- hexdag_plugins/storage/vector/in_memory.py +285 -0
- hexdag_plugins/storage/vector/pgvector.py +502 -0
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: hexdag
|
|
3
|
+
Version: 0.5.0.dev1
|
|
4
|
+
Summary: Lightweight DAG orchestration framework with enterprise pipeline capabilities
|
|
5
|
+
Project-URL: Homepage, https://hexdag.ai
|
|
6
|
+
Project-URL: Repository, https://github.com/omniviser/hexdag
|
|
7
|
+
Project-URL: Documentation, https://hexdag.ai/docs
|
|
8
|
+
Author-email: hexDAG Team <developers@omniviser.ai>
|
|
9
|
+
License: Apache-2.0
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Keywords: async,dag,hexagonal-architecture,orchestration,pipeline,workflow
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
18
|
+
Requires-Python: ~=3.12.0
|
|
19
|
+
Requires-Dist: jinja2>=3.1.0
|
|
20
|
+
Requires-Dist: loguru>=0.7.0
|
|
21
|
+
Requires-Dist: orjson>=3.9.0
|
|
22
|
+
Requires-Dist: pydantic~=2.0
|
|
23
|
+
Requires-Dist: pyyaml~=6.0
|
|
24
|
+
Requires-Dist: rich>=13.0.0
|
|
25
|
+
Requires-Dist: typer>=0.9.0
|
|
26
|
+
Provides-Extra: all
|
|
27
|
+
Requires-Dist: aiofiles>=23.0.0; extra == 'all'
|
|
28
|
+
Requires-Dist: aiomysql>=0.2.0; extra == 'all'
|
|
29
|
+
Requires-Dist: aiosqlite>=0.19.0; extra == 'all'
|
|
30
|
+
Requires-Dist: aiosqlite>=0.20.0; extra == 'all'
|
|
31
|
+
Requires-Dist: anthropic>=0.25.0; extra == 'all'
|
|
32
|
+
Requires-Dist: asyncpg>=0.29.0; extra == 'all'
|
|
33
|
+
Requires-Dist: chromadb>=0.4.0; extra == 'all'
|
|
34
|
+
Requires-Dist: fastapi>=0.109.0; extra == 'all'
|
|
35
|
+
Requires-Dist: graphviz<0.21,>=0.20.0; extra == 'all'
|
|
36
|
+
Requires-Dist: ipykernel>=6.25.0; extra == 'all'
|
|
37
|
+
Requires-Dist: jupyter>=1.0.0; extra == 'all'
|
|
38
|
+
Requires-Dist: matplotlib>=3.8.0; extra == 'all'
|
|
39
|
+
Requires-Dist: mcp>=1.0.0; extra == 'all'
|
|
40
|
+
Requires-Dist: nbconvert>=7.0.0; extra == 'all'
|
|
41
|
+
Requires-Dist: nbformat>=5.9.0; extra == 'all'
|
|
42
|
+
Requires-Dist: openai>=1.0.0; extra == 'all'
|
|
43
|
+
Requires-Dist: pandas>=2.1.0; extra == 'all'
|
|
44
|
+
Requires-Dist: pgvector>=0.3.0; extra == 'all'
|
|
45
|
+
Requires-Dist: sqlalchemy>=2.0.0; extra == 'all'
|
|
46
|
+
Requires-Dist: uvicorn>=0.27.0; extra == 'all'
|
|
47
|
+
Requires-Dist: watchfiles>=0.21.0; extra == 'all'
|
|
48
|
+
Provides-Extra: anthropic
|
|
49
|
+
Requires-Dist: anthropic>=0.25.0; extra == 'anthropic'
|
|
50
|
+
Provides-Extra: database
|
|
51
|
+
Requires-Dist: aiofiles>=23.0.0; extra == 'database'
|
|
52
|
+
Requires-Dist: aiosqlite>=0.19.0; extra == 'database'
|
|
53
|
+
Provides-Extra: mcp
|
|
54
|
+
Requires-Dist: mcp>=1.0.0; extra == 'mcp'
|
|
55
|
+
Provides-Extra: notebooks
|
|
56
|
+
Requires-Dist: ipykernel>=6.25.0; extra == 'notebooks'
|
|
57
|
+
Requires-Dist: jupyter>=1.0.0; extra == 'notebooks'
|
|
58
|
+
Requires-Dist: matplotlib>=3.8.0; extra == 'notebooks'
|
|
59
|
+
Requires-Dist: nbconvert>=7.0.0; extra == 'notebooks'
|
|
60
|
+
Requires-Dist: nbformat>=5.9.0; extra == 'notebooks'
|
|
61
|
+
Requires-Dist: pandas>=2.1.0; extra == 'notebooks'
|
|
62
|
+
Provides-Extra: openai
|
|
63
|
+
Requires-Dist: openai>=1.0.0; extra == 'openai'
|
|
64
|
+
Provides-Extra: storage-all
|
|
65
|
+
Requires-Dist: aiomysql>=0.2.0; extra == 'storage-all'
|
|
66
|
+
Requires-Dist: aiosqlite>=0.20.0; extra == 'storage-all'
|
|
67
|
+
Requires-Dist: asyncpg>=0.29.0; extra == 'storage-all'
|
|
68
|
+
Requires-Dist: chromadb>=0.4.0; extra == 'storage-all'
|
|
69
|
+
Requires-Dist: pgvector>=0.3.0; extra == 'storage-all'
|
|
70
|
+
Requires-Dist: sqlalchemy>=2.0.0; extra == 'storage-all'
|
|
71
|
+
Provides-Extra: storage-chromadb
|
|
72
|
+
Requires-Dist: chromadb>=0.4.0; extra == 'storage-chromadb'
|
|
73
|
+
Provides-Extra: storage-mysql
|
|
74
|
+
Requires-Dist: aiomysql>=0.2.0; extra == 'storage-mysql'
|
|
75
|
+
Requires-Dist: sqlalchemy>=2.0.0; extra == 'storage-mysql'
|
|
76
|
+
Provides-Extra: storage-postgresql
|
|
77
|
+
Requires-Dist: asyncpg>=0.29.0; extra == 'storage-postgresql'
|
|
78
|
+
Requires-Dist: pgvector>=0.3.0; extra == 'storage-postgresql'
|
|
79
|
+
Requires-Dist: sqlalchemy>=2.0.0; extra == 'storage-postgresql'
|
|
80
|
+
Provides-Extra: storage-sqlite
|
|
81
|
+
Requires-Dist: aiosqlite>=0.20.0; extra == 'storage-sqlite'
|
|
82
|
+
Requires-Dist: sqlalchemy>=2.0.0; extra == 'storage-sqlite'
|
|
83
|
+
Provides-Extra: studio
|
|
84
|
+
Requires-Dist: fastapi>=0.109.0; extra == 'studio'
|
|
85
|
+
Requires-Dist: uvicorn>=0.27.0; extra == 'studio'
|
|
86
|
+
Requires-Dist: watchfiles>=0.21.0; extra == 'studio'
|
|
87
|
+
Provides-Extra: viz
|
|
88
|
+
Requires-Dist: graphviz<0.21,>=0.20.0; extra == 'viz'
|
|
89
|
+
Description-Content-Type: text/markdown
|
|
90
|
+
|
|
91
|
+
# 🤖 hexDAG - AI Agent Orchestration Framework
|
|
92
|
+
|
|
93
|
+
[](https://pypi.org/project/hexdag/)
|
|
94
|
+
[](https://www.python.org/downloads/)
|
|
95
|
+
[](https://github.com/astral-sh/uv)
|
|
96
|
+
[](https://github.com/pre-commit/pre-commit)
|
|
97
|
+
[](https://opensource.org/licenses/Apache-2.0)
|
|
98
|
+
|
|
99
|
+
> **Enterprise-ready AI agent orchestration with low-code declarative workflows and powerful macro system**
|
|
100
|
+
|
|
101
|
+
hexDAG revolutionizes AI development by making agent orchestration and data science workflows accessible through declarative YAML configurations, reusable macro templates, and advanced conversation patterns, while maintaining the power and flexibility needed for enterprise deployments.
|
|
102
|
+
|
|
103
|
+
## ✨ Why hexDAG?
|
|
104
|
+
|
|
105
|
+
Traditional AI frameworks force you to choose between simplicity and power. hexDAG delivers both through:
|
|
106
|
+
|
|
107
|
+
- **🤖 Agent-First Design**: Build complex multi-agent systems with simple YAML
|
|
108
|
+
- **📊 Data Science Ready**: Mix AI agents with traditional data processing seamlessly
|
|
109
|
+
- **🌊 Real-Time Streaming**: See agent thoughts and memory operations as they happen
|
|
110
|
+
- **🔧 Low-Code Development**: Non-technical users can create sophisticated workflows
|
|
111
|
+
- **🏢 Enterprise Grade**: Production-ready with comprehensive monitoring and control
|
|
112
|
+
- **🎭 Macro System**: Reusable pipeline templates that expand into full workflows
|
|
113
|
+
- **💬 Conversation Patterns**: Built-in support for multi-turn conversations with memory
|
|
114
|
+
|
|
115
|
+
## 🎯 The Six Pillars
|
|
116
|
+
|
|
117
|
+
1. **Async-First Architecture** - Non-blocking execution for maximum performance
|
|
118
|
+
2. **Event-Driven Observability** - Real-time monitoring of agent actions
|
|
119
|
+
3. **Pydantic Validation Everywhere** - Type safety and runtime validation
|
|
120
|
+
4. **Hexagonal Architecture** - Clean separation of business logic and infrastructure
|
|
121
|
+
5. **Composable Declarative Files** - Build complex workflows from simple components
|
|
122
|
+
6. **DAG-Based Orchestration** - Intelligent dependency management and parallelization
|
|
123
|
+
|
|
124
|
+
## 🚀 Quick Start
|
|
125
|
+
|
|
126
|
+
### Installation
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
# Install from PyPI
|
|
130
|
+
pip install hexdag
|
|
131
|
+
|
|
132
|
+
# Or with uv (recommended)
|
|
133
|
+
uv pip install hexdag
|
|
134
|
+
|
|
135
|
+
# With optional dependencies
|
|
136
|
+
pip install hexdag[openai] # OpenAI LLM support
|
|
137
|
+
pip install hexdag[anthropic] # Anthropic Claude support
|
|
138
|
+
pip install hexdag[all] # All optional dependencies
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
#### Development Installation
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
# Clone and install for development
|
|
145
|
+
git clone https://github.com/omniviser/hexdag.git
|
|
146
|
+
cd hexdag
|
|
147
|
+
uv sync
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### MCP Server for LLM Editors
|
|
151
|
+
|
|
152
|
+
hexDAG includes a built-in MCP (Model Context Protocol) server that exposes pipeline building capabilities to Claude Code, Cursor, and other LLM-powered editors:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
# Development: Install MCP dependencies
|
|
156
|
+
uv sync --extra mcp
|
|
157
|
+
|
|
158
|
+
# Production: Install from PyPI with MCP support
|
|
159
|
+
uv pip install "hexdag[mcp]"
|
|
160
|
+
|
|
161
|
+
# Configure in Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json)
|
|
162
|
+
{
|
|
163
|
+
"mcpServers": {
|
|
164
|
+
"hexdag": {
|
|
165
|
+
"command": "uv",
|
|
166
|
+
"args": ["run", "python", "-m", "hexdag", "--mcp"]
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
The MCP server provides LLMs with tools to:
|
|
173
|
+
- List available nodes, adapters, tools, and macros from your registry
|
|
174
|
+
- Build and validate YAML pipelines interactively
|
|
175
|
+
- Get component schemas and documentation
|
|
176
|
+
- Auto-discover custom plugins from your `pyproject.toml`
|
|
177
|
+
|
|
178
|
+
See [examples/mcp/](examples/mcp/) for detailed configuration guides.
|
|
179
|
+
|
|
180
|
+
### Your First Agent Workflow
|
|
181
|
+
|
|
182
|
+
Create a simple AI agent workflow with YAML:
|
|
183
|
+
|
|
184
|
+
```yaml
|
|
185
|
+
# research_agent.yaml
|
|
186
|
+
name: research_workflow
|
|
187
|
+
description: AI-powered research assistant
|
|
188
|
+
|
|
189
|
+
nodes:
|
|
190
|
+
- type: agent
|
|
191
|
+
id: researcher
|
|
192
|
+
params:
|
|
193
|
+
initial_prompt_template: "Research the topic: {{topic}}"
|
|
194
|
+
max_steps: 5
|
|
195
|
+
available_tools: ["web_search", "summarize"]
|
|
196
|
+
depends_on: []
|
|
197
|
+
|
|
198
|
+
- type: agent
|
|
199
|
+
id: analyst
|
|
200
|
+
params:
|
|
201
|
+
initial_prompt_template: |
|
|
202
|
+
Analyze the research findings: {{researcher.results}}
|
|
203
|
+
Provide actionable insights.
|
|
204
|
+
max_steps: 3
|
|
205
|
+
depends_on: [researcher]
|
|
206
|
+
|
|
207
|
+
- type: function
|
|
208
|
+
id: formatter
|
|
209
|
+
params:
|
|
210
|
+
fn: format_report
|
|
211
|
+
input_mapping:
|
|
212
|
+
title: "researcher.topic"
|
|
213
|
+
findings: "researcher.results"
|
|
214
|
+
insights: "analyst.insights"
|
|
215
|
+
depends_on: [researcher, analyst]
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Run it with Python:
|
|
219
|
+
|
|
220
|
+
```python
|
|
221
|
+
from hexdag import Orchestrator, YamlPipelineBuilder
|
|
222
|
+
|
|
223
|
+
# Load and execute the workflow
|
|
224
|
+
builder = YamlPipelineBuilder()
|
|
225
|
+
graph, metadata = builder.build_from_yaml_file("research_agent.yaml")
|
|
226
|
+
|
|
227
|
+
orchestrator = Orchestrator()
|
|
228
|
+
result = await orchestrator.run(graph, {"topic": "AI trends 2024"})
|
|
229
|
+
|
|
230
|
+
## 📚 Documentation & Learning
|
|
231
|
+
|
|
232
|
+
### 📓 Interactive Notebooks (Recommended Start)
|
|
233
|
+
Learn hexDAG through comprehensive, working Jupyter notebooks:
|
|
234
|
+
|
|
235
|
+
**Core Concepts:**
|
|
236
|
+
- **[01. Introduction](notebooks/01_introduction.ipynb)** - Your first pipeline (15 min)
|
|
237
|
+
- **[02. YAML Pipelines](notebooks/02_yaml_pipelines.ipynb)** - Declarative workflows (25 min)
|
|
238
|
+
- **[03. Practical Workflow](notebooks/03_practical_workflow.ipynb)** - Real-world patterns (30 min)
|
|
239
|
+
|
|
240
|
+
**Advanced Features:**
|
|
241
|
+
- **[06. Dynamic Reasoning Agent](notebooks/06_dynamic_reasoning_agent.ipynb)** - Advanced agent patterns
|
|
242
|
+
- **[Advanced Few-shot & Retry](notebooks/advanced_fewshot_and_retry.ipynb)** - Error handling and examples
|
|
243
|
+
- **[Composable LLM Architecture](notebooks/composable_llm_architecture.ipynb)** - Modular AI systems
|
|
244
|
+
|
|
245
|
+
**All notebooks execute successfully:** `✅ All notebook(s) validated successfully!`
|
|
246
|
+
|
|
247
|
+
### 📚 Complete Documentation
|
|
248
|
+
- **[📖 Documentation Hub](docs/README.md)** - Complete navigation with learning paths
|
|
249
|
+
- **[🤔 Philosophy & Design](docs/PHILOSOPHY.md)** - Six pillars and design principles
|
|
250
|
+
- **[🔧 Implementation Guide](docs/IMPLEMENTATION_GUIDE.md)** - Production-ready workflows
|
|
251
|
+
- **[⌨️ CLI Reference](docs/CLI_REFERENCE.md)** - Complete CLI documentation
|
|
252
|
+
- **[🔌 Plugin System](docs/PLUGIN_SYSTEM.md)** - Custom component development
|
|
253
|
+
- **[🗺️ Roadmap](docs/ROADMAP.md)** - Future vision and features
|
|
254
|
+
|
|
255
|
+
### 📝 Additional Resources
|
|
256
|
+
- **[Demo Directory](examples/demo/)** - Live demonstration scripts
|
|
257
|
+
- **[Integration Tests](tests/integration/)** - Production test scenarios
|
|
258
|
+
|
|
259
|
+
## 🎪 Interactive Notebooks
|
|
260
|
+
|
|
261
|
+
Explore comprehensive Jupyter notebooks for hands-on learning:
|
|
262
|
+
|
|
263
|
+
```bash
|
|
264
|
+
# Start Jupyter to explore notebooks
|
|
265
|
+
jupyter notebook notebooks/
|
|
266
|
+
|
|
267
|
+
# Or run specific notebooks
|
|
268
|
+
jupyter notebook notebooks/01_introduction.ipynb # Getting started
|
|
269
|
+
jupyter notebook notebooks/02_yaml_pipelines.ipynb # YAML workflows
|
|
270
|
+
jupyter notebook notebooks/03_practical_workflow.ipynb # Real-world patterns
|
|
271
|
+
jupyter notebook notebooks/06_dynamic_reasoning_agent.ipynb # Advanced agents
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### Running the Demo
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
# Run the startup pitch demo
|
|
278
|
+
uv run python examples/demo/run_demo_pitch.py
|
|
279
|
+
|
|
280
|
+
# Or explore the YAML configuration
|
|
281
|
+
cat examples/demo/demo_startup_pitch.yaml
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
## 🛠️ Development
|
|
285
|
+
|
|
286
|
+
```bash
|
|
287
|
+
# Setup development environment
|
|
288
|
+
uv run pre-commit install
|
|
289
|
+
|
|
290
|
+
# Run tests
|
|
291
|
+
uv run pytest
|
|
292
|
+
|
|
293
|
+
# Code quality checks
|
|
294
|
+
uv run pre-commit run --all-files
|
|
295
|
+
|
|
296
|
+
# Build documentation
|
|
297
|
+
uv run docs-build # Build HTML documentation
|
|
298
|
+
uv run docs-clean # Clean build directory
|
|
299
|
+
uv run docs-rebuild # Clean and rebuild
|
|
300
|
+
uv run docs-check # Build with warnings as errors
|
|
301
|
+
uv run docs-autobuild # Auto-rebuild on file changes
|
|
302
|
+
|
|
303
|
+
# Documentation will be in docs/build/html/
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
## 🌟 Key Features
|
|
307
|
+
|
|
308
|
+
### 🤖 Multi-Agent Orchestration
|
|
309
|
+
- Sequential agent chains for complex reasoning
|
|
310
|
+
- Parallel specialist agents for diverse perspectives
|
|
311
|
+
- Hierarchical agent networks with supervisor patterns
|
|
312
|
+
|
|
313
|
+
### 📊 Data Science Integration
|
|
314
|
+
- Mix AI agents with traditional data processing
|
|
315
|
+
- Real-time streaming for Jupyter notebooks
|
|
316
|
+
- Built-in support for popular ML frameworks
|
|
317
|
+
|
|
318
|
+
### 🌊 Real-Time Streaming
|
|
319
|
+
- WebSocket-based agent action streaming
|
|
320
|
+
- Memory operation visualization
|
|
321
|
+
- Interactive debugging and control
|
|
322
|
+
|
|
323
|
+
### 🔧 Low-Code Development
|
|
324
|
+
- YAML-based workflow definitions
|
|
325
|
+
- Template system for reusable patterns
|
|
326
|
+
- Automatic field mapping between nodes
|
|
327
|
+
- Visual workflow editor (coming soon)
|
|
328
|
+
|
|
329
|
+
### 🔄 Smart Data Mapping
|
|
330
|
+
- **Automatic Input Mapping**: Define how data flows between nodes with simple mappings
|
|
331
|
+
- **Nested Field Extraction**: Access deeply nested data with dot notation
|
|
332
|
+
- **Type Inference**: Automatic type detection from Pydantic models
|
|
333
|
+
- **Flexible Patterns**: Support for passthrough, rename, and prefixed mappings
|
|
334
|
+
|
|
335
|
+
### 🎭 Powerful Macro System
|
|
336
|
+
- **Reusable Templates**: Define pipeline patterns once, use everywhere
|
|
337
|
+
- **Built-in Macros**: ConversationMacro, LLMMacro, ToolMacro, ReasoningAgentMacro
|
|
338
|
+
- **YAML Integration**: Seamlessly use macros in declarative pipelines
|
|
339
|
+
- **Dynamic Expansion**: Macros expand at runtime into full DAG subgraphs
|
|
340
|
+
- **Configuration Inheritance**: Override macro defaults per invocation
|
|
341
|
+
|
|
342
|
+
## 🔒 Production Security
|
|
343
|
+
|
|
344
|
+
### Docker Build Command
|
|
345
|
+
|
|
346
|
+
The `hexdag build` command generates containerized deployments from YAML pipelines.
|
|
347
|
+
|
|
348
|
+
⚠️ **IMPORTANT**: This command is designed for **development and trusted pipelines only**.
|
|
349
|
+
|
|
350
|
+
**Production Safety:**
|
|
351
|
+
```bash
|
|
352
|
+
# Disable build command in production environments
|
|
353
|
+
export HEXDAG_DISABLE_BUILD=1
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
**For detailed documentation**, including security threat model, hardening checklist, and Docker Compose patterns, see the [CLI Reference](docs/CLI_REFERENCE.md#build---build-docker-containers).
|
|
357
|
+
|
|
358
|
+
## 🤝 Community
|
|
359
|
+
|
|
360
|
+
- **Contributing**: See [CONTRIBUTING.md](CONTRIBUTING.md)
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
## 📄 License
|
|
364
|
+
|
|
365
|
+
Apache License 2.0 - see [LICENSE](LICENSE) for details.
|
|
366
|
+
|
|
367
|
+
---
|
|
368
|
+
|
|
369
|
+
**Built with ❤️ for the AI community by the hexDAG team**
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
hexdag/__init__.py,sha256=yp-0TCwqS6cmquBBoVC_A18lRRx2SGMfWc8LZ3MJTSg,3347
|
|
2
|
+
hexdag/__main__.py,sha256=XZqLRUonOfRidf6Ym-kedngE31YlcMXjOMxCjDts71E,639
|
|
3
|
+
hexdag/mcp_server.py,sha256=Cvi9MDg7z0c8gOF6Roa-vaSbYse4qO4cPUkbDXRTe_I,89059
|
|
4
|
+
hexdag/adapters/executors/__init__.py,sha256=2zUQCupqMtLc2i6sa9JUqZmp25swpcVK2IOzWsh0oE4,157
|
|
5
|
+
hexdag/adapters/executors/local_executor.py,sha256=irNI_Jf2-Y5xDGSb6yXFoBFN6eSijsWF01NviWGZhnM,10530
|
|
6
|
+
hexdag/builtin/__init__.py,sha256=y0tjy5IQpJA2QyXKFJzqX5JYtStQwyORBGa8PP6m7eQ,244
|
|
7
|
+
hexdag/builtin/adapters/__init__.py,sha256=mdEYLQNhiAbT55H31icgf2q-UIKWhbFirxjER_acRMc,1323
|
|
8
|
+
hexdag/builtin/adapters/unified_tool_router.py,sha256=yR0ietu7_yh6rA7Q8utq7zUlKRpkPWZY-02522MVFaE,10430
|
|
9
|
+
hexdag/builtin/adapters/anthropic/__init__.py,sha256=tosbDCkmQIo_J_HrNw5T3BSjpvLuRaYsIZQ_VpMXmEA,151
|
|
10
|
+
hexdag/builtin/adapters/anthropic/anthropic_adapter.py,sha256=ToEYTMhBaddQK8ZMk_ixEb9bbLqDusjs4cVRyivp3-0,5064
|
|
11
|
+
hexdag/builtin/adapters/database/__init__.py,sha256=Yit_7qUlggBjU3nxT9Lue9ztx1XEWt7YOBmpdIxCssY,253
|
|
12
|
+
hexdag/builtin/adapters/database/csv/csv_adapter.py,sha256=QQXiuw-Ff0gBgPlxgfhZ47LSWlk3frcWfqwOWQwQ5fw,8708
|
|
13
|
+
hexdag/builtin/adapters/database/pgvector/__init__.py,sha256=-NtMtilLdjQz3QBQqwaNyNsQYTqVR0ctOFzZQLxTS7Q,188
|
|
14
|
+
hexdag/builtin/adapters/database/pgvector/pgvector_adapter.py,sha256=Aw-3Jh7GKuG2EX6FeeG5IDVchrSsoH_Wp0xy1NRev9w,16670
|
|
15
|
+
hexdag/builtin/adapters/database/sqlalchemy/sqlalchemy_adapter.py,sha256=rVz4le7iGWF0g4UB0m1fku9LumD04wsio0wbkyT6qRg,8514
|
|
16
|
+
hexdag/builtin/adapters/database/sqlite/__init__.py,sha256=VTMrZ0FLOD8Poq85NLz7MpbQ4iRbfFOzi5kyvmSxuOo,144
|
|
17
|
+
hexdag/builtin/adapters/database/sqlite/sqlite_adapter.py,sha256=P4kgcIUyGEHvmj0g2vSU6jQYbdTYJsTbYgA9P_wyNTU,14297
|
|
18
|
+
hexdag/builtin/adapters/local/README.md,sha256=P1yPNQhqN1PKWneJuvevdABT9RW1pbx8pmIu-A5Wssc,1237
|
|
19
|
+
hexdag/builtin/adapters/local/__init__.py,sha256=gRmcx3KmaBIHCdSksDng0VJdw0jlC_7ZlnqyAaCzonw,158
|
|
20
|
+
hexdag/builtin/adapters/local/local_observer_manager.py,sha256=ElelfyfsU-LHrYfHtH9fS82TCatTOjwfuL5u10YxtDU,24433
|
|
21
|
+
hexdag/builtin/adapters/memory/__init__.py,sha256=P3h2MJjWp_EIkTNCconSabyFB5hwzcQ1mr0U5vk1p_A,1380
|
|
22
|
+
hexdag/builtin/adapters/memory/file_memory_adapter.py,sha256=hSOF1FW869ZkHCrgMAO5p2ZXlud1IhosuIZxPmGEUTE,8837
|
|
23
|
+
hexdag/builtin/adapters/memory/in_memory_memory.py,sha256=sD0yjZtVyxkKQebTyisgBHRX2GlJ-gJ33XOuqrzghPs,5927
|
|
24
|
+
hexdag/builtin/adapters/memory/schemas.py,sha256=KkVnpPyaf9P9UbFYHT-L-8fr7Q1uBQWOQSF_IUKL8A8,1761
|
|
25
|
+
hexdag/builtin/adapters/memory/session_memory.py,sha256=O3k2qc90Ol8EpBtRgG7AQTo9ziSIKo8cyRV5x_QWwR8,5518
|
|
26
|
+
hexdag/builtin/adapters/memory/sqlite_memory_adapter.py,sha256=6lbvbOtDS_JcDD-am8ejviIK7nNI_kyWy372xVGYw6M,6780
|
|
27
|
+
hexdag/builtin/adapters/memory/state_memory.py,sha256=APgVC6H_C4j6xrnhprYemOD4CvkEy7SxAejZhivWSJo,8641
|
|
28
|
+
hexdag/builtin/adapters/mock/README.md,sha256=-xm2ipbYmUf7DEBM4Yt6yrhkoDANXzTh_B2oihBJ0Iw,2307
|
|
29
|
+
hexdag/builtin/adapters/mock/__init__.py,sha256=9GVcvbdjpAGNH16-fdEDDOLr6pfvo1qdtQIjYR4ecZ0,393
|
|
30
|
+
hexdag/builtin/adapters/mock/hexdag.toml,sha256=gTN4I95nEWIH1_P6UEts2RwZ0W4qh01TvQaU4of1izU,1308
|
|
31
|
+
hexdag/builtin/adapters/mock/mock_database.py,sha256=HpfXOP2oE9m8bdZGwai7VgnS82UM0pfhTC5cfc9FFiE,7963
|
|
32
|
+
hexdag/builtin/adapters/mock/mock_embedding.py,sha256=urOknD55o1_JHM92cNOoRctA2JjdV12csLQAOE6W78w,6959
|
|
33
|
+
hexdag/builtin/adapters/mock/mock_llm.py,sha256=kzajcjlQctABSNig1clPBxdMnExlaXzhxyTkKxJbprw,5881
|
|
34
|
+
hexdag/builtin/adapters/mock/mock_tool_adapter.py,sha256=dsLaECsoo3oDTC5KtgPf7Tmpo823aOuM8Wgdpt_NriA,5612
|
|
35
|
+
hexdag/builtin/adapters/mock/mock_tool_router.py,sha256=6zCO4ValTjdfyYcPRnZiUOaRJOSysuNbBYupswJJnr4,8192
|
|
36
|
+
hexdag/builtin/adapters/openai/__init__.py,sha256=S_F_fr8Omxl3Bg1kBlTxtRc61RMDArzTGwB4HgpjIeY,136
|
|
37
|
+
hexdag/builtin/adapters/openai/openai_adapter.py,sha256=d54fsIFjbB5dGFvhaBhYbPZMrMy6X7IDmCeUPuNjsbc,22425
|
|
38
|
+
hexdag/builtin/adapters/secret/__init__.py,sha256=Ep8YPDqETqTFcs5eJ_HoY6ih2hVg1RttufbQeYB1Quc,170
|
|
39
|
+
hexdag/builtin/adapters/secret/local_secret_adapter.py,sha256=KBRf6byAETEDQs_On_oHvitDRuc71PTPAyzwNwK6gu0,7869
|
|
40
|
+
hexdag/builtin/macros/__init__.py,sha256=RErC58H3ZoKtndWu3LNdeRavbbm7nnp_8lq5H7vWCzs,573
|
|
41
|
+
hexdag/builtin/macros/conversation_agent.py,sha256=8MLQiDXvV_L7QJlZvD-KoyEZSqqe7z-lS5emQoL2Etg,15035
|
|
42
|
+
hexdag/builtin/macros/llm_macro.py,sha256=5NzbQYMmTdMmZ5Ym7LMl5Ly6eOrCaMm-7On-gJDfHvU,4534
|
|
43
|
+
hexdag/builtin/macros/reasoning_agent.py,sha256=qlxTelIucIBYN2g4eN05kM-OFgGQ58P_FceelMjKRoo,15762
|
|
44
|
+
hexdag/builtin/macros/tool_macro.py,sha256=sdiwiC_nGvOqdmKL3B0amOjqHF1ycSjjqoct_271tHM,11766
|
|
45
|
+
hexdag/builtin/nodes/__init__.py,sha256=sty7RNtnYOS_wOSqjjE1NQ9WgtUUzNHT5fuTZ55WYL4,1221
|
|
46
|
+
hexdag/builtin/nodes/_discovery.py,sha256=ihPbnMe4j9R1NbXLGAf-paKvTRwz_UIGFGzaYJsjN1w,3686
|
|
47
|
+
hexdag/builtin/nodes/agent_node.py,sha256=wrHhYfWyKSvUwYaicWJuWGQ5QPzbR62BU9UXS392MMo,24796
|
|
48
|
+
hexdag/builtin/nodes/base_node_factory.py,sha256=4SCq9PplBiOydL6BZEde_9IG5MPcFZaj-FeUVwCJHbQ,9044
|
|
49
|
+
hexdag/builtin/nodes/composite_node.py,sha256=QB0QIhzcDNzW4VaRxj6N-Wls6rB4l0zntNp1ZOBllOU,32121
|
|
50
|
+
hexdag/builtin/nodes/data_node.py,sha256=Eh4Z-tR45q__U6d81GjmjK3C52ilnUimRAWARtCc5sE,5751
|
|
51
|
+
hexdag/builtin/nodes/expression_node.py,sha256=8NoBClChXg_VPTLfrxnPKs-PHtsnQQ7zw2tgPp6kHTs,17713
|
|
52
|
+
hexdag/builtin/nodes/function_node.py,sha256=mx37TxPRQS4AZGwXao910tlh3jF3UjLTdReN9kN4l_o,16405
|
|
53
|
+
hexdag/builtin/nodes/llm_node.py,sha256=XW_CcmePUegWhXGTJwNPqKuifw8X-WwgI65_MvotlX4,16653
|
|
54
|
+
hexdag/builtin/nodes/loop_node.py,sha256=V4qu4neNrTpFX2kl9qK3N3h6rgdV3_SqJJTtKeykwSM,32624
|
|
55
|
+
hexdag/builtin/nodes/mapped_input.py,sha256=p4O40SHBTgdaYBEcACprMS9rtfIMpJtnzwxZv8Mo0kE,15611
|
|
56
|
+
hexdag/builtin/nodes/port_call_node.py,sha256=DQh307cQSm6n8nvAUdhNOI5wywixXJcFZ1PvUUahS1g,8966
|
|
57
|
+
hexdag/builtin/nodes/tool_call_node.py,sha256=JCHTLv1OaQsbkXRD1VskHXJ6XAw-gBFnBnLpJUeL2bo,6342
|
|
58
|
+
hexdag/builtin/nodes/tool_utils.py,sha256=hERT_XA6gHawFQ1QuesNQOwEYexjliq4pp36FEtiRh0,11767
|
|
59
|
+
hexdag/builtin/prompts/__init__.py,sha256=_0hOyMeKJ33ryHP8S6SwaewsriUTy714Do_k4na4C5U,1810
|
|
60
|
+
hexdag/builtin/prompts/base.py,sha256=mO9S9REZQxlHE3Um7Ws4nI9Nj2rBXNRRcaX3h4AfxFM,14436
|
|
61
|
+
hexdag/builtin/prompts/chat_prompts.py,sha256=uLsccFPRuv4WdUZiQjGaeXDYdNIU-bf-MZT2Vf57D2Y,9200
|
|
62
|
+
hexdag/builtin/prompts/error_correction_prompts.py,sha256=WLm8QqufgO9S_NqEgJD0q5jXiR9kcyHYp28s8TFYtuI,8341
|
|
63
|
+
hexdag/builtin/prompts/tool_prompts.py,sha256=xdVTm6nbSF3NY3xYtFuy9wdPotSXJg4yKeIbjcubEWU,5558
|
|
64
|
+
hexdag/builtin/tools/builtin_tools.py,sha256=e_aLsAbfvcR_HKnYQmQJjPCU5k7T316zSEnCvz-E0bk,2794
|
|
65
|
+
hexdag/builtin/tools/database_tools.py,sha256=t6uo9jyV_bcl6uYw0j494jEA2Hg6yn_ruVtLcXDXrlk,4263
|
|
66
|
+
hexdag/cli/__init__.py,sha256=ER3Z0A4ajcjy8aFFJULwiFX8R9WPhA8q7MPiCQO0Y2g,318
|
|
67
|
+
hexdag/cli/__main__.py,sha256=HGs_63TIjGd4xNQPirhzoRPoSgsvEC82jvQdqCcPlPI,167
|
|
68
|
+
hexdag/cli/main.py,sha256=nWo7wc9N1V-pXFgK18rUS2KCw8pk4630n3Nidf9xbk8,2454
|
|
69
|
+
hexdag/cli/commands/__init__.py,sha256=yVuQ8uNbswjYMbbIv5hCjQqBchjb-RwQ1QwtVAz4_xg,425
|
|
70
|
+
hexdag/cli/commands/build_cmd.py,sha256=wcat7R2TmraV_bfdWN7-GczczVt_dlITx5h06-i-m4k,24306
|
|
71
|
+
hexdag/cli/commands/create_cmd.py,sha256=PtXzV3i7F4avLrLi2LySqtrCoIIAnD0ebjiWItVBgYE,7340
|
|
72
|
+
hexdag/cli/commands/docs_cmd.py,sha256=Py5YZBiv-hjRiDZexdbcwWWwuDnLkaeUCk1FDcytHV4,9066
|
|
73
|
+
hexdag/cli/commands/generate_types_cmd.py,sha256=KBBt4rffk9avUVYvVCVBcCFlAS2Qq82wNbYQTBaNngI,7719
|
|
74
|
+
hexdag/cli/commands/init_cmd.py,sha256=yj9cIqywtWDx0acSxlR59hFdfDi0uQW-H5qzuxZ2kgU,5333
|
|
75
|
+
hexdag/cli/commands/pipeline_cmd.py,sha256=-536uPqhH1I0hBL81fGs6syQ5zMGuLRHGFnI3ifw1Fc,16718
|
|
76
|
+
hexdag/cli/commands/plugin_dev_cmd.py,sha256=lvPVDZH_9Fs2Efj3Gd733kWcPnzEiCNXHzCQCSgVw1c,15931
|
|
77
|
+
hexdag/cli/commands/plugins_cmd.py,sha256=Xd4rdGdr0KBdt4np-UAfzAVnUyVls_mS7RiVUAZzSVY,14352
|
|
78
|
+
hexdag/cli/commands/studio_cmd.py,sha256=10vrgP4KkzMl6e-CMWnMQh4a67yohHKUmUAH-UiBWGU,2651
|
|
79
|
+
hexdag/cli/commands/validate_cmd.py,sha256=JwBBN4AqDdMOKSzjPk7bM33e3Vmo42uyyoOldK5BcGE,7329
|
|
80
|
+
hexdag/core/__init__.py,sha256=taPuAKdkga47euBErnkJpw53Kai7_vU3Rr_I2PWCgcY,1914
|
|
81
|
+
hexdag/core/configurable.py,sha256=8C3P38QM8WTayIaRvPMVuR1VEnUpxOw5QwoTRhKBHf4,9552
|
|
82
|
+
hexdag/core/exceptions.py,sha256=JSL7zXrHVVevez4kNgdYtG3XWC5dMlncLRKY8lr_OJc,6846
|
|
83
|
+
hexdag/core/expression_parser.py,sha256=-n8NDLHfJjCSk5iizJUncYl7fkTUcJXgda_sy3DAZbI,17998
|
|
84
|
+
hexdag/core/logging.py,sha256=Zw4GiFQnwpyRgN8V-w0lVF1eks-cMhNXzl-IH6-Dyjs,14661
|
|
85
|
+
hexdag/core/ports_builder.py,sha256=H3rHnTrW1rm-j2EDGwjP6CDKy5TQm7pp8Pn3bMTgYhA,19217
|
|
86
|
+
hexdag/core/protocols.py,sha256=eMx563EcaMBf-1v3QhncMdLB3YjRteBrPPp15arqagQ,6394
|
|
87
|
+
hexdag/core/resolver.py,sha256=5DKkzuPoZ39ylLxIBjkG258eLVIQ6H8MR2MvW3Mikqw,8466
|
|
88
|
+
hexdag/core/secrets.py,sha256=VUsXEbsX4vOSWI1u0oixaI77zb-b_54HhJUrWByOARo,7321
|
|
89
|
+
hexdag/core/types.py,sha256=Y58GCFSRJ340D7Wf_JXwN7iFoFJZOSsTdkaVpafzlGw,11906
|
|
90
|
+
hexdag/core/yaml_macro.py,sha256=igO5Im5c3xHoNacDBcA3W8RBMfxPfrBn-J_sQUOHs_g,16352
|
|
91
|
+
hexdag/core/config/__init__.py,sha256=3Tx6QEfNWAE6VvpTnwyiPMvgldm6HqU9lzPkTm--n1o,460
|
|
92
|
+
hexdag/core/config/loader.py,sha256=q-inxSn129YiAvWt7dICTdvIa7h3gGCncc8xtxQTHZs,16490
|
|
93
|
+
hexdag/core/config/models.py,sha256=sNXmn4VpiWAhcMTRP_iFRcCQsUA-VuwGgLg6z6u5etk,4137
|
|
94
|
+
hexdag/core/context/__init__.py,sha256=4nhz4Xbvm77tBfxuBORAHb9QVUtiayKxPR8jGR2RZoI,809
|
|
95
|
+
hexdag/core/context/execution_context.py,sha256=SOe7Kbl0i5dJeeeY9FsO6xZkTpfnT4sX49KEF_OMqFQ,11811
|
|
96
|
+
hexdag/core/docs/__init__.py,sha256=etx9kHyXvL-rR8SII9MVq0NN24wp8EcMkLGQIQ90INE,614
|
|
97
|
+
hexdag/core/docs/extractors.py,sha256=--vA9-29qCDBc_ULw3_8S06Bzw5O22Lc9zPZh2UBv_M,20290
|
|
98
|
+
hexdag/core/docs/generators.py,sha256=DLBBHibwNaOTw63nnX91pMnyHyMJkNY0svPH0Qy-7w8,29561
|
|
99
|
+
hexdag/core/docs/models.py,sha256=GrQ9Omd5G9ylmW1rCPKD0hCR5BnLRNnW71YUnHbLolc,3146
|
|
100
|
+
hexdag/core/domain/__init__.py,sha256=HGGWpwIHbqk6Wm1ZA_pg_bzjK8IZ52ZQbS8qzFKlyQM,288
|
|
101
|
+
hexdag/core/domain/dag.py,sha256=zEwFBn6FNKWMMB71HkxOFDw0UmuLep4wqHVzKnA2qnw,41078
|
|
102
|
+
hexdag/core/models/__init__.py,sha256=9dVfbYJspiyRjsgaMiiOzZGho9nuudb9ebxk4K0uDg8,428
|
|
103
|
+
hexdag/core/models/base.py,sha256=syCuPTY6t-KxGKXrXJws1OBpwqriiXaULCTo1xwOoC0,3196
|
|
104
|
+
hexdag/core/orchestration/__init__.py,sha256=T2bw91l2yBl0OxFY5ZhXnJ1mBULr-elPQQv_6kDFfL4,1446
|
|
105
|
+
hexdag/core/orchestration/body_executor.py,sha256=XE0gTEderhpGn07nX8MZELevFOyEUQpG4WilgTS7WOE,16256
|
|
106
|
+
hexdag/core/orchestration/constants.py,sha256=lgRDrA48ReOaXm3Tv2QJ1NV-XJeKEPKBY3LdONjr24o,587
|
|
107
|
+
hexdag/core/orchestration/hook_context.py,sha256=kHVDeA2UiYBZnlsbi730Qa6TfGo-ugBFwJ7TT6vcaPQ,6800
|
|
108
|
+
hexdag/core/orchestration/hooks.py,sha256=Tb6Ro0HRC8qI2uccA1PErag4D6RG4g26jNefC-P3Q24,16334
|
|
109
|
+
hexdag/core/orchestration/models.py,sha256=YVO5F7iG64qJNczmcmc6psGA0iPEXSpr2QZyeg_BfYE,14545
|
|
110
|
+
hexdag/core/orchestration/orchestrator.py,sha256=zdzkVSxVFt75kudEpPxDvqdTzQLir-myVxC9wqyCfSQ,34201
|
|
111
|
+
hexdag/core/orchestration/orchestrator_factory.py,sha256=NLk5bGpFKEGtExERZpx75pF_w5YjYjTgoDbdJHnxf5U,9852
|
|
112
|
+
hexdag/core/orchestration/port_wrappers.py,sha256=qBf8CW7yUbsU6Aq4-XxviekxsOrKHgKlQKzugjjoQjE,10631
|
|
113
|
+
hexdag/core/orchestration/components/__init__.py,sha256=trRW85k1Gso5FDuGUmgnQfZO4ydBqnLhF_5zWh1_zmU,3287
|
|
114
|
+
hexdag/core/orchestration/components/adapter_lifecycle_manager.py,sha256=4GaKrpTX2jKSAZZl8XJ2L52DZayguQ5AJ5g3scZMlsQ,3632
|
|
115
|
+
hexdag/core/orchestration/components/checkpoint_manager.py,sha256=Obf5e7OJ7ELZ6l3xKpUzxbCGMiBpWBKUlWOPstfVxe8,4321
|
|
116
|
+
hexdag/core/orchestration/components/execution_coordinator.py,sha256=0NJe4xgtOPqikDHjM0Z5R9Z3QqNLYLECG2t1U-HlXMo,13268
|
|
117
|
+
hexdag/core/orchestration/components/health_check_manager.py,sha256=_VOkDhH9dakFvI0GLsDd1FUdnWnrpGe2_DNWrr8N_Ws,5649
|
|
118
|
+
hexdag/core/orchestration/components/input_mapper.py,sha256=4P3XOt9bSqr6yDEUbNjT2ZioFjL4tq2nSc5bZKWdjsg,5254
|
|
119
|
+
hexdag/core/orchestration/components/lifecycle_manager.py,sha256=a07ZdNlKBCc1pYIaRQPWLxrpvnvJpMk4T9Pp1sRvhMs,22129
|
|
120
|
+
hexdag/core/orchestration/components/node_executor.py,sha256=Gj0SOrMP3O1dUm-eN6Rs48I0w1BFalBR_S8_AP-hXM4,14751
|
|
121
|
+
hexdag/core/orchestration/components/secret_manager.py,sha256=oWrHrKby8XCAZAAwZI1lEqGUcnRCtSRR0XEBTjsKkfg,6110
|
|
122
|
+
hexdag/core/orchestration/components/wave_executor.py,sha256=22XLQqZaXOkLJj-RRUvs9W-x3HkZEQ9D9xrquSMZfSw,5370
|
|
123
|
+
hexdag/core/orchestration/events/README.md,sha256=8oQP3TkobIoEnydlgZAC83uNlS1bMbHUqJY081gafek,10633
|
|
124
|
+
hexdag/core/orchestration/events/__init__.py,sha256=XM2AOLSgf2ix8zai-cboODTcs6HuK_EggXh4w3xwiYE,2758
|
|
125
|
+
hexdag/core/orchestration/events/batching.py,sha256=kgjVHWHivV9KsDSBdJTBOFIHGYOOtjARi6xDq9VhhTk,10850
|
|
126
|
+
hexdag/core/orchestration/events/decorators.py,sha256=HXUwZ01eromZDAFRCmd_f-Q2VcUholConGh26fk1P-o,3869
|
|
127
|
+
hexdag/core/orchestration/events/events.py,sha256=oSziOxGv5PzWrQbY2jp8ZeLMKTSRPNBFxmlapWJVZUA,15037
|
|
128
|
+
hexdag/core/orchestration/events/taxonomy.py,sha256=0KrhIvABwEXPhtZZhfGCltH0rLyuD4JYGYpcHdo74r8,8196
|
|
129
|
+
hexdag/core/orchestration/events/observers/__init__.py,sha256=QND2V8TG70s8_nPi9NUZIr4fieukIRa7HGgBKr1X3zA,730
|
|
130
|
+
hexdag/core/orchestration/events/observers/core_observers.py,sha256=pSJwaZqGVZXw-uHaYYKchsEiwN-sddvHgrFx886cFT4,24352
|
|
131
|
+
hexdag/core/orchestration/events/observers/models.py,sha256=C9ozpxj6GCWDo4oRn2mRxmhUbFykp5wiS4lDASFddqg,2997
|
|
132
|
+
hexdag/core/orchestration/prompt/__init__.py,sha256=OYpeDefsetRCxjBhxja-lrPHWXeQfZYtWZ1iecdWVow,1086
|
|
133
|
+
hexdag/core/orchestration/prompt/template.py,sha256=X-eIrv34knI-__5yONlrbu1E1BW3CDpgCq-Q1_e-Azg,10594
|
|
134
|
+
hexdag/core/pipeline_builder/__init__.py,sha256=lDu5KiQO00uw8cZ167El1XiGFaWrbv7-tedHsTJLUmk,620
|
|
135
|
+
hexdag/core/pipeline_builder/component_instantiator.py,sha256=kr1BaoqhM8v1iJjGXeczG2P5bnxFOIOCb4v6Qk_uYPU,13924
|
|
136
|
+
hexdag/core/pipeline_builder/include_tag.py,sha256=hxzHVPXkibQsowNj4HYJLp_dNeoWvarMCQj7oFfWIbA,7243
|
|
137
|
+
hexdag/core/pipeline_builder/pipeline_config.py,sha256=h3HTBpMJByee2XE6j_APu7HYmyJFdM_lOWcsDpkl40M,3952
|
|
138
|
+
hexdag/core/pipeline_builder/py_tag.py,sha256=9fN2FZX-YTsuDGf79xouqfcFKdqveYzi-Mw0Guz-zZM,6337
|
|
139
|
+
hexdag/core/pipeline_builder/tag_discovery.py,sha256=jVTL3a7qQ1esVkUtOzRbi49a6FJgNaQTFtX68cNKb2o,7610
|
|
140
|
+
hexdag/core/pipeline_builder/yaml_builder.py,sha256=ffARJYUKQ1VgZTMQWPEP5USGrNwObhQt7aGSKdjfPtY,44797
|
|
141
|
+
hexdag/core/pipeline_builder/yaml_validator.py,sha256=uwO5wzPczM6PUwqj2CfAp2aAR6sQulve944FYCVYao4,19779
|
|
142
|
+
hexdag/core/ports/__init__.py,sha256=5iJ1p7nwYrzx5ooj4kaPW8_KMxnbXOpwETKUq0Xbqs8,1698
|
|
143
|
+
hexdag/core/ports/api_call.py,sha256=AeZkKtSffUC1j5wMP9R6KomsH-EFfDbkrYyd3VozBOM,3548
|
|
144
|
+
hexdag/core/ports/database.py,sha256=cWsxEtvqbNR9slPOR1VShlo9AXOC1te2lWtCVNPbVII,13825
|
|
145
|
+
hexdag/core/ports/embedding.py,sha256=Uq9lbEeMK9DWBgU6dRjHygT1IiP_f6g81UB1As3DWGY,7016
|
|
146
|
+
hexdag/core/ports/executor.py,sha256=kd8afvis2nOT2TZr5tmb5NAU91KRSOC1y_9fR8FyVoQ,7491
|
|
147
|
+
hexdag/core/ports/file_storage.py,sha256=UeP3h-wUwd89ZEZayeqRwSmEOsdEaNAcQfXSGiUr1i4,2445
|
|
148
|
+
hexdag/core/ports/healthcheck.py,sha256=m_2ExaRhl1nKXDSj5iYKA6pF0fmqqO_3HlT6xwTTvW0,2587
|
|
149
|
+
hexdag/core/ports/llm.py,sha256=Viv4DQfRvtV9fO1DVHMHD3wZpL9pI8BwA6nN_eOqYq0,17435
|
|
150
|
+
hexdag/core/ports/memory.py,sha256=n2rC-HUwAl1EOushUK1EAQ7F7rTIV8WiPr1STLB0sOk,1933
|
|
151
|
+
hexdag/core/ports/observer_manager.py,sha256=DFEJMon3fkZ7b76652PWmYKHDa7pEWLCccRbkmN4kk0,4010
|
|
152
|
+
hexdag/core/ports/secret.py,sha256=BQIuVeObYvWeV-2_hEfW2fOkrqUgVM2e7HcYcIKi9Tg,4274
|
|
153
|
+
hexdag/core/ports/tool_router.py,sha256=21UK5auNriOi5paEw99igfvWCeMO4pwGVeKe9VIp9HM,2692
|
|
154
|
+
hexdag/core/schema/__init__.py,sha256=KIJIxZ5Rg5Y_CReCLE6aVV6IgEg1tyTERM5tLqPFwj8,275
|
|
155
|
+
hexdag/core/schema/generator.py,sha256=pdArXaQ8qPVsXXm7AcLnYrSfjZZjiouUc_UcKRvXerY,27116
|
|
156
|
+
hexdag/core/utils/async_warnings.py,sha256=ApPooz-io5_rTa0ZL-dpnKcShP5yLueV_5f16w6_mRc,5323
|
|
157
|
+
hexdag/core/utils/schema_conversion.py,sha256=RTzJIlSpZlEINAZ7Yt7_j6yXRmYSv80eqYU-0r_q1us,2416
|
|
158
|
+
hexdag/core/utils/sql_validation.py,sha256=EQgNTmChLIt5W7XWa6R-RRmkuhSAsL-gBDFrQ4Dj9yY,2546
|
|
159
|
+
hexdag/core/validation/secure_json.py,sha256=yLowxF_WYe08pJIAS2iWex034XKt7Q_216fgdg37CC0,5059
|
|
160
|
+
hexdag/studio/__init__.py,sha256=ojfzQej2Rf3JlyLedomGAke1Ikwl6-UyGPBzrO2Gj3o,263
|
|
161
|
+
hexdag/studio/build_ui.py,sha256=48wE10SzzfWbeKAypqmDQLUciuCOg4SA6gNVQbIujlQ,2454
|
|
162
|
+
hexdag/studio/server/__init__.py,sha256=2pq91Cjsrx7n13r7XFFA0GIdEVMJvAxa8d4ZDOl1SSM,40
|
|
163
|
+
hexdag/studio/server/main.py,sha256=yEHza3EHL5Ub2A5YTLwo3dmtoQfJ73ZJiY64GMbRDLY,2983
|
|
164
|
+
hexdag/studio/server/routes/__init__.py,sha256=5cKqwDW87S-EcEd06RyJ2pjnaAtRAT7UsIy0XpV_RjQ,498
|
|
165
|
+
hexdag/studio/server/routes/execute.py,sha256=OWoRnV5Nm3PTJrgCkc37JfPlulRN4eHS6Z_XB-QDLzE,6517
|
|
166
|
+
hexdag/studio/server/routes/export.py,sha256=ELAFpG9MhT4ZaV4tSFeiVWRVZewxTrMhS7V4qs-mXOY,13503
|
|
167
|
+
hexdag/studio/server/routes/files.py,sha256=uO7DBEsA-OV-iDOG0mu28O66ORAh7WqTEv4W9fucdik,6217
|
|
168
|
+
hexdag/studio/server/routes/plugins.py,sha256=wvnZKMREq46m-H7UdZFDrhRqRreRZLEMT4-MXYQhiGQ,12929
|
|
169
|
+
hexdag/studio/server/routes/validate.py,sha256=sW5roX_JFEDMm8YOl7uRwlj9bvvOcAdqZGp1Mb0oMGc,6352
|
|
170
|
+
hexdag/studio/ui/index.html,sha256=HcZHca30DuR2GjhgTN_K7AeKs16z7R-F2hMA2-XCgOo,364
|
|
171
|
+
hexdag/studio/ui/package-lock.json,sha256=S9DIciyrqVvlchauPxBxo565MGt64AIJl4g3fjw5dkI,120351
|
|
172
|
+
hexdag/studio/ui/package.json,sha256=1R8WRT8Hv1Kn0NZZcuMHh1tjwJdNkYTskoZ1IJWyDvs,872
|
|
173
|
+
hexdag/studio/ui/postcss.config.js,sha256=GQyHfbRmmVvxSC9KFqvQbgSont4xGTQeKob_luFzeyc,80
|
|
174
|
+
hexdag/studio/ui/tailwind.config.js,sha256=2D3W6iZfht9LR2X2l05YdGHGnCWH6C2S_j8Wpk62fAQ,650
|
|
175
|
+
hexdag/studio/ui/tsconfig.json,sha256=-72jgA9sfgfcMBHS0IwgyRkmNrFdrKMcoQwJrowpBT4,837
|
|
176
|
+
hexdag/studio/ui/tsconfig.node.json,sha256=8_6pJg-2r-OSEfNrxZ_YyMcotoMdcLtbb4p7kuTHW1Y,277
|
|
177
|
+
hexdag/studio/ui/vite.config.ts,sha256=UUr8XGYSKs7QbxK1uGuIbL974xDZwZGsDW5Yj6luT3s,694
|
|
178
|
+
hexdag/studio/ui/public/hexdag.svg,sha256=X4TNvFzLQ_0fpMykWiVX_E-bcP0ouBmBGVSJMjGfKlo,275
|
|
179
|
+
hexdag/studio/ui/src/App.tsx,sha256=xBnZsJTFh3WvZWIGjmjb5ghoXruY61H_wjNEnuXQCb8,9336
|
|
180
|
+
hexdag/studio/ui/src/index.css,sha256=akRMqCLDkxXGpoDXOoQ5dk87goJwqIdAuadxf2l_INY,1393
|
|
181
|
+
hexdag/studio/ui/src/main.tsx,sha256=X0nc5ubMS11njPUp74kq8Kt9-mr7MAsRrVWSJAGbiwU,232
|
|
182
|
+
hexdag/studio/ui/src/vite-env.d.ts,sha256=ZZlpNvuwQpFfe3SiAPzd5-QQ8ypmmxq5WXz6pLD63bU,38
|
|
183
|
+
hexdag/studio/ui/src/components/Canvas.tsx,sha256=xQjAn9MyCARoSY5PUfLnTdpdEykfG-XbWxbbXz5CefQ,11837
|
|
184
|
+
hexdag/studio/ui/src/components/ContextMenu.tsx,sha256=3IcJdG3oeaeeicxa3FXiYQAc52W7A5dGWwwKce3yrwI,4671
|
|
185
|
+
hexdag/studio/ui/src/components/FileBrowser.tsx,sha256=ejsBKjktPL7vKQpkf7rnbNkaKy_M4DdLfwdzN9IKyJY,3836
|
|
186
|
+
hexdag/studio/ui/src/components/Header.tsx,sha256=zQSXsjUzV13KbenjEh_A35_TuuqN5Fnu6JoAAYJ6T8c,5702
|
|
187
|
+
hexdag/studio/ui/src/components/HexdagNode.tsx,sha256=HmeNEoxUzQzAzTb3AHMjsQrYC_4QYFiywO96rSboRJ8,6419
|
|
188
|
+
hexdag/studio/ui/src/components/NodeInspector.tsx,sha256=bEFl5B01xwIf-8p8-4II63qTQVCf9bib7cakSBQ1wmM,16335
|
|
189
|
+
hexdag/studio/ui/src/components/NodePalette.tsx,sha256=LsjV4IzO9P0SXHNi36HgXzPQmynJzfw9C8JLWtyQtoI,9636
|
|
190
|
+
hexdag/studio/ui/src/components/NodePortsSection.tsx,sha256=nkUaVEJ4oIAfpwYTQYuHNr6jDb-OaxD_FD5D3d0amWw,12474
|
|
191
|
+
hexdag/studio/ui/src/components/PluginManager.tsx,sha256=QaqePTLsM5N7lKLWPVYz3B7fZz3B7Gbw4ePeeYXEm8U,12446
|
|
192
|
+
hexdag/studio/ui/src/components/PortsEditor.tsx,sha256=h3b8GCKVeiT7DY99oEKm9HowtCG5xau3akzDZl_Owbc,15039
|
|
193
|
+
hexdag/studio/ui/src/components/PythonEditor.tsx,sha256=vJ7sgZ6s75651EI7Y-GTv2s5sODlNi2ay9XDtmL2Xww,6770
|
|
194
|
+
hexdag/studio/ui/src/components/ValidationPanel.tsx,sha256=b6EXyq0PcG0eQRFw5-Axvuy48HbMWudQ4i9oBJWoWwY,4050
|
|
195
|
+
hexdag/studio/ui/src/components/YamlEditor.tsx,sha256=U6a2qWC6hSLYFgjlL_bh-GH0COYwUKk7zLmM7SIU1A4,6716
|
|
196
|
+
hexdag/studio/ui/src/components/index.ts,sha256=fjXeu-PS5GD5m-My52619toCqWqQRuZHDPfJ_rQ4ZIk,428
|
|
197
|
+
hexdag/studio/ui/src/types/index.ts,sha256=ZWKo_eHfPnMGVXqMa0SZuB5VSOdDDLQy7RkhkVA1qPo,2592
|
|
198
|
+
hexdag/visualization/__init__.py,sha256=B7pF_eVt6ompQUometQK0EA3ARZItzguNZbYmEiVxu4,1889
|
|
199
|
+
hexdag/visualization/dag_visualizer.py,sha256=MsLL7CuOC-iC5-xm5doKk6iH0n1CDMklqZn35nZaigU,38790
|
|
200
|
+
hexdag_plugins/.gitignore,sha256=aQpAu5PcEYJb8HSSuVG1haxICb2ZE9atUMfSAInRdwA,352
|
|
201
|
+
hexdag_plugins/README.md,sha256=kf7t9v0L0yWTrqmJFrMbXHExEKU0x0rV1KIsYDkNoyA,1825
|
|
202
|
+
hexdag_plugins/__init__.py,sha256=KIVAJ8anX6TB1NpdEb2jqqKkvjc9yS6DyNwgU1R8fdo,45
|
|
203
|
+
hexdag_plugins/azure/LICENSE,sha256=A_Kuu5RGvITRg9wXlRa1a8hiNKyeGjVBokme_63rq04,1068
|
|
204
|
+
hexdag_plugins/azure/README.md,sha256=NA3eXr4uILFWggVvtVBH7z7a1Z0lvkkMB3d7uYYvi7s,10844
|
|
205
|
+
hexdag_plugins/azure/__init__.py,sha256=-gifssN5HKVw5b-mV8JW5YM36_IKaaPOKnZxKnpVYC0,735
|
|
206
|
+
hexdag_plugins/azure/azure_blob_adapter.py,sha256=09AqCgkH7b1HphflQKimgMwo7eXJjjJLqDOlUCG6pMg,13712
|
|
207
|
+
hexdag_plugins/azure/azure_cosmos_adapter.py,sha256=eHPp05rTAJwd2hYKIZ0k4HpMklKDt9gwQQbjIo9wrwc,11980
|
|
208
|
+
hexdag_plugins/azure/azure_keyvault_adapter.py,sha256=JwnsqIxLvNwPXp2da-fbRhykswPyXBrIqI1RzRw8eO0,10404
|
|
209
|
+
hexdag_plugins/azure/azure_openai_adapter.py,sha256=N875sORIPN60LoDE8BA8JEjcurENo348kXfQuznJz88,14225
|
|
210
|
+
hexdag_plugins/azure/pyproject.toml,sha256=ZkYd_mWU5nGHgqjz-Xf2PxFcGo7oge-fZETiXS_w60g,2758
|
|
211
|
+
hexdag_plugins/azure/tests/__init__.py,sha256=lCT8evlRhzUbKGplP81z0t2GvmyH8Ohzlo8yo-8oy-4,37
|
|
212
|
+
hexdag_plugins/azure/tests/test_azure_blob_adapter.py,sha256=ay6JBIv9oNP_ittb_1WUBjqyoASlj-tEC7_nGeLNwLk,11889
|
|
213
|
+
hexdag_plugins/azure/tests/test_azure_cosmos_adapter.py,sha256=-3NuqUzEoAUBbDBiJueANK9m7Ws0SZf0mT9oNdYR1tw,10935
|
|
214
|
+
hexdag_plugins/azure/tests/test_azure_keyvault_adapter.py,sha256=Zyrz7_zjTMf8gGAI1pPg3PFnj7PjJu7spwaLXXxpNak,11175
|
|
215
|
+
hexdag_plugins/azure/tests/test_azure_openai_adapter.py,sha256=dD0tyZL32sULJza9spxqU9W7BducP17EdZE1JHHXLTo,11326
|
|
216
|
+
hexdag_plugins/hexdag_etl/README.md,sha256=b26bpamQuB_c2pfKMB0uj3DaYae5Wh2_znAp0_z1kWM,3523
|
|
217
|
+
hexdag_plugins/hexdag_etl/__init__.py,sha256=6HPLj3yQhDxl7XxZnp3K3nywOATlRtGGam9JQqfUp0Q,1321
|
|
218
|
+
hexdag_plugins/hexdag_etl/hexdag.toml,sha256=Txx_llBw0xPNLxB1XBmhHQFVmh47TGG-Ni8uNbD-Yt0,748
|
|
219
|
+
hexdag_plugins/hexdag_etl/pyproject.toml,sha256=c2ft-WnW9au1zGJFqMDEnkPUsC1Q1ZZZ0mPNFbQ-x10,1957
|
|
220
|
+
hexdag_plugins/hexdag_etl/test_transform.py,sha256=swcHqjR7nStzgsW8xjEfgQ04fMq3kjvhFVEv3t0NyYA,1354
|
|
221
|
+
hexdag_plugins/hexdag_etl/examples/01_simple_pandas_transform.py,sha256=9quUWxaYuDWXg_HoB7biutyeRXZyCvbOInYXSJEycG8,7992
|
|
222
|
+
hexdag_plugins/hexdag_etl/examples/02_simple_pandas_only.py,sha256=MTtNcFsdp3iUVa-c51w_PUiLoYgRdjO81gtQDFI1dmk,3935
|
|
223
|
+
hexdag_plugins/hexdag_etl/examples/03_file_io_pipeline.py,sha256=7OnKRgQinOsRadg3mxGO65HkzZDx0E2ckp3XR__HmQY,3517
|
|
224
|
+
hexdag_plugins/hexdag_etl/examples/test_pandas_transform.py,sha256=eIUdO5Z6HQmZk86SUJTPveWgCajwLvLPGXa-TiBq0rI,2276
|
|
225
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/__init__.py,sha256=fzWZLSPDHPUDohNH5i-3VoJt59EcMf52ka6qAII2F0k,1261
|
|
226
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/__init__.py,sha256=g9fqh_169btQqKvgPD-cv2x9_5QTJVGujS8b5DECNeo,363
|
|
227
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/api_extract.py,sha256=X7zvWXMRYlNqEwYRUVWrjyN7nYV_Kbm4ru44vs9p5g0,6829
|
|
228
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/base_node_factory.py,sha256=we1i5i8vihYMCeC68JkpxopAjIj3g5Qf3tNgKWEQbv0,6847
|
|
229
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/file_io.py,sha256=_8oKp6J9v35hbSpvf75vMfsaWPC6rPM3QShCB-Yru2E,12425
|
|
230
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/outlook.py,sha256=WWgqCZRM8BFKPCWLcjfCjh2vW4bAQ3jHpubSTUZ5Kas,16663
|
|
231
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/pandas_transform.py,sha256=uo53UTnUrTe4M-QlmFvfEkl9ewg0wu-UT9zLaHmE7uw,18503
|
|
232
|
+
hexdag_plugins/hexdag_etl/hexdag_etl/nodes/sql_extract_load.py,sha256=0JI4MPQm2dxPi_Bqyq9AnBvAOlIkKZ6i0BjR6GPhqM0,3309
|
|
233
|
+
hexdag_plugins/hexdag_etl/tests/test_plugin_integration.py,sha256=SsBPW3vAK_BKsEvwMaZVLFpTJwzSZmtFIwQgtl65wzE,2274
|
|
234
|
+
hexdag_plugins/mysql_adapter/LICENSE,sha256=A_Kuu5RGvITRg9wXlRa1a8hiNKyeGjVBokme_63rq04,1068
|
|
235
|
+
hexdag_plugins/mysql_adapter/README.md,sha256=9mmEyja7CrxynnlxwNZd5rExBm0wK3iyXg4-_gsFOss,4665
|
|
236
|
+
hexdag_plugins/mysql_adapter/__init__.py,sha256=UNglxLLGZJbQixIuTO4IPcd3U8vQ6egNkCWx-jTR_ak,168
|
|
237
|
+
hexdag_plugins/mysql_adapter/mysql_adapter.py,sha256=pj9J0cI85QSHzU2uSlO4zaEbffPP_1jTfGSUzdXpHig,13783
|
|
238
|
+
hexdag_plugins/mysql_adapter/pyproject.toml,sha256=URzn4dSMrdIqp4vi7yTe7dYVyS-G7ewPdtQpULM0Syg,2237
|
|
239
|
+
hexdag_plugins/mysql_adapter/tests/test_mysql_adapter.py,sha256=l6zvAAPTuwo0uL0E0cOD9u70TaRhLxo62qrhXoX7lS4,10243
|
|
240
|
+
hexdag_plugins/storage/README.md,sha256=HtMFpf_vjdTeMYuCXceI6BllIOM_w8I6viNYwpcdLTE,4303
|
|
241
|
+
hexdag_plugins/storage/__init__.py,sha256=kVmYdOspIl_WP6Sy3aGSPStqpog0CB0-HCYFrTIQBcE,480
|
|
242
|
+
hexdag_plugins/storage/file/__init__.py,sha256=-zGvti0V5L_tYm-x60osNFIK71l_EVR7hNaBWFoakJU,98
|
|
243
|
+
hexdag_plugins/storage/file/local.py,sha256=UTndCoEUSRqEGw969OfFwNDi41tEvgiQ3hhxDPqSaeQ,9249
|
|
244
|
+
hexdag_plugins/storage/ports/__init__.py,sha256=1KmPM0x3atMyrpcFjryoZyys-siB2d7bfzymnPrwxTE,116
|
|
245
|
+
hexdag_plugins/storage/ports/vector_store.py,sha256=bTBDdUM035G9wZqwUbBYWbEsa73UrI-dSVCgkND_EiI,6694
|
|
246
|
+
hexdag_plugins/storage/sql/__init__.py,sha256=mounXh_8YUap2wOZM_6e3rNrtOMMoUfh7EzK33Ca94w,230
|
|
247
|
+
hexdag_plugins/storage/sql/base.py,sha256=wt8FbieN-3V41jILrM8l-ZgQKYKHHoZL912gf_ECCac,6175
|
|
248
|
+
hexdag_plugins/storage/sql/mysql.py,sha256=BThmplvGkw_M697sUTgnEB2gStFG-U5GIF48RywTOLc,1026
|
|
249
|
+
hexdag_plugins/storage/sql/postgresql.py,sha256=paM1kd7JI0lDv_KBH9Q5zmRNF5Ay8D875KvIL6tyJx0,1058
|
|
250
|
+
hexdag_plugins/storage/tests/__init__.py,sha256=1RPu20CIZoKXtUAwiaOlteyNKm_6AgmmVq2Ok12edmY,32
|
|
251
|
+
hexdag_plugins/storage/tests/test_local_file_storage.py,sha256=gjNGNa3ToUlngx0DeEzAMOWstH3TBDBua-SvflVJQgk,5778
|
|
252
|
+
hexdag_plugins/storage/tests/test_sql_adapters.py,sha256=XIE3q32FZ_EtEKwsAWYHP0I1XwrTg8Mx3dJyf0JKVG8,7005
|
|
253
|
+
hexdag_plugins/storage/vector/__init__.py,sha256=uMI7dYdgMpm5b-Kay3Z9OehTC8kfqvJzutzXP_HngLc,222
|
|
254
|
+
hexdag_plugins/storage/vector/chromadb.py,sha256=CZBtp4EAw6WGwJ4M8WYc0KYVdbTJLiP74pF3JxSZIgI,7103
|
|
255
|
+
hexdag_plugins/storage/vector/in_memory.py,sha256=j_7FAXj8nQPxPAIksaeOyU5yFJijOXxYEJCRibwttB8,8390
|
|
256
|
+
hexdag_plugins/storage/vector/pgvector.py,sha256=830TWR4JrwbpzYultCIfb7Tll_D0te3xJM3PXCHyH94,18262
|
|
257
|
+
hexdag-0.5.0.dev1.dist-info/METADATA,sha256=QqkFJqeQkZEFR6XxedhGq7VmALGAHlJDGohyElMV8gQ,13940
|
|
258
|
+
hexdag-0.5.0.dev1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
259
|
+
hexdag-0.5.0.dev1.dist-info/entry_points.txt,sha256=HVVYo840xI_sDh7Ld4V6JikuEKykjCv-hdB8lND48FU,144
|
|
260
|
+
hexdag-0.5.0.dev1.dist-info/licenses/LICENSE,sha256=ha-Tqaxjm6OqBpizGHUnQk1XxuU9_M9xMFTSz_kJzxk,10760
|
|
261
|
+
hexdag-0.5.0.dev1.dist-info/RECORD,,
|