Files
huskies/website/index.html
T
2026-04-04 21:32:05 +01:00

152 lines
6.5 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Huskies — Story-Driven Development for AI Agents</title>
<meta name="description" content="Huskies is an autonomous development pipeline that turns user stories into tested, shipped code using AI agents.">
<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=Bricolage+Grotesque:wght@400;500;600;700;800&family=Karla:ital,wght@0,300;0,400;0,500;1,300;1,400&display=swap" rel="stylesheet">
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="page">
<!-- Nav -->
<header class="reveal r1">
<a href="/" class="logo">huskies</a>
<nav>
<a href="#how">How it works</a>
<a href="#features">Features</a>
<a href="https://code.crashlabs.io/crashlabs/huskies">Source</a>
<a href="https://code.crashlabs.io/crashlabs/huskies/releases">Releases</a>
<a href="mailto:hello@huskies.dev" class="nav-cta">Get in touch</a>
</nav>
</header>
<!-- Hero -->
<section class="hero">
<div class="hero-graphic reveal r1">
<img src="husky.png" alt="" class="hero-husky">
</div>
<p class="hero-kicker reveal r1">Story-driven development</p>
<h1 class="reveal r2">Coding agents are huskies,<br>not <span class="glow">labradors.</span></h1>
<p class="hero-sub reveal r3">They're enthusiastic, sometimes wild, and they'll happily wander off on their own. But put them in a harness and they'll take you anywhere. Huskies is the harness &mdash; a story-driven pipeline that turns coding agents into a disciplined team.</p>
<!-- Pipeline viz -->
<div class="pipeline reveal r4">
<div class="pipe-stage">
<span class="pipe-dot"></span>
<span class="pipe-label">Story</span>
</div>
<span class="pipe-line"></span>
<div class="pipe-stage">
<span class="pipe-dot active"></span>
<span class="pipe-label">Implement</span>
</div>
<span class="pipe-line"></span>
<div class="pipe-stage">
<span class="pipe-dot"></span>
<span class="pipe-label">QA</span>
</div>
<span class="pipe-line"></span>
<div class="pipe-stage">
<span class="pipe-dot"></span>
<span class="pipe-label">Merge</span>
</div>
<span class="pipe-line"></span>
<div class="pipe-stage">
<span class="pipe-dot done"></span>
<span class="pipe-label">Done</span>
</div>
</div>
</section>
<!-- How it works -->
<section id="how" class="how-section">
<h2 class="section-title reveal r5">How it works</h2>
<ol class="steps">
<li class="step reveal r5">
<span class="step-num">01</span>
<div class="step-body">
<h3>Write a story</h3>
<p>Describe what you want with acceptance criteria. From your IDE, a chat room, or WhatsApp.</p>
</div>
</li>
<li class="step reveal r5">
<span class="step-num">02</span>
<div class="step-body">
<h3>Agent picks it up</h3>
<p>A coder agent creates a feature branch, implements the code, and writes tests against your criteria.</p>
</div>
</li>
<li class="step reveal r6">
<span class="step-num">03</span>
<div class="step-body">
<h3>Quality gates run</h3>
<p>Linters, tests, and compilation checks run automatically. Nothing moves forward until everything passes.</p>
</div>
</li>
<li class="step reveal r6">
<span class="step-num">04</span>
<div class="step-body">
<h3>Merge &amp; land</h3>
<p>A merge agent resolves conflicts and squash-merges to your main branch. You review and accept.</p>
</div>
</li>
</ol>
</section>
<!-- Features -->
<section id="features" class="features-section">
<h2 class="section-title reveal r7">Features</h2>
<div class="feature-grid">
<div class="feature reveal r7">
<div class="feature-icon">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"/></svg>
</div>
<h3>The Harness</h3>
<p>Stories define the change. Tests define the truth. Code defines the reality. Every agent runs on rails &mdash; nothing ships without acceptance criteria.</p>
</div>
<div class="feature reveal r7">
<div class="feature-icon">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="18" cy="5" r="3"/><circle cx="6" cy="12" r="3"/><circle cx="18" cy="19" r="3"/><path d="M8.59 13.51l6.83 3.98M15.41 6.51l-6.82 3.98"/></svg>
</div>
<h3>The Pack</h3>
<p>Coder, QA, and merge agents work in parallel across isolated git worktrees. A coordinated pack, not a lone wolf. Configure agent count, models, and budgets.</p>
</div>
<div class="feature reveal r8">
<div class="feature-icon">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z"/></svg>
</div>
<h3>Chat Anywhere</h3>
<p>Control the pipeline from Matrix, WhatsApp, Slack, or the built-in web UI. Create stories, start agents, check status.</p>
</div>
<div class="feature reveal r8">
<div class="feature-icon">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
</div>
<h3>You're the Musher</h3>
<p>Agents implement, test, and merge independently. You set the direction and approve what ships. Every story is traceable from request to release.</p>
</div>
</div>
</section>
<!-- CTA -->
<section class="cta-section reveal r8">
<h2>Interested?</h2>
<p>Huskies is built by <a href="https://crashlabs.io">Crash Labs</a>. Get in touch at <a href="mailto:hello@huskies.dev">hello@huskies.dev</a>.</p>
</section>
<footer class="reveal r8">
<span>&copy; 2026 Libby Labs Ltd.</span>
<a href="privacy.html">Privacy Policy</a>
</footer>
</div>
</body>
</html>