backend-patterns
FreeBackend architecture patterns, API design, database optimization, and server-side best practices for Node.js, Express, and Next.js API routes.
The English summary is being prepared. Showing the original description.
Web取得の標準前処理レイヤー。URL・公式ドキュメント・ブログ・ニュース・OSSページを読むときは、原則として毎回このSkillでDefuddleを使い本文をMarkdown/JSON化してから読む。生HTMLのまま要約・分析・比較・レビューしない。
トリガー例: URLを読む/Webページ要約/OSS調査/公式Doc確認/記事解析/競合サイト確認/Web一次情報確認。
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
Webページ本文を抽出し、LLMが読みやすい Markdown/JSON に整形する。 Claude Code が Webページ、URL、公式ドキュメント、ブログ記事、ニュース記事、OSSページを読む場合は、原則として毎回このSkillを使う。
When reading any public web URL, use Defuddle first.
Do not summarize, analyze, compare, or review a web page from raw HTML unless Defuddle extraction fails or the page type is explicitly unsupported.
# 公開URLを取得して本文をMarkdown/JSON化(SSRFガードあり)
~/.claude/skills/web-content-extraction/scripts/run-node.sh \
~/.claude/skills/web-content-extraction/scripts/defuddle-url.mjs <url>
# ローカルHTMLファイルを本文抽出(外部通信なし)
~/.claude/skills/web-content-extraction/scripts/run-node.sh \
~/.claude/skills/web-content-extraction/scripts/defuddle-file.mjs <file>
出力は JSON(stdout)。最低限 success, url, fetchedAt/parsedAt, title, author,
site, domain, published, description, wordCount, content(Markdown) を含む。
warnings / fetchWarnings がある場合は抽出の信頼性に注意する。
| フィールド | 意味 |
|---|---|
success | 本文抽出に成功したか(false は抽出失敗/空) |
warnings | 本文が短い・空など低信頼の警告 |
url / requestedUrl / finalUrl | 対象URL(リダイレクト後の最終URL含む) |
fetchedAt / parsedAt | 取得・解析時刻(ISO8601, 監査用に必ず保持) |
title author site domain published description | メタデータ |
wordCount | 語数(空白区切り。日本語は極端に小さく出る) |
charCount | 非空白の文字数(日本語の実分量はこちらで判断) |
cjkCharCount | CJK文字数(日本語/中国語/韓国語の量の目安) |
content | 本文(HTMLはMarkdown、PDFはプレーンテキスト) |
extractorType | サイト固有抽出器が使われた場合の種別 |
extractorEngine | PDF抽出時のみ "pdf"。pageCount も付く |
useAsync はupstreamに存在しないため意図を構造で担保)。localhost / プライベートIP(10/8,172.16/12,192.168/16,127/8,169.254/16,100.64/10 等) /
.local/.internal 等 / 単一ラベルの内部ホスト名 / 非http(s) / 認証情報付きURL は標準で拒否。2000::/3 以外は全拒否。Teredo/site-local/documentation/NAT64/IPv4-mapped/6to4(private埋め込み)等を含む)。ALLOW_PRIVATE_URLS=true(バイパスは stderr に監査記録)。success:false や warnings あり)で断定しない。公開URLが PDF(content-type: application/pdf / .pdf / 先頭 %PDF-)の場合、defuddle-url.mjs
は自動で pdfjs-dist によるテキスト抽出にフォールバックする(extractorEngine:"pdf", pageCount 付き)。
content はMarkdownでなくプレーンテキスト。charCount:0+警告 → OCRが必要(本Skillの対象外)。defuddle-file.mjs はHTML専用)。cd ~/.claude/skills/web-content-extraction && ./scripts/run-node.sh --test
test/url-guard.test.mjs(SSRFガード)/ test/defuddle-core.test.mjs(charCount)/
test/extract-smoke.test.mjs(実抽出スモーク: HTML+PDF)/
test/defuddle-url.test.mjs(URL CLI exit code契約)を実行。DNS非依存・オフラインの
決定的テストのみ。CIは .github/workflows/skill-web-content-extraction.yml(Node 22/24 マトリクス)。
web-content-update feature が有効な場合のみ、SessionStart フックで依存(defuddle/jsdom/pdfjs-dist/undici)の更新を確認する。npm test 通過時のみ採用、失敗時は自動ロールバックする。手動実行は npm run update:deps。詳細は README 参照。
PDFやGitHubリポジトリなど、Defuddleだけでは不十分な対象では適切な専用手段を併用する。
本Skillは defuddle の実API検証に基づく(0.6.x で検証、0.18.x で再確認。依存は自動更新)。当初設計(linkedom /
useAsync:false)からの逸脱:
defuddle/node は jsdom 専用(peerDependency)。linkedom では
getComputedStyle/メディアクエリ評価が未実装で例外となり、ノイズ除去に失敗する(実証済み)。
→ jsdom を採用。useAsync は存在しない(0.6.x–0.18.x の dist 全体に出現なし)。意図(非同期外部取得をしない)は
「同期 parse() + resources:'usable' を付けないDOM + スクリプト非実行」で構造的に担保。defuddle/node に文字列を渡すと内部JSDOMが resources:'usable' で外部フェッチするため、
本Skillは自前で安全オプションのJSDOMを構築して渡し、外部取得を防いでいる。No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Backend architecture patterns, API design, database optimization, and server-side best practices for Node.js, Express, and Next.js API routes.
The English summary is being prepared. Showing the original description.
ClickHouse database patterns, query optimization, analytics, and data engineering best practices for high-performance analytical workloads.
The English summary is being prepared. Showing the original description.
日本語の業務文書を作成・修正するときに使用する共通品質基準。事実性、確度、論理、簡潔さ、自然な日本語を守る。提案書、報告、技術説明、議事録、メール、Slack、要約、レビューに適用する。創作、広告コピー、コードや構造化データだけの生成には使用しない。
The English summary is being prepared. Showing the original description.
Universal coding standards, best practices, and patterns for TypeScript, JavaScript, React, and Node.js development.
The English summary is being prepared. Showing the original description.
Formal evaluation framework for Claude Code sessions implementing eval-driven development (EDD) principles.
The English summary is being prepared. Showing the original description.
Frontend development patterns for React, Next.js, state management, performance optimization, and UI best practices.
The English summary is being prepared. Showing the original description.