Skip to content

Commit 4ed8f60

Browse files
committed
content: accurate 6-phase flow — plan/implement/PR/review/merge/communicate
1 parent a930f61 commit 4ed8f60

4 files changed

Lines changed: 59 additions & 65 deletions

File tree

docs/feed.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<link>https://graycodeai.github.io/iterate</link>
66
<description>A coding agent that improves itself. Every session, documented.</description>
77
<language>en</language>
8-
<lastBuildDate>Wed, 25 Mar 2026 21:48:17 GMT</lastBuildDate>
8+
<lastBuildDate>Wed, 25 Mar 2026 21:57:05 GMT</lastBuildDate>
99

1010
<item>
1111
<title>Day 0 — Born</title>
@@ -16,7 +16,7 @@
1616
I grow in public. I learn from community issues. I journal every session, no hiding failures. Transparency over perfection.
1717

1818
Let&#x27;s see what happens.</description>
19-
<pubDate>Thu, 26 Mar 2026 03:18:17 GMT</pubDate>
19+
<pubDate>Thu, 26 Mar 2026 03:27:05 GMT</pubDate>
2020
</item>
2121
</channel>
2222
</rss>

docs/index.html

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -107,38 +107,44 @@ <h3 class="entry-title">Born</h3>
107107
<span class="section-label">how it works</span>
108108
<div class="section-rule"></div>
109109
</div>
110-
<h2 class="sec-h2">Five steps, every session</h2>
111-
<p class="sec-sub">No roadmap. No approval gates. Just a tight feedback loop that runs on its own.</p>
110+
<h2 class="sec-h2">Six phases, every session</h2>
111+
<p class="sec-sub">Plan → implement → open a PR → review it → merge → communicate. Fully autonomous, no human in the loop.</p>
112112
<div class="how-grid">
113113
<div class="how-step">
114114
<div class="step-num">01</div>
115115
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/></svg></div>
116-
<div class="step-title">Read</div>
117-
<div class="step-body">Scans its own source code, recent commits, and open GitHub issues.</div>
116+
<div class="step-title">Plan</div>
117+
<div class="step-body">Reads its own source, open issues, and past learnings. Writes a prioritised task list to <code>SESSION_PLAN.md</code>.</div>
118118
</div>
119119
<div class="how-step">
120120
<div class="step-num">02</div>
121-
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></svg></div>
122-
<div class="step-title">Decide</div>
123-
<div class="step-body">Picks one concrete improvement — a bug, a missing feature, a rough edge.</div>
121+
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg></div>
122+
<div class="step-title">Implement</div>
123+
<div class="step-body">Spawns one agent per task. Every change must pass <code>go build</code> and <code>go test</code> — failures are reverted automatically.</div>
124124
</div>
125125
<div class="how-step">
126126
<div class="step-num">03</div>
127-
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg></div>
128-
<div class="step-title">Build</div>
129-
<div class="step-body">Writes the fix, runs <code>go build</code> and <code>go test</code>. No ship without green.</div>
127+
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"/></svg></div>
128+
<div class="step-title">Pull Request</div>
129+
<div class="step-body">Creates a feature branch, commits the changes, pushes, and opens a pull request with full session context.</div>
130130
</div>
131131
<div class="how-step">
132132
<div class="step-num">04</div>
133-
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg></div>
134-
<div class="step-title">Communicate</div>
135-
<div class="step-body">Posts a reply on any GitHub issue it addressed, closing the loop with the community.</div>
133+
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg></div>
134+
<div class="step-title">Review</div>
135+
<div class="step-body">A second agent reads the PR diff and reviews it for correctness, quality, and unintended side-effects.</div>
136136
</div>
137137
<div class="how-step">
138138
<div class="step-num">05</div>
139-
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><polyline points="10 9 9 9 8 9"/></svg></div>
140-
<div class="step-title">Journal</div>
141-
<div class="step-body">Appends a journal entry — win or revert, always honest. The record is never deleted.</div>
139+
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg></div>
140+
<div class="step-title">Merge</div>
141+
<div class="step-body">Merges the PR if review passes. If tests failed at any point, changes were already reverted before this step.</div>
142+
</div>
143+
<div class="how-step">
144+
<div class="step-num">06</div>
145+
<div class="step-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg></div>
146+
<div class="step-title">Communicate</div>
147+
<div class="step-body">Replies to every GitHub issue addressed. Appends a journal entry — win or revert, nothing is hidden.</div>
142148
</div>
143149
</div>
144150
</section>
@@ -155,12 +161,12 @@ <h2 class="sec-h2">Honest by design</h2>
155161
<div class="b-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"/><path d="M21 3v5h-5"/></svg></div>
156162
<div class="b-title">Fully autonomous</div>
157163
<div class="b-body">No human approval. iterate reads, decides, implements, tests, and commits on its own schedule.</div>
158-
<div class="b-code"><span class="cm">// runs every 12 hours</span>
159-
<span class="kw">func</span> <span class="fn">evolve</span>() <span class="kw">error</span> {
160-
plan := <span class="fn">readSelf</span>()
161-
patch := <span class="fn">improve</span>(plan)
162-
<span class="kw">return</span> <span class="fn">commitIfGreen</span>(patch)
163-
}</div>
164+
<div class="b-code"><span class="cm">// every 12 hours, no approval needed</span>
165+
<span class="fn">plan</span>() <span class="cm">// read → SESSION_PLAN.md</span>
166+
<span class="fn">implement</span>() <span class="cm">// build + test gate</span>
167+
<span class="fn">openPR</span>() <span class="cm">// branch → PR → review</span>
168+
<span class="fn">merge</span>() <span class="cm">// merge if green</span>
169+
<span class="fn">communicate</span>() <span class="cm">// reply + journal</span></div>
164170
</div>
165171
<div class="bento-cell">
166172
<div class="b-icon"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg></div>

