叶文哲 Wenzhe Ye
AI Builder · Local-First · 2026

把想法, 做成能用的东西。

01 / 主项目 · 知行有策

让物业经验,
成为可调用的 AI Skill

物业咨询知识的 AI Skill 生产平台。资料萃取成知识原子,在 Skill 工厂组装、评测、上架,再由 Agent 按问题编排调用,每条结论都能回到原文。

技术负责人 · 桌面端由我独立开发13 人团队 · 浙江省国际大学生创新大赛 · 产业赛道
GitHub 仓库 ↗
浙江工商大学 · 计算机在读 Scroll
02 / 个人项目 · FORGE

每天开机,
第一个打开它。

本地优先的个人工作台。离线秒开,数据留在自己手里。

React 18 · TypeScript · IndexedDB · PWA
看它怎么做出来 →
PROBLEM → TOOL

每一个痛点,
都被做成了一个工具

已做成0 / 6
问题 01

物业专家经验散在文件夹里,AI 用不上

工具 01

知行有策

资料萃取成知识原子,组装成可评测的 AI Skill,再由 Agent 按问题编排调用。

Electron · React · FastAPI · SQLite
GitHub 仓库 ↗
问题 02

工具割裂,断网就没法干活

工具 02

Forge 工作台

本地优先的个人工作台,每天开机第一个打开。

React 18 · TypeScript · IndexedDB · PWA
看深度复盘 →
问题 03

AI 写报告编数据,结论超过证据

工具 03

竞赛调研报告 Skill

结论强度不超过证据强度:事实、解释、建议分开写,再模拟评委逐条审。

Agent Skill · 开源 · 证据审计
GitHub 仓库 ↗
问题 04

重要决策反复纠结

工具 04

Super Forecaster

费米拆解、参考类检索、贝叶斯更新,把纠结落到可结算的决策账本。

Agent Skill · 决策
看设计细节 →
问题 05

大学路线选择迷茫

工具 05

College Compass

拆解求职、考研、保研、考公等 6 条路线的权重,诊断经历短板。

Agent Skill · 开源
GitHub 仓库 ↗
问题 06

AI 工具太多,信息过载

工具 06

AI 工具箱

37 张工具卡片按 8 大场景筛选,GitHub Actions 定时巡检数据。

静态站 · GitHub Actions
进入工具箱 →
查看全部作品集 →
CASE STUDY · FORGE

Forge 是怎么做出来的

三个关键判断,每一个都能在代码里找到对应的实现。

01 / 边界

先决定不做什么

每天在 AI 实战、课业、内容和习惯之间切换,数据散在好几个软件里,断网就停。Forge 把 8 个日常模块收进同一个本地库。

但写作留在 Codex,资料检索交给本机的 19RAG 服务。早期在 Forge 里做过写作编辑器,真实用了几天就删掉了:工具不越界,才用得久。

02 / 取舍

数据先落在本地

IndexedDB 是主存储,打开就能读写,不等网络。完整备份带版本号,导入时先解析、迁移、校验、预览,再用单个事务写入,任何一步失败就整体回滚。

云端只做可选的快照同步。两端冲突时由人决定保留哪一份,不做看不见的字段级自动合并。

03 / 联动

用状态机管住计时

学习计时只有四个状态,每个状态能接受哪些事件写死在一张转移表里,非法操作直接抛错;计时器全局只有一个实例。

计时结束后,按结构化的 study-duration 规则匹配每日计划里的任务并自动勾选。规则只认结构,不靠标题关键词去猜。

BOUNDARY · 模块边界8 IN / 2 OUT
FORGE · INDEXEDDB 本地库离线可用
01每日计划02实战推进03爆款拆解04灵感记录 05记账06学习计时07习惯打卡08RAG 资料库入口
OUTSIDE · 不做进 FORGE
写作直接在 Codex 完成,Forge 只记录选题、卡点和发布数据
资料检索本机 19RAG 服务,资料、模型和密钥都不进网页和备份
PRODUCT.md · 写作边界 / RAG 资料库边界
DATA FLOW · 数据流BACKUP v4 / SCHEMA 10
界面打开即可读写
IndexedDB主存储 · 断网照常用
导入备份 · 单事务
解析
迁移
校验
预览
写入
任何一步失败 → 整个事务回滚,本地数据保持原样
云端 · 可选
Supabase 快照同步按版本号比较,冲突返回 PT409,由人选择保留哪一份
PRODUCT.md · 数据与同步  /  services/backup/jsonBackup.ts
STATE MACHINE · 学习计时idle
START PAUSE RESUME STOP STOP RESET idle running paused finalizing
const transitions: Record<TimerState, Partial<Record<TimerEvent, TimerState>>> = {
  idle: { START: 'running', RESET: 'idle' },
  running: { PAUSE: 'paused', STOP: 'finalizing', RESET: 'idle' },
  paused: { RESUME: 'running', STOP: 'finalizing', RESET: 'idle' },
  finalizing: { RESET: 'idle' },
};
// transitionTimer()
if (!next) throw new Error(`Timer cannot ${event} from ${current}`);
finalizing → studySessions → study-duration 规则 → dailyTasks 自动勾选
services/timer/timerMachine.ts  /  services/automation/automationRules.ts
ABOUT · NOW

我是叶文哲

浙江工商大学计算机在读。现在花最多时间的事,是把 AI 装进自己学习和构建的每个环节:先弄清楚真实的问题,再把它做成每天都能依赖的工具。

在学

  • 本地优先架构与离线同步机制
  • Agent 证据链审查与可审计写作
  • 万维钢《现代思维工具一百讲》与心智模型

在做

  • 知行有策:从知识萃取到 Skill 上架、Agent 咨询的完整链路
  • Forge 离线体验与状态机打磨
  • 竞赛调研报告 Skill 迭代与评委视角验证
  • 个人知识库与本机 RAG 检索整合

在想

  • 结论强度不超过证据强度
  • 觉得过去的决策亏了,先分清是真亏还是参照点变了
  • 一件事没人看着还做吗,做完是充电还是消耗

想聊聊?直接找我

本地优先应用与个人工具、竞赛调研报告与 Agent Skill、AI 编程与新产品落地,都欢迎交流。不设表单,邮件或微信都行。

叶文哲微信二维码 WECHAT · 点击放大 WECHAT · 长按识别