jarvis-ai-assistant 0.1.11__tar.gz → 0.1.13__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.

Files changed (49) hide show
  1. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/PKG-INFO +88 -20
  2. jarvis_ai_assistant-0.1.13/README.md +162 -0
  3. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/pyproject.toml +1 -1
  4. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/setup.py +1 -1
  5. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/__init__.py +1 -1
  6. jarvis_ai_assistant-0.1.13/src/jarvis/__pycache__/__init__.cpython-313.pyc +0 -0
  7. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/__pycache__/agent.cpython-313.pyc +0 -0
  8. jarvis_ai_assistant-0.1.13/src/jarvis/__pycache__/main.cpython-313.pyc +0 -0
  9. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/agent.py +7 -0
  10. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/main.py +19 -1
  11. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/models/__pycache__/kimi.cpython-313.pyc +0 -0
  12. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis_ai_assistant.egg-info/PKG-INFO +88 -20
  13. jarvis_ai_assistant-0.1.11/README.md +0 -94
  14. jarvis_ai_assistant-0.1.11/src/jarvis/__pycache__/__init__.cpython-313.pyc +0 -0
  15. jarvis_ai_assistant-0.1.11/src/jarvis/__pycache__/main.cpython-313.pyc +0 -0
  16. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/MANIFEST.in +0 -0
  17. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/setup.cfg +0 -0
  18. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/__pycache__/models.cpython-313.pyc +0 -0
  19. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/__pycache__/tools.cpython-313.pyc +0 -0
  20. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/__pycache__/utils.cpython-313.pyc +0 -0
  21. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/__pycache__/zte_llm.cpython-313.pyc +0 -0
  22. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/models/__init__.py +0 -0
  23. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/models/__pycache__/__init__.cpython-313.pyc +0 -0
  24. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/models/__pycache__/base.cpython-313.pyc +0 -0
  25. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/models/base.py +0 -0
  26. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/models/kimi.py +0 -0
  27. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__init__.py +0 -0
  28. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/__init__.cpython-313.pyc +0 -0
  29. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/base.cpython-313.pyc +0 -0
  30. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/bing_search.cpython-313.pyc +0 -0
  31. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/file_ops.cpython-313.pyc +0 -0
  32. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/python_script.cpython-313.pyc +0 -0
  33. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/rag.cpython-313.pyc +0 -0
  34. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/search.cpython-313.pyc +0 -0
  35. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/shell.cpython-313.pyc +0 -0
  36. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/sub_agent.cpython-313.pyc +0 -0
  37. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/user_confirmation.cpython-313.pyc +0 -0
  38. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/user_input.cpython-313.pyc +0 -0
  39. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/user_interaction.cpython-313.pyc +0 -0
  40. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/__pycache__/webpage.cpython-313.pyc +0 -0
  41. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/base.py +0 -0
  42. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/file_ops.py +0 -0
  43. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/tools/shell.py +0 -0
  44. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis/utils.py +0 -0
  45. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis_ai_assistant.egg-info/SOURCES.txt +0 -0
  46. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis_ai_assistant.egg-info/dependency_links.txt +0 -0
  47. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis_ai_assistant.egg-info/entry_points.txt +0 -0
  48. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis_ai_assistant.egg-info/requires.txt +0 -0
  49. {jarvis_ai_assistant-0.1.11 → jarvis_ai_assistant-0.1.13}/src/jarvis_ai_assistant.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: jarvis-ai-assistant
3
- Version: 0.1.11
3
+ Version: 0.1.13
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
@@ -36,7 +36,7 @@ Dynamic: requires-python
36
36
  <img src="docs/images/jarvis-logo.png" alt="Jarvis Logo" width="200"/>
37
37
  </p>
38
38
 
