开发人员文档通常在每个文件中包含描述。这些描述可能会过时,导致混乱和不正确的信息。为了防止这种情况,您可以使用一些 ai 和 genaiscript 自动检测文档中过时的描述。
许多文档系统使用 markdown 格式来编写文档,并使用“frontmatter”标头来存储元数据。这是带有 frontmatter 的 markdown 文件的示例:
--- title: "my document" description: "this is a sample document." --- # my document lorem ipsum dolor sit amet, consectetur adipiscing elit.
目标是创建一个脚本来检测 frontmatter 中的描述字段何时过时。
genaiscript 旨在在文件上运行,并提供一个特殊变量 env.files,其中包含要分析的文件列表。您可以使用该变量通过 def 函数将文件包含在上下文中。我们将每个文件限制为 2000 个令牌,以避免大文件上的内容爆炸。
// define the file to be analyzed def("docs", env.files, { endswith: ".md", maxtokens: 2000 })
下一步是给脚本分配任务。在这种情况下,检查 frontmatter 中的内容和描述字段是否匹配。
// analyze the content to detect outdated descriptions $`check if the 'description' field in the front matter in docs is outdated.`
最后,我们利用内置的诊断生成功能为每个过时的描述创建错误。
// enable diagnostics generation $`generate an error for each outdated description.`
将此脚本保存到工作区后,您将可以通过上下文菜单在文件或文件夹上执行它
通过选择运行 genaiscript....
您可以在文档文件上自动运行此工具,以使用 cli 识别过时的描述。
npx --yes genaiscript run detect-outdated-descriptions **/*.md
此脚本可以集成到您的 ci/cd 管道中以自动化检测过程。