OpenShell Agent Runner
OpenShell Agent Runner (OAR) runs an agent task in an isolated OpenShell sandbox and saves the result to a file. Use it to review code, review technical writing, or run your own tasks from a terminal or CI job.
Profile + input → OAR → Agent in a temporary sandbox → Result file
sandbox removed when the run ends
A profile packages prompts, reusable skills, and settings. A task is one job in that profile; it selects the prompt and skills to use. OAR includes two ready-to-use reviewers:
| Profile | Task | Input |
|---|---|---|
code-reviewer |
review-repository |
A local project directory |
technical-writing-reviewer |
review-document |
A text file, such as Markdown or .txt |
Get started
You need uv and OpenShell 0.0.111 or newer, with a running gateway and configured inference. If OpenShell is not ready, follow its quickstart. OAR uses that setup to create sandboxes and reach your model.
1. Install OAR and check your connection.
uv tool install openshell-agent-runner
oar doctor
Alternatively, use uvx --from openshell-agent-runner oar in place of oar.
These commands use your selected OpenShell gateway and its default workspace.
For another target, add --gateway NAME --workspace NAME to doctor and run.
2. Create your profiles. Replace YOUR_MODEL_ID with the model ID shown in
the inference output from oar doctor.
oar init ./profiles --model YOUR_MODEL_ID
This creates editable copies of both reviewers. For a model without reasoning
support, add --thinking off.
3. Review a document. Replace ./README.md with an existing text file.
oar run ./profiles/technical-writing-reviewer \
--task review-document \
--input ./README.md \
--output ./review.json
Open review.json for the verdict, a score from 0 to 100, and specific findings.
OAR saves the validated result and removes the sandbox. Add --dry-run to
preview the operation without launching an agent.
Review code
Pass a local project directory. Optional focus and context values help the
reviewer understand what matters for this run:
oar run ./profiles/code-reviewer \
--task review-repository \
--input ./my-project \
--prompt-var focus="src/auth and tests/auth" \
--prompt-var context="A small internal tool; keep recommendations proportionate." \
--output ./code-review.json
The agent works on an uploaded copy. Changes in the sandbox stay there; only the
result is downloaded. A focus value guides attention but does not limit which
files are uploaded.
Learn more
- Get started: setup and your first review.
- Run reviews: inputs, focus, context, and scores.
- Customize profiles: prompts, variables, skills, and output formats.
- Command reference: options, CI behavior, and troubleshooting.
For help with a specific task:
oar run ./profiles/code-reviewer --task review-repository --help
Develop OAR
From projects/openshell-agent-runner, run:
make check
make build
make check includes CLI workflows against a simulated OpenShell. With Docker,
run make test-runtime to exercise the real Pi harness without external inference.
For runtime changes, one live CI task checks input transfer, prompt variables,
structured output, and sandbox cleanup. It does not grade reviewer opinions.
Use uv run --frozen oar in this directory to run the checked-out code instead
of the installed release. Run a focused test with
make test PYTEST_ARGS="tests/test_config.py". See
RELEASING.md
for publishing, and the
repository CI guide
for automated project reviews and the live OAR smoke test.
Metadata
Release files for openshell-agent-runner 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| openshell_agent_runner-0.0.3.tar.gz | 31.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openshell_agent_runner-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 78.5 kB
Release files / openshell_agent_runner-0.0.3.tar.gz
| Download URL | openshell_agent_runner-0.0.3.tar.gz |
|---|---|
| Size | 31.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e8655a40ccc2fedc5684c85fcd7b6e0d9c124307a4bc2f5a59c9a9ce03d98ca0
|
|
BLAKE2b-256 checksum How to use checksums |
a82948515f144d77492b499d5f2bd2ce18b383d24261a93558f11667d1120cf1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / openshell_agent_runner-0.0.3-py3-none-any.whl
| Download URL | openshell_agent_runner-0.0.3-py3-none-any.whl |
|---|---|
| Size | 46.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f494f253d4666651f78624e4374617121edce6f296083e2e6b70b7ca10f545eb
|
|
BLAKE2b-256 checksum How to use checksums |
0bc9bc637426cee94ad88499a08636700759290825402050f12c1bbae6928cf3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for openshell-agent-runner 0.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.