39
- [![PyPI version](https://badge.fury.io/py/jarvis-ai.svg)](https://badge.fury.io/py/jarvis-ai)
39
+ [![PyPI version](https://badge.fury.io/py/jarvis-ai-assistant.svg)](https://badge.fury.io/py/jarvis-ai-assistant)
40
40
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
41
41
  [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
42
42
 
@@ -54,20 +54,59 @@ Dynamic: requires-python
54
54
 
55
55
  ## 🌟 Features
56
56
 
57
- 🤖 **Multiple AI Models**
58
- - Ollama integration (llama3.2, qwen2.5:14b)
59
- - DuckDuckGo AI search capabilities
57
+ 🤖 **AI Integration**
58
+ - Kimi AI integration with streaming responses
59
+ - Context-aware conversations
60
+ - File understanding capabilities
60
61
 
61
62
  🛠️ **Rich Tool Integration**
62
- - RAG (Retrieval-Augmented Generation)
63
- - File operations & Shell commands
64
- - Web search & content extraction
65
- - Python code execution with dependency management
63
+ - Shell command execution
64
+ - File operations (read/write/append)
65
+ - Task automation
66
+ - Predefined task support
66
67
 
67
68
  🔄 **Interactive Experience**
68
69
  - Natural language understanding
69
70
  - Context-aware responses
70
71
  - User-friendly interface
72
+ - Multi-line input support
73
+ - Colored output with progress indicators
74
+
75
+
76
+ ## ⚙️ Environment Setup
77
+
78
+ Before using Jarvis, you need to set up your environment:
79
+
80
+ 1. **API Key Configuration**
81
+
82
+ Create a `.jarvis_env` file in your home directory (`~/.jarvis_env`):
83
+
84
+ ```bash
85
+ KIMI_API_KEY=your_kimi_api_key_here
86
+ ```
87
+
88
+ To get your Kimi API key:
89
+ 1. Visit [Kimi AI Platform](https://kimi.moonshot.cn) in your browser
90
+ 2. Login to your account
91
+ 3. Open browser Developer Tools (F12 or right-click -> Inspect)
92
+ 4. Go to Network tab
93
+ 5. Make any request (e.g., send a message)
94
+ 6. Find a request to the Kimi API
95
+ 7. Look for the `Authorization` header in the request headers
96
+ 8. Copy the token value (remove the "Bearer " prefix)
97
+ 9. Use this token as your `KIMI_API_KEY` in the `.jarvis_env` file
98
+
99
+ 2. **Task Configuration (Optional)**
100
+
101
+ Create a `.jarvis` file in your working directory to define predefined tasks:
102
+
103
+ ```yaml
104
+ # .jarvis
105
+ analyze_code: Analyze the code structure and quality in the current directory
106
+ fix_bugs: Help me find and fix potential bugs in the code
107
+ optimize: Suggest optimizations for the code
108
+ document: Generate documentation for the code
109
+ ```
71
110
 
72
111
  ## 🚀 Installation
73
112
 
@@ -77,29 +116,50 @@ pip install jarvis-ai-assistant
77
116
 
78
117
  ## 💡 Usage
79
118
 
119
+ 1. **Basic Usage**
80
120
  ```bash
81
- # Quick Start
121
+ # Start Jarvis
82
122
  jarvis
83
123
 
84
- # Using Specific Model
85
- jarvis --platform ollama --model qwen2.5:14b
124
+ # Process specific files
125
+ jarvis -f file1.txt file2.py
126
+ ```
127
+
128
+ 2. **Using Predefined Tasks**
86
129
 
87
- # Custom Ollama API
88
- jarvis --platform ollama --model llama3.2 --api-base http://localhost:11434
130
+ If you have a `.jarvis` file in your working directory:
131
+ ```bash
132
+ # Jarvis will show available tasks on startup
133
+ # Select a task number or start a new conversation
89
134
  ```
90
135
 
136
+ 3. **Interactive Features**
137
+ - Multi-line input support (press Enter twice to submit)
138
+ - File understanding and analysis
139
+ - Context-aware conversations
140
+ - Tool integration for system operations
141
+
142
+ 4. **Environment Variables**
143
+ - `KIMI_API_KEY`: Your Kimi AI API key (required)
144
+ - Location: `~/.jarvis_env`
145
+ - Format: `KEY=value` (one per line)
146
+
147
+ 5. **Task Configuration**
148
+ - File: `.jarvis` in working directory
149
+ - Format: `task_name: task_description`
150
+ - Purpose: Define commonly used tasks for quick access
151
+ - Example tasks:
152
+ - Code analysis
153
+ - Bug finding
154
+ - Documentation generation
155
+ - Performance optimization
156
+
91
157
  ## 🧰 Tools
92
158
 
93
159
  | Tool | Description | Example |
94
160
  |------|-------------|---------|
95
- | 🔍 Search | Web search using DuckDuckGo | Search latest tech news |
96
- | 📚 RAG | Document querying with embeddings | Query your documentation |
97
- | 🐍 Python | Execute Python code | Run data analysis |
98
161
  | 🖥️ Shell | Execute system commands | Manage files and processes |
99
162
  | 📂 Files | Read/write operations | Handle configuration files |
100
- | 🌐 Web | Extract webpage content | Gather information |
101
- | 👤 User | Interactive input/confirmation | Get user preferences |
102
-
103
163
 
104
164
  ## 🤝 Contributing
105
165
 
@@ -115,6 +175,14 @@ Contributions are welcome! Please feel free to submit a Pull Request.
115
175
 
116
176
  This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
117
177
 
178
+ ## ⚙️ Environment Setup
179
+
180
+ Create a `.jarvis_env` file in your home directory with:
181
+
182
+ ```bash
183
+ KIMI_API_KEY=your_kimi_api_key_here
184
+ ```
185
+
118
186
  ---
119
187
 
120
188
  <div align="center">
@@ -0,0 +1,162 @@
1
+ <div align="center">
2
+
3
+ # 🤖 Jarvis AI Assistant
4
+
5
+ <p align="center">
6
+ <img src="docs/images/jarvis-logo.png" alt="Jarvis Logo" width="200"/>
7
+ </p>
8
+
9
+ [![PyPI version](https://badge.fury.io/py/jarvis-ai-assistant.svg)](https://badge.fury.io/py/jarvis-ai-assistant)
10
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
11
+ [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
12
+
13
+ *Your intelligent assistant for development and system interaction*
14
+
15
+ [Installation](#installation) •
16
+ [Features](#features) •
17
+ [Usage](#usage) •
18
+ [Tools](#tools) •
19
+ [Documentation](https://jarvis-ai.readthedocs.io/)
20
+
21
+ </div>
22
+
23
+ ---
24
+
25
+ ## 🌟 Features
26
+
27
+ 🤖 **AI Integration**
28
+ - Kimi AI integration with streaming responses
29
+ - Context-aware conversations
30
+ - File understanding capabilities
31
+
32
+ 🛠️ **Rich Tool Integration**
33
+ - Shell command execution
34
+ - File operations (read/write/append)
35
+ - Task automation
36
+ - Predefined task support
37
+
38
+ 🔄 **Interactive Experience**
39
+ - Natural language understanding
40
+ - Context-aware responses
41
+ - User-friendly interface
42
+ - Multi-line input support
43
+ - Colored output with progress indicators
44
+
45
+
46
+ ## ⚙️ Environment Setup
47
+
48
+ Before using Jarvis, you need to set up your environment:
49
+
50
+ 1. **API Key Configuration**
51
+
52
+ Create a `.jarvis_env` file in your home directory (`~/.jarvis_env`):
53
+
54
+ ```bash
55
+ KIMI_API_KEY=your_kimi_api_key_here
56
+ ```
57
+
58
+ To get your Kimi API key:
59
+ 1. Visit [Kimi AI Platform](https://kimi.moonshot.cn) in your browser
60
+ 2. Login to your account
61
+ 3. Open browser Developer Tools (F12 or right-click -> Inspect)
62
+ 4. Go to Network tab
63
+ 5. Make any request (e.g., send a message)
64
+ 6. Find a request to the Kimi API
65
+ 7. Look for the `Authorization` header in the request headers
66
+ 8. Copy the token value (remove the "Bearer " prefix)
67
+ 9. Use this token as your `KIMI_API_KEY` in the `.jarvis_env` file
68
+
69
+ 2. **Task Configuration (Optional)**
70
+
71
+ Create a `.jarvis` file in your working directory to define predefined tasks:
72
+
73
+ ```yaml
74
+ # .jarvis
75
+ analyze_code: Analyze the code structure and quality in the current directory
76
+ fix_bugs: Help me find and fix potential bugs in the code
77
+ optimize: Suggest optimizations for the code
78
+ document: Generate documentation for the code
79
+ ```
80
+
81
+ ## 🚀 Installation
82
+
83
+ ```bash
84
+ pip install jarvis-ai-assistant
85
+ ```
86
+
87
+ ## 💡 Usage
88
+
89
+ 1. **Basic Usage**
90
+ ```bash
91
+ # Start Jarvis
92
+ jarvis
93
+
94
+ # Process specific files
95
+ jarvis -f file1.txt file2.py
96
+ ```
97
+
98
+ 2. **Using Predefined Tasks**
99
+
100
+ If you have a `.jarvis` file in your working directory:
101
+ ```bash
102
+ # Jarvis will show available tasks on startup
103
+ # Select a task number or start a new conversation
104
+ ```
105
+
106
+ 3. **Interactive Features**
107
+ - Multi-line input support (press Enter twice to submit)
108
+ - File understanding and analysis
109
+ - Context-aware conversations
110
+ - Tool integration for system operations
111
+
112
+ 4. **Environment Variables**
113
+ - `KIMI_API_KEY`: Your Kimi AI API key (required)
114
+ - Location: `~/.jarvis_env`
115
+ - Format: `KEY=value` (one per line)
116
+
117
+ 5. **Task Configuration**
118
+ - File: `.jarvis` in working directory
119
+ - Format: `task_name: task_description`
120
+ - Purpose: Define commonly used tasks for quick access
121
+ - Example tasks:
122
+ - Code analysis
123
+ - Bug finding
124
+ - Documentation generation
125
+ - Performance optimization
126
+
127
+ ## 🧰 Tools
128
+
129
+ | Tool | Description | Example |
130
+ |------|-------------|---------|
131
+ | 🖥️ Shell | Execute system commands | Manage files and processes |
132
+ | 📂 Files | Read/write operations | Handle configuration files |
133
+
134
+ ## 🤝 Contributing
135
+
136
+ Contributions are welcome! Please feel free to submit a Pull Request.
137
+
138
+ 1. Fork the repository
139
+ 2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
140
+ 3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
141
+ 4. Push to the branch (`git push origin feature/AmazingFeature`)
142
+ 5. Open a Pull Request
143
+
144
+ ## 📄 License
145
+
146
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
147
+
148
+ ## ⚙️ Environment Setup
149
+
150
+ Create a `.jarvis_env` file in your home directory with:
151
+
152
+ ```bash
153
+ KIMI_API_KEY=your_kimi_api_key_here
154
+ ```
155
+
156
+ ---
157
+
158
+ <div align="center">
159
+
160
+ Made with ❤️ by [Your Name]
161
+
162
+ </div>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "jarvis-ai-assistant"
7
- version = "0.1.11"
7
+ version = "0.1.13"
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.11",
5
+ version="0.1.13",
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",
@@ -1,3 +1,3 @@
1
1
  """Jarvis AI Assistant"""
2
2
 
3
- __version__ = "0.1.11"
3
+ __version__ = "0.1.13"
@@ -105,6 +105,13 @@ class Agent:
105
105
 
106
106
  {tools_prompt}
107
107
 
108
+ 关键规则:
109
+ ‼️ 禁止创建虚假对话
110
+ ‼️ 禁止假设用户回应
111
+ ‼️ 禁止在没有实际用户输入时继续
112
+ ‼️ 只回应用户实际说的内容
113
+ ‼️ 每个动作后停止并等待
114
+
108
115
  ReAct 框架:
109
116
  1. 思考
110
117
  - 分析当前情况
@@ -82,7 +82,25 @@ def main():
82
82
  try:
83
83
  kimi_api_key = os.getenv("KIMI_API_KEY")
84
84
  if not kimi_api_key:
85
- PrettyOutput.print("Kimi API key 未设置", OutputType.ERROR)
85
+ PrettyOutput.section("环境配置缺失", OutputType.ERROR)
86
+ PrettyOutput.print("\n需要设置 KIMI_API_KEY 才能使用 Jarvis。请按以下步骤操作:", OutputType.INFO, timestamp=False)
87
+ PrettyOutput.print("\n1. 获取 Kimi API Key:", OutputType.INFO, timestamp=False)
88
+ PrettyOutput.print(" • 访问 Kimi AI 平台: https://kimi.moonshot.cn", OutputType.INFO, timestamp=False)
89
+ PrettyOutput.print(" • 登录您的账号", OutputType.INFO, timestamp=False)
90
+ PrettyOutput.print(" • 打开浏览器开发者工具 (F12 或右键 -> 检查)", OutputType.INFO, timestamp=False)
91
+ PrettyOutput.print(" • 切换到 Network 标签页", OutputType.INFO, timestamp=False)
92
+ PrettyOutput.print(" • 发送任意消息", OutputType.INFO, timestamp=False)
93
+ PrettyOutput.print(" • 在请求中找到 Authorization 头部", OutputType.INFO, timestamp=False)
94
+ PrettyOutput.print(" • 复制 token 值(去掉 'Bearer ' 前缀)", OutputType.INFO, timestamp=False)
95
+
96
+ PrettyOutput.print("\n2. 设置环境变量:", OutputType.INFO, timestamp=False)
97
+ PrettyOutput.print(" 方法 1: 创建或编辑 ~/.jarvis_env 文件:", OutputType.INFO, timestamp=False)
98
+ PrettyOutput.print(" echo 'KIMI_API_KEY=your_key_here' > ~/.jarvis_env", OutputType.CODE, timestamp=False)
99
+
100
+ PrettyOutput.print("\n 方法 2: 直接设置环境变量:", OutputType.INFO, timestamp=False)
101
+ PrettyOutput.print(" export KIMI_API_KEY=your_key_here", OutputType.CODE, timestamp=False)
102
+
103
+ PrettyOutput.print("\n设置完成后重新运行 Jarvis。", OutputType.INFO, timestamp=False)
86
104
  return 1
87
105
 
88
106
  model = KimiModel(kimi_api_key)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: jarvis-ai-assistant
3
- Version: 0.1.11
3
+ Version: 0.1.13
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
@@ -36,7 +36,7 @@ Dynamic: requires-python
36
36
  <img src="docs/images/jarvis-logo.png" alt="Jarvis Logo" width="200"/>
37
37
  </p>
38
38
 
39
- [![PyPI version](https://badge.fury.io/py/jarvis-ai.svg)](https://badge.fury.io/py/jarvis-ai)
39
+ [![PyPI version](https://badge.fury.io/py/jarvis-ai-assistant.svg)](https://badge.fury.io/py/jarvis-ai-assistant)
40
40
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
41
41
  [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
42
42
 
@@ -54,20 +54,59 @@ Dynamic: requires-python
54
54
 
55
55
  ## 🌟 Features
56
56
 
57
- 🤖 **Multiple AI Models**
58
- - Ollama integration (llama3.2, qwen2.5:14b)
59
- - DuckDuckGo AI search capabilities
57
+ 🤖 **AI Integration**
58
+ - Kimi AI integration with streaming responses
59
+ - Context-aware conversations
60
+ - File understanding capabilities
60
61
 
61
62
  🛠️ **Rich Tool Integration**
62
- - RAG (Retrieval-Augmented Generation)
63
- - File operations & Shell commands
64
- - Web search & content extraction
65
- - Python code execution with dependency management
63
+ - Shell command execution
64
+ - File operations (read/write/append)
65
+ - Task automation
66
+ - Predefined task support
66
67
 
67
68
  🔄 **Interactive Experience**
68
69
  - Natural language understanding
69
70
  - Context-aware responses
70
71
  - User-friendly interface
72
+ - Multi-line input support
73
+ - Colored output with progress indicators
74
+
75
+
76
+ ## ⚙️ Environment Setup
77
+
78
+ Before using Jarvis, you need to set up your environment:
79
+
80
+ 1. **API Key Configuration**
81
+
82
+ Create a `.jarvis_env` file in your home directory (`~/.jarvis_env`):
83
+
84
+ ```bash
85
+ KIMI_API_KEY=your_kimi_api_key_here
86
+ ```
87
+
88
+ To get your Kimi API key:
89
+ 1. Visit [Kimi AI Platform](https://kimi.moonshot.cn) in your browser
90
+ 2. Login to your account
91
+ 3. Open browser Developer Tools (F12 or right-click -> Inspect)
92
+ 4. Go to Network tab
93
+ 5. Make any request (e.g., send a message)
94
+ 6. Find a request to the Kimi API
95
+ 7. Look for the `Authorization` header in the request headers
96
+ 8. Copy the token value (remove the "Bearer " prefix)
97
+ 9. Use this token as your `KIMI_API_KEY` in the `.jarvis_env` file
98
+
99
+ 2. **Task Configuration (Optional)**
100
+
101
+ Create a `.jarvis` file in your working directory to define predefined tasks:
102
+
103
+ ```yaml
104
+ # .jarvis
105
+ analyze_code: Analyze the code structure and quality in the current directory
106
+ fix_bugs: Help me find and fix potential bugs in the code
107
+ optimize: Suggest optimizations for the code
108
+ document: Generate documentation for the code
109
+ ```
71
110
 
72
111
  ## 🚀 Installation
73
112
 
@@ -77,29 +116,50 @@ pip install jarvis-ai-assistant
77
116
 
78
117
  ## 💡 Usage
79
118
 
119
+ 1. **Basic Usage**
80
120
  ```bash
81
- # Quick Start
121
+ # Start Jarvis
82
122
  jarvis
83
123
 
84
- # Using Specific Model
85
- jarvis --platform ollama --model qwen2.5:14b
124
+ # Process specific files
125
+ jarvis -f file1.txt file2.py
126
+ ```
127
+
128
+ 2. **Using Predefined Tasks**
86
129
 
87
- # Custom Ollama API
88
- jarvis --platform ollama --model llama3.2 --api-base http://localhost:11434
130
+ If you have a `.jarvis` file in your working directory:
131
+ ```bash
132
+ # Jarvis will show available tasks on startup
133
+ # Select a task number or start a new conversation
89
134
  ```
90
135
 
136
+ 3. **Interactive Features**
137
+ - Multi-line input support (press Enter twice to submit)
138
+ - File understanding and analysis
139
+ - Context-aware conversations
140
+ - Tool integration for system operations
141
+
142
+ 4. **Environment Variables**
143
+ - `KIMI_API_KEY`: Your Kimi AI API key (required)
144
+ - Location: `~/.jarvis_env`
145
+ - Format: `KEY=value` (one per line)
146
+
147
+ 5. **Task Configuration**
148
+ - File: `.jarvis` in working directory
149
+ - Format: `task_name: task_description`
150
+ - Purpose: Define commonly used tasks for quick access
151
+ - Example tasks:
152
+ - Code analysis
153
+ - Bug finding
154
+ - Documentation generation
155
+ - Performance optimization
156
+
91
157
  ## 🧰 Tools
92
158
 
93
159
  | Tool | Description | Example |
94
160
  |------|-------------|---------|
95
- | 🔍 Search | Web search using DuckDuckGo | Search latest tech news |
96
- | 📚 RAG | Document querying with embeddings | Query your documentation |
97
- | 🐍 Python | Execute Python code | Run data analysis |
98
161
  | 🖥️ Shell | Execute system commands | Manage files and processes |
99
162
  | 📂 Files | Read/write operations | Handle configuration files |
100
- | 🌐 Web | Extract webpage content | Gather information |
101
- | 👤 User | Interactive input/confirmation | Get user preferences |
102
-
103
163
 
104
164
  ## 🤝 Contributing
105
165
 
@@ -115,6 +175,14 @@ Contributions are welcome! Please feel free to submit a Pull Request.
115
175
 
116
176
  This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
117
177
 
178
+ ## ⚙️ Environment Setup
179
+
180
+ Create a `.jarvis_env` file in your home directory with:
181
+
182
+ ```bash
183
+ KIMI_API_KEY=your_kimi_api_key_here
184
+ ```
185
+
118
186
  ---
119
187
 
120
188
  <div align="center">
@@ -1,94 +0,0 @@
1
- <div align="center">
2
-
3
- # 🤖 Jarvis AI Assistant
4
-
5
- <p align="center">
6
- <img src="docs/images/jarvis-logo.png" alt="Jarvis Logo" width="200"/>
7
- </p>
8
-
9
- [![PyPI version](https://badge.fury.io/py/jarvis-ai.svg)](https://badge.fury.io/py/jarvis-ai)
10
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
11
- [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
12
-
13
- *Your intelligent assistant for development and system interaction*
14
-
15
- [Installation](#installation) •
16
- [Features](#features) •
17
- [Usage](#usage) •
18
- [Tools](#tools) •
19
- [Documentation](https://jarvis-ai.readthedocs.io/)
20
-
21
- </div>
22
-
23
- ---
24
-
25
- ## 🌟 Features
26
-
27
- 🤖 **Multiple AI Models**
28
- - Ollama integration (llama3.2, qwen2.5:14b)
29
- - DuckDuckGo AI search capabilities
30
-
31
- 🛠️ **Rich Tool Integration**
32
- - RAG (Retrieval-Augmented Generation)
33
- - File operations & Shell commands
34
- - Web search & content extraction
35
- - Python code execution with dependency management
36
-
37
- 🔄 **Interactive Experience**
38
- - Natural language understanding
39
- - Context-aware responses
40
- - User-friendly interface
41
-
42
- ## 🚀 Installation
43
-
44
- ```bash
45
- pip install jarvis-ai-assistant
46
- ```
47
-
48
- ## 💡 Usage
49
-
50
- ```bash
51
- # Quick Start
52
- jarvis
53
-
54
- # Using Specific Model
55
- jarvis --platform ollama --model qwen2.5:14b
56
-
57
- # Custom Ollama API
58
- jarvis --platform ollama --model llama3.2 --api-base http://localhost:11434
59
- ```
60
-
61
- ## 🧰 Tools
62
-
63
- | Tool | Description | Example |
64
- |------|-------------|---------|
65
- | 🔍 Search | Web search using DuckDuckGo | Search latest tech news |
66
- | 📚 RAG | Document querying with embeddings | Query your documentation |
67
- | 🐍 Python | Execute Python code | Run data analysis |
68
- | 🖥️ Shell | Execute system commands | Manage files and processes |
69
- | 📂 Files | Read/write operations | Handle configuration files |
70
- | 🌐 Web | Extract webpage content | Gather information |
71
- | 👤 User | Interactive input/confirmation | Get user preferences |
72
-
73
-
74
- ## 🤝 Contributing
75
-
76
- Contributions are welcome! Please feel free to submit a Pull Request.
77
-
78
- 1. Fork the repository
79
- 2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
80
- 3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
81
- 4. Push to the branch (`git push origin feature/AmazingFeature`)
82
- 5. Open a Pull Request
83
-
84
- ## 📄 License
85
-
86
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
87
-
88
- ---
89
-
90
- <div align="center">
91
-
92
- Made with ❤️ by [Your Name]
93
-
94
- </div>