Typeset · Agent-native · Formula-aware · CLI-native · Markdown-first 移动端 Typora 类排版写作工具:所见即所得(WYSIWYG),以公式 / 图表 / 学术写作为特色。 目标:让手机端也能拥有 Typora 级别的排版级写作体验,任意 .md 即开即看。
Tafcm 不是"带预览的 Markdown 编辑器",而是 移动端 Typora 类产品,三维定位(ADR-0033):
- T · Typeset:排版优先——用户看到的是 Document 而不是 Block,所见即所得,无"编辑/预览"模式切换
- F · Formula-aware:原生支持 LaTeX 公式(SVG 矢量渲染)、Mermaid 图表、代码高亮
- M · Markdown-first:.md 单一真相源,任意来源文件即开即看,无需导入到 Vault
其他特性:手机优先(触屏 + 单手握持重新设计)、离线可用(100% 本地渲染,无云端依赖)、多平台(Android / Windows / Web)。
工程侧差异化(不对最终用户承诺):A · Agent-native(ADI 诊断接口 + issue triage,Agent 可诊断、可驱动的文档工具)、C · CLI-native(ffx-cli 诊断 / 验证 / 分析工具链)。详见 ADR-0024 与 ADR-0033。
| 能力 | 说明 | 完成度 |
|---|---|---|
| Markdown 解析 / 序列化 | 手写 parser(AST 驱动)+ round-trip fuzz 守护 | ✅ 完整 |
| 块级 WYSIWYG 编辑 | 8 种 BlockType + Transaction 模型 + Undo/Redo | ✅ 完整 |
| 公式渲染 | LaTeX → SVG 矢量 + PNG 回退(E6 真机验证) | ✅ 完整 |
| Mermaid 图表 | WebView 渲染 → SVG 嵌入导出 | ✅ 完整 |
| 导出 | Markdown / Word / PDF / 文本(SVG 矢量硬约束) | ✅ 完整 |
| 主题 | Light / Dark / Sepia(Design System Token 驱动) | ✅ 完整 |
| 可观测 / ADI | 渲染追踪 + Agent Diagnostic Interface + FFX 验证编排 | ✅ 完整(Phase 3.7-3.11) |
详细能力状态见 docs/product/CAPABILITY-STATUS.md(人类视图) 与 contracts/*.json(机器视图)。
Tafcm 为 AI Agent 提供完整诊断闭环——让 Agent 从 Observation 出发,自主完成 发现 → 复现 → 定位 → 修复 → 验证(ADR-0024):
| 环节 | 能力 | 命令 |
|---|---|---|
| 发现 | 渲染 / 导出异常自动采集(Observability,Phase 3.7) | adi latest-error --json |
| 因果追踪 | 追溯诊断链(trace),不凭空假设 | adi trace show <id> |
| 复现 | 重放会话确认可复现(不能复现的 bug 不修) | adi replay <id> |
| 验证 | 修复后验证闭环 | adi validate --after-fix |
复用而非重采:ADI 消费 Phase 3.7 已建成的采集能力,不重复采集证据(ADR-0024)。 CLI 入口:
dart run tools/adi/adi.dart <command>,详见 docs/design/adi-design-v1.md。
Python(Click)命令工具链,文档项目全生命周期诊断 / 验证 / 分析:
| 域 | 命令 | 用途 |
|---|---|---|
| project | ffx project create / info / export / diff / status |
文档项目生命周期管理 |
| analyze | ffx analyze file / adr / structure |
文件 / ADR / 目录结构分析 |
| adi | ffx adi latest-error / trace / replay / validate |
Agent 诊断(ADI 的 CLI 封装) |
| contract | ffx contract-sync |
能力契约同步(contracts/*.json) |
170+ pytest 用例守护;
--json输出可机器消费(CI / Agent 编排)。 详见 tools/ffx-cli/。
真机实拍(v0.1.1,Android 1080×2400)——移动端所见即所得排版:公式 / 表格 / 代码 / 图表 WYSIWYG 编辑。
| 首页 · 文件列表 | 文档内部 · WYSIWYG 排版 |
|---|---|
![]() |
![]() |
附:App 内置演示文档「Tafcm演示文档.md」,覆盖公式 / 表格 / 代码 / Mermaid / 任务列表。
v0.1.1 已发布(2026-08-31,导出稳定性专项):
| 面向 | 下载 |
|---|---|
| 普通用户 | GitHub Releases · v0.1.1(app-release.apk,约 99 MB) |
| 开发者 | GitHub Releases · v0.1.1(app-debug.apk,约 231 MB,含调试日志) |
- 要求:Android 8.0+(API 26+)
⚠️ 当前为 debug 签名(正式 keystore 发布前占位);包名已改为com.tafcm.app- 安装前请卸载旧版 FormulaFix(包名不同,避免签名冲突提示)
- 版本历史见 CHANGELOG.md;详细发布证据见 docs/releases/
Phase 0-3.11 全部完成;Phase 3.11(Capability Hardening Loop)已按 PHASE_3_11_EXIT 判定关闭(2026-08-22)。 v0.1.1 已发布(2026-08-31,导出稳定性专项:导出卡死修复 + SnackBar 残留修复;v0.1.0 为 2026-08-30 首个正式版本)。 当前处于 Phase 3.12:信息架构重构(2026-08-27,本文件即为该阶段产物)。
工程地基五维状态(2026-08-22 冻结):
| 维度 | 状态 |
|---|---|
| Engineering Foundation | ✅ ~95%(编辑内核 / 块运行时 / 持久化 / 导出 / 可观测 / E2E) |
| Capability Coverage | ✅ COMPLETE(F1-F4 四能力族全部验证) |
| Runtime Validation | ✅ FULLY VALIDATED(Formula Real Defect Loop 闭环) |
| E6/E8 Evidence | ✅ RELEASE-GATE SATISFIED(真机 zorn 4/4 PASS + E8 视觉语义验证) |
| Visual / Product Identity | 🟡 ~60%(UI 修复 P2-P3 进行中) |
Markdown
↓
Parser(手写,AST 驱动)
↓
Document AST(sealed DocumentElement)
↓
Live / Committed 双状态(ADR-0012)
↓
Transaction(操作日志 / commit-rollback / coalescing,ADR-0008)
↓
History(Undo/Redo)
↓
Renderer(Block → Widget,公式 → SVG/PNG)
↓
Export(Markdown / Word / PDF / 文本)
—— Agent Engineering 闭环 ——
ADI(诊断采集)→ FFX(验证编排)→ contracts/(能力契约)→ regression/(回归资产)
六层分层架构(core → data → domain → providers → presentation):
flutter_app/lib/ 内严格自上而下依赖,循环依赖零容忍(详见 AGENTS.md §1)。
# 1. 安装 Flutter(>= 3.44)与 Dart(>= 3.0)
# 2. 拉取依赖
cd flutter_app && flutter pub get
# 3. 运行(Android 模拟器 / 桌面 / Web)
flutter run
# 4. 跑测试
flutter test
# 5. Agent 验证编排(可选)
cd tools/ffx-cli && python -m pytest cli_anything/ffx/tests/| 入口 | 用途 |
|---|---|
| docs/README.md | 文档门户:按阅读目的导航(新人 / 改代码 / 查决策 / 验证 / 追溯历史) |
| docs/decisions/INDEX.md | ADR 索引:架构决策状态总表(29 篇) |
| docs/architecture/ARCHITECTURE.md | 当前架构总览(只讲"现在是什么") |
| docs/product/CAPABILITY-STATUS.md | 当前能力完成度(人类视图) |
| docs/engineering/ENGINEERING-BASELINE.md | 工程基线 + 已知债务(DEBT 表) |
| docs/ROADMAP.md | 路线图(Phase 0-4) |
| AGENTS.md | AI 协作规范(架构原则 / 编码规范 / 禁止事项 / CI 失败手册) |
| .agent/CURRENT-STATE.md | Agent 当前状态入口 |
| 资产 | 位置 |
|---|---|
| 能力契约(机器可读) | contracts/*.json(11 个) |
| 回归资产(可核对 case 包) | docs/regression/ |
| 证据资产(截图 + 判定,可追溯) | docs/evidence/ |
| 视觉基线(golden) | flutter_app/test/golden/ |
| 运行时产物(不入库) | .adi/ |
- 开源生态:Flutter / Dart、Riverpod、dart_pdf、share_plus、flutter_inappwebview、flutter_math_fork、crypto、Click、pytest 等优秀开源项目
- 工具链:ffx-cli(
cli_anything命名空间包:诊断 / ADI 封装 / Markdown 分析,Click 实现,170+ pytest 用例) - 设计启发:Typora(产品定位与交互范式参照)、formulafix-redesign.design(UI 设计稿)
- 验证支持:真机测试设备与 E2E 验证(E6 公式渲染 / E8 视觉语义真机证据)
本项目基于 MIT 协议 开源。
Copyright (c) 2026 Thy985

