diff --git a/site/.nojekyll b/site/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/site/index.html b/site/index.html new file mode 100644 index 0000000..ab73520 --- /dev/null +++ b/site/index.html @@ -0,0 +1,52 @@ + + + + + + clank + + + + +
+
+

clank

+

v0.1.0

+
+ +

Minimal unix-style inference harness. Prompt and context in on argv/stdin, answer on stdout, diagnostics on stderr, verdict in the exit code. Sibling binary clank-jev routes and gates. Not chat.

+ +

Install

+

Package clank-cli-app → binaries clank / clank-jev (package ≠ binary). Never cargo install clank (unrelated crates.io crate).

+
cargo install clank-cli-app --locked   # -> ~/.cargo/bin/clank and clank-jev
+

Fallback (pinable):

+
cargo install --locked --git https://github.com/makefunstuff/clank --tag v0.1.0
+

Prebuilt archives (linux x86_64, macOS arm64/x86_64) are on the v0.1.0 release.

+ +

30s smoke

+

After install, point at your OpenAI-compatible server and prove the pipe:

+
export CLANK_BASE_URL=http://127.0.0.1:8080/v1
+export CLANK_MODEL=$(curl -s "$CLANK_BASE_URL/models" | jq -r '.data[0].id')
+clank -m 'reply with exactly: pong'    # -> pong, exit 0
+ +

Harness cost

+

2026-09-22 · opencode-go/glm-5.3-flash · tools off · prompt → pong. Pipe vs agent CLI on the same model, not “fastest AI.” Agent harness tax still shows with --no-tools.

+ +

Method and caveats: docs/history/clank-vs-agents-2026-09-22.md.

+ +

Docs

+ +
+ + diff --git a/site/styles.css b/site/styles.css new file mode 100644 index 0000000..0f404dc --- /dev/null +++ b/site/styles.css @@ -0,0 +1,124 @@ +:root { + color-scheme: light dark; + --fg: #111; + --muted: #5a5a5a; + --warn: #8a5a00; + --bg: #fafafa; + --pre: #efefef; + --line: rgba(0, 0, 0, 0.14); + --link: #0645ad; +} +@media (prefers-color-scheme: dark) { + :root { + --fg: #ececec; + --muted: #9a9a9a; + --warn: #e0b060; + --bg: #111; + --pre: #1b1b1b; + --line: rgba(255, 255, 255, 0.14); + --link: #8ab4f8; + } +} + +* { box-sizing: border-box; } + +body { + margin: 0; + font: 16px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif; + color: var(--fg); + background: var(--bg); + -webkit-font-smoothing: antialiased; +} + +main { + max-width: 40rem; + margin: 0 auto; + padding: 2rem 1.15rem 3.5rem; +} + +.top { + display: flex; + align-items: baseline; + gap: 0.75rem; + margin-bottom: 0.85rem; +} + +h1 { + font-size: 1.65rem; + font-weight: 700; + letter-spacing: -0.025em; + line-height: 1.15; + margin: 0; +} + +h2 { + font-size: 0.8rem; + font-weight: 700; + letter-spacing: 0.04em; + text-transform: uppercase; + color: var(--muted); + margin: 1.85rem 0 0.55rem; + padding-bottom: 0.3rem; + border-bottom: 1px solid var(--line); +} + +.lede { + margin: 0 0 0.25rem; + font-size: 1.05rem; + line-height: 1.45; + max-width: 36rem; +} + +.warn { + margin: 0; + color: var(--warn); + font-size: 0.8rem; + font-weight: 650; + letter-spacing: 0.04em; + text-transform: uppercase; +} + +.note { + color: var(--muted); + font-size: 0.92rem; +} + +p, li { margin: 0 0 0.55rem; } +ul, ol { margin: 0 0 0.65rem; padding-left: 1.2rem; } +li { margin-bottom: 0.28rem; } +li pre { margin-top: 0.4rem; } + +a { color: var(--link); } + +.links { + list-style: none; + padding-left: 0; + display: flex; + flex-wrap: wrap; + gap: 0.35rem 1.1rem; +} +.links li { margin: 0; } + +code, pre { + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 0.84em; +} +:not(pre) > code { + padding: 0.08em 0.28em; + background: var(--pre); + border-radius: 3px; +} +pre { + margin: 0.4rem 0 0.75rem; + padding: 0.8rem 0.9rem; + background: var(--pre); + border-radius: 6px; + overflow-x: auto; + line-height: 1.4; + -webkit-overflow-scrolling: touch; +} +pre code { + font-size: 1em; + background: none; + padding: 0; +}