signalwire-sdk 3.0.2.dev61__tar.gz → 3.0.2.dev63__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.
Files changed (224) hide show
  1. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire_sdk.egg-info → signalwire_sdk-3.0.2.dev63}/PKG-INFO +1 -1
  2. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/pyproject.toml +20 -2
  3. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/__init__.py +57 -25
  4. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/agent_server.py +278 -200
  5. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/agents/bedrock.py +87 -79
  6. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/__init__.py +1 -3
  7. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/build_search.py +602 -426
  8. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/config.py +1 -1
  9. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/core/__init__.py +1 -1
  10. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/core/agent_loader.py +264 -180
  11. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/core/argparse_helpers.py +73 -53
  12. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/core/dynamic_config.py +20 -16
  13. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/core/service_loader.py +123 -91
  14. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/dokku.py +187 -163
  15. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/execution/__init__.py +1 -1
  16. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/execution/datamap_exec.py +170 -114
  17. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/execution/webhook_exec.py +34 -29
  18. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/init_project.py +367 -298
  19. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/cli/output/__init__.py +10 -0
  20. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/cli/output/output_formatter.py +318 -0
  21. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/output/swml_dump.py +51 -39
  22. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/cli/simulation/__init__.py +10 -0
  23. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/simulation/data_generation.py +77 -99
  24. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/simulation/data_overrides.py +61 -58
  25. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/simulation/mock_env.py +116 -95
  26. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/swaig_test_wrapper.py +19 -15
  27. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/test_swaig.py +261 -222
  28. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/cli/types.py +8 -4
  29. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/__init__.py +7 -9
  30. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/_agent_host.py +24 -0
  31. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/__init__.py +1 -1
  32. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/config/__init__.py +1 -1
  33. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/core/agent/security → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/agent/deployment/handlers}/__init__.py +0 -1
  34. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/prompt/__init__.py +3 -3
  35. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/prompt/manager.py +76 -78
  36. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/core/agent/deployment/handlers → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/agent/routing}/__init__.py +0 -1
  37. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/core/agent/routing → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/agent/security}/__init__.py +0 -1
  38. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/agent/swml/__init__.py +8 -0
  39. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/tools/__init__.py +8 -3
  40. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/tools/decorator.py +24 -12
  41. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/tools/registry.py +48 -35
  42. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent/tools/type_inference.py +34 -11
  43. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/agent_base.py +608 -413
  44. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/auth_handler.py +257 -0
  45. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/config_loader.py +76 -72
  46. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/contexts.py +256 -206
  47. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/data_map.py +148 -132
  48. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/function_result.py +399 -372
  49. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/logging_config.py +56 -38
  50. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/__init__.py +9 -9
  51. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/mixins/_mixin_host.py +42 -0
  52. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/ai_config_mixin.py +143 -122
  53. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/auth_mixin.py +95 -78
  54. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/mcp_server_mixin.py +23 -35
  55. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/prompt_mixin.py +117 -107
  56. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/serverless_mixin.py +170 -99
  57. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/skill_mixin.py +30 -16
  58. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/state_mixin.py +67 -50
  59. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/tool_mixin.py +77 -56
  60. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/mixins/web_mixin.py +379 -277
  61. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/pom_builder.py +69 -58
  62. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/security/__init__.py +10 -0
  63. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/security/security_utils.py +89 -0
  64. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/security/session_manager.py +72 -60
  65. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/security/webhook_middleware.py +2 -2
  66. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/security/webhook_validator.py +8 -7
  67. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/security_config.py +163 -141
  68. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/skill_base.py +49 -46
  69. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/skill_manager.py +84 -54
  70. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/swaig_function.py +43 -38
  71. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/swml_builder.py +127 -105
  72. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/swml_handler.py +65 -61
  73. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/swml_renderer.py +54 -57
  74. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/core/swml_service.py +492 -331
  75. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/livewire/__init__.py +39 -33
  76. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/livewire/plugins.py +4 -2
  77. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/mcp_gateway/__init__.py +7 -9
  78. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/mcp_gateway/gateway_service.py +246 -205
  79. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/mcp_gateway/mcp_manager.py +196 -152
  80. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/mcp_gateway/session_manager.py +103 -67
  81. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/pom/__init__.py +0 -2
  82. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/pom/pom.py +208 -152
  83. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/pom/pom_tool.py +30 -23
  84. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/prefabs/__init__.py +1 -3
  85. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/prefabs/concierge.py +80 -82
  86. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/prefabs/faq_bot.py +84 -98
  87. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/prefabs/info_gatherer.py +111 -108
  88. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/prefabs/receptionist.py +80 -105
  89. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/prefabs/survey.py +119 -127
  90. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/relay/call.py +159 -72
  91. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/relay/client.py +92 -49
  92. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/relay/message.py +9 -3
  93. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/__init__.py +0 -2
  94. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/_base.py +13 -9
  95. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/_pagination.py +1 -0
  96. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/call_handler.py +0 -2
  97. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/client.py +0 -2
  98. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/rest/namespaces/__init__.py +8 -0
  99. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/addresses.py +0 -2
  100. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/calling.py +0 -2
  101. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/chat.py +0 -2
  102. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/compat.py +24 -16
  103. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/datasphere.py +0 -2
  104. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/fabric.py +17 -7
  105. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/imported_numbers.py +0 -2
  106. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/logs.py +0 -2
  107. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/lookup.py +0 -2
  108. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/mfa.py +0 -2
  109. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/number_groups.py +6 -4
  110. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/phone_numbers.py +3 -3
  111. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/project.py +0 -2
  112. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/pubsub.py +0 -2
  113. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/queues.py +0 -2
  114. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/recordings.py +0 -2
  115. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/registry.py +0 -2
  116. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/short_codes.py +0 -2
  117. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/sip_profile.py +0 -2
  118. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/verified_callers.py +0 -2
  119. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/rest/namespaces/video.py +9 -5
  120. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/__init__.py +60 -52
  121. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/document_processor.py +897 -583
  122. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/index_builder.py +371 -266
  123. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/migration.py +226 -173
  124. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/models.py +8 -7
  125. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/pgvector_backend.py +427 -296
  126. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/query_processor.py +356 -144
  127. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/search_engine.py +743 -510
  128. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/search/search_service.py +272 -211
  129. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/__init__.py +1 -3
  130. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/api_ninjas_trivia/__init__.py +1 -1
  131. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/api_ninjas_trivia/skill.py +76 -69
  132. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/claude_skills/skill.py +152 -121
  133. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datasphere/__init__.py +1 -1
  134. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datasphere/skill.py +169 -150
  135. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datasphere_serverless/__init__.py +1 -1
  136. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/datasphere_serverless/skill.py +264 -0
  137. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/cli/output → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/datetime}/__init__.py +1 -1
  138. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datetime/skill.py +31 -30
  139. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/google_maps/skill.py +178 -117
  140. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/info_gatherer/skill.py +52 -48
  141. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/joke/__init__.py +10 -0
  142. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/joke/skill.py +62 -47
  143. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/math/__init__.py +10 -0
  144. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/math/skill.py +32 -28
  145. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/mcp_gateway/__init__.py +10 -0
  146. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/mcp_gateway/skill.py +241 -208
  147. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/core/agent/deployment → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/native_vector_search}/__init__.py +1 -0
  148. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/native_vector_search/skill.py +914 -0
  149. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/play_background_file/__init__.py +1 -1
  150. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/play_background_file/skill.py +99 -93
  151. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/registry.py +184 -122
  152. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/spider/__init__.py +3 -2
  153. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/spider/skill.py +336 -293
  154. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/swml_transfer/__init__.py +10 -0
  155. signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/swml_transfer/skill.py +376 -0
  156. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/weather_api/__init__.py +1 -1
  157. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/weather_api/skill.py +69 -65
  158. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/cli/simulation → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/skills/web_search}/__init__.py +1 -1
  159. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/web_search/skill.py +475 -300
  160. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/web_search/skill_improved.py +274 -174
  161. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/web_search/skill_original.py +150 -134
  162. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/wikipedia_search/__init__.py +1 -3
  163. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/wikipedia_search/skill.py +80 -70
  164. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/utils/__init__.py +3 -2
  165. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/utils/pom_utils.py +0 -1
  166. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/utils/schema_utils.py +144 -104
  167. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/utils/token_generators.py +0 -1
  168. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/utils/url_validator.py +20 -14
  169. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/utils/validators.py +0 -1
  170. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/web/__init__.py +2 -3
  171. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/web/web_service.py +232 -191
  172. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63/signalwire/signalwire_sdk.egg-info}/PKG-INFO +1 -1
  173. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire_sdk.egg-info/SOURCES.txt +3 -0
  174. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/cli/output/output_formatter.py +0 -255
  175. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/core/agent/swml/__init__.py +0 -9
  176. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/core/auth_handler.py +0 -233
  177. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/datasphere_serverless/skill.py +0 -238
  178. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/datetime/__init__.py +0 -10
  179. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/joke/__init__.py +0 -10
  180. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/math/__init__.py +0 -10
  181. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/mcp_gateway/__init__.py +0 -10
  182. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/native_vector_search/__init__.py +0 -10
  183. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/native_vector_search/skill.py +0 -826
  184. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/swml_transfer/__init__.py +0 -10
  185. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/swml_transfer/skill.py +0 -359
  186. signalwire_sdk-3.0.2.dev61/signalwire/signalwire/skills/web_search/__init__.py +0 -10
  187. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/LICENSE +0 -0
  188. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/README.md +0 -0
  189. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/man/sw-agent-init.1 +0 -0
  190. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/man/sw-search.1 +0 -0
  191. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/man/swaig-test.1 +0 -0
  192. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/setup.cfg +0 -0
  193. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/setup.py +0 -0
  194. {signalwire_sdk-3.0.2.dev61/signalwire/signalwire/rest/namespaces → signalwire_sdk-3.0.2.dev63/signalwire/signalwire/core/agent/deployment}/__init__.py +0 -0
  195. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/relay/__init__.py +0 -0
  196. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/relay/constants.py +0 -0
  197. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/relay/event.py +0 -0
  198. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/schema.json +0 -0
  199. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/README.md +0 -0
  200. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/api_ninjas_trivia/README.md +0 -0
  201. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/claude_skills/README.md +0 -0
  202. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/claude_skills/__init__.py +0 -0
  203. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datasphere/README.md +0 -0
  204. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datasphere_serverless/README.md +0 -0
  205. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/datetime/README.md +0 -0
  206. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/google_maps/__init__.py +0 -0
  207. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/info_gatherer/README.md +0 -0
  208. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/info_gatherer/__init__.py +0 -0
  209. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/joke/README.md +0 -0
  210. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/math/README.md +0 -0
  211. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/mcp_gateway/README.md +0 -0
  212. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/native_vector_search/README.md +0 -0
  213. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/play_background_file/README.md +0 -0
  214. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/spider/README.md +0 -0
  215. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/swml_transfer/README.md +0 -0
  216. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/weather_api/README.md +0 -0
  217. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/web_search/README.md +0 -0
  218. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire/skills/wikipedia_search/README.md +0 -0
  219. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire_sdk.egg-info/dependency_links.txt +0 -0
  220. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire_sdk.egg-info/entry_points.txt +0 -0
  221. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire_sdk.egg-info/requires.txt +0 -0
  222. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/signalwire/signalwire_sdk.egg-info/top_level.txt +0 -0
  223. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/tests/test_examples.py +0 -0
  224. {signalwire_sdk-3.0.2.dev61 → signalwire_sdk-3.0.2.dev63}/tests/test_mcp_integration.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: signalwire-sdk
