Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/dfirtnt/Huntable-CTI-StudioWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/dfirtnt/huntable-cti-studio/pytest-run-tests-integration)<a href="https://agentmods.dev/rules/dfirtnt/huntable-cti-studio/pytest-run-tests-integration"><img src="https://agentmods.dev/badge/rules/dfirtnt/huntable-cti-studio/pytest-run-tests-integration/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/rules/dfirtnt/huntable-cti-studio/pytest-run-tests-integration"><img src="https://agentmods.dev/badge/rules/dfirtnt/huntable-cti-studio/pytest-run-tests-integration.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00457 | $0.00457 |
| Opus 5 | $0.00229 | $0.00229 |
| Sonnet 5 | $0.00091 | $0.00091 |
| Haiku 4.5 | $0.00046 | $0.00046 |
Grade A, and why
pytest-run-tests-integration scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Pytest — run_tests.py Integration
Rule
All pytest tests built for ongoing use in this project MUST be integrated into the ./run_tests.py wrapper. Tests must be discoverable and executable via one of the runner’s categories or markers—not only via raw pytest invocations.
What “integrated” means
- Discovery: Tests live under
tests/and are selected by an existingrun_tests.pycategory (e.g.smoke,unit,api,integration,ui) or by a marker category (e.g.regression,contract,security,a11y) thatrun_tests.pyalready supports. - Execution: A full run of the relevant category (e.g.
python3 run_tests.py unitorpython3 run_tests.py regression --paths tests/quality/...) includes the new tests. - No orphan tests: Do not add pytest files that are only meant to be run manually with
pytest path/to/file.pyor custom one-off commands, unless they are explicitly one-off/throwaway (e.g. spike scripts). Ongoing tests belong in the wrapper.
When adding new tests
- Place tests under
tests/in the appropriate subtree (e.g.tests/api/,tests/unit/,tests/quality/). - Use the markers/paths already used by
run_tests.pyso the new tests are included when that category is run (path-based discovery is the norm; only addrun_tests.pychanges if a new category or marker is required). - If introducing a new category or marker, update
run_tests.py(e.g.RunTestType,_build_pytest_command, subparser) so the new tests are runnable via e.g.python3 run_tests.py <category>.
Summary
- Ongoing pytest tests → must be runnable via
run_tests.py. - One-off / spike scripts may stay outside the wrapper if clearly marked as such.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 28 lines · 457 tokens per session scan A da12b35ce4c1
pytest-run-tests-integration is a cursor rule published in the GitHub repository dfirtnt/Huntable-CTI-Studio (11 stars, last pushed 2d ago), licensed MIT. It adds 457 tokens to every session, about $0.0023 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
frontend-preview
An offline preview and screenshot-checking workflow for the desktop interface. It replays saved AI event scenarios in the real interface, so developers can inspect intermediate streaming states without a backend or live AI service.
desktop-release-gate
Desktop app fixes must pass a local packaged build smoke test before pushing release tags or CI desktop builds.
detection-validation
The tests: section MUST have valid URLs, NOT placeholder descriptions.
linux-testing-workflow
Linux detection testing workflow and lessons learned.
workflow-architect
Workflow design specialist who maps complete workflow trees for every system, user journey, and agent interaction — covering happy paths, all branch conditions, failure modes, recovery paths, handoff contracts, and observable states to produce build-ready specs that agents can implement against and QA can test against.
testing-and-security
Testing and Security Guidelines for FastAPI Applications Including Unit Testing, Environment Variable Management, and Authentication Security.