digitalkin 0.3.5.dev0__tar.gz → 0.3.5.dev2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/PKG-INFO +4 -3
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/archetype_with_tools_module.py +2 -3
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/pyproject.toml +11 -10
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/__version__.py +1 -1
- digitalkin-0.3.5.dev2/src/digitalkin/community/__init__.py +5 -0
- digitalkin-0.3.5.dev2/src/digitalkin/community/agno/__init__.py +9 -0
- digitalkin-0.3.5.dev2/src/digitalkin/community/agno/agno_adapter.py +183 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/job_manager/base_job_manager.py +0 -6
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/job_manager/single_job_manager.py +4 -1
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/job_manager/taskiq_broker.py +13 -211
- digitalkin-0.3.5.dev2/src/digitalkin/core/job_manager/taskiq_job_manager.py +477 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/task_manager/task_session.py +0 -2
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/_base_server.py +48 -56
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/module_server.py +11 -17
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/module_servicer.py +3 -42
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/utils/grpc_client_wrapper.py +9 -9
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/__init__.py +2 -0
- digitalkin-0.3.5.dev2/src/digitalkin/mixins/agui_mixin.py +513 -0
- digitalkin-0.3.5.dev2/src/digitalkin/models/__init__.py +40 -0
- digitalkin-0.3.5.dev2/src/digitalkin/models/events/__init__.py +39 -0
- digitalkin-0.3.5.dev2/src/digitalkin/models/events/agent_events.py +136 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/grpc_servers/models.py +138 -2
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/__init__.py +5 -0
- digitalkin-0.3.5.dev2/src/digitalkin/models/module/ag_ui.py +377 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/tool_reference.py +9 -17
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/_base_module.py +8 -27
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin.egg-info/PKG-INFO +4 -3
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin.egg-info/SOURCES.txt +7 -7
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin.egg-info/requires.txt +3 -2
- digitalkin-0.3.5.dev0/src/digitalkin/core/job_manager/taskiq_job_manager.py +0 -659
- digitalkin-0.3.5.dev0/src/digitalkin/models/__init__.py +0 -8
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/__init__.py +0 -1
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/server/__init__.py +0 -1
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/server/channel.py +0 -36
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/server/grpc.py +0 -99
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/server/server.py +0 -47
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/utils/__init__.py +0 -1
- digitalkin-0.3.5.dev0/src/digitalkin/models/settings/utils/channel.py +0 -148
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/LICENSE +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/README.md +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/mock/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/mock/mock_pb2.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/mock/mock_pb2_grpc.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/server_async_insecure.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/server_async_secure.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/server_sync_insecure.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/base_server/server_sync_secure.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/cpu_intensive_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/dynamic_setup_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/minimal_llm_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/text_transform_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/monitoring/digitalkin_observability/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/monitoring/digitalkin_observability/http_server.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/monitoring/digitalkin_observability/interceptors.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/monitoring/digitalkin_observability/metrics.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/monitoring/digitalkin_observability/prometheus.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/monitoring/tests/test_metrics.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/services/filesystem_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/services/storage_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/setup.cfg +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/common/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/common/factories.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/job_manager/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/profiling/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/profiling/asyncio_monitor.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/profiling/task_profiler.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/task_manager/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/task_manager/base_task_manager.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/task_manager/local_task_manager.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/task_manager/remote_task_manager.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/task_manager/task_executor.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/utils/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/utils/exceptions.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/utils/grpc_error_handler.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/grpc_servers/utils/utility_schema_extender.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/logger.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/base_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/callback_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/chat_history_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/cost_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/file_history_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/filesystem_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/logger_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/mixins/storage_mixin.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/core/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/core/job_manager_models.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/core/task_monitor.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/grpc_servers/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/grpc_servers/types.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/base_types.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/module_context.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/module_types.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/request_metadata.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/select_schema.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/setup_types.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/tool_cache.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/module/utility.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/services/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/services/cost.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/services/registry.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/models/services/storage.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/archetype_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/tool_module.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/trigger_handler.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/triggers/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/triggers/healthcheck_ping_trigger.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/triggers/healthcheck_services_trigger.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/modules/triggers/healthcheck_status_trigger.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/py.typed +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/agent/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/agent/agent_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/agent/default_agent.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/base_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/communication/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/communication/communication_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/communication/default_communication.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/communication/grpc_communication.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/cost/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/cost/cost_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/cost/default_cost.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/cost/grpc_cost.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/filesystem/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/filesystem/default_filesystem.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/filesystem/filesystem_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/filesystem/grpc_filesystem.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/identity/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/identity/default_identity.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/identity/identity_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/registry/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/registry/default_registry.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/registry/exceptions.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/registry/grpc_registry.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/registry/registry_models.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/registry/registry_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/services_config.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/services_models.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/setup/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/setup/default_setup.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/setup/grpc_setup.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/setup/setup_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/snapshot/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/snapshot/default_snapshot.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/snapshot/snapshot_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/storage/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/storage/default_storage.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/storage/grpc_storage.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/storage/storage_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/task_manager/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/task_manager/default_task_manager.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/task_manager/grpc_task_manager.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/task_manager/task_manager_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/user_profile/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/user_profile/default_user_profile.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/user_profile/grpc_user_profile.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/services/user_profile/user_profile_strategy.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/__init__.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/arg_parser.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/conditional_schema.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/development_mode_action.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/dynamic_schema.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/llm_ready_schema.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/package_discover.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/proto_utils.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/utils/schema_splitter.py +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin.egg-info/dependency_links.txt +0 -0
- {digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: digitalkin
|
|
3
|
-
Version: 0.3.5.
|
|
3
|
+
Version: 0.3.5.dev2
|
|
4
4
|
Summary: SDK to build kin used in DigitalKin
|
|
5
5
|
Author-email: "DigitalKin.ai" <contact@digitalkin.ai>
|
|
6
6
|
License: Attribution-NonCommercial-ShareAlike 4.0 International
|
|
@@ -452,8 +452,9 @@ Classifier: Topic :: Software Development :: Libraries
|
|
|
452
452
|
Requires-Python: >=3.10
|
|
453
453
|
Description-Content-Type: text/markdown
|
|
454
454
|
License-File: LICENSE
|
|
455
|
+
Requires-Dist: ag-ui-protocol>=0.1.14
|
|
455
456
|
Requires-Dist: agentic-mesh-protocol==0.2.3
|
|
456
|
-
Requires-Dist: anyio==4.
|
|
457
|
+
Requires-Dist: anyio==4.12.1
|
|
457
458
|
Requires-Dist: grpcio-health-checking==1.78.0
|
|
458
459
|
Requires-Dist: grpcio-reflection==1.78.0
|
|
459
460
|
Requires-Dist: grpcio-status==1.78.0
|
|
@@ -462,7 +463,7 @@ Provides-Extra: profiling
|
|
|
462
463
|
Requires-Dist: asyncio-inspector==0.1.0; extra == "profiling"
|
|
463
464
|
Requires-Dist: pyinstrument==5.1.2; extra == "profiling"
|
|
464
465
|
Requires-Dist: viztracer==1.1.1; extra == "profiling"
|
|
465
|
-
Requires-Dist: yappi==1.7.
|
|
466
|
+
Requires-Dist: yappi==1.7.3; extra == "profiling"
|
|
466
467
|
Provides-Extra: taskiq
|
|
467
468
|
Requires-Dist: rstream==1.0.0; extra == "taskiq"
|
|
468
469
|
Requires-Dist: taskiq-aio-pika==0.6.0; extra == "taskiq"
|
{digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/examples/modules/archetype_with_tools_module.py
RENAMED
|
@@ -5,11 +5,10 @@ from typing import Any, ClassVar, Literal
|
|
|
5
5
|
|
|
6
6
|
from pydantic import BaseModel, Field
|
|
7
7
|
|
|
8
|
-
from digitalkin.models.grpc_servers.models import ClientConfig
|
|
8
|
+
from digitalkin.models.grpc_servers.models import ClientConfig, SecurityMode, ServerMode
|
|
9
9
|
from digitalkin.models.module.module_context import ModuleContext
|
|
10
10
|
from digitalkin.models.module.setup_types import SetupModel
|
|
11
11
|
from digitalkin.models.module.tool_reference import ToolReference
|
|
12
|
-
from digitalkin.models.settings.utils.channel import ControlFlow, SecurityMode
|
|
13
12
|
from digitalkin.modules._base_module import BaseModule # noqa: PLC2701
|
|
14
13
|
from digitalkin.services.services_models import ServicesStrategy
|
|
15
14
|
|
|
@@ -99,7 +98,7 @@ class ArchetypeSecret(BaseModel):
|
|
|
99
98
|
client_config = ClientConfig(
|
|
100
99
|
host="[::]",
|
|
101
100
|
port=50152,
|
|
102
|
-
mode=
|
|
101
|
+
mode=ServerMode.ASYNC,
|
|
103
102
|
security=SecurityMode.INSECURE,
|
|
104
103
|
credentials=None,
|
|
105
104
|
)
|
|
@@ -27,21 +27,22 @@
|
|
|
27
27
|
]
|
|
28
28
|
|
|
29
29
|
dependencies = [
|
|
30
|
+
"ag-ui-protocol>=0.1.14",
|
|
30
31
|
"agentic-mesh-protocol==0.2.3",
|
|
31
|
-
"anyio==4.
|
|
32
|
+
"anyio==4.12.1",
|
|
32
33
|
"grpcio-health-checking==1.78.0",
|
|
33
34
|
"grpcio-reflection==1.78.0",
|
|
34
35
|
"grpcio-status==1.78.0",
|
|
35
36
|
"pydantic==2.12.5",
|
|
36
|
-
|
|
37
|
-
version = "0.3.5.
|
|
37
|
+
]
|
|
38
|
+
version = "0.3.5.dev2"
|
|
38
39
|
|
|
39
40
|
[project.optional-dependencies]
|
|
40
41
|
profiling = [
|
|
41
42
|
"asyncio-inspector==0.1.0",
|
|
42
43
|
"pyinstrument==5.1.2",
|
|
43
44
|
"viztracer==1.1.1",
|
|
44
|
-
"yappi==1.7.
|
|
45
|
+
"yappi==1.7.3",
|
|
45
46
|
]
|
|
46
47
|
taskiq = [
|
|
47
48
|
"rstream==1.0.0",
|
|
@@ -60,13 +61,13 @@
|
|
|
60
61
|
|
|
61
62
|
[dependency-groups]
|
|
62
63
|
dev = [
|
|
63
|
-
"build==1.4.
|
|
64
|
+
"build==1.4.0",
|
|
64
65
|
"bump-my-version==1.2.7",
|
|
65
66
|
"cryptography==46.0.5",
|
|
66
67
|
"mypy==1.19.1",
|
|
67
68
|
"pre-commit==4.5.1",
|
|
68
69
|
"pyright==1.1.408",
|
|
69
|
-
"ruff==0.15.
|
|
70
|
+
"ruff==0.15.5",
|
|
70
71
|
"twine==6.2.0",
|
|
71
72
|
"types-grpcio-health-checking==1.0.0.20250506",
|
|
72
73
|
"types-grpcio-reflection==1.0.0.20250506",
|
|
@@ -86,13 +87,13 @@
|
|
|
86
87
|
"mkdocs-git-revision-date-localized-plugin==1.5.1",
|
|
87
88
|
"mkdocs-glightbox==0.5.2",
|
|
88
89
|
"mkdocs-include-markdown-plugin==7.2.1",
|
|
89
|
-
"mkdocs-literate-nav==0.6.
|
|
90
|
+
"mkdocs-literate-nav==0.6.2",
|
|
90
91
|
"mkdocs-llmstxt==0.5.0",
|
|
91
|
-
"mkdocs-material[imaging]==9.7.
|
|
92
|
+
"mkdocs-material[imaging]==9.7.5",
|
|
92
93
|
"mkdocs-minify-plugin==0.8.0",
|
|
93
94
|
"mkdocs-open-in-new-tab==1.0.8",
|
|
94
95
|
"mkdocs-redirects==1.2.2",
|
|
95
|
-
"mkdocs-section-index==0.3.
|
|
96
|
+
"mkdocs-section-index==0.3.10",
|
|
96
97
|
"mkdocs==1.6.1",
|
|
97
98
|
"mkdocstrings-python==2.0.3",
|
|
98
99
|
"mkdocstrings==1.0.3",
|
|
@@ -104,7 +105,7 @@
|
|
|
104
105
|
"hdrhistogram==0.10.3",
|
|
105
106
|
"psutil==7.2.2",
|
|
106
107
|
"pytest-asyncio==1.3.0",
|
|
107
|
-
"pytest-cov==7.
|
|
108
|
+
"pytest-cov==7.0.0",
|
|
108
109
|
"pytest-html==4.2.0",
|
|
109
110
|
"pytest-json-report==1.5.0",
|
|
110
111
|
"pytest-timeout==2.4.0",
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"""Agno framework integration for DigitalKin.
|
|
2
|
+
|
|
3
|
+
This module provides utilities and adapters for integrating Agno agents
|
|
4
|
+
with the DigitalKin SDK.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from digitalkin.community.agno.agno_adapter import to_digitalkin_event
|
|
8
|
+
|
|
9
|
+
__all__ = ["to_digitalkin_event"]
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"""Adapter to convert Agno events to DigitalKin framework-agnostic events.
|
|
2
|
+
|
|
3
|
+
This adapter bridges Agno-specific events to the DigitalKin event model,
|
|
4
|
+
allowing the core DigitalKin SDK to remain independent of Agno.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from __future__ import annotations
|
|
8
|
+
|
|
9
|
+
from typing import Any
|
|
10
|
+
|
|
11
|
+
from digitalkin.models.events import (
|
|
12
|
+
AgentRunEvent,
|
|
13
|
+
BaseAgentRunEvent,
|
|
14
|
+
ReasoningCompletedEvent,
|
|
15
|
+
ReasoningContentDeltaEvent,
|
|
16
|
+
ReasoningStartedEvent,
|
|
17
|
+
ReasoningStepEvent,
|
|
18
|
+
RunCompletedEvent,
|
|
19
|
+
RunContentEvent,
|
|
20
|
+
RunErrorEvent,
|
|
21
|
+
RunStartedEvent,
|
|
22
|
+
ToolCallCompletedEvent,
|
|
23
|
+
ToolCallErrorEvent,
|
|
24
|
+
ToolCallStartedEvent,
|
|
25
|
+
ToolInfo,
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def to_digitalkin_event(agno_event: Any) -> BaseAgentRunEvent: # noqa: PLR0911, C901, PLR0912
|
|
30
|
+
"""Convert an Agno event to a DigitalKin framework-agnostic event.
|
|
31
|
+
|
|
32
|
+
Args:
|
|
33
|
+
agno_event: Event from Agno's streaming API.
|
|
34
|
+
|
|
35
|
+
Returns:
|
|
36
|
+
Corresponding DigitalKin BaseAgentRunEvent.
|
|
37
|
+
|
|
38
|
+
Raises:
|
|
39
|
+
ImportError: If the optional 'agno' dependency is not installed.
|
|
40
|
+
ValueError: If the event type is not recognized.
|
|
41
|
+
"""
|
|
42
|
+
try:
|
|
43
|
+
from agno.run.agent import RunEvent # pylint: disable=C0415 # pyright: ignore[reportMissingImports]
|
|
44
|
+
except ImportError as exc:
|
|
45
|
+
message = "The 'agno' package is required to use agno_to_digitalkin_event. \
|
|
46
|
+
Install it with: pip install agno"
|
|
47
|
+
raise ImportError(message) from exc
|
|
48
|
+
|
|
49
|
+
event_type = agno_event.event
|
|
50
|
+
|
|
51
|
+
# Import timestamp if available
|
|
52
|
+
timestamp = getattr(agno_event, "timestamp", None)
|
|
53
|
+
|
|
54
|
+
if event_type == RunEvent.run_started:
|
|
55
|
+
return RunStartedEvent(
|
|
56
|
+
event=AgentRunEvent.RUN_STARTED,
|
|
57
|
+
run_id=getattr(agno_event, "run_id", None),
|
|
58
|
+
thread_id=getattr(agno_event, "thread_id", None),
|
|
59
|
+
timestamp=timestamp,
|
|
60
|
+
metadata=None,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
if event_type == RunEvent.run_content:
|
|
64
|
+
return RunContentEvent(
|
|
65
|
+
event=AgentRunEvent.RUN_CONTENT,
|
|
66
|
+
content=str(agno_event.content) if agno_event.content else None,
|
|
67
|
+
reasoning_content=getattr(agno_event, "reasoning_content", None),
|
|
68
|
+
content_type=None,
|
|
69
|
+
timestamp=timestamp,
|
|
70
|
+
metadata=None,
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
if event_type == RunEvent.run_completed:
|
|
74
|
+
return RunCompletedEvent(
|
|
75
|
+
event=AgentRunEvent.RUN_COMPLETED,
|
|
76
|
+
run_id=getattr(agno_event, "run_id", None),
|
|
77
|
+
final_content=str(agno_event.content) if getattr(agno_event, "content", None) else None,
|
|
78
|
+
usage=None,
|
|
79
|
+
timestamp=timestamp,
|
|
80
|
+
metadata=None,
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
if event_type == RunEvent.run_error:
|
|
84
|
+
return RunErrorEvent(
|
|
85
|
+
event=AgentRunEvent.RUN_ERROR,
|
|
86
|
+
error_type=getattr(agno_event, "error_type", None),
|
|
87
|
+
content=str(agno_event.content) if getattr(agno_event, "content", None) else None,
|
|
88
|
+
error_details=None,
|
|
89
|
+
timestamp=timestamp,
|
|
90
|
+
metadata=None,
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
if event_type == RunEvent.reasoning_started:
|
|
94
|
+
return ReasoningStartedEvent(
|
|
95
|
+
event=AgentRunEvent.REASONING_STARTED,
|
|
96
|
+
timestamp=timestamp,
|
|
97
|
+
metadata=None,
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
if event_type == RunEvent.reasoning_content_delta:
|
|
101
|
+
reasoning_content = getattr(agno_event, "reasoning_content", "")
|
|
102
|
+
return ReasoningContentDeltaEvent(
|
|
103
|
+
event=AgentRunEvent.REASONING_CONTENT_DELTA,
|
|
104
|
+
delta=reasoning_content,
|
|
105
|
+
timestamp=timestamp,
|
|
106
|
+
metadata=None,
|
|
107
|
+
)
|
|
108
|
+
|
|
109
|
+
if event_type == RunEvent.reasoning_step:
|
|
110
|
+
reasoning_content = getattr(agno_event, "reasoning_content", "")
|
|
111
|
+
return ReasoningStepEvent(
|
|
112
|
+
event=AgentRunEvent.REASONING_STEP,
|
|
113
|
+
delta=reasoning_content,
|
|
114
|
+
timestamp=timestamp,
|
|
115
|
+
metadata=None,
|
|
116
|
+
)
|
|
117
|
+
|
|
118
|
+
if event_type == RunEvent.reasoning_completed:
|
|
119
|
+
return ReasoningCompletedEvent(
|
|
120
|
+
event=AgentRunEvent.REASONING_COMPLETED,
|
|
121
|
+
timestamp=timestamp,
|
|
122
|
+
metadata=None,
|
|
123
|
+
)
|
|
124
|
+
|
|
125
|
+
if event_type == RunEvent.tool_call_started:
|
|
126
|
+
tool = getattr(agno_event, "tool", None)
|
|
127
|
+
tool_info = None
|
|
128
|
+
if tool:
|
|
129
|
+
tool_info = ToolInfo(
|
|
130
|
+
tool_call_id=getattr(tool, "tool_call_id", None),
|
|
131
|
+
tool_name=getattr(tool, "tool_name", None),
|
|
132
|
+
tool_args=getattr(tool, "tool_args", None),
|
|
133
|
+
result=None,
|
|
134
|
+
)
|
|
135
|
+
return ToolCallStartedEvent(
|
|
136
|
+
event=AgentRunEvent.TOOL_CALL_STARTED,
|
|
137
|
+
tool=tool_info,
|
|
138
|
+
timestamp=timestamp,
|
|
139
|
+
metadata=None,
|
|
140
|
+
)
|
|
141
|
+
|
|
142
|
+
if event_type == RunEvent.tool_call_completed:
|
|
143
|
+
tool = getattr(agno_event, "tool", None)
|
|
144
|
+
tool_info = None
|
|
145
|
+
if tool:
|
|
146
|
+
tool_info = ToolInfo(
|
|
147
|
+
tool_call_id=getattr(tool, "tool_call_id", None),
|
|
148
|
+
tool_name=getattr(tool, "tool_name", None),
|
|
149
|
+
tool_args=getattr(tool, "tool_args", None),
|
|
150
|
+
result=getattr(tool, "result", None),
|
|
151
|
+
)
|
|
152
|
+
return ToolCallCompletedEvent(
|
|
153
|
+
event=AgentRunEvent.TOOL_CALL_COMPLETED,
|
|
154
|
+
tool=tool_info,
|
|
155
|
+
content=str(agno_event.content) if getattr(agno_event, "content", None) else None,
|
|
156
|
+
timestamp=timestamp,
|
|
157
|
+
metadata=None,
|
|
158
|
+
)
|
|
159
|
+
|
|
160
|
+
if event_type == RunEvent.tool_call_error:
|
|
161
|
+
tool = getattr(agno_event, "tool", None)
|
|
162
|
+
tool_info = None
|
|
163
|
+
if tool:
|
|
164
|
+
tool_info = ToolInfo(
|
|
165
|
+
tool_call_id=getattr(tool, "tool_call_id", None),
|
|
166
|
+
tool_name=getattr(tool, "tool_name", None),
|
|
167
|
+
tool_args=None,
|
|
168
|
+
result=None,
|
|
169
|
+
)
|
|
170
|
+
return ToolCallErrorEvent(
|
|
171
|
+
event=AgentRunEvent.TOOL_CALL_ERROR,
|
|
172
|
+
tool=tool_info,
|
|
173
|
+
error_message=str(agno_event.content) if getattr(agno_event, "content", None) else None,
|
|
174
|
+
timestamp=timestamp,
|
|
175
|
+
metadata=None,
|
|
176
|
+
)
|
|
177
|
+
|
|
178
|
+
# Unknown event - create a generic base event
|
|
179
|
+
return BaseAgentRunEvent(
|
|
180
|
+
event=AgentRunEvent.RUN_CONTENT, # Default fallback
|
|
181
|
+
timestamp=timestamp,
|
|
182
|
+
metadata={"original_event_type": str(event_type)},
|
|
183
|
+
)
|
{digitalkin-0.3.5.dev0 → digitalkin-0.3.5.dev2}/src/digitalkin/core/job_manager/base_job_manager.py
RENAMED
|
@@ -130,12 +130,6 @@ class BaseJobManager(abc.ABC, Generic[InputModelT, OutputModelT, SetupModelT]):
|
|
|
130
130
|
required for the job manager to function.
|
|
131
131
|
"""
|
|
132
132
|
|
|
133
|
-
async def stop(self) -> None:
|
|
134
|
-
"""Stop the job manager and clean up resources.
|
|
135
|
-
|
|
136
|
-
Default no-op. Subclasses with external connections override.
|
|
137
|
-
"""
|
|
138
|
-
|
|
139
133
|
@staticmethod
|
|
140
134
|
async def job_specific_callback(
|
|
141
135
|
callback: Callable[[str, DataModel | ModuleCodeModel], Coroutine[Any, Any, None]],
|
|
@@ -285,7 +285,10 @@ class SingleJobManager(BaseJobManager[InputModelT, OutputModelT, SetupModelT]):
|
|
|
285
285
|
if session.cancelled:
|
|
286
286
|
break
|
|
287
287
|
|
|
288
|
-
|
|
288
|
+
try:
|
|
289
|
+
yield _stream()
|
|
290
|
+
finally:
|
|
291
|
+
session.close_stream()
|
|
289
292
|
|
|
290
293
|
async def create_module_instance_job(
|
|
291
294
|
self,
|