Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
169 changes: 78 additions & 91 deletions docs/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/keywords/after-n-tries.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / after N tries (thrash guard)</div>
<h1><code>after N tries (thrash guard)</code></h1>
<div class="lede">Stop & warn if it gets stuck. <span class="badge cat-flow">Control & transitions</span></div>
<div class="lede">Stop & warn if it gets stuck. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">after</span> N <span class="tok-kw">tries</span>: <span class="tok-kw">stop</span> and <span class="tok-kw">warn</span> <span class="tok-str">"&lt;message&gt;"</span></code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/allow.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / allow / ask me before</div>
<h1><code>allow / ask me before</code></h1>
<div class="lede">The action policy: auto vs confirm. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">The action policy: auto vs confirm. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">allow</span> edits <span class="tok-kw">automatically</span>, but <span class="tok-kw">ask me before</span> migrations or pushes</code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/also.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / also</div>
<h1><code>also</code></h1>
<div class="lede">Finishing passes after the goal is met. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">Finishing passes after the goal is met. <span class="badge cat-flow">Augment</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">also</span>: &lt;pass&gt;, &lt;pass&gt;</code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/done-when.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / done when</div>
<h1><code>done when</code></h1>
<div class="lede">How a loop verifies itself. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">How a loop verifies itself. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">done when</span> &lt;predicate&gt;</code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/each-cycle.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / each cycle</div>
<h1><code>each cycle</code></h1>
<div class="lede">The repeated steps, in order. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">The repeated steps, in order. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">each cycle</span>: <span class="tok-kw">plan</span>, <span class="tok-kw">then</span> <span class="tok-kw">act</span>, <span class="tok-kw">then</span> <span class="tok-kw">observe</span></code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/flow.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / flow</div>
<h1><code>flow</code></h1>
<div class="lede">Chain whole .loop files in order. <span class="badge cat-structure">Structure</span></div>
<div class="lede">Chain whole .loop files in order. <span class="badge cat-structure">Compose</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">flow</span> <span class="tok-str">"&lt;name&gt;"</span>:
<span class="tok-kw">run</span> <span class="tok-str">"a.loop"</span>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/for-each.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / for each</div>
<h1><code>for each</code></h1>
<div class="lede">Run a template once per item. <span class="badge cat-structure">Structure</span></div>
<div class="lede">Run a template once per item. <span class="badge cat-structure">Compose</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">for each</span> &lt;var&gt; <span class="tok-kw">in</span> <span class="tok-str">"&lt;file&gt;"</span>:
<span class="tok-kw">run</span> <span class="tok-str">"&lt;template.loop&gt;"</span></code></pre>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/goal.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / goal</div>
<h1><code>goal</code></h1>
<div class="lede">What "done" means, in plain language. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">What "done" means, in plain language. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">goal</span>: &lt;text&gt;</code></pre>
<h2>What it does</h2>
Expand Down
19 changes: 12 additions & 7 deletions docs/keywords/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,20 @@
<h1>Keywords</h1>
<div class="lede">Every construct in the LoopFlow language — one page each, with syntax, what it does, examples, and a diagram where it helps.</div>
<p class="sub">Learning the language top-to-bottom? Read the <a href="../tutorial.html">tutorial</a>. This is the by-keyword reference.</p>
<div class="grouphdr">Structure</div>
<div class="kwgrid"><a class="kwcard" href="loop.html"><span class="kw">loop</span><span class="one">A self-correcting unit of work.</span></a><a class="kwcard" href="pipeline.html"><span class="kw">pipeline</span><span class="one">Stages in order; fail-fast.</span></a><a class="kwcard" href="stage.html"><span class="kw">stage</span><span class="one">One step of a pipeline — a story.</span></a><a class="kwcard" href="flow.html"><span class="kw">flow</span><span class="one">Chain whole .loop files in order.</span></a><a class="kwcard" href="run.html"><span class="kw">run / then run</span><span class="one">A step inside a flow.</span></a><a class="kwcard" href="for-each.html"><span class="kw">for each</span><span class="one">Run a template once per item.</span></a></div>
<div class="grouphdr">Building blocks</div>
<div class="kwgrid"><a class="kwcard" href="goal.html"><span class="kw">goal</span><span class="one">What "done" means, in plain language.</span></a><a class="kwcard" href="done-when.html"><span class="kw">done when</span><span class="one">How a loop verifies itself.</span></a><a class="kwcard" href="look-at.html"><span class="kw">look at</span><span class="one">Scope the context the agent reads.</span></a><a class="kwcard" href="each-cycle.html"><span class="kw">each cycle</span><span class="one">The repeated steps, in order.</span></a><a class="kwcard" href="allow.html"><span class="kw">allow / ask me before</span><span class="one">The action policy: auto vs confirm.</span></a><a class="kwcard" href="also.html"><span class="kw">also</span><span class="one">Finishing passes after the goal is met.</span></a><a class="kwcard" href="reflect.html"><span class="kw">reflect</span><span class="one">Turn a failure into the next plan.</span></a></div>
<div class="grouphdr">Control & transitions</div>
<div class="kwgrid"><a class="kwcard" href="when.html"><span class="kw">when … (transitions)</span><span class="one">Rules evaluated after each observe.</span></a><a class="kwcard" href="after-n-tries.html"><span class="kw">after N tries (thrash guard)</span><span class="one">Stop &amp; warn if it gets stuck.</span></a></div>
<div class="tierhdr">Core syntax — the five decisions<span class="sub">The engine. Objective, context, actions, verification, stopping — plus the cycle that drives them, and where a human steps in.</span></div>
<div class="grouphdr">The five decisions</div>
<div class="kwgrid"><a class="kwcard" href="goal.html"><span class="kw">goal</span><span class="one">Objective — what "done" means, in plain language.</span></a><a class="kwcard" href="look-at.html"><span class="kw">look at</span><span class="one">Context — scope what the agent reads first.</span></a><a class="kwcard" href="allow.html"><span class="kw">allow / ask me before</span><span class="one">Actions — auto vs confirm.</span></a><a class="kwcard" href="done-when.html"><span class="kw">done when</span><span class="one">Verification — how a loop proves itself.</span></a><a class="kwcard" href="when.html"><span class="kw">when … (transitions)</span><span class="one">Stopping — rules evaluated after each observe.</span></a><a class="kwcard" href="after-n-tries.html"><span class="kw">after N tries (thrash guard)</span><span class="one">Stopping — stop &amp; warn if it gets stuck.</span></a></div>
<div class="grouphdr">The cycle</div>
<div class="kwgrid"><a class="kwcard" href="each-cycle.html"><span class="kw">each cycle</span><span class="one">The repeated steps, in order.</span></a><a class="kwcard" href="reflect.html"><span class="kw">reflect</span><span class="one">Turn a failure into the next plan.</span></a></div>
<div class="grouphdr">Human-in-the-loop</div>
<div class="kwgrid"><a class="kwcard" href="human-gates.html"><span class="kw">human gates</span><span class="one">Where a person steps in.</span></a></div>

