diff --git a/web/app/chief/chief.module.css b/web/app/chief/chief.module.css
deleted file mode 100644
index f755055e..00000000
--- a/web/app/chief/chief.module.css
+++ /dev/null
@@ -1,221 +0,0 @@
-.page {
- --chief-bg: #08111a;
- --chief-surface: #0f1b29;
- --chief-surface-strong: #13283b;
- --chief-line: rgba(116, 184, 226, 0.18);
- --chief-line-strong: rgba(116, 184, 226, 0.36);
- --chief-text: #edf4fb;
- --chief-muted: #a8b8c8;
- --chief-faint: #77879a;
- --chief-accent: #74b8e2;
- min-height: 100vh;
- overflow-x: clip;
- background: var(--chief-bg);
- color: var(--chief-text);
-}
-
-.hero {
- min-height: min(700px, calc(100dvh - 72px));
- display: flex;
- align-items: center;
- padding: 88px 40px 64px;
- background:
- radial-gradient(circle at 78% 25%, rgba(116, 184, 226, 0.13), transparent 34rem),
- linear-gradient(180deg, #10283b 0%, var(--chief-bg) 100%);
- border-bottom: 1px solid var(--chief-line);
-}
-
-.heroInner {
- width: 100%;
- max-width: 1180px;
- margin: 0 auto;
-}
-
-.heroCopy { max-width: 920px; }
-
-.hero h1,
-.problemInner h2,
-.sectionIntro h2,
-.responsibilityIntro h2,
-.infrastructureCopy h2,
-.evolutionInner h2,
-.ctaInner h2 {
- margin: 0;
- font-family: var(--font-heading), sans-serif;
- font-weight: 520;
- letter-spacing: -0.055em;
- line-height: 1.02;
-}
-
-.hero h1 {
- max-width: 16ch;
- font-size: clamp(3.5rem, 6.2vw, 6.5rem);
-}
-
-.heroLead {
- max-width: 54ch;
- margin: 26px 0 0;
- color: var(--chief-muted);
- font-size: clamp(1.02rem, 1.2vw, 1.16rem);
- line-height: 1.65;
-}
-
-.heroActions { display: flex; gap: 14px; margin-top: 34px; flex-wrap: wrap; }
-
-.pilotButton,
-.pilotButtonCompact,
-.secondaryButton {
- min-height: 48px;
- display: inline-flex;
- align-items: center;
- justify-content: center;
- gap: 9px;
- padding: 12px 24px;
- border: 1.5px solid #234969;
- border-radius: 999px;
- background: #2d6a9c;
- color: #fff;
- font-size: 0.91rem;
- font-weight: 650;
- line-height: 1;
- text-decoration: none;
- white-space: nowrap;
- transition: transform 180ms var(--ease-out-quint), background 180ms ease, border-color 180ms ease;
-}
-
-.pilotButtonCompact { min-height: 38px; padding: 9px 17px; background: #edf7fd; border-color: #d8ebf8; color: #0b2233; }
-.secondaryButton { background: transparent; border-color: var(--chief-line-strong); color: var(--chief-text); }
-.pilotButton svg, .pilotButtonCompact svg, .secondaryButton svg { width: 16px; height: 16px; stroke-width: 1.8; }
-.pilotButton:hover { background: #4a90c2; }
-.secondaryButton:hover { border-color: var(--chief-accent); color: var(--chief-accent); }
-.pilotButton:hover, .pilotButtonCompact:hover, .secondaryButton:hover { transform: translateY(-1px); }
-.pilotButton:active, .pilotButtonCompact:active, .secondaryButton:active { transform: scale(0.97); }
-.pilotButton:focus-visible, .pilotButtonCompact:focus-visible, .secondaryButton:focus-visible { outline: 3px solid var(--chief-accent); outline-offset: 4px; }
-
-.problemSection { padding: 118px 40px; background: #0b1723; border-bottom: 1px solid var(--chief-line); }
-.problemInner { max-width: 1080px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 96px; align-items: end; }
-.problemInner h2, .sectionIntro h2, .responsibilityIntro h2, .infrastructureCopy h2, .evolutionInner h2, .ctaInner h2 { font-size: clamp(2.35rem, 4.2vw, 4.5rem); }
-.problemCopy { padding-left: 28px; border-left: 1px solid var(--chief-line-strong); }
-.problemCopy p, .sectionIntro p, .responsibilityIntro p, .infrastructureCopy p, .evolutionInner p, .ctaInner > p { color: var(--chief-muted); line-height: 1.7; }
-.problemCopy p { margin: 0; }
-.problemCopy p + p { margin-top: 20px; color: var(--chief-text); }
-
-.workflowSection { max-width: 1280px; margin: 0 auto; padding: 128px 40px 140px; }
-.sectionIntro { max-width: 760px; }
-.sectionIntro p { max-width: 61ch; margin: 24px 0 0; }
-.workflowTrack { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 76px; }
-.workflowItem { position: relative; padding: 0 32px 0 0; }
-.workflowItem:not(:last-child) { border-right: 1px solid var(--chief-line); margin-right: 32px; }
-.workflowRail { height: 2px; margin-bottom: 30px; background: var(--chief-line); }
-.workflowRail span { display: block; width: 38%; height: 100%; background: var(--chief-accent); }
-.workflowIcon { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--chief-line-strong); border-radius: 12px; background: var(--chief-surface); color: var(--chief-accent); }
-.workflowIcon svg { width: 20px; height: 20px; stroke-width: 1.7; }
-.workflowDetail { margin: 24px 0 0; color: var(--chief-accent) !important; font: 0.7rem/1.2 var(--font-geist-mono), monospace; text-transform: uppercase; letter-spacing: .07em; }
-.workflowItem h3 { margin: 12px 0 0; font-size: 1.16rem; letter-spacing: -.025em; }
-.workflowItem > p:last-child { margin: 13px 0 0; color: var(--chief-muted); font-size: .92rem; line-height: 1.65; }
-
-.responsibilitySection { padding: 128px 40px; background: #10283b; border-block: 1px solid var(--chief-line); }
-.responsibilitySection > * { max-width: 1160px; margin-inline: auto; }
-.responsibilityIntro { max-width: 770px; }
-.responsibilityIntro p { max-width: 66ch; margin: 22px 0 0; }
-.responsibilityIntro p + p { margin-top: 10px; color: var(--chief-text); }
-.responsibilityDiagram { margin-top: 68px; display: grid; grid-template-columns: 1fr 50px 1fr; gap: 22px; align-items: center; }
-.beforeDiagram, .afterDiagram { min-height: 390px; padding: 28px; border: 1px solid var(--chief-line); border-radius: 16px; background: #0b1b29; }
-.beforeDiagram h3, .afterDiagram h3 { margin: 0; color: var(--chief-muted); font: .72rem/1.2 var(--font-geist-mono), monospace; text-transform: uppercase; letter-spacing: .08em; }
-.beforeDiagram > p, .afterDiagram > p { margin: 20px 0 0; color: var(--chief-muted); font-size: .86rem; text-align: center; }
-.manualMap { position: relative; width: 260px; height: 245px; margin: 22px auto 0; }
-.personNode, .manualNode, .managedChief, .returnNode { display: inline-flex; align-items: center; justify-content: center; gap: 7px; border: 1px solid var(--chief-line-strong); border-radius: 12px; background: var(--chief-surface-strong); font: .7rem/1.2 var(--font-geist-mono), monospace; }
-.personNode { padding: 12px 14px; color: var(--chief-text); }
-.personNode svg, .returnNode svg { width: 15px; height: 15px; color: var(--chief-accent); }
-.manualMap .personNode { position: absolute; left: 82px; top: 96px; z-index: 2; }
-.manualNode { position: absolute; width: 68px; height: 42px; color: var(--chief-muted); }
-.manualNode::after { content: ''; position: absolute; width: 66px; height: 1px; background: var(--chief-line-strong); transform-origin: left; }
-.manualNode:nth-child(2) { left: 0; top: 16px; } .manualNode:nth-child(2)::after { left: 58px; top: 35px; transform: rotate(35deg); }
-.manualNode:nth-child(3) { right: 0; top: 16px; } .manualNode:nth-child(3)::after { right: 58px; top: 35px; transform: rotate(-35deg); transform-origin: right; }
-.manualNode:nth-child(4) { left: 0; bottom: 10px; } .manualNode:nth-child(4)::after { left: 58px; bottom: 35px; transform: rotate(-35deg); }
-.manualNode:nth-child(5) { right: 0; bottom: 10px; } .manualNode:nth-child(5)::after { right: 58px; bottom: 35px; transform: rotate(35deg); transform-origin: right; }
-.manualNode:nth-child(6) { left: 96px; top: 0; } .manualNode:nth-child(6)::after { left: 34px; top: 42px; transform: rotate(90deg); }
-.manualNode:nth-child(7) { left: 96px; bottom: 0; } .manualNode:nth-child(7)::after { left: 34px; bottom: 42px; transform: rotate(-90deg); }
-.compareArrow { width: 24px; margin: auto; color: var(--chief-accent); }
-.managedMap { min-height: 245px; margin-top: 22px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 11px; }
-.managedMap > svg { width: 18px; color: var(--chief-faint); }
-.managedChief { padding: 13px 28px; border-color: var(--chief-accent); background: #12334b; color: var(--chief-text); font-size: .85rem; }
-.managedTeams { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
-.managedTeams span { padding: 9px 13px; border: 1px solid var(--chief-line); border-radius: 10px; color: var(--chief-muted); font: .65rem/1 var(--font-geist-mono), monospace; }
-.returnNode { padding: 10px 15px; color: var(--chief-accent); }
-
-.infrastructureSection { padding: 136px 40px; }
-.infrastructureInner { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: .82fr 1.18fr; gap: 100px; align-items: center; }
-.infrastructureCopy p { max-width: 55ch; margin: 24px 0 0; }
-.infrastructureCopy p + p { margin-top: 14px; color: var(--chief-text); }
-.layerDiagram { display: grid; gap: 10px; }
-.chiefLayer, .relayLayer { padding: 28px; border: 1px solid var(--chief-line-strong); border-radius: 16px; }
-.chiefLayer { width: 82%; margin: 0 auto; background: #15344a; }
-.relayLayer { background: var(--chief-surface); }
-.chiefLayer > span, .relayLayer > span { color: var(--chief-accent); font: .68rem/1.2 var(--font-geist-mono), monospace; text-transform: uppercase; letter-spacing: .08em; }
-.chiefLayer strong, .relayLayer strong { display: block; margin-top: 10px; font: 520 1.5rem/1.1 var(--font-heading), sans-serif; }
-.chiefLayer p { margin: 13px 0 0; color: var(--chief-muted); font-size: .84rem; line-height: 1.55; }
-.capabilityGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 18px; margin-top: 22px; }
-.capabilityGrid span { display: flex; align-items: center; gap: 8px; color: var(--chief-muted); font-size: .78rem; }
-.capabilityGrid svg { width: 15px; height: 15px; color: var(--chief-accent); stroke-width: 1.7; }
-
-.evolutionSection { padding: 94px 40px; background: #0c1c2a; border-block: 1px solid var(--chief-line); }
-.evolutionInner { max-width: 1000px; margin: 0 auto; display: grid; grid-template-columns: 90px 1fr; gap: 40px; align-items: start; }
-.evolutionInner > svg { width: 70px; height: 70px; padding: 18px; border: 1px solid var(--chief-line-strong); border-radius: 16px; color: var(--chief-accent); }
-.evolutionInner h2 { font-size: clamp(2.2rem, 3.8vw, 4rem); }
-.evolutionInner p { max-width: 65ch; margin: 22px 0 0; }
-.evolutionInner p + p { margin-top: 12px; color: var(--chief-text); font-weight: 600; }
-
-.ctaSection { padding: 140px 40px; text-align: center; background: radial-gradient(circle at 50% 25%, rgba(116, 184, 226, .13), transparent 32rem); }
-.ctaInner { max-width: 820px; margin: 0 auto; }
-.ctaInner > p { margin: 24px auto 0; font-size: 1.08rem; }
-.ctaInner .pilotButton { margin-top: 34px; }
-.ctaInner > span { display: block; margin-top: 18px; color: var(--chief-faint); font-size: .83rem; }
-
-@media (max-width: 1120px) {
- .hero { padding-top: 72px; }
- .heroCopy { max-width: 860px; }
- .workflowTrack { grid-template-columns: repeat(2, 1fr); gap: 52px 0; }
- .workflowItem:nth-child(2) { border-right: 0; margin-right: 0; }
- .infrastructureInner { gap: 60px; }
-}
-
-@media (max-width: 760px) {
- .hero, .problemSection, .workflowSection, .responsibilitySection, .infrastructureSection, .evolutionSection, .ctaSection { padding-left: 20px; padding-right: 20px; }
- .hero { min-height: auto; padding-top: 76px; padding-bottom: 52px; }
- .hero h1 { max-width: 12ch; font-size: clamp(3rem, 15vw, 4.3rem); }
- .heroLead { font-size: 1rem; }
- .problemSection { padding-top: 88px; padding-bottom: 88px; }
- .problemInner { grid-template-columns: 1fr; gap: 38px; }
- .problemCopy { padding-left: 20px; }
- .workflowSection { padding-top: 96px; padding-bottom: 104px; }
- .workflowTrack { grid-template-columns: 1fr; gap: 0; margin-top: 54px; }
- .workflowItem, .workflowItem:not(:last-child), .workflowItem:nth-child(2) { margin: 0; padding: 0 0 44px; border-right: 0; }
- .workflowItem:last-child { padding-bottom: 0; }
- .workflowRail { width: 48%; }
- .responsibilitySection { padding-top: 96px; padding-bottom: 96px; }
- .responsibilityDiagram { grid-template-columns: 1fr; margin-top: 48px; }
- .compareArrow { transform: rotate(90deg); }
- .beforeDiagram, .afterDiagram { min-height: 370px; padding: 22px; }
- .infrastructureSection { padding-top: 102px; padding-bottom: 102px; }
- .infrastructureInner { grid-template-columns: 1fr; gap: 52px; }
- .chiefLayer { width: 88%; }
- .evolutionSection { padding-top: 78px; padding-bottom: 78px; }
- .evolutionInner { grid-template-columns: 1fr; gap: 26px; }
- .evolutionInner > svg { width: 58px; height: 58px; padding: 15px; }
- .ctaSection { padding-top: 104px; padding-bottom: 104px; }
-}
-
-@media (max-width: 440px) {
- .hero h1 { max-width: 10ch; }
- .heroActions { align-items: stretch; flex-direction: column; }
- .pilotButton, .secondaryButton { width: 100%; }
- .problemInner h2, .sectionIntro h2, .responsibilityIntro h2, .infrastructureCopy h2, .evolutionInner h2, .ctaInner h2 { font-size: 2.35rem; }
- .manualMap { transform: scale(.92); transform-origin: center; margin-inline: -2px; }
- .capabilityGrid { grid-template-columns: 1fr; }
-}
-
-@media (prefers-reduced-motion: reduce) {
- .pilotButton, .pilotButtonCompact, .secondaryButton { transition: none; }
- .pilotButton:hover, .pilotButtonCompact:hover, .secondaryButton:hover, .pilotButton:active, .pilotButtonCompact:active, .secondaryButton:active { transform: none; }
-}
diff --git a/web/app/chief/og.png/route.tsx b/web/app/chief/og.png/route.tsx
deleted file mode 100644
index 8f836323..00000000
--- a/web/app/chief/og.png/route.tsx
+++ /dev/null
@@ -1,24 +0,0 @@
-import { ImageResponse } from 'next/og';
-
-import { DefaultVariant, loadBrandFonts, OG_SIZE } from '../../../lib/og/template';
-
-export const runtime = 'nodejs';
-export const dynamic = 'force-static';
-
-export async function GET() {
- const { fonts, headingFamily, bodyFamily } = await loadBrandFonts();
-
- return new ImageResponse(
- ,
- {
- ...OG_SIZE,
- ...(fonts.length > 0 ? { fonts } : {}),
- }
- );
-}
diff --git a/web/app/chief/page.tsx b/web/app/chief/page.tsx
deleted file mode 100644
index 9039eeef..00000000
--- a/web/app/chief/page.tsx
+++ /dev/null
@@ -1,257 +0,0 @@
-import type { Metadata } from 'next';
-import Link from 'next/link';
-import {
- ArrowDown,
- ArrowRight,
- Bot,
- FileCode2,
- Files,
- GitBranch,
- GitPullRequest,
- KeyRound,
- ListTodo,
- MessagesSquare,
- ShieldCheck,
- UserRound,
- Workflow,
-} from 'lucide-react';
-
-import { FadeIn } from '../../components/FadeIn';
-import { SiteFooter } from '../../components/SiteFooter';
-import { SiteNav } from '../../components/SiteNav';
-import { ogImage } from '../../lib/og-meta';
-import { absoluteUrl, SITE_NAME } from '../../lib/site';
-import s from './chief.module.css';
-
-const pilotHref = 'https://agentrelay.com/will';
-const description =
- 'Chief manages coding-agent teams across your Linear or GitHub backlog and returns pull requests ready for review.';
-const ogPath = '/chief/og.png';
-
-export const metadata: Metadata = {
- title: { absolute: 'Chief by Agent Relay | Run your engineering backlog with agent teams' },
- description,
- alternates: { canonical: absoluteUrl('/chief') },
- robots: { index: true, follow: true },
- openGraph: {
- siteName: SITE_NAME,
- title: 'Chief by Agent Relay | The Agent Software Manager',
- description,
- url: absoluteUrl('/chief'),
- type: 'website',
- images: [ogImage(ogPath, 'Chief coordinates coding-agent teams across an engineering backlog')],
- },
- twitter: {
- card: 'summary_large_image',
- title: 'Chief by Agent Relay | The Agent Software Manager',
- description,
- images: [absoluteUrl(ogPath)],
- },
-};
-
-const workflow = [
- {
- icon: ListTodo,
- title: 'Import the work',
- body: 'Chief takes issues from Linear or GitHub and determines what can run in parallel.',
- detail: 'Backlog in',
- },
- {
- icon: Bot,
- title: 'Start the right team',
- body: 'For each issue, Chief assembles and directs the coding agents needed to implement and review it.',
- detail: 'Teams assigned',
- },
- {
- icon: Workflow,
- title: 'Keep the work moving',
- body: 'Chief passes context, monitors progress, handles handoffs, and escalates decisions that need human judgment.',
- detail: 'Work managed',
- },
- {
- icon: GitPullRequest,
- title: 'Review the result',
- body: 'You receive pull requests ready for review instead of a collection of unfinished agent sessions.',
- detail: 'PRs returned',
- },
-];
-
-const relayCapabilities = [
- { icon: MessagesSquare, label: 'Real-time messaging' },
- { icon: Files, label: 'Shared context and files' },
- { icon: ShieldCheck, label: 'Scoped permissions' },
- { icon: KeyRound, label: 'Authentication' },
- { icon: GitBranch, label: 'Workflow state' },
-];
-
-function PilotButton({ compact = false }: { compact?: boolean }) {
- return (
-
- Request a pilot
-
-
- );
-}
-
-function ResponsibilityDiagram() {
- return (
-
-
-
Before Chief
-
- Engineer
- Agent
- Agent
- Agent
- Task
- Review
- Context
-
-
Every handoff runs through you.
-
-
-
-
-
-
With Chief
-
-
Engineer
-
-
Chief
-
- Team
- Team
- Team
-
-
Pull requests
-
-
You set direction and review the result.
-
-
- );
-}
-
-export default function ChiefPage() {
- const navAction = ;
-
- return (
-
-
-
-
-
-
-
-
The Agent Software Manager
-
Let an agent manage the coordination of your agents. Step in when you need to.
-
-
-
- See how Chief works
-
-
-
-
-
-
-
-
-
- Coding agents created a new management job.
-
-
You can run eight coding agents at once. But then you spend the day starting them, passing context, checking progress, recovering failures, and deciding what happens next.
-
The agents may be writing the code, but you are still managing every handoff.
-
-
-
-
-
-
-
- Give Chief the backlog.
- Chief turns a queue of issues into coordinated work that comes back in a form engineers already know how to review.
-
-
-
-
- {workflow.map((item, index) => {
- const Icon = item.icon;
- return (
-
-
-
-
-
- {item.detail}
- {item.title}
- {item.body}
-
- );
- })}
-
-
-
-
-
- You review the work. Chief manages the work.
- Chief does not remove engineering judgment. It removes engineers from the coordination loop.
- You set priorities, permissions, and approval boundaries. Chief manages the agents. You review the pull requests and make the decisions that matter.
-
-
-
-
-
-
-
-
-
- Relay underneath. Chief on top.
- Agent Relay provides the durable communication layer beneath Chief across models, harnesses, and environments.
- Chief uses that infrastructure to coordinate long-running software work without requiring a human to relay every message.
-
-
-
-
-
Management layer
-
Chief
-
Backlog planning, team direction, progress, handoffs, escalation
-
-
-
Communication layer
-
Agent Relay
-
- {relayCapabilities.map((capability) => {
- const Icon = capability.icon;
- return {capability.label} ;
- })}
-
-
-
-
-
-
-
-
-
-
-
Communication was only the first layer.
-
We built Agent Relay so agents could communicate directly. Users built teams of coding agents to complete and review software tasks, but still had to supervise those teams themselves.
-
Chief is the manager those agent teams were missing.
-
-
-
-
-
-
- Stop managing every agent.
- Run more of your engineering backlog without becoming the bottleneck.
-
- We are onboarding a small number of engineering teams as design partners.
-
-
-
-
-
-
- );
-}
diff --git a/web/app/sitemap.ts b/web/app/sitemap.ts
index fe56cf16..d13d96ef 100644
--- a/web/app/sitemap.ts
+++ b/web/app/sitemap.ts
@@ -74,12 +74,6 @@ export default function sitemap(): MetadataRoute.Sitemap {
changeFrequency: 'monthly',
priority: 0.8,
},
- {
- url: absoluteUrl('/chief'),
- lastModified: now,
- changeFrequency: 'weekly',
- priority: 0.9,
- },
{
url: absoluteUrl('/primitives'),
lastModified: now,