Claude Code を使用して HTML に驚異的な効果をもたらす方法
Claude Code の利用者が、AI エージェントとのコミュニケーションやドキュメント作成において、従来の Markdown に代わり HTML を採用するべき理由と具体的な利点を示す実践的な提案。
キーポイント
情報密度の飛躍的向上
HTML は表計算、CSS によるデザイン、SVG 図形、動的スクリプトなどを統合できるため、AI が生成する複雑な仕様書やデータ視覚化を Markdown よりもはるかに効率的に表現可能。
可読性とナビゲーションの改善
100 行を超える長大なドキュメントでも、HTML のタブ機能やレスポンシブデザインにより、人間が直感的に読み進められる構造を実現し、チームでの共有を容易にする。
双方向インタラクションの実現
スライダーやボタンなどの UI 要素を埋め込むことで、ユーザーがパラメータを調整して結果を即座に確認できる「プレイグラウンド」のような体験を提供し、AI との対話を深化させる。
共有と配布の簡素化
Markdown ファイルを添付する手間なく、単なる URL として HTML を共有することで、デバイスを選ばず即時に閲覧・参照可能な標準的なドキュメント形式となる。
影響分析・編集コメントを表示
影響分析
この記事は、AI エージェントとの対話やドキュメント作成における標準フォーマットの転換点を示唆しており、単なるテキスト記述からインタラクティブな Web コンテンツへシフトする新しいパラダイムを提示しています。開発者やプロダクトマネージャーにとって、生成された仕様書や分析レポートの品質と共有効率を高めるための具体的な実装指針となるでしょう。
編集コメント
AI エージェントの出力形式を「読むもの」から「使うもの」へと進化させる視点であり、実務におけるドキュメント作成ワークフローの効率化に直結する重要な示唆です。
Claude Code を使用:HTML が信じられないほど効果的である理由
Markdown は、AI エージェント (AI Agent) と私たちがコミュニケーションを取る際に最も頻繁に使用されるファイル形式となっています。それはシンプルで携帯性が高く、一定の富テキスト (Rich text) 機能を備えており、何より人間が容易に編集できる点にあります。あなたはまた、Claude が Markdown ファイル内で ASCII (米国情報交換標準コード、ここでは純粋なテキスト記号を組み合わせて図を描くこと) を用いて図を描くことに極めて長けていることに気づくでしょう。
しかし、AI エージェントがますます強力になるにつれ、Markdown が一種の束縛になっていると感じるようになりました。数百行に及ぶ Markdown ファイルを前にすると、読む気力すら湧きません。私はより豊かな視覚表現、鮮やかな色彩、直感的なチャートを求めており、それらをチームと簡単に共有できることを望んでいます。
また、現在ではこれらのファイルを自分で直接編集する機会がますます減っています。むしろ、これらを手順書 (Specs)、参考資料、あるいはブレインストーミングの出力結果として扱うことが多くなりました。修正が必要な場合でも、通常は Claude に対してプロンプト (Prompt) を記述して直接修正させるようにしています。これにより、Markdown の最も核心的な利点である「人間による編集の容易さ」が完全に失われてしまいました。
そこで、Markdown に代わり、出力形式として HTML をより好むようになりました。また、Claude Code チームの他のメンバーも HTML を使用する頻度を高めていることに気づいています。以下では、その背景にある理由についてお話しします。
(まずは直感的な例をご覧になりたい場合は、こちらをクリックして多数のサンプルをご覧ください:https://thariqs.github.io/html-effectiveness/ 。ただし、ご覧になった後は必ず戻ってきて、なぜそうすべきなのかを私が続ける話を聞いてください。)
なぜ HTML を選ぶのか?
情報密度 (Information Density)

HTML は Markdown よりもはるかに多くの情報を伝えることができます。もちろん、見出しやシンプルなレイアウトといった基本的なドキュメント構造を処理することもできますが、その威力はそれだけにとどまりません。複雑な情報を完璧に表現できるのです。具体的には以下のようなものです:
- テーブル (Tables) を用いてデータ列を表示する
- CSS (カスケードスタイルシート、ウェブページの見た目やレイアウトを制御するために使用される) を用いてデザインの細部を表現する
- SVG (スケーラブルベクターグラフィック、コードベースのクリアな画像フォーマット) を用いて美しいイラストを描画する
- script タグを用いてコードスニペット (Code snippets) を埋め込む
- HTML 要素、JavaScript、CSS を組み合わせて動的なインタラクションを実現する
- SVG と HTML を組み合わせて明確なワークフローチャート (Workflows) を描画する
- 絶対配置とキャンバス (Canvases) を用いて空間分布データを視覚化する
- image タグを用いて画像を直接挿入する
私は敢えて言います。Claude が読み取れる情報であれば、HTML で効率的に表現できないものはほとんどないでしょう。この特性により、HTML は極めて効率的な媒体となり、モデルが深い情報をあなたに伝えたり、あなたがそれらを読み込んで審査したりする際にも、非常にスムーズになります。
もし HTML を使用できない場合、モデルは Markdown 内で極めて非効率な「奇策」を講じることが多いことに気づきました。例えば、ASCII 記号を無理やり使ってチャートを描いたり——私が最も呆れ返るケースですが——Claude Code のスクリーンショットのように、Unicode (ユニコード) 文字を用いて色ブロックを強引に模倣したりすることです。

视觉清晰度与易读性 (Visual Clarity & Ease of Reading)

Claude が扱うタスクが複雑化するにつれ、その出力する要件仕様書や実装計画も膨大なものになっています。実際の業務では、100 行を超える Markdown ファイルを自分で読むことさえほとんどなく、ましてやチームの他のメンバーに読んでもらうなどという期待は抱いていません。
しかし HTML ドキュメントであれば読みやすさが段違いです。Claude はタブ (Tabs)、挿絵、リンクといった視覚要素を活用してドキュメント構造を整然と整理し、極めてナビゲーションしやすいものにできます。さらにモバイル対応も可能で、スマートフォンなど異なるサイズのデバイスでも最適な閲覧体験を提供できます。
易于分享 (Ease of Sharing)
Markdown ファイルを共有するのは実は結構な手間がかかります。なぜなら、多くのブラウザ自体が Markdown を適切にレンダリングできないからです。通常は添付ファイルとして扱い、メールやチャットメッセージに無理やり貼り付けて送るしかありません。
しかし HTML なら話は別です。ファイルをクラウド(例えば S3 というクラウドストレージサービス)にアップロードするだけで、リンクを簡単に共有できます。同僚はいつでもどこでも、あらゆるデバイスでそのリンクを開き、手軽に参照することができます。
要件定義書や分析レポート、コードレビューの解説などが HTML で作成されていれば、他人がそれらを真剣に読み通す確率は間違いなく大幅に向上します。
双向交互 (Two-way Interaction)

HTML を使えば、ドキュメントとの真の双方向インタラクションが可能になります。例えば、Claude にページ上にスライダー (Sliders) やノブを追加させ、デザイン効果を直感的に調整できるようにしたり、いくつかのオプションを提供してアルゴリズムのパラメータを微調整し、結果がどう変わるかを確認できるようにしたりできます。さらに、微調整した完璧なパラメータを「ワンクリックでコピー」するボタンを追加させ、それをそのまま Claude Code へ貼り付けて戻すことも可能です。
この双方向インタラクションの具体例についてもっと知りたい場合は、私が以前投稿した「プレイグラウンド (Playgrounds)」に関する記事をご覧ください:https://x.com/trq212/status/2017024445244924382
数据摄取与理解 (Data Ingestion)
なぜターミナルツールである Claude Code を使って HTML ファイルを生成するのか、ウェブ版の Claude AI や Claude Design ではダメなのか。その最大の理由の一つは、Claude Code が極めて膨大なコンテキスト (Context) 情報を取り込める点にあります。
この記事を書く際も、私は Claude Code に私のコンピュータ内のコードフォルダを自動で走査させ、それらの中から Claude が生成した HTML ファイルをすべて見つけ出し、グループ化して分類し、さらに新しい HTML ページを生成させて各カテゴリのファイルを特徴ごとにチャート表示させるよう指示しました。この記事で見られる画像は、まさにこのワークフローの直接的な産物です。
ローカルファイルシステムに加え、Claude Code は MCP(モデル・コンテキスト・プロトコル:AI モデルが外部ツールやプライベートデータにアクセスすることを可能にする標準規格)を通じて、Slack(チームコミュニケーションソフトウェア)のチャット履歴や Linear(プロジェクト追跡ツール)のタスクボードなど、極めて多様なコンテキスト情報にも接続できます。さらに、ブラウザや Git のバージョン管理履歴など、さまざまなソースから背景知識を取得することも可能です。
非常に楽しい (It's Joyful)
Claude を使って HTML ドキュメントを作成すること自体が、非常に楽しい体験です。これにより、創造プロセスに自分自身をより深く関与させている感覚を得られ、この参加感だけでも十分に魅力的です。
始め方 (How to Get Started)
実は少し心配しているのですが、この記事を読んだ皆さんが、これを専用の「/html」複雑スキル指令やそれに類するものにしてしまうのではないかということです。そのような使い方も価値があるかもしれませんが、特に強調したいのは、Claude に HTML を生成させるために、面倒な設定を一切行う必要がないという点です。普段通りチャットをするように、「HTML ファイルを作って」とか「HTML アーティファクト(Artifact)を生成して」と伝えるだけで十分です。
真の秘訣は、このアーティファクトが何を行い、どのように使用されるべきかを明確に理解することにあります。時間が経てば、自分なりのスキルテンプレートが蓄積されることもあるでしょうが、現時点では、最もシンプルなプロンプトから始めて、さまざまなシナリオでのその驚くべき使い方を徐々に探求することを強くお勧めします。
使用例 (Use Cases)
より直感的に理解していただくために、さまざまな使用シーン向けに多数の HTML ファイルを作成しました。すべてのサンプルはこちらで確認できます:https://thariqs.github.io/html-effectiveness/。以下に、いくつかの中核的なシナリオの概要を記載します。
要件、計画と探索 (Specs, Planning & Exploration)
Claude にとって HTML は、問題を深く掘り下げて議論できる広大なキャンバスです。新しい課題に取り組む際、私はもはや単なる Markdown の計画書を受け取ることを期待するのではなく、複数の HTML ファイルが織りなす思考のネットワークを生成することを望みます。
具体的には、まず Claude Code にブレインストーミングを行わせ、いくつかの実装案を探求させます。次に、その中から一つの案を選んで詳細に展開させ、場合によっては UI のスケッチを描かせたり、コアとなるコードスニペットを書かせたりします。最後に、方向性が定まったと感じたら、初めて詳細な実施計画を作成させます。計画に完全に満足したら、新しいセッションを開始し、蓄積されたすべての HTML ファイルを AI に読み込ませて、いよいよコーディングを開始させます。
検証の段階でも、チェックを担当する AI インテリジェンス・セッションにこれらの HTML ファイルを読み込ませることで、より広範な全体像を持ち、私たちが実際に何を達成しようとしているのかを明確に把握できるようにしています。

プロンプトの例:
- 初心者向けガイド画面 (Onboarding screen) のデザインスタイルが決まっていません。レイアウト、トーン、情報密度に違いを持たせた 6 つの全く異なる案を生成し、それらを同じ HTML ファイル内のグリッドレイアウトに配置して並列比較できるようにしてください。各案には、その選択がもたらすトレードオフ(取舍)を明確に記載してください。
- 1 つの HTML ファイル内に、詳細な実施計画を作成してください。データフローを示すビジュアルスケッチを描き、重点的にレビューが必要なコードスニペットを追加することを忘れないでください。レイアウトは明瞭にし、読み手が理解しやすいものにしてください。
適用シーン:
- コードの他の実装方法を探索する
- 並行して複数のビジュアルデザイン案を探索する
コードレビューと理解 (Code Review & Understanding)
Markdown ファイルの中でコードを直接読み解くのは絶対に苦痛な作業です。しかし HTML を用いれば、コードの違いを比較した差分表示 (Diffs)、詳細なページ余白の注釈 (Annotations)、フローチャート (Flowcharts)、そしてモジュール構造図などをエレガントにレンダリングすることができます。
これを使って、AI エージェントが作成した複雑なコードを理解したり、コードレビューの提案を取得したり、PR (Pull Request,プログラマーがコードをマージする際に提出する説明) を提出する際に関係者に自分の考え方を説明したりできます。この方法は GitHub 標準の差分表示ビューよりも一万倍使いやすいと感じています。現在では PR を提出するたびに、必ず HTML 形式のコード解説ページを添付しています。

プロンプトの例:
- この PR をレビューして、そのロジックを私に説明する HTML 製品を作成してください。データフローとバックプレッシャー論理 (Backpressure,受信側が処理しきれない場合に送信側に送信速度を遅くするようフィードバックするメカニズム) にはあまり詳しくないので、この部分を重点的に分析してください。実際のコード差分をレンダリングし、その横に行ごとの注釈をつけてください。問題の深刻度に応じて色分けを行い、概念を伝えるのに役立つ視覚的な図表も追加してください。
適用シーン:
- PR の説明ドキュメントを作成する
- 同僚や AI が提出した PR をレビューする
- コードベース内の特定の複雑なトピックを素早く理解する
デザインとプロトタイプ制作 (Design & Prototypes)
Claude Design の根底にあるロジックは HTML です。最終製品のレンダリング端末がウェブページでなくても、HTML はデザインコンセプトを表現する点において比類なき優位性を持っています。Claude はまず HTML で素早くデザインのスケッチを描き、それを必要なプログラミング言語(React、Swift、あるいは他の言語)に変換することができます。
また、滑らかなインタラクションプロトタイプの作成にも利用できます。例えばアニメーション効果やユーザーの操作フローなどです。Claude にスライダーやノブを追加させてもらえば、実際に手を動かして細部を自分心目中的な完璧な状態まで微調整できるようになります。

プロンプトの例:
- 新しいチェックアウトボタン用のインタラクションプロタイプを作りたいです。クリックするとアニメーションが再生され、すぐに紫色に変わるものです。いくつかのスライダーとオプションを備えた HTML ファイルを生成し、このアニメーションの異なるパラメータ設定を繰り返しテストできるようにしてください。「コピー」ボタンも忘れずに用意して、試行錯誤の結果として完璧だと感じたパラメータをワンクリックでコピーできるようにしてください。
適用シーン:
- デザインシステム (Design system) に関連するコンポーネント資産を作成する
- UI コンポーネントの細部を直感的に微調整する
- つまらないコンポーネントライブラリを視覚的に表現する
- おもしろいアニメーションインタラクションプロトタイプを作る
レポート、調査、学習 (Reports, Research & Learning)
Claude Code は膨大な量の多様なソースデータを統合し、それらを非常に読みやすいレポートに要約することに極めて長けています。Slack のチャット履歴、コードベース、Git のコミット履歴、さらにはインターネット全体を Claude に検索させ、あなた自身や上司、チームのために一目でわかる美しいレポートを作成させることができます。
これを長編の HTML ドキュメント、インタラクティブな解説ページ、あるいはスライド/プレゼンテーション (Deck) としてレイアウトすることも可能です。Claude に SVG 形式で図表を描画させるよう促すのを忘れないでください。これにより、レポートの視覚的表現力が劇的に向上します。
例えば、プロンプトキャッシュ (Prompt Caching) に関する深掘り記事を書く際、私は Claude に関連モジュールの Git ヒストリーを読み込ませ、その期間にキャッシュロジックに対して行ったすべての変更を体系的に整理した、詳細な HTML レポートを生成させました。

プロンプト例:
- 当社のレートリミッター (Rate limiter) がどのように動作しているのか、ずっと理解できませんでした。関連コードを読み込み、トークンバケットフロー (Token-bucket flow) のデータフロー図と、詳細な注釈付きの核心となるコードスニペットを 3〜4 セクション含んだ単一ページの HTML 解説ドキュメントを作成してください。また、ページ下部には「よくある落とし穴 (Gotchas)」セクションを単独で配置してください。レイアウトを最適化し、他者が一度読むだけで完全に理解できるよう配慮してください。
適用シーン:
- 複雑な機能の動作原理の要約
- 難解な概念を平易に解説
- 上司向けに素早く美しい週次業務報告書を作成
- 経営層向けに直感的な障害/インシデントの事後分析レポートを提供
- SVG イラスト、フローチャート、技術アーキテクチャ図の自動描画
カスタム編集インターフェース (Custom Editing Interfaces)
時として、単なるテキスト入力ボックスでは複雑なニーズを正確に記述することが困難です。そのような場合、私は Claude に手元の作業に合わせて、「使い捨て」の簡易な可視化エディターを素早く構築させます。これは完成された製品でも、再利用可能な汎用ツールでもなく、特定のデータセットのために特別に設計された単一の HTML ファイルに過ぎません。
ここで重要なコツは、インターフェースにエクスポート機能を必ず設けることです。「JSON としてコピー」または「プロンプトとしてコピー」といったボタンを用意し、この美しい UI 内で行った操作の結果をそのまま Claude Code に貼り付けて、次のステップに進めるようにします。

プロンプト例:
- Linear のタスク 30 件の優先順位を再整理したいです。HTML ファイルを作成し、各タスクをドラッグ可能なカードとして配置してください。カラムは「現在 (Now) / 次期 (Next) / 後回し (Later) / 削除 (Cut)」の 4 つに跨って設けてください。あなたの判断で事前にソートしておいて構いません。最後に「Markdown としてコピー」ボタンを追加し、最終的な分類と順序付けをワンクリックでエクスポートできるようにしてください。また、各分類に対して簡潔な判断理由も付記してください。
- これが当社の機能フラグ (Feature flag) の設定ファイルです。フォームベースのエディターを生成し、機能モジュールごとにフラグを適切にグループ化して表示してください。相互の依存関係も示してください。もしあるフラグを有効にした際に、その前提となる依存フラグがまだ無効な状態であれば、ポップアップで警告を表示してください。最後に「差分のみコピー」ボタンを追加し、変更したキーと値のペアだけをエクスポートできるようにしてください。
- 私はこのシステムプロンプトの調整を行っています。左右に分割されたエディターを作成してください:左側には編集可能なプロンプトテンプレート、右側には 3 つのサンプル入力ソースを配置します。左側のテンプレートを修正すると、右側では変数を埋め込んだ最終結果がリアルタイムでレンダリングされるようにします。また、画面には文字数とトークン(大規模言語モデルがテキストを処理する基本単位)のカウンター、そしてワンクリックコピーボタンも実装してください。
適用シーン:
- 何らかのものを再順序付け、分類・選別、またはグループ化すること(タスクリスト、テストケース、ユーザーフィードバックなど)
- 構造化された設定情報の編集(機能フラグ、環境変数、複雑な制約条件を持つ JSON/YAML など)
- リアルタイムプレビュー機能を活用してプロンプト、テンプレート、またはコピーライティングを最適化すること
- データセットの整理、特定データ行の承認/拒否、サンプルへのラベル付け、および選択結果のエクスポート
- 長文ドキュメント、音声書き起こし、またはコード差分に対して詳細な注釈を追加し、その注釈内容をエクスポートすること
- 純粋なテキストでは記述するのが極めて困難なパラメータの選定:カラーコード、アニメーションイージングカーブ(Easing curves)、クロップ領域、Cron 定期タスク式(サーバーで定期的にタスクを実行する時間を設定するための形式)、正規表現(Regexes)など。
よくある質問 (Frequently Asked Questions)
私はこれまで多くの人々に、私がどのようにして完全に HTML チームに鞍替えしたかを推奨してきましたが、その過程で以下の頻出質問を何度も受けています。
これでトークン効率の無駄遣いにならないのでしょうか?
確かに、Markdown は通常、より少ないトークンを消費します。しかし、HTML の圧倒的な表現力と、人間による可読性の高さが相まって、全体的な出力結果がはるかに良くなることを発見しました。Opus 4.7 モデルの膨大なコンテキストウィンドウである 100 万(1MM)トークンの中で、このわずかな追加のトークン消費はほぼ無視できるレベルです。
では、現在 Markdown を使うのはいつですか?
正直に申し上げますと、私は今やほとんど何でも Markdown を使わなくなりました。ただし、私がすでに「HTML 極端主義者」の道を進みすぎている可能性を認めます。
生成された HTML ファイルはどうやって確認すればよいのでしょうか?
通常はローカル環境でブラウザ直接開きます(Claude に直接開かせることも可能です)。リンクを他人と共有したい場合は、そのままクラウド上の S3 にアップロードするだけです。
これでは Markdown よりも生成が遅くならないのですか?
確かに遅いです!HTML の生成には、Markdown の 2 倍から 4 倍の時間がかかる可能性があります。しかし、私が実際にテストした結果、生成される結果は間違いなくその価値があり、待つだけの甲斐があります。
バージョン管理はどうすればよいのでしょうか?
正直に申し上げますと、これが HTML の最大の痛点の一つです。すっきりとした Markdown に比べて、HTML ファイルはバージョン管理ツールにおける差分比較(Diffs)が非常に雑多になり、コードレビューを行う際に頭を悩ませることになります。
Claude が生成するページを私の審美観に合わせて、あまり醜くならないようにするにはどうすればよいのでしょうか?
Claude には組み込みのフロントエンドデザインプラグインがあり、これによって相当に優れた HTML ページを生成できます。しかし、もしページを貴社のブランドスタイルに完全に一致させたい場合は、Claude にコードベースをスキャンさせて、専用の「デザインシステム用 HTML ファイル」を作成させることができます。その後、このファイルを Claude への参照資料として提供し、他の HTML ページを生成する際に「模倣」させて、スタイルの高度な一貫性を保たせるのです。
人間と機械の協働を維持する (Stay in the Loop)
結局のところ、私がこれほどまでに HTML を愛する根本的な理由は、これが私に、自分がこの循環の中にあり、Claude と共に戦っていることを確かに感じさせてくれるからです。
私は以前、数百行の Markdown プラン書さえも丁寧に読む気が起きないほどだったため、今後はいったん目を閉じて盲目に任せるしかないのかと恐れていました。しかし今は、HTML があるおかげで、これまで以上に自分自身がこの人間と機械が協働する創作の旅に深く関与できていると感じており、とても嬉しく思っています。
あなたもぜひ、早くこの楽しさに気づいていただければ幸いです。
原文を表示
使用 Claude Code:HTML 难以置信的奇效
Markdown 已经成为 AI 智能体 (AI Agent) 与我们沟通时最常用的文件格式。它简单、便携、具备一定的富文本 (Rich text) 能力,而且极其容易进行人工修改。你甚至会发现,Claude 已经变得极其擅长在 Markdown 文件里用 ASCII (美国信息交换标准代码,这里指用纯文本符号拼凑成图表) 字符来画图了。
但是,随着 AI 智能体变得越来越强大,我开始觉得 Markdown 变成了一种束缚。面对动辄上百行的 Markdown 文件,我根本没有耐心读下去。我想要更丰富的视觉展现、明亮的色彩和直观的图表,而且希望能够轻松地把它们分享给团队。
另外,我现在越来越少亲自去编辑这些文件了。我更多是把它们当作需求文档 (Specs)、参考资料或是头脑风暴的输出结果。即使需要修改,我通常也是直接写提示词 (Prompt) 让 Claude 去改。这就让 Markdown 最核心的优势——易于人工编辑——荡然无存。
因此,相比 Markdown,我开始更偏爱将 HTML 作为输出格式。我也发现 Claude Code 团队的其他成员正越来越频繁地使用 HTML。下面我想和大家聊聊背后的原因。
(如果你想先看些直观的例子,可以点击这里查看大量示例:https://thariqs.github.io/html-effectiveness/ ,不过看完记得回来,听我继续讲讲为什么该这么做。)
为什么选择 HTML?
信息密度 (Information Density)

HTML 能比 Markdown 传达丰富得多的信息。它当然能处理像标题和简单排版这样的基础文档结构,但它的威力远不止于此,它还能完美呈现各种复杂信息,比如:
- 用表格 (Tables) 展示数据列
- 用 CSS (层叠样式表,用于控制网页的外观和布局) 展现设计细节
- 用 SVG (可缩放矢量图形,一种基于代码的清晰图像格式) 绘制精美插图
- 用 script 标签嵌入代码片段 (Code snippets)
- 结合 HTML 元素、JavaScript 和 CSS 来实现动态交互
- 结合 SVG 和 HTML 绘制清晰的工作流图表 (Workflows)
- 用绝对定位和画布 (Canvases) 展示空间分布数据
- 用 image 标签直接插入图片
我甚至敢说:只要是 Claude 能读懂的信息,几乎没有什么是不能用 HTML 高效展现出来的。这种特性让 HTML 成为了一种极为高效的载体,无论是模型向你传递深度的信息,还是你进行阅读审查,都无比顺畅。
我发现,如果无法使用 HTML,模型往往会在 Markdown 里做一些极其低效的“骚操作”,比如硬用 ASCII 字符去画图表;或者——这也是我最哭笑不得的一种——像下面这张 Claude Code 截图里那样,用 Unicode (统一码) 字符来生硬地模拟颜色色块。

视觉清晰度与易读性 (Visual Clarity & Ease of Reading)

随着 Claude 能够处理越来越复杂的工作,它写出的需求规格说明和实施计划也变得越来越庞大。在实际工作中,我发现自己基本不会去读超过 100 行的 Markdown 文件,更别提指望团队里的其他人去读了。
但 HTML 文档就好读多了。Claude 可以通过选项卡 (Tabs)、插图、链接等视觉元素,把文档结构整理得井井有条,极其方便导航浏览。它甚至能做到移动端自适应,让你在手机等不同尺寸的设备上都能获得极佳的阅读体验。
易于分享 (Ease of Sharing)
分享 Markdown 文件其实挺让人头疼的,因为大多数浏览器本身并不能很好地渲染它们。你通常只能把它们当作附件,硬塞进电子邮件或聊天消息里发给别人。
但有了 HTML,只要你把文件上传到云端(比如传到云存储服务 S3 上),你就可以轻松地把链接分享出去。你的同事可以随时随地用任何设备打开它,并轻松作为参考。
如果你的需求文档、分析报告或者代码审查说明是用 HTML 写的,别人真正去耐心阅读它的概率绝对会大幅提升。
双向交互 (Two-way Interaction)

HTML 允许你与文档进行真实的互动。例如,你可以让 Claude 在页面上加几个滑块 (Sliders) 或旋钮,用来直观地调整设计效果;或者提供一些选项,让你微调算法的参数,看看结果会发生什么变化。你甚至可以要求它加个按钮,让你把微调后的完美参数“一键复制”为提示词,直接粘贴回 Claude Code 里去。
想了解更多关于这种双向交互的例子,可以去读读我之前关于“游乐场 (Playgrounds)”的帖子:https://x.com/trq212/status/2017024445244924382
数据摄取与理解 (Data Ingestion)
为什么我们要用终端工具 Claude Code 来生成 HTML 文件,而不是直接用网页版的 Claude AI 或者 Claude Design 呢?最大的原因之一,就在于 Claude Code 能够摄取极其庞大的上下文 (Context) 信息。
拿写这篇文章来说吧。我让 Claude Code 自动遍历我电脑里的代码文件夹,找出所有由它生成的 HTML 文件,对它们进行分组归类,然后生成一个全新的 HTML 页面,在里面用图表展示每一类文件的特征。你在这篇文章里看到的配图,就是这个工作流的直接产物。
除了本地文件系统,Claude Code 还能通过你的 MCP (模型上下文协议,一种允许 AI 模型访问外部工具和私有数据的标准) 接入其他极其丰富的上下文信息,比如 Slack (团队通讯软件) 聊天记录、Linear (项目追踪工具) 任务看板等。它还能结合浏览器、Git 版本控制历史记录等多种来源获取背景知识。
充满乐趣 (It’s Joyful)
用 Claude 制作 HTML 文档本身就是一件极其好玩的事。它让我感觉自己更深度地参与到了创造的过程中,光凭这份参与感,就足够有吸引力了。
如何开始 (How to Get Started)
我其实有点担心,大家读完这篇文章后,会把它搞成一个专门的 /html 复杂技能指令或者类似的东西。虽然那样做可能也有价值,但我特别想强调的是:你根本不需要做任何繁琐的设置,就能让 Claude 为你生成 HTML。你只需要像平时聊天一样,直接告诉它:“给我做一个 HTML 文件”或者“生成一个 HTML 制品 (Artifact)”就行了。
真正的诀窍在于,你要清楚自己希望这个制品能做什么,以及你会如何使用它。也许随着时间的推移,你会总结出一套自己的技能模板,但就目前而言,我强烈建议你直接从最简单的提示词开始,慢慢摸索它在不同场景下的奇妙用法。
使用场景 (Use Cases)
为了让大家有更直观的感受,我已经为各种不同的使用场景制作了许多 HTML 文件。你可以在这里查看所有示例:https://thariqs.github.io/html-effectiveness/ ,下面是对一些核心场景的概览。
需求、计划与探索 (Specs, Planning & Exploration)
对 Claude 来说,HTML 是一块可以深入探讨问题的广阔画布。当接手一个新问题时,我不再指望它只给我丢出一个单薄的 Markdown 计划,而是期望它能生成一张由多个 HTML 文件交织而成的思考网络。
比如,我会先让 Claude Code 进行头脑风暴,探索几种不同的实现方案;接着,我会让它选中其中一个方案深入展开,可能还会让它画些界面草图或者写几段核心代码片段;最后,当我觉得方向对了,我才会让它写出一份详细的实施计划。等我对计划彻底满意后,我会开启一个新会话,把这些积累下来的 HTML 文件全部喂给它,让它正式开始敲代码。
在验证环节,我也会让负责检查的 AI 智能体会话读取这些 HTML 文件,这样它就能拥有更宏伟的全局视角,清楚我们到底想要实现什么。

提示词示例:
- 我还没想好新手引导页面 (Onboarding screen) 要走什么风格。请生成 6 种截然不同的方案——在布局、语气和信息密度上做出差异——并把它们放在同一个 HTML 文件的网格布局里,方便我并排对比。请在每个方案旁清晰标注它所做的取舍权衡。
- 请在一个 HTML 文件里创建一份详尽的实施计划。记得画一些视觉草图,展示数据流向,并补充上我可能需要重点审查的代码片段。排版要清晰,让人容易消化理解。
适用场景:
- 探索一段代码的其他实现方式
- 并行探索多种视觉设计方案
代码审查与理解 (Code Review & Understanding)
在 Markdown 文件里生啃代码绝对是一件痛苦的事。但有了 HTML,我们就能优雅地渲染出代码差异对比 (Diffs)、详细的页边注释 (Annotations)、流程图 (Flowcharts) 以及模块结构图等。
你可以用它来理解 AI 智能体写出的复杂代码,获取代码审查建议,或者在提交 PR (Pull Request,程序员提交代码合并请求时的说明) 时向评审人解释你的思路。我发现这种方式往往比 GitHub 自带的差异对比视图好用一万倍,现在我每次提交 PR,都会雷打不动地附带一个 HTML 格式的代码解读页面。

提示词示例:
- 帮我审查这个 PR,生成一个 HTML 制品来向我解释它的逻辑。我对数据流和背压逻辑 (Backpressure,指接收方处理不过来时向发送方发出减缓发送速率的反馈机制) 不太熟悉,所以请重点剖析这部分。请渲染出真实的代码差异,并在旁边加上行内注释。根据严重程度对你发现的问题进行颜色编码,还可以加上任何有助于传达概念的视觉图表。
适用场景:
- 创建 PR 的说明文档
- 审查同事或 AI 提交的 PR
- 快速理解代码库中的某个特定复杂主题
设计与原型制作 (Design & Prototypes)
Claude Design 的底层逻辑就是 HTML,因为即使你最终产品的渲染终端不是网页,HTML 在表达设计理念方面依然具有无可匹敌的优势。Claude 可以先用 HTML 快速勾勒出设计草图,然后再把它翻译成你需要的编程语言,不管是 React、Swift 还是其他语言。
你还可以用它来制作丝滑的交互原型,比如动画效果或用户操作链路。不妨试着让 Claude 帮你加上一些滑块和旋钮,这样你就能亲自上手,把细节微调到你心目中的完美状态。

提示词示例:
- 我想为一个新的结账按钮做个交互原型:点击它时,它会播放一段动画,然后迅速变成紫色。请生成一个带有几个滑块和选项的 HTML 文件,让我能反复测试这套动画的不同参数配置。记得给我提供一个“复制”按钮,方便我把试出来觉得完美的参数一键复制下来。
适用场景:
- 创建设计系统 (Design system) 的相关组件资产
- 直观地微调 UI 组件细节
- 将枯燥的组件库可视化展现
- 制作充满乐趣的动画交互原型
报告、研究与学习 (Reports, Research & Learning)
Claude Code 极其擅长整合海量的多源数据,并将它们提炼成可读性极强的报告。你可以让 Claude 去搜索你的 Slack 聊天记录、你的代码库、Git 提交历史甚至整个互联网,然后为你自己、你的领导或者你的团队生成一份一目了然的精美报告。
你可以将它排版成一篇长篇 HTML 文档、一个带交互的解说页面,甚至是一个幻灯片/演示文稿 (Deck)。别忘了提醒 Claude 尽情使用 SVG 格式来绘制图表,这会让报告的视觉表现力瞬间拉满。
例如,在我撰写关于提示词缓存 (Prompt Caching) 的深度文章时,我让 Claude 阅读了相关模块的 Git 历史记录,然后生成了一份深度的 HTML 研究报告,帮我系统梳理了我们在此期间对缓存逻辑做过的所有修改。

提示词示例:
- 我一直搞不懂我们的限流器 (Rate limiter) 到底是怎么工作的。请阅读相关代码,并为我生成一个单页的 HTML 讲解文档:包含一个令牌桶机制 (Token-bucket flow) 的数据流向图、3 到 4 段带有详细注释的核心代码片段,并在页面底部单列一个“常见陷阱 (Gotchas)”部分。请优化排版布局,确保别人只读一遍就能彻底弄懂。
适用场景:
- 总结某个复杂功能的工作原理
- 向我通俗解释一个晦涩的概念
- 给老板快速生成精美的本周工作汇报
- 给领导层出具直观的故障/事故复盘报告
- 自动绘制 SVG 插图、流程图和技术架构图
自定义编辑界面 (Custom Editing Interfaces)
有时候,单纯靠文字输入框很难准确描述你的复杂需求。遇到这种情况,我会让 Claude 专门为我手头上的工作,快速搭建一个“用完即走”的临时可视化编辑器。它不是一个成熟的产品,也不是一个可以反复利用的通用工具,仅仅是一个专为这批特定数据量身定制的单一 HTML 文件。
这里的核心窍门在于,一定要在界面上设计一个导出功能:比如一个“复制为 JSON”或“复制为提示词”的按钮,这样你就能把你在这个精美 UI 里一顿操作后的成果,直接粘贴回 Claude Code 里继续下一步工作。

提示词示例:
- 我需要重新梳理这 30 个 Linear 任务单的优先级。请给我做一个 HTML 文件,把每个任务做成一张可拖拽的卡片,横跨分为“现在 (Now) / 接下来 (Next) / 以后再说 (Later) / 砍掉 (Cut)”四个栏目。你可以根据你的理解先帮我预先排序好。最后加一个“复制为 Markdown”的按钮,一键导出最终的分类排序结果,并且为每个分类补充一句简短的判断理由。
- 这里是我们的功能开关 (Feature flag) 配置文件。请为它生成一个基于表单的编辑器,按功能模块对开关进行合理分组,展示它们之间的依赖关系;如果我打开了一个开关,但它的前置依赖开关还处于关闭状态,请弹窗警告我。最后加一个“复制差异”的按钮,只导出我修改过的键值对。
- 我正在调优这个系统提示词 (System prompt)。请做一个左右对照的编辑器:左边是可编辑的提示词模板,变量槽 (Variable slots) 要高亮显示;右边放 3 个示例输入源,当我修改左边的模板时,右边要能实时渲染出填入变量后的最终效果。界面上还要有字符和 Token (大语言模型处理文本的基本单位) 的计数器,以及一个一键复制按钮。
适用场景:
- 对任何事物进行重新排序、分类分诊或分组(任务单、测试用例、用户反馈)
- 编辑结构化配置信息(功能开关、环境变量、带有复杂约束条件的 JSON/YAML)
- 借助实时预览功能调优提示词、模板或文案
- 整理数据集、批准/拒绝特定数据行、给示例打标签并导出选中结果
- 为长文档、录音文稿或代码差异添加详细批注,并导出批注内容
- 挑选那些用纯文字极其痛苦才能描述清楚的参数:颜色代码、动画缓动曲线 (Easing curves)、裁剪区域、Cron 定时任务表达式 (用于配置服务器定时执行任务的时间格式) 、正则表达式 (Regexes) 等。
常见问题解答 (Frequently Asked Questions)
我一直在向很多人安利我是如何彻底倒向 HTML 阵营的,期间也经常被问到以下几个高频问题。
这样不会很浪费 Token 效率吗?
确实,Markdown 通常消耗的 Token 更少。但我发现,HTML 极强的表现力以及它极高的人工阅读率,让我整体上获得了好得多的输出结果。在 Opus 4.7 模型高达 100 万 (1MM) 的庞大上下文窗口里,多花的这点 Token 几乎是可以忽略不计的。
那你现在什么时候还会用 Markdown?
说实话,我现在几乎干什么都不用 Markdown 了,不过我承认我可能已经在“HTML 极端主义者”的道路上走得太远了。
怎么查看生成的 HTML 文件?
我通常直接在本地用浏览器打开它(你也可以直接让 Claude 帮你打开)。如果想把链接发给别人,直接传到云端 S3 上就行。
这生成起来不比 Markdown 慢吗?
确实更慢!生成 HTML 的时间可能是生成 Markdown 的 2 到 4 倍,但我亲身测试下来,生成的结果绝对物超所值,值得等待。
那版本控制怎么办?
老实说,这确实是 HTML 最大的痛点之一。相比起清爽的 Markdown,HTML 文件在版本控制工具里的差异对比 (Diffs) 非常杂乱,代码审查起来比较头疼。
怎么让 Claude 生成的页面符合我的审美,不至于太丑?
Claude 内置的前端设计插件已经能帮它生成相当不错的 HTML 页面了。但如果你想让页面完全契合你们公司的品牌风格,你可以让 Claude 扫描你们的代码库,生成一个专属的“设计系统 HTML 文件”。之后,你可以把这个文件作为参考资料丢给 Claude,让它在生成其他 HTML 页面时“照猫画虎”,保持风格的高度一致。
保持人机协同 (Stay in the Loop)
说到底,我觉得自己如此钟爱 HTML 的根本原因在于:它让我真切地感觉到,自己依然在这个循环之中,依然在与 Claude 并肩作战。
我之前一度很恐惧,既然我连几百行的 Markdown 计划书都懒得仔细看了,那以后是不是只能两眼一抹黑,任由 Claude 自己去盲目做决定了?但现在我很高兴地说,因为有了 HTML,我感觉自己比以往任何时候都更紧密地参与到了这段人机协同的创作旅程中。
希望你也能尽快体会到这种乐趣。
関連記事
今日のまとめ
AI日報で今日の重要ニュースをまとめ読み