HomeGitHub Copilot「コードは読まない」開発スタイル ― Mermaid図解とモジュール分割で人間とAIの分業を作る
「コードは読まない」開発スタイル ― Mermaid図解とモジュール分割で人間とAIの分業を作る

「コードは読まない」開発スタイル ― Mermaid図解とモジュール分割で人間とAIの分業を作るThe author describes a workflow where humans focus on intent and diagrams while…

AI要点サマリSummary highlight

Claude Codeを活用した開発で「人間は図と意図を持ち、コードはAIが読む」という分業スタイルを確立し、Mermaidによるテキスト図解とモジュール分割がその鍵になると解説している。

The author describes a workflow where humans focus on intent and diagrams while AI reads and manages code, using Mermaid text diagrams and module separation to enable clear human-AI collaboration with Claude Code.

要約と収集メタデータをもとに生成した AI 解説本文です。元記事全文の転載・翻訳ではありません。This AI explainer is generated from the summaries and collected metadata, not from a reproduction or translation of the full source article.

Claude Codeのようなコーディング支援AIが普及するなか、「人間はコードを読まない」という割り切りを軸にした開発スタイルが提案されている。あるZennの記事では、Claude Codeとリアルタイム音声AIを開発する過程で、人間は図と意図を持ち、コードを読むのはAIに任せるという分業に行き着いたと紹介している。

この分業を成立させる鍵として挙げられているのが、テキストで図を記述するMermaidである。筆者が「仕組みをUMLで描いてほしい、コードは読まないから」とAIに頼んだところ、返ってきた提案はGUIツールのdraw.ioではなく、Mermaidだったという。

Mermaidが選ばれた理由として、記事は3つを挙げている。まず、GitHubがREADMEやMarkdown内のMermaid記法を自動でレンダリングするため、図をそのまま閲覧できる点。次に、テキストであるためプルリクエストで差分としてレビューできる点。そして、AIが図を生成・更新できるため、実装の変更と図の更新を連動させやすい点である。

Mermaidはフローチャートやシーケンス図、クラス図などをテキストで表現できる記法で、近年はGitHubをはじめ多くのツールが対応を進めている。図をバイナリではなくテキストで管理できることは、バージョン管理との相性がよく、変更履歴を追いやすいという利点があると見られる。

もう一つの柱がモジュール分割だ。コード全体を人間が把握するのではなく、機能ごとに独立した単位へ切り分けることで、AIが担当範囲を限定して読み書きしやすくなり、人間は意図と全体構造の把握に集中できるという発想である。

こうしたスタイルは、コード生成AIの精度向上を前提に、人間の役割を実装の細部から設計意図や検証へと移していく流れの一例と位置づけられる。ただし、コードを読まない運用が常に有効かは開発対象や規模にも依存すると考えられ、あくまで筆者個人の実践に基づく知見として受け止める必要がある。

As AI coding agents grow capable enough to write and maintain large portions of a codebase, some developers are rethinking which artifacts humans should actually spend their attention on. In a blog post published on Zenn, one developer describes arriving at a deliberate division of labor while building with Claude Code alongside a real-time voice AI system: humans do not read the code. Instead, the AI reads and manages the code, while people hold the diagrams and the intent behind them.

The author frames this as a practical concession rather than a universal law. The reasoning is that once an AI agent handles the bulk of implementation, a human's time is better invested in describing what the system should do and how its parts relate, rather than parsing line-by-line syntax. In that model, the diagram becomes the primary human-facing representation of the system, and natural-language intent becomes the specification the AI works against. The code itself is treated as an output that the machine both produces and consumes.

A notable detail in the account is the choice of diagramming tool. When the author asked the AI to draw the system's mechanics in UML, explicitly noting an unwillingness to read code, the suggestion was Mermaid rather than draw.io. Mermaid is a text-based diagramming syntax, whereas draw.io (also known as diagrams.net) is a graphical, canvas-driven editor. The author cites three reasons for preferring the text-based approach. First, GitHub automatically renders Mermaid inside README files and other Markdown, so diagrams appear directly where documentation lives. Second, because Mermaid is plain text, changes can be reviewed as diffs in pull requests, the same way source changes are. Third, an AI can generate and update Mermaid directly, which means a diagram can be kept in step with the implementation rather than drifting out of date.

That last point speaks to a recurring problem in software documentation: diagrams drawn in binary or proprietary formats tend to rot because they are expensive to keep current. By expressing architecture as text that lives beside the code, the author is effectively treating diagrams as a first-class, version-controlled asset. If the AI updates both the implementation and the corresponding Mermaid description in the same change set, the diagram can function as living documentation rather than a snapshot taken once and forgotten.

The second pillar the author highlights is module separation. Breaking a system into well-bounded modules appears to serve two purposes in this workflow. It gives the human a clean set of components to reason about at the diagram level, and it gives the AI a smaller, more contained surface area to modify when a change is requested. Clear module boundaries make it easier to map a stated intent onto a specific part of the codebase, which is likely what makes the "humans hold intent, AI holds code" arrangement workable in practice rather than just in theory.

Some background helps situate the piece. Claude Code is Anthropic's command-line coding agent, designed to read a repository, make edits, run commands, and iterate within a developer's terminal. It sits alongside other AI-assisted development tools such as GitHub Copilot, which began as an in-editor autocomplete and has expanded toward agentic, multi-file capabilities, as well as editors like Cursor and various open-source agents. The broader industry direction is toward agents that operate over an entire project rather than suggesting single lines, which is what makes a workflow like this one plausible today when it would have been impractical a few years ago.

It is worth treating the described approach as one practitioner's opinion rather than an established best practice. Choosing not to read code carries clear trade-offs around review, debugging, security, and accountability, and the author's framing suggests this works best within a particular kind of project and tooling setup. Mermaid itself has limits; complex diagrams can become unwieldy in text form, and it does not cover every notation a team might need. The value of the post is less a claim that everyone should stop reading code and more a concrete illustration of how diagrams, module boundaries, and version control can be arranged so that humans and AI agents each work with the representation best suited to them. For teams experimenting with agent-driven development, the emphasis on text-based, reviewable, machine-updatable diagrams offers a pragmatic starting point.

  • 出典SourceZenn GitHub CopilotコミュニティCommunity
  • 直近30件の平均重要度Avg importance, last 301=Info · 2=Medium · 3=High
  • 配信形式FormatブログBlog
  • 重要度Importance重要度 MediumMedium priority(GitHub Copilot 191件中、同等以上 154件)(154 of 191 GitHub Copilot entries are equal or higher)
  • 情報の寿命Half-life📘 中期 (チュートリアル)Medium-term (tutorial)
  • 原文言語Source languageJA
  • 収集日時Collected2026/08/17 07:08

本ページの本文と要約は AI による自動生成です。日本語版と英語版は言語ごとに独立して生成されるため、表現や詳しさが異なる場合があります。正確性は元記事 (zenn.dev) をご確認ください。The body and summaries are AI-generated independently for each language, so wording and detail may differ. Verify accuracy at the original source (zenn.dev).

🧠GitHub Copilot の他の記事More from GitHub Copilotもっと見る →View more →