<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>开源 on 肥鱼港湾</title><link>https://wyr233.com/tags/%E5%BC%80%E6%BA%90/</link><description>Recent content in 开源 on 肥鱼港湾</description><generator>Hugo -- gohugo.io</generator><language>zh</language><lastBuildDate>Mon, 14 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://wyr233.com/tags/%E5%BC%80%E6%BA%90/index.xml" rel="self" type="application/rss+xml"/><item><title>dsh-mini 极简发行包</title><link>https://wyr233.com/projects/dsh-mini/</link><pubDate>Mon, 14 Sep 2026 00:00:00 +0000</pubDate><guid>https://wyr233.com/projects/dsh-mini/</guid><description>&lt;img src="https://wyr233.com/img/cover_proj_dshmini.webp" alt="Featured image of post dsh-mini 极简发行包" /&gt;&lt;h2 id="它解决什么问题"&gt;它解决什么问题&#10;&lt;/h2&gt;&lt;p&gt;想用 AI 助手,却要先装 Node、配环境变量、开终端敲命令——&lt;strong&gt;第一步就劝退&lt;/strong&gt;。&lt;/p&gt;&#10;&lt;p&gt;dsh-mini 把整套流程压缩成一个 exe:&lt;strong&gt;下载 → 双击 → 用&lt;/strong&gt;。适合不想折腾环境的人,也适合公司电脑、学校电脑这类不方便装软件的环境。&lt;/p&gt;&#10;&lt;h2 id="亮点"&gt;亮点&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;单文件打包&lt;/strong&gt;:运行时 + 服务 + 界面全塞进一个 exe&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;自带 Node 运行时&lt;/strong&gt;:不污染系统环境,删文件夹就等于卸载干净&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;不需要管理员权限&lt;/strong&gt;:装在自己的用户目录里&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;全中文向导&lt;/strong&gt;:安装、升级、卸载全程有指引&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;升级不丢数据&lt;/strong&gt;:配置与对话记录独立存放&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="技术要点"&gt;技术要点&#10;&lt;/h2&gt;&lt;p&gt;把 Node 服务打包进 exe,启动时在临时目录展开并拉起本地服务,再由内置窗口访问;Release 由 CI 在打 tag 时自动构建,GitHub 主发 + Gitee 镜像。&lt;/p&gt;&#10;&lt;h2 id="下载"&gt;下载&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;官网:&lt;a class="link" href="https://dshmini.wyr233.com" target="_blank" rel="noopener"&#10; &gt;dshmini.wyr233.com&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/WYR-233/dsh-mini/releases/latest" target="_blank" rel="noopener"&#10; &gt;GitHub Releases&lt;/a&gt; / &lt;a class="link" href="https://gitee.com/wyr233/dsh-mini" target="_blank" rel="noopener"&#10; &gt;Gitee 镜像&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;开源免费,MIT 协议。&lt;/p&gt;&#10;</description></item><item><title>肥鱼插件铺</title><link>https://wyr233.com/projects/dsh-plugins/</link><pubDate>Mon, 14 Sep 2026 00:00:00 +0000</pubDate><guid>https://wyr233.com/projects/dsh-plugins/</guid><description>&lt;img src="https://wyr233.com/img/cover_proj_plugins.webp" alt="Featured image of post 肥鱼插件铺" /&gt;&lt;h2 id="这是什么"&gt;这是什么&#10;&lt;/h2&gt;&lt;p&gt;一套给 DeepSeek Harness 用的插件合集——&lt;strong&gt;装上就能用,零构建、源码看得懂&lt;/strong&gt;。&lt;/p&gt;&#10;&lt;h2 id="代表作语音朗读dsh-multi-tts"&gt;代表作:语音朗读(dsh-multi-tts)&#10;&lt;/h2&gt;&lt;p&gt;让 DSH 开口说话:回复自动朗读,服务商和音色自己挑。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;多服务商支持,音色、语速、情绪可调&lt;/li&gt;&#10;&lt;li&gt;在设置页里直接配置,带自动朗读开关&lt;/li&gt;&#10;&lt;li&gt;一条命令装好,升级不丢配置&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="其他"&gt;其他&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;插件都在 GitHub 上开源(MIT),国内可从 Gitee 镜像拉&lt;/li&gt;&#10;&lt;li&gt;想要什么功能,去对应仓库开 issue 说一声&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="入口"&gt;入口&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;插件铺:&lt;a class="link" href="https://plugins.wyr233.com" target="_blank" rel="noopener"&#10; &gt;plugins.wyr233.com&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/WYR-233?tab=repositories&amp;amp;q=topic%3Adsh-plugin" target="_blank" rel="noopener"&#10; &gt;GitHub&lt;/a&gt; / &lt;a class="link" href="https://gitee.com/wyr233" target="_blank" rel="noopener"&#10; &gt;Gitee&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;</description></item><item><title>网页变 App 三件套</title><link>https://wyr233.com/projects/webview-shell/</link><pubDate>Mon, 14 Sep 2026 00:00:00 +0000</pubDate><guid>https://wyr233.com/projects/webview-shell/</guid><description>&lt;img src="https://wyr233.com/img/cover_proj_webview.webp" alt="Featured image of post 网页变 App 三件套" /&gt;&lt;h2 id="这是什么"&gt;这是什么&#10;&lt;/h2&gt;&lt;p&gt;一套「把自己搭的网页服务变成手机 App」的完整方案:&lt;strong&gt;独立图标、全屏无地址栏、能调相册相机、关屏也能收到消息推送&lt;/strong&gt;。整套东西零第三方依赖,全部可自托管。&lt;/p&gt;&#10;&lt;p&gt;一个仓库三部分:Android 壳、手机端页面、聊天后端——可以整套用,也可以只拿其中一块。&lt;/p&gt;&#10;&lt;h2 id="-android-壳把网页装进真正的-app"&gt;① Android 壳:把网页装进真正的 App&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;自己做推送,不依赖厂商通道&lt;/strong&gt;:手写 RFC6455 WebSocket 长连接 + 前台服务保活;国产 ROM(小米 / 华为 / vivo / 联想)的保活引导都写在文档里&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Android 15 适配&lt;/strong&gt;:前台服务类型、键盘避让、返回键与页面抽屉的冲突处理&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;WebView 的真实坑&lt;/strong&gt;:某些 WebView 不保存 cookie、页面缓存不刷新——都有对应处理&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="-手机端页面一个-html-就是界面"&gt;② 手机端页面:一个 HTML 就是界面&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;不用 npm、不用打包器,&lt;strong&gt;单个 HTML 文件&lt;/strong&gt;丢到任意静态服务器就能用&lt;/li&gt;&#10;&lt;li&gt;流式回复(边生成边显示)、发图自动压缩上传、亮暗双主题跟随系统&lt;/li&gt;&#10;&lt;li&gt;改一行刷新就生效,移动端调试成本低&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="-聊天后端441-行-node-原生"&gt;③ 聊天后端:441 行 Node 原生&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;不用 &lt;code&gt;npm install&lt;/code&gt;,直接 &lt;code&gt;node server.mjs&lt;/code&gt; 就能跑&lt;/li&gt;&#10;&lt;li&gt;SSE 流式对话 + 多模态(图片直喂模型)&lt;/li&gt;&#10;&lt;li&gt;内容寻址图床:上传按内容哈希存,自动去重&lt;/li&gt;&#10;&lt;li&gt;可选长期记忆:用 markdown 卡片做跨对话记忆,纯文件、可读可改、方便备份&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="说明"&gt;说明&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;全部 &lt;strong&gt;MIT 许可&lt;/strong&gt;,随便用、随便改&lt;/li&gt;&#10;&lt;li&gt;定位是&lt;strong&gt;侧载自用&lt;/strong&gt;(不上架应用商店):想要「自己的服务自己用」的体验,这套正合适&lt;/li&gt;&#10;&lt;li&gt;所有个人标识(域名、密钥、账号)在开源前都已替换成占位符,各目录 README 写明要改哪几处&lt;/li&gt;&#10;&lt;/ul&gt;&#10;</description></item><item><title>我用一个 exe 把 AI 助手塞进了 Windows</title><link>https://wyr233.com/p/dsh-mini-story/</link><pubDate>Sun, 13 Sep 2026 00:00:00 +0000</pubDate><guid>https://wyr233.com/p/dsh-mini-story/</guid><description>&lt;img src="https://wyr233.com/img/cover_dshmini.webp" alt="Featured image of post 我用一个 exe 把 AI 助手塞进了 Windows" /&gt;&lt;h2 id="起因装个-ai-助手为什么要先学命令行"&gt;起因:装个 AI 助手,为什么要先学命令行&#10;&lt;/h2&gt;&lt;p&gt;想用上 DeepSeek Harness 这类 AI 助手,正常流程是这样的:装 Node.js、配环境变量、开终端、敲一串命令……对天天写代码的人来说不算事,但对普通用户(以及所有不想折腾的人)来说,&lt;strong&gt;第一步就劝退了&lt;/strong&gt;。&lt;/p&gt;&#10;&lt;p&gt;所以我把整件事压缩成了一个文件:&lt;strong&gt;dsh-mini&lt;/strong&gt;——一个 exe,双击就跑。&lt;/p&gt;&#10;&lt;h2 id="它做了什么"&gt;它做了什么&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;单文件打包&lt;/strong&gt;:整个运行时 + 服务 + 界面塞进一个 exe,下载完双击即用&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;自带 Node 运行时&lt;/strong&gt;:不用单独装 Node,也不污染系统环境&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;不需要管理员权限&lt;/strong&gt;:装在用户目录里,公司电脑、学校电脑都能用&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;全中文向导&lt;/strong&gt;:安装、升级、卸载全程有指引,小白无压力&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;升级不丢数据&lt;/strong&gt;:配置和对话记录独立存放&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="技术上有意思的几点"&gt;技术上有意思的几点&#10;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;1. 怎么把 Node 服务塞进 exe&lt;/strong&gt;&#10;把运行时、脚本、静态资源全部打包,启动时在临时目录展开并拉起本地服务,再由内置浏览器窗口访问。用户视角就是「双击 → 等几秒 → 出现聊天界面」。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;2. 为什么不做安装包&lt;/strong&gt;&#10;安装包意味着权限、注册表、卸载残留。做成绿色版,删文件夹就等于卸载干净——这也符合「工具就该轻」的想法。&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;3. 国内下载体验&lt;/strong&gt;&#10;主仓库放 GitHub,同时准备了 Gitee 镜像;Release 由 CI 在打 tag 时自动产出,省得手工打包出错。&lt;/p&gt;&#10;&lt;h2 id="现在的状态"&gt;现在的状态&#10;&lt;/h2&gt;&lt;p&gt;v0.1.1 已发布,开源免费(MIT 协议)。安装包 40 多 MB,包含完整运行环境。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;官网与下载:&lt;a class="link" href="https://dshmini.wyr233.com" target="_blank" rel="noopener"&#10; &gt;dshmini.wyr233.com&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;源码:&lt;a class="link" href="https://github.com/WYR-233/dsh-mini" target="_blank" rel="noopener"&#10; &gt;GitHub&lt;/a&gt; / &lt;a class="link" href="https://gitee.com/wyr233/dsh-mini" target="_blank" rel="noopener"&#10; &gt;Gitee&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;顺带一提:本站的看板娘鲸鱼娘,就是 dsh-mini 里那只会在托盘里吃白米饭的女仆——她从项目第一天起就住在里面了。&lt;/p&gt;&#10;</description></item></channel></rss>