Skip to content

Repository files navigation

DSH Markdown Forge(Markdown 锻造厂)— dsh-java-markdown

DSH Java Native Plugin 独立 AI 产品系列 #16。Markdown 锻造厂:结构体检、死链检查、TOC 生成、风格 lint、字数统计。

产品定位

独立 AI 产品:整个应用就是 Markdown 质量工作台。AI 与右侧工作台共享同一套工具能力,可体检/检查/生成/诊断任意 Markdown 文档。

功能

能力 说明
结构体检 标题树 + 层级跳跃检测(h1 直接到 h3)、代码块/表格/列表/图片/链接计数、多个 h1 问题
链接检查 外链(http 明文提醒)、内链(空格问题)、锚点(是否真有对应标题,GitHub slug 规则)
TOC 生成 带锚点目录,maxLevel 控制深度,自动跳过文档主标题,以新内容返回
风格 lint 超长行(>120)/行尾空白/硬 Tab/代码块缺语言/层级超 h6/缺 h1,逐条行号+改法
字数统计 中文字数/英文词数/总词数/阅读时长(400词/分)/行数/元素计数

AI 工具(5 个)

工具前缀:plugin__dsh-java-markdown-plugin__md_

  • md_structure_scan(markdown) — 结构体检
  • md_check_links(markdown) — 链接检查
  • md_generate_toc(markdown, maxLevel) — TOC 生成
  • md_lint_style(markdown) — 风格 lint
  • md_word_stats(markdown) — 字数统计

安全红线

  1. 只分析不改写正文;TOC/修复建议以新内容返回,由用户决定插入位置。
  2. lint 发现的问题必须给理由与改法,不擅自"顺手改掉"。
  3. 用户没贴文档时 AI 先索要原文,不臆造文档内容(T7 验证)。

架构

dsh-java-markdown/
├── dsh-java-markdown-app/     # Spring Boot 应用 (port 8103)
│   ├── controller/            # REST: /api/md/* + /api/assistant/stream (SSE)
│   ├── service/               # MarkdownForgeService(纯文本分析,无三方依赖)
│   └── static/                # 前端(结构/链接/TOC/字数 四工作台 + AI 对话)
└── dsh-java-markdown-plugin/  # Java Native Plugin(5 个 md_* 工具)

运行

mvn package -DskipTests
SERVER__PORT= java -jar dsh-java-markdown-app/target/dsh-java-markdown-app-0.1.0-SNAPSHOT.jar --server.port=8103

cp dsh-java-markdown-plugin/target/dsh-java-markdown-plugin-0.1.0-SNAPSHOT.jar ~/.dsh/standalone/plugins/dsh-java-markdown-plugin.jar
curl -X POST http://127.0.0.1:8090/api/harness/plugins/install -H 'Content-Type: application/json' \
  -d '{"pluginId":"dsh-java-markdown-plugin","jarName":"dsh-java-markdown-plugin.jar","displayName":"DSH Markdown Forge Plugin","pluginVersion":"0.1.0","runtimeType":"JAVA_NATIVE","sourcePath":"'"$HOME"'/.dsh/standalone/plugins/dsh-java-markdown-plugin.jar","entrypoint":"cn.xiaofuge.dsh.markdown.plugin.DshMarkdownForgePlugin","installMode":"REPLACE"}'
curl -X POST http://127.0.0.1:8090/api/harness/plugins/activate -H 'Content-Type: application/json' \
  -d '{"pluginId":"dsh-java-markdown-plugin"}'

python3 md_forge_e2e.py   # 8/8 PASS

E2E 用例(8 组 28 断言)

  • T0 结构:4 标题/2 代码块计数 + h1→h3 跳跃检测
  • T1 链接:3 引用(外链 https 通过 + 坏锚点揪出)
  • T2 TOC:3 条目跳过主标题 + maxLevel=2 过滤 h3
  • T3 lint:超长行(127字符) + 行尾空格 + 缺语言标注
  • T4 字数:中文 101 字 + 阅读时长 + 元素计数
  • T5 空 markdown 400
  • T6 AI 走 SSE 调用 md_structure_scan/md_word_stats/md_generate_toc
  • T7 安全红线:用户没贴文档时 AI 先索要

截图

  • screenshots/01-home.png — 主界面(结构工作台)
  • screenshots/02-ai-drawer.png — AI 结构体检 + 链接健康度报告
  • screenshots/03-safety.png — 风格 Lint:2 处问题逐条标注(行号/类型/改法)

About

DSH Markdown Doctor: markdown 文档体检/结构修复/链接检查 - Java Native Plugin 独立 AI 产品

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages