janito 3.15.1__py3-none-any.whl → 3.16.1__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.
- janito/README.md +191 -191
- janito/providers/anthropic/model_info.py +12 -0
- janito/providers/anthropic/provider.py +76 -72
- {janito-3.15.1.dist-info → janito-3.16.1.dist-info}/METADATA +62 -62
- {janito-3.15.1.dist-info → janito-3.16.1.dist-info}/RECORD +9 -9
- {janito-3.15.1.dist-info → janito-3.16.1.dist-info}/WHEEL +0 -0
- {janito-3.15.1.dist-info → janito-3.16.1.dist-info}/entry_points.txt +0 -0
- {janito-3.15.1.dist-info → janito-3.16.1.dist-info}/licenses/LICENSE +0 -0
- {janito-3.15.1.dist-info → janito-3.16.1.dist-info}/top_level.txt +0 -0
janito/README.md
CHANGED
@@ -1,192 +1,192 @@
|
|
1
|
-
# Janito CLI
|
2
|
-
|
3
|
-
A powerful command-line tool for running LLM-powered workflows with built-in tool execution capabilities.
|
4
|
-
|
5
|
-
## Quick Start
|
6
|
-
|
7
|
-
### Installation
|
8
|
-
|
9
|
-
```bash
|
10
|
-
uv pip install janito
|
11
|
-
```
|
12
|
-
|
13
|
-
### First-Time Setup
|
14
|
-
|
15
|
-
1. **Get your API key**: Sign up at [Moonshot AI](https://platform.moonshot.cn/) and get your API key
|
16
|
-
2. **Set your API key**:
|
17
|
-
```bash
|
18
|
-
janito --set-api-key YOUR_MOONSHOT_API_KEY -p moonshot
|
19
|
-
```
|
20
|
-
|
21
|
-
### Basic Usage
|
22
|
-
|
23
|
-
**Moonshot (Recommended - Default Provider)**
|
24
|
-
```bash
|
25
|
-
# Using the default provider (moonshot) and model
|
26
|
-
janito "Create a Python script that reads a CSV file"
|
27
|
-
|
28
|
-
# Using a specific Moonshot model
|
29
|
-
janito -m kimi-k1-8k "Explain quantum computing"
|
30
|
-
```
|
31
|
-
|
32
|
-
**Other Providers**
|
33
|
-
```bash
|
34
|
-
# OpenAI
|
35
|
-
janito -p openai -m gpt-4 "Write a React component"
|
36
|
-
|
37
|
-
# Anthropic
|
38
|
-
janito -p anthropic -m claude-
|
39
|
-
|
40
|
-
# Google
|
41
|
-
janito -p google -m gemini-2.0-flash-exp "Generate unit tests"
|
42
|
-
```
|
43
|
-
|
44
|
-
### Interactive Chat Mode
|
45
|
-
|
46
|
-
Start an interactive session (default mode):
|
47
|
-
```bash
|
48
|
-
janito
|
49
|
-
```
|
50
|
-
|
51
|
-
Or explicitly:
|
52
|
-
```bash
|
53
|
-
janito --chat
|
54
|
-
```
|
55
|
-
|
56
|
-
In chat mode, you can:
|
57
|
-
|
58
|
-
- Have multi-turn conversations
|
59
|
-
- Execute code and commands
|
60
|
-
- Read and write files
|
61
|
-
- Use built-in tools
|
62
|
-
|
63
|
-
### Available Commands
|
64
|
-
|
65
|
-
- `janito --list-providers` - List all supported providers
|
66
|
-
- `janito --list-models` - List all available models
|
67
|
-
- `janito --list-tools` - List available tools
|
68
|
-
- `janito --show-config` - Show current configuration
|
69
|
-
|
70
|
-
### Configuration
|
71
|
-
|
72
|
-
Set default provider and model:
|
73
|
-
```bash
|
74
|
-
janito --set provider=moonshot
|
75
|
-
janito --set model=kimi-k1-8k
|
76
|
-
```
|
77
|
-
|
78
|
-
## Providers
|
79
|
-
|
80
|
-
### Moonshot (Recommended)
|
81
|
-
|
82
|
-
- **Models**: kimi-k1-8k, kimi-k1-32k, kimi-k1-128k, kimi-k2-turbo-preview
|
83
|
-
- **Strengths**: Excellent Chinese/English support, competitive pricing, fast responses
|
84
|
-
- **Setup**: Get API key from [Moonshot AI Platform](https://platform.moonshot.cn/)
|
85
|
-
|
86
|
-
### OpenAI
|
87
|
-
|
88
|
-
- **Models**: gpt-5, gpt-4.1, gpt-4o, gpt-4-turbo, gpt-3.5-turbo
|
89
|
-
- **Setup**: Get API key from [OpenAI Platform](https://platform.openai.com/)
|
90
|
-
|
91
|
-
### Anthropic
|
92
|
-
|
93
|
-
- **Models**: claude-3-7-sonnet-20250219, claude-3-5-sonnet-20241022, claude-3-opus-20250514
|
94
|
-
- **Setup**: Get API key from [Anthropic Console](https://console.anthropic.com/)
|
95
|
-
|
96
|
-
### IBM WatsonX
|
97
|
-
|
98
|
-
- **Models**: ibm/granite-3-8b-instruct, ibm/granite-3-2b-instruct, meta-llama/llama-3-1-8b-instruct, meta-llama/llama-3-1-70b-instruct, mistralai/mistral-large
|
99
|
-
- **Strengths**: Enterprise-grade AI, IBM Granite models, hosted Llama and Mistral models
|
100
|
-
- **Setup**: Get API key and project ID from [IBM Cloud](https://cloud.ibm.com/)
|
101
|
-
|
102
|
-
### Google
|
103
|
-
|
104
|
-
- **Models**: gemini-2.5-flash, gemini-2.5-pro, gemini-2.5-flash-lite-preview-06-17
|
105
|
-
- **Setup**: Get API key from [Google AI Studio](https://makersuite.google.com/)
|
106
|
-
|
107
|
-
## Advanced Features
|
108
|
-
|
109
|
-
### Tool Usage
|
110
|
-
|
111
|
-
Janito includes powerful built-in tools for:
|
112
|
-
|
113
|
-
- File operations (read, write, search)
|
114
|
-
- Code execution
|
115
|
-
- Web scraping
|
116
|
-
- System commands
|
117
|
-
- And more...
|
118
|
-
|
119
|
-
### Profiles
|
120
|
-
Use predefined system prompts:
|
121
|
-
```bash
|
122
|
-
janito --developer "Create a REST API" # Same as --profile developer
|
123
|
-
janito --market "Analyze market trends" # Same as --profile market-analyst
|
124
|
-
```
|
125
|
-
|
126
|
-
### Environment Variables
|
127
|
-
You can also configure via environment variables:
|
128
|
-
|
129
|
-
**Moonshot:**
|
130
|
-
```bash
|
131
|
-
export MOONSHOT_API_KEY=your_key_here
|
132
|
-
export JANITO_PROVIDER=moonshot
|
133
|
-
export JANITO_MODEL=kimi-k1-8k
|
134
|
-
```
|
135
|
-
|
136
|
-
**OpenAI:**
|
137
|
-
```bash
|
138
|
-
export OPENAI_API_KEY=your_key_here
|
139
|
-
export JANITO_PROVIDER=openai
|
140
|
-
export JANITO_MODEL=gpt-5
|
141
|
-
```
|
142
|
-
|
143
|
-
**IBM WatsonX:**
|
144
|
-
```bash
|
145
|
-
export WATSONX_API_KEY=your_key_here
|
146
|
-
export WATSONX_PROJECT_ID=your_project_id
|
147
|
-
export WATSONX_SPACE_ID=your_space_id # optional
|
148
|
-
export JANITO_PROVIDER=ibm
|
149
|
-
export JANITO_MODEL=ibm/granite-3-8b-instruct
|
150
|
-
```
|
151
|
-
|
152
|
-
**Anthropic:**
|
153
|
-
```bash
|
154
|
-
export ANTHROPIC_API_KEY=your_key_here
|
155
|
-
export JANITO_PROVIDER=anthropic
|
156
|
-
export JANITO_MODEL=claude-3-7-sonnet-20250219
|
157
|
-
```
|
158
|
-
|
159
|
-
**Google:**
|
160
|
-
```bash
|
161
|
-
export GOOGLE_API_KEY=your_key_here
|
162
|
-
export JANITO_PROVIDER=google
|
163
|
-
export JANITO_MODEL=gemini-2.5-flash
|
164
|
-
```
|
165
|
-
|
166
|
-
## Examples
|
167
|
-
|
168
|
-
### Code Generation
|
169
|
-
```bash
|
170
|
-
janito "Create a Python FastAPI application with user authentication"
|
171
|
-
```
|
172
|
-
|
173
|
-
### File Analysis
|
174
|
-
```bash
|
175
|
-
janito "Analyze the performance bottlenecks in my_app.py"
|
176
|
-
```
|
177
|
-
|
178
|
-
### Data Processing
|
179
|
-
```bash
|
180
|
-
janito "Process this CSV file and generate summary statistics"
|
181
|
-
```
|
182
|
-
|
183
|
-
### Web Development
|
184
|
-
```bash
|
185
|
-
janito "Create a responsive landing page with Tailwind CSS"
|
186
|
-
```
|
187
|
-
|
188
|
-
## Support
|
189
|
-
|
190
|
-
- **Documentation**: Check individual provider directories for detailed setup guides
|
191
|
-
- **Issues**: Report bugs and feature requests on GitHub
|
1
|
+
# Janito CLI
|
2
|
+
|
3
|
+
A powerful command-line tool for running LLM-powered workflows with built-in tool execution capabilities.
|
4
|
+
|
5
|
+
## Quick Start
|
6
|
+
|
7
|
+
### Installation
|
8
|
+
|
9
|
+
```bash
|
10
|
+
uv pip install janito
|
11
|
+
```
|
12
|
+
|
13
|
+
### First-Time Setup
|
14
|
+
|
15
|
+
1. **Get your API key**: Sign up at [Moonshot AI](https://platform.moonshot.cn/) and get your API key
|
16
|
+
2. **Set your API key**:
|
17
|
+
```bash
|
18
|
+
janito --set-api-key YOUR_MOONSHOT_API_KEY -p moonshot
|
19
|
+
```
|
20
|
+
|
21
|
+
### Basic Usage
|
22
|
+
|
23
|
+
**Moonshot (Recommended - Default Provider)**
|
24
|
+
```bash
|
25
|
+
# Using the default provider (moonshot) and model
|
26
|
+
janito "Create a Python script that reads a CSV file"
|
27
|
+
|
28
|
+
# Using a specific Moonshot model
|
29
|
+
janito -m kimi-k1-8k "Explain quantum computing"
|
30
|
+
```
|
31
|
+
|
32
|
+
**Other Providers**
|
33
|
+
```bash
|
34
|
+
# OpenAI
|
35
|
+
janito -p openai -m gpt-4 "Write a React component"
|
36
|
+
|
37
|
+
# Anthropic
|
38
|
+
janito -p anthropic -m claude-sonnet-4-5-20250929 "Analyze this code"
|
39
|
+
|
40
|
+
# Google
|
41
|
+
janito -p google -m gemini-2.0-flash-exp "Generate unit tests"
|
42
|
+
```
|
43
|
+
|
44
|
+
### Interactive Chat Mode
|
45
|
+
|
46
|
+
Start an interactive session (default mode):
|
47
|
+
```bash
|
48
|
+
janito
|
49
|
+
```
|
50
|
+
|
51
|
+
Or explicitly:
|
52
|
+
```bash
|
53
|
+
janito --chat
|
54
|
+
```
|
55
|
+
|
56
|
+
In chat mode, you can:
|
57
|
+
|
58
|
+
- Have multi-turn conversations
|
59
|
+
- Execute code and commands
|
60
|
+
- Read and write files
|
61
|
+
- Use built-in tools
|
62
|
+
|
63
|
+
### Available Commands
|
64
|
+
|
65
|
+
- `janito --list-providers` - List all supported providers
|
66
|
+
- `janito --list-models` - List all available models
|
67
|
+
- `janito --list-tools` - List available tools
|
68
|
+
- `janito --show-config` - Show current configuration
|
69
|
+
|
70
|
+
### Configuration
|
71
|
+
|
72
|
+
Set default provider and model:
|
73
|
+
```bash
|
74
|
+
janito --set provider=moonshot
|
75
|
+
janito --set model=kimi-k1-8k
|
76
|
+
```
|
77
|
+
|
78
|
+
## Providers
|
79
|
+
|
80
|
+
### Moonshot (Recommended)
|
81
|
+
|
82
|
+
- **Models**: kimi-k1-8k, kimi-k1-32k, kimi-k1-128k, kimi-k2-turbo-preview
|
83
|
+
- **Strengths**: Excellent Chinese/English support, competitive pricing, fast responses
|
84
|
+
- **Setup**: Get API key from [Moonshot AI Platform](https://platform.moonshot.cn/)
|
85
|
+
|
86
|
+
### OpenAI
|
87
|
+
|
88
|
+
- **Models**: gpt-5, gpt-4.1, gpt-4o, gpt-4-turbo, gpt-3.5-turbo
|
89
|
+
- **Setup**: Get API key from [OpenAI Platform](https://platform.openai.com/)
|
90
|
+
|
91
|
+
### Anthropic
|
92
|
+
|
93
|
+
- **Models**: claude-3-7-sonnet-20250219, claude-3-5-sonnet-20241022, claude-3-opus-20250514
|
94
|
+
- **Setup**: Get API key from [Anthropic Console](https://console.anthropic.com/)
|
95
|
+
|
96
|
+
### IBM WatsonX
|
97
|
+
|
98
|
+
- **Models**: ibm/granite-3-8b-instruct, ibm/granite-3-2b-instruct, meta-llama/llama-3-1-8b-instruct, meta-llama/llama-3-1-70b-instruct, mistralai/mistral-large
|
99
|
+
- **Strengths**: Enterprise-grade AI, IBM Granite models, hosted Llama and Mistral models
|
100
|
+
- **Setup**: Get API key and project ID from [IBM Cloud](https://cloud.ibm.com/)
|
101
|
+
|
102
|
+
### Google
|
103
|
+
|
104
|
+
- **Models**: gemini-2.5-flash, gemini-2.5-pro, gemini-2.5-flash-lite-preview-06-17
|
105
|
+
- **Setup**: Get API key from [Google AI Studio](https://makersuite.google.com/)
|
106
|
+
|
107
|
+
## Advanced Features
|
108
|
+
|
109
|
+
### Tool Usage
|
110
|
+
|
111
|
+
Janito includes powerful built-in tools for:
|
112
|
+
|
113
|
+
- File operations (read, write, search)
|
114
|
+
- Code execution
|
115
|
+
- Web scraping
|
116
|
+
- System commands
|
117
|
+
- And more...
|
118
|
+
|
119
|
+
### Profiles
|
120
|
+
Use predefined system prompts:
|
121
|
+
```bash
|
122
|
+
janito --developer "Create a REST API" # Same as --profile developer
|
123
|
+
janito --market "Analyze market trends" # Same as --profile market-analyst
|
124
|
+
```
|
125
|
+
|
126
|
+
### Environment Variables
|
127
|
+
You can also configure via environment variables:
|
128
|
+
|
129
|
+
**Moonshot:**
|
130
|
+
```bash
|
131
|
+
export MOONSHOT_API_KEY=your_key_here
|
132
|
+
export JANITO_PROVIDER=moonshot
|
133
|
+
export JANITO_MODEL=kimi-k1-8k
|
134
|
+
```
|
135
|
+
|
136
|
+
**OpenAI:**
|
137
|
+
```bash
|
138
|
+
export OPENAI_API_KEY=your_key_here
|
139
|
+
export JANITO_PROVIDER=openai
|
140
|
+
export JANITO_MODEL=gpt-5
|
141
|
+
```
|
142
|
+
|
143
|
+
**IBM WatsonX:**
|
144
|
+
```bash
|
145
|
+
export WATSONX_API_KEY=your_key_here
|
146
|
+
export WATSONX_PROJECT_ID=your_project_id
|
147
|
+
export WATSONX_SPACE_ID=your_space_id # optional
|
148
|
+
export JANITO_PROVIDER=ibm
|
149
|
+
export JANITO_MODEL=ibm/granite-3-8b-instruct
|
150
|
+
```
|
151
|
+
|
152
|
+
**Anthropic:**
|
153
|
+
```bash
|
154
|
+
export ANTHROPIC_API_KEY=your_key_here
|
155
|
+
export JANITO_PROVIDER=anthropic
|
156
|
+
export JANITO_MODEL=claude-3-7-sonnet-20250219
|
157
|
+
```
|
158
|
+
|
159
|
+
**Google:**
|
160
|
+
```bash
|
161
|
+
export GOOGLE_API_KEY=your_key_here
|
162
|
+
export JANITO_PROVIDER=google
|
163
|
+
export JANITO_MODEL=gemini-2.5-flash
|
164
|
+
```
|
165
|
+
|
166
|
+
## Examples
|
167
|
+
|
168
|
+
### Code Generation
|
169
|
+
```bash
|
170
|
+
janito "Create a Python FastAPI application with user authentication"
|
171
|
+
```
|
172
|
+
|
173
|
+
### File Analysis
|
174
|
+
```bash
|
175
|
+
janito "Analyze the performance bottlenecks in my_app.py"
|
176
|
+
```
|
177
|
+
|
178
|
+
### Data Processing
|
179
|
+
```bash
|
180
|
+
janito "Process this CSV file and generate summary statistics"
|
181
|
+
```
|
182
|
+
|
183
|
+
### Web Development
|
184
|
+
```bash
|
185
|
+
janito "Create a responsive landing page with Tailwind CSS"
|
186
|
+
```
|
187
|
+
|
188
|
+
## Support
|
189
|
+
|
190
|
+
- **Documentation**: Check individual provider directories for detailed setup guides
|
191
|
+
- **Issues**: Report bugs and feature requests on GitHub
|
192
192
|
- **Discord**: Join our community for help and discussions
|
@@ -1,6 +1,18 @@
|
|
1
1
|
from janito.llm.model import LLMModelInfo
|
2
2
|
|
3
3
|
MODEL_SPECS = {
|
4
|
+
"claude-sonnet-4-5-20250929": LLMModelInfo(
|
5
|
+
name="claude-sonnet-4-5-20250929",
|
6
|
+
max_response=64000,
|
7
|
+
default_temp=0.7,
|
8
|
+
driver="OpenAIModelDriver",
|
9
|
+
),
|
10
|
+
"claude-opus-4-1-20250805": LLMModelInfo(
|
11
|
+
name="claude-opus-4-1-20250805",
|
12
|
+
max_response=32000,
|
13
|
+
default_temp=0.7,
|
14
|
+
driver="OpenAIModelDriver",
|
15
|
+
),
|
4
16
|
"claude-opus-4-20250514": LLMModelInfo(
|
5
17
|
name="claude-opus-4-20250514",
|
6
18
|
max_response=32000,
|
@@ -1,72 +1,76 @@
|
|
1
|
-
from janito.llm.provider import LLMProvider
|
2
|
-
from janito.llm.model import LLMModelInfo
|
3
|
-
from janito.llm.auth import LLMAuthManager
|
4
|
-
from janito.llm.driver_config import LLMDriverConfig
|
5
|
-
from janito.tools import get_local_tools_adapter
|
6
|
-
from janito.providers.registry import LLMProviderRegistry
|
7
|
-
from janito.providers.anthropic.model_info import MODEL_SPECS
|
8
|
-
from janito.drivers.openai.driver import OpenAIModelDriver
|
9
|
-
|
10
|
-
|
11
|
-
class AnthropicProvider(LLMProvider):
|
12
|
-
"""Anthropic LLM Provider implementation."""
|
13
|
-
|
14
|
-
name = "anthropic"
|
15
|
-
NAME = "anthropic" # For backward compatibility
|
16
|
-
MAINTAINER = "Alberto Minetti <alberto.minetti@gmail.com>"
|
17
|
-
MODEL_SPECS = MODEL_SPECS
|
18
|
-
DEFAULT_MODEL = "claude-
|
19
|
-
available = OpenAIModelDriver.available
|
20
|
-
unavailable_reason = OpenAIModelDriver.unavailable_reason
|
21
|
-
|
22
|
-
def __init__(
|
23
|
-
self, auth_manager: LLMAuthManager = None, config: LLMDriverConfig = None
|
24
|
-
):
|
25
|
-
self._tools_adapter = get_local_tools_adapter()
|
26
|
-
|
27
|
-
# Call parent constructor to initialize base functionality
|
28
|
-
super().__init__(
|
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
|
-
|
1
|
+
from janito.llm.provider import LLMProvider
|
2
|
+
from janito.llm.model import LLMModelInfo
|
3
|
+
from janito.llm.auth import LLMAuthManager
|
4
|
+
from janito.llm.driver_config import LLMDriverConfig
|
5
|
+
from janito.tools import get_local_tools_adapter
|
6
|
+
from janito.providers.registry import LLMProviderRegistry
|
7
|
+
from janito.providers.anthropic.model_info import MODEL_SPECS
|
8
|
+
from janito.drivers.openai.driver import OpenAIModelDriver
|
9
|
+
|
10
|
+
|
11
|
+
class AnthropicProvider(LLMProvider):
|
12
|
+
"""Anthropic LLM Provider implementation."""
|
13
|
+
|
14
|
+
name = "anthropic"
|
15
|
+
NAME = "anthropic" # For backward compatibility
|
16
|
+
MAINTAINER = "Alberto Minetti <alberto.minetti@gmail.com>"
|
17
|
+
MODEL_SPECS = MODEL_SPECS
|
18
|
+
DEFAULT_MODEL = "claude-sonnet-4-5-20250929"
|
19
|
+
available = OpenAIModelDriver.available
|
20
|
+
unavailable_reason = OpenAIModelDriver.unavailable_reason
|
21
|
+
|
22
|
+
def __init__(
|
23
|
+
self, auth_manager: LLMAuthManager = None, config: LLMDriverConfig = None
|
24
|
+
):
|
25
|
+
self._tools_adapter = get_local_tools_adapter()
|
26
|
+
|
27
|
+
# Call parent constructor to initialize base functionality
|
28
|
+
super().__init__(
|
29
|
+
auth_manager=auth_manager, config=config, tools_adapter=self._tools_adapter
|
30
|
+
)
|
31
|
+
|
32
|
+
# Initialize API key and configure Anthropic-specific settings
|
33
|
+
if self.available:
|
34
|
+
self._initialize_anthropic_config()
|
35
|
+
|
36
|
+
def _initialize_anthropic_config(self):
|
37
|
+
"""Initialize Anthropic-specific configuration."""
|
38
|
+
# Initialize API key
|
39
|
+
api_key = self.auth_manager.get_credentials(self.name)
|
40
|
+
if not api_key:
|
41
|
+
from janito.llm.auth_utils import handle_missing_api_key
|
42
|
+
|
43
|
+
handle_missing_api_key(self.name, "ANTHROPIC_API_KEY")
|
44
|
+
|
45
|
+
# Set API key in config
|
46
|
+
if not self.config.api_key:
|
47
|
+
self.config.api_key = api_key
|
48
|
+
|
49
|
+
# Set the Anthropic OpenAI-compatible API endpoint
|
50
|
+
self.config.base_url = "https://api.anthropic.com/v1/"
|
51
|
+
|
52
|
+
def create_driver(self) -> OpenAIModelDriver:
|
53
|
+
"""
|
54
|
+
Create and return a new OpenAIModelDriver instance for Anthropic.
|
55
|
+
|
56
|
+
Returns:
|
57
|
+
A new OpenAIModelDriver instance configured for Anthropic API
|
58
|
+
"""
|
59
|
+
if not self.available:
|
60
|
+
raise ImportError(
|
61
|
+
f"AnthropicProvider unavailable: {self.unavailable_reason}"
|
62
|
+
)
|
63
|
+
|
64
|
+
driver = OpenAIModelDriver(
|
65
|
+
tools_adapter=self.tools_adapter, provider_name=self.name
|
66
|
+
)
|
67
|
+
driver.config = self.config
|
68
|
+
return driver
|
69
|
+
|
70
|
+
def execute_tool(self, tool_name: str, event_bus, *args, **kwargs):
|
71
|
+
"""Execute a tool by name."""
|
72
|
+
self.tools_adapter.event_bus = event_bus
|
73
|
+
return self.tools_adapter.execute_by_name(tool_name, *args, **kwargs)
|
74
|
+
|
75
|
+
|
76
|
+
LLMProviderRegistry.register(AnthropicProvider.NAME, AnthropicProvider)
|
@@ -1,62 +1,62 @@
|
|
1
|
-
Metadata-Version: 2.4
|
2
|
-
Name: janito
|
3
|
-
Version: 3.
|
4
|
-
Summary: A new Python package called janito.
|
5
|
-
Author-email: João Pinto <janito@ikignosis.org>
|
6
|
-
Project-URL: Homepage, https://github.com/ikignosis/janito
|
7
|
-
Requires-Python: >=3.8
|
8
|
-
Description-Content-Type: text/markdown
|
9
|
-
License-File: LICENSE
|
10
|
-
Requires-Dist: attrs==25.3.0
|
11
|
-
Requires-Dist: rich==14.0.0
|
12
|
-
Requires-Dist: pathspec==0.12.1
|
13
|
-
Requires-Dist: setuptools>=61.0
|
14
|
-
Requires-Dist: pyyaml>=6.0
|
15
|
-
Requires-Dist: jinja2>=3.0.0
|
16
|
-
Requires-Dist: prompt_toolkit>=3.0.51
|
17
|
-
Requires-Dist: lxml>=5.4.0
|
18
|
-
Requires-Dist: requests>=2.32.4
|
19
|
-
Requires-Dist: bs4>=0.0.2
|
20
|
-
Requires-Dist: questionary>=2.0.1
|
21
|
-
Requires-Dist: openai>=1.68.0
|
22
|
-
Requires-Dist: Pillow>=10.0.0
|
23
|
-
Provides-Extra: dev
|
24
|
-
Requires-Dist: pytest; extra == "dev"
|
25
|
-
Requires-Dist: pre-commit; extra == "dev"
|
26
|
-
Requires-Dist: ruff==0.11.9; extra == "dev"
|
27
|
-
Requires-Dist: detect-secrets==1.4.0; extra == "dev"
|
28
|
-
Requires-Dist: codespell==2.4.1; extra == "dev"
|
29
|
-
Requires-Dist: black; extra == "dev"
|
30
|
-
Requires-Dist: questionary>=2.0.1; extra == "dev"
|
31
|
-
Requires-Dist: setuptools_scm>=8.0; extra == "dev"
|
32
|
-
Requires-Dist: mkdocs; extra == "dev"
|
33
|
-
Requires-Dist: mkdocs-material; extra == "dev"
|
34
|
-
Requires-Dist: mkdocs-material-extensions; extra == "dev"
|
35
|
-
Dynamic: license-file
|
36
|
-
|
37
|
-
# Janito
|
38
|
-
|
39
|
-
```bash
|
40
|
-
$ janito --help
|
41
|
-
Usage: janito <command>
|
42
|
-
|
43
|
-
A command-line tool for managing your projects.
|
44
|
-
|
45
|
-
Run "janito <command> --help" for more information on a command.
|
46
|
-
```
|
47
|
-
|
48
|
-
## Setup
|
49
|
-
|
50
|
-
```bash
|
51
|
-
# Install using pip
|
52
|
-
pip install janito
|
53
|
-
|
54
|
-
# Or install from source
|
55
|
-
git clone https://github.com/yourusername/janito.git
|
56
|
-
cd janito
|
57
|
-
pip install -e .
|
58
|
-
```
|
59
|
-
|
60
|
-
## Getting started
|
61
|
-
|
62
|
-
* Run `janito --help` to get a list of all available commands
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: janito
|
3
|
+
Version: 3.16.1
|
4
|
+
Summary: A new Python package called janito.
|
5
|
+
Author-email: João Pinto <janito@ikignosis.org>
|
6
|
+
Project-URL: Homepage, https://github.com/ikignosis/janito
|
7
|
+
Requires-Python: >=3.8
|
8
|
+
Description-Content-Type: text/markdown
|
9
|
+
License-File: LICENSE
|
10
|
+
Requires-Dist: attrs==25.3.0
|
11
|
+
Requires-Dist: rich==14.0.0
|
12
|
+
Requires-Dist: pathspec==0.12.1
|
13
|
+
Requires-Dist: setuptools>=61.0
|
14
|
+
Requires-Dist: pyyaml>=6.0
|
15
|
+
Requires-Dist: jinja2>=3.0.0
|
16
|
+
Requires-Dist: prompt_toolkit>=3.0.51
|
17
|
+
Requires-Dist: lxml>=5.4.0
|
18
|
+
Requires-Dist: requests>=2.32.4
|
19
|
+
Requires-Dist: bs4>=0.0.2
|
20
|
+
Requires-Dist: questionary>=2.0.1
|
21
|
+
Requires-Dist: openai>=1.68.0
|
22
|
+
Requires-Dist: Pillow>=10.0.0
|
23
|
+
Provides-Extra: dev
|
24
|
+
Requires-Dist: pytest; extra == "dev"
|
25
|
+
Requires-Dist: pre-commit; extra == "dev"
|
26
|
+
Requires-Dist: ruff==0.11.9; extra == "dev"
|
27
|
+
Requires-Dist: detect-secrets==1.4.0; extra == "dev"
|
28
|
+
Requires-Dist: codespell==2.4.1; extra == "dev"
|
29
|
+
Requires-Dist: black; extra == "dev"
|
30
|
+
Requires-Dist: questionary>=2.0.1; extra == "dev"
|
31
|
+
Requires-Dist: setuptools_scm>=8.0; extra == "dev"
|
32
|
+
Requires-Dist: mkdocs; extra == "dev"
|
33
|
+
Requires-Dist: mkdocs-material; extra == "dev"
|
34
|
+
Requires-Dist: mkdocs-material-extensions; extra == "dev"
|
35
|
+
Dynamic: license-file
|
36
|
+
|
37
|
+
# Janito
|
38
|
+
|
39
|
+
```bash
|
40
|
+
$ janito --help
|
41
|
+
Usage: janito <command>
|
42
|
+
|
43
|
+
A command-line tool for managing your projects.
|
44
|
+
|
45
|
+
Run "janito <command> --help" for more information on a command.
|
46
|
+
```
|
47
|
+
|
48
|
+
## Setup
|
49
|
+
|
50
|
+
```bash
|
51
|
+
# Install using pip
|
52
|
+
pip install janito
|
53
|
+
|
54
|
+
# Or install from source
|
55
|
+
git clone https://github.com/yourusername/janito.git
|
56
|
+
cd janito
|
57
|
+
pip install -e .
|
58
|
+
```
|
59
|
+
|
60
|
+
## Getting started
|
61
|
+
|
62
|
+
* Run `janito --help` to get a list of all available commands
|
@@ -1,4 +1,4 @@
|
|
1
|
-
janito/README.md,sha256=
|
1
|
+
janito/README.md,sha256=Wc1XHEsU9KjEW5sYbzJfRrGPd6PxPcv7QaL9Gzzj6gk,4740
|
2
2
|
janito/__init__.py,sha256=a0pFui3A_AfWJiUfg93yE-Vf4868bqG3y9yg2fkTIuY,244
|
3
3
|
janito/__main__.py,sha256=lPQ8kAyYfyeS1KopmJ8EVY5g1YswlIqCS615mM_B_rM,70
|
4
4
|
janito/_version.py,sha256=nsX_0pSnMlBdPtQfo7-jSpHdr6c64NQci57iXCaTf2A,2292
|
@@ -208,8 +208,8 @@ janito/providers/registry.py,sha256=Ygwv9eVrTXOKhv0EKxSWQXO5WMHvajWE2Q_Lc3p7dKo,
|
|
208
208
|
janito/providers/alibaba/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
209
209
|
janito/providers/alibaba/model_info.py,sha256=cvw4s0YQMB6cbFkIsiu5rMCsWVnko2Cfb5bAtF--s2I,5510
|
210
210
|
janito/providers/alibaba/provider.py,sha256=YgGDpo19dAjmX1WlhosbUjCWGwHUeAPeT6xl7zDg3yI,3474
|
211
|
-
janito/providers/anthropic/model_info.py,sha256=
|
212
|
-
janito/providers/anthropic/provider.py,sha256=
|
211
|
+
janito/providers/anthropic/model_info.py,sha256=ppDB5LRdEg6NG9Q5-egMpUg-8pky21WufT0n3YlEAZo,1590
|
212
|
+
janito/providers/anthropic/provider.py,sha256=BeeVq4Q7obekANqec1Hqyrup-3YeHerRbbDf1I2D0hA,2874
|
213
213
|
janito/providers/azure_openai/model_info.py,sha256=TMSqEpQROIIYUGAyulYJ5xGhj7CbLoaKL_JXeLbXaG0,689
|
214
214
|
janito/providers/azure_openai/provider.py,sha256=7N3tOKrPujn9sYPcB3lNBkIVcFj-ql7_awdg462QDMQ,5144
|
215
215
|
janito/providers/cerebras/__init__.py,sha256=w7VvVDG-AmW7axvt80TSM_HvAM7MjtH_2yM2wzy-Wok,28
|
@@ -266,9 +266,9 @@ janito/tools/tool_utils.py,sha256=alPm9DvtXSw_zPRKvP5GjbebPRf_nfvmWk2TNlL5Cws,12
|
|
266
266
|
janito/tools/tools_adapter.py,sha256=3Phjw34mOqG0KvXzQpZKIWigfSgZWRvdYuSdvV7Dj4M,21965
|
267
267
|
janito/tools/tools_schema.py,sha256=bv7jQfjh6yCbiRNPJykmbCTBgZZrOV2z_WqWQOjeY5o,4324
|
268
268
|
janito/tools/url_whitelist.py,sha256=0CPLkHTp5HgnwgjxwgXnJmwPeZQ30q4j3YjW59hiUUE,4295
|
269
|
-
janito-3.
|
270
|
-
janito-3.
|
271
|
-
janito-3.
|
272
|
-
janito-3.
|
273
|
-
janito-3.
|
274
|
-
janito-3.
|
269
|
+
janito-3.16.1.dist-info/licenses/LICENSE,sha256=dXV4fOF2ZErugtN8l_Nrj5tsRTYgtjE3cgiya0UfBio,11356
|
270
|
+
janito-3.16.1.dist-info/METADATA,sha256=L9KSwTseQzNHWmIUb1wwR-vTFZ9ZPFvUOdI-0bmOAOI,1722
|
271
|
+
janito-3.16.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
272
|
+
janito-3.16.1.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
|
273
|
+
janito-3.16.1.dist-info/top_level.txt,sha256=m0NaVCq0-ivxbazE2-ND0EA9Hmuijj_OGkmCbnBcCig,7
|
274
|
+
janito-3.16.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|