mcpField
E
elintp

elintp

github.com/xgent-ai文档处理1138 次安装今天更新
代码仓库

关于 elintp

elintp 是一项用于生成说明文档的写作技能,可处理主题或已有文档,并输出离线 HTML。它强调先判断文档类型和重点,再以清晰、准确的方式组织内容。

主要功能

  1. 01按主题或文档组织内容
  2. 02判定文档类型与重心
  3. 03遵循准确转述规则
  4. 04生成自包含离线 HTML
  5. 05按需制作并嵌入示意图

适用场景

  1. 01把概念或故障整理成说明
  2. 02重写 PRD、RFC 或评审纪要
  3. 03总结开发计划及过程记录

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/xgent-ai/skills --skill elintp

安装后在 Claude Code 中输入/elintp确认已加载。

详细介绍

来自项目 README

elintp · 把事情讲清楚,而不是把读者讲低

输入:$ARGUMENTS

目标:读者看完能用自己的话把这件事讲给别人听。

两种输入

输入是主题(一个系统、一个概念、一次故障):自己组织内容,按下面的准则写。

输入是文档(文件路径、链接、或直接粘进来的正文——PRD、开发计划、技术方案、评审纪要、RFC):先完整读一遍原文,判断它是什么类型、在讲什么、定下重心,再按同一套准则重写成 HTML。产出形态、红线、写作准则全都一样,只多两层约束——先判型再定重心,以及你在转述,不在创作。

分不清用户给的是主题还是文档,就问一句,不要猜。

语言选择

用户没指定语言就用简体中文;用户用哪种语言提问就用哪种,文档模式下也可以从原文判断。代码、文件名、标识符保持英文。

红线:文档里不出现关于读者的话

只写主题本身,不写读者是谁、懂不懂、需不需要懂。下面这类句子一句都不能出现——正文、开场白、副标题、图注、脚注,一律算:

  • 「这份说明写给不写代码的人。」
  • 「面向非技术人员 / 业务同事 / 小白 / 外行 / 门外汉」
  • 「你不需要懂技术也能看明白」
  • 「用大白话讲 / 通俗版 / 简化版 / 人话版」
  • 「简单来说,你只要记住一句话就够了」

为什么:这类句子对理解主题零贡献,却把整篇的定位从「解释一件事」降成「照顾一群人」,读的人会觉得被冒犯。读者的背景决定的是你怎么写,不是你写什么——它应该体现在措辞里,而不是被声明出来。

替代做法:开篇第一句直接给主题本身的事实或结论。

  • ✗ 「这份文档写给不写代码的同事,介绍我们的消息队列。」
  • ✓ 「订单提交后不会立刻扣库存,中间隔着一个排队环节,平均等待 200 毫秒。」

写作准则

  • 先给结论,再给机制。 每一节的第一句就是这一节的答案,后面才是它为什么成立。开篇不要铺垫,第一行就是答案。
  • 一句话一个意思;写操作步骤时,一句话一个动作。
  • 主动语态,写清是谁做了什么。 「校验拦下了这次发布」,不写「这次发布被拦下了」。
  • 句子要短。 读到一半得换口气的句子,本来就是两句。
  • 一个词一个意思,一个意思一个词。 同一个东西不要换着叫——读者会以为你在指不同的东西。
  • 用现在时,除非时间本身就是要讲的事实。
  • 宁可用列表,也不要密不透风的段落——但列表不等于可以丢掉条目之间的关系,该写清先后、因果、依赖就写清。
  • 术语该用就用,但首次出现时用一句话给出含义,紧跟在术语后面,不要道歉、不要加引号强调「这个词很专业」。实在没有通俗说法的术语,就写读者会看到什么、要做什么,术语本身在括号里出现一次。
  • 代码、命令、配置项是精确字符串。 用户要敲、要跑的东西一个字都不改,解释写在它周围。
  • 类比服务于精确,不服务于亲切。 一个类比只有在它能让读者对下一段做出正确推断时才留下;不要为了显得亲切而把事情说成儿童故事。
  • 不省略读者会用到的量级。 多快、多少、多贵、失败率多高——数字比形容词管用。
  • 不确定的地方直说不确定,不要用模糊表述糊过去。
  • 篇幅目标是原文的一半以内,除非「转述硬规则 1」或用户点名的条数不允许。

文档模式第一步:判型,定重心

