static
Class info¶
Classes¶
| Name | Children | Inherits |
|---|---|---|
| ResourceProvider llmling_agent.resource_providers.base Base class for resource providers. |
||
| StaticResourceProvider llmling_agent.resource_providers.static Provider for pre-configured tools, prompts and resources. |
🛈 DocStrings¶
Static resource provider implementation.
StaticResourceProvider
¶
Bases: ResourceProvider
Provider for pre-configured tools, prompts and resources.
Allows creating a provider that serves a fixed set of resources passed during initialization. Useful for converting static configurations to the common ResourceProvider interface.
Source code in src/llmling_agent/resource_providers/static.py
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 | |
__init__
¶
__init__(
name: str = "static",
tools: Sequence[Tool] | None = None,
prompts: Sequence[BasePrompt] | None = None,
resources: Sequence[ResourceInfo] | None = None,
)
Initialize provider with static resources.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Name of the provider |
'static'
|
tools
|
Sequence[Tool] | None
|
Optional list of tools to serve |
None
|
prompts
|
Sequence[BasePrompt] | None
|
Optional list of prompts to serve |
None
|
resources
|
Sequence[ResourceInfo] | None
|
Optional list of resources to serve |
None
|
Source code in src/llmling_agent/resource_providers/static.py
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | |
add_prompt
¶
add_prompt(prompt: BasePrompt) -> None
Add a prompt to this provider.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
prompt
|
BasePrompt
|
Prompt to add |
required |
Source code in src/llmling_agent/resource_providers/static.py
82 83 84 85 86 87 88 | |
add_resource
¶
add_resource(resource: ResourceInfo) -> None
Add a resource to this provider.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
resource
|
ResourceInfo
|
Resource to add |
required |
Source code in src/llmling_agent/resource_providers/static.py
105 106 107 108 109 110 111 | |
add_tool
¶
add_tool(tool: Tool) -> None
Add a tool to this provider.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tool
|
Tool
|
Tool to add |
required |
Source code in src/llmling_agent/resource_providers/static.py
59 60 61 62 63 64 65 | |
get_prompts
async
¶
get_prompts() -> list[BasePrompt]
Get pre-configured prompts.
Source code in src/llmling_agent/resource_providers/static.py
51 52 53 | |
get_resources
async
¶
get_resources() -> list[ResourceInfo]
Get pre-configured resources.
Source code in src/llmling_agent/resource_providers/static.py
55 56 57 | |
get_tools
async
¶
Get pre-configured tools.
Source code in src/llmling_agent/resource_providers/static.py
47 48 49 | |
remove_prompt
¶
Remove a prompt by name.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Name of prompt to remove |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if prompt was found and removed, False otherwise |
Source code in src/llmling_agent/resource_providers/static.py
90 91 92 93 94 95 96 97 98 99 100 101 102 103 | |
remove_resource
¶
Remove a resource by name.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Name of resource to remove |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if resource was found and removed, False otherwise |
Source code in src/llmling_agent/resource_providers/static.py
113 114 115 116 117 118 119 120 121 122 123 124 125 126 | |
remove_tool
¶
Remove a tool by name.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Name of tool to remove |
required |
Returns:
| Type | Description |
|---|---|
bool
|
True if tool was found and removed, False otherwise |
Source code in src/llmling_agent/resource_providers/static.py
67 68 69 70 71 72 73 74 75 76 77 78 79 80 | |
tool
¶
tool(
*,
name: str | None = None,
description: str | None = None,
enabled: bool = True,
requires_confirmation: bool = False,
requires_capability: str | None = None,
priority: int = 100,
cache_enabled: bool = False,
metadata: dict[str, str] | None = None,
**kwargs: Any,
) -> Callable[[Callable[..., Any]], Callable[..., Any]]
tool(
func: Callable[..., Any] | None = None,
*,
name: str | None = None,
description: str | None = None,
enabled: bool = True,
requires_confirmation: bool = False,
requires_capability: str | None = None,
priority: int = 100,
cache_enabled: bool = False,
metadata: dict[str, str] | None = None,
**kwargs: Any,
) -> Callable[..., Any] | Callable[[Callable[..., Any]], Callable[..., Any]]
Decorator to register a function as a tool.
Can be used with or without parameters:
# Without parameters
@provider.tool
def my_function(x: int) -> str:
return str(x)
# With parameters
@provider.tool(name="custom_name", description="Custom description")
def another_function(y: str) -> str:
return y.upper()
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
func
|
Callable[..., Any] | None
|
Function to register (when used without parentheses) |
None
|
name
|
str | None
|
Override for tool name |
None
|
description
|
str | None
|
Override for tool description |
None
|
enabled
|
bool
|
Whether tool is initially enabled |
True
|
requires_confirmation
|
bool
|
Whether execution needs confirmation |
False
|
requires_capability
|
str | None
|
Optional capability requirement |
None
|
priority
|
int
|
Execution priority (lower = higher priority) |
100
|
cache_enabled
|
bool
|
Whether to enable result caching |
False
|
metadata
|
dict[str, str] | None
|
Additional tool metadata |
None
|
**kwargs
|
Any
|
Additional arguments passed to Tool.from_callable |
{}
|
Source code in src/llmling_agent/resource_providers/static.py
146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 | |