Skip to content

Spar v0.1.0

Choose a tag to compare

@github-actions github-actions released this 04 Aug 12:59
· 86 commits to main since this release

Spar is a coding gym that watches how you work and writes your next exercise
against the specific thing it thinks you can't do yet.

This is the first release with builds for all three desktop platforms.

Downloads

Your machine File
Mac, Apple silicon Spar-0.1.0-arm64.dmg
Mac, Intel Spar-0.1.0.dmg
Windows Spar-0.1.0-x64.exe
Linux Spar-0.1.0-x86_64.AppImage or Spar-0.1.0-amd64.deb

These builds are not code-signed. On a Mac, right-click the app and choose
Open the first time, or run xattr -d com.apple.quarantine /Applications/Spar.app.
On Windows, choose More infoRun anyway.

You need a model and a backend. Spar runs on a model you already pay for or
host yourself, and v0.1.0 has no hosted Spar service — it looks for the API at
http://localhost:4318 unless you point it elsewhere with SPAR_API_ORIGIN. The
README
explains both.

What's in it

  • Adaptive sessions. A six-question intake, a cold-start placement call, and
    training targets that come from your own attempt history rather than a fixed
    ladder.
  • Challenges generated for you and proven before you see them. A challenge is
    only published once the compiler has shown that the reference solution passes,
    that deliberately broken solutions pass the visible tests but fail the hidden
    ones, and that every generated artifact agrees with the others.
  • Deterministic verdicts. Submissions are graded by running the committed
    tests and reading the runner's exit code. No model sits in that path, so nothing
    said to the agent can turn a failing program into a passing submission. An
    attempt ends when a submission passes.
  • A real workspace. File tree, editor, problem statement, test results, and a
    terminal in resizable panes, with the agent alongside — announcing each phase
    before it runs it.
  • An ability ledger that keeps earned abilities and unconfirmed hypotheses
    strictly apart, and concept pages that gather everything you've done under a
    given concept.
  • Bring your own model. Sign in with an OpenAI Codex, Claude Code, or GitHub
    Copilot subscription; use an API key for OpenAI, Anthropic, Google, xAI,
    DeepSeek, Moonshot, Z.ai, MiniMax, OpenRouter, Cline, or any OpenAI-compatible
    endpoint; or run locally against Ollama or LM Studio. Keys live in the system
    keychain.
  • Native-feeling chrome. System/light/dark appearance, macOS window materials
    and window-control placement, a command palette, and an app icon drawn on the
    measured macOS 26 squircle that follows your appearance while the app runs.
  • Waiting states are the logo, not a spinner. The icon's dot grid runs a
    diagonal wave while a test run or a page is producing something, and breathes
    while evidence is being read — so the app tells you which kind of wait you are
    in. Reduced-motion settles it to the resting mark.

Known limits

  • JavaScript, TypeScript, and C++ only.
  • No hosted backend yet.
  • Builds are unsigned and not notarized.
  • macOS is the platform the chrome has been tuned on.
  • Auto-update is opt-in via SPAR_ENABLE_UPDATES=1.