全部技能 / 文档与知识 / finance-report
文档与知识 · nexu-io/html-anything

finance-report

Masthead + KPI + 收入/烧钱图 + P&L 表 + 重点 + 展望

风险提醒:绿色 · 放心使用AI 侦查报告
作者 nexu-ioGitHub nexu-io/html-anything ↗Stars 8827许可 Apache-2.0(仓库根 LICENSE;GitHub API spdx_id=Apache-2.0)commit 553ed98c28
agent 宿主通常会约束 skill 执行权限;风险提醒为 AI 侦查观点,不构成质量或安全保证。第三方 skill 仅作拆解与展示,安装使用风险自负,版权归原作者。

1实现原理 · 为什么它能做到

这个 skill 不是可执行程序,而是注入给本机 coding-agent CLI 的一段提示词:宿主取 SKILL.md 正文,前面压一段全站共享设计指令、后面接用户内容,拼成一条 prompt 交给已登录的 agent,再把 agent 的 stdout 当 HTML 取回。

next/src/lib/templates/shared.ts
【输入格式】: ${opts.format} 【用户内容】: ${opts.content}
注:拼装模板 = 共享指令 → skill 正文 → 输入格式 → 用户内容;web 端 /api/convert 走同一函数:prompt = assemblePrompt({ body: skill.body, content, format });

共享指令层(不属于任何单个 skill,但每个模板都被它压着)把输出钉成『自包含单文件 HTML』,并明令禁止 agent 使用 Write/Edit/Bash 等文件系统工具,HTML 直接以对话正文流式输出。

next/src/lib/templates/shared.ts
- **禁止使用 Write / Edit / MultiEdit / Bash / Create / 任何文件系统工具**。不要把 HTML 写到任何 \`.html\` 文件里。前端直接捕获你的 stdout 文本, 文件落盘由前端负责。
注:这是本批 skill 能力边界的来源:产出物只是文本,落盘与渲染由宿主前端负责;该禁令是 prompt 软约束,不是沙箱硬隔离。

SKILL.md 之外还有一条『内容驱动数量』覆盖规则:模板里写的任何页数/帧数/卡片数一律视为参考下限,实际数量由用户内容决定——防止 agent 用模板数字压缩用户内容。

next/src/lib/templates/shared.ts
- 模板只定义"可用版面 / 风格 / 配色 / 字体 / 组件库", **不定义** slide / 帧 / 卡片 / section 的数量。
注:对 frame-* 单帧模板尤其关键:它把模板里的版面描述定性为『可复用版面池』而非产量上限。

加载约定是『一个 skill = 一个文件夹』:SKILL.md(YAML frontmatter 供选择器 + 正文即模板 prompt),可选 example.md(样本输入)与 example.html(可直接打开的预览样张);新增模板只需加目录,不改 TS 代码。

next/src/lib/templates/loader.ts
* SKILL.md — frontmatter (id, scenario, tags, …) + prompt body * example.md — (optional) sample input content * example.html — (optional) pre-rendered preview, shown inline in the picker
注:loader 的 loadSkillFromDir 只读这三类文件,没有其它资产装载通道——第二遍据此核对本 skill 的资产可达性。

选择链路(CLI 侧)是三级漏斗:关键词强信号(每命中 1 词 2 分,阈值 3)→ 退化为 tags/scenario 打分 → 仍无把握就把用户内容前 800 字交给本地 agent 做一句话分类。

cli/src/skills-matcher.ts
const CONFIDENCE_THRESHOLD = 3;
注:AI 兜底的 prompt 原文:const prompt = `请用一句话(不超过15个字)描述以下内容最像什么类型的文档,只需回答类型名称:

预览链路独立于生成:/api/templates/<id>/preview 把 example.html 原样以 text/html 返回给 iframe;前端 iframe 用 sandbox="allow-scripts allow-same-origin"。

next/src/components/preview-pane.tsx
sandbox="allow-scripts allow-same-origin"
注:路由注释:* Returns the skill's `example.html` verbatim so it can be loaded into an(宿主侧取舍:allow-scripts + allow-same-origin 组合下,预览页脚本可自行摘掉 sandbox)。