3
- Version: 3.0.2.dev61
3
+ Version: 3.0.2.dev63
4
4
  Summary: SignalWire SDK
5
5
  Author-email: SignalWire Team <info@signalwire.com>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "signalwire-sdk"
7
- version = "3.0.2.dev61"
7
+ version = "3.0.2.dev63"
8
8
  description = "SignalWire SDK"
9
9
  authors = [
10
10
  {name = "SignalWire Team", email = "info@signalwire.com"}
@@ -160,4 +160,22 @@ signalwire = [
160
160
  "man/swaig-test.1",
161
161
  "man/sw-search.1",
162
162
  "man/sw-agent-init.1"
163
- ]
163
+ ]
164
+
165
+ [tool.ruff]
166
+ target-version = "py310"
167
+ line-length = 88
168
+
169
+ [tool.mypy]
170
+ python_version = "3.10"
171
+ files = ["signalwire/signalwire"]
172
+ # Third-party packages without type stubs (nltk, sentence_transformers, the
173
+ # search/relay stacks) are out of scope — we type our own code, not theirs.
174
+ ignore_missing_imports = true
175
+ # The bar: our own code is clean. Bodies of untyped defs are checked so real
176
+ # type errors inside them surface (this is what found the mixin cluster).
177
+ check_untyped_defs = true
178
+ warn_unused_ignores = true
179
+ # `# type: ignore` is reserved for genuinely-unfixable third-party-stub gaps and
180
+ # must carry an error code + reason. warn_unused_ignores keeps them honest.
181
+ show_error_codes = true
@@ -5,9 +5,7 @@ This file is part of the SignalWire SDK.
5
5
 
