tiny-agent-os 0.65__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.
- tiny_agent_os-0.65.dist-info/METADATA +202 -0
- tiny_agent_os-0.65.dist-info/RECORD +49 -0
- tiny_agent_os-0.65.dist-info/WHEEL +5 -0
- tiny_agent_os-0.65.dist-info/entry_points.txt +2 -0
- tiny_agent_os-0.65.dist-info/top_level.txt +1 -0
- tinyagent/__init__.py +71 -0
- tinyagent/agent.py +954 -0
- tinyagent/chat/__init__.py +12 -0
- tinyagent/chat/chat_mode.py +291 -0
- tinyagent/cli/__init__.py +16 -0
- tinyagent/cli/colors.py +104 -0
- tinyagent/cli/main.py +665 -0
- tinyagent/cli/spinner.py +94 -0
- tinyagent/config/__init__.py +14 -0
- tinyagent/config/config.py +248 -0
- tinyagent/decorators.py +187 -0
- tinyagent/exceptions.py +85 -0
- tinyagent/factory/__init__.py +18 -0
- tinyagent/factory/agent_factory.py +439 -0
- tinyagent/factory/dynamic_agent_factory.py +561 -0
- tinyagent/factory/orchestrator.py +1514 -0
- tinyagent/logging.py +97 -0
- tinyagent/mcp/__init__.py +14 -0
- tinyagent/mcp/manager.py +321 -0
- tinyagent/tool.py +185 -0
- tinyagent/tools/__init__.py +44 -0
- tinyagent/tools/aider.py +122 -0
- tinyagent/tools/anon_coder.py +296 -0
- tinyagent/tools/boilerplate_tool.py +147 -0
- tinyagent/tools/brave_search.py +104 -0
- tinyagent/tools/business_deepsearch.py +797 -0
- tinyagent/tools/codeagent_tool.py +217 -0
- tinyagent/tools/content_processor.py +285 -0
- tinyagent/tools/custom_text_browser.py +958 -0
- tinyagent/tools/duckduckgo_search.py +153 -0
- tinyagent/tools/enhanced_deepsearch.py +1589 -0
- tinyagent/tools/external.py +303 -0
- tinyagent/tools/file_manipulator.py +274 -0
- tinyagent/tools/final_extractor_tool.py +249 -0
- tinyagent/tools/llm_serializer.py +124 -0
- tinyagent/tools/markdown_gen.py +300 -0
- tinyagent/tools/ripgrep.py +136 -0
- tinyagent/utils/__init__.py +13 -0
- tinyagent/utils/json_parser.py +231 -0
- tinyagent/utils/logging_utils.py +78 -0
- tinyagent/utils/openrouter_request.py +120 -0
- tinyagent/utils/serialization.py +185 -0
- tinyagent/utils/structured_outputs.py +126 -0
- tinyagent/utils/type_converter.py +134 -0
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: tiny_agent_os
|
|
3
|
+
Version: 0.65
|
|
4
|
+
Summary: A streamlined framework for building powerful LLM-powered agents
|
|
5
|
+
Author-email: tinyagent <contact@example.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/tinyagent/tinyagent
|
|
8
|
+
Project-URL: Bug Tracker, https://github.com/tinyagent/tinyagent/issues
|
|
9
|
+
Classifier: Programming Language :: Python :: 3
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
+
Classifier: Operating System :: OS Independent
|
|
12
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
13
|
+
Requires-Python: >=3.8
|
|
14
|
+
Description-Content-Type: text/markdown
|
|
15
|
+
Requires-Dist: python-dotenv>=1.0.0
|
|
16
|
+
Requires-Dist: requests>=2.31.0
|
|
17
|
+
Requires-Dist: openai>=1.0.0
|
|
18
|
+
Requires-Dist: pyyaml>=6.0.1
|
|
19
|
+
Requires-Dist: jinja2>=3.1.2
|
|
20
|
+
Requires-Dist: click>=8.1.6
|
|
21
|
+
Requires-Dist: rich>=13.7.1
|
|
22
|
+
Requires-Dist: jsonschema>=4.10.3
|
|
23
|
+
Requires-Dist: typing-extensions>=4.10.0
|
|
24
|
+
Requires-Dist: colorama>=0.4.6
|
|
25
|
+
Requires-Dist: regex>=2023.0.0
|
|
26
|
+
|
|
27
|
+
# tinyAgent 🤖
|
|
28
|
+
|
|
29
|
+
A streamlined framework for building powerful LLM-powered agents that can solve complex tasks through tool execution, orchestration, and dynamic capability creation.
|
|
30
|
+
|
|
31
|
+
**Made by (x) @tunahorse21 | A product of alchemiststudios.ai**
|
|
32
|
+
|
|
33
|
+
> **Heads Up**: tinyAgent is in BETA until V1. It's working but still evolving!
|
|
34
|
+
> While I can't guarantee it's 100% bug-free, I'm actively improving it whenever I can between my day job and business.
|
|
35
|
+
> Found something that could be better? Show off your skills and open an issue with a fix: I'd genuinely appreciate it!
|
|
36
|
+
|
|
37
|
+