拿到文档,动笔前先做两件事:

  1. 判型。 这是 PRD、开发计划、技术方案、评审纪要,还是故障复盘?
  2. 定重心。 读者读完要能回答哪几个问题?重心决定什么放前面、展开写,什么退到后面、一句带过。

重写不是把原文逐段换个说法再过一遍。 原文的目录是按写作者的思路排的(背景、目标、方案、排期、风险……),新文档按读者的问题排。两者的顺序本来就不该一样。

PRD

读者要能回答:

  • 会多出什么? 用用户能看到的行为写,不写模块名。
  • 做完之后系统变成什么样? 和现在的差别在哪。
  • 建议怎么实施? 分几步、先后顺序、每一步做完能看到什么。
开发计划

先看计划里的记录,判断它做完了没有——勾选框、状态字段、进度回写小节、修订记录都是信号。

  • 还没做完:重心是要开发什么,以及技术路线是什么——选了哪条路,为什么是它,代价是什么。
  • 已经做完:重心是做出了什么、读者怎么自己验证(具体到点哪里、跑什么命令、看哪个数),以及还有什么遗漏和要接着跟的。
  • 做了一半:两段都写。先讲已完成的和怎么验证,再讲剩下的和技术路线。哪部分算完,以原文的记录为准。

计划里写着「已完成」而这次会话没有实际验证过,就写「计划记录为已完成」,不写「已经完成」——转述硬规则 3。

已完成计划:补齐引用的过程记录

完成记录里引用的实施日志、里程碑记录、测试报告、验收记录等也是输入,不能只读计划里的汇总。以引用所在文档为基准解析相对路径,读完这些过程文档;如果过程文档继续引用支撑完成结论的记录,也跟进读取,同一来源只处理一次。无关链接不用展开,无法读取的引用注明缺失,不猜内容。

  • 每份过程记录都生成摘要:做了什么、关键决策或变更、验证方法与记录中的结果、问题与处理、剩余缺口。按里程碑或主题合并到最终 HTML 的过程摘要中,保留来源对应关系,不只列原文链接。过程记录同样遵守转述硬规则;来源之间的状态或结果有冲突时,注明出处和差异,不自行裁定。
  • 有截图就附上:检查过程文档中嵌入或链接的截图,查看可读取的图片,在对应摘要旁嵌入并注明它展示的步骤、结果和来源。截图只证明画面里可见的内容,不据此宣称测试通过或功能全部完成;缺失或无法查看的截图如实标注。
  • 可交给 subagent:环境支持时,把独立的过程文档分派给 subagent。提供文档路径或内容、摘要重心和转述硬规则,要求返回摘要、精确来源、截图路径及说明、无法读取的引用和未解决问题。subagent 负责分配到的材料,主 Agent 负责核对来源、合并重复内容和处理冲突,最后统一措辞、图片嵌入与 HTML 排版;没有 subagent 能力时由主 Agent 完成。
其他类型

同样先问一句「读者读完要能回答什么问题」,再定重心。判不准类型,或者判不准计划做完没有,就问用户,不要猜。

重心不是丢东西的借口

重心决定的是顺序和详略,不决定去留。转述硬规则 1 照旧:原文的每条警告、风险、数字、前提,重心之外的也要在文档里出现——可以放到后面、压成一行,但不能没有。

转述硬规则(输入是文档时)

  1. 只做减法,不做粉饰。 原文里的每一条警告、风险、数字、前提条件,重写后都还在。丢掉 ⚠ 那行的「摘要」是一种谎。涉及安全、数据丢失、以及任何难以撤销的操作,展开写全,不缩写。
  2. 数字原样。 金额、数量、日期不四舍五入。指明某个动作的工单号、PR 号照抄。
  3. 和原文一样真,不比原文更真。 原文的说法仍然是说法:写「计划里说测试会全部通过」,不写「测试会全部通过」——除非这次会话里你自己验证过。
  4. 不清楚的地方保持不清楚。 原文含糊的地方就写「原文没有说」,不要靠猜把它补圆。

产出形态:一个本地 HTML 文件

默认写到本地,不发布。 单文件、样式与脚本内联、不依赖外网资源,双击就能打开、也能直接当附件发出去。路径听用户的;用户没指定就放当前目录(仓库里已有 docs/ 就放 docs/),文件名用主题命名,文档模式下跟着原文档的名字走。写完把路径告诉用户。

