gitinstall 1.1.3__tar.gz → 1.2.0__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.
- {gitinstall-1.1.3/gitinstall.egg-info → gitinstall-1.2.0}/PKG-INFO +7 -5
- {gitinstall-1.1.3 → gitinstall-1.2.0}/README.md +5 -3
- {gitinstall-1.1.3 → gitinstall-1.2.0/gitinstall.egg-info}/PKG-INFO +7 -5
- {gitinstall-1.1.3 → gitinstall-1.2.0}/pyproject.toml +2 -2
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/_sdk.py +28 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/clawhub.html +1 -1
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/main.py +1 -1
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/mcp_agent.py +1 -1
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/mcp_server.py +43 -1
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/onboard.py +1 -1
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/tool_schemas.py +39 -1
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/web_ui.html +2 -2
- {gitinstall-1.1.3 → gitinstall-1.2.0}/LICENSE +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/MANIFEST.in +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/gitinstall.egg-info/SOURCES.txt +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/gitinstall.egg-info/dependency_links.txt +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/gitinstall.egg-info/entry_points.txt +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/gitinstall.egg-info/top_level.txt +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/setup.cfg +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/__init__.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/academic.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/admin.html +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/auto_update.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/autopilot.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/badge.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/checkpoint.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/cicd.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/config_schema.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/db.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/db_backend.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/dep_chain.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/dependency_audit.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/detector.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/doctor.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/education.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/enterprise.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/error_fixer.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/event_bus.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/executor.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/feature_flags.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/fetcher.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/huggingface.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/hw_detect.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/i18n.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/installer_registry.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/knowledge_base.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/license_check.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/llm.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/log.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/monorepo.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/multi_source.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/planner.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/planner_helpers.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/planner_known_projects.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/planner_templates.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/remote_gpu.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/resilience.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/run_tests.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/skills.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/trending.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/uninstaller.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/validate_top100.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/watchdog.py +0 -0
- {gitinstall-1.1.3 → gitinstall-1.2.0}/tools/web.py +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitinstall
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary: MCP server & CLI that
|
|
3
|
+
Version: 1.2.0
|
|
4
|
+
Summary: MCP server & CLI that helps you easily install GitHub projects — zero dependencies
|
|
5
5
|
Author: icerui
|
|
6
6
|
License: MIT
|
|
7
7
|
Project-URL: Homepage, https://github.com/icerui/github-installer
|
|
@@ -28,8 +28,8 @@ Dynamic: license-file
|
|
|
28
28
|
# gitinstall
|
|
29
29
|
|
|
30
30
|
<p align="center">
|
|
31
|
-
<strong>MCP server
|
|
32
|
-
<em
|
|
31
|
+
<strong>MCP server & CLI — helps you easily install GitHub projects</strong><br/>
|
|
32
|
+
<em>让你轻松安装 GitHub 项目</em>
|
|
33
33
|
</p>
|
|
34
34
|
|
|
35
35
|
<p align="center">
|
|
@@ -126,7 +126,7 @@ gitinstall-mcp # Starts MCP server on stdio (JSON-RPC 2.0)
|
|
|
126
126
|
|
|
127
127
|
## MCP Tools
|
|
128
128
|
|
|
129
|
-
gitinstall exposes
|
|
129
|
+
gitinstall exposes 7 tools via MCP:
|
|
130
130
|
|
|
131
131
|
| Tool | What it does |
|
|
132
132
|
|------|-------------|
|
|
@@ -136,6 +136,7 @@ gitinstall exposes 6 tools via MCP:
|
|
|
136
136
|
| `get_project_info` | Fetch GitHub project metadata without installing |
|
|
137
137
|
| `check_system_health` | Full system diagnostic with fix suggestions |
|
|
138
138
|
| `audit_dependencies` | Scan project dependencies for known CVEs |
|
|
139
|
+
| `uninstall_github_project` | Safely uninstall a project: removes files, venvs, Docker, caches |
|
|
139
140
|
|
|
140
141
|
### Example: `install_github_project`
|
|
141
142
|
|
|
@@ -196,6 +197,7 @@ gitinstall works standalone too, no AI agent needed:
|
|
|
196
197
|
|
|
197
198
|
```bash
|
|
198
199
|
gitinstall comfyanonymous/ComfyUI # Install a project
|
|
200
|
+
gitinstall uninstall comfyanonymous/ComfyUI --confirm # Safely uninstall
|
|
199
201
|
gitinstall detect # Check your system
|
|
200
202
|
gitinstall doctor # System diagnostic
|
|
201
203
|
gitinstall audit pytorch/pytorch # Security audit
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# gitinstall
|
|
2
2
|
|
|
3
3
|
<p align="center">
|
|
4
|
-
<strong>MCP server
|
|
5
|
-
<em
|
|
4
|
+
<strong>MCP server & CLI — helps you easily install GitHub projects</strong><br/>
|
|
5
|
+
<em>让你轻松安装 GitHub 项目</em>
|
|
6
6
|
</p>
|
|
7
7
|
|
|
8
8
|
<p align="center">
|
|
@@ -99,7 +99,7 @@ gitinstall-mcp # Starts MCP server on stdio (JSON-RPC 2.0)
|
|
|
99
99
|
|
|
100
100
|
## MCP Tools
|
|
101
101
|
|
|
102
|
-
gitinstall exposes
|
|
102
|
+
gitinstall exposes 7 tools via MCP:
|
|
103
103
|
|
|
104
104
|
| Tool | What it does |
|
|
105
105
|
|------|-------------|
|
|
@@ -109,6 +109,7 @@ gitinstall exposes 6 tools via MCP:
|
|
|
109
109
|
| `get_project_info` | Fetch GitHub project metadata without installing |
|
|
110
110
|
| `check_system_health` | Full system diagnostic with fix suggestions |
|
|
111
111
|
| `audit_dependencies` | Scan project dependencies for known CVEs |
|
|
112
|
+
| `uninstall_github_project` | Safely uninstall a project: removes files, venvs, Docker, caches |
|
|
112
113
|
|
|
113
114
|
### Example: `install_github_project`
|
|
114
115
|
|
|
@@ -169,6 +170,7 @@ gitinstall works standalone too, no AI agent needed:
|
|
|
169
170
|
|
|
170
171
|
```bash
|
|
171
172
|
gitinstall comfyanonymous/ComfyUI # Install a project
|
|
173
|
+
gitinstall uninstall comfyanonymous/ComfyUI --confirm # Safely uninstall
|
|
172
174
|
gitinstall detect # Check your system
|
|
173
175
|
gitinstall doctor # System diagnostic
|
|
174
176
|
gitinstall audit pytorch/pytorch # Security audit
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitinstall
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary: MCP server & CLI that
|
|
3
|
+
Version: 1.2.0
|
|
4
|
+
Summary: MCP server & CLI that helps you easily install GitHub projects — zero dependencies
|
|
5
5
|
Author: icerui
|
|
6
6
|
License: MIT
|
|
7
7
|
Project-URL: Homepage, https://github.com/icerui/github-installer
|
|
@@ -28,8 +28,8 @@ Dynamic: license-file
|
|
|
28
28
|
# gitinstall
|
|
29
29
|
|
|
30
30
|
<p align="center">
|
|
31
|
-
<strong>MCP server
|
|
32
|
-
<em
|
|
31
|
+
<strong>MCP server & CLI — helps you easily install GitHub projects</strong><br/>
|
|
32
|
+
<em>让你轻松安装 GitHub 项目</em>
|
|
33
33
|
</p>
|
|
34
34
|
|
|
35
35
|
<p align="center">
|
|
@@ -126,7 +126,7 @@ gitinstall-mcp # Starts MCP server on stdio (JSON-RPC 2.0)
|
|
|
126
126
|
|
|
127
127
|
## MCP Tools
|
|
128
128
|
|
|
129
|
-
gitinstall exposes
|
|
129
|
+
gitinstall exposes 7 tools via MCP:
|
|
130
130
|
|
|
131
131
|
| Tool | What it does |
|
|
132
132
|
|------|-------------|
|
|
@@ -136,6 +136,7 @@ gitinstall exposes 6 tools via MCP:
|
|
|
136
136
|
| `get_project_info` | Fetch GitHub project metadata without installing |
|
|
137
137
|
| `check_system_health` | Full system diagnostic with fix suggestions |
|
|
138
138
|
| `audit_dependencies` | Scan project dependencies for known CVEs |
|
|
139
|
+
| `uninstall_github_project` | Safely uninstall a project: removes files, venvs, Docker, caches |
|
|
139
140
|
|
|
140
141
|
### Example: `install_github_project`
|
|
141
142
|
|
|
@@ -196,6 +197,7 @@ gitinstall works standalone too, no AI agent needed:
|
|
|
196
197
|
|
|
197
198
|
```bash
|
|
198
199
|
gitinstall comfyanonymous/ComfyUI # Install a project
|
|
200
|
+
gitinstall uninstall comfyanonymous/ComfyUI --confirm # Safely uninstall
|
|
199
201
|
gitinstall detect # Check your system
|
|
200
202
|
gitinstall doctor # System diagnostic
|
|
201
203
|
gitinstall audit pytorch/pytorch # Security audit
|
|
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gitinstall"
|
|
7
|
-
version = "1.
|
|
8
|
-
description = "MCP server & CLI that
|
|
7
|
+
version = "1.2.0"
|
|
8
|
+
description = "MCP server & CLI that helps you easily install GitHub projects — zero dependencies"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = {text = "MIT"}
|
|
11
11
|
requires-python = ">=3.10"
|
|
@@ -536,6 +536,34 @@ def audit(identifier: str, *, online: bool = False) -> dict:
|
|
|
536
536
|
return cmd_audit(identifier, online=online)
|
|
537
537
|
|
|
538
538
|
|
|
539
|
+
def uninstall(
|
|
540
|
+
identifier: str,
|
|
541
|
+
*,
|
|
542
|
+
install_dir: str = None,
|
|
543
|
+
keep_config: bool = False,
|
|
544
|
+
confirm: bool = False,
|
|
545
|
+
) -> dict:
|
|
546
|
+
"""安全卸载已安装的 GitHub 项目。
|
|
547
|
+
|
|
548
|
+
Args:
|
|
549
|
+
identifier: 项目标识,如 "owner/repo"。
|
|
550
|
+
install_dir: 安装目录。省略则自动探测。
|
|
551
|
+
keep_config: True 时保留配置文件。
|
|
552
|
+
confirm: True 时执行卸载,False 时只显示计划。
|
|
553
|
+
|
|
554
|
+
Returns:
|
|
555
|
+
dict: 包含卸载计划或执行结果。
|
|
556
|
+
"""
|
|
557
|
+
from main import cmd_uninstall
|
|
558
|
+
return cmd_uninstall(
|
|
559
|
+
identifier,
|
|
560
|
+
keep_config=keep_config,
|
|
561
|
+
clean_only=False,
|
|
562
|
+
confirm=confirm,
|
|
563
|
+
install_dir=install_dir,
|
|
564
|
+
)
|
|
565
|
+
|
|
566
|
+
|
|
539
567
|
# ── 版本信息 ─────────────────────────────────
|
|
540
568
|
|
|
541
569
|
__version__ = "1.1.0"
|
|
@@ -410,7 +410,7 @@ footer {
|
|
|
410
410
|
由 <strong>蹄门科技</strong> 发布 · 开源 MIT 协议
|
|
411
411
|
</div>
|
|
412
412
|
<p class="skill-desc">
|
|
413
|
-
|
|
413
|
+
让你轻松安装 GitHub 项目 — 识别系统环境,分析项目结构,生成安装计划,自动执行安装。
|
|
414
414
|
零外部依赖,纯 Python 标准库。9 级 LLM 降级,无 AI 也能用。
|
|
415
415
|
</p>
|
|
416
416
|
<div class="skill-tags">
|
|
@@ -1125,7 +1125,7 @@ def main():
|
|
|
1125
1125
|
|
|
1126
1126
|
parser = argparse.ArgumentParser(
|
|
1127
1127
|
prog="gitinstall",
|
|
1128
|
-
description="
|
|
1128
|
+
description="让你轻松安装开源项目(支持 GitHub/GitLab/Bitbucket/Gitee/Codeberg/本地路径)",
|
|
1129
1129
|
formatter_class=argparse.RawDescriptionHelpFormatter,
|
|
1130
1130
|
epilog="""
|
|
1131
1131
|
示例:
|
|
@@ -563,7 +563,7 @@ def generate_tool_schemas(format: str = "openai") -> list[dict]:
|
|
|
563
563
|
},
|
|
564
564
|
{
|
|
565
565
|
"name": "gitinstall_install",
|
|
566
|
-
"description": "
|
|
566
|
+
"description": "轻松安装 GitHub 项目。支持 owner/repo 格式或完整 URL",
|
|
567
567
|
"parameters": {
|
|
568
568
|
"identifier": {"type": "string", "description": "GitHub 项目标识(owner/repo 或 URL)", "required": True},
|
|
569
569
|
"install_dir": {"type": "string", "description": "安装目录(可选)"},
|
|
@@ -52,6 +52,7 @@ from _sdk import (
|
|
|
52
52
|
fetch as _fetch,
|
|
53
53
|
doctor as _doctor,
|
|
54
54
|
audit as _audit,
|
|
55
|
+
uninstall as _uninstall,
|
|
55
56
|
__version__,
|
|
56
57
|
)
|
|
57
58
|
|
|
@@ -63,7 +64,7 @@ TOOLS = [
|
|
|
63
64
|
{
|
|
64
65
|
"name": "install_github_project",
|
|
65
66
|
"description": (
|
|
66
|
-
"
|
|
67
|
+
"Help install a GitHub open-source project on the user's machine. "
|
|
67
68
|
"Handles the ENTIRE process: detects OS/GPU/runtimes → fetches project info → "
|
|
68
69
|
"generates installation plan (30+ languages: Python, Node, Rust, Go, C++, Haskell, Zig...) → "
|
|
69
70
|
"executes safely (dangerous commands blocked) → auto-fixes errors (28 patterns: "
|
|
@@ -191,6 +192,39 @@ TOOLS = [
|
|
|
191
192
|
"required": ["project"],
|
|
192
193
|
},
|
|
193
194
|
},
|
|
195
|
+
{
|
|
196
|
+
"name": "uninstall_github_project",
|
|
197
|
+
"description": (
|
|
198
|
+
"Safely uninstall a previously installed GitHub project. "
|
|
199
|
+
"Detects and removes: project directory, virtualenvs, Docker containers, "
|
|
200
|
+
"build artifacts, caches. Safety checks prevent deleting system directories. "
|
|
201
|
+
"Shows a cleanup plan before executing. Optionally keeps config files. "
|
|
202
|
+
"Example: uninstall_github_project({\"project\": \"comfyanonymous/ComfyUI\"}) "
|
|
203
|
+
"Call this when a user wants to remove, delete, or uninstall a GitHub project."
|
|
204
|
+
),
|
|
205
|
+
"inputSchema": {
|
|
206
|
+
"type": "object",
|
|
207
|
+
"properties": {
|
|
208
|
+
"project": {
|
|
209
|
+
"type": "string",
|
|
210
|
+
"description": "GitHub project: 'owner/repo' format",
|
|
211
|
+
},
|
|
212
|
+
"install_dir": {
|
|
213
|
+
"type": "string",
|
|
214
|
+
"description": "Directory where the project is installed. Default: ~/github-installs/<project>/",
|
|
215
|
+
},
|
|
216
|
+
"keep_config": {
|
|
217
|
+
"type": "boolean",
|
|
218
|
+
"description": "Keep config files (.env, etc.) during uninstall. Default: false.",
|
|
219
|
+
},
|
|
220
|
+
"confirm": {
|
|
221
|
+
"type": "boolean",
|
|
222
|
+
"description": "If true, execute the uninstall. If false, only show plan. Default: false.",
|
|
223
|
+
},
|
|
224
|
+
},
|
|
225
|
+
"required": ["project"],
|
|
226
|
+
},
|
|
227
|
+
},
|
|
194
228
|
]
|
|
195
229
|
|
|
196
230
|
|
|
@@ -273,6 +307,14 @@ def _call_tool(name: str, args: dict) -> tuple[list[dict], bool]:
|
|
|
273
307
|
online=args.get("online", False),
|
|
274
308
|
)
|
|
275
309
|
|
|
310
|
+
elif name == "uninstall_github_project":
|
|
311
|
+
result = _uninstall(
|
|
312
|
+
args["project"],
|
|
313
|
+
install_dir=args.get("install_dir"),
|
|
314
|
+
keep_config=args.get("keep_config", False),
|
|
315
|
+
confirm=args.get("confirm", False),
|
|
316
|
+
)
|
|
317
|
+
|
|
276
318
|
else:
|
|
277
319
|
return [{"type": "text", "text": f"Unknown tool: {name}"}], True
|
|
278
320
|
|
|
@@ -174,6 +174,36 @@ _TOOLS = [
|
|
|
174
174
|
"required": ["project"],
|
|
175
175
|
},
|
|
176
176
|
},
|
|
177
|
+
{
|
|
178
|
+
"name": "uninstall",
|
|
179
|
+
"description": (
|
|
180
|
+
"Safely uninstall a previously installed GitHub project. "
|
|
181
|
+
"Removes project directory, virtualenvs, Docker containers, build artifacts, caches. "
|
|
182
|
+
"Shows cleanup plan before executing. Call with confirm=true to actually delete."
|
|
183
|
+
),
|
|
184
|
+
"parameters": {
|
|
185
|
+
"type": "object",
|
|
186
|
+
"properties": {
|
|
187
|
+
"project": {
|
|
188
|
+
"type": "string",
|
|
189
|
+
"description": "GitHub project: 'owner/repo' format",
|
|
190
|
+
},
|
|
191
|
+
"install_dir": {
|
|
192
|
+
"type": "string",
|
|
193
|
+
"description": "Directory where the project is installed.",
|
|
194
|
+
},
|
|
195
|
+
"keep_config": {
|
|
196
|
+
"type": "boolean",
|
|
197
|
+
"description": "Keep config files during uninstall.",
|
|
198
|
+
},
|
|
199
|
+
"confirm": {
|
|
200
|
+
"type": "boolean",
|
|
201
|
+
"description": "If true, execute uninstall. If false, only show plan.",
|
|
202
|
+
},
|
|
203
|
+
},
|
|
204
|
+
"required": ["project"],
|
|
205
|
+
},
|
|
206
|
+
},
|
|
177
207
|
]
|
|
178
208
|
|
|
179
209
|
# ── 工具名列表 ──────────────────────────────
|
|
@@ -260,7 +290,7 @@ def call_tool(name: str, arguments: dict) -> dict | None:
|
|
|
260
290
|
Returns:
|
|
261
291
|
工具执行结果 dict,或 None(diagnose 无匹配时)
|
|
262
292
|
"""
|
|
263
|
-
from _sdk import detect, plan, install, diagnose, fetch, doctor, audit
|
|
293
|
+
from _sdk import detect, plan, install, diagnose, fetch, doctor, audit, uninstall
|
|
264
294
|
|
|
265
295
|
if name == "detect":
|
|
266
296
|
return detect()
|
|
@@ -297,6 +327,14 @@ def call_tool(name: str, arguments: dict) -> dict | None:
|
|
|
297
327
|
online=arguments.get("online", False),
|
|
298
328
|
)
|
|
299
329
|
|
|
330
|
+
if name == "uninstall":
|
|
331
|
+
return uninstall(
|
|
332
|
+
arguments["project"],
|
|
333
|
+
install_dir=arguments.get("install_dir"),
|
|
334
|
+
keep_config=arguments.get("keep_config", False),
|
|
335
|
+
confirm=arguments.get("confirm", False),
|
|
336
|
+
)
|
|
337
|
+
|
|
300
338
|
raise ValueError(f"Unknown tool: {name}. Available: {tool_names}")
|
|
301
339
|
|
|
302
340
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>gitinstall — GitHub
|
|
6
|
+
<title>gitinstall — 让你轻松安装 GitHub 项目</title>
|
|
7
7
|
<style>
|
|
8
8
|
@import url('https://fonts.loli.net/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');
|
|
9
9
|
|
|
@@ -1344,7 +1344,7 @@ footer a { color: var(--text-sec); }
|
|
|
1344
1344
|
<button class="btn-user" id="btn-user" onclick="toggleUserPanel()">👤 登录</button>
|
|
1345
1345
|
</div>
|
|
1346
1346
|
</div>
|
|
1347
|
-
<p class="hero-tagline"><strong
|
|
1347
|
+
<p class="hero-tagline"><strong>让你轻松安装</strong> GitHub 项目</p>
|
|
1348
1348
|
<p class="hero-sub">零外部依赖 · 零配置上手 · 零 AI 也能用 — 来自<strong style="color:var(--text)">蹄门科技</strong></p>
|
|
1349
1349
|
|
|
1350
1350
|
<div class="hero-badges">
|
|
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
|
|
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
|