codecontext-ai 1.25.0__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.
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/chatgpt_prompt_wrapper.jinja2 +13 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/claude_xml_optimized.jinja2 +18 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/code_review_diff.jinja2 +18 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/csv_export.jinja2 +4 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/documentation_writer.jinja2 +17 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/html_report.jinja2 +28 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/json_structured.jinja2 +16 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/minimal_token_saver.jinja2 +6 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/report.jinja2 +24 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/security_audit.jinja2 +13 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/templates/summary_only.jinja2 +17 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/themes/apple.json +83 -0
- codecontext_ai-1.25.0.data/data/share/codecontext-ai/themes/modern.json +83 -0
- codecontext_ai-1.25.0.dist-info/METADATA +443 -0
- codecontext_ai-1.25.0.dist-info/RECORD +95 -0
- codecontext_ai-1.25.0.dist-info/WHEEL +5 -0
- codecontext_ai-1.25.0.dist-info/entry_points.txt +5 -0
- codecontext_ai-1.25.0.dist-info/top_level.txt +1 -0
- src/__init__.py +1 -0
- src/actions/__init__.py +0 -0
- src/actions/action_types.py +58 -0
- src/actions/dispatcher.py +41 -0
- src/api/__init__.py +1 -0
- src/api/plugin_api.py +65 -0
- src/controllers/__init__.py +0 -0
- src/controllers/cli_controller.py +270 -0
- src/controllers/main_controller.py +366 -0
- src/data/__init__.py +0 -0
- src/data/file_system_repository.py +140 -0
- src/data/settings_repository.py +29 -0
- src/di_container.py +138 -0
- src/i18n/__init__.py +89 -0
- src/i18n/ar.json +460 -0
- src/i18n/de.json +460 -0
- src/i18n/en.json +460 -0
- src/i18n/es.json +460 -0
- src/i18n/fr.json +460 -0
- src/i18n/hi.json +460 -0
- src/i18n/it.json +460 -0
- src/i18n/ja.json +460 -0
- src/i18n/ko.json +460 -0
- src/i18n/nl.json +460 -0
- src/i18n/pl.json +460 -0
- src/i18n/pt.json +460 -0
- src/i18n/ru.json +460 -0
- src/i18n/tr.json +460 -0
- src/i18n/zh.json +460 -0
- src/services/__init__.py +0 -0
- src/services/cleaner_service.py +79 -0
- src/services/dependency_service.py +79 -0
- src/services/file_service.py +137 -0
- src/services/formatting_service.py +363 -0
- src/services/github_service.py +79 -0
- src/services/import_resolution_service.py +74 -0
- src/services/integration_service.py +52 -0
- src/services/llm_checker_service.py +98 -0
- src/services/output_service.py +70 -0
- src/services/patch_service.py +166 -0
- src/services/plugin_manager.py +100 -0
- src/services/processing_service.py +45 -0
- src/services/skeleton_service.py +105 -0
- src/services/strategies/dependency_strategies.py +63 -0
- src/services/strategies/import_strategies.py +57 -0
- src/services/strategies/integration_strategies.py +373 -0
- src/services/token_service.py +30 -0
- src/services/tour_service.py +57 -0
- src/services/updater_service.py +243 -0
- src/store/__init__.py +0 -0
- src/store/state.py +103 -0
- src/store/store.py +263 -0
- src/ui/__init__.py +0 -0
- src/ui/components/__init__.py +0 -0
- src/ui/components/action_panel.py +201 -0
- src/ui/components/analytics_panel.py +199 -0
- src/ui/components/empty_state.py +142 -0
- src/ui/components/file_tree.py +311 -0
- src/ui/components/folder_list.py +69 -0
- src/ui/components/log_panel.py +13 -0
- src/ui/components/sidebar.py +932 -0
- src/ui/components/status_bar.py +41 -0
- src/ui/dialogs.py +1040 -0
- src/ui/main_window.py +342 -0
- src/ui/theme_manager.py +531 -0
- src/use_cases/__init__.py +0 -0
- src/use_cases/github_use_case.py +78 -0
- src/use_cases/patch_use_case.py +73 -0
- src/use_cases/process_use_case.py +255 -0
- src/use_cases/scan_use_case.py +128 -0
- src/use_cases/settings_use_case.py +162 -0
- src/use_cases/updater_use_case.py +79 -0
- src/utils/__init__.py +0 -0
- src/utils/async_runtime.py +46 -0
- src/utils/config.py +171 -0
- src/utils/logger.py +56 -0
- src/utils/pipeline_utils.py +156 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
I will provide you with a codebase.
|
|
2
|
+
Your goal is: {{ system_prompt }}
|
|
3
|
+
|
|
4
|
+
Here is the folder structure:
|
|
5
|
+
{{ tree }}
|
|
6
|
+
|
|
7
|
+
Here are the file contents. Please ingest them and wait for my specific question, or if I stated a task above, execute it.
|
|
8
|
+
|
|
9
|
+
START OF CODE CONTEXT
|
|
10
|
+
vvvvvvvvvvvvvvvvvvvvv
|
|
11
|
+
|
|
12
|
+
{% for file in files %}
|
|
13
|
+
file: {{ file.path }}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<system_context>
|
|
2
|
+
{{ system_prompt }}
|
|
3
|
+
</system_context>
|
|
4
|
+
|
|
5
|
+
<project_structure>
|
|
6
|
+
{{ tree }}
|
|
7
|
+
</project_structure>
|
|
8
|
+
|
|
9
|
+
<documents>
|
|
10
|
+
{% for file in files %}
|
|
11
|
+
<document index="{{ loop.index }}">
|
|
12
|
+
<source>{{ file.path }}</source>
|
|
13
|
+
<document_content>
|
|
14
|
+
{{ file.content }}
|
|
15
|
+
</document_content>
|
|
16
|
+
</document>
|
|
17
|
+
{% endfor %}
|
|
18
|
+
</documents>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
You are a Senior Software Engineer conducting a code review.
|
|
2
|
+
Please review the implementation below for:
|
|
3
|
+
1. Code Quality & Best Practices
|
|
4
|
+
2. Potential Bugs
|
|
5
|
+
3. Performance Improvements
|
|
6
|
+
|
|
7
|
+
FILES TO REVIEW:
|
|
8
|
+
{{ tree }}
|
|
9
|
+
|
|
10
|
+
--------------------------------------------------
|
|
11
|
+
{% for file in files %}
|
|
12
|
+
FILENAME: {{ file.path }}
|
|
13
|
+
LANGUAGE: {{ file.path.split('.')[-1] }}
|
|
14
|
+
CONTENT:
|
|
15
|
+
{{ file.content }}
|
|
16
|
+
|
|
17
|
+
--------------------------------------------------
|
|
18
|
+
{% endfor %}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
TASK: Write comprehensive documentation (README.md) for the project described below.
|
|
2
|
+
Include:
|
|
3
|
+
1. Project Overview
|
|
4
|
+
2. Installation/Setup
|
|
5
|
+
3. Key Components description based on the file structure.
|
|
6
|
+
|
|
7
|
+
PROJECT STRUCTURE:
|
|
8
|
+
{{ tree }}
|
|
9
|
+
|
|
10
|
+
SOURCE CODE:
|
|
11
|
+
{% for file in files %}
|
|
12
|
+
---
|
|
13
|
+
File: {{ file.path }}
|
|
14
|
+
---
|
|
15
|
+
{{ file.content }}
|
|
16
|
+
|
|
17
|
+
{% endfor %}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<title>CodeContext Report</title>
|
|
6
|
+
<style>
|
|
7
|
+
body { font-family: sans-serif; background: #f4f4f4; padding: 20px; }
|
|
8
|
+
.file { background: white; padding: 15px; margin-bottom: 20px; border-radius: 5px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); }
|
|
9
|
+
h2 { border-bottom: 1px solid #eee; padding-bottom: 10px; color: #333; }
|
|
10
|
+
pre { background: #2d2d2d; color: #f8f8f2; padding: 10px; overflow-x: auto; border-radius: 3px; }
|
|
11
|
+
.tree { background: #e0e0e0; padding: 10px; white-space: pre; font-family: monospace; }
|
|
12
|
+
</style>
|
|
13
|
+
</head>
|
|
14
|
+
<body>
|
|
15
|
+
<h1>Project Export</h1>
|
|
16
|
+
<div class="file">
|
|
17
|
+
<h3>Project Structure</h3>
|
|
18
|
+
<div class="tree">{{ tree }}</div>
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
{% for file in files %}
|
|
22
|
+
<div class="file">
|
|
23
|
+
<h2>{{ file.path }} <small style="color:gray; font-size: 0.6em">({{ file.tokens }} tokens)</small></h2>
|
|
24
|
+
<pre>{{ file.content | e }}</pre>
|
|
25
|
+
</div>
|
|
26
|
+
{% endfor %}
|
|
27
|
+
</body>
|
|
28
|
+
</html>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
[
|
|
2
|
+
{% for file in files %}
|
|
3
|
+
{
|
|
4
|
+
"path": {{ file.path | tojson }},
|
|
5
|
+
"tokens": {{ file.tokens }},
|
|
6
|
+
"content": {{ file.content | tojson }},
|
|
7
|
+
"imports": [
|
|
8
|
+
{% if dependencies and dependencies[file.path] %}
|
|
9
|
+
{% for imp in dependencies[file.path] %}
|
|
10
|
+
{{ imp | tojson }}{{ "," if not loop.last }}
|
|
11
|
+
{% endfor %}
|
|
12
|
+
{% endif %}
|
|
13
|
+
]
|
|
14
|
+
}{{ "," if not loop.last }}
|
|
15
|
+
{% endfor %}
|
|
16
|
+
]
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
ОТЧЕТ О КОДЕ
|
|
2
|
+
============
|
|
3
|
+
|
|
4
|
+
СИСТЕМНЫЙ КОНТЕКСТ:
|
|
5
|
+
{{ system_prompt }}
|
|
6
|
+
|
|
7
|
+
СТРУКТУРА ПРОЕКТА:
|
|
8
|
+
{{ tree }}
|
|
9
|
+
|
|
10
|
+
{% if dependencies_text %}
|
|
11
|
+
ЗАВИСИМОСТИ:
|
|
12
|
+
{{ dependencies_text }}
|
|
13
|
+
{% endif %}
|
|
14
|
+
|
|
15
|
+
ФАЙЛЫ (Всего: {{ files|length }}):
|
|
16
|
+
|
|
17
|
+
{% for file in files %}
|
|
18
|
+
---
|
|
19
|
+
Файл: {{ file.path }}
|
|
20
|
+
Токенов: {{ file.tokens }}
|
|
21
|
+
---
|
|
22
|
+
{{ file.content }}
|
|
23
|
+
|
|
24
|
+
{% endfor %}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
ROLE: Security Researcher.
|
|
2
|
+
TASK: Analyze the following code for security vulnerabilities (OWASP Top 10), secrets leaks, and unsafe dependencies.
|
|
3
|
+
|
|
4
|
+
DEPENDENCY MAP (Check for supply chain risks):
|
|
5
|
+
{{ dependencies_text }}
|
|
6
|
+
|
|
7
|
+
CODEBASE:
|
|
8
|
+
{% for file in files %}
|
|
9
|
+
==================================================
|
|
10
|
+
TARGET: {{ file.path }}
|
|
11
|
+
==================================================
|
|
12
|
+
{{ file.content }}
|
|
13
|
+
{% endfor %}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
PROJECT SUMMARY REPORT
|
|
2
|
+
======================
|
|
3
|
+
|
|
4
|
+
Total Files: {{ files|length }}
|
|
5
|
+
Total Tokens: {{ files | map(attribute='tokens') | sum }}
|
|
6
|
+
|
|
7
|
+
STRUCTURE:
|
|
8
|
+
{{ tree }}
|
|
9
|
+
|
|
10
|
+
DEPENDENCY GRAPH:
|
|
11
|
+
{{ dependencies_text }}
|
|
12
|
+
|
|
13
|
+
FILE DETAILS:
|
|
14
|
+
{% for file in files %}
|
|
15
|
+
- {{ file.path }} ({{ file.tokens }} tokens)
|
|
16
|
+
Imports: {% if dependencies and dependencies[file.path] %}{{ dependencies[file.path] | length }}{% else %}0{% endif %}
|
|
17
|
+
{% endfor %}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Apple",
|
|
3
|
+
"modes": {
|
|
4
|
+
"light": {
|
|
5
|
+
"bg": "#f5f5f7",
|
|
6
|
+
"card": "#ffffff",
|
|
7
|
+
"text": "#1d1d1f",
|
|
8
|
+
"text_muted": "#707070",
|
|
9
|
+
"primary": "#0071e3",
|
|
10
|
+
"primary_fg": "#ffffff",
|
|
11
|
+
"secondary": "#e8e8ed",
|
|
12
|
+
"secondary_fg": "#1d1d1f",
|
|
13
|
+
"border": "#d2d2d7",
|
|
14
|
+
"success": "#34c759",
|
|
15
|
+
"danger": "#ff3b30",
|
|
16
|
+
"input_bg": "#ffffff",
|
|
17
|
+
"transparent": "transparent",
|
|
18
|
+
"diff_add": "#e6ffed",
|
|
19
|
+
"diff_sub": "#ffeef0",
|
|
20
|
+
"diff_chg": "#fff5b1",
|
|
21
|
+
"diff_hdr": "#f0f0f0"
|
|
22
|
+
},
|
|
23
|
+
"dark": {
|
|
24
|
+
"bg": "#000000",
|
|
25
|
+
"card": "#1c1c1e",
|
|
26
|
+
"text": "#f5f5f7",
|
|
27
|
+
"text_muted": "#98989d",
|
|
28
|
+
"primary": "#0a84ff",
|
|
29
|
+
"primary_fg": "#ffffff",
|
|
30
|
+
"secondary": "#2c2c2e",
|
|
31
|
+
"secondary_fg": "#ffffff",
|
|
32
|
+
"border": "#38383a",
|
|
33
|
+
"success": "#32d74b",
|
|
34
|
+
"danger": "#ff453a",
|
|
35
|
+
"input_bg": "#1c1c1e",
|
|
36
|
+
"transparent": "transparent",
|
|
37
|
+
"diff_add": "#194d25",
|
|
38
|
+
"diff_sub": "#5c1b22",
|
|
39
|
+
"diff_chg": "#594d12",
|
|
40
|
+
"diff_hdr": "#2c2c2e"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"default_styles": {
|
|
44
|
+
"radii": {
|
|
45
|
+
"card": "24px",
|
|
46
|
+
"button": "16px",
|
|
47
|
+
"input": "10px",
|
|
48
|
+
"small": "8px",
|
|
49
|
+
"checkbox": "4px",
|
|
50
|
+
"scrollbar": "5px",
|
|
51
|
+
"progress": "4px"
|
|
52
|
+
},
|
|
53
|
+
"fonts": {
|
|
54
|
+
"family": "SF Pro Text, Segoe UI, -apple-system, Roboto, sans-serif",
|
|
55
|
+
"size": "14px",
|
|
56
|
+
"heading_size": "18px",
|
|
57
|
+
"title_size": "24px",
|
|
58
|
+
"icon_size_large": "64px",
|
|
59
|
+
"small_size": "11px"
|
|
60
|
+
},
|
|
61
|
+
"spacing": {
|
|
62
|
+
"padding_btn": "8px 16px",
|
|
63
|
+
"padding_input": "8px 12px",
|
|
64
|
+
"padding_item": "6px 8px",
|
|
65
|
+
"margin_tab": "6px",
|
|
66
|
+
"checkbox_spacing": "10px"
|
|
67
|
+
},
|
|
68
|
+
"sizes": {
|
|
69
|
+
"checkbox_size": "18px",
|
|
70
|
+
"scrollbar_width": "10px",
|
|
71
|
+
"progress_height": "6px",
|
|
72
|
+
"tree_indicator": "18px",
|
|
73
|
+
"textarea_small_height": "80px"
|
|
74
|
+
},
|
|
75
|
+
"layout": {
|
|
76
|
+
"main_margin": 20,
|
|
77
|
+
"main_spacing": 16,
|
|
78
|
+
"panel_margin": 20,
|
|
79
|
+
"panel_spacing": 16,
|
|
80
|
+
"sidebar_width": 340
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Modern (Shadcn)",
|
|
3
|
+
"modes": {
|
|
4
|
+
"light": {
|
|
5
|
+
"bg": "#ffffff",
|
|
6
|
+
"card": "#ffffff",
|
|
7
|
+
"text": "#09090b",
|
|
8
|
+
"text_muted": "#71717a",
|
|
9
|
+
"primary": "#18181b",
|
|
10
|
+
"primary_fg": "#fafafa",
|
|
11
|
+
"secondary": "#f4f4f5",
|
|
12
|
+
"secondary_fg": "#18181b",
|
|
13
|
+
"border": "#e4e4e7",
|
|
14
|
+
"success": "#16a34a",
|
|
15
|
+
"danger": "#ef4444",
|
|
16
|
+
"input_bg": "#ffffff",
|
|
17
|
+
"transparent": "transparent",
|
|
18
|
+
"diff_add": "#dcfce7",
|
|
19
|
+
"diff_sub": "#fee2e2",
|
|
20
|
+
"diff_chg": "#fef08a",
|
|
21
|
+
"diff_hdr": "#f4f4f5"
|
|
22
|
+
},
|
|
23
|
+
"dark": {
|
|
24
|
+
"bg": "#09090b",
|
|
25
|
+
"card": "#18181b",
|
|
26
|
+
"text": "#fafafa",
|
|
27
|
+
"text_muted": "#a1a1aa",
|
|
28
|
+
"primary": "#fafafa",
|
|
29
|
+
"primary_fg": "#18181b",
|
|
30
|
+
"secondary": "#27272a",
|
|
31
|
+
"secondary_fg": "#fafafa",
|
|
32
|
+
"border": "#27272a",
|
|
33
|
+
"success": "#22c55e",
|
|
34
|
+
"danger": "#ef4444",
|
|
35
|
+
"input_bg": "#1c1c1e",
|
|
36
|
+
"transparent": "transparent",
|
|
37
|
+
"diff_add": "#052e16",
|
|
38
|
+
"diff_sub": "#450a0a",
|
|
39
|
+
"diff_chg": "#422006",
|
|
40
|
+
"diff_hdr": "#27272a"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"default_styles": {
|
|
44
|
+
"radii": {
|
|
45
|
+
"card": "8px",
|
|
46
|
+
"button": "6px",
|
|
47
|
+
"input": "6px",
|
|
48
|
+
"small": "4px",
|
|
49
|
+
"checkbox": "4px",
|
|
50
|
+
"scrollbar": "4px",
|
|
51
|
+
"progress": "2px"
|
|
52
|
+
},
|
|
53
|
+
"fonts": {
|
|
54
|
+
"family": "Inter, Segoe UI, -apple-system, Roboto, sans-serif",
|
|
55
|
+
"size": "13px",
|
|
56
|
+
"heading_size": "16px",
|
|
57
|
+
"title_size": "22px",
|
|
58
|
+
"icon_size_large": "56px",
|
|
59
|
+
"small_size": "10px"
|
|
60
|
+
},
|
|
61
|
+
"spacing": {
|
|
62
|
+
"padding_btn": "6px 14px",
|
|
63
|
+
"padding_input": "6px 10px",
|
|
64
|
+
"padding_item": "4px 6px",
|
|
65
|
+
"margin_tab": "2px",
|
|
66
|
+
"checkbox_spacing": "8px"
|
|
67
|
+
},
|
|
68
|
+
"sizes": {
|
|
69
|
+
"checkbox_size": "16px",
|
|
70
|
+
"scrollbar_width": "8px",
|
|
71
|
+
"progress_height": "4px",
|
|
72
|
+
"tree_indicator": "14px",
|
|
73
|
+
"textarea_small_height": "76px"
|
|
74
|
+
},
|
|
75
|
+
"layout": {
|
|
76
|
+
"main_margin": 12,
|
|
77
|
+
"main_spacing": 12,
|
|
78
|
+
"panel_margin": 16,
|
|
79
|
+
"panel_spacing": 12,
|
|
80
|
+
"sidebar_width": 300
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|