|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
__ .__ _____ __
|
|
41
|
+
_/ |_|__| ____ ___.__. / _ \ ____ ____ _____/ |_
|
|
42
|
+
\ __\ |/ < | |/ /_\ \ / ___\_/ __ \ / \ __\
|
|
43
|
+
| | | | | \___ / | \/ /_/ > ___/| | \ |
|
|
44
|
+
|__| |__|___| / ____\____|__ /\___ / \___ >___| /__|
|
|
45
|
+
\/\/ \//_____/ \/ \/
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Installation
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Clone the repository
|
|
52
|
+
git clone https://github.com/alchemiststudiosDOTai/tinyAgent.git
|
|
53
|
+
|
|
54
|
+
cd tinyagent
|
|
55
|
+
|
|
56
|
+
# Option 1: For Linux users, run the installation script
|
|
57
|
+
chmod +x install/linuxInstall.sh && ./install/linuxInstall.sh
|
|
58
|
+
|
|
59
|
+
# Option 2: Manual installation
|
|
60
|
+
# Create a virtual environment (recommended)
|
|
61
|
+
python3 -m venv .venv
|
|
62
|
+
|
|
63
|
+
# Activate the virtual environment
|
|
64
|
+
# On macOS/Linux
|
|
65
|
+
source .venv/bin/activate
|
|
66
|
+
# On Windows
|
|
67
|
+
.\.venv\Scripts\activate
|
|
68
|
+
|
|
69
|
+
# Install dependencies
|
|
70
|
+
# Option 1: Using UV (recommended - see INSTALL.md for details)
|
|
71
|
+
# Option 2: Using pip
|
|
72
|
+
pip install -r requirements.txt
|
|
73
|
+
|
|
74
|
+
# Set up required configuration files
|
|
75
|
+
# 1. Environment variables
|
|
76
|
+
cp .envexample .env
|
|
77
|
+
# Edit .env to add your API keys (especially OpenRouter)
|
|
78
|
+
|
|
79
|
+
# 2. Configuration file
|
|
80
|
+
cp exampleconfig.yml config.yml
|
|
81
|
+
# Edit config.yml to customize your settings
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Pip Installation
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Simple pip installation
|
|
88
|
+
pip install tinyagent
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**Note:** The orchestrator component is currently being built and is in beta.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Philosophy
|
|
96
|
+
|
|
97
|
+
1. **Functions as Agents**
|
|
98
|
+
- You can turn **any function** into a **tool** or **agent**.
|
|
99
|
+
- This makes it easy to add new capabilities.
|
|
100
|
+
|
|
101
|
+
```mermaid
|
|
102
|
+
flowchart LR
|
|
103
|
+
A["Python Function"] --> B["Tool"]
|
|
104
|
+
B --> C["Agent"]
|
|
105
|
+
C --> D["Result"]
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+

|
|
109
|
+
|
|
110
|
+
```python
|
|
111
|
+
# Define a simple calculator function and turn it into a tool
|
|
112
|
+
@tool
|
|
113
|
+
def calculate_sum(a: int, b: int) -> int:
|
|
114
|
+
"""Calculate the sum of two integers."""
|
|
115
|
+
return a + b
|
|
116
|
+
|
|
117
|
+
def main():
|
|
118
|
+
"""Create a basic agent with a calculator tool."""
|
|
119
|
+
# One-liner: create agent with our tool directly
|
|
120
|
+
agent = AgentFactory.get_instance().create_agent(tools=[calculate_sum])
|
|
121
|
+
# Run the agent with a query
|
|
122
|
+
query = "calculate the sum of 5 and 3"
|
|
123
|
+
print(f"Running agent with query: '{query}'")
|
|
124
|
+
# you can also specify the expected type of the result
|
|
125
|
+
result = agent.run(query, expected_type=int)
|
|
126
|
+
print(f"Result: {result}")
|
|
127
|
+
print(f"Result Type: {type(result)}")
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
2. **Hierarchical Orchestration**
|
|
131
|
+
- You can **combine many agents** together.
|
|
132
|
+
- A **top-level agent** or **orchestrator** can **delegate tasks** to **specialized agents**.
|
|
133
|
+
- This helps solve **complex problems** by breaking them into parts.
|
|
134
|
+
|
|
135
|
+
```mermaid
|
|
136
|
+
flowchart TD
|
|
137
|
+
O["Research Orchestrator"] --> A1["Web Search Agent"]
|
|
138
|
+
O --> A2["Summarizer Agent"]
|
|
139
|
+
O --> A3["Code Snippet Agent"]
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Features
|
|
145
|
+
|
|
146
|
+
1. **Modular Design**
|
|
147
|
+
|
|
148
|
+
- Tools are defined with `@tool` and easily integrated or swapped.
|
|
149
|
+
|
|
150
|
+
2. **Flexible Agent Options**
|
|
151
|
+
|
|
152
|
+
- **Orchestrator**: Simple task execution.
|
|
153
|
+
- **AgentFactory**: Fine-tuned control.
|
|
154
|
+
- **DynamicAgentFactory**: Dynamic agent creation.
|
|
155
|
+
|
|
156
|
+
3. **Centralized Setup**
|
|
157
|
+
|
|
158
|
+
- Factory pattern streamlines configuration and logging.
|
|
159
|
+
|
|
160
|
+
4. **Robust Error Handling**
|
|
161
|
+
|
|
162
|
+
- Custom exceptions (e.g., `ToolError`) improve debugging.
|
|
163
|
+
|
|
164
|
+
5. **Clean Code Structure**
|
|
165
|
+
|
|
166
|
+
- Agents handle logic; tools handle execution.
|
|
167
|
+
|
|
168
|
+
6. **Versatile Interaction**
|
|
169
|
+
|
|
170
|
+
- Use `agent.execute_tool()` for precision or `agent.run()` for broader tasks.
|
|
171
|
+
|
|
172
|
+
7. **Structured Output**
|
|
173
|
+
- Enforce JSON structure on LLM responses for consistent parsing
|
|
174
|
+
- Enable with `output.structured: true` in config.yml
|
|
175
|
+
- Compatible with OpenRouter's JSON schema validation
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## Acknowledgments & Inspo
|
|
180
|
+
|
|
181
|
+
We'd like to thank the creators of these amazing projects that inspired TinyAgent:
|
|
182
|
+
|
|
183
|
+
- My Wife
|
|
184
|
+
- [HuggingFace SmoLAgents](https://github.com/huggingface/smolagents)
|
|
185
|
+
- [Aider-AI](https://github.com/Aider-AI/aider)
|
|
186
|
+
- [Kyon-eth](https://github.com/kyon-eth)
|
|
187
|
+
- [RA.Aid](https://github.com/ai-christianson/RA.Aid)
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Key Takeaways
|
|
192
|
+
|
|
193
|
+
- **tinyAgent** is perfect for scalable AI projects needing structured agent and tool management.
|
|
194
|
+
- It offers **extensibility**, **error handling**, and **logging**, but may be overkill for simple tasks.
|
|
195
|
+
|
|
196
|
+
_Important Note on Tools_:
|
|
197
|
+
|
|
198
|
+
The aider tool integrated in TinyAgent is extremely powerful but requires proper understanding to use effectively. It's highly configurable with many advanced features that can dramatically enhance productivity when used correctly.
|
|
199
|
+
|
|
200
|
+
**⚠️ We strongly recommend thoroughly learning aider before using it in any serious projects.**
|
|
201
|
+
|
|
202
|
+
Invest time in studying the documentation at https://aider.chat/ to understand its capabilities, configuration options, and best practices. This investment will pay off significantly in your development workflow.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
tinyagent/__init__.py,sha256=ihXSN3WrMmlmMGKf4l-0NFYXEwUrRuXxcHjdFWBcn1g,1681
|
|
2
|
+
tinyagent/agent.py,sha256=3911u3i5eGkq1nHa-cuxQeIRNWXyUvmmQswT8gLL4-8,40031
|
|
3
|
+
tinyagent/decorators.py,sha256=f_PCRZAzB8y_sQOCR0ImnEGGzd7oGIEguRHyc-Q-OoE,6174
|
|
4
|
+
tinyagent/exceptions.py,sha256=EkwEDZ3iQT8WyieB_CiIORldSOFOx9W4WSmQm753qdA,2806
|
|
5
|
+
tinyagent/logging.py,sha256=u8K4zQ9wLhhL0ZHHPDfdF_BFVT3snvk_xi-aP689fZQ,3203
|
|
6
|
+
tinyagent/tool.py,sha256=HKsE3x-hzFLYlmB8aq8hjbY8-FAA0GGGzFlYTDq7g3I,7503
|
|
7
|
+
tinyagent/chat/__init__.py,sha256=owc9w-CD15RjxT7hEU-pdFNykuFmNhsvMc2xb3wVDr8,284
|
|
8
|
+
tinyagent/chat/chat_mode.py,sha256=0Ub1YTGvQxin1Be3xLzXX01SgltAnl6LHQJygcLtZtw,11115
|
|
9
|
+
tinyagent/cli/__init__.py,sha256=6JNnHXyHi1-ukZK3elVFL8k7KKGC7nV1etH_MjBMaS8,343
|
|
10
|
+
tinyagent/cli/colors.py,sha256=yr8wSfW13glywI8lySfvhDLhiXf9O6ULHZFO-1BrMFc,2996
|
|
11
|
+
tinyagent/cli/main.py,sha256=hv8sMF74BZQb-Sma0FZ0_deuaYDQDtrHYDDrk1cGcrE,29859
|
|
12
|
+
tinyagent/cli/spinner.py,sha256=rJvt6SEG-Gt6js-tzkhI1G3-06xzSns9d92y1JTYNdg,2934
|
|
13
|
+
tinyagent/config/__init__.py,sha256=AFD7-AQOJsVBsSN3qmvcjDgdTJhwY3aM2h7VJ3AehwQ,367
|
|
14
|
+
tinyagent/config/config.py,sha256=U-1bcjzm8Mww1XNowtoexrtgfedH0AXNwAmvVpM-tvI,8319
|
|
15
|
+
tinyagent/factory/__init__.py,sha256=bHmJLXpTRZUFjVLGq_F3yl9av3ArHaABvzJ8oH2cM-Y,486
|
|
16
|
+
tinyagent/factory/agent_factory.py,sha256=N-FWUrP82EChhJWULusEfAxUa3Oq-DWU2sUwRNq_0BE,14595
|
|
17
|
+
tinyagent/factory/dynamic_agent_factory.py,sha256=dMjI3XFKIUYLQbGvV1v-Dy2A4kqtg9CQE9WzHpSCiOg,22362
|
|
18
|
+
tinyagent/factory/orchestrator.py,sha256=NRXp34-VK1dM6nFAW1czuMjf1-zE5uhM17pVXdZR1Z0,66105
|
|
19
|
+
tinyagent/mcp/__init__.py,sha256=69prCGimznH3qCPUv_5nQSuTrhTs7t56xvi8Vcg4zNo,367
|
|
20
|
+
tinyagent/mcp/manager.py,sha256=J1WdJDm-31XJcRjbVGTdG2cJuAN1BQdZzaJRuZJNzoY,11084
|
|
21
|
+
tinyagent/tools/__init__.py,sha256=UqvRXrWfF4a2pJJof6j9R_pb-DKqX7x1pbxfyzoHslQ,1537
|
|
22
|
+
tinyagent/tools/aider.py,sha256=Uqe1F0o_Hrzs-OyycPqqqaKM0Ufs2S0Vbz_cGthmyT4,4365
|
|
23
|
+
tinyagent/tools/anon_coder.py,sha256=AHu9KG_cxeHtzazCe2D0TEurImpP6D5yWNOJXcL4vQo,10980
|
|
24
|
+
tinyagent/tools/boilerplate_tool.py,sha256=iNLHNscgNFz6jv4jPmfItCtuL1ZDM1zjAhG0Ngxi3g8,4606
|
|
25
|
+
tinyagent/tools/brave_search.py,sha256=_2gLgI7BB9WWX3ukvqHi-0vCWhNwT7dGe_iyRlCv3Xo,3121
|
|
26
|
+
tinyagent/tools/business_deepsearch.py,sha256=TWminnLJHh36IvyalJBMCjhrJ1xVGsisp-mN7412uZY,32918
|
|
27
|
+
tinyagent/tools/codeagent_tool.py,sha256=npID8oDEn3NtvcF9FKWgvAJXBIxrktm8vbtl5VveKMo,6918
|
|
28
|
+
tinyagent/tools/content_processor.py,sha256=PEuMUzbMvDd2ufc4zqhoiZnWJlyxPU4jeam_dAdEiN0,11211
|
|
29
|
+
tinyagent/tools/custom_text_browser.py,sha256=XxsFeJ90g1WIwbxTLSzOnKaUmNVBxLPfLQr-0pL3Ryo,34922
|
|
30
|
+
tinyagent/tools/duckduckgo_search.py,sha256=9G2eaM8toz-JKZMbALCIToXq8mVWVq0EV5fT8mN4PAI,5643
|
|
31
|
+
tinyagent/tools/enhanced_deepsearch.py,sha256=mLu2MdEg4XxxbhCyumjHy0tv69y7S28IBFgYCByZVrk,63359
|
|
32
|
+
tinyagent/tools/external.py,sha256=qF-ufyaYI9ZW7Fh2ZOyIxdHbXzxDFnU0re3aYoe1avw,12873
|
|
33
|
+
tinyagent/tools/file_manipulator.py,sha256=v6LM384_Im-OM-KuqxaiHAbbMPWZRYSKVcm0xUQtd10,11377
|
|
34
|
+
tinyagent/tools/final_extractor_tool.py,sha256=ofoeIINm8wIyP7N5HfbYdvqRs0RIpBATa_krr0eV8vE,9540
|
|
35
|
+
tinyagent/tools/llm_serializer.py,sha256=12z-DXLm3MJl6eeSCPnAGieUHoSiApaOBDnm1js1LFE,4321
|
|
36
|
+
tinyagent/tools/markdown_gen.py,sha256=Nr3mw0uJQsaCRLLWHHiZ0O4e9SSbybxHUS_zwGaRm_Q,10963
|
|
37
|
+
tinyagent/tools/ripgrep.py,sha256=mrXraq-RbUAPCxrbXLDmWycAhCoyU4n1if_2IyzDh5A,4288
|
|
38
|
+
tinyagent/utils/__init__.py,sha256=ZqqDlpSKbeBZ9XNIa4xUi-KE7de7btI3E69Irif4E20,309
|
|
39
|
+
tinyagent/utils/json_parser.py,sha256=DF_x7ygz3xZwuK49GrKMO7vLa3hsZqw59wiUWGEuOeQ,7647
|
|
40
|
+
tinyagent/utils/logging_utils.py,sha256=YxMCY9PNEXulxuzKR5PDMfyWf7-7o_g0-k5Qyb0X9MU,1998
|
|
41
|
+
tinyagent/utils/openrouter_request.py,sha256=wfNjg-tzrgErKCAWZ0df0-0fmKUiKK7pt_WxxoMZzjU,3760
|
|
42
|
+
tinyagent/utils/serialization.py,sha256=jd0b_Gf9sNyg0haUYw5oY0wc3EuobHOUa6TfhkYiFwc,5453
|
|
43
|
+
tinyagent/utils/structured_outputs.py,sha256=IKkZSOHKorpiVc32fA-DtEiBjogTTwtKVyCEFxmsm3A,4843
|
|
44
|
+
tinyagent/utils/type_converter.py,sha256=imPyWYmTIZHDDBwLAdGJHojYLWFERz4Yjl9kKHPtp3Y,7183
|
|
45
|
+
tiny_agent_os-0.65.dist-info/METADATA,sha256=aKcyqN5siaEmwjrkYRPSI9muqtDGAHKha7rPcqrcSV4,6384
|
|
46
|
+
tiny_agent_os-0.65.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
|
47
|
+
tiny_agent_os-0.65.dist-info/entry_points.txt,sha256=_haUtRmoC4JvXuzSJfRQXaMd7mpC1AbL_DTRpXRYa0w,50
|
|
48
|
+
tiny_agent_os-0.65.dist-info/top_level.txt,sha256=Ny8aJNchZpc2Vvhp3306L5vjceJakvFxBk-UjjVeA_I,10
|
|
49
|
+
tiny_agent_os-0.65.dist-info/RECORD,,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
tinyagent
|
tinyagent/__init__.py
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Core components for the tinyAgent framework.
|
|
3
|
+
|
|
4
|
+
This package contains the core components of the tinyAgent framework, including
|
|
5
|
+
the Agent class, Tool framework, configuration management, and utilities.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
__version__ = "0.65"
|
|
9
|
+
|
|
10
|
+
# Core components
|
|
11
|
+
from .agent import Agent, get_llm
|
|
12
|
+
from .tool import Tool, ParamType
|
|
13
|
+
from .decorators import tool
|
|
14
|
+
from .exceptions import (
|
|
15
|
+
TinyAgentError, ConfigurationError,
|
|
16
|
+
ToolError, ToolNotFoundError, ToolExecutionError,
|
|
17
|
+
RateLimitExceeded, ParsingError,
|
|
18
|
+
AgentRetryExceeded, OrchestratorError, AgentNotFoundError
|
|
19
|
+
)
|
|
20
|
+
|
|
21
|
+
# Factory components
|
|
22
|
+
from .factory import (
|
|
23
|
+
AgentFactory, DynamicAgentFactory,
|
|
24
|
+
Orchestrator, TaskStatus
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
# Logging utilities
|
|
28
|
+
from .logging import configure_logging, get_logger
|
|
29
|
+
|
|
30
|
+
# Configuration utilities
|
|
31
|
+
from .config import load_config, get_config_value
|
|
32
|
+
|
|
33
|
+
# CLI utilities
|
|
34
|
+
from .cli import (
|
|
35
|
+
main as CLI, # Use main function as CLI for backward compatibility
|
|
36
|
+
Colors,
|
|
37
|
+
Spinner
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
# Chat mode
|
|
41
|
+
from .chat import run_chat_mode
|
|
42
|
+
|
|
43
|
+
# Public exports
|
|
44
|
+
__all__ = [
|
|
45
|
+
# Core components
|
|
46
|
+
'Agent', 'get_llm',
|
|
47
|
+
'Tool', 'ParamType',
|
|
48
|
+
'tool',
|
|
49
|
+
|
|
50
|
+
# Exception classes
|
|
51
|
+
'TinyAgentError',
|
|
52
|
+
'ConfigurationError',
|
|
53
|
+
'ToolError', 'ToolNotFoundError', 'ToolExecutionError',
|
|
54
|
+
'RateLimitExceeded',
|
|
55
|
+
'ParsingError',
|
|
56
|
+
'AgentRetryExceeded',
|
|
57
|
+
'OrchestratorError', 'AgentNotFoundError',
|
|
58
|
+
|
|
59
|
+
# Factory components
|
|
60
|
+
'AgentFactory', 'DynamicAgentFactory',
|
|
61
|
+
'Orchestrator', 'TaskStatus',
|
|
62
|
+
|
|
63
|
+
# Utilities
|
|
64
|
+
'configure_logging', 'get_logger',
|
|
65
|
+
'load_config', 'get_config_value',
|
|
66
|
+
'Colors', 'Spinner', 'CLI',
|
|
67
|
+
'run_chat_mode',
|
|
68
|
+
|
|
69
|
+
# Version
|
|
70
|
+
'__version__'
|
|
71
|
+
]
|