Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion BACKLOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,11 @@ If any seat would be confused, the component fails.

- TOC / sticky nav — ○ ○ ○
- "The three categories" section — ○ ○ ○
- "Step 1 — Set up" → "Step 5 — Submit" — ○ ○ ○
- "Step 1 — Set up" — ● ● ● — lead now names canonical `Option A — Docker (recommended)` vs `Option B — Native toolchain` from `forge check-deps` instead of a single muddled "Docker is easiest path" framing. `forge check-deps` purpose stated inline as the diagnostic that confirms which path is ready. Trailing first-timer hint promotes `--docker` flag with a tooltip naming the `forge-eval` CI image so the local↔leaderboard match is explicit. (`QuickstartGuide.tsx` L467–501, step 370)
- "Step 2 — Explore the problem pool" — ● ● ● — step 369 (`punch/guide-step2-cli-api-frame`, PR #295)
- "Step 3 — Write your agent" — ○ ○ ○
- "Step 4 — Run + iterate" — ○ ○ ○
- "Step 5 — Submit" — ○ ○ ○
- "Whitelisted models" — ○ ○ ○
- "Agent architecture patterns" — ○ ○ ○
- "API reference" — ○ ○ ○
Expand Down
20 changes: 14 additions & 6 deletions src/components/QuickstartGuide.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -467,23 +467,31 @@ export function QuickstartGuide() {
{/* Step 1 */}
<Section id="setup" title="Step 1 — Set up">
<p className="text-forge-muted text-sm">
Clone the repo and install the eval stack. Docker is the easiest path — the image
Two paths to a working eval stack — pick one.{" "}
<strong className="text-forge-fg">Option A — Docker (recommended)</strong>: one image
ships with{" "}
<span title="Open-source FEA solver — runs the structural simulation that scores your part." className="cursor-help border-b border-dotted border-forge-muted/50">CalculiX</span>
{" "}(the FEA solver),{" "}
<span title="Mesh generator — converts your STEP geometry into the element mesh the FEA solver works on." className="cursor-help border-b border-dotted border-forge-muted/50">gmsh</span>
{" "}(meshing), and{" "}
<span title="OpenCascade Python bindings — the CAD kernel that reads/writes STEP files and runs the geometry operations." className="cursor-help border-b border-dotted border-forge-muted/50">OCP</span>
{" "}(the CAD kernel) pre-installed.
{" "}(the CAD kernel) pre-installed; you only install the{" "}
<code className="bg-forge-border px-1 rounded">forge</code> CLI locally.{" "}
<strong className="text-forge-fg">Option B — Native toolchain</strong>: install CalculiX,
gmsh, and the OCP Python bindings yourself (faster startup; more setup friction on macOS
and Windows).
</p>
<CodeBlock code={`git clone ${FORGE_REPO}
cd forge
pip install -e . # installs the forge CLI
pip install -e . # installs the forge CLI (both paths)

# Verify your setup:
forge check-deps # checks Docker / native toolchain`} />
# Confirms which path is ready — Docker, Native, or both:
forge check-deps`} />
<p className="text-forge-muted text-xs">
No local CalculiX/OCP? Use Docker — it mirrors the CI environment:{" "}
First-timer? Stay on Option A: every{" "}
<code className="bg-forge-border px-1 rounded">forge eval</code> call takes a{" "}
<span title="Runs the FEA evaluation inside the prebuilt forge-eval Docker image — same image CI uses for scoring, so your local result matches the leaderboard." className="cursor-help border-b border-dotted border-forge-muted/50"><code className="bg-forge-border px-1 rounded">--docker</code></span>
{" "}flag and you never touch CalculiX directly:{" "}
<code className="bg-forge-border px-1 rounded">forge eval --docker agents/my-agent/agent.py --spec r01_001_easy</code>
</p>
</Section>
Expand Down