Skip to content

Add antithesis-runs-exec skill for running scripts in a live run - #192

Open
exe-dev-github-integration[bot] wants to merge 1 commit into
mainfrom
feat/runs-exec-skill
Open

Add antithesis-runs-exec skill for running scripts in a live run#192
exe-dev-github-integration[bot] wants to merge 1 commit into
mainfrom
feat/runs-exec-skill

Conversation

@exe-dev-github-integration

Copy link
Copy Markdown
Contributor

This adds antithesis-runs-exec, a short skill for snouty runs exec. The command runs a bash script inside a test run at a chosen moment, from the terminal and without a browser. Agents can now do scripted forensics on a run: list processes, read container filesystems, and attach gdb. antithesis-debug still covers interactive work in the multiverse debugger; this skill covers the repeatable, pipeable path.

The skill is deliberately a short sketch. It records the gotchas that cost real time in a debugging session, rather than restating the command reference:

  • The command is gated behind SNOUTY_UNSTABLE_FEATURES=runs-exec, and it needs a live session. For an older run you must create a session with snouty debug first, which returns a new run ID to exec against.
  • The script lands on the host, not inside a container. All containers are visible through /proc/<pid>/root. A short process list is usually your own head truncating long fuzzpipe command lines, not confinement to one container.
  • gdb prints ?? () for every frame unless you set sysroot to the container root.
  • Virtual time advances while the script runs. A gdb attach costs roughly 0.3 to 0.4 vtime units, so a post-hoc attach cannot see a transient failure. You exec at an earlier vtime and run forward instead. Instrumentation perturbs scheduling, and a race that disappears under breakpoints is itself evidence.
  • snouty runs logs --json ... --begin-vtime answers most "what happened just before X" questions with no perturbation at all.

make validate passes with 12 skills.

Please apply the changelog - non-breaking label. I cannot set labels on this repository.

Document how to use `snouty runs exec` to run a bash script inside a run
at a chosen moment, including the live-session requirement, the host (not
container) execution context, gdb setup, and the virtual-time and
perturbation limits.

Co-Authored-By: Claude <noreply@anthropic.com>
@carlsverre carlsverre added the changelog - non-breaking This PR includes a non-breaking customer facing change label Aug 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog - non-breaking This PR includes a non-breaking customer facing change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant