デザイン&モーション · nexu-io/html-anything

deck-safety-alert

レッド・アンバーの警告色 + hazard ストライプ + L1/L2/L3 tier カード + 取り消し線見出し

L3 ネットワーク · ドメインとキー範囲を宣言V1 コミット固定ネットワーク通信Dual-pass Audit
Author nexu-ioGitHub nexu-io/html-anything ↗Stars 8827License Apache-2.0(工作副本根目录 LICENSE 文件 = Apache License Version 2.0;GitHub API spdx_id=Apache-2.0。注意:skill 目录本身不含独立 LICENSE,许可来自仓库根;第三方来源模板在 README 另有署名说明)Commit 553ed98c28
管理レベルは Skill の能力と推奨統制措置を示すものであり、品質や安全性の認証、利用可否の判定ではありません。使用の可否はユーザーおよび管理者が決定します。Agent 環境によって制約が異なるため、自動保護を仮定しないでください。第三者製 Skill の著作権は原著作者に帰属し、利用リスクは利用者が負います。

1仕組みと動作原理

本 skill は html-anything の「テンプレートパッケージ」です。frontmatter はセレクターがメタデータを取得するために使用され、SKILL.md 本文(frontmatter 以降の body)は loader によってそのまま読み出され、モデルへの指示として機能します。

next/src/lib/templates/loader.ts
const { fm, body } = parseFrontmatter(raw);
本テンプレート本文は 24 行 / 705 バイト(意図 + 6 つの警告レイアウト要素)です。frontmatter は parseFrontmatter により fm/body の 2 つに分割され、ディレクトリ内に実行スクリプトは一切含まれません。

実際にモデルへ送られるプロンプト = 共通デザイン指示 + 本テンプレート本文 + 【入力フォーマット】 + 【ユーザーコンテンツ】です。共通指示には、テンプレート内のページ数やレイアウト数が上限ではないことを宣言する上書きルールも含まれます。

