whyC · cli
while they hire, you npx.
v0.4.1 · node ≥ 20 · macOS / linux · terminal-first
sejun@vega · ~/work
whyc
tmux 0:zsh*
  __        ___           ____
  \ \      / / |__  _   _ / ___|
   \ \ /\ / /| '_ \| | | | |
    \ V  V / | | | | |_| | |___
     \_/\_/  |_| |_|\__, |\____|
                    |___/   — ship before they hire.

$ npx whyc https://workatastartup.com/jobs/82957 --watch

 whyc v0.4.1  ·  agent backbone: gemini-adk  ·  trace: phoenix-mcp
 input resolved    job-posting (anonymized) → spec extractor

[1/4] spec.extract          ████████████████████████ 100%   3.2s  
        ↳ jtbd, target user, 2 core APIs, 1 hero flow
[2/4] design.tokens         ████████████████████████ 100%   5.8s  
        ↳ palette: oklch · radius: 12 · typography: inter-tight
[3/4] codegen.next          ████████████████████████ 100%   82.4s 
        ↳ 14 routes · 2 server actions · 1 edge api · 0 errors
[4/4] deploy.cloudrun       ████████████████████████ 100%   47.1s 

 deployed   https://whyc-preview-x7q2.a.run.app
  first-paint window: 9m 38s  ·  the headline claim is intact.

────────────────────────────  self-improvement loop  ────────────────────────────

 phoenix mcp attached    openinference traces streaming…
 llm-as-judge: spec-fit rubric loaded  (8 axes, weight=1.0)

  iter 0   spec-fit  71%   ██████████████░░░░░░   (initial deploy)
  iter 1   spec-fit  84%   ████████████████░░░░   regen: pricing flow, empty-state
  iter 2   spec-fit  92%   ██████████████████░░   regen: onboarding copy
  iter 3   spec-fit  96%   ███████████████████░   CONVERGED · Δ < 1.5%

 converged in 3 iterations  ·  elapsed 3h 12m  ·  cost $0.41
 while they hire,  you shipped.
 result: whyc-preview-x7q2.a.run.app  → click. it works.

$ 

Usage · the only three commands you need

# 1 · ship a preview from a YC job posting
$ npx whyc <url>                       # foreground stream, ~10m

# 2 · keep the self-improvement loop alive in tmux
$ whyc <url> --watch --notify           # desktop toast on Δ spec-fit

# 3 · inspect any past run via Phoenix trace
$ whyc trace x7q2 --open               # pops the MCP trace pane

# also useful
$ whyc login                            # short-lived browser callback only
$ whyc ls     ·  whyc rm x7q2      # manage previews
$ whyc tail x7q2 --judge              # live LLM-as-judge verdicts

Install · pick your weapon

# macOS
$ brew install whyc

# everywhere else
$ npm i -g whyc

# or just don't install at all
$ npx whyc <url>
whyc · spec-fit 92% → 96% · CONVERGED https://whyc-preview-x7q2.a.run.app · cmd-click to open
L copy URL ^C detach (loop keeps running)