Skip to content

feat: 支持 Agent 通用路径与 uv 隔离运行 - #8

Open
Bluezeamer wants to merge 1 commit into
badseal:mainfrom
Bluezeamer:feat/agent-neutral-uv
Open

feat: 支持 Agent 通用路径与 uv 隔离运行#8
Bluezeamer wants to merge 1 commit into
badseal:mainfrom
Bluezeamer:feat/agent-neutral-uv

Conversation

@Bluezeamer

@Bluezeamer Bluezeamer commented Jul 17, 2026

Copy link
Copy Markdown

改动摘要

  • SKILL.md 调整为 Agent 中立:脚本统一相对于当前 skill 根目录解析,不再硬编码 ~/.claude/skills/ssh-skill
  • 为依赖 Paramiko 的入口脚本添加 PEP 723 元数据,通过隔离的 uv run 环境执行,无需全局运行 pip install
  • 同步更新中英文文档,统一使用 uv run "<skill-root>/scripts/..." 调用脚本。
  • 精简并规范 skill frontmatter,使其通过跨 Agent 的 skill 格式校验,同时保留现有工具权限。

改动动机

当前 SSH 核心实现本身并不依赖某个特定的编程 Agent,但 skill 指令和示例固定使用 Claude Code 的安装路径,导致相同脚本无法可靠地被 Codex 或其他支持 Agent Skills 的实现复用。

同时,原文档要求直接安装 Paramiko 到宿主 Python 环境。改用 PEP 723 后,uv 会在首次运行时创建隔离环境并缓存依赖,不会修改系统 Python 环境。

改动范围

本 PR 不修改以下行为:

  • SSH 连接与认证逻辑
  • SSH 配置格式
  • 主机密钥处理逻辑
  • 文件传输、隧道和守护进程逻辑

本次只修改 Agent 集成方式、脚本调用文档、内嵌依赖元数据,以及与依赖缺失相关的错误提示。

验证结果

  • SKILL.md 通过 skill 格式校验器。
  • 10 个公开 CLI 入口均通过 uv run <脚本> --help 检查。
  • 全部 25 个 Python 文件均通过 ast.parse 语法解析。
  • 从仓库目录外使用绝对路径执行入口脚本成功。
  • 验证完成后,宿主 python3 仍无法导入 Paramiko,确认依赖未污染全局环境。
  • git diff --check 通过。

运行依赖

  • uv
  • OpenSSH 客户端

首次执行 uv run 时会下载并缓存 Paramiko 及其传递依赖,后续执行会复用隔离缓存。

@Bluezeamer Bluezeamer changed the title feat: add agent-neutral uv runtime feat: 支持 Agent 通用路径与 uv 隔离运行 Jul 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants