Home / All Skills / Docs & Knowledge / meeting-notes
Docs & Knowledge · nexu-io/html-anything

meeting-notes

Title + Attendance + Agenda + Decisions + Action Items + Next Meeting

L1 Basic · Source registration onlyV1 Commit-PinnedDual-pass Audit
Author nexu-ioGitHub nexu-io/html-anything ↗Stars 8827License Apache-2.0(仓库根 LICENSE 文件为 Apache License Version 2.0;package.json "license": "Apache-2.0";GitHub API spdx_id Apache-2.0)Commit 553ed98c28
Control levels describe skill capabilities and suggested control measures; they do not represent quality or safety certifications, nor do they dictate usability. Usage decisions rest entirely with users and administrators. Different agent hosts apply varying constraints; do not assume hosts provide automatic protection. Third-party skill copyrights belong to their original authors. Use at your own risk.

1How It Works & Mechanism

Five-part structure: Title bar (Meeting name + Time + Attendance avatars) → Agenda checklist → Decisions rounded cards → Action items table (Owner / Due / Status) → Next meeting footer.

next/src/lib/templates/skills/meeting-notes/SKILL.md
- Title bar (会议名 + 时间 + 出席 avatars)
The structure cleanly separates 'discussion (agenda)', 'conclusions (decisions)', and 'todos (action items)'.

Action items are the core focus: Fixed headers for Action / Owner / Due / Status, with statuses represented by pills.

next/src/lib/templates/skills/meeting-notes/example.html
<thead><tr><th>Action</th><th>Owner</th><th>Due</th><th>Status</th></tr></thead>
The four columns are hardcoded in the header; the model only needs to fill in rows, preventing owners or deadlines from getting mixed into the description.

The decisions section uses 'What we agreed to, on the record' to frame each resolution as an accountable item (including owner and conditions).

next/src/lib/templates/skills/meeting-notes/example.html
<h3>What we agreed to, on the record</h3>
Example decision items include conditions and assignees (e.g., 'Devon owns the escalation'), demonstrating how to write actionable decisions.

The template itself is the prompt: The body of SKILL.md is read by the loader, assembled with the shared preamble and user content, and passed to the local agent CLI for execution.

next/src/app/api/convert/route.ts
prompt = assemblePrompt({ body: skill.body, content, format });
No code inside the template directory is executed at runtime: /api/convert only receives {agent, templateId, content}, uses loadSkill(templateId) to fetch the SKILL.md body as the main prompt, and forwards it to the authenticated local agent CLI; HTML streams back to the frontend via stdout.

The skill directory contains purely plain-text assets: The loader reads the disk to retrieve the SKILL.md body, and no executable code within the directory is ever loaded.

next/src/lib/templates/loader.ts
const raw = safeRead(path.join(dir, "SKILL.md"));
Skills in the file system are strictly text: The loader reads SKILL.md directory by directory, extracts the frontmatter into picker metadata, and returns the main content as the body; no modules in this template directory are imported or executed.

The shared preamble is injected before the template, establishing the highest priority rule: 'The template only defines layout, style, color palette, typography, and component library; quantity is determined by user content.'

next/src/lib/templates/shared.ts
【内容驱动数量 — 最高优先级, 覆盖模板里的任何数字】
Injected before the template body, the shared preamble specifies that 'the template only defines layout/style/palette/fonts/components; quantity is determined by user content'—thus, the layout list in this template serves as a 'reusable layout pool', not a strict page/frame limit.

The shared preamble is injected before the template, establishing the highest priority rule: 'The template only defines layout, style, color palette, typography, and component library; quantity is determined by user content.'

