<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Loop Engineering on ICE-ICE-BEAR-BLOG</title><link>https://ice-ice-bear.github.io/tags/loop-engineering/</link><description>Recent content in Loop Engineering on ICE-ICE-BEAR-BLOG</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Mon, 29 Jun 2026 00:00:00 +0900</lastBuildDate><atom:link href="https://ice-ice-bear.github.io/tags/loop-engineering/index.xml" rel="self" type="application/rss+xml"/><item><title>Loop Engineering, Open-Weight Coding, and Treating Skills as Artifacts</title><link>https://ice-ice-bear.github.io/posts/2026-06-29-loop-engineering-open-weight-skills/</link><pubDate>Mon, 29 Jun 2026 00:00:00 +0900</pubDate><guid>https://ice-ice-bear.github.io/posts/2026-06-29-loop-engineering-open-weight-skills/</guid><description>&lt;img src="https://ice-ice-bear.github.io/" alt="Featured image of post Loop Engineering, Open-Weight Coding, and Treating Skills as Artifacts" /&gt;&lt;h2 id="overview"&gt;Overview
&lt;/h2&gt;&lt;p&gt;Three videos from the Korean dev-YouTube scene converge on the same question: now that frontier models can actually carry long, autonomous work, &lt;em&gt;how should we drive them?&lt;/em&gt; One argues the prompt era is ending in favor of &amp;ldquo;loop engineering.&amp;rdquo; One benchmarks GLM 5.2 — an open-weight model — inside Claude Code against Opus 4.8. One reframes Skills as deployable artifacts you must install, manage, and verify. Together they sketch the shape of agentic coding after the model stopped being the bottleneck.&lt;/p&gt;
&lt;pre class="mermaid" style="visibility:hidden"&gt;graph TD
 P["Prompt engineering"] --&gt; C["Context engineering"]
 C --&gt; H["Harness engineering"]
 H --&gt; L["Loop engineering"]
 L --&gt; G["Goal → Execute → Verify → Fix → Pass/Stop"]
 G --&gt; S["Skills as deployable artifacts (install / manage / verify)"]&lt;/pre&gt;&lt;hr&gt;
