Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Agent Rules as Domain Parser
Search
Yoda Keisuke
May 28, 2025
Programming
5.2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Agent Rules as Domain Parser
Yoda Keisuke
May 28, 2025
More Decks by Yoda Keisuke
See All by Yoda Keisuke
Eval-Driven Prompt Engineering(プロンプトのevalを書き始めたら〜記事の概要)
yodakeisuke
0
100
Expertise as a Service via MCP
yodakeisuke
1
4.2k
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
4.2k
.mdc駆動ナレッジマネジメント/.mdc-driven knowledge management
yodakeisuke
32
27k
Reactのミニマム理解 〜UI = f(data)(state)+sideEffect〜
yodakeisuke
5
190
インフラ高級言語としてのAWS CDK〜"設定"より1段階ハイレベルな抽象化〜
yodakeisuke
1
150
Other Decks in Programming
See All in Programming
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
150
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
750
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
660
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
480
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
140
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
210
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
460
霧の中の代数的エフェクト
funnyycat
1
470
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
680
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
200
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
290
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
130
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.7k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
370
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Balancing Empowerment & Direction
lara
6
1.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Between Models and Reality
mayunak
4
380
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Product Roadmaps are Hard
iamctodd
55
12k
Code Review Best Practice
trishagee
74
20k
Building Adaptive Systems
keathley
44
3.2k
Bash Introduction
62gerente
615
220k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
Agent Rules as Domain Parser a Roomba-Ready code ドメイン知識の可逆変換 LLM
Night〜コーディングAIの自社ルール運用 2025年5月28日 株式会社ログラス 依田啓佑(x :kei_output_1104 ) 1
#前置き 2 LTですし…話したいこと話す、に結構振っちゃいました
前提 3
#問い 4 Coding Agentが望む機能を即時に自動実装する 大規模保守でも破綻せず継続的にそれを行える ブラックボックス化によって説明責任を果たせなくなることもない こんな未来は訪れるでしょうか? それはLLM性能の向上を座して待てば享受できるものでしょうか?
# サマリ 「ドメイン知識」の表現の相互変換 5 ドメイン知識の Single Source of Truth としての
コード (ここだけ永続化) 3重メンテせず、 都度ビューとし て復元 Parserあるいは 関手としての Agent Rule それぞれ半構造化され た空テンプレ/サンプル だけ用意
# Back Casting 6 いずれは内部コードに 人間が関知しなくなる かも…? LLMの性能向上
Problem 7
# Gap 具体的にはどんなハードルがあるのか 8 Gap ①「要件」なるもの->コードのマッピングが 一筋縄ではいかない LLMの性能向上が解決するものか…? ② ”
Roomba-Ready ”な状態である必要がある (コードが綺麗・コンテキストを整備) ③ ブラックボックス化したら説明責任が果たせ ない(ドキュメントとコードの2重メンテでカ バーすることに)
# LTの論点設定 9 実装に人間がおおよそ不要になる未来は遠い? 我々は安泰なんだ…そうに違いないんだ… というよりは ・逆に既存のやり方をぶっ壊す ・実務レベルで実装に人間不要にする には ・
どんなハードルがある? ・ その打開のためにできる仕込みは何? を考えてみる
# 話のScope 10 このへんの スコープの話
# Appendix 参考: DDDやBDDの勉強になるソース 11 https://matarillo.com/dmmf/ https://www.manning.com/books/architecture-modernization @kawashima さんによる書評 https://qiita.com/kawasima/items/05f231653ef
773697991#architecture-modernization
# Appendix 参考: DDDやBDDの勉強になるソース 12 https://leanpub.com/bddbooks-formulation-jp https://www.manning.com/books/bdd-in-action-second-edition BDDの手法は受入基準駆動開発・TDDに接続できる
# Gap1: 「要件」なるもの コードのマッピングが一筋縄ではいかない 13 要件からコードを生成する、と言うがそもそも「要件」を形式的に表現し切ることが難しい そもそも`要件`、`仕様`をいい感じに表現する「これだ!」というフォーマット・方法論は システム開発というものが始まって以来、「無い」認識 多様な文脈における「要件」を、完全に形式的な型にハメるのは非現実的 遊びを残しつつ、半構造化・半形式化する
ことは可能 半構造・半形式 の扱いはLLMくんの吸収できる領域 しかし、コードを生成できるレベルの要件表現にはある程度の形式化が必要
# Gap1: 「要件」なるもの コードのマッピングが一筋縄ではいかない 「ドメイン知識」の変遷をスムーズに行うために… 14 1.2 半構造化されていて欲しい 1.1現実とコードモデルの「捉え方」に ギャップがあって欲しく無い
# Gap2: ” Roomba-Ready ”な状態である必要がある(コードが綺麗・コンテキストを整備) ” Roomba-Ready ” でAgent Friendly
なコードベースに求める要素は… 15 2.2 コードが知識を 表明していて欲しい 2.1 構造化されたエンコード を強制したい 散らかった部屋ではワークできないルンバくん
# Gap3: ブラックボックス化したら説明責任が果たせない 人間が工数を掛けずに仕様を把握し続けるためには 16 3. 2 二重メンテしたくない 3.1コード=最新仕様 から
復元したい 例えば) devin search /wiki https://docs.devin.ai/work- with-devin/devin-wiki
Solution 17
# Solution: Concept - Agent Rules as Domain Parser 18
ドメイン知識の Single Source of Truth としての コード (ここだけ永続 化) 3重メンテせず、 都度ビューとして 復元 Parserあるいは 関手としての Agent Rule Gap: 2.1 構造化されたエンコード を強制したい Gap1.2 半構造化されていて欲しい 2.2 コードが知識を表明していて欲しい 3.2 二重メンテしたくない Gap 3.1コード=最新仕様 から 復元したい 3.2 二重メンテしたくない それぞれ半構造化され た空テンプレ/サンプル だけ用意 Gap1.2 半構造化されていて欲しい
# Solution: Concept 関数型DDDを掛け合わせる 19 Gap: 1.1現実とコードモデルの「捉え方」にギャップがあって欲しく無い 2.2 コードが知識を表明していて欲しい ✓
LLMの非決定性を補う ✓ Reconciliation Loop における、 筋の悪い探索空間を潰す 型付き部品の提供による 正しい組み合わせ方の 誘導・保証 ✓ 型でも業務知識を宣言可能 ✓ 軽量な形式手法としての型での モデル記述 ✓ 業務知識の引継書としての、 業務手順や用語概念の宣言的記述 ドメイン知識の宣言的記述 ドメインの実際の姿 コード構造 のGapが最小 ✓ タスクが合成されたワークフロー としての業務 ✓ 関数が合成されたパイプライン としての実装
# Appendix ドメイン語彙: 自然言語 型付きeDSL: コード の相互変換 20 https://speakerdeck.com/knih/from- domain-models-to-domain-languages-
with-tagless-final
# Appendix 「ハタラキ」「動詞」「プロセス」で捉える 現実 コードモデル の滑らかさ 21 一方で… ・ 操作のモジュール化には、結局データを
切り口にすることが有効 ・ 露出を最小にするカプセル化は現代でも 必須の考え
# Solution: case お題 22
# Appendix 補足: イベストの凡例 23
# Solution: case 24 おことわり② • 本番コードベースのruleやcodeをそのまま貼る、というわけにはい きませんでした • 細部はそれぞれの環境に合った記述になると思うで、雰囲気伝えら
れればと
# Solution: case 25 サンプルリポジトリ https://github.com/yodakeisuke/domain-parser-sample-accounting-product/tree/main 以降、こちらお手元で見ていただく方が見やすいと思います
# Solution: case 集約 Command/Aggregate 26 イベストのmiroスクショはリーダビリティが低いため「Aggregate Design Canvas」を経由 https://github.com/yodakeisuke/domain-parser-
sample-accounting- product/blob/main/.cursor/rules/how-to-read- eventstorming.mdc https://github.com/yodakeisuke/domain-parser- sample-accounting- product/blob/main/.cursor/rules/aggregate- design-canvas-creation-guidelines.mdc
# Solution: case 用語集 コード 用語集: 自然言語 27
# Solution: case用語集 コード Domain Parser 28
# Solution: case 用語集 コード Code: Kotlin 29
# Solution: case コード 図式 Diagram 30
# Solution: case コード 図式 Domain Parser 31 可視化に関してはRule書く必要薄そ うです
cursor の公式Docにも例がある https://docs.cursor.com/guides/t utorials/architectural-diagrams
#Forkwell_AI_Study ログラスについて 32
#Forkwell_AI_Study ログラスについて 企業価値を向上する 経営管理クラウド 33
34