Skip to content

Releases: KunjShah95/walkcast

Walkcast v0.6.0

Choose a tag to compare

@github-actions github-actions released this 22 Oct 02:39
Walkcast v0.6.0

Walkcast v0.5.0

Choose a tag to compare

@github-actions github-actions released this 21 Oct 02:36

A budget for what one run may spend

A live agent run was bounded only by the agent's turn cap (30) and each call's max_tokens
(16000). That is a ceiling on time, not on money: the worst real run in results/ spent 135k
tokens across 47 calls, and the daily quota (LAB_LLM_RUNS_PER_DAY) bounds how often a run may
start, not what one may cost.

Every live run now carries a per-run budget — a ceiling on tokens and on estimated dollars,
checked at every call boundary. The run stops when it reaches one and says so:

  • 250,000 tokens or ~$5 per run by default.
  • LAB_AGENT_TOKEN_BUDGET and LAB_AGENT_COST_BUDGET_USD set the ceilings; add the agent id
    (LAB_AGENT_TOKEN_BUDGET_SH_P1) to give one agent its own. off means no ceiling.
  • A malformed value falls back to the default rather than silently uncapping a run.
  • The tokens are the fact; the dollars are an estimate from the price list and say so, so a model
    the list does not know is bounded by tokens only.
  • Replays and scripted runs spend nothing and are never charged against it — they cannot fail
    differently because a ceiling was hit.
  • A run that stops this way is reported as budget-exhausted, not as an agent failure: a money
    decision is not the agent's behaviour, and no fixture is written for it.

The run view, the run report and Settings now show what was spent against the ceiling, and
/api/capabilities and /api/agents/usage carry the budget next to each agent.

Fixed

  • The installer build failed in CI. The sidecar staging script finds the packages the
    installer ships by scanning the staged sources for imports, and its regex read an import
    written inside a string literal as an import: the journeys feature writes a Playwright script
    as text. The build asked for @playwright/test, which nothing depends on, and failed with
    "@playwright/test is imported by the server but is not in package.json". The scan is now a
    small scanner that tracks strings and comments, so only real imports count.

Also in this release

  • --token-budget and --cost-budget on lab run, to cap a single run from the command line.
  • Per-run budget in the run.start log line, so a fleet's spend is visible in the logs.

Walkcast v0.4.2

Choose a tag to compare

@github-actions github-actions released this 20 Oct 02:36
v0.4.2

Walkcast v0.4.1

Choose a tag to compare

@github-actions github-actions released this 19 Oct 03:49
Walkcast 0.4.1

Walkcast v0.4.0

Choose a tag to compare

@github-actions github-actions released this 19 Oct 02:58
Walkcast v0.4.0

Walkcast v0.3.3

Choose a tag to compare

@github-actions github-actions released this 18 Oct 15:31
Walkcast v0.3.3

Walkcast v0.3.2

Choose a tag to compare

@github-actions github-actions released this 18 Oct 08:40

Accounts work everywhere now

Earlier installers shipped without the Walkcast account service, so each installed copy kept its own private list of accounts. An account made in one place was "not found" everywhere else. From 0.3.2, every copy signs in through the same account service (Supabase), so one account works on every computer.

If you made an account before 0.3.2, create it again once with Create account. Accounts from earlier builds were stored only on the machine where you made them, and can't be moved.

Sign in first

Walkcast now shows nothing until you're signed in. New accounts confirm their email address first: open the link in the email, then sign in.

Automatic updates

  • At launch: if a newer release exists, the window shows "Updating Walkcast to …", installs it and restarts into it.
  • While open: the app checks every few hours. When a release appears, a "Restart now" button shows up; otherwise it installs at the next launch.
  • Settings → Updates still lets you check by hand.

Coming from 0.3.0 or earlier? Install this version by hand once; updates are automatic after that. Updates are verified with Walkcast's own signing key, so they work without OS code-signing certificates.

Downloads

Platform File
Windows 10/11 (x64) walkcast_0.3.2_x64-setup.exe (updates itself) or .msi
macOS 12+ (Apple Silicon) walkcast_0.3.2_aarch64.dmg
Linux (x86_64) walkcast_0.3.2_amd64.AppImage (updates itself), .deb or .rpm

The installers aren't signed by Microsoft or Apple. On Windows, choose More info → Run anyway; on macOS, right-click the app → Open.

Walkcast v0.3.1

Choose a tag to compare

