mirror of
https://github.com/merlinhu1/truthmark.git
synced 2026-08-25 07:53:25 +02:00
docs: replace README diagram with responsive visual
This commit is contained in:
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## How Truthmark works
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Existing code + tests"] --> B["Truth Document"]
|
||||
B --> C["New product and engineering docs"]
|
||||
D["Agent changes code"] --> E["Tests + Truth Sync"]
|
||||
E --> F["Docs stay current"]
|
||||
C --> G["Git review"]
|
||||
F --> G
|
||||
H["Truth docs"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="docs/assets/truthmark-workflow-mobile.svg">
|
||||
<img src="docs/assets/truthmark-workflow.svg" alt="How Truthmark works" width="1440">
|
||||
</picture>
|
||||
|
||||
The Truthmark command-line interface installs and validates the repository contract. Your coding agent performs the evidence review and documentation work through the installed host-native workflows.
|
||||
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="720" height="1600" viewBox="0 0 720 1600" role="img" aria-labelledby="title desc">
|
||||
<title id="title">How Truthmark works</title>
|
||||
<desc id="desc">Truthmark creates documentation from code and tests, keeps documentation current as code changes, and turns approved truth documents back into working code. Every path ends in one reviewable Git diff.</desc>
|
||||
<defs>
|
||||
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#090D1A"/><stop offset="0.55" stop-color="#10162B"/><stop offset="1" stop-color="#0B1220"/></linearGradient>
|
||||
<radialGradient id="glow" cx="0.2" cy="0.15" r="0.7"><stop offset="0" stop-color="#8B5CF6" stop-opacity="0.24"/><stop offset="1" stop-color="#8B5CF6" stop-opacity="0"/></radialGradient>
|
||||
<linearGradient id="purple" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#A78BFA"/><stop offset="1" stop-color="#7C3AED"/></linearGradient>
|
||||
<linearGradient id="cyan" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#67E8F9"/><stop offset="1" stop-color="#0891B2"/></linearGradient>
|
||||
<linearGradient id="amber" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#FCD34D"/><stop offset="1" stop-color="#D97706"/></linearGradient>
|
||||
<linearGradient id="review" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#16A34A"/><stop offset="0.55" stop-color="#22C55E"/><stop offset="1" stop-color="#0D9488"/></linearGradient>
|
||||
<filter id="shadow" x="-20%" y="-20%" width="140%" height="160%"><feDropShadow dx="0" dy="18" stdDeviation="22" flood-color="#000814" flood-opacity="0.42"/></filter>
|
||||
<pattern id="grid" width="32" height="32" patternUnits="userSpaceOnUse"><path d="M32 0H0V32" fill="none" stroke="#94A3B8" stroke-opacity="0.045"/></pattern>
|
||||
<marker id="purpleArrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto"><path d="M0 0L10 5L0 10Z" fill="#A78BFA"/></marker>
|
||||
<marker id="cyanArrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto"><path d="M0 0L10 5L0 10Z" fill="#67E8F9"/></marker>
|
||||
<marker id="amberArrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto"><path d="M0 0L10 5L0 10Z" fill="#FCD34D"/></marker>
|
||||
<style>
|
||||
.ui { font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
|
||||
.brand { font-size: 16px; font-weight: 780; letter-spacing: 2.5px; fill: #C4B5FD; }
|
||||
.headline { font-size: 42px; font-weight: 790; letter-spacing: -0.8px; fill: #F8FAFC; }
|
||||
.subhead { font-size: 20px; font-weight: 460; fill: #94A3B8; }
|
||||
.eyebrow { font-size: 17px; font-weight: 780; letter-spacing: 2px; }
|
||||
.cardTitle { font-size: 29px; font-weight: 770; fill: #F8FAFC; }
|
||||
.label { font-size: 22px; font-weight: 670; fill: #E2E8F0; }
|
||||
.muted { font-size: 17px; font-weight: 490; fill: #94A3B8; }
|
||||
.pill { font-size: 21px; font-weight: 770; fill: #FFFFFF; }
|
||||
.reviewTitle { font-size: 26px; font-weight: 830; fill: #FFFFFF; }
|
||||
.reviewSub { font-size: 17px; font-weight: 560; fill: #DCFCE7; }
|
||||
</style>
|
||||
</defs>
|
||||
|
||||
<rect width="720" height="1600" rx="30" fill="url(#bg)"/>
|
||||
<rect width="720" height="1600" rx="30" fill="url(#grid)"/>
|
||||
<rect width="720" height="1600" rx="30" fill="url(#glow)"/>
|
||||
|
||||
<g class="ui">
|
||||
<g transform="translate(48 42)">
|
||||
<rect width="158" height="36" rx="18" fill="#8B5CF6" fill-opacity="0.16" stroke="#A78BFA" stroke-opacity="0.45"/>
|
||||
<circle cx="20" cy="18" r="5" fill="#A78BFA"/>
|
||||
<text x="37" y="23" class="brand">TRUTHMARK</text>
|
||||
<text x="0" y="82" class="headline">Create. Sync. Realize.</text>
|
||||
<text x="0" y="115" class="subhead">Documentation that moves with your code.</text>
|
||||
</g>
|
||||
|
||||
<!-- Create -->
|
||||
<g transform="translate(48 184)" filter="url(#shadow)">
|
||||
<rect width="624" height="350" rx="26" fill="#141A2F" stroke="#8B5CF6" stroke-opacity="0.52" stroke-width="1.5"/>
|
||||
<rect width="624" height="7" rx="3.5" fill="url(#purple)"/>
|
||||
<g transform="translate(27 27)">
|
||||
<rect width="58" height="58" rx="17" fill="#8B5CF6" fill-opacity="0.15" stroke="#A78BFA" stroke-opacity="0.45"/>
|
||||
<path d="M19 21L11 29L19 37M39 21L47 29L39 37M34 15L24 43" fill="none" stroke="#C4B5FD" stroke-width="3.2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<text x="105" y="49" class="eyebrow" fill="#A78BFA">01 · CREATE</text>
|
||||
<text x="105" y="79" class="cardTitle">Create from code</text>
|
||||
<rect x="28" y="106" width="568" height="62" rx="16" fill="#0C1224" stroke="#334155"/>
|
||||
<text x="52" y="133" class="label">Code + tests</text><text x="52" y="156" class="muted">Evidence from working software</text>
|
||||
<path d="M312 176V197" fill="none" stroke="#A78BFA" stroke-width="2.5" marker-end="url(#purpleArrow)"/>
|
||||
<rect x="186" y="202" width="252" height="58" rx="29" fill="url(#purple)"/>
|
||||
<text x="312" y="238" class="pill" text-anchor="middle">Truth Document</text>
|
||||
<path d="M312 268V289" fill="none" stroke="#A78BFA" stroke-width="2.5" marker-end="url(#purpleArrow)"/>
|
||||
<rect x="28" y="294" width="568" height="42" rx="14" fill="#21153E" stroke="#8B5CF6" stroke-opacity="0.55"/>
|
||||
<text x="52" y="322" class="label">New product + engineering docs</text>
|
||||
</g>
|
||||
|
||||
<!-- Sync -->
|
||||
<g transform="translate(48 558)" filter="url(#shadow)">
|
||||
<rect width="624" height="350" rx="26" fill="#141A2F" stroke="#22D3EE" stroke-opacity="0.52" stroke-width="1.5"/>
|
||||
<rect width="624" height="7" rx="3.5" fill="url(#cyan)"/>
|
||||
<g transform="translate(27 27)">
|
||||
<rect width="58" height="58" rx="17" fill="#06B6D4" fill-opacity="0.14" stroke="#67E8F9" stroke-opacity="0.45"/>
|
||||
<path d="M17 23A15 15 0 0 1 43 20L47 24M42 13L43 20L36 21M42 36A15 15 0 0 1 16 39L12 35M17 46L16 39L23 38" fill="none" stroke="#A5F3FC" stroke-width="3.1" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<text x="105" y="49" class="eyebrow" fill="#67E8F9">02 · SYNC</text>
|
||||
<text x="105" y="79" class="cardTitle">Stay current</text>
|
||||
<rect x="28" y="106" width="568" height="62" rx="16" fill="#0C1224" stroke="#334155"/>
|
||||
<text x="52" y="133" class="label">Agent changes code</text><text x="52" y="156" class="muted">Tests prove the behavior</text>
|
||||
<path d="M312 176V197" fill="none" stroke="#67E8F9" stroke-width="2.5" marker-end="url(#cyanArrow)"/>
|
||||
<rect x="204" y="202" width="216" height="58" rx="29" fill="url(#cyan)"/>
|
||||
<text x="312" y="238" class="pill" text-anchor="middle">Truth Sync</text>
|
||||
<path d="M312 268V289" fill="none" stroke="#67E8F9" stroke-width="2.5" marker-end="url(#cyanArrow)"/>
|
||||
<rect x="28" y="294" width="568" height="42" rx="14" fill="#0B2C36" stroke="#22D3EE" stroke-opacity="0.55"/>
|
||||
<text x="52" y="322" class="label">Docs stay current before handoff</text>
|
||||
</g>
|
||||
|
||||
<!-- Realize -->
|
||||
<g transform="translate(48 932)" filter="url(#shadow)">
|
||||
<rect width="624" height="350" rx="26" fill="#141A2F" stroke="#F59E0B" stroke-opacity="0.52" stroke-width="1.5"/>
|
||||
<rect width="624" height="7" rx="3.5" fill="url(#amber)"/>
|
||||
<g transform="translate(27 27)">
|
||||
<rect width="58" height="58" rx="17" fill="#F59E0B" fill-opacity="0.13" stroke="#FCD34D" stroke-opacity="0.45"/>
|
||||
<path d="M31 12L16 32H28L25 47L42 25H30Z" fill="#FDE68A" stroke="#FCD34D" stroke-width="1.4" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<text x="105" y="49" class="eyebrow" fill="#FCD34D">03 · REALIZE</text>
|
||||
<text x="105" y="79" class="cardTitle">Build from truth</text>
|
||||
<rect x="28" y="106" width="568" height="62" rx="16" fill="#0C1224" stroke="#334155"/>
|
||||
<text x="52" y="133" class="label">Approved truth docs</text><text x="52" y="156" class="muted">The repository contract</text>
|
||||
<path d="M312 176V197" fill="none" stroke="#FCD34D" stroke-width="2.5" marker-end="url(#amberArrow)"/>
|
||||
<rect x="193" y="202" width="238" height="58" rx="29" fill="url(#amber)"/>
|
||||
<text x="312" y="238" class="pill" text-anchor="middle">Truth Realize</text>
|
||||
<path d="M312 268V289" fill="none" stroke="#FCD34D" stroke-width="2.5" marker-end="url(#amberArrow)"/>
|
||||
<rect x="28" y="294" width="568" height="42" rx="14" fill="#33230A" stroke="#F59E0B" stroke-opacity="0.55"/>
|
||||
<text x="52" y="322" class="label">Working code implemented from truth</text>
|
||||
</g>
|
||||
|
||||
<!-- Review -->
|
||||
<path d="M360 1282V1329" stroke="#22C55E" stroke-width="3"/>
|
||||
<g transform="translate(48 1329)" filter="url(#shadow)">
|
||||
<rect width="624" height="190" rx="28" fill="url(#review)"/>
|
||||
<g transform="translate(34 38)" fill="none" stroke="#FFFFFF" stroke-width="3.2" stroke-linecap="round" stroke-linejoin="round">
|
||||
<circle cx="10" cy="8" r="6"/><circle cx="10" cy="48" r="6"/><circle cx="52" cy="8" r="6"/><path d="M10 14V42M16 8H34Q46 8 46 22V34Q46 48 30 48H16"/>
|
||||
</g>
|
||||
<text x="113" y="59" class="reviewTitle">ONE REVIEWABLE GIT DIFF</text>
|
||||
<text x="34" y="111" class="reviewSub">Code and documentation move together</text>
|
||||
<text x="34" y="136" class="reviewSub">with the branch.</text>
|
||||
<rect x="500" y="111" width="86" height="45" rx="22.5" fill="#FFFFFF" fill-opacity="0.16" stroke="#FFFFFF" stroke-opacity="0.35"/>
|
||||
<path d="M523 133H562M553 124L562 133L553 142" fill="none" stroke="#FFFFFF" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 9.3 KiB |
@@ -0,0 +1,182 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1440" height="820" viewBox="0 0 1440 820" role="img" aria-labelledby="title desc">
|
||||
<title id="title">How Truthmark works</title>
|
||||
<desc id="desc">Truthmark creates documentation from code and tests, keeps documentation current as code changes, and turns approved truth documents back into working code. Every path ends in one reviewable Git diff.</desc>
|
||||
<defs>
|
||||
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="1">
|
||||
<stop offset="0" stop-color="#090D1A"/>
|
||||
<stop offset="0.55" stop-color="#10162B"/>
|
||||
<stop offset="1" stop-color="#0B1220"/>
|
||||
</linearGradient>
|
||||
<radialGradient id="glowPurple" cx="0.2" cy="0.25" r="0.55">
|
||||
<stop offset="0" stop-color="#8B5CF6" stop-opacity="0.22"/>
|
||||
<stop offset="1" stop-color="#8B5CF6" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="glowCyan" cx="0.75" cy="0.3" r="0.55">
|
||||
<stop offset="0" stop-color="#22D3EE" stop-opacity="0.16"/>
|
||||
<stop offset="1" stop-color="#22D3EE" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<linearGradient id="purple" x1="0" y1="0" x2="1" y2="1">
|
||||
<stop offset="0" stop-color="#A78BFA"/>
|
||||
<stop offset="1" stop-color="#7C3AED"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="cyan" x1="0" y1="0" x2="1" y2="1">
|
||||
<stop offset="0" stop-color="#67E8F9"/>
|
||||
<stop offset="1" stop-color="#0891B2"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="amber" x1="0" y1="0" x2="1" y2="1">
|
||||
<stop offset="0" stop-color="#FCD34D"/>
|
||||
<stop offset="1" stop-color="#D97706"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="review" x1="0" y1="0" x2="1" y2="0">
|
||||
<stop offset="0" stop-color="#16A34A"/>
|
||||
<stop offset="0.5" stop-color="#22C55E"/>
|
||||
<stop offset="1" stop-color="#0D9488"/>
|
||||
</linearGradient>
|
||||
<filter id="shadow" x="-20%" y="-20%" width="140%" height="160%">
|
||||
<feDropShadow dx="0" dy="18" stdDeviation="22" flood-color="#000814" flood-opacity="0.45"/>
|
||||
</filter>
|
||||
<filter id="softGlow" x="-40%" y="-40%" width="180%" height="180%">
|
||||
<feGaussianBlur stdDeviation="7" result="blur"/>
|
||||
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
|
||||
</filter>
|
||||
<pattern id="grid" width="36" height="36" patternUnits="userSpaceOnUse">
|
||||
<path d="M36 0H0V36" fill="none" stroke="#94A3B8" stroke-opacity="0.045" stroke-width="1"/>
|
||||
</pattern>
|
||||
<marker id="arrowPurple" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0L10 5L0 10Z" fill="#A78BFA"/></marker>
|
||||
<marker id="arrowCyan" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0L10 5L0 10Z" fill="#67E8F9"/></marker>
|
||||
<marker id="arrowAmber" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0L10 5L0 10Z" fill="#FCD34D"/></marker>
|
||||
<style>
|
||||
.ui { font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
|
||||
.eyebrow { font-size: 15px; font-weight: 750; letter-spacing: 2.6px; }
|
||||
.headline { font-size: 42px; font-weight: 780; letter-spacing: -1px; fill: #F8FAFC; }
|
||||
.subhead { font-size: 19px; font-weight: 450; fill: #94A3B8; }
|
||||
.cardTitle { font-size: 30px; font-weight: 760; letter-spacing: -0.45px; fill: #F8FAFC; }
|
||||
.label { font-size: 19px; font-weight: 620; fill: #E2E8F0; }
|
||||
.muted { font-size: 16px; font-weight: 480; fill: #94A3B8; }
|
||||
.pill { font-size: 18px; font-weight: 760; fill: #FFFFFF; }
|
||||
.reviewTitle { font-size: 25px; font-weight: 820; letter-spacing: 0.2px; fill: #FFFFFF; }
|
||||
.reviewSub { font-size: 17px; font-weight: 560; fill: #DCFCE7; }
|
||||
</style>
|
||||
</defs>
|
||||
|
||||
<rect width="1440" height="820" rx="28" fill="url(#bg)"/>
|
||||
<rect width="1440" height="820" rx="28" fill="url(#grid)"/>
|
||||
<rect width="1440" height="820" rx="28" fill="url(#glowPurple)"/>
|
||||
<rect width="1440" height="820" rx="28" fill="url(#glowCyan)"/>
|
||||
|
||||
<g class="ui">
|
||||
<g transform="translate(62 48)">
|
||||
<rect x="0" y="0" width="154" height="34" rx="17" fill="#8B5CF6" fill-opacity="0.16" stroke="#A78BFA" stroke-opacity="0.45"/>
|
||||
<circle cx="20" cy="17" r="5" fill="#A78BFA" filter="url(#softGlow)"/>
|
||||
<text x="36" y="22" class="eyebrow" fill="#C4B5FD">TRUTHMARK</text>
|
||||
<text x="0" y="78" class="headline">Create docs. Keep them true. Build from truth.</text>
|
||||
<text x="0" y="112" class="subhead">A complete documentation lifecycle inside your repository.</text>
|
||||
</g>
|
||||
|
||||
<!-- Create card -->
|
||||
<g transform="translate(60 195)" filter="url(#shadow)">
|
||||
<rect width="400" height="420" rx="26" fill="#141A2F" stroke="#8B5CF6" stroke-opacity="0.5" stroke-width="1.5"/>
|
||||
<rect width="400" height="7" rx="3.5" fill="url(#purple)"/>
|
||||
<g transform="translate(30 31)">
|
||||
<rect width="62" height="62" rx="18" fill="#8B5CF6" fill-opacity="0.15" stroke="#A78BFA" stroke-opacity="0.45"/>
|
||||
<path d="M20 23L12 31L20 39M42 23L50 31L42 39M36 16L26 46" fill="none" stroke="#C4B5FD" stroke-width="3.4" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<text x="112" y="55" class="eyebrow" fill="#A78BFA">01 · CREATE</text>
|
||||
<text x="112" y="84" class="cardTitle">Create from code</text>
|
||||
|
||||
<rect x="30" y="126" width="340" height="63" rx="16" fill="#0C1224" stroke="#334155"/>
|
||||
<text x="54" y="153" class="label">Code + tests</text>
|
||||
<text x="54" y="176" class="muted">Evidence from working software</text>
|
||||
|
||||
<path d="M200 197V225" fill="none" stroke="#A78BFA" stroke-width="2.5" marker-end="url(#arrowPurple)"/>
|
||||
<rect x="84" y="229" width="232" height="58" rx="29" fill="url(#purple)"/>
|
||||
<text x="200" y="265" class="pill" text-anchor="middle">Truth Document</text>
|
||||
<path d="M200 296V324" fill="none" stroke="#A78BFA" stroke-width="2.5" marker-end="url(#arrowPurple)"/>
|
||||
|
||||
<rect x="30" y="328" width="340" height="63" rx="16" fill="#21153E" stroke="#8B5CF6" stroke-opacity="0.55"/>
|
||||
<g transform="translate(49 344)" fill="none" stroke="#C4B5FD" stroke-width="2.2">
|
||||
<rect x="6" y="0" width="24" height="29" rx="3"/><path d="M11 8H25M11 14H25M11 20H21"/>
|
||||
<rect x="0" y="6" width="24" height="29" rx="3" opacity="0.6"/>
|
||||
</g>
|
||||
<text x="101" y="355" class="label">New truth docs</text>
|
||||
<text x="101" y="378" class="muted">Product + engineering</text>
|
||||
</g>
|
||||
|
||||
<!-- Sync card -->
|
||||
<g transform="translate(520 195)" filter="url(#shadow)">
|
||||
<rect width="400" height="420" rx="26" fill="#141A2F" stroke="#22D3EE" stroke-opacity="0.5" stroke-width="1.5"/>
|
||||
<rect width="400" height="7" rx="3.5" fill="url(#cyan)"/>
|
||||
<g transform="translate(30 31)">
|
||||
<rect width="62" height="62" rx="18" fill="#06B6D4" fill-opacity="0.14" stroke="#67E8F9" stroke-opacity="0.45"/>
|
||||
<path d="M18 24A16 16 0 0 1 45 21L49 25M44 14L45 21L38 22M44 38A16 16 0 0 1 17 41L13 37M18 48L17 41L24 40" fill="none" stroke="#A5F3FC" stroke-width="3.2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<text x="112" y="55" class="eyebrow" fill="#67E8F9">02 · SYNC</text>
|
||||
<text x="112" y="84" class="cardTitle">Stay current</text>
|
||||
|
||||
<rect x="30" y="126" width="340" height="63" rx="16" fill="#0C1224" stroke="#334155"/>
|
||||
<text x="54" y="153" class="label">Agent changes code</text>
|
||||
<text x="54" y="176" class="muted">Tests prove the behavior</text>
|
||||
|
||||
<path d="M200 197V225" fill="none" stroke="#67E8F9" stroke-width="2.5" marker-end="url(#arrowCyan)"/>
|
||||
<rect x="101" y="229" width="198" height="58" rx="29" fill="url(#cyan)"/>
|
||||
<text x="200" y="265" class="pill" text-anchor="middle">Truth Sync</text>
|
||||
<path d="M200 296V324" fill="none" stroke="#67E8F9" stroke-width="2.5" marker-end="url(#arrowCyan)"/>
|
||||
|
||||
<rect x="30" y="328" width="340" height="63" rx="16" fill="#0B2C36" stroke="#22D3EE" stroke-opacity="0.55"/>
|
||||
<g transform="translate(49 344)" fill="none" stroke="#A5F3FC" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path d="M2 17L11 26L30 5"/>
|
||||
<rect x="0" y="0" width="35" height="35" rx="8" opacity="0.5"/>
|
||||
</g>
|
||||
<text x="101" y="355" class="label">Docs stay current</text>
|
||||
<text x="101" y="378" class="muted">Before the agent hands off</text>
|
||||
</g>
|
||||
|
||||
<!-- Realize card -->
|
||||
<g transform="translate(980 195)" filter="url(#shadow)">
|
||||
<rect width="400" height="420" rx="26" fill="#141A2F" stroke="#F59E0B" stroke-opacity="0.52" stroke-width="1.5"/>
|
||||
<rect width="400" height="7" rx="3.5" fill="url(#amber)"/>
|
||||
<g transform="translate(30 31)">
|
||||
<rect width="62" height="62" rx="18" fill="#F59E0B" fill-opacity="0.13" stroke="#FCD34D" stroke-opacity="0.45"/>
|
||||
<path d="M34 13L18 34H31L27 50L45 27H32Z" fill="#FDE68A" stroke="#FCD34D" stroke-width="1.5" stroke-linejoin="round"/>
|
||||
</g>
|
||||
<text x="112" y="55" class="eyebrow" fill="#FCD34D">03 · REALIZE</text>
|
||||
<text x="112" y="84" class="cardTitle">Build from truth</text>
|
||||
|
||||
<rect x="30" y="126" width="340" height="63" rx="16" fill="#0C1224" stroke="#334155"/>
|
||||
<text x="54" y="153" class="label">Approved truth docs</text>
|
||||
<text x="54" y="176" class="muted">The repository contract</text>
|
||||
|
||||
<path d="M200 197V225" fill="none" stroke="#FCD34D" stroke-width="2.5" marker-end="url(#arrowAmber)"/>
|
||||
<rect x="91" y="229" width="218" height="58" rx="29" fill="url(#amber)"/>
|
||||
<text x="200" y="265" class="pill" text-anchor="middle">Truth Realize</text>
|
||||
<path d="M200 296V324" fill="none" stroke="#FCD34D" stroke-width="2.5" marker-end="url(#arrowAmber)"/>
|
||||
|
||||
<rect x="30" y="328" width="340" height="63" rx="16" fill="#33230A" stroke="#F59E0B" stroke-opacity="0.55"/>
|
||||
<g transform="translate(49 344)" fill="none" stroke="#FDE68A" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">
|
||||
<rect x="0" y="0" width="38" height="35" rx="7"/><path d="M0 9H38M8 21L13 26L8 31M19 29H30"/>
|
||||
</g>
|
||||
<text x="101" y="355" class="label">Working code</text>
|
||||
<text x="101" y="378" class="muted">Implemented from truth</text>
|
||||
</g>
|
||||
|
||||
<!-- Merge lines -->
|
||||
<path d="M260 615V649Q260 666 278 666H630" fill="none" stroke="#8B5CF6" stroke-opacity="0.65" stroke-width="2.3"/>
|
||||
<path d="M720 615V666" fill="none" stroke="#22D3EE" stroke-opacity="0.7" stroke-width="2.3"/>
|
||||
<path d="M1180 615V649Q1180 666 1162 666H810" fill="none" stroke="#F59E0B" stroke-opacity="0.65" stroke-width="2.3"/>
|
||||
|
||||
<!-- Git review bar -->
|
||||
<g transform="translate(236 666)" filter="url(#shadow)">
|
||||
<rect width="968" height="108" rx="28" fill="url(#review)"/>
|
||||
<g transform="translate(35 28)" fill="none" stroke="#FFFFFF" stroke-width="3" stroke-linecap="round" stroke-linejoin="round">
|
||||
<circle cx="10" cy="8" r="6"/><circle cx="10" cy="44" r="6"/><circle cx="49" cy="8" r="6"/>
|
||||
<path d="M10 14V38M16 8H29Q43 8 43 22V30Q43 44 29 44H16"/>
|
||||
</g>
|
||||
<text x="111" y="48" class="reviewTitle">ONE REVIEWABLE GIT DIFF</text>
|
||||
<text x="111" y="76" class="reviewSub">Code and documentation move together with the branch.</text>
|
||||
<g transform="translate(815 29)">
|
||||
<rect width="114" height="50" rx="25" fill="#FFFFFF" fill-opacity="0.16" stroke="#FFFFFF" stroke-opacity="0.35"/>
|
||||
<path d="M28 25H78M69 16L78 25L69 34" fill="none" stroke="#FFFFFF" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 11 KiB |
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## كيف يعمل Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["الكود والاختبارات الموجودة"] --> B["Truth Document"]
|
||||
B --> C["توثيق جديد للمنتج والهندسة"]
|
||||
D["الوكيل يغيّر الكود"] --> E["الاختبارات وTruth Sync"]
|
||||
E --> F["الوثائق تبقى محدّثة"]
|
||||
C --> G["المراجعة في Git"]
|
||||
F --> G
|
||||
H["وثائق الحقيقة"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="كيف يعمل Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
تثبّت واجهة سطر أوامر Truthmark عقد المستودع وتتحقق منه. وينفّذ وكيل البرمجة مراجعة الأدلة وأعمال التوثيق من خلال مسارات العمل الأصلية للمضيف التي جرى تثبيتها.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## So funktioniert Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Bestehender Code + Tests"] --> B["Truth Document"]
|
||||
B --> C["Neue Produkt- und Engineering-Dokumentation"]
|
||||
D["Agent ändert Code"] --> E["Tests + Truth Sync"]
|
||||
E --> F["Dokumentation bleibt aktuell"]
|
||||
C --> G["Git-Review"]
|
||||
F --> G
|
||||
H["Truth-Dokumente"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="So funktioniert Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
Die Truthmark-Befehlszeilenschnittstelle installiert und validiert den Repository-Vertrag. Dein Coding-Agent prüft die Evidenz und erledigt die Dokumentationsarbeit über die installierten host-nativen Workflows.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Πώς λειτουργεί το Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Υπάρχων κώδικας + tests"] --> B["Truth Document"]
|
||||
B --> C["Νέα τεκμηρίωση προϊόντος και μηχανικής"]
|
||||
D["Ο πράκτορας αλλάζει τον κώδικα"] --> E["Tests + Truth Sync"]
|
||||
E --> F["Η τεκμηρίωση παραμένει ενημερωμένη"]
|
||||
C --> G["Έλεγχος στο Git"]
|
||||
F --> G
|
||||
H["Έγγραφα truth"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Πώς λειτουργεί το Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
Η διεπαφή γραμμής εντολών του Truthmark εγκαθιστά και επικυρώνει το συμβόλαιο του αποθετηρίου. Ο πράκτορας προγραμματισμού σας εκτελεί την εξέταση αποδεικτικών στοιχείων και την εργασία τεκμηρίωσης μέσω των εγκατεστημένων, εγγενών ροών εργασίας του host.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Cómo funciona Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Código y pruebas existentes"] --> B["Truth Document"]
|
||||
B --> C["Nueva documentación de producto e ingeniería"]
|
||||
D["El agente cambia el código"] --> E["Pruebas y Truth Sync"]
|
||||
E --> F["La documentación se mantiene actualizada"]
|
||||
C --> G["Revisión en Git"]
|
||||
F --> G
|
||||
H["Documentos de verdad"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Cómo funciona Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
La interfaz de línea de comandos de Truthmark instala y valida el contrato del repositorio. Tu agente de programación realiza la revisión de evidencias y el trabajo de documentación mediante los flujos de trabajo nativos del host instalados.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Fonctionnement de Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Code existant + tests"] --> B["Truth Document"]
|
||||
B --> C["Nouveaux documents produit et d’ingénierie"]
|
||||
D["L’agent modifie le code"] --> E["Tests + Truth Sync"]
|
||||
E --> F["Les documents restent à jour"]
|
||||
C --> G["Revue Git"]
|
||||
F --> G
|
||||
H["Documents de vérité"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Fonctionnement de Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
L’interface en ligne de commande Truthmark installe et valide le contrat du dépôt. Votre agent de codage effectue l’examen des preuves et le travail documentaire via les workflows natifs de l’hôte qui ont été installés.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Cara kerja Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Kode yang ada + pengujian"] --> B["Truth Document"]
|
||||
B --> C["Dokumentasi produk dan rekayasa baru"]
|
||||
D["Agen mengubah kode"] --> E["Pengujian + Truth Sync"]
|
||||
E --> F["Dokumentasi tetap mutakhir"]
|
||||
C --> G["Tinjauan Git"]
|
||||
F --> G
|
||||
H["Dokumen truth"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Cara kerja Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
Antarmuka baris perintah Truthmark memasang dan memvalidasi kontrak repositori. Agen pengodean Anda melakukan peninjauan bukti dan pekerjaan dokumentasi melalui alur kerja native host yang telah terpasang.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Come funziona Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Codice e test esistenti"] --> B["Truth Document"]
|
||||
B --> C["Nuova documentazione di prodotto e ingegneria"]
|
||||
D["L’agente modifica il codice"] --> E["Test e Truth Sync"]
|
||||
E --> F["La documentazione resta aggiornata"]
|
||||
C --> G["Revisione in Git"]
|
||||
F --> G
|
||||
H["Documenti di verità"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Come funziona Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
L’interfaccia a riga di comando di Truthmark installa e convalida il contratto del repository. Il tuo agente di coding esegue la revisione delle evidenze e il lavoro di documentazione attraverso i workflow nativi dell’host installati.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Truthmark の仕組み
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["既存のコード + テスト"] --> B["Truth Document"]
|
||||
B --> C["新しいプロダクトおよびエンジニアリングドキュメント"]
|
||||
D["エージェントがコードを変更"] --> E["テスト + Truth Sync"]
|
||||
E --> F["ドキュメントを最新に維持"]
|
||||
C --> G["Git レビュー"]
|
||||
F --> G
|
||||
H["Truth ドキュメント"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Truthmark の仕組み" width="1440">
|
||||
</picture>
|
||||
|
||||
Truthmark のコマンドラインインターフェースがリポジトリ契約をインストールして検証します。コーディングエージェントは、インストール済みのホストネイティブなワークフローを通じて、証拠の確認とドキュメント作業を実行します。
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Truthmark 작동 방식
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["기존 코드 + 테스트"] --> B["Truth Document"]
|
||||
B --> C["새 제품 및 엔지니어링 문서"]
|
||||
D["에이전트가 코드 변경"] --> E["테스트 + Truth Sync"]
|
||||
E --> F["문서를 최신 상태로 유지"]
|
||||
C --> G["Git 검토"]
|
||||
F --> G
|
||||
H["Truth 문서"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Truthmark 작동 방식" width="1440">
|
||||
</picture>
|
||||
|
||||
Truthmark 명령줄 인터페이스는 저장소 계약을 설치하고 검증합니다. 코딩 에이전트는 설치된 호스트 네이티브 워크플로를 통해 근거를 검토하고 문서화 작업을 수행합니다.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Jak działa Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Istniejący kod + testy"] --> B["Truth Document"]
|
||||
B --> C["Nowa dokumentacja produktu i inżynierii"]
|
||||
D["Agent zmienia kod"] --> E["Testy + Truth Sync"]
|
||||
E --> F["Dokumentacja pozostaje aktualna"]
|
||||
C --> G["Przegląd w Git"]
|
||||
F --> G
|
||||
H["Dokumenty truth"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Jak działa Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
Interfejs wiersza poleceń Truthmark instaluje i sprawdza kontrakt repozytorium. Twój agent programistyczny analizuje dowody i wykonuje pracę dokumentacyjną za pomocą zainstalowanych, natywnych dla hosta przepływów pracy.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Como o Truthmark funciona
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Código e testes existentes"] --> B["Truth Document"]
|
||||
B --> C["Nova documentação de produto e engenharia"]
|
||||
D["O agente altera o código"] --> E["Testes e Truth Sync"]
|
||||
E --> F["A documentação permanece atualizada"]
|
||||
C --> G["Revisão no Git"]
|
||||
F --> G
|
||||
H["Documentos de verdade"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Como o Truthmark funciona" width="1440">
|
||||
</picture>
|
||||
|
||||
A interface de linha de comando do Truthmark instala e valida o contrato do repositório. Seu agente de programação realiza a revisão de evidências e o trabalho de documentação por meio dos fluxos de trabalho nativos do host que foram instalados.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Как работает Truthmark
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Существующий код и тесты"] --> B["Truth Document"]
|
||||
B --> C["Новая продуктовая и инженерная документация"]
|
||||
D["Агент изменяет код"] --> E["Тесты и Truth Sync"]
|
||||
E --> F["Документация остаётся актуальной"]
|
||||
C --> G["Проверка в Git"]
|
||||
F --> G
|
||||
H["Truth-документы"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Как работает Truthmark" width="1440">
|
||||
</picture>
|
||||
|
||||
Интерфейс командной строки Truthmark устанавливает и проверяет контракт репозитория. Ваш агент разработки анализирует доказательства и работает с документацией через установленные нативные для хоста рабочие процессы.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Truthmark nasıl çalışır
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Mevcut kod + testler"] --> B["Truth Document"]
|
||||
B --> C["Yeni ürün ve mühendislik belgeleri"]
|
||||
D["Ajan kodu değiştirir"] --> E["Testler + Truth Sync"]
|
||||
E --> F["Belgeler güncel kalır"]
|
||||
C --> G["Git incelemesi"]
|
||||
F --> G
|
||||
H["Truth belgeleri"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Truthmark nasıl çalışır" width="1440">
|
||||
</picture>
|
||||
|
||||
Truthmark komut satırı arayüzü depo sözleşmesini kurar ve doğrular. Kodlama ajanınız, kurulu ve ana bilgisayara özgü iş akışları üzerinden kanıt incelemesini ve dokümantasyon çalışmasını gerçekleştirir.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Cách Truthmark hoạt động
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["Mã hiện có + bài kiểm thử"] --> B["Truth Document"]
|
||||
B --> C["Tài liệu sản phẩm và kỹ thuật mới"]
|
||||
D["Tác nhân thay đổi mã"] --> E["Bài kiểm thử + Truth Sync"]
|
||||
E --> F["Tài liệu luôn cập nhật"]
|
||||
C --> G["Xem xét trong Git"]
|
||||
F --> G
|
||||
H["Tài liệu truth"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Cách Truthmark hoạt động" width="1440">
|
||||
</picture>
|
||||
|
||||
Giao diện dòng lệnh Truthmark cài đặt và xác thực hợp đồng của kho. Tác nhân lập trình của bạn thực hiện việc xem xét bằng chứng và viết tài liệu thông qua các quy trình gốc của host đã được cài đặt.
|
||||
|
||||
|
||||
@@ -88,17 +88,10 @@ truthmark check --base <base-ref>
|
||||
|
||||
## Truthmark 的工作原理
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
A["现有代码 + 测试"] --> B["Truth Document"]
|
||||
B --> C["新的产品与工程文档"]
|
||||
D["代理更改代码"] --> E["测试 + Truth Sync"]
|
||||
E --> F["文档保持最新"]
|
||||
C --> G["Git 审查"]
|
||||
F --> G
|
||||
H["事实文档"] --> I["Truth Realize"]
|
||||
I --> D
|
||||
```
|
||||
<picture>
|
||||
<source media="(max-width: 700px)" srcset="../assets/truthmark-workflow-mobile.svg">
|
||||
<img src="../assets/truthmark-workflow.svg" alt="Truthmark 的工作原理" width="1440">
|
||||
</picture>
|
||||
|
||||
Truthmark 命令行界面负责安装并验证仓库契约。您的编码代理通过已安装的宿主原生工作流完成证据审查和文档工作。
|
||||
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
"files": [
|
||||
"dist",
|
||||
"README.md",
|
||||
"docs/assets/truthmark-workflow-mobile.svg",
|
||||
"docs/assets/truthmark-workflow.svg",
|
||||
"docs/readmes/README.ar.md",
|
||||
"docs/readmes/README.de.md",
|
||||
"docs/readmes/README.el.md",
|
||||
|
||||
@@ -31,6 +31,8 @@ const localizedReadmeFiles = [
|
||||
|
||||
const expectedPackageFiles = [
|
||||
"LICENSE",
|
||||
"docs/assets/truthmark-workflow-mobile.svg",
|
||||
"docs/assets/truthmark-workflow.svg",
|
||||
...localizedReadmeFiles,
|
||||
"README.md",
|
||||
"dist/main.js",
|
||||
|
||||
Reference in New Issue
Block a user