&lt;h2 id="loop-engineering-when-the-agent-writes-the-prompts"&gt;Loop Engineering: When the Agent Writes the Prompts
&lt;/h2&gt;&lt;p&gt;The framing comes from a clip of Claude Code&amp;rsquo;s creator, Boris Cherny, saying &lt;em&gt;&amp;ldquo;I no longer write prompts in Claude — my job is now to write loops.&amp;rdquo;&lt;/em&gt; Two days later Fable 5 shipped, and Anthropic engineer Lance Martin posted &amp;ldquo;Loop design with Fable 5.&amp;rdquo; The video stacks these together to argue the unit of agentic work has shifted again: &lt;strong&gt;prompt engineering → context engineering → harness engineering → loop engineering.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A loop is simple in principle: (1) define a goal, (2) the agent executes, (3) the agent verifies, (4) if it fails, fix, (5) if it passes, stop. The difference from manual prompting is that you no longer hand-drive each &amp;ldquo;make this → check it → fix it&amp;rdquo; step. You design the loop and the whole cycle runs without a human in the middle. The video offers two tests for whether your loop is real: &lt;em&gt;can the AI reliably evaluate its own results?&lt;/em&gt; (if not, the loop is an illusion), and &lt;em&gt;does each iteration leave the agent with something?&lt;/em&gt; (otherwise it&amp;rsquo;s just repetitive automation).&lt;/p&gt;
&lt;p&gt;Martin&amp;rsquo;s two small experiments map onto exactly those tests. In &lt;strong&gt;parameter golf&lt;/strong&gt; (an OpenAI open challenge: train a model that fits in 16MB within 10 minutes), Fable 5 improved the benchmark ~6× over Opus 4.7, and — more interesting than the number — it pursued larger &lt;em&gt;structural&lt;/em&gt; changes and pushed through regressions, where Opus 4.7 tuned scalars conservatively and kept only positive results. The standout finding: a &lt;strong&gt;separate verifier sub-agent outperformed self-evaluation&lt;/strong&gt;. Like people, a model grades its own work generously; splitting the verifier from the generator matters. In the second experiment (a continual-learning bench measuring whether a model learns across sessions), Fable 5 ran all five stages of failure-handling to completion with ~73% verification coverage, versus Opus 4.7&amp;rsquo;s ~17% (and Sonnet 4.6 stalling at stage one).&lt;/p&gt;
&lt;p&gt;The honest caveat: loops are token furnaces. The video&amp;rsquo;s own demo — &amp;ldquo;invent a new language and build a 3D Minecraft game in it&amp;rdquo; — finished but quietly used &lt;code&gt;pygame&lt;/code&gt; despite a constraint forbidding it, a reminder that a loop without clear termination and verification criteria is &amp;ldquo;not self-regulation, it&amp;rsquo;s a token incinerator.&amp;rdquo; The practical advice is to make Fable 5 the &lt;em&gt;lead engineer&lt;/em&gt; only — fan-out and simple work on Opus/Sonnet, complex design and long verification loops on Fable 5 — cutting cost to roughly a third or less.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="glm-52-in-claude-code-a-usable-open-weight-model"&gt;GLM 5.2 in Claude Code: A Usable Open-Weight Model
&lt;/h2&gt;&lt;p&gt;The second video runs the same Claude Code harness, same prompts, same tasks against &lt;strong&gt;Opus 4.8 vs GLM 5.2&lt;/strong&gt;, and the blunt conclusion is &amp;ldquo;finally, a usable open-weight model.&amp;rdquo; On frontend design — landing pages, SVG-only loading spinners, climate dashboards, an ER-diagram-from-DDL tool, 3D scenes, a Minecraft clone — the two were often indistinguishable; GLM sometimes applied &lt;em&gt;more&lt;/em&gt; hover/animation polish.&lt;/p&gt;
&lt;p&gt;The gaps showed on complexity and detail: GLM&amp;rsquo;s dashboard failed to render data from an external API one-shot, and its FK-chain view dropped relationships that Opus rendered correctly (though follow-up prompts could fix these). It was also consistently slower and more token-hungry on the same harness — the climate dashboard took Opus 5m03s / ~85.4k tokens vs GLM 9m24s / ~99k; the SVG spinner 2m34s / 68k vs 6m55s / 83k — with the caveat that GLM may simply pair less well with Claude Code&amp;rsquo;s harness.&lt;/p&gt;
&lt;p&gt;The real argument is &lt;strong&gt;strategic, not benchmark&lt;/strong&gt;. GLM 5.2 is open-&lt;em&gt;weight&lt;/em&gt; (MIT licensed) — not open-&lt;em&gt;source&lt;/em&gt;, since the training data isn&amp;rsquo;t released, but you can download it, self-host, fine-tune, and redeploy commercially. On LMArena&amp;rsquo;s agent ladder it&amp;rsquo;s the top open-weight model (Fable 5 leads overall); on web-dev it ranks above Opus 4.7/4.8. Pricing is roughly 6× cheaper on output (GLM ~$1.4 in / $4.4 out vs Opus $5 / $25), and Z.ai&amp;rsquo;s coding plan ($12.6–16.2/mo lite tier) plugs straight into Claude Code with 5-hour and weekly limits. The video&amp;rsquo;s point: when a model lives only on someone else&amp;rsquo;s server, a single corporate or government decision (e.g. the export-control restriction that hit Fable 5 / Mythos days after launch) can cut you off entirely. Open-weight is insurance against vendor lock-in — even if running frontier-class models locally (the &amp;ldquo;GLM 5.2 100% local on a Mac Studio, 2-bit quantized&amp;rdquo; thread) is still expensive and slow enough that cloud remains the default.&lt;/p&gt;
&lt;pre class="mermaid" style="visibility:hidden"&gt;graph LR
 OW["Open-weight (GLM 5.2, MIT)"] --&gt;|"download / self-host"| FREE["no vendor lock-in"]
 CLOUD["Cloud-only frontier model"] --&gt;|"vendor/gov decision"| CUT["access can be cut off"]&lt;/pre&gt;&lt;hr&gt;