模板是一份纯骨架(全篇 22 行):用 6 段固定版面把财务材料组织成单页报告——Masthead + 4 个 hero KPI、收入与烧钱两张图、P&L 概要表、5 条 top-line highlights、Outlook 段落、Methodology 折叠区。

next/src/lib/templates/skills/finance-report/SKILL.md
【布局】 - Masthead (公司 + Q + 报告标题) + 4 个 hero KPI - Revenue chart + Burn chart (Chart.js / ECharts) - P&L 概要表 (zebra + sticky header) - Top-line highlights (5 条 bullet) - Outlook 段落 - Methodology 折叠区
注:6 段骨架在本批里最简,风格/配色/字体全部交给共享指令层。

意图被压成一句话:财务向单页报告,数字 + 图表 + 文字洞察——同时要求量化版面与文字解读,而非纯表格。

next/src/lib/templates/skills/finance-report/SKILL.md
【意图】财务向单页报告, 数字 + 图表 + 文字洞察。
注:一句话意图:数字 + 图表 + 文字洞察,三者缺一即不合格。

版面细节直接给实现选项:P&L 表要求 zebra 条纹 + sticky 表头(长表可滚动可读)。

next/src/lib/templates/skills/finance-report/SKILL.md
- P&L 概要表 (zebra + sticky header)
注:sticky 表头 + zebra 是长表可读性细节,属版面级硬要求。

首屏 KPI 数量被钉死为 4 个 hero KPI,与 Masthead(公司 + Q + 报告标题)同屏,保证翻开就是『哪家公司哪个季度、四个关键数』。

next/src/lib/templates/skills/finance-report/SKILL.md
- Masthead (公司 + Q + 报告标题) + 4 个 hero KPI
注:首屏四数 + 公司季度标题,符合财务读者从结论往下读的顺序。

本 skill 没有 example.md,预览样张 example.html 完全自包含:无任何外部 URL、无 <script>,图表用 CSS/SVG 手绘、字体走本机衬线栈。

next/src/lib/templates/skills/finance-report/example.html
--display: 'Iowan Old Style', 'Charter', 'Iowan', Georgia, serif;
注:示例页零外链,说明该类版面不依赖 CDN 也能成立。

2核心能力

01标准财报首屏:Masthead(公司+季度+标题)+ 4 个 hero KPI
02收入图 + 烧钱图双图位(Chart.js / ECharts)
03P&L 概要表:zebra 条纹 + sticky 表头
045 条 top-line highlights 要点区
05Outlook 前瞻段落
06Methodology 折叠区(口径可追溯)
07选择器关键词:财报 / finance report / 财务报表 / 年报 / 季度财报 / 利润表 / 资产负债表

3外部依赖

类型依赖
networkTailwind 与 Google Fonts 由共享指令层强制(本模板 SKILL.md 未提任何 CDN;官方示例页零外链)
packageChart.js / ECharts(SKILL.md 指定的图表方案;示例页未使用,改为手写 SVG/CSS)

4风险提醒 风险提醒:绿色 · 放心使用

风险提醒:绿色 · 放心使用
  • 技术选型与示例不一致:SKILL.md 指定 Chart.js/ECharts,示例页却手绘 SVG——照 SKILL.md 改样式的人会与示例观感不一致。 — SKILL.md:Revenue chart + Burn chart (Chart.js / ECharts);example.html 无 script
  • 宿主侧:预览 iframe sandbox="allow-scripts allow-same-origin"(宿主取舍,非本 skill 引入)。 — sandbox="allow-scripts allow-same-origin"(next/src/components/preview-pane.tsx)
  • 注入面:财务原始材料(可能含未公开数据)被逐字拼进 prompt 交给本地 agent,无脱敏/转义层。 — assemblePrompt 末尾直接拼接【用户内容】
  • 无 example.md:选择器示例区缺样本输入,用户少了一个『输入长什么样』的参照。 — skill 目录仅 SKILL.md + example.html