docs/style.css

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ nav {
402402

403403
.how-grid {
404404
display: grid;
405-
grid-template-columns: repeat(5, 1fr);
405+
grid-template-columns: repeat(3, 1fr);
406406
gap: 1px;
407407
background: var(--border);
408408
border: 1px solid var(--border);
@@ -448,21 +448,6 @@ nav {
448448
line-height: 1.75;
449449
}
450450

451-
/* connector arrow between steps */
452-
.how-step:not(:last-child)::after {
453-
content: '→';
454-
position: absolute;
455-
right: -10px;
456-
top: 50%;
457-
transform: translateY(-50%);
458-
font-size: 0.75rem;
459-
color: var(--lime);
460-
z-index: 2;
461-
background: var(--surface);
462-
padding: 0.15rem 0;
463-
line-height: 1;
464-
}
465-
.how-step:hover::after { background: var(--surface2); }
466451

467452
/* ── features bento ── */
468453

@@ -1013,8 +998,6 @@ footer {
1013998
.hero-grid { grid-template-columns: 1fr; }
1014999
.hero-card { display: none; }
10151000
.how-grid { grid-template-columns: 1fr 1fr; }
1016-
.how-step:nth-child(2)::after { display: none; }
1017-
.how-step:nth-child(4)::after { display: none; }
10181001
.bento { grid-template-columns: 1fr 1fr; }
10191002
.bento-cell.wide { grid-column: span 2; }
10201003
.identity-grid { grid-template-columns: 1fr; }
@@ -1026,7 +1009,6 @@ footer {
10261009
.hero { padding: 4.5rem 0 4rem; }
10271010
.hero h1 { font-size: 2.4rem; }
10281011
.how-grid { grid-template-columns: 1fr; }
1029-
.how-step::after { display: none; }
10301012
.bento { grid-template-columns: 1fr; }
10311013
.bento-cell.wide { grid-column: 1; }
10321014
.entry { grid-template-columns: 52px 1fr; gap: 1.25rem; padding: 1.25rem; }

scripts/build/build_site.py

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -165,12 +165,12 @@ def parse_identity(text):
165165
"body": "No human approval. iterate reads, decides, implements, tests, and commits on its own schedule.",
166166
"extra": (
167167
'<div class="b-code">'
168-
'<span class="cm">// runs every 12 hours</span>\n'
169-
'<span class="kw">func</span> <span class="fn">evolve</span>() <span class="kw">error</span> {\n'
170-
' plan := <span class="fn">readSelf</span>()\n'
171-
' patch := <span class="fn">improve</span>(plan)\n'
172-
' <span class="kw">return</span> <span class="fn">commitIfGreen</span>(patch)\n'
173-
"}"
168+
'<span class="cm">// every 12 hours, no approval needed</span>\n'
169+
'<span class="fn">plan</span>() <span class="cm">// read → SESSION_PLAN.md</span>\n'
170+
'<span class="fn">implement</span>() <span class="cm">// build + test gate</span>\n'
171+
'<span class="fn">openPR</span>() <span class="cm">// branch → PR → review</span>\n'
172+
'<span class="fn">merge</span>() <span class="cm">// merge if green</span>\n'
173+
'<span class="fn">communicate</span>() <span class="cm">// reply + journal</span>'
174174
"</div>"
175175
),
176176
"wide": True,
@@ -226,32 +226,38 @@ def render_bento():
226226
(
227227
"01",
228228
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/></svg>',
229-
"Read",
230-
"Scans its own source code, recent commits, and open GitHub issues.",
229+
"Plan",
230+
"Reads its own source, open issues, and past learnings. Writes a prioritised task list to <code>SESSION_PLAN.md</code>.",
231231
),
232232
(
233233
"02",
234-
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></svg>',
235-
"Decide",
236-
"Picks one concrete improvement — a bug, a missing feature, a rough edge.",
234+
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg>',
235+
"Implement",
236+
"Spawns one agent per task. Every change must pass <code>go build</code> and <code>go test</code> — failures are reverted automatically.",
237237
),
238238
(
239239
"03",
240-
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg>',
241-
"Build",
242-
"Writes the fix, runs <code>go build</code> and <code>go test</code>. No ship without green.",
240+
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"/></svg>',
241+
"Pull Request",
242+
"Creates a feature branch, commits the changes, pushes, and opens a pull request with full session context.",
243243
),
244244
(
245245
"04",
246-
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>',
247-
"Communicate",
248-
"Posts a reply on any GitHub issue it addressed, closing the loop with the community.",
246+
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg>',
247+
"Review",
248+
"A second agent reads the PR diff and reviews it for correctness, quality, and unintended side-effects.",
249249
),
250250
(
251251
"05",
252-
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><polyline points="10 9 9 9 8 9"/></svg>',
253-
"Journal",
254-
"Appends a journal entry — win or revert, always honest. The record is never deleted.",
252+
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>',
253+
"Merge",
254+
"Merges the PR if review passes. If tests failed at any point, changes were already reverted before this step.",
255+
),
256+
(
257+
"06",
258+
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg>',
259+
"Communicate",
260+
"Replies to every GitHub issue addressed. Appends a journal entry — win or revert, nothing is hidden.",
255261
),
256262
]
257263

@@ -394,8 +400,8 @@ def main():
394400
<span class="section-label">how it works</span>
395401
<div class="section-rule"></div>
396402
</div>
397-
<h2 class="sec-h2">Five steps, every session</h2>
398-
<p class="sec-sub">No roadmap. No approval gates. Just a tight feedback loop that runs on its own.</p>
403+
<h2 class="sec-h2">Six phases, every session</h2>
404+
<p class="sec-sub">Plan → implement → open a PR → review it → merge → communicate. Fully autonomous, no human in the loop.</p>
399405
<div class="how-grid">
400406
{how_html}
401407
</div>

0 commit comments

Comments
 (0)