# Try agent-style 0.8.0: audit a technical paragraph without a model

This lab checks a small, synthetic technical note with `yzhao062/agent-style`. You will compare two drafts, inspect which checks ran, and distinguish a style warning from a factual error.

**Retrospective edition:** 18 October 2026. The pinned package and commands were checked locally on **19 October**, when this missed edition was prepared. No claim is made that the lab ran on the 18th.

## What you need

- Python 3.9 or newer and a terminal. These commands use macOS/Linux paths.
- A new, disposable folder outside your real projects.
- Internet for the initial PyPI package download. The audit itself runs locally, without an API key, account, or model charge.

The project's enforcement code uses MIT; its rule text and adapters use CC BY 4.0. Keep its bundled notices if you reuse those materials. We are not installing its rules into this website or changing an agent's instructions.

## 1. Install the edition's pinned CLI

```sh
mkdir agent-style-lab-2026-10-18
cd agent-style-lab-2026-10-18
python3 -m venv .venv
.venv/bin/python -m pip install 'agent-style==0.8.0'
.venv/bin/agent-style --version
```

Expected version: `agent-style 0.8.0`. A newer release can change findings; pinning makes this example reproducible. On Windows, use `.venv\Scripts\python.exe` and `.venv\Scripts\agent-style.exe` in place of the executable paths above.

## 2. Create two drafts of the same invented component

The worker below is a **fictional fixture**, not a claim about a released product. The second draft preserves its three stated behaviors.

```sh
python3 - <<'PY'
from pathlib import Path

Path('before.md').write_text(
    "# retrieval worker\n\n"
    "The worker leverages a cached index—it doesn't rebuild embeddings "
    "for every request. Additionally, it validates the response schema "
    "before returning JSON.\n", encoding='utf-8')

Path('after.md').write_text(
    "# Retrieval Worker\n\n"
    "The worker uses a cached index. It does not rebuild embeddings "
    "for every request. It validates the response schema before "
    "returning JSON.\n", encoding='utf-8')
PY
```

## 3. Run the audit and compare

```sh
.venv/bin/agent-style review before.md --audit-only > before.audit.json
.venv/bin/agent-style review after.md --audit-only > after.audit.json
.venv/bin/agent-style review --compare before.md after.md --json > comparison.json
python3 -m json.tool comparison.json
```

The CLI reads the drafts; it does not rewrite them. Do not enable an adapter or a model-backed polishing skill for this exercise.

## 4. Check the result, including what was skipped

```sh
python3 - <<'PY'
import json
from pathlib import Path

before = json.loads(Path('before.audit.json').read_text())
after = json.loads(Path('after.audit.json').read_text())
print('Warning counts:', before['total_violations'], '->', after['total_violations'])
for label, result in [('before', before), ('after', after)]:
    print(label, [(r['rule'], r['count']) for r in result['rule_results'] if r['count']])
    print('Citation check:', [r['status'] for r in result['rule_results'] if r['rule'] == 'RULE-H'])
PY
```

Observed with 0.8.0 on 19 October: **4 warnings became 1**. The original triggered jargon, dash, heading-case, and contraction checks. The edit removed those but introduced a repeated-sentence-start warning. The citation/evidence rule, `RULE-H`, was **skipped** in both audits.

This is the useful result: a lower count leaves a human decision. Read the paragraph and decide whether the repetition harms it. A zero count would not establish that the fictional worker exists or behaves as described.

## 5. Record a review decision

Write a short `decision.md` naming one warning you accepted or rejected and why. Check that both drafts still say the worker uses a cached index, avoids rebuilding embeddings for each request, and validates response shape. Do not add performance claims, citations, or capabilities just to improve a score.

## Troubleshooting

- If the package will not install, record your Python and pip versions and stop; this lab needs no paid fallback.
- If counts differ, verify the pinned version, UTF-8 punctuation and exact fixture. Save the JSON instead of reporting an assumed pass.
- `skipped` is not `passed`. The plain audit cannot verify evidence or whether writing means the right thing.
- A warning is a review aid. Do not damage meaning to eliminate every warning.

## Score the lab, not the product

Give one point each for a pinned version, valid audit JSON, explaining the new repetition warning, noticing `RULE-H` was skipped, and preserving all fixture behaviors. Five points means you understood this small audit; it is not a benchmark of agent writing quality.

## Sources and tested status

[Project and CLI documentation](https://github.com/yzhao062/agent-style), [0.8.0 release](https://github.com/yzhao062/agent-style/releases/tag/v0.8.0), [PyPI release metadata](https://pypi.org/pypi/agent-style/0.8.0/json), [license boundaries](https://github.com/yzhao062/agent-style#license).

**Tested 19 October:** official PyPI wheel hash checked, installed into an isolated Python 3.9 environment, version and both audits/comparison executed; totals 4 → 1, citation check skipped, draft hashes unchanged. **Not tested:** adapter activation, model rewriting, factual accuracy of generated prose, or any hosted service. No credentials or paid inference were used.
