Files
liqiang b119135836
Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
ai-agent-book 精选快照(<2MB 代码与文档,来自 github.com/bojieli/ai-agent-book)
2026-08-20 13:12:50 +00:00

68 lines
12 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 40 880 520" width="880" height="520" style="background:#ffffff">
<defs><marker id="ah" markerWidth="12" markerHeight="8" refX="12" refY="4" orient="auto"><polygon points="0 0, 12 4, 0 8" fill="#333333"/></marker><marker id="ah-light" markerWidth="12" markerHeight="8" refX="12" refY="4" orient="auto"><polygon points="0 0, 12 4, 0 8" fill="#999999"/></marker></defs>
<rect x="20" y="60" width="250" height="160" rx="6" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-dasharray="8,4"/>
<text x="145" y="82" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="20" fill="#333333" text-anchor="middle" dominant-baseline="central" font-weight="bold">① Günlük toplama</text>
<rect x="30" y="98" width="230" height="122" rx="3" fill="#f5f5f5" stroke="#999999" stroke-width="2"/>
<text x="38" y="112" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central">trajectory_001.json:</text>
<text x="38" y="126" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> {&quot;role&quot;:&quot;user&quot;,&quot;content&quot;:</text>
<text x="38" y="140" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> &quot;12345 nolu siparişi iptal et&quot;}</text>
<text x="38" y="154" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> {&quot;role&quot;:&quot;assistant&quot;,</text>
<text x="38" y="168" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> &quot;tool_call&quot;:&quot;cancel_order&quot;}</text>
<text x="38" y="182" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> {&quot;role&quot;:&quot;tool&quot;,&quot;result&quot;:</text>
<text x="38" y="196" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> &quot;ERROR: sigorta yok&quot;}</text>
<text x="38" y="210" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> → Ajan kullanıcıya nedeni bildirmedi</text>
<line x1="270" y1="140" x2="310" y2="140" stroke="#333333" stroke-width="2" marker-end="url(#ah)"/>
<rect x="310" y="60" width="260" height="160" rx="6" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-dasharray="8,4"/>
<text x="440" y="82" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="20" fill="#333333" text-anchor="middle" dominant-baseline="central" font-weight="bold">② LLM analizi</text>
<text x="320" y="100" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central">Girdi: iz + mimari belge + PRD</text>
<text x="320" y="114" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"></text>
<text x="320" y="128" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central">Analiz boyutları:</text>
<text x="320" y="142" font-family="'Courier New', Courier, monospace" font-size="9.5" fill="#333333" text-anchor="start" dominant-baseline="central"> - Yürütme akışı beklentiyi karşılıyor mu</text>
<text x="320" y="156" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> - Araç çağrıları doğru mu</text>
<text x="320" y="170" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> - Hata işleme uygun mu</text>
<text x="320" y="184" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> - Kullanıcı deneyimi tatmin edici mi</text>
<text x="320" y="198" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"></text>
<text x="320" y="212" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central">→ Sapan adımı ve modülü belirle</text>
<line x1="570" y1="140" x2="610" y2="140" stroke="#333333" stroke-width="2" marker-end="url(#ah)"/>
<rect x="610" y="60" width="250" height="160" rx="6" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-dasharray="8,4"/>
<text x="735" y="82" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="19" fill="#333333" text-anchor="middle" dominant-baseline="central" font-weight="bold">③ Yapılandırılmış rapor</text>
<rect x="620" y="98" width="230" height="108" rx="3" fill="#f5f5f5" stroke="#999999" stroke-width="2"/>
<text x="628" y="112" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central">Sorun raporu:</text>
<text x="628" y="126" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> Öncelik: P1 (Kullanıcı Kaybı Riski)</text>
<text x="628" y="140" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> Modül: cancellation_handler</text>
<text x="628" y="154" font-family="'Courier New', Courier, monospace" font-size="6.5" fill="#333333" text-anchor="start" dominant-baseline="central"> Açıklama: İptal başarısızlığından sonra kullanıcıya</text>
<text x="628" y="168" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> neden ve alternatifler açıklanmıyor</text>
<text x="628" y="182" font-family="'Courier New', Courier, monospace" font-size="9" fill="#333333" text-anchor="start" dominant-baseline="central"> Öneri: Başarısızlık nedeni açıklaması</text>
<text x="628" y="196" font-family="'Courier New', Courier, monospace" font-size="8.5" fill="#333333" text-anchor="start" dominant-baseline="central"> ve sigorta satın alma rehberliği ekle</text>
<line x1="440.0" y1="220" x2="440.0" y2="260" stroke="#333333" stroke-width="2" marker-end="url(#ah)"/>
<rect x="60" y="260" width="370" height="160" rx="6" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-dasharray="8,4"/>
<text x="245" y="282" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="20" fill="#333333" text-anchor="middle" dominant-baseline="central" font-weight="bold">④ Regresyon Test Senaryosu Üretimi</text>
<rect x="70" y="298" width="350" height="150" rx="3" fill="#f5f5f5" stroke="#999999" stroke-width="2"/>
<text x="78" y="312" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central">def test_cancel_no_insurance():</text>
<text x="78" y="326" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> &quot;&quot;&quot;İzlence #001, Tur 3-5&quot;&quot;&quot;</text>
<text x="78" y="340" font-family="'Courier New', Courier, monospace" font-size="9.5" fill="#333333" text-anchor="start" dominant-baseline="central"> # Tekrar oynat: Kullanıcı ekonomi sınıfı iptali istiyor</text>
<text x="78" y="354" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> resp = agent.run(</text>
<text x="78" y="368" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> &quot;12345 nolu siparişi iptal et&quot;)</text>
<text x="78" y="382" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> # Doğrula: Neden açıklanmalı</text>
<text x="78" y="396" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> assert &quot;sigorta&quot; in resp.text</text>
<text x="78" y="410" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> assert &quot;alternatif&quot; in resp.text</text>
<text x="78" y="424" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> # Doğrula: Doğrudan hata dönmemeli</text>
<text x="78" y="438" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> assert &quot;ERROR&quot; not in resp.text</text>
<line x1="430" y1="340" x2="470" y2="340" stroke="#333333" stroke-width="2" marker-end="url(#ah)"/>
<rect x="470" y="260" width="380" height="160" rx="6" fill="#ffffff" stroke="#333333" stroke-width="2" stroke-dasharray="8,4"/>
<text x="660" y="282" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="20" fill="#333333" text-anchor="middle" dominant-baseline="central" font-weight="bold">⑤ GitHub Issue Otomatik Oluşturma</text>
<rect x="480" y="298" width="360" height="136" rx="3" fill="#f5f5f5" stroke="#999999" stroke-width="2"/>
<text x="488" y="312" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central">gh issue create \</text>
<text x="488" y="326" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> --title &quot;P1: İptalde kullanıcı</text>
<text x="488" y="340" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> rehberliği eksik&quot; \</text>
<text x="488" y="354" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> --body &quot;**Sorun**: Ajan cancel_order</text>
<text x="488" y="368" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> başarısız olduktan sonra nedeni</text>
<text x="488" y="382" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> açıklamadan doğrudan hata döndürüyor...</text>
<text x="488" y="396" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> **İzlence**: #001 Tur 3-5</text>
<text x="488" y="410" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> **Test**: test_cancel_...&quot; \</text>
<text x="488" y="424" font-family="'Courier New', Courier, monospace" font-size="10" fill="#333333" text-anchor="start" dominant-baseline="central"> --assignee @backend-team</text>
<rect x="100" y="445" width="680" height="44" rx="6" fill="#999999" stroke="#333333" stroke-width="2"/>
<text x="440.0" y="460" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="20" fill="#ffffff" text-anchor="middle" dominant-baseline="central" font-weight="bold">Uçtan Uca Otomasyon: Günlük → Analiz → Rapor → Test → Issue</text>
<text x="440.0" y="480" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="14" fill="#ffffff" text-anchor="middle" dominant-baseline="central" font-weight="normal">MCP ile GitHub entegrasyonu · Test çerçevesi otomatik tekrar oynatma doğrulaması</text>
<text x="440.0" y="530" font-family="Arial, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Microsoft YaHei', sans-serif" font-size="16" fill="#666666" text-anchor="middle" dominant-baseline="central" font-weight="bold">Manuel teşhis maliyetini saatlerden dakikalara indirir</text>
</svg>