6
6
  Licensed under the MIT License.
7
7
  See LICENSE file in the project root for full license information.
8
- """
9
8
 
10
- """
11
9
  SignalWire SDK
12
10
  =======================
13
11
 
@@ -16,32 +14,52 @@ A package for building AI agents using SignalWire's AI and SWML capabilities.
16
14
 
17
15
  # Configure logging before any other imports to ensure early initialization
18
16
  from .core.logging_config import configure_logging
19
- configure_logging()
20
17
 
21
- __version__ = "3.0.2.dev61"
18
+ configure_logging()
22
19
 
23
- # Import core classes for easier access
24
- from .core.agent_base import AgentBase
25
- from .core.contexts import ContextBuilder, Context, Step, GatherInfo, GatherQuestion, create_simple_context
26
- from .core.data_map import DataMap, create_simple_api_tool, create_expression_tool
27
- from signalwire.agent_server import AgentServer
28
- from signalwire.core.swml_service import SWMLService
29
- from signalwire.core.swml_builder import SWMLBuilder
30
- from signalwire.core.function_result import FunctionResult, SwaigFunctionResult
31
- from signalwire.core.swaig_function import SWAIGFunction
32
- from signalwire.agents.bedrock import BedrockAgent
33
- from signalwire.utils.schema_utils import SchemaValidationError
20
+ __version__ = "3.0.2.dev63"
21
+
22
+ # Import core classes for easier access.
23
+ # These imports are intentionally placed after configure_logging() so the SDK's
24
+ # logging is initialized before any submodule is imported (E402 expected).
25
+ from .core.agent_base import AgentBase # noqa: E402
26
+ from .core.contexts import ( # noqa: E402
27
+ ContextBuilder,
28
+ Context,
29
+ Step,
30
+ GatherInfo,
31
+ GatherQuestion,
32
+ create_simple_context,
33
+ )
34
+ from .core.data_map import ( # noqa: E402
35
+ DataMap,
36
+ create_simple_api_tool,
37
+ create_expression_tool,
38
+ )
39
+ from signalwire.agent_server import AgentServer # noqa: E402
40
+ from signalwire.core.swml_service import SWMLService # noqa: E402
41
+ from signalwire.core.swml_builder import SWMLBuilder # noqa: E402
42
+ from signalwire.core.function_result import ( # noqa: E402
43
+ FunctionResult,
44
+ SwaigFunctionResult,
45
+ )
46
+ from signalwire.core.swaig_function import SWAIGFunction # noqa: E402
47
+ from signalwire.agents.bedrock import BedrockAgent # noqa: E402
48
+ from signalwire.utils.schema_utils import SchemaValidationError # noqa: E402
34
49
 