@github-actions github-actions released this 18 Oct 07:37

In-app updates

Walkcast can now update itself. Open Settings → Updates and choose Update to …. The app downloads the new version from GitHub, checks it against Walkcast's signing key, installs it and restarts. Your recordings and settings stay where they are.

  • This is the first version with the updater. Coming from 0.3.0 or earlier, install this one by hand (below). Later versions arrive in the app.
  • On a server or a source checkout, Settings → Updates shows whether a newer release exists and links to it (GET /api/update).

Downloads

Platform File
Windows 10/11 (x64) walkcast_0.3.1_x64-setup.exe or walkcast_0.3.1_x64_en-US.msi
macOS 12+ (Apple Silicon) walkcast_0.3.1_aarch64.dmg
Linux (x86_64) walkcast_0.3.1_amd64.AppImage, .deb or .rpm

Installers are still unsigned for the operating system (see docs/SIGNING.md). On Windows, choose More info → Run anyway; on macOS, right-click → Open. In-app updates use their own free signing key, so they are verified either way.

In-app updates apply to the Windows installer (.exe), macOS and the Linux AppImage. .msi, .deb and .rpm installs update by downloading the new file from here.

Also

  • CI uses the Node 24 versions of its GitHub Actions, and its Linux jobs are pinned to Ubuntu 24.04.
  • The release workflow can be run by hand to build every installer without publishing.

Walkcast v0.3.0

Choose a tag to compare

@github-actions github-actions released this 18 Oct 06:46

Downloads

Platform File
Windows 10/11 (x64) walkcast_0.3.0_x64-setup.exe or walkcast_0.3.0_x64_en-US.msi
macOS 12+ (Apple Silicon) walkcast_0.3.0_aarch64.dmg
Linux (x86_64) walkcast_0.3.0_amd64.AppImage, .deb or .rpm

Installers are unsigned (see docs/SIGNING.md). On Windows, choose More info → Run anyway; on macOS, right-click → Open.

What's new

Recorder

  • "Try it on a sample site": a first recording that needs no site of your own. The recorder starts a small sample CRM, signs in and films it.
  • Auto-captions from recorded audio with Sarvam, OpenAI, Groq, ElevenLabs Scribe or any OpenAI-compatible endpoint, with real timestamps where the provider gives them.

Lab

  • New failure causes:
    • locator-ambiguous: two controls shared the target's name.
    • wrong-target: the action reported success but touched something else.
    • prompt-injection: the page told the agent what to do, and it did.
  • A browser that crashes mid-run is now reported as an infrastructure error, not an unexplained agent failure, and is never saved as a fixture.
  • Third-party network replay: runs record traffic that doesn't come from the app under test, fixtures carry it, and replays serve it. Anything unrecorded is blocked.
  • Plugins for custom faults and agent adapters (docs/PLUGINS.md). The example plugin adds a prompt-injection fault.
  • First live-LLM run published in results/llm-arm-2026-10-18/: Sonnet 5 driving the agent, Haiku 4.5 doing element lookup. One seed per scenario, so read it as a first look.

Servers and teams

  • Schedules and webhooks now live in the database:
    • Each schedule runs once per interval however many servers you run.
    • Webhooks are per account.
    • Delivery goes through a transactional outbox with retries and optional HMAC signatures (LAB_WEBHOOK_SECRET).
    • Private network addresses are refused on shared servers.
  • walkcast doctor checks the database connection, pending migrations and running job leases.
  • Monitoring:
    • Queue-age alarm, available as logs and in /api/metrics.
    • Read-replica support (SUPABASE_DB_READ_URL).
    • /api/agents/usage.
    • Per-account daily limits for model-backed agents (LAB_LLM_RUNS_PER_DAY).
  • Desktop with your Supabase: set WALKCAST_DATABASE_URL in your environment to share accounts and recordings with your deployment. The installer never contains a database password.

Also

  • A mobile companion app scaffold in apps/mobile (Capacitor). It hasn't been built for devices yet.
  • Linting now actually runs, in CI and the pre-commit hook.
  • Architecture docs and diagrams are synced with the code.

Upgrading a server

Run walkcast db migrate (or supabase db push) before starting the new version. Migration 20261019000000_schedules_webhooks.sql adds tables only. Existing schedules.json and .lab/webhooks.json files are imported once on first start.

Walkcast v0.2.1

Choose a tag to compare

@github-actions github-actions released this 17 Oct 10:53
Walkcast v0.2.1