Metadata-Version: 2.4
Name: reporails-cli
Version: 0.5.11
Summary: AI instruction diagnostics for coding agents
Project-URL: Homepage, https://reporails.com
Project-URL: Documentation, https://github.com/reporails/cli#readme
Project-URL: Repository, https://github.com/reporails/cli
Project-URL: Issues, https://github.com/reporails/cli/issues
Author: Reporails Team
License-Expression: BUSL-1.1
License-File: LICENSE
Keywords: ai-instructions,claude,codex,copilot,cursor,diagnostics,gemini,mcp,validation
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Quality Assurance
Requires-Python: <3.14,>=3.12
Requires-Dist: httpx>=0.27.0
Requires-Dist: markdown-it-py>=3.0.0
Requires-Dist: mcp>=1.0.0
Requires-Dist: msgpack>=1.0.0
Requires-Dist: numpy<3,>=1.26
Requires-Dist: onnxruntime<2,>=1.18
Requires-Dist: packaging>=23.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: pyyaml>=6.0.0
Requires-Dist: regex>=2024.11.6
Requires-Dist: rich>=13.0.0
Requires-Dist: scikit-learn>=1.4.0
Requires-Dist: spacy<4,>=3.8.11
Requires-Dist: tokenizers<1,>=0.19
Requires-Dist: typer>=0.12.0
Provides-Extra: dev
Requires-Dist: mypy>=1.8.0; extra == 'dev'
Requires-Dist: poethepoet>=0.25.0; extra == 'dev'
Requires-Dist: pylint>=3.0.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.3.0; extra == 'dev'
Requires-Dist: types-pyyaml>=6.0.0; extra == 'dev'
Description-Content-Type: text/markdown

# Reporails CLI (v0.5.11)

> **AI Instruction Diagnostics for coding agents. Validates the entire agentic instruction system against 120+ rules across six rule packs (core + per-agent). Supports Claude, Codex, Copilot, Cursor, and Gemini.**
> 
> *Beta phase - moving fast, feedback welcome.*

## Quick Start

```bash
npx @reporails/cli check
# or
uvx --from reporails-cli ails check
```

No install, no account. The headline is a single **Quality** score (the analysis service's verdict on how well-formed your instructions are); fix the findings that move it, run again, watch it climb:

```
Reporails — Diagnostics

  ┌─ Main (1)  10 directive / 1 constraint · 71% prose
  │ CLAUDE.md  10 dir / 1 con / 1 amb · 71% prose
  │   ✗       Missing tech stack declaration — list languages, frameworks, runtimes  CORE:C:0034
  │       → Name the languages, frameworks, and runtimes the project targets.
  │   ⚠       'pytest' should be in backticks (×3)  CORE:E:0003
  │       → Wrap in backticks: `pytest`
  │     ◦ +4 lower-priority (won't move your score yet) · -v to list
  │     ⊕ 6 Pro diagnostics (1 error) — isolated instructions, buried directives
  │
  └─ 12 findings

  ── Summary ────────────────────────────────────────────────────────

  Quality   6.4 / 10  ▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░  (4.1s)
  Findings 3 errors · 38 warnings · 12 info
  Agent: Claude
  Level: L4 Delegated

  Scope:
    instructions: 64 directive / 102 prose (61%)
                  18 constraint / 4 ambiguous

  Main (1):    ▓▓▓▓▓▓▓▓▓░░░░░░   6.4  1 err    Rules (2):   ▓▓▓▓▓▓▓▓▓▓▓▓░░░   7.9
  Skills (3):  ▓▓▓▓▓▓▓▓▓▓▓░░░░   7.2           Agents (1):  ▓▓▓▓▓▓▓▓▓▓░░░░░   6.6

  + 41 Pro diagnostics (1 error · 32 warnings) — sign in for line numbers + fix coordinates
```

## Install permanently

```bash
npx @reporails/cli install
# or
uvx --from reporails-cli ails install
```

Puts `ails` on your PATH.

## Anonymous vs signed

Anonymous mode needs no account. Signing in raises the rate / payload caps and unlocks per-finding fix text and exact cross-file conflict locations.

```bash
# GitHub Device Flow - authorize in browser
ails auth login
```

Full breakdown: [Tiers and Limits](https://github.com/reporails/cli/blob/main/docs/tiers.md).

## In CI

Run on every PR so instruction-quality regressions (contradictions, oversized files, weak reinforcement) get caught the same way test or lint regressions do — before merge, not after a teammate's agent has been silently misbehaving for a week.

```yaml
- uses: reporails/cli/action
  with:
    api-key: ${{ secrets.REPORAILS_API_KEY }}   # optional - sign-in for full diagnostic detail
    strict: "true"                              # exit 1 if any rule fires
    min-score: "7.0"                            # exit 1 if Quality < 7.0
```

Capture your API key with `ails auth token` and store it as `REPORAILS_API_KEY` in your CI secret store. See [Configuration → Authentication](https://github.com/reporails/cli/blob/main/docs/configuration.md#authentication).

## Documentation

- [Getting Started](https://github.com/reporails/cli/blob/main/docs/getting-started.md) - install, first run, what the output means
- [Agent Support](https://github.com/reporails/cli/blob/main/docs/agent-support.md) - which agents are recognized and what's covered
- [Tiers and Limits](https://github.com/reporails/cli/blob/main/docs/tiers.md) - anonymous vs signed in, what each mode includes
- [Configuration](https://github.com/reporails/cli/blob/main/docs/configuration.md) - disabling rules, project / global config, exclude paths
- [Score Guide](https://github.com/reporails/cli/blob/main/docs/score-guide.md) - how the score is built and what it tells you
- [Capability Levels](https://github.com/reporails/cli/blob/main/docs/capability-levels.md) - the L0-L7 ladder and what each level requires
- [Rules CLI](https://github.com/reporails/cli/blob/main/docs/rules-cli.md) - `ails rules list --capability=skill` and friends — preflight rules before authoring
- [FAQ](https://github.com/reporails/cli/blob/main/docs/faq.md) - common questions

## Built and validated for

- **Claude** — [Anthropic](https://github.com/anthropics)
- **Codex** — [OpenAI](https://github.com/openai)
- **Copilot** — [GitHub](https://github.com/github)
- **Cursor** — [Anysphere](https://github.com/cursor)
- **Gemini** — [Google](https://github.com/google-gemini)

## License

[BUSL 1.1](LICENSE) - converts to Apache 2.0 three years after each release.
