signalwire-sdk 3.0.2.dev60__tar.gz → 3.0.2.dev62__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 (221) hide show
  1. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire_sdk.egg-info → signalwire_sdk-3.0.2.dev62}/PKG-INFO +1 -1
  2. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/pyproject.toml +6 -2
  3. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/__init__.py +57 -25
  4. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/agent_server.py +274 -198
  5. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/agents/bedrock.py +87 -79
  6. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/__init__.py +1 -3
  7. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/build_search.py +595 -424
  8. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/config.py +1 -1
  9. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/core/__init__.py +1 -1
  10. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/core/agent_loader.py +208 -148
  11. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/core/argparse_helpers.py +72 -52
  12. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/core/dynamic_config.py +18 -14
  13. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/core/service_loader.py +95 -78
  14. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/dokku.py +187 -163
  15. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/execution/__init__.py +1 -1
  16. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/execution/datamap_exec.py +166 -110
  17. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/execution/webhook_exec.py +31 -28
  18. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/init_project.py +367 -298
  19. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/cli/output/__init__.py +10 -0
  20. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/cli/output/output_formatter.py +318 -0
  21. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/output/swml_dump.py +46 -37
  22. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/cli/simulation/__init__.py +10 -0
  23. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/simulation/data_generation.py +76 -98
  24. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/simulation/data_overrides.py +61 -58
  25. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/simulation/mock_env.py +113 -92
  26. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/swaig_test_wrapper.py +19 -15
  27. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/test_swaig.py +251 -219
  28. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/cli/types.py +8 -4
  29. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/__init__.py +7 -9
  30. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/__init__.py +1 -1
  31. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/config/__init__.py +1 -1
  32. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/core/agent/security → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/core/agent/deployment/handlers}/__init__.py +0 -1
  33. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/prompt/__init__.py +3 -3
  34. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/prompt/manager.py +75 -77
  35. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/core/agent/deployment/handlers → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/core/agent/routing}/__init__.py +0 -1
  36. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/core/agent/routing → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/core/agent/security}/__init__.py +0 -1
  37. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/core/agent/swml/__init__.py +8 -0
  38. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/tools/__init__.py +8 -3
  39. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/tools/decorator.py +24 -12
  40. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/tools/registry.py +47 -34
  41. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent/tools/type_inference.py +33 -10
  42. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/agent_base.py +562 -394
  43. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/auth_handler.py +113 -103
  44. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/config_loader.py +72 -70
  45. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/contexts.py +254 -204
  46. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/data_map.py +142 -126
  47. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/function_result.py +390 -367
  48. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/logging_config.py +54 -37
  49. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/__init__.py +9 -9
  50. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/ai_config_mixin.py +138 -120
  51. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/auth_mixin.py +91 -77
  52. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/mcp_server_mixin.py +22 -34
  53. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/prompt_mixin.py +108 -105
  54. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/serverless_mixin.py +168 -98
  55. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/skill_mixin.py +26 -15
  56. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/state_mixin.py +65 -50
  57. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/tool_mixin.py +73 -53
  58. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/mixins/web_mixin.py +368 -269
  59. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/pom_builder.py +69 -58
  60. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/security/__init__.py +10 -0
  61. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/core/security/security_utils.py +89 -0
  62. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/security/session_manager.py +72 -60
  63. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/security/webhook_validator.py +8 -7
  64. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/security_config.py +162 -140
  65. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/skill_base.py +47 -44
  66. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/skill_manager.py +83 -53
  67. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/swaig_function.py +41 -36
  68. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/swml_builder.py +119 -97
  69. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/swml_handler.py +63 -59
  70. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/swml_renderer.py +47 -53
  71. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/swml_service.py +479 -325
  72. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/livewire/__init__.py +24 -19
  73. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/livewire/plugins.py +4 -2
  74. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/mcp_gateway/__init__.py +7 -9
  75. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/mcp_gateway/gateway_service.py +245 -204
  76. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/mcp_gateway/mcp_manager.py +181 -142
  77. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/mcp_gateway/session_manager.py +101 -65
  78. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/pom/__init__.py +0 -2
  79. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/pom/pom.py +203 -148
  80. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/pom/pom_tool.py +30 -23
  81. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/prefabs/__init__.py +1 -3
  82. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/prefabs/concierge.py +80 -82
  83. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/prefabs/faq_bot.py +82 -96
  84. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/prefabs/info_gatherer.py +108 -107
  85. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/prefabs/receptionist.py +80 -105
  86. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/prefabs/survey.py +119 -127
  87. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/relay/call.py +152 -69
  88. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/relay/client.py +79 -39
  89. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/relay/message.py +9 -3
  90. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/__init__.py +0 -2
  91. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/_base.py +10 -8
  92. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/_pagination.py +1 -0
  93. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/call_handler.py +0 -2
  94. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/client.py +0 -2
  95. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/rest/namespaces/__init__.py +8 -0
  96. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/addresses.py +0 -2
  97. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/calling.py +0 -2
  98. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/chat.py +0 -2
  99. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/compat.py +15 -7
  100. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/datasphere.py +0 -2
  101. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/fabric.py +17 -7
  102. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/imported_numbers.py +0 -2
  103. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/logs.py +0 -2
  104. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/lookup.py +0 -2
  105. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/mfa.py +0 -2
  106. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/number_groups.py +6 -4
  107. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/phone_numbers.py +3 -3
  108. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/project.py +0 -2
  109. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/pubsub.py +0 -2
  110. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/queues.py +0 -2
  111. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/recordings.py +0 -2
  112. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/registry.py +0 -2
  113. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/short_codes.py +0 -2
  114. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/sip_profile.py +0 -2
  115. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/verified_callers.py +0 -2
  116. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/rest/namespaces/video.py +9 -5
  117. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/__init__.py +45 -40
  118. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/document_processor.py +818 -535
  119. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/index_builder.py +352 -258
  120. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/migration.py +217 -167
  121. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/models.py +8 -7
  122. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/pgvector_backend.py +411 -285
  123. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/query_processor.py +352 -140
  124. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/search_engine.py +714 -492
  125. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/search/search_service.py +230 -178
  126. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/__init__.py +1 -3
  127. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/api_ninjas_trivia/__init__.py +1 -1
  128. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/api_ninjas_trivia/skill.py +74 -67
  129. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/claude_skills/skill.py +151 -120
  130. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datasphere/__init__.py +1 -1
  131. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datasphere/skill.py +169 -150
  132. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datasphere_serverless/__init__.py +1 -1
  133. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/datasphere_serverless/skill.py +264 -0
  134. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/cli/output → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/datetime}/__init__.py +1 -1
  135. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datetime/skill.py +31 -30
  136. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/google_maps/skill.py +177 -116
  137. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/info_gatherer/skill.py +52 -48
  138. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/joke/__init__.py +10 -0
  139. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/joke/skill.py +62 -47
  140. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/math/__init__.py +10 -0
  141. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/math/skill.py +29 -25
  142. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/mcp_gateway/__init__.py +10 -0
  143. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/mcp_gateway/skill.py +242 -209
  144. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/core/agent/deployment → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/native_vector_search}/__init__.py +1 -0
  145. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/native_vector_search/skill.py +901 -0
  146. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/play_background_file/__init__.py +1 -1
  147. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/play_background_file/skill.py +97 -91
  148. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/registry.py +172 -114
  149. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/spider/__init__.py +3 -2
  150. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/spider/skill.py +324 -283
  151. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/swml_transfer/__init__.py +10 -0
  152. signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/swml_transfer/skill.py +376 -0
  153. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/weather_api/__init__.py +1 -1
  154. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/weather_api/skill.py +67 -63
  155. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/cli/simulation → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/skills/web_search}/__init__.py +1 -1
  156. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/web_search/skill.py +469 -295
  157. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/web_search/skill_improved.py +271 -172
  158. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/web_search/skill_original.py +149 -133
  159. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/wikipedia_search/__init__.py +1 -3
  160. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/wikipedia_search/skill.py +80 -70
  161. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/utils/__init__.py +3 -2
  162. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/utils/pom_utils.py +0 -1
  163. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/utils/schema_utils.py +133 -98
  164. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/utils/token_generators.py +0 -1
  165. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/utils/url_validator.py +20 -14
  166. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/utils/validators.py +0 -1
  167. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/web/__init__.py +2 -3
  168. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/web/web_service.py +205 -168
  169. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62/signalwire/signalwire_sdk.egg-info}/PKG-INFO +1 -1
  170. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire_sdk.egg-info/SOURCES.txt +1 -0
  171. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/cli/output/output_formatter.py +0 -255
  172. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/core/agent/swml/__init__.py +0 -9
  173. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/datasphere_serverless/skill.py +0 -238
  174. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/datetime/__init__.py +0 -10
  175. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/joke/__init__.py +0 -10
  176. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/math/__init__.py +0 -10
  177. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/mcp_gateway/__init__.py +0 -10
  178. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/native_vector_search/__init__.py +0 -10
  179. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/native_vector_search/skill.py +0 -826
  180. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/swml_transfer/__init__.py +0 -10
  181. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/swml_transfer/skill.py +0 -359
  182. signalwire_sdk-3.0.2.dev60/signalwire/signalwire/skills/web_search/__init__.py +0 -10
  183. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/LICENSE +0 -0
  184. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/README.md +0 -0
  185. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/man/sw-agent-init.1 +0 -0
  186. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/man/sw-search.1 +0 -0
  187. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/man/swaig-test.1 +0 -0
  188. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/setup.cfg +0 -0
  189. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/setup.py +0 -0
  190. {signalwire_sdk-3.0.2.dev60/signalwire/signalwire/rest/namespaces → signalwire_sdk-3.0.2.dev62/signalwire/signalwire/core/agent/deployment}/__init__.py +0 -0
  191. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/core/security/webhook_middleware.py +0 -0
  192. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/relay/__init__.py +0 -0
  193. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/relay/constants.py +0 -0
  194. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/relay/event.py +0 -0
  195. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/schema.json +0 -0
  196. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/README.md +0 -0
  197. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/api_ninjas_trivia/README.md +0 -0
  198. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/claude_skills/README.md +0 -0
  199. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/claude_skills/__init__.py +0 -0
  200. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datasphere/README.md +0 -0
  201. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datasphere_serverless/README.md +0 -0
  202. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/datetime/README.md +0 -0
  203. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/google_maps/__init__.py +0 -0
  204. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/info_gatherer/README.md +0 -0
  205. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/info_gatherer/__init__.py +0 -0
  206. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/joke/README.md +0 -0
  207. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/math/README.md +0 -0
  208. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/mcp_gateway/README.md +0 -0
  209. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/native_vector_search/README.md +0 -0
  210. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/play_background_file/README.md +0 -0
  211. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/spider/README.md +0 -0
  212. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/swml_transfer/README.md +0 -0
  213. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/weather_api/README.md +0 -0
  214. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/web_search/README.md +0 -0
  215. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire/skills/wikipedia_search/README.md +0 -0
  216. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire_sdk.egg-info/dependency_links.txt +0 -0
  217. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire_sdk.egg-info/entry_points.txt +0 -0
  218. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire_sdk.egg-info/requires.txt +0 -0
  219. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/signalwire/signalwire_sdk.egg-info/top_level.txt +0 -0
  220. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/tests/test_examples.py +0 -0
  221. {signalwire_sdk-3.0.2.dev60 → signalwire_sdk-3.0.2.dev62}/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.dev60
3
+ Version: 3.0.2.dev62
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.dev60"
7
+ version = "3.0.2.dev62"
8
8
  description = "SignalWire SDK"
9
9
  authors = [
10
10
  {name = "SignalWire Team", email = "info@signalwire.com"}
@@ -160,4 +160,8 @@ 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
@@ -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.dev60"
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.dev62"
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",