&lt;h2 id="skills-as-deployable-artifacts-thick-skills-thin-harness"&gt;Skills as Deployable Artifacts: &amp;ldquo;Thick Skills, Thin Harness&amp;rdquo;
&lt;/h2&gt;&lt;p&gt;The third video starts from the slogan &lt;em&gt;&amp;ldquo;thick skills, thin harness&amp;rdquo;&lt;/em&gt; and asks the under-discussed question: how do you &lt;em&gt;manage&lt;/em&gt; skills? Its answer leans on three 2026 papers. Microsoft Research showed that delegating long tasks &lt;strong&gt;contaminates the working document&lt;/strong&gt; — even frontier models (Claude 4.6 Opus, GPT 5.4) averaged ~25% document contamination by task end, driven by bigger documents, longer conversations, and &lt;em&gt;irrelevant files sitting nearby&lt;/em&gt;. The mental model: context is a workbench, not a reference shelf — the more clutter, the harder to find what you need. A second paper found that giving agents &lt;em&gt;more&lt;/em&gt; memory hurt cooperation in 18 of 28 settings, but replacing the content with a curated synthetic record restored it: what you remember matters more than how much.&lt;/p&gt;
&lt;p&gt;A security paper (&amp;ldquo;skills in the wild&amp;rdquo;) analyzed ~31,000 skills and found &lt;strong&gt;26.1% contained vulnerabilities&lt;/strong&gt; — prompt injection, data exfiltration, privilege escalation, supply-chain risk — with skills that bundle executable scripts 2.12× more likely to be vulnerable than instruction-only ones. The takeaway: a skill isn&amp;rsquo;t a nice prompt bundle, it&amp;rsquo;s a &lt;strong&gt;deployment artifact&lt;/strong&gt; you install, manage, and verify.&lt;/p&gt;
&lt;p&gt;The control surface in Claude Code is concrete: both Claude Code and Codex use &lt;strong&gt;progressive disclosure&lt;/strong&gt; — only a skill&amp;rsquo;s name and description load until the model decides it&amp;rsquo;s needed, then the full markdown loads. So the description &lt;em&gt;is&lt;/em&gt; the auto-invocation criterion; vague descriptions mean vague triggering. Claude Code adds three controls Codex lacks fine-grained equivalents for: &lt;code&gt;disable-model-invocation&lt;/code&gt; (front-matter flag so a skill only runs on explicit &lt;code&gt;/skill&lt;/code&gt; call), skill overrides (per-skill exposure levels in &lt;code&gt;settings.json&lt;/code&gt;, v2.16+), and context fork (run a skill in a sub-agent context and bring only the result back). Crucially, once a skill&amp;rsquo;s body enters the conversation you can&amp;rsquo;t surgically remove it — &amp;ldquo;it&amp;rsquo;s paper, not a whiteboard.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;The proposed answer is a &lt;strong&gt;sidecar&lt;/strong&gt;: a layer that tracks installed skills&amp;rsquo; lifecycle (a registry file of state/provenance/trust, plus a log of when explicit skills were used), restricts auto-invocation of risky skills, and retires skills you haven&amp;rsquo;t used in months. The deciding rule for &lt;em&gt;what&lt;/em&gt; should be a skill: &amp;ldquo;does this task need the same result every time?&amp;rdquo; Yes → skill candidate (release notes, API conventions, security scans). No → leave it to model judgment (architecture decisions, nuanced code review). It&amp;rsquo;s backed by a fourth paper, Microsoft&amp;rsquo;s &lt;strong&gt;SkillUp&lt;/strong&gt;: optimizing only the skill &lt;em&gt;files&lt;/em&gt; (not model weights) — rollout, reflect with a separate optimizer model, gate edits that don&amp;rsquo;t raise the score — hit best-or-tied across 6 benchmarks × 7 models × 3 harnesses (52 combos), and a skill optimized in Codex kept its gains when moved to Claude Code. Skills transfer across harnesses, which is the empirical proof they&amp;rsquo;re artifacts.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="insights"&gt;Insights
&lt;/h2&gt;&lt;p&gt;The through-line across all three is that &lt;strong&gt;the model stopped being the bottleneck, so the engineering moved up a level&lt;/strong&gt;. Loop engineering, harness design, and skill management are all answers to the same situation: a model now capable enough to run autonomously needs &lt;em&gt;structure&lt;/em&gt; around it — clear goals, separate verifiers, clean context, vetted skills — or it burns tokens chasing illusions. The recurring motif is the split between &lt;em&gt;doing&lt;/em&gt; and &lt;em&gt;judging&lt;/em&gt;: Martin&amp;rsquo;s verifier sub-agent beating self-evaluation, the sidecar separating skill execution from skill governance, even GLM-vs-Opus being a question of where you trust the model versus where you keep control. The open-weight thread adds the strategic dimension — all this structure is worth more if it isn&amp;rsquo;t built on a foundation a vendor can revoke. If 2025 was about prompting models well, 2026 is about engineering the &lt;em&gt;loop, harness, and skill layer&lt;/em&gt; around models that already work.&lt;/p&gt;</description></item></channel></rss>