Implements the Sandbox trait backed by the `sprite` CLI binary.
Includes 29 unit tests with mock runner and an e2e integration test
against the live Sprites service.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
GPT-5.4 frequently emits bare @@ instead of @@ context @@, causing all
Update File patches to fail. The parser now accepts bare @@ and locates
the hunk position from the first remove/context change line. Also
improves the system prompt with an explicit @@ context @@ example.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Consolidates the two separate String parameters (git_author_name,
git_author_email) threaded through ~10 function signatures into a
single GitAuthor struct with Default providing "arc"/"arc@local".
Also quotes git config values in parallel.rs shell commands.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The OpenAI Responses API sends reasoning_summary_text.delta and
reasoning_text.delta SSE events during extended reasoning, but the
OpenAI provider silently swallowed them. This caused the tight-loop
in process_next_sse_events to consume events without yielding any
StreamEvent, so emitter.touch() was never called and the 600s stall
watchdog fired during long reasoning phases (e.g. GPT-5.4-pro).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Re-extracted all DOT examples from docs, added test fixtures for new
pages (preview, brave-search, daytona, sub-workflow), recreated
assembled snippet files, and excluded not-yet-working vnc-access and
vpn-connections pages. 40 files now validate and dry-run clean.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Every TOML example now shows which config file it belongs to
(server.toml, cli.toml, or run.toml) via Mintlify's title annotation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Users can now configure the git author name/email used for checkpoint
commits via [git.author] in server.toml (default) and cli.toml (override).
Defaults to "arc" / "arc@local" preserving current behavior.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move emitter.touch() before the event filter in spawn_event_forwarder
so streaming events (TextDelta, AssistantTextStart, etc.) also reset
the watchdog timer. Previously these were filtered out, causing the
600s stall watchdog to fire during long generation turns with no
tool calls.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace Brave Search stub with full docs: setup, usage, example workflow
- Add Human Tools group to docs.json navigation
- Move VS Code from integrations (deleted) to human-tools nav
- Rename human-in-the-loop page title to "Decisions"
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Both features are coming soon — pages include warning banners,
use cases, and example workflows with Graphviz-generated SVGs
that support light and dark mode.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fill in the human-tools/preview page documenting how preview URLs
let users access running services in sandbox environments from
their browser. Includes how it works, web UI and API usage,
common use cases with an example workflow, and tips. Adds a
graphviz-generated SVG of the BuildAndPreview workflow with
dark mode support.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fill in the SSH Access human-tools page with how to enable SSH into
Daytona sandboxes, credential lifetime, and limitations. Fill in the
VS Code page explaining how to connect VS Code Remote-SSH to a
sandbox. Add the SshAccessReady event to the observability event
catalog.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Swap Inter for Sora (headlines) + DM Sans (body) to eliminate generic AI-slop
aesthetics. Add animated gradient text, floating glow orbs, dot-grid background
texture, scroll-reveal animations, hover glow cards, and a trace visualization
for the observability section. Replace flat border-t dividers with gradient
lines and vary section visual treatments for better rhythm.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
After each checkpoint commit, the metadata branch (checkpoint.json, manifest,
graph DOT, artifacts) is now pushed from the host process to the GitHub remote
using a GitHub App installation token. The local custom ref (refs/arc/{run_id})
is mapped to refs/heads/arc/meta/{run_id} on the remote since GitHub rejects
branch names starting with "refs/".
Changes:
- Move ssh_url_to_https to github_app.rs as pub fn for reuse
- Add push_ref() to git.rs for pushing a ref to an explicit URL
- Add github_app field to RunConfig to thread credentials into the engine
- Add git_push_meta_host() async wrapper in engine.rs
- Call git_push_meta_host after each remote checkpoint
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces a [checkpoint] config table with exclude_globs in both run.toml
(per-run) and server.toml (defaults). Globs are merged (union + dedup) when
both are present. Non-empty excludes use git pathspec :(glob,exclude) syntax
to prevent staging matching files during checkpoint commits.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- nlspec-conformance: add retry_target="fix" to goal_gate node test_full
- solitaire: fix fallback_retry_target reference from impl_game_logic to impl_logic
- run_tests.sh: fail validate phase on warnings, not just errors
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
`arc serve` writes to `serve-YYYY-MM-DD.log` and all other commands
write to `cli-YYYY-MM-DD.log` so the two are easy to tail independently.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds clear rules for when features deserve hero H2 headings vs. the
accordion-based More section, with category list and examples.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Enables `arc models test` to work in server mode by adding an API
endpoint that sends "Say OK" (max_tokens=16, 30s timeout) to a model
and reports pass/fail. Dry-run mode returns synthetic "ok" status.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Covers 10 competitors across three tiers: coding workflow orchestration
(StrongDM Factory, Factory AI, LangGraph), AI coding agents (Cursor,
Claude Code, Codex, Devin, Amp), and adjacent infra (Trigger.dev,
Conductor), plus honorable mentions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replaces the previous "every major feature gets an H2" approach with
a two-zone model: 2-3 hero features as H2 headings, everything else
in a ## More section with categorized Accordion components (API, CLI,
Workflows, Improvements, Fixes).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Commands can now delegate to a running Arc API server instead of
executing in-process. Adds ExecutionMode, ServerDefaults, and
ClientTlsConfig to cli.toml parsing with CLI flag > config > default
precedence. The models list command fetches from GET /models when in
server mode, with mTLS client certificate auth when [server.tls] is
configured.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sets up Tailwind v4 via @tailwindcss/vite, adds the full brand palette
(teal, navy, ice, mint, amber, coral) as custom theme tokens, and builds
a complete homepage with hero, feature grid, code examples, verification
section, multi-model section, observability, "Why Arc", and CTAs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replaces flat ModelInfo fields with nested sub-structs (ModelLimits,
ModelFeatures, ModelCosts) and adds family, training, and
cache_input_cost_per_mtok fields to enrich the model catalog.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add Integrations group (GitHub, Daytona, Slack, exe.dev, Brave Search)
to Documentation tab above Reference. Replace generic Deployment page
with platform-specific stubs (Railway, Render, Fly.io, Digital Ocean)
in the Guides tab.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Filter engine-internal keys (internal.*, graph.*, thread.*, current*)
from the context diff returned by SubWorkflowHandler, preventing child
run state from overwriting parent values. Pass the parent's preamble
into the child context so child workflows have awareness of what the
parent already accomplished.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>