风险提醒:绿色,放心使用。判级对象是本 skill 自身目录(口径:照 SKILL.md 执行后实际会发生什么):SKILL.md 为纯指令文本,随附 example.md/example.html 是样本与预览样张,目录内无脚本、无运行时网络调用、无凭证读取、无 agent 侧文件写入;SKILL.md 也未点名任何外部生成/服务后端(对照 orange 先例 ai-image-generation / seedance:后者把素材送外部生成后端并消耗账号额度;本模板不产生素材外发)。不影响档位的说明项:目录内 example.html 会外链 cdn.tailwindcss.com 与 fonts.googleapis.com(批4 口径:example.html 外链属产物示例,不判级);共享指令层同样要求生成物在 head 里 CDN 引 Tailwind 与 Google Fonts(- 在 \`<head>\` 中通过 CDN 引入 Tailwind v3 Play (https://cdn.tailwindcss.com) 与所需的 Google Fonts。),那是宿主壳层行为。宿主背景(不计入档位,见 verdict.risks):预览 iframe sandbox="allow-scripts allow-same-origin";宿主以全权模式拉起 agent("bypassPermissions", / "--yolo",)。另注:官方示例页 example.html 零外链、零脚本,本 skill 是 9 个模板中网络面最小的一个。

5第二遍独立确认

  • [ok] 『6 段版面』宣称 — 重读 SKILL.md【布局】6 条与 JSON 引用逐字一致,无遗漏无夸大。
  • [discrepancy] 图表库条目(Chart.js / ECharts) — SKILL.md 写 `Revenue chart + Burn chart (Chart.js / ECharts)`,但 example.html 无任何 <script>、无 CDN 引用,图表为 CSS/SVG 手绘——规范建议与示例实现不一致,已写入 risks。
  • [ok] 『示例页零外链』结论 — 对 example.html 做 URL 正则扫描零命中、<script> 计数为 0,坐实自包含。
  • [ok] 运行时机制 — 重读 loader.ts loadSkillFromDir / shared.ts assemblePrompt,与第一遍结论一致。
  • [ok] 安全面 — skill 目录 2 个文件均无脚本/凭证/写盘/网络调用 token。
  • [ok] meta 元数据 — GitHub API 实查:stars=8827、pushed_at=2026-09-15T03:36:24Z、license Apache-2.0。
  • [unlocatable] 安装量 — 无公开安装量数据源,installs=null。

6结论

  • 版面骨架极简但完整:首屏 = 公司/季度/标题 + 4 个 hero KPI,下面才是图表、P&L、highlights、Outlook,符合财报阅读顺序。
  • P&L 表要求 zebra + sticky header,长表在单页里仍可读——财务表格最实际的可用性细节。
  • 留白给共享指令层:不锁配色/字体/图形语言,改版成本低,容易套进公司既有 VI。
  • 官方示例证明可离线交付:零外链、零脚本,图表用 CSS/SVG 手绘。
  • 适合:适合需要一页读完的季度/年度财务摘要(融资前的 exec summary、董事会附页、投资人更新);也适合作为公司财报页面的起手骨架,再套自家配色。想快速出稿、不想调视觉的团队最省事。
    不适合:不适合需要多页详表、附注、审计口径全文的场景(它是长页面单页,不是年报文档);不适合要求图表交互/下钻的分析交付(模板只给图位,示例是静态 SVG);不适合照搬示例当数据样板——示例里的 Northwind Q3 是虚构公司。
    安装 agent 直装可复制
    ① 本站镜像 更新 2026-09-15
    方式 A · 人下载镜像包下载 finance-report.tar.gz
    sha256: 3d200da22fb65eba…
    方式 B · JSON 格式安装指南,复制给 agent
    安装指南
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② 上游 GitHub · 原始来源
    能访问 GitHub?直接去上游安装(实时版,可能已更新)GitHub 原始 ↗
    本页镜像锁定 commit 553ed98c28;上游为实时仓库。
    来源信息 GitHub 原始
    作者 / 仓库nexu-io / nexu-io/html-anything
    Stars8827
    最近推送2026-09-15
    本 skill commit553ed98c28
    许可Apache-2.0(仓库根 LICENSE;GitHub API spdx_id=Apache-2.0)
    本站信息
    收录日期2026-09-06
    分类文档与知识
    侦查报告AI 侦查 · 2 遍 · 2026-09-06
    本站镜像与 GitHub 原始是不同来源:本站锁定 commit 快照经 /r2 分发;GitHub 为实时上游,内容可能已更新。
    同分类邻近