<div class="tierhdr">The rest of the syntax<span class="sub">Everything that composes loops into bigger workflows or configures a run — none of it changes how a single loop thinks.</span></div>
<div class="grouphdr">Compose — scale one loop into many</div>
<div class="kwgrid"><a class="kwcard" href="loop.html"><span class="kw">loop</span><span class="one">A self-correcting unit of work.</span></a><a class="kwcard" href="pipeline.html"><span class="kw">pipeline</span><span class="one">Stages in order; fail-fast.</span></a><a class="kwcard" href="stage.html"><span class="kw">stage</span><span class="one">One step of a pipeline — a story.</span></a><a class="kwcard" href="flow.html"><span class="kw">flow</span><span class="one">Chain whole .loop files in order.</span></a><a class="kwcard" href="run.html"><span class="kw">run / then run</span><span class="one">A step inside a flow.</span></a><a class="kwcard" href="for-each.html"><span class="kw">for each</span><span class="one">Run a template once per item.</span></a></div>
<div class="grouphdr">Augment a loop</div>
<div class="kwgrid"><a class="kwcard" href="use-skills.html"><span class="kw">use skills:</span><span class="one">Named skills the loop may invoke.</span></a><a class="kwcard" href="remember-in.html"><span class="kw">remember in</span><span class="one">Cross-run memory across runs.</span></a><a class="kwcard" href="also.html"><span class="kw">also</span><span class="one">Finishing passes after the goal is met.</span></a><a class="kwcard" href="plan-from.html"><span class="kw">plan from</span><span class="one">Read the plan from a file you control.</span></a></div>
<div class="grouphdr">Ops & reuse</div>
<div class="kwgrid"><a class="kwcard" href="git.html"><span class="kw">git:</span><span class="one">Branch / commit / push strategy.</span></a><a class="kwcard" href="models.html"><span class="kw">models:</span><span class="one">Model tiering by phase.</span></a><a class="kwcard" href="use-method.html"><span class="kw">use the &lt;X&gt; method</span><span class="one">Import a reusable preset.</span></a><a class="kwcard" href="schedule.html"><span class="kw">schedule</span><span class="one">When to run.</span></a><a class="kwcard" href="target.html"><span class="kw">target</span><span class="one">Where the runner operates.</span></a><a class="kwcard" href="notify.html"><span class="kw">notify</span><span class="one">Where to send completion.</span></a><a class="kwcard" href="plan-from.html"><span class="kw">plan from</span><span class="one">Read the plan from a file you control.</span></a></div>
<div class="kwgrid"><a class="kwcard" href="git.html"><span class="kw">git:</span><span class="one">Branch / commit / push strategy.</span></a><a class="kwcard" href="models.html"><span class="kw">models:</span><span class="one">Model tiering by phase.</span></a><a class="kwcard" href="use-method.html"><span class="kw">use the &lt;X&gt; method</span><span class="one">Import a reusable preset.</span></a><a class="kwcard" href="schedule.html"><span class="kw">schedule</span><span class="one">When to run.</span></a><a class="kwcard" href="target.html"><span class="kw">target</span><span class="one">Where the runner operates.</span></a><a class="kwcard" href="notify.html"><span class="kw">notify</span><span class="one">Where to send completion.</span></a></div>
<footer>LoopFlow · the keyword reference. New here? Start with the <a href="../tutorial.html">tutorial</a> or learn by playing <a href="../game.html">LoopFlow Lab</a>.</footer>
</main></body></html>
2 changes: 1 addition & 1 deletion docs/keywords/look-at.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / look at</div>
<h1><code>look at</code></h1>
<div class="lede">Scope the context the agent reads. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">Scope the context the agent reads. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">look at</span>: &lt;files&gt;, and the last failure</code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/loop.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / loop</div>
<h1><code>loop</code></h1>
<div class="lede">A self-correcting unit of work. <span class="badge cat-structure">Structure</span></div>
<div class="lede">A self-correcting unit of work. <span class="badge cat-structure">Compose</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">loop</span> <span class="tok-str">"&lt;name&gt;"</span>:</code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/pipeline.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / pipeline</div>
<h1><code>pipeline</code></h1>
<div class="lede">Stages in order; fail-fast. <span class="badge cat-structure">Structure</span></div>
<div class="lede">Stages in order; fail-fast. <span class="badge cat-structure">Compose</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">pipeline</span> <span class="tok-str">"&lt;name&gt;"</span>:
<span class="tok-kw">stage</span> &lt;name&gt;: …</code></pre>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/plan-from.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / plan from</div>
<h1><code>plan from</code></h1>
<div class="lede">Read the plan from a file you control. <span class="badge cat-ops">Ops & reuse</span></div>
<div class="lede">Read the plan from a file you control. <span class="badge cat-flow">Augment</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">plan</span> from <span class="tok-str">"docs/plan.md"</span></code></pre>
<h2>What it does</h2>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/reflect.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / reflect</div>
<h1><code>reflect</code></h1>
<div class="lede">Turn a failure into the next plan. <span class="badge cat-definition">Building blocks</span></div>
<div class="lede">Turn a failure into the next plan. <span class="badge cat-core">Core syntax</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">when</span> it fails: <span class="tok-kw">reflect</span>, <span class="tok-kw">then</span> <span class="tok-kw">plan</span> again</code></pre>
<h2>What it does</h2>
Expand Down
39 changes: 39 additions & 0 deletions docs/keywords/remember-in.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<!doctype html>
<html lang="en"><head><meta charset="utf-8"/><link rel="icon" type="image/svg+xml" href="/gyro-icon.svg"/><meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>remember in — LoopFlow keyword</title><meta name="description" content="Cross-run memory: read past lessons on start, append the outcome on stop."/>
<link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/>
<link href="https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,400;1,500&family=Ubuntu+Mono:ital,wght@0,400;0,700;1,400&display=swap" rel="stylesheet"/>
<link rel="stylesheet" href="style.css"/></head><body>
<svg width="0" height="0" style="position:absolute" aria-hidden="true"><defs>
<marker id="dgA" markerWidth="9" markerHeight="9" refX="7.5" refY="4" orient="auto"><path d="M0,0 L8,4 L0,8 Z" fill="#5b6678"/></marker>
<marker id="dgAr" markerWidth="9" markerHeight="9" refX="7.5" refY="4" orient="auto"><path d="M0,0 L8,4 L0,8 Z" fill="#ffb45a"/></marker>
<marker id="dgAg" markerWidth="9" markerHeight="9" refX="7.5" refY="4" orient="auto"><path d="M0,0 L8,4 L0,8 Z" fill="#5fd99a"/></marker>
<marker id="dgAp" markerWidth="9" markerHeight="9" refX="7.5" refY="4" orient="auto"><path d="M0,0 L8,4 L0,8 Z" fill="#ff86c2"/></marker>
</defs></svg>
<div class="topbar">
<div class="brand"><span class="logo"><svg class="lpmark" viewBox="0 0 32 32" fill="none" aria-label="LoopFlow"><circle cx="16" cy="16" r="11" stroke="#34e0c4" stroke-width="2.4"/><ellipse cx="16" cy="16" rx="11" ry="4.4" stroke="#ffb45a" stroke-width="1.8" opacity=".85" transform="rotate(-28 16 16)"/><circle cx="16" cy="16" r="2.4" fill="#34e0c4"/></svg></span>LoopFlow</div>
<a class="nav" href="../tutorial.html">Tutorial</a>
<a class="nav" href="../workshop.html">Workshop</a>
<a class="nav here" href="index.html">Keywords</a>
<a class="nav lab" href="../game.html">🎮 LoopFlow Lab</a>
</div>
<main>
<div class="crumb"><a href="index.html">Keywords</a> / remember in</div>
<h1><code>remember in</code></h1>
<div class="lede">Cross-run memory — read past lessons on start, append the outcome on stop. <span class="badge cat-flow">Augment</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">remember in</span> <span class="tok-str">"&lt;file.md&gt;"</span></code></pre>
<h2>What it does</h2>
<p>Names a Markdown file the loop treats as its memory. On start it reads the file and feeds those lessons into the first plan; on stop it appends a dated entry recording how the run went. Across runs, the loop learns from its own history instead of starting cold each time.</p>
<h2>Example</h2>
<pre><code><span class="tok-kw">loop</span> <span class="tok-str">"keep the flaky e2e suite green"</span>:
<span class="tok-kw">goal</span>: the end-to-end suite passes three times in a row
<span class="tok-kw">remember in</span> <span class="tok-str">"loop.memory.md"</span>
<span class="tok-kw">done when</span> <span class="tok-str">"pnpm test:e2e --repeat 3"</span> passes
<span class="tok-kw">each cycle</span>: plan, then act, then observe
<span class="tok-kw">when</span> it fails: reflect, then plan again</code></pre><span class="cap">a loop that carries lessons between runs</span>

