ドキュメント&知識ベース · nexu-io/html-anything

meeting-notes

タイトル + 出席者 + アジェンダ + 決定事項 + アクションアイテム + 次回会議

L1 基本 · ソース登録のみV1 コミット固定Dual-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
管理レベルは Skill の能力と推奨統制措置を示すものであり、品質や安全性の認証、利用可否の判定ではありません。使用の可否はユーザーおよび管理者が決定します。Agent 環境によって制約が異なるため、自動保護を仮定しないでください。第三者製 Skill の著作権は原著作者に帰属し、利用リスクは利用者が負います。

1仕組みと動作原理

5段構成:Title bar(会議名 + 日時 + 出席者アバター)→ Agenda チェックリスト → Decisions 角丸カード → Action items テーブル(Owner / Due / Status)→ Next meeting フッター。

next/src/lib/templates/skills/meeting-notes/SKILL.md
- Title bar (会议名 + 时间 + 出席 avatars)
「議論(agenda)」「結論(decisions)」「タスク(action items)」を明確に分離した構造です。

Action items が中心:テーブルヘッダーは Action / Owner / Due / Status で固定され、ステータスはピル型バッジで表現。

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>
4列がヘッダーとして固定されているため、モデルは行ごとに内容を埋めるだけでよく、担当者や期限が説明文に紛れ込むのを防ぎます。

決定事項エリアは「What we agreed to, on the record」を用い、各決定事項を責任の追及が可能な項目(担当者および条件付き)として記載。

next/src/lib/templates/skills/meeting-notes/example.html
<h3>What we agreed to, on the record</h3>
サンプルの決定事項には条件と担当者が明記されており(例:「Devon owns the escalation」)、「決定事項は実行可能でなければならない」という書き方の手本を示しています。

テンプレート自体がプロンプト:SKILL.md 本文はローダーによって読み出された後、共通プリアンブルおよびユーザーコンテンツと結合され、ローカルの agent CLI に渡されて実行。

next/src/app/api/convert/route.ts
prompt = assemblePrompt({ body: skill.body, content, format });
ランタイムはテンプレートディレクトリ内のコードを実行しません:/api/convert は {agent, templateId, content} のみを受け取り、loadSkill(templateId) で SKILL.md 本文を取得してプロンプトのメインとし、ローカルの認証済み agent CLI に渡します。HTML は stdout 経由でフロントエンドにストリーミングされます。

skill ディレクトリは純粋なテキスト資産:ローダーはディスクから SKILL.md 本文を読み取るのみで、ディレクトリ内の実行可能コードは一切ロードされない。

next/src/lib/templates/loader.ts
const raw = safeRead(path.join(dir, "SKILL.md"));
ファイルシステム内の skill は単なるテキストです:ローダーがディレクトリごとに SKILL.md を読み込み、frontmatter をピッカー用メタデータとして抽出し、本文を body として返します。本テンプレートディレクトリ内のモジュールが import または実行されることはありません。

共通プリアンブルがテンプレートの前に注入され、「テンプレートはレイアウト/スタイル/配色/フォント/コンポーネントライブラリのみを定義し、数量はユーザーコンテンツに応じて決定する」ことを最優先事項として設定。

next/src/lib/templates/shared.ts
【内容驱动数量 — 最高优先级, 覆盖模板里的任何数字】
共通プリアンブルはテンプレート本文の前に注入され、「テンプレートはレイアウト/スタイル/配色/フォント/コンポーネントライブラリのみを定義し、数量はユーザーコンテンツに応じて決定する」と規定しています。そのため、本テンプレートのレイアウト一覧は「再利用可能なレイアウトプール」であり、ページ数やフレーム数の上限ではありません。

共通プリアンブルがテンプレートの前に注入され、「テンプレートはレイアウト/スタイル/配色/フォント/コンポーネントライブラリのみを定義し、数量はユーザーコンテンツに応じて決定する」ことを最優先事項として設定。

next/src/lib/templates/shared.ts
- **禁止使用 Write / Edit / MultiEdit / Bash / Create / 任何文件系统工具**。不要把 HTML 写到任何 \`.html\` 文件里。前端直接捕获你的 stdout 文本, 文件落盘由前端负责。
プリアンブルはファイルシステムツールの使用を明示的に禁止し、応答本文から純粋な HTML をストリーミング出力することを要求しており、ディスクへの保存はフロントエンド側が担当します。したがって、skill 側でのディスク書き込み動作はありません。

skill ディレクトリは純粋なテキスト資産:ローダーはディスクから SKILL.md 本文を読み取るのみで、ディレクトリ内の実行可能コードは一切ロードされない。

next/src/lib/templates/loader.ts
const exampleHtml = safeRead(path.join(dir, "example.html"));
ディレクトリ内の example.html はリポジトリとともに配布されるゴールデンサンプルであり、プレビュー用ルーティングがディスクから直接読み取って返します(ビルドやコンパイルは不要)。品質基準であると同時に詳細ページ用の素材でもあります。

2コア機能

01Title bar + 出席エリア(Present メンバー)
02Agenda チェックリスト
03Decisions 角丸カードブロック
04Action items テーブル(Action / Owner / Due / Status)
054段階のステータスピル(To do / In progress / Blocked / Done)
06Next meeting フッター

4推奨統制措置と判定根拠

安全運用のための推奨統制措置
Agent 向け
自動ロード可能
管理者向け
ソースとバージョンの記録
判定根拠(ファイルパスと抜粋)
  • SKILL.md: 純粋なプロンプト指示およびルールテキストのみであり、スクリプト実行や外部への影響は一切なし
監査ノート: 🟢 グリーン()。評価対象=skill 自身のディレクトリ:ディレクトリ内に URL は存在しません(example.html にも http(s) エンドポイントはありません)。ディレクトリ内には SKILL.md と example.html のみが存在し、スクリプト、実行可能コード、ネットワークエンドポイント、認証情報の読み取り、ディスク書き込み指示は一切ありません。SKILL.md に従って実行した結果はホストモデルが HTML テキストを出力するのみであり、外部送信やディスク保存の動作は含まれません。ホスト環境や成果物の利用側の挙動は評価基準に含めず、verdict.risks にのみ記載しています:shared.ts プリアンブルは Tailwind CDN(https://cdn.tailwindcss.com)と Google Fonts の参照を要求し、ランタイムはログイン済みのローカル agent CLI を spawn して実行し(envFor が process.env を透過)、プレビュー iframe は sandbox="allow-scripts allow-same-origin" となっています。

5二重目の独立検証

  • [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) 命中,产物离线自持。

6結論

  • 決定事項とアクションアイテムが分離されており、議事録から即座に実行に移せる
  • アクションアイテムの4列が固定されており、「誰がいつ何をするか」の混同を防止
  • 4色のステータスピルにより、視読・斜め読みの負担を低減
  • スクリプトなし・外部リンクなしで、オフラインでも閲覧可能
  • 最適な用途: チームの週次ミーティング/レビュー議事録、1on1 の記録、チーム間同期ドキュメント。「会議後に誰が何をするか」が一目でわかるアウトプットが必要な場合に最適です。
    不向きな用途: 一言一句の書き起こしが必要な会議記録(構造が要約向けのため);タスク管理システムとの同期が必要な場面(成果物は静的ページであり連携機能は含まないため);厳格なコンプライアンス管理・保存が必要な公式議事録(テンプレートにバージョン管理や署名機能がないため)。
    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
    Agent はこの JSON ガイドから自動的にダウンロードして検証します。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 553ed98c28.