signalwire-agents 0.1.37__py3-none-any.whl → 0.1.39__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- signalwire_agents/__init__.py +1 -1
- signalwire_agents/cli/build_search.py +95 -19
- signalwire_agents/core/agent_base.py +81 -7
- signalwire_agents/core/mixins/ai_config_mixin.py +120 -0
- signalwire_agents/core/skill_manager.py +47 -0
- signalwire_agents/search/index_builder.py +105 -10
- signalwire_agents/search/pgvector_backend.py +523 -0
- signalwire_agents/search/search_engine.py +41 -4
- signalwire_agents/search/search_service.py +86 -35
- signalwire_agents/skills/api_ninjas_trivia/skill.py +37 -1
- signalwire_agents/skills/datasphere/skill.py +82 -0
- signalwire_agents/skills/datasphere_serverless/skill.py +82 -0
- signalwire_agents/skills/joke/skill.py +21 -0
- signalwire_agents/skills/mcp_gateway/skill.py +82 -0
- signalwire_agents/skills/native_vector_search/README.md +210 -0
- signalwire_agents/skills/native_vector_search/skill.py +197 -7
- signalwire_agents/skills/play_background_file/skill.py +36 -0
- signalwire_agents/skills/registry.py +36 -0
- signalwire_agents/skills/spider/skill.py +113 -0
- signalwire_agents/skills/swml_transfer/skill.py +90 -0
- signalwire_agents/skills/weather_api/skill.py +28 -0
- signalwire_agents/skills/wikipedia_search/skill.py +22 -0
- {signalwire_agents-0.1.37.dist-info → signalwire_agents-0.1.39.dist-info}/METADATA +53 -1
- {signalwire_agents-0.1.37.dist-info → signalwire_agents-0.1.39.dist-info}/RECORD +28 -26
- {signalwire_agents-0.1.37.dist-info → signalwire_agents-0.1.39.dist-info}/WHEEL +0 -0
- {signalwire_agents-0.1.37.dist-info → signalwire_agents-0.1.39.dist-info}/entry_points.txt +0 -0
- {signalwire_agents-0.1.37.dist-info → signalwire_agents-0.1.39.dist-info}/licenses/LICENSE +0 -0
- {signalwire_agents-0.1.37.dist-info → signalwire_agents-0.1.39.dist-info}/top_level.txt +0 -0
@@ -27,6 +27,96 @@ class SWMLTransferSkill(SkillBase):
|
|
27
27
|
# Enable multiple instances support
|
28
28
|
SUPPORTS_MULTIPLE_INSTANCES = True
|
29
29
|
|
30
|
+
@classmethod
|
31
|
+
def get_parameter_schema(cls) -> Dict[str, Dict[str, Any]]:
|
32
|
+
"""Get parameter schema for SWML Transfer skill"""
|
33
|
+
schema = super().get_parameter_schema()
|
34
|
+
schema.update({
|
35
|
+
"transfers": {
|
36
|
+
"type": "object",
|
37
|
+
"description": "Transfer configurations mapping patterns to destinations",
|
38
|
+
"required": True,
|
39
|
+
"additionalProperties": {
|
40
|
+
"type": "object",
|
41
|
+
"properties": {
|
42
|
+
"url": {
|
43
|
+
"type": "string",
|
44
|
+
"description": "SWML endpoint URL for agent transfer"
|
45
|
+
},
|
46
|
+
"address": {
|
47
|
+
"type": "string",
|
48
|
+
"description": "Phone number or SIP address for direct connect"
|
49
|
+
},
|
50
|
+
"message": {
|
51
|
+
"type": "string",
|
52
|
+
"description": "Message to say before transferring",
|
53
|
+
"default": "Transferring you now..."
|
54
|
+
},
|
55
|
+
"return_message": {
|
56
|
+
"type": "string",
|
57
|
+
"description": "Message when returning from transfer",
|
58
|
+
"default": "The transfer is complete. How else can I help you?"
|
59
|
+
},
|
60
|
+
"post_process": {
|
61
|
+
"type": "boolean",
|
62
|
+
"description": "Whether to process message with AI before saying",
|
63
|
+
"default": True
|
64
|
+
},
|
65
|
+
"final": {
|
66
|
+
"type": "boolean",
|
67
|
+
"description": "Whether transfer is permanent (true) or temporary (false)",
|
68
|
+
"default": True
|
69
|
+
},
|
70
|
+
"from_addr": {
|
71
|
+
"type": "string",
|
72
|
+
"description": "Caller ID for connect action (optional)"
|
73
|
+
}
|
74
|
+
}
|
75
|
+
}
|
76
|
+
},
|
77
|
+
"description": {
|
78
|
+
"type": "string",
|
79
|
+
"description": "Description for the transfer tool",
|
80
|
+
"default": "Transfer call based on pattern matching",
|
81
|
+
"required": False
|
82
|
+
},
|
83
|
+
"parameter_name": {
|
84
|
+
"type": "string",
|
85
|
+
"description": "Name of the parameter that accepts the transfer type",
|
86
|
+
"default": "transfer_type",
|
87
|
+
"required": False
|
88
|
+
},
|
89
|
+
"parameter_description": {
|
90
|
+
"type": "string",
|
91
|
+
"description": "Description for the transfer type parameter",
|
92
|
+
"default": "The type of transfer to perform",
|
93
|
+
"required": False
|
94
|
+
},
|
95
|
+
"default_message": {
|
96
|
+
"type": "string",
|
97
|
+
"description": "Message when no pattern matches",
|
98
|
+
"default": "Please specify a valid transfer type.",
|
99
|
+
"required": False
|
100
|
+
},
|
101
|
+
"default_post_process": {
|
102
|
+
"type": "boolean",
|
103
|
+
"description": "Whether to process default message with AI",
|
104
|
+
"default": False,
|
105
|
+
"required": False
|
106
|
+
},
|
107
|
+
"required_fields": {
|
108
|
+
"type": "object",
|
109
|
+
"description": "Additional required fields to collect before transfer",
|
110
|
+
"default": {},
|
111
|
+
"required": False,
|
112
|
+
"additionalProperties": {
|
113
|
+
"type": "string",
|
114
|
+
"description": "Field description"
|
115
|
+
}
|
116
|
+
}
|
117
|
+
})
|
118
|
+
return schema
|
119
|
+
|
30
120
|
def get_instance_key(self) -> str:
|
31
121
|
"""
|
32
122
|
Get the key used to track this skill instance
|
@@ -44,6 +44,34 @@ class WeatherApiSkill(SkillBase):
|
|
44
44
|
SUPPORTS_MULTIPLE_INSTANCES = False
|
45
45
|
REQUIRED_ENV_VARS = [] # API key can be passed via params
|
46
46
|
|
47
|
+
@classmethod
|
48
|
+
def get_parameter_schema(cls) -> Dict[str, Dict[str, Any]]:
|
49
|
+
"""Get parameter schema for weather API skill"""
|
50
|
+
schema = super().get_parameter_schema()
|
51
|
+
schema.update({
|
52
|
+
"api_key": {
|
53
|
+
"type": "string",
|
54
|
+
"description": "WeatherAPI.com API key",
|
55
|
+
"required": True,
|
56
|
+
"hidden": True,
|
57
|
+
"env_var": "WEATHER_API_KEY"
|
58
|
+
},
|
59
|
+
"tool_name": {
|
60
|
+
"type": "string",
|
61
|
+
"description": "Custom name for the weather tool",
|
62
|
+
"default": "get_weather",
|
63
|
+
"required": False
|
64
|
+
},
|
65
|
+
"temperature_unit": {
|
66
|
+
"type": "string",
|
67
|
+
"description": "Temperature unit to display",
|
68
|
+
"default": "fahrenheit",
|
69
|
+
"required": False,
|
70
|
+
"enum": ["fahrenheit", "celsius"]
|
71
|
+
}
|
72
|
+
})
|
73
|
+
return schema
|
74
|
+
|
47
75
|
def __init__(self, agent, params: Dict[str, Any] = None):
|
48
76
|
"""
|
49
77
|
Initialize the skill with configuration parameters.
|
@@ -37,6 +37,28 @@ class WikipediaSearchSkill(SkillBase):
|
|
37
37
|
# Does not support multiple instances
|
38
38
|
SUPPORTS_MULTIPLE_INSTANCES = False
|
39
39
|
|
40
|
+
@classmethod
|
41
|
+
def get_parameter_schema(cls) -> Dict[str, Dict[str, Any]]:
|
42
|
+
"""Get parameter schema for Wikipedia search skill"""
|
43
|
+
schema = super().get_parameter_schema()
|
44
|
+
schema.update({
|
45
|
+
"num_results": {
|
46
|
+
"type": "integer",
|
47
|
+
"description": "Maximum number of Wikipedia articles to return",
|
48
|
+
"default": 1,
|
49
|
+
"required": False,
|
50
|
+
"minimum": 1,
|
51
|
+
"maximum": 5
|
52
|
+
},
|
53
|
+
"no_results_message": {
|
54
|
+
"type": "string",
|
55
|
+
"description": "Custom message when no Wikipedia articles are found",
|
56
|
+
"default": "I couldn't find any Wikipedia articles for '{query}'. Try rephrasing your search or using different keywords.",
|
57
|
+
"required": False
|
58
|
+
}
|
59
|
+
})
|
60
|
+
return schema
|
61
|
+
|
40
62
|
def setup(self) -> bool:
|
41
63
|
"""
|
42
64
|
Setup the Wikipedia search skill.
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: signalwire_agents
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.39
|
4
4
|
Summary: SignalWire AI Agents SDK
|
5
5
|
Author-email: SignalWire Team <info@signalwire.com>
|
6
6
|
License: MIT
|
@@ -70,6 +70,11 @@ Requires-Dist: striprtf>=0.0.26; extra == "search-all"
|
|
70
70
|
Requires-Dist: openpyxl>=3.1.0; extra == "search-all"
|
71
71
|
Requires-Dist: python-pptx>=0.6.21; extra == "search-all"
|
72
72
|
Requires-Dist: python-magic>=0.4.27; extra == "search-all"
|
73
|
+
Requires-Dist: psycopg2-binary>=2.9.0; extra == "search-all"
|
74
|
+
Requires-Dist: pgvector>=0.2.0; extra == "search-all"
|
75
|
+
Provides-Extra: pgvector
|
76
|
+
Requires-Dist: psycopg2-binary>=2.9.0; extra == "pgvector"
|
77
|
+
Requires-Dist: pgvector>=0.2.0; extra == "pgvector"
|
73
78
|
Provides-Extra: all
|
74
79
|
Requires-Dist: sentence-transformers>=2.2.0; extra == "all"
|
75
80
|
Requires-Dist: scikit-learn>=1.3.0; extra == "all"
|
@@ -643,6 +648,53 @@ if __name__ == "__main__":
|
|
643
648
|
agent.serve(host="0.0.0.0", port=8000)
|
644
649
|
```
|
645
650
|
|
651
|
+
### Customizing LLM Parameters
|
652
|
+
|
653
|
+
The SDK allows you to customize LLM parameters for both the main prompt and post-prompt, giving you fine control over the AI's behavior:
|
654
|
+
|
655
|
+
```python
|
656
|
+
from signalwire_agents import AgentBase
|
657
|
+
|
658
|
+
class PreciseAgent(AgentBase):
|
659
|
+
def __init__(self):
|
660
|
+
super().__init__(name="precise", route="/precise")
|
661
|
+
|
662
|
+
# Configure the agent's personality
|
663
|
+
self.prompt_add_section("Role", "You are a precise technical assistant.")
|
664
|
+
self.prompt_add_section("Instructions", "Provide accurate, detailed information.")
|
665
|
+
|
666
|
+
# Set custom LLM parameters for the main prompt
|
667
|
+
self.set_prompt_llm_params(
|
668
|
+
temperature=0.3, # Low temperature for more consistent responses
|
669
|
+
top_p=0.9, # Slightly reduced for focused responses
|
670
|
+
barge_confidence=0.7, # Moderate interruption threshold
|
671
|
+
presence_penalty=0.1, # Slight penalty for repetition
|
672
|
+
frequency_penalty=0.2 # Encourage varied vocabulary
|
673
|
+
)
|
674
|
+
|
675
|
+
# Set post-prompt for summaries
|
676
|
+
self.set_post_prompt("Provide a concise summary of the key points discussed.")
|
677
|
+
|
678
|
+
# Different parameters for post-prompt (summaries should be even more focused)
|
679
|
+
self.set_post_prompt_llm_params(
|
680
|
+
temperature=0.2, # Very low for consistent summaries
|
681
|
+
top_p=0.85 # More focused token selection
|
682
|
+
)
|
683
|
+
|
684
|
+
agent = PreciseAgent()
|
685
|
+
agent.serve()
|
686
|
+
```
|
687
|
+
|
688
|
+
#### Available LLM Parameters
|
689
|
+
|
690
|
+
- **temperature** (0.0-1.5): Controls randomness. Lower = more focused, higher = more creative
|
691
|
+
- **top_p** (0.0-1.0): Nucleus sampling. Lower = more focused on likely tokens
|
692
|
+
- **barge_confidence** (0.0-1.0): ASR confidence to interrupt. Higher = harder to interrupt
|
693
|
+
- **presence_penalty** (-2.0-2.0): Topic diversity. Positive = new topics
|
694
|
+
- **frequency_penalty** (-2.0-2.0): Repetition control. Positive = varied vocabulary
|
695
|
+
|
696
|
+
For more details on LLM parameter tuning, see [LLM Parameters Guide](docs/llm_parameters.md).
|
697
|
+
|
646
698
|
### Using Prefab Agents
|
647
699
|
|
648
700
|
```python
|
@@ -1,8 +1,8 @@
|
|
1
|
-
signalwire_agents/__init__.py,sha256=
|
1
|
+
signalwire_agents/__init__.py,sha256=CmDO1ZNIHORAgQqjBD2aRrWFtgvqcMtD5N9Xjg9XyvY,4845
|
2
2
|
signalwire_agents/agent_server.py,sha256=x9HyWia8D3r6KMqY-Q4DtNVivfJWLTx8B-KzUI8okuA,26880
|
3
3
|
signalwire_agents/schema.json,sha256=6-7ccbt39iM1CO36dOfvupRPfd0gnQ0XoAdyo-EFyjo,238042
|
4
4
|
signalwire_agents/cli/__init__.py,sha256=XbxAQFaCIdGXIXJiriVBWoFPOJsC401u21588nO4TG8,388
|
5
|
-
signalwire_agents/cli/build_search.py,sha256=
|
5
|
+
signalwire_agents/cli/build_search.py,sha256=Mqs9gSh43-0vv_4qrFEADt2b4dJqlGTfIFORK3ZlQPk,31895
|
6
6
|
signalwire_agents/cli/config.py,sha256=2i4e0BArdKsaXxjeueYYRNke7GWicHPYC2wuitVrP7A,2541
|
7
7
|
signalwire_agents/cli/swaig_test_wrapper.py,sha256=t63HQpEc1Up5AcysEHP1OsEQcgSMKH-9H1L2IhFso18,1533
|
8
8
|
signalwire_agents/cli/test_swaig.py,sha256=-v-XjTUWZNxmMJuOF5_cB1Jz8x8emJoqgqS_8jLeT4Y,31487
|
@@ -23,7 +23,7 @@ signalwire_agents/cli/simulation/data_generation.py,sha256=pxa9aJ6XkI0O8yAIGvBTU
|
|
23
23
|
signalwire_agents/cli/simulation/data_overrides.py,sha256=3_3pT6j-q2gRufPX2bZ1BrmY7u1IdloLooKAJil33vI,6319
|
24
24
|
signalwire_agents/cli/simulation/mock_env.py,sha256=fvaR_xdLMm8AbpNUbTJOFG9THcti3Zds-0QNDbKMaYk,10249
|
25
25
|
signalwire_agents/core/__init__.py,sha256=xjPq8DmUnWYUG28sd17n430VWPmMH9oZ9W14gYwG96g,806
|
26
|
-
signalwire_agents/core/agent_base.py,sha256=
|
26
|
+
signalwire_agents/core/agent_base.py,sha256=tgcM9QJntrxRiNflTSf0FTlkZaA4DdN0VC04DfopHmQ,47846
|
27
27
|
signalwire_agents/core/auth_handler.py,sha256=jXrof9WZ1W9qqlQT9WElcmSRafL2kG7207x5SqWN9MU,8481
|
28
28
|
signalwire_agents/core/config_loader.py,sha256=rStVRRUaeMGrMc44ocr0diMQQARZhbKqwMqQ6kqUNos,8722
|
29
29
|
signalwire_agents/core/contexts.py,sha256=g9FgOGMfGCUWlm57YZcv7CvOf-Ub9FdKZIOMu14ADfE,24428
|
@@ -33,7 +33,7 @@ signalwire_agents/core/logging_config.py,sha256=x4d_RAjBjVpJOFA2vXnPP2dNr13BZHz0
|
|
33
33
|
signalwire_agents/core/pom_builder.py,sha256=ywuiIfP8BeLBPo_G4X1teZlG6zTCMkW71CZnmyoDTAQ,6636
|
34
34
|
signalwire_agents/core/security_config.py,sha256=iAnAzKEJQiXL6mMpDaYm3Sjkxwm4x2N9HD6DeWSI8yI,12536
|
35
35
|
signalwire_agents/core/skill_base.py,sha256=1b_4ht_T1BVnfzHYqoILb3idrrPYMs5-G-adHo2IVss,6903
|
36
|
-
signalwire_agents/core/skill_manager.py,sha256=
|
36
|
+
signalwire_agents/core/skill_manager.py,sha256=D4erpz0tmSYLqyfeteNNIY0VRWDtX0rDw3n7Z_f0W5U,10493
|
37
37
|
signalwire_agents/core/swaig_function.py,sha256=VFIYQWltvYMrUfN_lfda-YzuQ2PqF2vhb-PegAliwCc,7076
|
38
38
|
signalwire_agents/core/swml_builder.py,sha256=tJBFDAVTENEfjGLp2h9_AKOYt5O9FrSYLI-nZZVwM1E,15604
|
39
39
|
signalwire_agents/core/swml_handler.py,sha256=hFDq41dQWL3EdFbq6h0hizE1dIqdVeiTeCrujbZsPzo,8397
|
@@ -52,7 +52,7 @@ signalwire_agents/core/agent/tools/__init__.py,sha256=eOcmyeGm6qogT3wsBx7QvdjmTb
|
|
52
52
|
signalwire_agents/core/agent/tools/decorator.py,sha256=pC6j1114GwVBd2U3h23I9gKLtu8AgeiuWV0lUzz682U,2961
|
53
53
|
signalwire_agents/core/agent/tools/registry.py,sha256=CgsCUMWBV4Use1baNl2KLYS2ewKjjOwm28kC_T7R6mU,7459
|
54
54
|
signalwire_agents/core/mixins/__init__.py,sha256=NsFpfF7TDP_lNR0Riw4Nbvt4fDbv_A3OoVbBqRrtXQM,652
|
55
|
-
signalwire_agents/core/mixins/ai_config_mixin.py,sha256=
|
55
|
+
signalwire_agents/core/mixins/ai_config_mixin.py,sha256=kT-xVVWMIE6RQe6qQFCRYxli345bxOs5uS1dCtMTeTc,18232
|
56
56
|
signalwire_agents/core/mixins/auth_mixin.py,sha256=Y9kR423-76U_pKL7KXzseeXX2a-4WxNWyo3odS7TDQM,9879
|
57
57
|
signalwire_agents/core/mixins/prompt_mixin.py,sha256=2cAJpp3Ka-fmgpAg201xeTy-xps99k0vlP7YyqZiCnw,13374
|
58
58
|
signalwire_agents/core/mixins/serverless_mixin.py,sha256=QIIbl_-16XFJi5aqrWpNzORbyCJQmhaplWXnW6U9i68,16137
|
@@ -70,62 +70,64 @@ signalwire_agents/prefabs/receptionist.py,sha256=em0uk_F0tmePvzE6Hi9HFlL3MHChH0R
|
|
70
70
|
signalwire_agents/prefabs/survey.py,sha256=a-0-xAnQYhdX4Lzgyna14lpNfaCV-rLUFkQF6QOCQAY,14534
|
71
71
|
signalwire_agents/search/__init__.py,sha256=x7saU_MDbhoOIzcvCT1-gnqyH2rrMpzB4ZUqk-av-lI,3958
|
72
72
|
signalwire_agents/search/document_processor.py,sha256=J4OG640qbqGslbVevvD4J2cbTmFCZiGJ1bLX2yDayaE,43699
|
73
|
-
signalwire_agents/search/index_builder.py,sha256=
|
73
|
+
signalwire_agents/search/index_builder.py,sha256=EqvX-yjcSYAsNFaFnkzQewUVISl1v452OEgfuwwQsZ4,29268
|
74
|
+
signalwire_agents/search/pgvector_backend.py,sha256=7OerJvzCGQigbb_RnV2M5PEOHR2EUMBn4n2bHML08I0,19172
|
74
75
|
signalwire_agents/search/query_processor.py,sha256=WMm_jjArQ6-Jpy0Cc0sUI4saidOtDRKx_XLv0qi3N3k,16739
|
75
|
-
signalwire_agents/search/search_engine.py,sha256=
|
76
|
-
signalwire_agents/search/search_service.py,sha256=
|
76
|
+
signalwire_agents/search/search_engine.py,sha256=rGRTs8qRX4biXhsOg7jnt6YvoetoN_KG3ByKwtX7h6o,16635
|
77
|
+
signalwire_agents/search/search_service.py,sha256=lni6tRFonv0EHNpSI2gsdoCrSi9D3Khxi_wLy9X3JyY,18310
|
77
78
|
signalwire_agents/skills/README.md,sha256=sM1_08IsKdRDCzYHPLzppJbaK5MvRelsVL6Kd9A9Ubo,12193
|
78
79
|
signalwire_agents/skills/__init__.py,sha256=9AMEcyk2tDaGiUjwVIson_tVWxV4oU_2NnGGNTbHuyQ,533
|
79
|
-
signalwire_agents/skills/registry.py,sha256=
|
80
|
+
signalwire_agents/skills/registry.py,sha256=zURdeAaccZyUSwLRl8K4ILXICMV3ouYQIA4rUBq6b5E,20792
|
80
81
|
signalwire_agents/skills/api_ninjas_trivia/README.md,sha256=SoyS7VFh3eVIiVnQ5gfTfs0a_gAlLwnmT2W2FrbNU0A,6762
|
81
82
|
signalwire_agents/skills/api_ninjas_trivia/__init__.py,sha256=zN305bBQkzlJyUNsPUMPt3gDJbvc-Iigkdh0rBou_RE,267
|
82
|
-
signalwire_agents/skills/api_ninjas_trivia/skill.py,sha256=
|
83
|
+
signalwire_agents/skills/api_ninjas_trivia/skill.py,sha256=ajJm0Vd07Oz3h0sHP0rRyckAXAbFRtcP7ws9GiAhfjw,8626
|
83
84
|
signalwire_agents/skills/datasphere/README.md,sha256=7G5t0V04SlnJ39U-3zOoIOfkNFrVEo-s45lCUlYmJGo,7351
|
84
85
|
signalwire_agents/skills/datasphere/__init__.py,sha256=SJJlmeMSeezjINPgkuWN1XzDPN_Z3GzZ_StzO1BtxQs,257
|
85
|
-
signalwire_agents/skills/datasphere/skill.py,sha256=
|
86
|
+
signalwire_agents/skills/datasphere/skill.py,sha256=EQ7ODzTt591wBlTDTn4ogX8LTeygiU8YHFQTx3F0f2c,12682
|
86
87
|
signalwire_agents/skills/datasphere_serverless/README.md,sha256=FErV97NEdYD_N1wZxkLqy6DSml5B9mCJmEgCUdGxh6A,9299
|
87
88
|
signalwire_agents/skills/datasphere_serverless/__init__.py,sha256=jpMNDcGiXsVbSCVUrc_AwLARqEtVu4dPYZPJSJ-K3rc,261
|
88
|
-
signalwire_agents/skills/datasphere_serverless/skill.py,sha256=
|
89
|
+
signalwire_agents/skills/datasphere_serverless/skill.py,sha256=i57VkMo2gU5YE9Z2lIxFfZtYkvkwMpnek49eSSfMFS0,9882
|
89
90
|
signalwire_agents/skills/datetime/README.md,sha256=95SzVz-Pcm9MPqZ4D3sSYKMwdpsDNwwCpWFRK027-Pc,4534
|
90
91
|
signalwire_agents/skills/datetime/__init__.py,sha256=Irajm2sUhmQVFgais-J-q-3d58tNnJ4nbLmnphr90nI,234
|
91
92
|
signalwire_agents/skills/datetime/skill.py,sha256=mA-dxBhZOIbMygBQ3Z4jmFCH-zsD8HnjcWC4asp6Gl0,4370
|
92
93
|
signalwire_agents/skills/joke/README.md,sha256=xUa2_0Pk9neli-UJxI4BPt3Fb1_5Xa3m8RuDlrkfBao,3594
|
93
94
|
signalwire_agents/skills/joke/__init__.py,sha256=8Rc5_nj30bdga2n9H9JSI2WzMn40pjApd-y-tk5WIkI,244
|
94
|
-
signalwire_agents/skills/joke/skill.py,sha256=
|
95
|
+
signalwire_agents/skills/joke/skill.py,sha256=BKPA50iht8I_mVBJ-PIQHjJJz1m0V2w5J69AfVMx23o,4092
|
95
96
|
signalwire_agents/skills/math/README.md,sha256=Nrv7PxkFPSxdnAN6856Fp1CfvsUwdncpRFFDERxmMe0,5335
|
96
97
|
signalwire_agents/skills/math/__init__.py,sha256=F7emZqBpAAkqJZxA3RNTzRSAXE5e2xu8PtFOPHebfKo,230
|
97
98
|
signalwire_agents/skills/math/skill.py,sha256=-h0DRX_nFkeSzLfaiOKv0zHScdXiQuz4rkLShanKwmc,3800
|
98
99
|
signalwire_agents/skills/mcp_gateway/README.md,sha256=t-71TTWlEvjgWLTcT3v4kMw9zlrKXTAC_sCjb1haNew,5826
|
99
100
|
signalwire_agents/skills/mcp_gateway/__init__.py,sha256=zLgOa7s0sIQphTNJjvasIAW7llxAApez7moC_e1tzP0,236
|
100
|
-
signalwire_agents/skills/mcp_gateway/skill.py,sha256=
|
101
|
+
signalwire_agents/skills/mcp_gateway/skill.py,sha256=rtXs8CayjWH8WOrpjGMbbG11dJCNK2RUA06Ysc1cK8g,17167
|
102
|
+
signalwire_agents/skills/native_vector_search/README.md,sha256=eFVRoDwZlZwbBXUKyKrvfC6AL4T8MXj0B-IgIdBZF70,5526
|
101
103
|
signalwire_agents/skills/native_vector_search/__init__.py,sha256=RofpN3Sd-vyWeUCTYH2dRVrl7h6YuyG5OK772UQ-KFk,220
|
102
|
-
signalwire_agents/skills/native_vector_search/skill.py,sha256=
|
104
|
+
signalwire_agents/skills/native_vector_search/skill.py,sha256=OK1dMRG04iaqKS-wuOJh4ye8Vkw4gmrU7aHGLUOtl_M,26890
|
103
105
|
signalwire_agents/skills/play_background_file/README.md,sha256=omJ_jY5Co6Mk-gJt_hoSl40wemmTbzae3DBll6HL0B4,7026
|
104
106
|
signalwire_agents/skills/play_background_file/__init__.py,sha256=iETc6e-0Cai3RUTQWhg9BieWi3NF3_DWWBKdYXcd4ok,273
|
105
|
-
signalwire_agents/skills/play_background_file/skill.py,sha256=
|
107
|
+
signalwire_agents/skills/play_background_file/skill.py,sha256=HgPc2FIvXKJHZ7gO2QEzQe6-uUBPrw_6sRJJpU83GTY,8822
|
106
108
|
signalwire_agents/skills/spider/README.md,sha256=yBa09JzgLikG3STbDNbRCKUM3l3XU5-D923I2g8CTVc,6909
|
107
109
|
signalwire_agents/skills/spider/__init__.py,sha256=bZcCGLX5Cz18qY8rOvAAync6BRtketxaU19l6YcA_iI,285
|
108
|
-
signalwire_agents/skills/spider/skill.py,sha256=
|
110
|
+
signalwire_agents/skills/spider/skill.py,sha256=w4dj0M8RZSfJtzL-jPXvr_roqawwnFKQD5GDKreel1Y,23137
|
109
111
|
signalwire_agents/skills/swml_transfer/README.md,sha256=2Y6CH5Bm9kI5IYCLczIQIYlaYUq6VX_S4Irct2CQMmQ,14681
|
110
112
|
signalwire_agents/skills/swml_transfer/__init__.py,sha256=YyfxRpbgT4ZpEjGolwffKqjUzX4VqDNLdqfSoA0D0IY,238
|
111
|
-
signalwire_agents/skills/swml_transfer/skill.py,sha256=
|
113
|
+
signalwire_agents/skills/swml_transfer/skill.py,sha256=8n_t76-fyC6tOIdSLGa6IXyv8SGU7_nipZxaJHLek6c,14717
|
112
114
|
signalwire_agents/skills/weather_api/README.md,sha256=buzCtrhxXAxZ8k7Qt_lR62E_tqnpXmXRsTarb_F43zg,6439
|
113
115
|
signalwire_agents/skills/weather_api/__init__.py,sha256=WCS--GFBX8straIZPuGAmTDZ7t-y7VI6ioB1Kf8eeP4,257
|
114
|
-
signalwire_agents/skills/weather_api/skill.py,sha256
|
116
|
+
signalwire_agents/skills/weather_api/skill.py,sha256=QegE9tNC1MdJ1FOwG7aIA1nCuQ5bmZJ3h9AWEj2V-vI,7196
|
115
117
|
signalwire_agents/skills/web_search/README.md,sha256=Y95cxEScMzhmslUJF8u_Nh15FbEBuus4P-E8_kk2an0,5438
|
116
118
|
signalwire_agents/skills/web_search/__init__.py,sha256=kv4CzmF1lldRZcL_HivieslP7gtTFvxcfprKG4n6b-Q,236
|
117
119
|
signalwire_agents/skills/web_search/skill.py,sha256=EGu6ff9aAb2W323_XDCcVDW1wbAKTZYK8HQOT__iqtE,12660
|
118
120
|
signalwire_agents/skills/wikipedia_search/README.md,sha256=KFIQ8XhqrTG8NRs72dIbjJacy2DlYEXLtxgy23gyRi4,7585
|
119
121
|
signalwire_agents/skills/wikipedia_search/__init__.py,sha256=yJ6iYTSyJC96mwwUsI_FneFhDBcLYD4xEerBKlWLTb8,375
|
120
|
-
signalwire_agents/skills/wikipedia_search/skill.py,sha256=
|
122
|
+
signalwire_agents/skills/wikipedia_search/skill.py,sha256=4sirBiEXn0Sd1YOnyinUFjACFq0y-CtzbdnDGnGzOAA,7949
|
121
123
|
signalwire_agents/utils/__init__.py,sha256=1KVsHzwgfktSXHe3vqSRGImjtIE58szwD2FHHoFBtvY,601
|
122
124
|
signalwire_agents/utils/pom_utils.py,sha256=4Mr7baQ_xR_hfJ72YxQRAT_GFa663YjFX_PumJ35Xds,191
|
123
125
|
signalwire_agents/utils/schema_utils.py,sha256=i4okv_O9bUApwT_jJf4Yoij3bLCrGrW3DC-vzSy2RuY,16392
|
124
126
|
signalwire_agents/utils/token_generators.py,sha256=4Mr7baQ_xR_hfJ72YxQRAT_GFa663YjFX_PumJ35Xds,191
|
125
127
|
signalwire_agents/utils/validators.py,sha256=4Mr7baQ_xR_hfJ72YxQRAT_GFa663YjFX_PumJ35Xds,191
|
126
|
-
signalwire_agents-0.1.
|
127
|
-
signalwire_agents-0.1.
|
128
|
-
signalwire_agents-0.1.
|
129
|
-
signalwire_agents-0.1.
|
130
|
-
signalwire_agents-0.1.
|
131
|
-
signalwire_agents-0.1.
|
128
|
+
signalwire_agents-0.1.39.dist-info/licenses/LICENSE,sha256=NYvAsB-rTcSvG9cqHt9EUHAWLiA9YzM4Qfz-mPdvDR0,1067
|
129
|
+
signalwire_agents-0.1.39.dist-info/METADATA,sha256=NGDHDBriddDff9ry1xXLbFTx4v40sK0bK6z6s1_Uxcc,41281
|
130
|
+
signalwire_agents-0.1.39.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
131
|
+
signalwire_agents-0.1.39.dist-info/entry_points.txt,sha256=ZDT65zfTO_YyDzi_hwQbCxIhrUfu_t8RpNXMMXlUPWI,144
|
132
|
+
signalwire_agents-0.1.39.dist-info/top_level.txt,sha256=kDGS6ZYv84K9P5Kyg9_S8P_pbUXoHkso0On_DB5bbWc,18
|
133
|
+
signalwire_agents-0.1.39.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|