SuperAPI AI 工具集

create-tldr-page

写作与研究

查看项目

更新于 10-15 10:24

技能介绍

用途

create-tldr-page 是一个技术文档处理技能,用于将冗长的命令行工具文档转换为符合 tldr-pages 项目标准的简洁页面。tldr 页面的定位是「面向常见用例的示例驱动速查参考」,因此该技能的目标是提取最常用的命令模式,而不是复述完整手册。

主要能力

  • 从权威上游文档 URL 中提取关键命令示例。
  • 严格按 tldr 模板输出:命令标题(小写)、一句话描述、可选的子命令说明、权威文档链接,以及按使用频率排序的示例。
  • 管理与校验占位符格式,区分带参数选项、无参数选项、单一短选项、子命令、参数与操作数等不同情况的包裹规则。
  • 处理输入来源:支持 #fetch 抓取 URL;当以文件代替 URL 时,从文件中提取相关 URL 并使用;若文件包含多个 URL,会询问使用哪一个。
  • 处理帮助参数:若传入 --help、--tldr 等,会输出该提示本身的摘要,而不是为命令新建 tldr 页面。

使用方式

基本语法:

/create-tldr-page #fetch <URL> <command> [text data] [context file]

必需参数:

  • Command:命令或工具名称,例如 git、nmcli、distrobox-create。
  • URL:指向权威上游文档的链接。

可选输入包括:上下文文件、搜索数据、纯文本数据(手册页或帮助输出)、帮助输出(如 -h、--help、/?、--tldr、--man 等)。

若多个 URL 未带前置 #fetch 传入,则对第一个 URL 应用 #tool:fetch。若传入 ${file} 代替 URL,且文件中有与命令相关的 URL,则使用文件中的数据,并以文件中提取的 URL 创建页面。若文件中有多个 URL,会提示选择。

错误处理:

  • 缺少 Command:代理会抓取 URL 并分析文档,然后根据提取的数据推测命令名并询问是否正确。
  • 缺少 URL:代理会说明 tldr 页面需要权威文档 URL,并给出可接受的 URL 模式示例,要求用户提供。

适用场景

  • 为命令行工具快速生成标准化的 tldr 速查页。
  • 将上游手册、快速入门文档等转换为示例驱动的参考。
  • 统一团队内 tldr 页面的格式与占位符规范。

模板与格式规则

模板结构:

command

简短、精炼的描述。 某些子命令如 subcommand1 有独立的使用文档。 更多信息:https://url-to-upstream.tld。

  • 查看创建某物的文档:

tldr command-subcommand1

  • 查看管理某物的文档:

tldr command-subcommand2

模板要点:

  • 标题使用准确命令名(小写)。
  • 描述为一行该命令功能的摘要。
  • 子命令说明仅在相关时包含。
  • 更多信息必须链接到权威上游文档。
  • 示例为 5 至 8 个最常见用例,按使用频率排序。
  • 占位符使用 {{placeholder}} 语法。

占位符约定(必须遵守):

  • 带参数选项:选项与参数分别包裹,例如 minipro {{[-p|--device]}} {{chip_name}}、git commit {{[-m|--message]}} {{message_text}};不要合并为 minipro -p {{chip_name}}。
  • 无参数选项:单独包裹,例如 minipro {{[-E|--erase]}}、git add {{[-A|--all]}}。
  • 单一短选项:单独使用且无长形式时不包裹,例如 ls -l、minipro -L;若同时存在长短形式则包裹,例如 {{[-l|--list]}}。
  • 子命令:通常不包裹,除非是用户提供的变量,例如 git init 不包裹,tldr {{command}} 中变量包裹。
  • 参数与操作数:用户提供的值始终包裹,例如 {{device_name}}、{{chip_name}}、{{repository_url}};文件路径用 {{path/to/file}},URL 用 {{https://example.com}}。
  • 命令结构:占位符语法中选项应出现在其参数之前,正确为 command {{[-o|--option]}} {{value}},错误为 command -o {{value}}。

限制

该技能必须同时具备命令名称和权威文档 URL,缺失任一项都会进入错误处理流程而不会直接生成页面。资料未提供关于依赖环境、安装方式或离线使用的进一步说明。