<h2>Related</h2>
<div class="related"><a href="reflect.html"><code>reflect</code></a><a href="use-skills.html"><code>use skills</code></a><a href="goal.html"><code>goal</code></a></div>
<footer>LoopFlow · the keyword reference. New here? Start with the <a href="../tutorial.html">tutorial</a> or learn by playing <a href="../game.html">LoopFlow Lab</a>.</footer>
</main></body></html>
2 changes: 1 addition & 1 deletion docs/keywords/run.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / run / then run</div>
<h1><code>run / then run</code></h1>
<div class="lede">A step inside a flow. <span class="badge cat-structure">Structure</span></div>
<div class="lede">A step inside a flow. <span class="badge cat-structure">Compose</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">run</span> <span class="tok-str">"&lt;file.loop&gt;"</span>
<span class="tok-kw">then</span> <span class="tok-kw">run</span> <span class="tok-str">"&lt;file.loop&gt;"</span>
Expand Down
2 changes: 1 addition & 1 deletion docs/keywords/stage.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<main>
<div class="crumb"><a href="index.html">Keywords</a> / stage</div>
<h1><code>stage</code></h1>
<div class="lede">One step of a pipeline — a story. <span class="badge cat-structure">Structure</span></div>
<div class="lede">One step of a pipeline — a story. <span class="badge cat-structure">Compose</span></div>
<h2>Syntax</h2>
<pre class="syntax"><code><span class="tok-kw">stage</span> &lt;name&gt;:
<span class="tok-kw">goal</span>: …</code></pre>
Expand Down
Loading
Loading