35
50
  # Import WebService for static file serving
36
- from signalwire.web import WebService
51
+ from signalwire.web import WebService # noqa: E402
52
+
37
53
 
38
54
  # Lazy import skills to avoid slow startup for CLI tools
39
55
  # Skills are now loaded on-demand when requested
40
56
  def _get_skill_registry():
41
57
  """Lazy import and return skill registry"""
42
58
  import signalwire.skills
59
+
43
60
  return signalwire.skills.skill_registry
44
61
 
62
+
45
63
  def list_skills():
46
64
  """List all available skills with metadata.
47
65
 
@@ -49,19 +67,21 @@ def list_skills():
49
67
  env vars, multi-instance support). Delegates to the skill registry — the
50
68
  same source as ``list_skills_with_params()``, but the lighter summary."""
51
69
  from signalwire.skills.registry import skill_registry
70
+
52
71
  return skill_registry.list_skills()
53
72
 
73
+
54
74
  def list_skills_with_params():
55
75
  """
56
76
  Get complete schema for all available skills including parameter metadata
57
-
77
+
58
78
  This function returns a comprehensive schema for all available skills,
59
79
  including their metadata and parameter definitions. This is useful for
60
80
  GUI configuration tools, API documentation, or programmatic skill discovery.
61
-
81
+
62
82
  Returns:
63
83
  Dict[str, Dict[str, Any]]: Complete skill schema where keys are skill names
64
-
84
+
65
85
  Example:
66
86
  >>> schema = list_skills_with_params()
67
87
  >>> print(schema['web_search']['parameters']['api_key'])
@@ -74,18 +94,20 @@ def list_skills_with_params():
74
94
  }
75
95
  """