只有用户明确说了「发布 / 给个链接 / 用 Artifact」时,才改用 Artifact 工具发布(那时先载入 artifact-design skill)。

这份文档要靠看,不靠读:

  • 大图示:核心流程/结构用一张占满宽度的图讲完,图能独立看懂(自带标注,不依赖正文)。
  • 关键数字做成指标块:数值大字号,旁边一行说明它意味着什么(200ms 下面写「用户几乎察觉不到」)。
  • 图表必须带图例和轴标签,颜色不是唯一区分手段。
  • 表格的表头带释义:每个可能不自明的列名挂 tooltip(title 或自绘 tooltip),把这一列到底在说什么讲清楚。
  • 移动端可读;宽内容自己横向滚动,页面本身不横向滚动。
  • 文档模式下,正文末尾注明原文出处(路径或链接)和你读到的版本,方便读者回去核对。开头不写,开头留给主题本身。
出图:已安装 archify 就调用

需要以下类型的图时,由 Agent 自行检查当前环境的可用 skill 列表;列表中未找到或列表未提供时,直接查找本 skill 同级目录及当前环境的项目级、用户级 skill 目录中的 archify/SKILL.md。找到后加载或读取它,按其流程生成、校验和交付图。不新增或调用 archify 安装检测脚本,不自动安装 skill。

文档里的图archify 类型
系统上下文图、容器图、部署拓扑、模块依赖architecture
请求链路、接口调用时序、鉴权 / token 交换握手sequence
业务流程、审批流、CI/CD、操作步骤workflow
数据管道、ETL、数据血缘、事件流dataflow
状态机、订单或任务的状态流转、重试与终态lifecycle

图中的事实来自输入材料,标签遵守本 skill 的语言和写作准则。JSON 格式、布局、校验、修复与浏览器检查遵守已安装 archify 的 SKILL.md,这里不复述。没有安装 archify,或按其流程仍无法交付时,用内联 SVG / HTML / CSS 画图;交付说明如实注明未使用的原因,不声称 archify 校验通过。

合并后仍是一个离线 HTML:将 archify 交付的自包含 HTML 嵌入最终文档(例如正确转义后放入带可读标题的 iframe srcdoc),不使用指向另一个文件的 iframe src。过程截图以 data URI 嵌入。嵌入区域要有足够高度和移动端宽内容滚动,不能裁掉图、标签或图例。合并后检查最终 HTML 的图和截图是否完整显示;archify 原图的校验结果不能代替最终页面检查。

交付前自检

  1. 通读全文,搜一遍有没有描述读者身份/水平的句子——有就删掉,不要改写成委婉版本,直接删。
  2. 第一句话是不是主题本身的事实?如果它在介绍这份文档,重写。
  3. 每张图、每个数字:去掉它,读者会不会漏掉一个结论?不会就说明它是装饰,删。
  4. 找一个具体问题(「出故障时会怎样?」「这东西一天处理多少?」),看文档能不能答上来。答不上来就补。
  5. 文档模式:重心里的那几个问题,文档能逐个答上来吗?答不上来的补。
  6. 文档模式:把新文档的小标题和原文目录并排看——如果一节对一节、顺序基本一致,说明你只是在逐段换说法,按重心重组。
  7. 文档模式再加一遍对照:原文的每条警告、风险、数字、前提,在新文档里都能找到吗?找不到的补回去。
  8. 已完成的开发计划:完成记录引用的每份相关过程文档都有摘要和来源吗?可读取的截图都附在对应摘要旁了吗?缺失材料和来源冲突是否注明?
  9. 属于上表的图:是否由 Agent 检查 archify 并在可用时调用?最终 HTML 离线打开后,嵌入的图和截图是否完整、可读?只报告实际做过的校验与检查。

常见坑

  • 用户说「没看懂」是反馈,不是质疑。 重讲一遍就好,不要辩解、不要用同样的高度再讲一次、也不要在重讲里夹带「我当时是这么想的」。
  • 重讲不是偷偷改错。 如果重讲时发现原来写的是错的,那是一处更正,明说;不要在「更简单的版本」里悄悄换掉。
  • 任务做到一半被问「等等,这是什么意思?」:先重讲那一处,再回到原来的任务,别把线索丢了。
  • 原文本来就已经写得很清楚:说一句「原文已经够清楚了」,然后停手。为了显得有用而造一个不同的版本,是灌水。

评论

支持 Markdown