Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ncaq/konoka --skill window-alert-confirmgit clone --depth 1 https://github.com/ncaq/konokaWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/ncaq/konoka/window-alert-confirm)<a href="https://agentmods.dev/skills/ncaq/konoka/window-alert-confirm"><img src="https://agentmods.dev/badge/skills/ncaq/konoka/window-alert-confirm/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/ncaq/konoka/window-alert-confirm"><img src="https://agentmods.dev/badge/skills/ncaq/konoka/window-alert-confirm.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00029 | $0.00878 |
| Opus 5 | $0.00015 | $0.00439 |
| Sonnet 5 | $0.00006 | $0.00176 |
| Haiku 4.5 | $0.00003 | $0.00088 |
Grade A, and why
window-alert-confirm scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
window.alertとwindow.confirmの使用指針
利点
window.alert()とwindow.confirm()はブラウザ標準のAPIです。
以下の利点があるため、適切な場面では使います。
- 実装コストがゼロです。UIコンポーネントの作成やstate管理が不要です
- ブラウザ標準APIのため、キーボード操作やスクリーンリーダーへの対応など最低限のアクセシビリティが確保されています
- メインスレッドをブロックするため、ユーザーが確実に気づきます
confirm()の戻り値で同期的に分岐できるため、コードがシンプルになります
既知の欠点
- メインスレッドを完全にブロックするため、JS実行・アニメーション・タイマーが停止します
- ユーザーが「このページでこれ以上のダイアログを表示しない」を選択すると、
ブラウザが抑制し
confirm()が常にfalseになる可能性があります - Chrome M92以降、クロスオリジンiframe内からの呼び出しは無効化されています
iOS Safariのhistory.pushStateとの組み合わせの問題
iOS Safariではhistory.pushState()で追加された履歴エントリにブラウザバック(スワイプバック含む)で戻ると、
その後のalert()/confirm()/prompt()がサイレントに無視されます。
confirm()は常にfalseを返します。
このバグはiOS 9.3頃から報告されており、
iOS 18時点でも修正されていません。
alert/confirm/promptが無視される問題そのもののWebKit Bugzillaの公開チケットはなく、
Apple内部のRadarで管理されていると推測されています。
WebKitチームはユーザーインタラクションなしのpushStateエントリのスキップを、
意図的なセキュリティ強化として扱っている面もあり、
根本的な修正の見通しは不明です。
Apple Developer Forumでの報告で、
iOS 17/18でも再現が確認されています。
WebKit Bugzillaの#248303は、
直接にはpopstateイベントの問題ですが、
pushStateエントリのスキップという根本原因が共通しています。
SPA的なhistory操作を行うアプリケーションでは、 この問題に該当する可能性があるため注意が必要です。
使用が適切なケース
- サーバが壊れている場合でもないと発生しないであろう稀なAPIエラーやサーバエラーの通知
- 致命的エラーでページ操作を完全にブロックする必要がある場合
- データの削除など、重要な操作の確認
使用を避けるべきケース
- フォームのバリデーションエラー: フォームライブラリでインライン表示してください
- ユーザー確認が必要な通常フロー: HTMLの
<dialog>要素のshowModal()やUIライブラリの機能を使ってください - 頻繁に発生しうる操作結果の通知: トースト通知などを使ってください
- クロスオリジンiframe内で動作するアプリケーション: ブラウザにブロックされるため使えません
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 61 lines · 29 tokens per session scan A e31f004f0a49
window-alert-confirm is a skill published in the GitHub repository ncaq/konoka (3 stars, last pushed 2d ago), licensed Apache-2.0. It adds 29 tokens to every session and 878 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-05.
Other skills, from other repositories
aceternity-ui
100+ animated React components (Aceternity UI) for Next.js with Tailwind. Use for hero sections, parallax, 3D effects, or encountering animation, shadcn CLI integration errors.
tools-unity-ugui
Unity UI patterns including Canvas optimization, list virtualization, and mobile-friendly UI.
motion
UIForge's motion layer — art-directs motion for React/Next.js + Tailwind interfaces built with Motion-Primitives (the shadcn-style copy-in registry, powered by Motion / ex Framer Motion). Use whenever you build or polish a landing page, hero, dashboard, pricing table, feature section, empty state, or any screen where…
sparkle-that-page
Use when a user wants to add cute, playful runtime effects to a web page — a fairy-wand or magic custom cursor (star / heart / moon / pixel / sailor-moon), a sparkle / star / heart / fairy-dust trail following the mouse on move and click, an animated floating scroll-depth / scroll-progress indicator (ring, comet bar…
design-director
UIForge's always-on design brain — the art director for any web UI. Use whenever you build or elevate a landing page, hero, dashboard, pricing table, marketing site, app screen, component, or design system, or when asked to make something feel premium, distinctive, high-end, polished, "not generic," or "not…
content
UIForge's microcopy layer — words are UI. Use when writing or fixing any interface text: headlines, subheads, button/CTA labels, empty states, error and loading messages, tooltips, form labels, onboarding, or marketing copy, or when copy feels generic, hypey, or "AI-written." Enforces outcome-driven labels…