76
96
  from signalwire.skills.registry import skill_registry
97
+
77
98
  return skill_registry.get_all_skills_schema()
78
99
 
100
+
79
101
  def register_skill(skill_class):
80
102
  """
81
103
  Register a custom skill class
82
-
104
+
83
105
  This allows third-party code to register skill classes directly without
84
106
  requiring them to be in a specific directory structure.
85
-
107
+
86
108
  Args:
87
109
  skill_class: A class that inherits from SkillBase
88
-
110
+
89
111
  Example:
90
112
  >>> from my_custom_skills import MyWeatherSkill
91
113
  >>> register_skill(MyWeatherSkill)
@@ -93,30 +115,36 @@ def register_skill(skill_class):
93
115
  >>> agent.add_skill('my_weather')
94
116
  """
95
117
  from signalwire.skills.registry import skill_registry
118
+
96
119
  return skill_registry.register_skill(skill_class)
97
120
 
121
+
98
122
  def add_skill_directory(path):
99
123
  """
100
124
  Add a directory to search for skills
101
-
125
+
102
126
  This allows third-party skill collections to be registered by path.
103
127
  Skills in these directories should follow the same structure as built-in skills.
104
-
128
+
105
129
  Args:
106
130
  path: Path to directory containing skill subdirectories
107
-
131
+
108
132
  Example:
109
133
  >>> add_skill_directory('/opt/custom_skills')
110
134
  >>> # Now agent.add_skill('my_custom_skill') will search in this directory
111
135
  """
112
136
  from signalwire.skills.registry import skill_registry
137
+
113
138
  return skill_registry.add_skill_directory(path)
114
139
 
140
+
115
141
  def RestClient(*args, **kwargs):
116
142
  """Create a SignalWire REST API client (lazy import)"""
117
143
  from signalwire.rest import RestClient as _RestClient
144
+
118
145
  return _RestClient(*args, **kwargs)
119
146
 
147
+
120
148
  __all__ = [
121
149
  "AgentBase",
122
150
  "AgentServer",
@@ -130,7 +158,11 @@ __all__ = [
130
158
  "ContextBuilder",
131
159
  "Context",
132
160
  "Step",
161
+ "GatherInfo",
162
+ "GatherQuestion",
133
163
  "create_simple_context",
164
+ "SwaigFunctionResult",
165
+ "SchemaValidationError",
134
166
  "WebService",
135
167
  "list_skills",
136
168
  "list_skills_with_params",