agentleFS
SHAdd0WTAkaSHAdd0WTAka/Zen-Ai-Pentest/AGENTS.md

Zen-Ai-Pentest

AGENTS.md470 starsChanged 4 months agoMITView on GitHub

httpx2 is required by starlette.testclient but missing from requirements. Add pip install httpx2 before running tests or requirements.txt to make CI pass. CI runs on main and PRs targeting main/master.

  • Reads credentials
  • Installs packages

We split this AGENTS.md into the rules it gives an agent

1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Test dir: tests/unit/ (unit), tests/integration/ (integration)

    line 31

≈ “Common” is an estimate: at least 1 in 5 of the 36,368 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

AGENTS.md

Commands

# Run focused tests (CI uses: pytest tests/ -v --tb=short -q)
pytest tests/unit/<module>/       # single package
pytest tests/unit/test_<name>.py  # single file (-v --tb=short optional)

# Coverage run (fail-under = 20%)
pytest tests/ --cov=core --cov=agents --cov=tools --cov=api --cov-report=term

# Lint & format (pre-commit enforced)
pre-commit run --all-files
ruff check . && ruff format --check .

# Full verification order: lint → typecheck → test
pip install -r requirements.txt httpx2
pytest tests/ -v --tb=short -q

CI

httpx2 is required by starlette.testclient but missing from requirements. Add pip install httpx2 before running tests or requirements.txt to make CI pass. CI runs on main and PRs targeting main/master.

Test gotchas

  • asyncio_mode = auto in pytest.ini — no @pytest.mark.asyncio needed
  • pytest.ini ignores many files via --ignore-glob — do not rename ignored tests without updating that list
  • Coverage threshold = 20% (very low, not a gate)
  • Test dir: tests/unit/ (unit), tests/integration/ (integration)
  • Missing pip install httpx2 before test run

Style & config

  • Black: line-length 127, target py313
  • Ruff: line-length 127, target py311 (lint only, isort handled by standalone isort)
  • isort: profile="black", line_length 127
  • pyproject.toml is single source of truth
  • Env secrets via .env file (never committed)

Architecture

  • AI Backend: OmniRoute (http://omniroute:20128/v1) – OpenAI-kompatibler Proxy
  • Auth: OPENCODE_API_KEY aus .env (ersetzt Kimi CLI)
  • Entrypoints: api/main.py (FastAPI), CLI via zen-ai-pentest console script
  • Key dirs: core/, agents/, api/, tools/, database/, orchestrator/, modules/, risk_engine/
  • Docker: docker-compose.yml + Dockerfiles in docker/ (inkl. OmniRoute + PostgreSQL)
  • DB: PostgreSQL 15 (unified), Redis für Cache/Queue

Known issues

  • httpx2 is now included in dev dependencies (CI fix applied)
  • pytest.ini excludes ~30 test file patterns from the default run

Git

  • Branch naming: feature/, fix/, refactor/, chore/, security/
  • Conventional Commits: feat:, fix:, refactor:, chore:, docs:, test:, security:

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.