agentic-ai-engineering/site/.vitepress/dist/assets/modules_software-factory.md...

7 lines
3.8 KiB
JavaScript
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{c as a,Q as e,j as s,m as i}from"./chunks/framework.BPKcPtvA.js";const k=JSON.parse('{"title":"Software Factory: Paperclip Integration","description":"","frontmatter":{},"headers":[],"relativePath":"modules/software-factory.md","filePath":"modules/software-factory.md","lastUpdated":1780488246000}'),n={name:"modules/software-factory.md"};function r(l,t,o,p,d,h){return e(),s("div",null,[...t[0]||(t[0]=[i(`<h1 id="software-factory-paperclip-integration" tabindex="-1">Software Factory: Paperclip Integration <a class="header-anchor" href="#software-factory-paperclip-integration" aria-label="Permalink to &quot;Software Factory: Paperclip Integration&quot;"></a></h1><p>Close the loop: Plan, Build, Test, Verify, Ship — orchestrated through Paperclip with JWT auth.</p><h2 id="pipeline" tabindex="-1">Pipeline <a class="header-anchor" href="#pipeline" aria-label="Permalink to &quot;Pipeline&quot;"></a></h2><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>PLAN ---&gt; BUILD ---&gt; TEST ---&gt; VERIFY ---&gt; SHIP</span></span>
<span class="line"><span> CEO Agent CI/CD Verifier Paperclip</span></span>
<span class="line"><span> Board Chains Pipeline Agent Heartbeat</span></span>
<span class="line"><span> (all JWT authenticated)</span></span></code></pre></div><h2 id="authentication-tiers" tabindex="-1">Authentication Tiers <a class="header-anchor" href="#authentication-tiers" aria-label="Permalink to &quot;Authentication Tiers&quot;"></a></h2><table tabindex="0"><thead><tr><th>Tier</th><th>Trust Model</th><th>Token</th><th>Use Case</th></tr></thead><tbody><tr><td><strong>1. Local</strong></td><td>Same machine</td><td>Short-lived JWT (48h)</td><td>Local dev</td></tr><tr><td><strong>2. CLI</strong></td><td>Shell access</td><td>Long-lived API key</td><td>Remote agents</td></tr><tr><td><strong>3. Self-register</strong></td><td>Autonomous</td><td>Invite URL to JWT</td><td>OpenClaw agents</td></tr></tbody></table><h2 id="quick-start" tabindex="-1">Quick Start <a class="header-anchor" href="#quick-start" aria-label="Permalink to &quot;Quick Start&quot;"></a></h2><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">cd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> paperclip</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">pnpm</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> dev</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> lan</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">curl</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -sS</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> http://127.0.0.1:3100/api/health</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> jq</span></span></code></pre></div><h2 id="status" tabindex="-1">Status <a class="header-anchor" href="#status" aria-label="Permalink to &quot;Status&quot;"></a></h2><p>Paperclip&#39;s auth plan documents all 3 tiers. Tier 1 is partially implemented — env vars are passed but <code>PAPERCLIP_API_KEY</code> (JWT) needs to be added to the env injection. This is the last code change needed to close the factory loop.</p>`,10)])])}const u=a(n,[["render",r]]);export{k as __pageData,u as default};