jarvis-ai-assistant 0.1.180__py3-none-any.whl → 0.1.182__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.

Potentially problematic release.


This version of jarvis-ai-assistant might be problematic. Click here for more details.

@@ -8,27 +8,6 @@
8
8
  from jarvis.jarvis_utils.tag import ct, ot
9
9
 
10
10
  BUILTIN_REPLACE_MAP = {
11
- "CodeBase": {
12
- "append": True,
13
- "template": f"""
14
- 请使用ask_codebase工具查询代码库,必须严格遵守以下工具调用格式:
15
-
16
- {ot("TOOL_CALL")}
17
- want: 想要从执行结果中获取到的信息
18
- name: ask_codebase
19
- arguments:
20
- question: "与xxx功能相关的文件有哪些?"
21
- {ct("TOOL_CALL")}
22
-
23
- 可以使用的提问格式包括:
24
- 1. 与xxx功能相关的文件有哪些?
25
- 2. 要实现xxx,应该要修改哪些文件?
26
- 3. xxx功能是怎么实现的?
27
- 4. xxx模块的入口函数是什么?
28
- 5. xxx功能的测试用例在哪里?
29
- """,
30
- "description": "查询代码库"
31
- },
32
11
  "Web": {
33
12
  "append": True,
34
13
  "template": f"""
@@ -50,27 +29,6 @@ arguments:
50
29
  """,
51
30
  "description": "网页搜索"
52
31
  },
53
- "Methodology": {
54
- "append": True,
55
- "template": f"""
56
- 请使用find_methodology工具查找相关方法论,必须严格遵守以下工具调用格式:
57
-
58
- {ot("TOOL_CALL")}
59
- want: 想要从执行结果中获取到的信息
60
- name: find_methodology
61
- arguments:
62
- query: "关于xxx的方法论有哪些?"
63
- {ct("TOOL_CALL")}
64
-
65
- 可以使用的提问格式包括:
66
- 1. 关于xxx的方法论有哪些?
67
- 2. 如何解决xxx问题?
68
- 3. xxx的最佳实践是什么?
69
- 4. 处理xxx的标准流程是什么?
70
- 5. 实现xxx的参考方案有哪些?
71
- """,
72
- "description": "查找相关方法论"
73
- },
74
32
  "Plan": {
75
33
  "append": True,
76
34
  "template": f"""
@@ -111,12 +69,6 @@ code_plan工具将:
111
69
  "append": False,
112
70
  "template": f"""
113
71
  请使用工具在当前目录下查找与以下功能相关的文件:
114
- """
115
- },
116
- "FindMethodology": {
117
- "append": False,
118
- "template": f"""
119
- 请使用find_methodology工具查找相关方法论:
120
72
  """
121
73
  },
122
74
  "Dev": {
@@ -100,7 +100,7 @@ def is_auto_complete() -> bool:
100
100
  返回:
101
101
  bool: 如果启用了自动补全则返回True,默认为False
102
102
  """
103
- return GLOBAL_CONFIG_DATA.get('JARVIS_AUTO_COMPLETE', 'false') == 'true'
103
+ return GLOBAL_CONFIG_DATA.get('JARVIS_AUTO_COMPLETE', False) == True
104
104
 
105
105
 
106
106
  def get_shell_name() -> str:
@@ -154,7 +154,7 @@ def is_execute_tool_confirm() -> bool:
154
154
  返回:
155
155
  bool: 如果需要确认则返回True,默认为False
156
156
  """
157
- return GLOBAL_CONFIG_DATA.get('JARVIS_EXECUTE_TOOL_CONFIRM', 'false') == 'true'
157
+ return GLOBAL_CONFIG_DATA.get('JARVIS_EXECUTE_TOOL_CONFIRM', False) == True
158
158
  def is_confirm_before_apply_patch() -> bool:
159
159
  """
160
160
  检查应用补丁前是否需要确认。
@@ -162,7 +162,7 @@ def is_confirm_before_apply_patch() -> bool:
162
162
  返回:
163
163
  bool: 如果需要确认则返回True,默认为False
164
164
  """
165
- return GLOBAL_CONFIG_DATA.get('JARVIS_CONFIRM_BEFORE_APPLY_PATCH', 'true') == 'true'
165
+ return GLOBAL_CONFIG_DATA.get('JARVIS_CONFIRM_BEFORE_APPLY_PATCH', True) == True
166
166
 
167
167
  def get_max_tool_call_count() -> int:
168
168
  """
@@ -194,7 +194,7 @@ def get_auto_update() -> bool:
194
194
  返回:
195
195
  bool: 如果需要自动更新则返回True,默认为True
196
196
  """
197
- return GLOBAL_CONFIG_DATA.get('JARVIS_AUTO_UPDATE', 'true') == 'true'
197
+ return GLOBAL_CONFIG_DATA.get('JARVIS_AUTO_UPDATE', True) == True
198
198
 
199
199
  def get_max_big_content_size() -> int:
200
200
  """
@@ -212,7 +212,7 @@ def get_pretty_output() -> bool:
212
212
  返回:
213
213
  bool: 如果启用PrettyOutput则返回True,默认为True
214
214
  """
215
- return GLOBAL_CONFIG_DATA.get('JARVIS_PRETTY_OUTPUT', 'false') == 'true'
215
+ return GLOBAL_CONFIG_DATA.get('JARVIS_PRETTY_OUTPUT', False) == True
216
216
 
217
217
  def is_use_methodology() -> bool:
218
218
  """
@@ -221,7 +221,7 @@ def is_use_methodology() -> bool:
221
221
  返回:
222
222
  bool: 如果启用方法论则返回True,默认为True
223
223
  """
224
- return GLOBAL_CONFIG_DATA.get('JARVIS_USE_METHODOLOGY', 'false') == 'true'
224
+ return GLOBAL_CONFIG_DATA.get('JARVIS_USE_METHODOLOGY', True) == True
225
225
 
226
226
  def is_use_analysis() -> bool:
227
227
  """
@@ -230,7 +230,7 @@ def is_use_analysis() -> bool:
230
230
  返回:
231
231
  bool: 如果启用任务分析则返回True,默认为True
232
232
  """
233
- return GLOBAL_CONFIG_DATA.get('JARVIS_USE_ANALYSIS', 'false') == 'true'
233
+ return GLOBAL_CONFIG_DATA.get('JARVIS_USE_ANALYSIS', True) == True
234
234
 
235
235
  def is_print_prompt() -> bool:
236
236
  """
@@ -239,7 +239,7 @@ def is_print_prompt() -> bool:
239
239
  返回:
240
240
  bool: 如果打印提示则返回True,默认为True
241
241
  """
242
- return GLOBAL_CONFIG_DATA.get('JARVIS_PRINT_PROMPT', 'false') == 'true'
242
+ return GLOBAL_CONFIG_DATA.get('JARVIS_PRINT_PROMPT', False) == True
243
243
 
244
244
 
245
245
  def get_mcp_config() -> List[Dict[str, Any]]:
@@ -12,7 +12,7 @@ Git工具模块
12
12
  import os
13
13
  import re
14
14
  import subprocess
15
- from typing import Dict, List, Tuple
15
+ from typing import Any, Dict, List, Tuple
16
16
 
17
17
  from jarvis.jarvis_utils.config import (get_auto_update,
18
18
  is_confirm_before_apply_patch)
@@ -376,3 +376,63 @@ def get_diff_file_list() -> List[str]:
376
376
  except Exception as e:
377
377
  PrettyOutput.print(f"获取差异文件列表异常: {str(e)}", OutputType.ERROR)
378
378
  return []
379
+
380
+
381
+
382
+ def get_recent_commits_with_files() -> List[Dict[str, Any]]:
383
+ """获取最近5次提交的commit信息和文件清单
384
+
385
+ 返回:
386
+ List[Dict[str, Any]]: 包含commit信息和文件清单的字典列表,格式为:
387
+ [
388
+ {
389
+ 'hash': 提交hash,
390
+ 'message': 提交信息,
391
+ 'author': 作者,
392
+ 'date': 提交日期,
393
+ 'files': [修改的文件列表] (最多20个文件)
394
+ },
395
+ ...
396
+ ]
397
+ 失败时返回空列表
398
+ """
399
+ try:
400
+ # 获取最近5次提交的基本信息
401
+ result = subprocess.run(
402
+ ['git', 'log', '-5', '--pretty=format:%H%n%s%n%an%n%ad'],
403
+ capture_output=True,
404
+ text=True
405
+ )
406
+ if result.returncode != 0:
407
+ return []
408
+
409
+ # 解析提交信息
410
+ commits = []
411
+ lines = result.stdout.splitlines()
412
+ for i in range(0, len(lines), 4):
413
+ if i + 3 >= len(lines):
414
+ break
415
+ commit = {
416
+ 'hash': lines[i],
417
+ 'message': lines[i+1],
418
+ 'author': lines[i+2],
419
+ 'date': lines[i+3],
420
+ 'files': []
421
+ }
422
+ commits.append(commit)
423
+
424
+ # 获取每个提交的文件修改清单
425
+ for commit in commits:
426
+ files_result = subprocess.run(
427
+ ['git', 'show', '--name-only', '--pretty=format:', commit['hash']],
428
+ capture_output=True,
429
+ text=True
430
+ )
431
+ if files_result.returncode == 0:
432
+ files = list(set(filter(None, files_result.stdout.splitlines())))
433
+ commit['files'] = files[:20] # 限制最多20个文件
434
+
435
+ return commits
436
+
437
+ except subprocess.CalledProcessError:
438
+ return []
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  import hashlib
3
3
  import os
4
+ import subprocess
4
5
  import tarfile
5
6
  import time
6
7
  from pathlib import Path
@@ -133,7 +134,13 @@ def _read_old_config_file(config_file):
133
134
  if "=" in line and not line.startswith((" ", "\t")):
134
135
  # 处理之前收集的多行值
135
136
  if current_key is not None:
136
- config_data[current_key] = "\n".join(current_value).strip().strip("'").strip('"')
137
+ value = "\n".join(current_value).strip().strip("'").strip('"')
138
+ # 将字符串"true"/"false"转换为bool类型
139
+ if value.lower() == "true":
140
+ value = True
141
+ elif value.lower() == "false":
142
+ value = False
143
+ config_data[current_key] = value
137
144
  current_value = []
138
145
  # 解析新的键值对
139
146
  key, value = line.split("=", 1)
@@ -144,7 +151,13 @@ def _read_old_config_file(config_file):
144
151
  current_value.append(line.strip())
145
152
  # 处理最后一个键值对
146
153
  if current_key is not None:
147
- config_data[current_key] = "\n".join(current_value).strip().strip("'").strip('"')
154
+ value = "\n".join(current_value).strip().strip("'").strip('"')
155
+ # 将字符串"true"/"false"转换为bool类型
156
+ if value.lower() == "true":
157
+ value = True
158
+ elif value.lower() == "false":
159
+ value = False
160
+ config_data[current_key] = value
148
161
  os.environ.update({str(k): str(v) for k, v in config_data.items() if v is not None})
149
162
  set_global_env_data(config_data)
150
163
  PrettyOutput.print(f"检测到旧格式配置文件,旧格式以后将不再支持,请尽快迁移到新格式", OutputType.WARNING)
@@ -261,4 +274,20 @@ def count_cmd_usage() -> None:
261
274
 
262
275
  def is_context_overflow(content: str) -> bool:
263
276
  """判断文件内容是否超出上下文限制"""
264
- return get_context_token_count(content) > get_max_big_content_size()
277
+ return get_context_token_count(content) > get_max_big_content_size()
278
+
279
+ def get_loc_stats() -> str:
280
+ """使用loc命令获取当前目录的代码统计信息
281
+
282
+ 返回:
283
+ str: loc命令输出的原始字符串,失败时返回空字符串
284
+ """
285
+ try:
286
+ result = subprocess.run(
287
+ ['loc'],
288
+ capture_output=True,
289
+ text=True
290
+ )
291
+ return result.stdout if result.returncode == 0 else ""
292
+ except FileNotFoundError:
293
+ return ""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jarvis-ai-assistant
3
- Version: 0.1.180
3
+ Version: 0.1.182
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
@@ -55,6 +55,7 @@ Requires-Dist: python-Levenshtein==0.25.1
55
55
  Requires-Dist: pillow==10.2.0
56
56
  Requires-Dist: openai==1.78.1
57
57
  Requires-Dist: tabulate==0.9.0
58
+ Requires-Dist: pyte==0.8.2
58
59
  Provides-Extra: dev
59
60
  Requires-Dist: pytest; extra == "dev"
60
61
  Requires-Dist: black; extra == "dev"
@@ -212,8 +213,8 @@ OPENAI_API_BASE: https://api.openai.com/v1 # 可选,默认为官方API地址
212
213
  | `JARVIS_PRETTY_OUTPUT` | false | 是否启用PrettyOutput |
213
214
  | `JARVIS_GIT_COMMIT_PROMPT` | "" | 自定义git提交信息生成提示模板 |
214
215
  | `JARVIS_PRINT_PROMPT` | false | 是否打印提示 |
215
- | `JARVIS_USE_METHODOLOGY` | false | 是否启用方法论功能 |
216
- | `JARVIS_USE_ANALYSIS` | false | 是否启用任务分析功能 |
216
+ | `JARVIS_USE_METHODOLOGY` | true | 是否启用方法论功能 |
217
+ | `JARVIS_USE_ANALYSIS` | true | 是否启用任务分析功能 |
217
218
  | `JARVIS_DATA_PATH` | ~/.jarvis | Jarvis数据存储目录路径 |
218
219
 
219
220
  所有配置编写到`~/.jarvis/config.yaml`文件中即可生效。
@@ -232,7 +233,6 @@ ENV:
232
233
  ### 内置工具
233
234
  | 工具名称 | 描述 |
234
235
  |----------|------|
235
- | ask_codebase | 智能代码库查询和分析,用于定位功能所在文件和理解单点实现,适合查询特定功能位置和实现原理 |
236
236
  | ask_user | 交互式用户输入收集 |
237
237
  | chdir | 更改当前工作目录 |
238
238
  | rewrite_file | 文件重写工具,用于完全重写或创建文件,提供完整的文件内容替换 |
@@ -243,7 +243,6 @@ ENV:
243
243
  | execute_script | 执行脚本并返回结果,支持任意解释器。 |
244
244
  | file_analyzer | 分析文件内容并提取关键信息。支持的文件:文本文件、word文档、pdf文件、图片 |
245
245
  | file_operation | 文件批量操作工具,可批量读写多个文件,支持文本文件,适用于需要同时处理多个文件的场景(读取配置文件、保存生成内容等) |
246
- | find_methodology | 方法论查找工具,用于在执行过程中查看历史方法论辅助决策 |
247
246
  | methodology | 方法论管理工具,支持添加、更新和删除操作 |
248
247
  | read_code | 代码阅读与分析工具,用于读取源代码文件并添加行号,针对代码文件优化,提供更好的格式化输出和行号显示,适用于代码分析、审查和理解代码实现的场景 |
249
248
  | read_webpage | 读取网页内容并分析 |
@@ -1,12 +1,13 @@
1
- jarvis/__init__.py,sha256=VWahAg7gYnoP3F-d2naYtaf7HKC8ZuoYbeBZ5SH0GnQ,74
2
- jarvis/jarvis_agent/__init__.py,sha256=9vyME5JbA4koVoqJ_zv5N9eNdvu6iBkB4o4a1CmkVgA,30054
1
+ jarvis/__init__.py,sha256=0L3xbrhIunJRm7imt5CFTJQk-Ck5Or4XgYyygPYg_Dg,74
2
+ jarvis/jarvis_agent/__init__.py,sha256=AxT_2n-IQkbtoQlAS3SJ0tsvcUenWD7_Xrc-RZZCWiA,30352
3
3
  jarvis/jarvis_agent/builtin_input_handler.py,sha256=f4DaEHPakXcAbgykFP-tiOQP6fh_yGFlZx_h91_j2tQ,1529
4
+ jarvis/jarvis_agent/file_input_handler.py,sha256=LDNXoTtyjhyBmfzDnAdbWZ2BWdu4q-r6thSKRK8Iwjk,4187
4
5
  jarvis/jarvis_agent/jarvis.py,sha256=UkNMVUlSNKV6y3v12eAhqc_gIDB6Obxrwk5f7-sQeiQ,6137
5
6
  jarvis/jarvis_agent/main.py,sha256=GkjMTIbsd56nkVuRwD_tU_PZWyzixZZhMjVOCd0SzOA,2669
6
7
  jarvis/jarvis_agent/output_handler.py,sha256=7qori-RGrQmdiFepoEe3oPPKJIvRt90l_JDmvCoa4zA,1219
7
8
  jarvis/jarvis_agent/shell_input_handler.py,sha256=pi3AtPKrkKc6K9e99S1djKXQ_XrxtP6FrSWebQmRT6E,1261
8
9
  jarvis/jarvis_code_agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- jarvis/jarvis_code_agent/code_agent.py,sha256=jEJhPk4Eg-2hsDYeIa2NOfk2YnuvhuPrLCtVHm5hTPg,17879
10
+ jarvis/jarvis_code_agent/code_agent.py,sha256=2TG_Hi_2mbiZHUcWnxYs4C30eYpgSedtIYZLs7BbyUk,15827
10
11
  jarvis/jarvis_code_agent/lint.py,sha256=TZlhNbeaoLzO9DzExjN5GAjrt66owd8lyQV56LTfkrs,4370
11
12
  jarvis/jarvis_code_analysis/code_review.py,sha256=SEK5NOGDWgMNX3zmRMWrIOtq3Xr8cKt_asG51U8h6SA,30219
12
13
  jarvis/jarvis_code_analysis/checklists/__init__.py,sha256=cKQ_FOGy5TQgM-YkRCqORo-mUOZaPAJ9VDmZoFX58us,78
@@ -29,9 +30,9 @@ jarvis/jarvis_code_analysis/checklists/shell.py,sha256=IXQkWHwA-4GUQz3WUs7l6hEy7
29
30
  jarvis/jarvis_code_analysis/checklists/sql.py,sha256=ecKKT6wJAibn8R0NxGZDNlm4teYXvF3CAJvVk8mmX7w,2355
30
31
  jarvis/jarvis_code_analysis/checklists/swift.py,sha256=YcsYFxAitHqOtBZjG-RV9-KNM7X5lIcl6zlEI9XfmfM,2566
31
32
  jarvis/jarvis_code_analysis/checklists/web.py,sha256=-Pnj1FQTsGVZUQK7-4ptDsGd7a22Cs0585jRAPT2SdQ,3943
32
- jarvis/jarvis_data/config_schema.json,sha256=jAoVYIB4mBf6TEwpnsPCLIwsYmpwLyH_dAPB6-S6R6s,6853
33
+ jarvis/jarvis_data/config_schema.json,sha256=Jx9RPeVdkV7xgGro-5B8MFpVDLFmI80d_deLNMiTSgM,6398
33
34
  jarvis/jarvis_data/huggingface.tar.gz,sha256=dWKnc_tvyx-I_ZkXo91O0b38KxDmLW1ZbmJ3E6fCl_k,1120205
34
- jarvis/jarvis_dev/main.py,sha256=RJ7Z7_qX6ENKrlgjlz7tMfpBTh9g22mGqcasWCv5ygw,42710
35
+ jarvis/jarvis_dev/main.py,sha256=b-Sa5i5T3lcazg4GIMnECsZ3L9zTs7QCg_voWE4K0I8,40642
35
36
  jarvis/jarvis_event/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
37
  jarvis/jarvis_git_details/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
38
  jarvis/jarvis_git_details/main.py,sha256=MfR7feVVQ7Eo9eZk-wO2bFypnA6uRrYUQn6iTeoF0Os,9007
@@ -46,32 +47,30 @@ jarvis/jarvis_methodology/main.py,sha256=HhEArlKI5PCpGnBCwVrXMuDn2z84LgpgK7-aGSQ
46
47
  jarvis/jarvis_multi_agent/__init__.py,sha256=Xab5sFltJmX_9MoXqanmZs6FqKfUb2v_pG29Vk8ZXaw,4311
47
48
  jarvis/jarvis_multi_agent/main.py,sha256=KeGv8sdpSgTjW6VE4-tQ8BWDC_a0aE_4R3OqzPBd5N4,1646
48
49
  jarvis/jarvis_platform/__init__.py,sha256=0YnsUoM4JkIBOtImFdjfuDbrqQZT3dEaAwSJ62DrpCc,104
49
- jarvis/jarvis_platform/base.py,sha256=EyZOl98rpYUX1yISDFvj1ztrYfWIT2ozenwUIZ7TyyI,6972
50
+ jarvis/jarvis_platform/base.py,sha256=HbE7BVh8F5F38rr9K9281h6Q11XyWgDGzyPXe-e_Th0,7086
50
51
  jarvis/jarvis_platform/human.py,sha256=xwaTZ1zdrAYZZFXxkbHvUdECwCGsic0kgAFUncUr45g,2567
51
52
  jarvis/jarvis_platform/kimi.py,sha256=k0dYwuRf-snmJF206D7inahUcZUZG0VqOmhphj09NzQ,11969
52
53
  jarvis/jarvis_platform/openai.py,sha256=VyX3bR1rGxrJdWOtUBf8PgSL9n06KaNbOewL1urzOnk,4741
53
54
  jarvis/jarvis_platform/registry.py,sha256=CxAELjDrc-KKPPKdP71E_qaFisfQztvwc_tdf3WpOt8,7863
54
- jarvis/jarvis_platform/yuanbao.py,sha256=EABz4qLg_LJfbRfWn_8e_sEUZpD68IT98ax1q4pgaTg,20343
55
+ jarvis/jarvis_platform/yuanbao.py,sha256=vKb6oy5cTMQCwqcqpaVur7BFtQwX1Cv-mYnswP-L4mA,20291
55
56
  jarvis/jarvis_platform_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
57
  jarvis/jarvis_platform_manager/main.py,sha256=OXWj18SqiV0Gl75YT6D9wspCCB4Nes04EY-ShI9kbpU,25677
57
58
  jarvis/jarvis_smart_shell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
58
59
  jarvis/jarvis_smart_shell/main.py,sha256=k59o5UD7merbsPhJQzae95ThTmZY2EcNHB3Ov6kb0PA,5291
59
60
  jarvis/jarvis_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
- jarvis/jarvis_tools/ask_codebase.py,sha256=FYlrbiN5PjxS4hGvCjN8idF6YnESDH6NLBgQguSnG48,10145
61
61
  jarvis/jarvis_tools/ask_user.py,sha256=qwxwJIL698rEWdi1txxlPgIr4UFuihfe--NqBEYhIQQ,2168
62
62
  jarvis/jarvis_tools/base.py,sha256=OdlvzUjYQBmZIMcAeBxAqIQo2urh126OerArK-wOPzU,1191
63
63
  jarvis/jarvis_tools/chdir.py,sha256=DNKVFrWqu6t_sZ2ipv99s6802QR4cSGlqKlmaI--arE,2707
64
- jarvis/jarvis_tools/code_plan.py,sha256=pfGOX3fH4-Gg2ECuJkjGpnRtHXEhlVWLV8ZVJAEKmwk,7755
64
+ jarvis/jarvis_tools/code_plan.py,sha256=gWR0lzY62x2PxWKoMRBqW6jq7zQuO8vhpjC4TcHSYjk,7685
65
65
  jarvis/jarvis_tools/create_code_agent.py,sha256=-nHfo5O5pDIG5IX3w1ClQafGvGcdI2_w75-KGrD-gUQ,3458
66
66
  jarvis/jarvis_tools/create_sub_agent.py,sha256=lyFrrg4V0yXULmU3vldwGp_euZjwZzJcRU6mJ20zejY,3023
67
- jarvis/jarvis_tools/edit_file.py,sha256=OiTP50yaUE-WTSKnp8axo96OfddHufWKpGuEa6YRG30,16269
68
- jarvis/jarvis_tools/execute_script.py,sha256=yQpc90t678UGbkr-ycGeB7jwqmY7GWWbtFtmcAI0-d4,5739
67
+ jarvis/jarvis_tools/edit_file.py,sha256=gxnVijz-mOHpb9A7WTPIqCwmZHInSHwu_Psa_GvNWRQ,16724
68
+ jarvis/jarvis_tools/execute_script.py,sha256=IA1SkcnwBB9PKG2voBNx5N9GXL303OC7OOtdqRfqWOk,6428
69
69
  jarvis/jarvis_tools/file_analyzer.py,sha256=7ILHkUFm8pPZn1y_s4uT0kaWHP-EmlHnpkovDdA1yRE,4872
70
- jarvis/jarvis_tools/file_operation.py,sha256=RcOKuMFUv01tvKoiOfu1ERCjvDVfJBvkT4oBpq-8vNQ,9036
71
- jarvis/jarvis_tools/find_methodology.py,sha256=P1IJU2x9yBoOK-X5TTvzC9Lfa1i6ES3eZn5kjEpWGdA,2440
70
+ jarvis/jarvis_tools/file_operation.py,sha256=WloC1-oPJLwgICu4WBc9f7XA8N_Ggl73QQ5CxM2XTlE,9464
72
71
  jarvis/jarvis_tools/generate_new_tool.py,sha256=k1Vt88kI1bYi1OwxvJqFKr3Ewwwv7lOegYNmZ-1F7x0,10283
73
72
  jarvis/jarvis_tools/methodology.py,sha256=m7cQmVhhQpUUl_uYTVvcW0JBovQLx5pWTXh_8K77HsU,5237
74
- jarvis/jarvis_tools/read_code.py,sha256=j4niDMOAKW_3rVxmOo3wxYBQ2T8vkxqEiTkBt28gUT8,5898
73
+ jarvis/jarvis_tools/read_code.py,sha256=pL2SwZDsJbJMXo4stW96quFsLgbtPVIAW-h4sDKsLtM,6274
75
74
  jarvis/jarvis_tools/read_webpage.py,sha256=PFAYuKjay9j6phWzyuZ99ZfNaHJljmRWAgS0bsvbcvE,2219
76
75
  jarvis/jarvis_tools/registry.py,sha256=WvYPiaUrleFqeXvwRkxM-6TNs1sWm61mpg1MFVo_kas,25113
77
76
  jarvis/jarvis_tools/rewrite_file.py,sha256=3V2l7kG5DG9iRimBce-1qCRuJPL0QM32SBTzOl2zCqM,7004
@@ -80,20 +79,20 @@ jarvis/jarvis_tools/virtual_tty.py,sha256=8E_n-eC-RRPTqYx6BI5Q2RnorY8dbhKFBfAjIi
80
79
  jarvis/jarvis_tools/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
80
  jarvis/jarvis_tools/cli/main.py,sha256=3UuU9tk5cQAS0rfNPXgdtnAd5uDB7v0Exo0_I9sJHRE,6355
82
81
  jarvis/jarvis_utils/__init__.py,sha256=x5lbQRH1uOulmWr1IEqNMLXNmDHbqQQot7d1uhKFg4M,851
83
- jarvis/jarvis_utils/builtin_replace_map.py,sha256=Cx0HFvMmDkkYR9htSS-PCCd8D0Np7yRm2g-C1J2-u08,4314
84
- jarvis/jarvis_utils/config.py,sha256=3m6v3ALWfnZ9yeMEIEDUFFyYuG6h2r8fEMv2yJAad_M,7139
82
+ jarvis/jarvis_utils/builtin_replace_map.py,sha256=n4gBUwAJDABUhQu9qIiIHWNfPk_T7chfNk5ygCiOPtE,2931
83
+ jarvis/jarvis_utils/config.py,sha256=2STTlI2Acy5TMHhLEZaz44MDsY4W9qSThI6tbwg7iSg,7105
85
84
  jarvis/jarvis_utils/embedding.py,sha256=J8YAqIEj16TJIPEG24uvUlPHeN-5zq0JW_hbNLizQug,3832
86
85
  jarvis/jarvis_utils/file_processors.py,sha256=G5kQI7vCGIDnjgAB5J1dYIR102u6WUv3IhcWFfDh_gs,2977
87
- jarvis/jarvis_utils/git_utils.py,sha256=WuVSoqSSrjqO4t3XAiG7SpmH9GduS8YVcfFnuLI_0ik,13172
86
+ jarvis/jarvis_utils/git_utils.py,sha256=k0rrMAbKwnD7hztmtegxtFFiCzyID4p2oHKTycE2Q-4,15070
88
87
  jarvis/jarvis_utils/globals.py,sha256=6JWtB1XoD-wEFiMzZNA790ixlZ_OsJEYUM_B8EwkOE8,2277
89
88
  jarvis/jarvis_utils/input.py,sha256=FkLW7MXL8awQUghFLQnW1r5F1wV8K3EZeVPwHFRHJTo,7458
90
89
  jarvis/jarvis_utils/methodology.py,sha256=A8pE8ZqNHvGKaDO4TFtg7Oz-hAXPBcQfhmSPWMr6vdg,8629
91
90
  jarvis/jarvis_utils/output.py,sha256=QboL42GtG_dnvd1O64sl8o72mEBhXNRADPXQMXgDE7Q,9661
92
91
  jarvis/jarvis_utils/tag.py,sha256=YJHmuedLb7_AiqvKQetHr4R1FxyzIh7HN0RRkWMmYbU,429
93
- jarvis/jarvis_utils/utils.py,sha256=ZwGMbHBQhPckq76W5v-Wbnoapy4vKX3QnvkPLesaHO0,9738
94
- jarvis_ai_assistant-0.1.180.dist-info/licenses/LICENSE,sha256=AGgVgQmTqFvaztRtCAXsAMryUymB18gZif7_l2e1XOg,1063
95
- jarvis_ai_assistant-0.1.180.dist-info/METADATA,sha256=hzV9sCqPJ3zunaI4KStiGReTpgBtM3xAKArTm-Cxacw,15291
96
- jarvis_ai_assistant-0.1.180.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
97
- jarvis_ai_assistant-0.1.180.dist-info/entry_points.txt,sha256=rjj61tZ7ahLi1R-JkJmX-IzIPPHD8mnwDZap1CnMe2s,973
98
- jarvis_ai_assistant-0.1.180.dist-info/top_level.txt,sha256=1BOxyWfzOP_ZXj8rVTDnNCJ92bBGB0rwq8N1PCpoMIs,7
99
- jarvis_ai_assistant-0.1.180.dist-info/RECORD,,
92
+ jarvis/jarvis_utils/utils.py,sha256=atSK-2cUr7_tOIFsQzJnuQxebi7aFN4jtmaoXEaV4jM,10692
93
+ jarvis_ai_assistant-0.1.182.dist-info/licenses/LICENSE,sha256=AGgVgQmTqFvaztRtCAXsAMryUymB18gZif7_l2e1XOg,1063
94
+ jarvis_ai_assistant-0.1.182.dist-info/METADATA,sha256=Op8V2ma_T4C2rrhuEXgSn0qN7lZEfeiozSES036fdak,15059
95
+ jarvis_ai_assistant-0.1.182.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
96
+ jarvis_ai_assistant-0.1.182.dist-info/entry_points.txt,sha256=Gy3DOP1PYLMK0GCj4rrP_9lkOyBQ39EK_lKGUSwn41E,869
97
+ jarvis_ai_assistant-0.1.182.dist-info/top_level.txt,sha256=1BOxyWfzOP_ZXj8rVTDnNCJ92bBGB0rwq8N1PCpoMIs,7
98
+ jarvis_ai_assistant-0.1.182.dist-info/RECORD,,
@@ -1,8 +1,6 @@
1
1
  [console_scripts]
2
- jac = jarvis.jarvis_tools.ask_codebase:main
3
2
  jarvis = jarvis.jarvis_agent.jarvis:main
4
3
  jarvis-agent = jarvis.jarvis_agent.main:main
5
- jarvis-ask-codebase = jarvis.jarvis_tools.ask_codebase:main
6
4
  jarvis-code-agent = jarvis.jarvis_code_agent.code_agent:main
7
5
  jarvis-code-review = jarvis.jarvis_code_analysis.code_review:main
8
6
  jarvis-dev = jarvis.jarvis_dev.main:main