| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
agent-shell-contract is a local shell semantics contract suite for coding-agent client authors, agent harness maintainers, and advanced users debugging hung agent commands, leaked dev servers, lost terminal output, cwd drift, environment leakage, and process-tree cleanup failures.
It runs issue-derived fixtures against a shell-runner adapter and emits concise terminal, JSON, and Markdown reports that can be attached to upstream bug reports.
Python 3.10 or newer is required. To run the released suite without a local checkout:
python3 -m pip install "git+https://github.com/itscloud0/agent-shell-contract.git@v0.2.0"
agent-shell-contract run --adapter subprocess-referenceFor an isolated command-line install with uv:
uv tool install "git+https://github.com/itscloud0/agent-shell-contract.git@v0.2.0"
agent-shell-contract run --adapter subprocess-referenceFor a one-off run without a persistent install:
uvx --from "git+https://github.com/itscloud0/agent-shell-contract.git@v0.2.0" \
agent-shell-contract run --adapter subprocess-referenceFor local development, install from a checkout:
python3 -m pip install -e .Run every fixture against the subprocess reference adapter:
agent-shell-contract run --adapter subprocess-referenceRun one fixture and write reports:
PYTHONPATH=src python3 -m agent_shell_contract run \
--adapter subprocess-reference \
--fixture timeout-process-tree \
--json report.json \
--markdown report.mdList available coding-agent shell timeout, background process cleanup, terminal output, cwd isolation, env boundary, and PTY fixtures:
PYTHONPATH=src python3 -m agent_shell_contract fixturesOptional Pydantic AI Harness adapter:
python3 -m pip install ".[pydantic-ai-harness]"
agent-shell-contract run --adapter pydantic-ai-harnessOptional ACP local terminal adapter:
python3 -m pip install ".[acp]"
agent-shell-contract run --adapter acp-local-terminalExperimental Codex app-server adapter, when codex app-server is installed:
agent-shell-contract run --adapter codex-app-serverThis adapter targets the experimental Codex CLI app-server JSON-RPC surface. It reports actionable compatibility errors when response shapes drift; it is not a stable Codex API support claim.
See ADAPTERS.md for adapter authoring notes and result interpretation.
| Adapter | Result | Notes |
|---|---|---|
| subprocess-reference | 8 pass, 1 skip on macOS; 9 pass on Windows CI | Windows process-tree fixture passes in CI run 30435210271. |
| pydantic-ai-harness | 7 pass, 1 fail, 1 skip | output-after-kill drops bounded pre-timeout output. |
| acp-local-terminal | 8 pass, 1 skip | Validates ACP terminal method shape with a local terminal client. |
| codex-app-server | 8 pass, 1 skip | Experimental Codex CLI direct shell surface; Windows-only fixture skipped on macOS. |
Raw JSON and Markdown reports are stored under reports/ when generated during validation.
This is not a process manager, sandbox, security scanner, model benchmark, or automatic fix for Codex, Claude Code, Copilot, or ACP clients. Fixtures only create owned temporary files, owned local child processes, and loopback ports. Results can vary by OS process semantics; unsupported platform behavior is reported explicitly.
Windows process-tree behavior is covered by the reference adapter in CI run 30435210271 across Python 3.10, 3.11, and 3.12 on windows-latest. The ACP adapter validates a protocol-shaped local terminal client, not a specific ACP product implementation. The Codex app-server adapter depends on an experimental Codex CLI API and may need updates when Codex app-server methods or response schemas change.
| Back | FazBrowse Home | New Git URL |