jarvis-ai-assistant 0.1.14__tar.gz → 0.1.17__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.
Potentially problematic release.
This version of jarvis-ai-assistant might be problematic. Click here for more details.
- jarvis_ai_assistant-0.1.17/LICENSE +21 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/PKG-INFO +23 -1
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/pyproject.toml +1 -1
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/setup.py +1 -1
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__init__.py +1 -1
- jarvis_ai_assistant-0.1.17/src/jarvis/__pycache__/__init__.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__pycache__/agent.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__pycache__/main.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/agent.py +65 -54
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/main.py +5 -2
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/models/__pycache__/kimi.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/models/kimi.py +24 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/PKG-INFO +23 -1
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/SOURCES.txt +1 -0
- jarvis_ai_assistant-0.1.14/src/jarvis/__pycache__/__init__.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/MANIFEST.in +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/README.md +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/setup.cfg +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__pycache__/models.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__pycache__/tools.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__pycache__/utils.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/__pycache__/zte_llm.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/models/__init__.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/models/__pycache__/__init__.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/models/__pycache__/base.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/models/base.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__init__.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/__init__.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/base.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/bing_search.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/file_ops.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/python_script.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/rag.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/search.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/shell.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/sub_agent.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/user_confirmation.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/user_input.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/user_interaction.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/__pycache__/webpage.cpython-313.pyc +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/base.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/file_ops.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/tools/shell.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis/utils.py +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/dependency_links.txt +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/entry_points.txt +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/requires.txt +0 -0
- {jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 skyfire
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -1,10 +1,31 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: jarvis-ai-assistant
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.17
|
|
4
4
|
Summary: Jarvis: An AI assistant that uses tools to interact with the system
|
|
5
5
|
Home-page: https://github.com/skyfireitdiy/Jarvis
|
|
6
6
|
Author: skyfire
|
|
7
7
|
Author-email: Your Name <your.email@example.com>
|
|
8
|
+
License: MIT License
|
|
9
|
+
|
|
10
|
+
Copyright (c) 2025 skyfire
|
|
11
|
+
|
|
12
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
13
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
14
|
+
in the Software without restriction, including without limitation the rights
|
|
15
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
16
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
17
|
+
furnished to do so, subject to the following conditions:
|
|
18
|
+
|
|
19
|
+
The above copyright notice and this permission notice shall be included in all
|
|
20
|
+
copies or substantial portions of the Software.
|
|
21
|
+
|
|
22
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
23
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
24
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
25
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
26
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
27
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
28
|
+
SOFTWARE.
|
|
8
29
|
Project-URL: Homepage, https://github.com/skyfireitdiy/Jarvis
|
|
9
30
|
Keywords: jarvis,ai,assistant,tools,automation
|
|
10
31
|
Classifier: License :: OSI Approved :: MIT License
|
|
@@ -16,6 +37,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
16
37
|
Classifier: Programming Language :: Python :: 3.11
|
|
17
38
|
Requires-Python: >=3.8
|
|
18
39
|
Description-Content-Type: text/markdown
|
|
40
|
+
License-File: LICENSE
|
|
19
41
|
Requires-Dist: requests>=2.25.1
|
|
20
42
|
Requires-Dist: pyyaml>=5.1
|
|
21
43
|
Requires-Dist: colorama>=0.4.6
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "jarvis-ai-assistant"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.17"
|
|
8
8
|
description = "Jarvis: An AI assistant that uses tools to interact with the system"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [{ name = "Your Name", email = "your.email@example.com" }]
|
|
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
|
|
|
2
2
|
|
|
3
3
|
setup(
|
|
4
4
|
name="jarvis-ai-assistant",
|
|
5
|
-
version="0.1.
|
|
5
|
+
version="0.1.17",
|
|
6
6
|
author="skyfire",
|
|
7
7
|
author_email="skyfireitdiy@hotmail.com",
|
|
8
8
|
description="An AI assistant that uses various tools to interact with the system",
|
|
Binary file
|
|
Binary file
|
|
@@ -77,31 +77,33 @@ class Agent:
|
|
|
77
77
|
except Exception as e:
|
|
78
78
|
raise Exception(f"{self.name}: 模型调用失败: {str(e)}")
|
|
79
79
|
|
|
80
|
-
def run(self, user_input: str, file_list: Optional[List[str]] = None):
|
|
80
|
+
def run(self, user_input: str, file_list: Optional[List[str]] = None, keep_history: bool = False):
|
|
81
81
|
"""处理用户输入并返回响应,返回任务总结报告
|
|
82
82
|
|
|
83
83
|
Args:
|
|
84
84
|
user_input: 用户输入的任务描述
|
|
85
85
|
file_list: 可选的文件列表,默认为None
|
|
86
|
+
keep_history: 是否保留对话历史,默认为False
|
|
86
87
|
|
|
87
88
|
Returns:
|
|
88
89
|
str: 任务总结报告
|
|
89
90
|
"""
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
91
|
+
try:
|
|
92
|
+
self.clear_history()
|
|
93
|
+
|
|
94
|
+
if file_list:
|
|
95
|
+
self.model.upload_files(file_list)
|
|
96
|
+
|
|
97
|
+
# 显示任务开始
|
|
98
|
+
PrettyOutput.section(f"开始新任务: {self.name}", OutputType.PLANNING)
|
|
97
99
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
100
|
+
tools_prompt = "可用工具:\n"
|
|
101
|
+
for tool in self.tool_registry.get_all_tools():
|
|
102
|
+
tools_prompt += f"- 名称: {tool['name']}\n"
|
|
103
|
+
tools_prompt += f" 描述: {tool['description']}\n"
|
|
104
|
+
tools_prompt += f" 参数: {tool['parameters']}\n"
|
|
103
105
|
|
|
104
|
-
|
|
106
|
+
self.prompt = f"""你是 {self.name},一个严格遵循 ReAct 框架进行逐步推理和行动的 AI 助手。
|
|
105
107
|
|
|
106
108
|
{tools_prompt}
|
|
107
109
|
|
|
@@ -194,53 +196,62 @@ arguments:
|
|
|
194
196
|
任务:
|
|
195
197
|
{user_input}
|
|
196
198
|
"""
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
while True:
|
|
200
|
-
try:
|
|
201
|
-
# 显示思考状态
|
|
202
|
-
PrettyOutput.print("分析任务...", OutputType.PROGRESS)
|
|
203
|
-
|
|
204
|
-
current_response = self._call_model(self.prompt)
|
|
205
199
|
|
|
200
|
+
while True:
|
|
206
201
|
try:
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
if len(result) > 0:
|
|
202
|
+
# 显示思考状态
|
|
203
|
+
PrettyOutput.print("分析任务...", OutputType.PROGRESS)
|
|
204
|
+
|
|
205
|
+
current_response = self._call_model(self.prompt)
|
|
206
|
+
|
|
214
207
|
try:
|
|
215
|
-
|
|
216
|
-
PrettyOutput.print("执行工具调用...", OutputType.PROGRESS)
|
|
217
|
-
tool_result = self.tool_registry.handle_tool_calls(result)
|
|
218
|
-
PrettyOutput.print(tool_result, OutputType.RESULT)
|
|
208
|
+
result = Agent.extract_tool_calls(current_response)
|
|
219
209
|
except Exception as e:
|
|
220
|
-
PrettyOutput.print(str(e), OutputType.ERROR)
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
210
|
+
PrettyOutput.print(f"工具调用错误: {str(e)}", OutputType.ERROR)
|
|
211
|
+
self.prompt = f"工具调用错误: {str(e)}"
|
|
212
|
+
continue
|
|
213
|
+
|
|
214
|
+
if len(result) > 0:
|
|
215
|
+
try:
|
|
216
|
+
# 显示工具调用
|
|
217
|
+
PrettyOutput.print("执行工具调用...", OutputType.PROGRESS)
|
|
218
|
+
tool_result = self.tool_registry.handle_tool_calls(result)
|
|
219
|
+
PrettyOutput.print(tool_result, OutputType.RESULT)
|
|
220
|
+
except Exception as e:
|
|
221
|
+
PrettyOutput.print(str(e), OutputType.ERROR)
|
|
222
|
+
tool_result = f"Tool call failed: {str(e)}"
|
|
223
|
+
|
|
224
|
+
self.prompt = tool_result
|
|
225
|
+
continue
|
|
226
|
+
|
|
227
|
+
# 获取用户输入
|
|
228
|
+
user_input = get_multiline_input(f"{self.name}: 您可以继续输入,或输入空行结束当前任务")
|
|
229
|
+
if user_input == "__interrupt__":
|
|
230
|
+
PrettyOutput.print("任务已取消", OutputType.WARNING)
|
|
231
|
+
return "Task cancelled by user"
|
|
232
|
+
if user_input:
|
|
233
|
+
self.prompt = user_input
|
|
234
|
+
continue
|
|
235
|
+
|
|
236
|
+
if not user_input:
|
|
236
237
|
PrettyOutput.section("任务完成", OutputType.SUCCESS)
|
|
237
238
|
return
|
|
238
|
-
|
|
239
239
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
240
|
+
except Exception as e:
|
|
241
|
+
PrettyOutput.print(str(e), OutputType.ERROR)
|
|
242
|
+
return f"Task failed: {str(e)}"
|
|
243
|
+
|
|
244
|
+
except Exception as e:
|
|
245
|
+
PrettyOutput.print(str(e), OutputType.ERROR)
|
|
246
|
+
return f"Task failed: {str(e)}"
|
|
247
|
+
|
|
248
|
+
finally:
|
|
249
|
+
# 只在不保留历史时删除会话
|
|
250
|
+
if not keep_history:
|
|
251
|
+
try:
|
|
252
|
+
self.model.delete_chat()
|
|
253
|
+
except Exception as e:
|
|
254
|
+
PrettyOutput.print(f"清理会话时发生错误: {str(e)}", OutputType.ERROR)
|
|
244
255
|
|
|
245
256
|
def clear_history(self):
|
|
246
257
|
"""清除对话历史,只保留系统提示"""
|
|
@@ -90,6 +90,7 @@ def main():
|
|
|
90
90
|
# Add argument parser
|
|
91
91
|
parser = argparse.ArgumentParser(description='Jarvis AI Assistant')
|
|
92
92
|
parser.add_argument('-f', '--files', nargs='*', help='List of files to process')
|
|
93
|
+
parser.add_argument('--keep-history', action='store_true', help='Keep chat history (do not delete chat session)')
|
|
93
94
|
args = parser.parse_args()
|
|
94
95
|
|
|
95
96
|
load_env_from_file()
|
|
@@ -125,6 +126,8 @@ def main():
|
|
|
125
126
|
|
|
126
127
|
# 欢迎信息
|
|
127
128
|
PrettyOutput.print(f"Jarvis 已初始化 - With Kimi", OutputType.SYSTEM)
|
|
129
|
+
if args.keep_history:
|
|
130
|
+
PrettyOutput.print("已启用历史保留模式", OutputType.INFO)
|
|
128
131
|
|
|
129
132
|
# 加载预定义任务
|
|
130
133
|
tasks = load_tasks()
|
|
@@ -132,7 +135,7 @@ def main():
|
|
|
132
135
|
selected_task = select_task(tasks)
|
|
133
136
|
if selected_task:
|
|
134
137
|
PrettyOutput.print(f"\n执行任务: {selected_task}", OutputType.INFO)
|
|
135
|
-
agent.run(selected_task, args.files)
|
|
138
|
+
agent.run(selected_task, args.files, keep_history=args.keep_history)
|
|
136
139
|
return 0
|
|
137
140
|
|
|
138
141
|
# 如果没有选择预定义任务,进入交互模式
|
|
@@ -141,7 +144,7 @@ def main():
|
|
|
141
144
|
user_input = get_multiline_input("请输入您的任务(输入空行退出):")
|
|
142
145
|
if not user_input or user_input == "__interrupt__":
|
|
143
146
|
break
|
|
144
|
-
agent.run(user_input, args.files)
|
|
147
|
+
agent.run(user_input, args.files, keep_history=args.keep_history)
|
|
145
148
|
except Exception as e:
|
|
146
149
|
PrettyOutput.print(f"错误: {str(e)}", OutputType.ERROR)
|
|
147
150
|
|
|
Binary file
|
|
@@ -246,6 +246,30 @@ class KimiModel(BaseModel):
|
|
|
246
246
|
except Exception as e:
|
|
247
247
|
raise Exception(f"Chat failed: {str(e)}")
|
|
248
248
|
|
|
249
|
+
def delete_chat(self) -> bool:
|
|
250
|
+
"""删除当前会话"""
|
|
251
|
+
if not self.chat_id:
|
|
252
|
+
return True # 如果没有会话ID,视为删除成功
|
|
253
|
+
|
|
254
|
+
url = f"https://kimi.moonshot.cn/api/chat/{self.chat_id}"
|
|
255
|
+
headers = {
|
|
256
|
+
'Authorization': self.auth_header,
|
|
257
|
+
'Content-Type': 'application/json'
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
try:
|
|
261
|
+
response = requests.delete(url, headers=headers)
|
|
262
|
+
if response.status_code == 200:
|
|
263
|
+
PrettyOutput.print("会话已删除", OutputType.SUCCESS)
|
|
264
|
+
self.reset()
|
|
265
|
+
return True
|
|
266
|
+
else:
|
|
267
|
+
PrettyOutput.print(f"删除会话失败: HTTP {response.status_code}", OutputType.ERROR)
|
|
268
|
+
return False
|
|
269
|
+
except Exception as e:
|
|
270
|
+
PrettyOutput.print(f"删除会话时发生错误: {str(e)}", OutputType.ERROR)
|
|
271
|
+
return False
|
|
272
|
+
|
|
249
273
|
def reset(self):
|
|
250
274
|
"""重置对话"""
|
|
251
275
|
self.chat_id = ""
|
{jarvis_ai_assistant-0.1.14 → jarvis_ai_assistant-0.1.17}/src/jarvis_ai_assistant.egg-info/PKG-INFO
RENAMED
|
@@ -1,10 +1,31 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: jarvis-ai-assistant
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.17
|
|
4
4
|
Summary: Jarvis: An AI assistant that uses tools to interact with the system
|
|
5
5
|
Home-page: https://github.com/skyfireitdiy/Jarvis
|
|
6
6
|
Author: skyfire
|
|
7
7
|
Author-email: Your Name <your.email@example.com>
|
|
8
|
+
License: MIT License
|
|
9
|
+
|
|
10
|
+
Copyright (c) 2025 skyfire
|
|
11
|
+
|
|
12
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
13
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
14
|
+
in the Software without restriction, including without limitation the rights
|
|
15
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
16
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
17
|
+
furnished to do so, subject to the following conditions:
|
|
18
|
+
|
|
19
|
+
The above copyright notice and this permission notice shall be included in all
|
|
20
|
+
copies or substantial portions of the Software.
|
|
21
|
+
|
|
22
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
23
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
24
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
25
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
26
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
27
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
28
|
+
SOFTWARE.
|
|
8
29
|
Project-URL: Homepage, https://github.com/skyfireitdiy/Jarvis
|
|
9
30
|
Keywords: jarvis,ai,assistant,tools,automation
|
|
10
31
|
Classifier: License :: OSI Approved :: MIT License
|
|
@@ -16,6 +37,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
16
37
|
Classifier: Programming Language :: Python :: 3.11
|
|
17
38
|
Requires-Python: >=3.8
|
|
18
39
|
Description-Content-Type: text/markdown
|
|
40
|
+
License-File: LICENSE
|
|
19
41
|
Requires-Dist: requests>=2.25.1
|
|
20
42
|
Requires-Dist: pyyaml>=5.1
|
|
21
43
|
Requires-Dist: colorama>=0.4.6
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|