next/src/lib/templates/shared.ts
- **禁止使用 Write / Edit / MultiEdit / Bash / Create / 任何文件系统工具**。不要把 HTML 写到任何 \`.html\` 文件里。前端直接捕获你的 stdout 文本, 文件落盘由前端负责。
The preamble explicitly disables filesystem tools and mandates streaming pure HTML output directly from the response body, leaving file saving to the frontend—hence, no disk-writing behavior exists on the skill side.

The skill directory contains purely plain-text assets: The loader reads the disk to retrieve the SKILL.md body, and no executable code within the directory is ever loaded.

next/src/lib/templates/loader.ts
const exampleHtml = safeRead(path.join(dir, "example.html"));
The example.html in the directory is a golden sample distributed with the repository; the preview route directly reads and returns it from disk (without building or compiling), serving as both a quality baseline and preview asset.

2Core Capabilities

01Title bar + Attendance section (Present members)
02Agenda checklist
03Decisions rounded card block
04Action items table (Action / Owner / Due / Status)
054-tier status pills (To do / In progress / Blocked / Done)
06Next meeting footer

4Recommended Governance & Evidence

Suggested Controls for Safe Operation
For Agent Runtime
Can be auto-loaded
For Administrators
Register source and version
Evidence & Triggers (File Paths & Excerpts)
  • SKILL.md: Pure prompt instructions and rule text, with no script execution or external impact
Audit Notes: 🟢 Green (). Scope of assessment = the skill directory itself: Zero URLs in the directory (example.html contains no http(s) endpoints either). The directory contains only SKILL.md and example.html, with zero scripts, zero executable code, zero network endpoints, zero credential reading, and zero disk-writing instructions—executing according to SKILL.md results in the host model outputting an HTML text segment, without any outbound network calls or disk writes. Host environment and output consumption behaviors do not factor into the tier rating and are only noted under verdict.risks: the shared.ts preamble requires outputs to reference Tailwind CDN (https://cdn.tailwindcss.com) and Google Fonts, the runtime spawns the logged-in local agent CLI (with envFor passing process.env), and the preview iframe is sandbox="allow-scripts allow-same-origin".

5Second-Pass Verification

  • [ok] 规范↔示例:五段覆盖 — Title bar(`<h1>Growth squad weekly · W42</h1>` + Present 区)、Agenda、Decisions、Action items(`<th>Action</th><th>Owner</th><th>Due</th><th>Status</th>`)、Next meeting 全部命中。
  • [ok] 状态口径核对 — 示例 pill 四档(pill-todo / pill-progress / pill-blocked / pill-done)与表格单元格 `<span class="pill pill-todo">To do</span>` 落地正文的 Status 列要求。
  • [ok] 示例决议写法(超出规范的示范) — 示例 Decisions 区以「What we agreed to, on the record」+ 带条件/责任人的条目呈现,属对模板的加分实现,非违背。
  • [ok] 缺席/时区字段 — 正文只要求出席 avatars,未要求 Absent/时区字段,示例亦无——规范未要求,不作为缺口。
  • [ok] 脚本/外链普查 — example.html 无 <script>、无 http(s) 命中;目录内零 URL。
  • [ok] 目录资产面普查 — glob 全量:SKILL.md、example.html;无 scripts/、无 references/、无数据文件、无包管理器清单。
  • [ok] 可执行代码普查 — example.html 内 <script> 计数 = 0,fetch/XMLHttpRequest/WebSocket 命中 0;SKILL.md 全篇无脚本或可执行代码。
  • [ok] 外链端点普查 — 目录内(含 example.html)零 http(s) 命中,产物离线自持。

6Verdict & Scenarios

  • Decisions and action items are separated, making minutes immediately actionable
  • Action items have four fixed columns, eliminating confusion over who does what and when
  • Four-tier colored status pills ensure low visual scanning effort
  • Zero scripts and zero external links; opens seamlessly offline
  • Best for: Team weekly/review meeting minutes, 1:1 notes, cross-team sync documents; ideal when deliverables require an at-a-glance view of 'who does what after the meeting'.
    Not for: Meeting notes requiring verbatim transcripts (structure is summary-oriented); scenarios requiring task system synchronization (output is a static page without integrations); formal meeting minutes requiring strict compliance archiving (template lacks versioning/signature mechanisms).
    Install Agent-Ready
    ① Verified Mirror 2026-09-15
    Option A · Direct DownloadDownload meeting-notes.tar.gz
    sha256: 1228c950987d531b…
    Option B · Copy Guide for Agent
    install.json
    Agents automatically download and verify mirrors from this JSON guide.
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 553ed98c28.