Skip to content

Commit 4b8dfe4

Browse files
committed
chore: trim site sections, reorder layout, and add compatibility FAQ
1 parent 0639179 commit 4b8dfe4

9 files changed

Lines changed: 171 additions & 408 deletions

File tree

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,6 +461,13 @@ Yes. Pilot Shell enhances Claude Code — it doesn't replace it. You need an act
461461

462462
</details>
463463

464+
<details>
465+
<summary><b>Does Pilot Shell work with Codex, Gemini CLI, OpenCode, or other AI coding tools?</b></summary>
466+
467+
No. Pilot Shell is built exclusively for Claude Code. Every hook, rule, command, and workflow is engineered specifically for Claude's tool-use protocol, prompt format, and session lifecycle. Pilot Shell also only supports Claude Sonnet 4.6 and Claude Opus 4.6 — these are the models that produce the best results, and every rule and prompt is optimized for their behavior. Supporting other tools or models would mean compromising on quality, which is the opposite of what Pilot Shell is designed to do.
468+
469+
</details>
470+
464471
<details>
465472
<summary><b>Does Pilot Shell work with existing projects?</b></summary>
466473

docs/site/src/components/AgentRoster.tsx

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const agents = [
1818
color: "text-primary",
1919
bgColor: "bg-primary/10",
2020
borderColor: "border-primary/30",
21-
desc: "Auto-lints, formats, and type-checks on every file edit. Catches issues before they compile.",
21+
desc: "Auto-lints, formats, and type-checks on every file edit. Catches issues before they compile, not after.",
2222
},
2323
{
2424
name: "VERIFIER",
@@ -27,7 +27,7 @@ const agents = [
2727
color: "text-emerald-400",
2828
bgColor: "bg-emerald-400/10",
2929
borderColor: "border-emerald-400/30",
30-
desc: "Independent sub-agent that reviews code against the plan. Finds what tests miss.",
30+
desc: "Independent sub-agent that reviews code against the plan. Catches gaps that tests alone miss.",
3131
},
3232
{
3333
name: "MEMORY",
@@ -45,7 +45,7 @@ const agents = [
4545
color: "text-amber-400",
4646
bgColor: "bg-amber-400/10",
4747
borderColor: "border-amber-400/30",
48-
desc: "Monitors context usage. Hooks capture plan state and task progress before compaction, then restore it after — no work lost, ever.",
48+
desc: "Captures plan state before compaction, restores it after. Work continues exactly where it left off.",
4949
},
5050
{
5151
name: "PLANNER",
@@ -63,7 +63,7 @@ const agents = [
6363
color: "text-rose-400",
6464
bgColor: "bg-rose-400/10",
6565
borderColor: "border-rose-400/30",
66-
desc: "Implements each task with strict TDD in the main context. Full access to quality hooks, rules, and project context.",
66+
desc: "Implements each task with strict TDD. Full access to quality hooks, rules, and project context.",
6767
},
6868
{
6969
name: "STANDARDS",
@@ -72,7 +72,7 @@ const agents = [
7272
color: "text-cyan-400",
7373
bgColor: "bg-cyan-400/10",
7474
borderColor: "border-cyan-400/30",
75-
desc: "13 coding standards activated conditionally by file type — API design, accessibility, components, responsive design, testing, and more.",
75+
desc: "Coding standards activated by file type — API design, accessibility, components, testing, and more.",
7676
},
7777
{
7878
name: "WORKTREE",
@@ -81,7 +81,7 @@ const agents = [
8181
color: "text-orange-400",
8282
bgColor: "bg-orange-400/10",
8383
borderColor: "border-orange-400/30",
84-
desc: "Runs spec work in isolated git worktrees. Experiment safely, squash merge when verified.",
84+
desc: "Runs spec work in isolated git worktrees. Experiment safely, squash merge when verified, discard if not.",
8585
},
8686
];
8787

@@ -102,7 +102,8 @@ const AgentRoster = () => {
102102
Meet the Squad
103103
</h2>
104104
<p className="text-muted-foreground text-lg sm:text-xl max-w-2xl mx-auto">
105-
Pre-configured agents working on every session. Not personas — real automation.
105+
Pre-configured agents working on every session. Not personas — real
106+
automation.
106107
</p>
107108
</div>
108109

@@ -119,8 +120,10 @@ const AgentRoster = () => {
119120
hover:bg-card/50 hover:-translate-y-1 transition-all duration-300`}
120121
>
121122
<div className="flex items-center gap-3 mb-3">
122-
<div className={`w-10 h-10 ${agent.bgColor} rounded-xl flex items-center justify-center
123-
group-hover:scale-110 transition-transform duration-300`}>
123+
<div
124+
className={`w-10 h-10 ${agent.bgColor} rounded-xl flex items-center justify-center
125+
group-hover:scale-110 transition-transform duration-300`}
126+
>
124127
<Icon className={`h-5 w-5 ${agent.color}`} />
125128
</div>
126129
<div>

docs/site/src/components/ComparisonSection.tsx

Lines changed: 41 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,17 @@
1-
import { Clock, Zap, AlertTriangle, CheckCircle2, Brain, FileCode2, ShieldCheck, X, Check } from "lucide-react";
1+
import {
2+
Clock,
3+
Zap,
4+
AlertTriangle,
5+
CheckCircle2,
6+
Brain,
7+
FileCode2,
8+
ShieldCheck,
9+
} from "lucide-react";
210
import { useInView } from "@/hooks/use-in-view";
311

4-
const painSolution = [
5-
{
6-
audience: "Losing context mid-task",
7-
pain: ["Context degrades halfway through", "Every session starts from scratch", "Manual copy-paste to continue"],
8-
solution: ["Hooks capture and restore state across compaction", "Persistent memory across sessions", "Context monitor warns before limits hit"],
9-
},
10-
{
11-
audience: "Inconsistent code quality",
12-
pain: ["No tests written", "No linting or formatting", "Hope-driven development"],
13-
solution: ["TDD enforced on every feature", "Hooks auto-lint, format, type-check", "Verifier agents review code"],
14-
},
15-
{
16-
audience: "No structure or planning",
17-
pain: ["Jumps straight to coding", "No codebase exploration", "Scope creep and rework"],
18-
solution: ["/spec plans before coding", "Semantic search explores codebase", "Approval gate before implementation"],
19-
},
20-
];
21-
2212
const ComparisonSection = () => {
2313
const [headerRef, headerInView] = useInView<HTMLDivElement>();
2414
const [cardsRef, cardsInView] = useInView<HTMLDivElement>();
25-
const [tableRef, tableInView] = useInView<HTMLDivElement>();
2615

2716
return (
2817
<section id="problem" className="py-16 lg:py-24 px-4 sm:px-6 relative">
@@ -34,9 +23,12 @@ const ComparisonSection = () => {
3423
ref={headerRef}
3524
className={`text-center mb-12 ${headerInView ? "animate-fade-in-up" : "opacity-0"}`}
3625
>
37-
<h2 className="text-3xl sm:text-4xl md:text-5xl font-bold text-foreground mb-4">The Problem</h2>
26+
<h2 className="text-3xl sm:text-4xl md:text-5xl font-bold text-foreground mb-4">
27+
The Problem
28+
</h2>
3829
<p className="text-muted-foreground text-lg sm:text-xl max-w-2xl mx-auto">
39-
Without structure, Claude Code skips tests, loses context, and produces inconsistent results.
30+
Without structure, Claude Code skips tests, loses context, and
31+
produces inconsistent results.
4032
</p>
4133
</div>
4234

@@ -60,18 +52,24 @@ const ComparisonSection = () => {
6052
<div className="w-3 h-3 rounded-full bg-yellow-500/60" />
6153
<div className="w-3 h-3 rounded-full bg-blue-500/60" />
6254
</div>
63-
<span className="text-xs text-muted-foreground ml-2 font-mono">terminal</span>
55+
<span className="text-xs text-muted-foreground ml-2 font-mono">
56+
terminal
57+
</span>
6458
</div>
6559

6660
{/* Terminal content */}
6761
<div className="bg-background/50 rounded-b-lg p-4 font-mono text-xs sm:text-sm space-y-3">
6862
<div>
6963
<span className="text-blue-400">you:</span>
70-
<span className="text-muted-foreground ml-2">Add user authentication</span>
64+
<span className="text-muted-foreground ml-2">
65+
Add user authentication
66+
</span>
7167
</div>
7268
<div>
7369
<span className="text-primary">claude:</span>
74-
<span className="text-muted-foreground ml-2">What framework? What patterns?</span>
70+
<span className="text-muted-foreground ml-2">
71+
What framework? What patterns?
72+
</span>
7573
</div>
7674
<div className="text-slate-400/80 flex items-center gap-2 text-xs">
7775
<AlertTriangle className="h-3 w-3 flex-shrink-0" />
@@ -82,14 +80,18 @@ const ComparisonSection = () => {
8280
<span>No codebase knowledge</span>
8381
</div>
8482
<div className="border-t border-border/50 pt-3">
85-
<span className="text-muted-foreground">...writes code without tests...</span>
83+
<span className="text-muted-foreground">
84+
...writes code without tests...
85+
</span>
8686
</div>
8787
<div className="text-slate-400/80 flex items-center gap-2 text-xs">
8888
<AlertTriangle className="h-3 w-3 flex-shrink-0" />
8989
<span>No TDD enforcement</span>
9090
</div>
9191
<div className="border-t border-border/50 pt-3">
92-
<span className="text-muted-foreground">...commits with issues...</span>
92+
<span className="text-muted-foreground">
93+
...commits with issues...
94+
</span>
9395
</div>
9496
<div className="text-slate-400/80 flex items-center gap-2 text-xs">
9597
<AlertTriangle className="h-3 w-3 flex-shrink-0" />
@@ -120,15 +122,19 @@ const ComparisonSection = () => {
120122
<div className="w-3 h-3 rounded-full bg-yellow-500/60" />
121123
<div className="w-3 h-3 rounded-full bg-blue-500/60" />
122124
</div>
123-
<span className="text-xs text-muted-foreground ml-2 font-mono">pilot</span>
125+
<span className="text-xs text-muted-foreground ml-2 font-mono">
126+
pilot
127+
</span>
124128
</div>
125129

126130
{/* Terminal content */}
127131
<div className="bg-background/50 rounded-b-lg p-4 font-mono text-xs sm:text-sm space-y-2.5">
128132
{/* /spec command */}
129133
<div>
130134
<span className="text-primary">/spec</span>
131-
<span className="text-muted-foreground ml-2">"Add user authentication"</span>
135+
<span className="text-muted-foreground ml-2">
136+
"Add user authentication"
137+
</span>
132138
</div>
133139
{/* Context injection */}
134140
<div className="text-primary/80 flex items-center gap-2 text-xs">
@@ -141,15 +147,19 @@ const ComparisonSection = () => {
141147
</div>
142148
<div className="border-t border-border/50 pt-2.5 text-xs">
143149
<span className="text-primary">→ Planning:</span>
144-
<span className="text-muted-foreground ml-1">Exploring codebase...</span>
150+
<span className="text-muted-foreground ml-1">
151+
Exploring codebase...
152+
</span>
145153
</div>
146154
<div className="text-primary/80 flex items-center gap-2 text-xs">
147155
<CheckCircle2 className="h-3 w-3 flex-shrink-0" />
148156
<span>Plan created → Waiting for approval</span>
149157
</div>
150158
<div className="border-t border-border/50 pt-2.5 text-xs">
151159
<span className="text-primary">→ Implementing:</span>
152-
<span className="text-muted-foreground ml-1">TDD enforced</span>
160+
<span className="text-muted-foreground ml-1">
161+
TDD enforced
162+
</span>
153163
</div>
154164
<div className="text-primary/80 flex items-center gap-2 text-xs">
155165
<ShieldCheck className="h-3 w-3 flex-shrink-0" />
@@ -173,44 +183,6 @@ const ComparisonSection = () => {
173183
</div>
174184
</div>
175185
</div>
176-
177-
{/* Pain → Solution Cards */}
178-
<div
179-
ref={tableRef}
180-
className={`mt-12 grid md:grid-cols-3 gap-6 ${tableInView ? "animate-fade-in-up" : "opacity-0"}`}
181-
>
182-
{painSolution.map((card) => (
183-
<div key={card.audience} className="rounded-2xl border border-border/50 bg-card/30 backdrop-blur-sm overflow-hidden hover:border-primary/30 transition-colors">
184-
<div className="px-5 pt-5 pb-3">
185-
<h4 className="text-sm font-semibold text-foreground mb-1">{card.audience}</h4>
186-
</div>
187-
<div className="px-5 pb-4 space-y-2">
188-
{card.pain.map((p) => (
189-
<div key={p} className="flex items-start gap-2 text-xs text-slate-400">
190-
<X className="h-3.5 w-3.5 text-destructive flex-shrink-0 mt-0.5" />
191-
<span>{p}</span>
192-
</div>
193-
))}
194-
</div>
195-
<div className="flex justify-center py-2 text-primary text-lg">&darr;</div>
196-
<div className="px-5 pb-5 space-y-2 border-t border-primary/20 pt-4 bg-primary/[0.03]">
197-
{card.solution.map((s) => (
198-
<div key={s} className="flex items-start gap-2 text-xs text-foreground/80">
199-
<Check className="h-3.5 w-3.5 text-primary flex-shrink-0 mt-0.5" />
200-
<span>{s}</span>
201-
</div>
202-
))}
203-
</div>
204-
</div>
205-
))}
206-
</div>
207-
208-
{/* Bottom highlight */}
209-
<div className="mt-10 text-center">
210-
<p className="text-muted-foreground text-sm sm:text-base max-w-2xl mx-auto">
211-
<span className="text-primary font-medium">Start a task. Walk away. Come back to code you can actually ship.</span>
212-
</p>
213-
</div>
214186
</div>
215187
</section>
216188
);

docs/site/src/components/DeepDiveSection.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,10 @@ const hooksPipeline = [
5858
{
5959
trigger: "PreCompact",
6060
description: "Before auto-compaction fires",
61-
hooks: ["Capture active plan, task list, and key context to memory"],
61+
hooks: [
62+
"Capture active plan, task list, and key context to memory",
63+
"Snapshot current progress so nothing is lost across cycles",
64+
],
6265
color: "text-violet-400",
6366
bgColor: "bg-violet-400/10",
6467
borderColor: "border-violet-400/30",
@@ -485,10 +488,8 @@ const DeepDiveSection = () => {
485488
</p>
486489
</div>
487490
<p className="text-xs text-muted-foreground mt-3 pl-1">
488-
Add your own language servers via{" "}
489-
<code className="text-primary bg-primary/10 px-1 py-0.5 rounded">
490-
.lsp.json
491-
</code>
491+
Pilot Shell works with all programming languages. Add more
492+
language servers via Claude Code's MCP plugin system.
492493
</p>
493494
</div>
494495
</div>

0 commit comments

Comments
 (0)