signalwire-agents 1.0.18.dev8__tar.gz → 1.0.18.dev9__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.
- {signalwire_agents-1.0.18.dev8/signalwire_agents.egg-info → signalwire_agents-1.0.18.dev9}/PKG-INFO +2 -1
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/pyproject.toml +2 -1
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/__init__.py +1 -1
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/agent_server.py +1 -1
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/schema_utils.py +69 -16
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9/signalwire_agents.egg-info}/PKG-INFO +2 -1
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents.egg-info/requires.txt +1 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/LICENSE +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/man/sw-agent-init.1 +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/man/sw-search.1 +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/man/swaig-test.1 +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/setup.cfg +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/setup.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/agents/bedrock.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/build_search.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/config.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/core/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/core/agent_loader.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/core/argparse_helpers.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/core/dynamic_config.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/core/service_loader.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/dokku.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/execution/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/execution/datamap_exec.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/execution/webhook_exec.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/init_project.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/output/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/output/output_formatter.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/output/swml_dump.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/simulation/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/simulation/data_generation.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/simulation/data_overrides.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/simulation/mock_env.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/swaig_test_wrapper.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/test_swaig.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/types.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/config/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/deployment/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/deployment/handlers/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/prompt/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/prompt/manager.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/routing/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/security/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/swml/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/tools/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/tools/decorator.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent/tools/registry.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent_base.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/auth_handler.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/config_loader.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/contexts.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/data_map.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/function_result.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/logging_config.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/ai_config_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/auth_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/prompt_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/serverless_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/skill_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/state_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/tool_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/mixins/web_mixin.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/pom_builder.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/security/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/security/session_manager.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/security_config.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/skill_base.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/skill_manager.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/swaig_function.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/swml_builder.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/swml_handler.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/swml_renderer.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/swml_service.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/mcp_gateway/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/mcp_gateway/gateway_service.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/mcp_gateway/mcp_manager.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/mcp_gateway/session_manager.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/concierge.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/faq_bot.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/info_gatherer.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/receptionist.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/survey.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/schema.json +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/document_processor.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/index_builder.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/migration.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/models.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/pgvector_backend.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/query_processor.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/search_engine.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/search_service.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/api_ninjas_trivia/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/api_ninjas_trivia/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/api_ninjas_trivia/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datasphere/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datasphere/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datasphere/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datasphere_serverless/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datasphere_serverless/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datasphere_serverless/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datetime/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datetime/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/datetime/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/joke/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/joke/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/joke/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/math/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/math/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/math/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/mcp_gateway/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/mcp_gateway/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/mcp_gateway/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/native_vector_search/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/native_vector_search/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/native_vector_search/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/play_background_file/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/play_background_file/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/play_background_file/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/registry.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/spider/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/spider/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/spider/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/swml_transfer/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/swml_transfer/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/swml_transfer/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/weather_api/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/weather_api/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/weather_api/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/web_search/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/web_search/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/web_search/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/wikipedia_search/README.md +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/wikipedia_search/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/wikipedia_search/skill.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/pom_utils.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/token_generators.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/validators.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/web/__init__.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/web/web_service.py +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents.egg-info/SOURCES.txt +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents.egg-info/dependency_links.txt +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents.egg-info/entry_points.txt +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents.egg-info/top_level.txt +0 -0
- {signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/tests/test_examples.py +0 -0
{signalwire_agents-1.0.18.dev8/signalwire_agents.egg-info → signalwire_agents-1.0.18.dev9}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: signalwire_agents
|
|
3
|
-
Version: 1.0.18.
|
|
3
|
+
Version: 1.0.18.dev9
|
|
4
4
|
Summary: SignalWire AI Agents SDK
|
|
5
5
|
Author-email: SignalWire Team <info@signalwire.com>
|
|
6
6
|
License: MIT
|
|
@@ -29,6 +29,7 @@ Requires-Dist: uvicorn>=0.34.2
|
|
|
29
29
|
Requires-Dist: beautifulsoup4>=4.12.3
|
|
30
30
|
Requires-Dist: pytz>=2023.3
|
|
31
31
|
Requires-Dist: lxml>=4.9.0
|
|
32
|
+
Requires-Dist: jsonschema>=4.26.0
|
|
32
33
|
Provides-Extra: search-queryonly
|
|
33
34
|
Requires-Dist: numpy>=1.24.0; extra == "search-queryonly"
|
|
34
35
|
Requires-Dist: scikit-learn>=1.3.0; extra == "search-queryonly"
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "signalwire_agents"
|
|
7
|
-
version = "1.0.18.
|
|
7
|
+
version = "1.0.18.dev9"
|
|
8
8
|
description = "SignalWire AI Agents SDK"
|
|
9
9
|
authors = [
|
|
10
10
|
{name = "SignalWire Team", email = "info@signalwire.com"}
|
|
@@ -36,6 +36,7 @@ dependencies = [
|
|
|
36
36
|
"beautifulsoup4>=4.12.3",
|
|
37
37
|
"pytz>=2023.3",
|
|
38
38
|
"lxml>=4.9.0",
|
|
39
|
+
"jsonschema>=4.26.0",
|
|
39
40
|
]
|
|
40
41
|
|
|
41
42
|
# Optional dependencies for search functionality
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/__init__.py
RENAMED
|
@@ -18,7 +18,7 @@ A package for building AI agents using SignalWire's AI and SWML capabilities.
|
|
|
18
18
|
from .core.logging_config import configure_logging
|
|
19
19
|
configure_logging()
|
|
20
20
|
|
|
21
|
-
__version__ = "1.0.18.
|
|
21
|
+
__version__ = "1.0.18.dev9"
|
|
22
22
|
|
|
23
23
|
# Import core classes for easier access
|
|
24
24
|
from .core.agent_base import AgentBase
|
|
@@ -18,6 +18,10 @@ import json
|
|
|
18
18
|
import logging
|
|
19
19
|
from typing import Dict, Any, List, Optional, Tuple
|
|
20
20
|
|
|
21
|
+
# jsonschema is required for full JSON Schema Draft 2020-12 validation
|
|
22
|
+
from jsonschema import Draft202012Validator, ValidationError
|
|
23
|
+
from jsonschema.exceptions import best_match
|
|
24
|
+
|
|
21
25
|
try:
|
|
22
26
|
import structlog
|
|
23
27
|
# Ensure structlog is configured
|
|
@@ -241,35 +245,84 @@ class SchemaUtils:
|
|
|
241
245
|
return verb_props.get("required", [])
|
|
242
246
|
return []
|
|
243
247
|
|
|
248
|
+
def _get_verb_schema(self, verb_name: str) -> Optional[Dict[str, Any]]:
|
|
249
|
+
"""
|
|
250
|
+
Get the JSON Schema for validating a verb config.
|
|
251
|
+
|
|
252
|
+
This constructs a schema that can be used with jsonschema.validate() by:
|
|
253
|
+
1. Getting the verb's property schema
|
|
254
|
+
2. Including all $defs from the main schema so $ref references resolve
|
|
255
|
+
|
|
256
|
+
Args:
|
|
257
|
+
verb_name: The name of the verb
|
|
258
|
+
|
|
259
|
+
Returns:
|
|
260
|
+
A schema dict suitable for jsonschema validation, or None if not found
|
|
261
|
+
"""
|
|
262
|
+
verb_props = self.get_verb_properties(verb_name)
|
|
263
|
+
if not verb_props:
|
|
264
|
+
return None
|
|
265
|
+
|
|
266
|
+
# Create a schema with the $defs from the main schema so refs work
|
|
267
|
+
schema = verb_props.copy()
|
|
268
|
+
if "$defs" in self.schema:
|
|
269
|
+
schema["$defs"] = self.schema["$defs"]
|
|
270
|
+
|
|
271
|
+
return schema
|
|
272
|
+
|
|
244
273
|
def validate_verb(self, verb_name: str, verb_config: Dict[str, Any]) -> Tuple[bool, List[str]]:
|
|
245
274
|
"""
|
|
246
|
-
Validate a verb configuration against the
|
|
247
|
-
|
|
275
|
+
Validate a verb configuration against the JSON Schema.
|
|
276
|
+
|
|
277
|
+
Uses the jsonschema library for full JSON Schema Draft 2020-12 validation,
|
|
278
|
+
which checks all constraints including:
|
|
279
|
+
- Required properties
|
|
280
|
+
- Type checking (string, number, boolean, array, object)
|
|
281
|
+
- Pattern matching (regex constraints)
|
|
282
|
+
- Enum values
|
|
283
|
+
- Minimum/maximum values
|
|
284
|
+
- MinLength/maxLength for strings
|
|
285
|
+
- MinItems/maxItems for arrays
|
|
286
|
+
- anyOf/oneOf/allOf composition
|
|
287
|
+
- And all other JSON Schema keywords
|
|
288
|
+
|
|
248
289
|
Args:
|
|
249
290
|
verb_name: The name of the verb (e.g., "ai", "answer", etc.)
|
|
250
291
|
verb_config: The configuration for the verb
|
|
251
|
-
|
|
292
|
+
|
|
252
293
|
Returns:
|
|
253
294
|
(is_valid, error_messages) tuple
|
|
254
295
|
"""
|
|
255
|
-
# Simple validation for now - can be enhanced with more complete JSON Schema validation
|
|
256
296
|
errors = []
|
|
257
|
-
|
|
297
|
+
|
|
258
298
|
# Check if the verb exists in the schema
|
|
259
299
|
if verb_name not in self.verbs:
|
|
260
300
|
errors.append(f"Unknown verb: {verb_name}")
|
|
261
301
|
return False, errors
|
|
262
|
-
|
|
263
|
-
# Get the
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
302
|
+
|
|
303
|
+
# Get the verb schema for validation
|
|
304
|
+
verb_schema = self._get_verb_schema(verb_name)
|
|
305
|
+
if not verb_schema:
|
|
306
|
+
self.log.debug("verb_schema_not_found", verb=verb_name,
|
|
307
|
+
message="Could not extract verb schema, allowing config")
|
|
308
|
+
return True, []
|
|
309
|
+
|
|
310
|
+
# Use jsonschema for full validation
|
|
311
|
+
validator = Draft202012Validator(verb_schema)
|
|
312
|
+
validation_errors = list(validator.iter_errors(verb_config))
|
|
313
|
+
|
|
314
|
+
if not validation_errors:
|
|
315
|
+
return True, []
|
|
316
|
+
|
|
317
|
+
# Collect all error messages with their paths
|
|
318
|
+
for error in validation_errors:
|
|
319
|
+
if error.path:
|
|
320
|
+
path_str = ".".join(str(p) for p in error.path)
|
|
321
|
+
errors.append(f"{path_str}: {error.message}")
|
|
322
|
+
else:
|
|
323
|
+
errors.append(error.message)
|
|
324
|
+
|
|
325
|
+
return False, errors
|
|
273
326
|
|
|
274
327
|
def get_all_verb_names(self) -> List[str]:
|
|
275
328
|
"""
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9/signalwire_agents.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: signalwire_agents
|
|
3
|
-
Version: 1.0.18.
|
|
3
|
+
Version: 1.0.18.dev9
|
|
4
4
|
Summary: SignalWire AI Agents SDK
|
|
5
5
|
Author-email: SignalWire Team <info@signalwire.com>
|
|
6
6
|
License: MIT
|
|
@@ -29,6 +29,7 @@ Requires-Dist: uvicorn>=0.34.2
|
|
|
29
29
|
Requires-Dist: beautifulsoup4>=4.12.3
|
|
30
30
|
Requires-Dist: pytz>=2023.3
|
|
31
31
|
Requires-Dist: lxml>=4.9.0
|
|
32
|
+
Requires-Dist: jsonschema>=4.26.0
|
|
32
33
|
Provides-Extra: search-queryonly
|
|
33
34
|
Requires-Dist: numpy>=1.24.0; extra == "search-queryonly"
|
|
34
35
|
Requires-Dist: scikit-learn>=1.3.0; extra == "search-queryonly"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/agents/bedrock.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/dokku.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/test_swaig.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/cli/types.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/agent_base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/contexts.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/data_map.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/core/skill_base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/faq_bot.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/prefabs/survey.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/schema.json
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/search/models.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/README.md
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/skills/registry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/__init__.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/utils/pom_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/web/__init__.py
RENAMED
|
File without changes
|
{signalwire_agents-1.0.18.dev8 → signalwire_agents-1.0.18.dev9}/signalwire_agents/web/web_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|