next/src/lib/templates/shared.ts
return `${SHARED_DESIGN_DIRECTIVES} ${opts.body.trim()}
同一ファイル内で直後に続く上書きルールには、「テンプレートは『使用可能なレイアウト / スタイル / 配色 / フォント / コンポーネントライブラリ』のみを定義し、スライド / フレーム / カード / セクションの数は**定義しない**」と一字一句明記されています。

出力規律は共通指示によって厳格に制約されます。agent によるファイルシステムツールの使用は禁止されており、HTML は stdout テキストストリームとして出力され、フロントエンド側でディスクに保存される必要があります。

next/src/lib/templates/shared.ts
- **禁止使用 Write / Edit / MultiEdit / Bash / Create / 任何文件系统工具**。不要把 HTML 写到任何
本テンプレート自体は保存方法を宣言しておらず、完全にこの共通制約に依存しています。

警告セマンティクスは「45° hazard ストライプ + 取り消し線見出し」の二重シンボルによって実現されます。ストライプが上下を占有し、見出しは取り消し線によって「否定 / 却下」を表現します。

next/src/lib/templates/skills/deck-safety-alert/SKILL.md
- 顶/底 45° 红黑 hazard 条纹
同段落には「- 赤い取り消し線の否定見出し」もあり、両者が合わさってインシデント通知の視覚的慣例を形成しています。

重要度レベルは L1/L2/L3 の 3 色 tier カードで表現されます。緑 / アンバー / 赤がそれぞれ対応し、リスクレベルを素早く読み取れるカードに仕立てています。

next/src/lib/templates/skills/deck-safety-alert/SKILL.md
- L1/L2/L3 绿 / 琥珀 / 红 tier 卡片
これが本テンプレートと汎用 deck との主な相違点です。レイアウト要素自体がレベル分けのセマンティクスをコード化しています。

Policy as Code シナリオは policy-yaml コードブロックで表現されます。左側の赤いボーダー + bad キーワードのハイライト表示が特徴です。

next/src/lib/templates/skills/deck-safety-alert/SKILL.md
- policy-yaml 代码块 (红左边框 + bad 关键词高亮)
意図説明にある「policy-as-code」用途に対応しています。

CLI キーワードルーティング: safety / alert / 安全 / 告警 / warning → deck-safety-alert。

cli/src/skills-matcher.ts
[["safety", "alert", "安全", "告警", "warning"], "deck-safety-alert"],
この行は eng-runbook(runbook/oncall/事故/incident)と隣接しており、インシデント関連のコンテンツはセマンティクスに基づいて 2 つのテンプレートに振り分けられます。

2コア機能

01上下に 45° の赤黒 hazard ストライプを配した警告ボックス
02取り消し線の否定見出し(「実行不可 / 却下済み」を表現)
03L1/L2/L3 の 3 色重要度 tier カード(緑 / アンバー / 赤)
04ドットステータス alert box(状態インジケーター)
05policy-yaml コードブロック: 赤い左ボーダー + bad キーワードハイライト(Policy as Code の解説用)
06赤緑チェックリスト + インシデント積み上げ棒グラフ(ポストモーテムの定量化)
07適用シナリオの自己記述: 安全 / リスク / インシデント振り返り / red team / policy-as-code
08CLI キーワードルーティング: safety / alert / 告警 / warning → deck-safety-alert

3外部依存関係

KindDependency / Endpoint
cli宿主本机 agent CLI(应用侧 spawn;非本 skill 指令)
networkGoogle Fonts(产物示例引用,非 skill 正文要求)
networkSVG 命名空间 URI(非网络端点)

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

安全運用のための推奨統制措置
Agent 向け
アクセス可能ドメインとキー範囲を宣言
管理者向け
最小権限のキー、リクエストログを保持
判定根拠(ファイルパスと抜粋)
  • 网络端点: 外部ネットワークアクセスの宣言: example.html 内で fonts.googleapis.com フォントの複数の @import および SVG 名前空間 http://www.w3 が検出されました。
監査ノート: 判定対象=skill ディレクトリ(SKILL.md + example.html): 実行可能スクリプトなし、クレデンシャル読み取りなし、ディスク書き込み指示なし。SKILL.md 本文には URL や CDN/API の要求は一切なく、6 つの警告レイアウト要素に関するテキスト仕様のみが含まれます。ディレクトリ内エンドポイントの自己証明: example.html 内の複数の fonts.googleapis.com @import および SVG 名前空間 URI http://www.w3.org/2000/svg(リクエストではない)。当リポジトリの html-anything テンプレートは、第 4 バッチ基準に基づき一律で 🟢 緑判定とします。判定対象=skill 自身のディレクトリであり、ホストシェル(loader.ts/assemblePrompt/ローカル agent CLI/プレビュー用 iframe)および example.html 内のフォントや CDN 参照は生成物フェーズの動作(ブラウザによって取得され、skill 実行時には外部送信されない)であるため、reason/risks に記載するのみで格付け判定には影響しません。

5二重目の独立検証

  • [ok] 文件清单(2 个文件,无脚本) — SKILL.md(705B) + example.html(27352B)。
  • [ok] 正文零端点复核 — SKILL.md 内 http/CDN/fetch/script 零命中。
  • [ok] 目录内端点自证 — example.html: fonts.googleapis.com(多条 @import)+ http://www.w3.org/2000/svg(SVG 命名空间,无请求)。
  • [ok] 无凭证读取 — key/secret/token/.env 零命中。
  • [ok] 无写盘指令 — SKILL.md 无 write/save 类指令;shared.ts 明令禁文件工具。
  • [ok] 6 条版式元素逐条可复核 — hazard 条纹 / 删除线标题 / L1-L2-L3 tier 卡 / 圆点 alert box / policy-yaml 代码块 / checklist + 堆叠柱状图 全在正文。
  • [ok] 样例产物符合 deck 约定 — example.html: 8 个 <section>、8 处 class 含 slide、无 data-slide-id(id 回退为序号)。
  • [ok] official_desc 逐字命中 — 与第 6 行 description 引号内文本一致。

6結論

  • 正確なドメインセマンティクス: hazard ストライプ、取り消し線見出し、L1/L2/L3 カードはいずれも安全通報において確立された視覚言語です。
  • 単なる配色の違いにとどまらず、「レベル分類」をテンプレートのファーストクラスシチズンとして扱っています(L1/L2/L3 3色カード)。
  • Policy as Code シナリオをカバー: policy-yaml コードブロックに bad キーワードのハイライト機能を搭載。
  • 振り返りの定量化が可能: 赤緑チェックリスト + インシデント積み上げ棒グラフ。
  • 最適な用途: セキュリティチームによるインシデントの振り返り、red team の報告、Policy as Code のレビュー、リスク登録簿の報告に最適です。また、L1/L2/L3 のレベル分けをカード化して経営陣向けに素早く確認できるようにする用途にも適しています。
    不向きな用途: 一般的な製品 / マーケティング deck には不向きです(警告セマンティクスが主張しすぎます)。祝賀的またはニュートラルなトーンが求められる場面には不向きです。純粋なデータグラフ中心の報告には不向きです(本テンプレートが提供するのはレベル分類と通知構造であり、分析の深さではありません)。
    Install Agent-Ready
    ① Verified Mirror 2026-09-15
    Option A · Direct DownloadDownload deck-safety-alert.tar.gz
    sha256: e4a5a22db95ff0b0…
    Option B · Copy Guide for Agent
    install.json
    Agent はこの JSON ガイドから自動的にダウンロードして検証します。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 553ed98c28.