Commit Graph
3 Commits
Author SHA1 Message Date
ypshidifu d56cc01058 CLI合并为oc.py/oc.bat菜单入口(数字+中文),mcpctl支持键值mcpcfg与on/off标记;删除6个分散bat 2026-09-23 13:47:10 +08:00
ypshidifu 35513f1cdf wsl-round-mcp:修复代理劫持导致的 502 + 输入嗅探增强
- 两个脚本的 HTTP 请求改为 ProxyHandler({}) 强制绕过系统代理:
  环境有 HTTP_PROXY/HTTPS_PROXY 时,urllib 会把 localhost 请求也丢给代理,
  结果代理回 502,看起来像 OC 挂了其实是被劫走(本轮实测复现)
  需要走代理时用 MCPCTL_USE_PROXY=1 / OCSKILL_USE_PROXY=1 显式开启
- ocskill 输入嗅探增强:未知后缀按魔数/内容识别 .b64、zip、markdown
- frontmatter 支持 YAML 块标量(description: > |),中文折行不补空格
- 新增子仓库自身 .gitignore(父仓库的 ignore 对子仓库无效,__pycache__ 曾被误提交)
- README 补充代理 502 与 401 随机密码的排查说明
2026-09-23 12:24:31 +08:00
ypshidifu 873d965ef3 wsl-round-mcp:本机与 WSL OpenCode 互通的 CLI 工具
ocskill.py(skill 互通,零第三方依赖):
- list 运行时连接 WSL 的 OC(/api/skill 与 /skill 双端点,Bearer→Basic 自动降级),连不上则降级扫描 skills 目录
- push 接收 zip / 目录 / 单个 SKILL.md / base64(显式或按内容嗅探),先解码归一,再校验标准 skill 格式
  校验四项:有 SKILL.md、有 YAML frontmatter、frontmatter 有 name 且合法、有 description
  含 zip-slip 目录穿越防护;同名已存在需 --force(覆盖前自动备份)
- pull 反向把 WSL 里的 skill 拷回本机;dirs 查看两端目录与连接状态
- 写入 \\wsl.localhost\<发行版>\root\.config\opencode\skills\,OC 原生 watch 自动热加载,无需重启

mcpctl.py(MCP 配置对调开关,与插件同一套逻辑):
- status / on / off / mode / backup;读同一份 mcpcfg.txt,状态只看活文件是否含 mcp.servers
- 对调后调用 POST /api/location/reload 热重载;模式门控与插件一致(关闭一律拒绝)

附 6 个双击 bat(英文文案规避 GBK 编码问题,内部 chcp 65001)与中文 README。
2026-09-23 12:06:32 +08:00