做小工具的。桌面端、单文件网页游戏、数据看板,基本都是自己用得上才动手做。
当前在弄:哈士喵纸娃娃台 —— 一个本地跑的角色换装编辑器,在线试试。 怎么干活:每个项目一本开发日记,记「要解决什么 / 怎么做的 / 验证 / 坑」,四个小节缺一不可。
进度都挂在 GitHub Projects 上,不写在 README 里(README 会过期,看板不会)。
| 看板 | 项目 | 状态 |
|---|---|---|
| 哈士喵纸娃娃台 · 路线图 | 11 层骨架 / 换装 / 八向帧 / 导出 | 8 项,1 个 P0 |
| 汽水音乐工具集 · 路线图 | 18 个仓库的统一维护 | 4 项 |
| wqn · 上下五千年 路线图 | 单文件历史页游 | 2 项 |
| 清聪节奏 · 路线图 | 单文件 Web 音游引擎 | 2 项 |
| B站关注管理台 · 路线图 | Electron 桌面版 | 2 项 |
| live-copilot · 路线图 | 弹幕游戏 AI 导演 | 2 项 |
| skyworth 8S03 物理按键 · 路线图 | 电视按键映射 | 2 项 |
| 若辰曲库 × Toy 小游戏 · 路线图 | 匹配体系与生成物 | 2 项 |
| yuanbao-asset-rescue · 路线图 | 元宝缓存图片抢救工具 | 9 项,5 个 P1 |
优先级只有三档:P0 现在就做 / P1 下一批 / P2 有空再说。
本地纸娃娃编辑器,纯前端无后端。操作模型参照《冒险岛》纸娃娃 4.0 的交互逻辑(只复刻操作方式,素材全部自有)。
- 11 层骨架合成,逐层独立透明度,眨眼 / 尾巴 / 歪头挂在固定支点上做局部变换
- 双渲染模式:正面分层(可无限换装)+ 八向帧(8 方向 × 4 帧,160×190)
- 一键导出:PNG 单图 / 8×4 雪碧图 / 11 层分层图
- 存档、base64 搭配码、深链参数(
?tab=&mode=&dir=&frame=&suit=)
配套三套 Python 工具:截图批量入库(泛洪去背 + 连通域切图 + 归一化)、素材体检(尺寸 / alpha / 命名 / 缺件,47 项)、参考卡生成(头身比 / 衣褶 / 八向骨架比例)。
原始生成稿另存一份:hashimiao-asset-archive —— 从元宝客户端缓存里分两轮抢救出的 288 张原图 / 274.9 MB(含桌面散件),带 sha1 清单、轮次字段和 在线图廊。
- 第 1 轮 246 张:绿幕白模、1328×1776 生成稿、部件拆解
- 第 2 轮 42 张:缓存被新对话换批后重新提取,与首轮做 sha1 差集,补进八向 / 角色三视图新文件(37 张设定稿 + 5 张网页与界面实测截图,分开归类)
缓存是整个 App 共享的,另外混进来的 68 张别的对话的图单独归类存档,不混在一起;对话正文因元宝是流式响应、不落磁盘缓存,无法恢复。元宝那边另给的「13 卷 / 5145 文件 / 2.1GB」完整工作区总包是下载链接,本地尚未下载,未纳入仓库。
从元宝 App 的 WebView2 缓存里把对话中渲染过的图片全部捞出来,整理成带清单和图廊的档案。上面那份 288 张原始稿就是它分两轮捞的。
recover.py:扫缓存 → 按 magic byte 认图片 → sha1 去重 → 绿占比/尺寸分桶build_archive.py:分组编号 → 清单(CSV/JSON)→ 缩略图 → 分组总览 → 静态图廊triage.py:出逐格审查图,人工挑出「别的对话混进来的图」merge_round.py+gallery.py:增量轮次合并 —— 与已有清单做 sha1 差集,只并入真新增;图廊改为清单驱动(读路径字段),不再依赖已删除的提取中间目录push.py:大仓库分批推送,代理不稳时也能推完
README 里记死了踩过的坑:缓存是全 App 共享(不按对话分,必须人工分拣)、缓存会被新对话挤掉(要及时按轮次提取做差集)、审查图编号要和缓存ID画在同一格(否则两套顺序对不上会误判)、对话正文救不回来(流式响应不落盘)、缓存 JPG 可能被截断(要开 LOAD_TRUNCATED_IMAGES)、Pages 要放 .nojekyll、代理会截断大响应(验证用 API 取 blob 别用 curl)。
18 个仓库,一套东西:1 个插件宿主 + 1 个公共内核 + 2 个独立工具 + 14 个插件。装、停用、更新、回滚、卸载都走宿主,插件之间互不干扰。
| qishui-host | 插件宿主:安装 / 停用 / 更新 / 回滚 / 卸载 |
| qishui-core | 公共内核,无 UI |
| qishui-dashboard 🔒 | 数据看板:本地抓取 + 离线看板 + 双 EXE |
| qishui-music-automation 🔒 | 增长自动化:生成 + 风格画像 + 音频客观分析闭环 |
插件(每个都能独立运行、独立登录、独立发版):
| 插件 | 做什么 | 插件 | 做什么 |
|---|---|---|---|
| account | 账号与登录 | publish | 发布 |
| board | 数据看板 | resident | 常驻守护 |
| coldstart | 冷启动流量 | revenue | 平台与收益 |
| dupscan | 歌词查重 | review | 复盘 |
| export | 导出音频 | selftest | 环境自检 |
| lyricvideo | 歌词视频 | studio | 编辑工作台 |
| example-hello | 最小示例 / 开发模板 | sync | 数据同步 |
两个都是「一个 HTML 拷走就能玩」,不联网、无依赖、无构建产物依赖 CDN。
| 仓库 | 说明 |
|---|---|
| wqn | 上下五千年 · 无尽编年 —— 离线单文件历史分支页游。126 个文件,node build.js 出单文件 |
| qingcong-rhythm | 清聪节奏 —— 4 轨下落音游引擎,音频分析自动谱面,带 B站 Toy 平台层(排行榜 / 云存档 / 体力) |
都是单文件,所以最容易悄悄变大 —— 两个都挂了「构建后校验产物体积」的议题在看板上。
| 仓库 | 说明 |
|---|---|
| bili-relation-manager | B站多账号关注管理台(Electron):清理单向关注 / 回粉 / 搜索找目标 / 无人值守自愈 |
| live-copilot | 弹幕游戏 AI 导演:读弹幕与画面,决定下一步剧情往哪走 |
| ruochen-toy-games 🔒 | 若辰曲库(3292 首)× B站 Toy 小游戏:匹配体系、适配看板、12 周规划与预测模型 |
| 仓库 | 说明 |
|---|---|
| skyworth-8s03-physkey | 让创维 8S03 / 42E600Y 电视的机身物理按键直接切 HDMI 输入源,不用摸遥控器。改系统按键映射有变砖风险,出问题可能开不了机 |
🔒 = 私有仓库,链接只对本人可见。看板都是公开的,可以直接看进度。