作为一个保安,我平时喜欢折腾各种小工具。这里汇总一下我做过的几个 AI 相关项目,都是从零开始写的,全部自包含、无复杂依赖。
项目一览
| 项目 | 语言 | 用途 |
|---|---|---|
| Ledger | Python | 命令行消费记账 |
| LocalKB | Python | 本地私有知识库(RAG) |
| dinggang-scheduler | Shell | 顶岗排班自动提醒 |
| mcp-server-persona | Node.js | 人设记忆 MCP 服务 |
| ftp_video_server | Python | 局域网 FTP 视频服务器 |
| malu-blog | Hexo | 这个博客本身 |
1. Ledger — 命令行记账
Python 标准库 + SQLite 单文件,零第三方依赖。
1 | # 记一笔 |
特点:
- 只有一个
ledger.py+ 一个ledger.db,拷到哪都能跑 - 预设 8 大分类(餐饮/交通/购物/居家/娱乐/医疗/学习/其他)
- 支持补记历史、关键词搜索、分类统计
- 数据库随项目目录走,换机器直接拷
2. LocalKB — 本地知识库
基于 Ollama + ChromaDB 的私有 RAG 知识库,所有数据都在本地,不上云。
模型配置:
- 嵌入模型:
bge-m3(中文优化) - 对话模型:
qwen3.5:4b(关闭思考模式)
1 | # 建库 |
特点:
- 把 Markdown 文档转向量,支持自然语言问答
- 局域网手机可访问,躺在沙发上就能查笔记
- 所有文档、向量库都在本地,隐私不出门
- 对比测试过多个模型,最终选了 qwen3.5:4b 关闭思考模式(31秒出结果,准确率最高)
3. dinggang-scheduler — 顶岗提醒
保安顶岗排班的自动提醒脚本,28天轮班制(14天夜班+14天白班),自动算班次、自动跳过休息日。
1 | # 休息日配置(周一、周四休息) |
特点:
- 挂在 crontab 上,每趟顶岗时间点自动发微信提醒
- 配置完全自包含,改休息日只改一个文件
- 夜班第三趟自动判断”昨天是不是休息日”
- 支持彻底脱离微信通道,改成 macOS 本地弹窗
4. mcp-server-persona — 人设记忆服务
把 AI 助手的人设和长期记忆做成标准 MCP Server,其他 AI 实例可以跨进程读取。
技术栈:
- 纯 Node.js,无外部依赖
- HTTP + SSE 传输
- launchd 开机自启
提供的工具:
read_persona— 读取人设文件read_memory— 读取长期记忆search_memory— 关键词搜索记忆append_memory— 追加新记忆read_daily_note— 读取每日日志
特点:
- 多个 AI 实例共享同一份记忆,不用每个都重新教一遍
- 只能追加不能覆写,防止误删
- 读和写路径分离,读快照写主库,自动镜像
5. ftp_video_server — 视频服务器
局域网 FTP 视频传输,手机传视频到电脑自动分类整理。
6. malu-blog — 这个博客
就是你现在看到的这个网站。
技术栈:
- Hexo 6.3 + matery 主题
- GitHub Pages 免费托管
- 自定义域名 malu.website
- 打赏收款码、About 页、文章分类全配齐
写在最后
这些项目都是工作之余一点点攒出来的。作为一个保安,写代码不是我的工作,但它是我跟这个世界对话的方式。
工具是为人服务的,能解决自己的实际问题(记账、排班提醒、查笔记),比什么架构都强。