Files
deepset-ai--haystack/AGENTS.md
T
wehub-resource-sync c56bef871b
Sync docs with Docusaurus / sync (push) Waiting to run
Tests / Check if changed (push) Waiting to run
Tests / format (push) Blocked by required conditions
Tests / check-imports (push) Blocked by required conditions
Tests / Unit / macos-latest (push) Blocked by required conditions
Tests / Unit / ubuntu-latest (push) Blocked by required conditions
Tests / Unit / windows-latest (push) Blocked by required conditions
Tests / mypy (push) Blocked by required conditions
Tests / Integration / ubuntu-latest (push) Blocked by required conditions
Tests / Integration / macos-latest (push) Blocked by required conditions
Tests / Integration / windows-latest (push) Blocked by required conditions
Tests / notify-slack-on-failure (push) Blocked by required conditions
Tests / Mark tests as completed (push) Blocked by required conditions
Docker image release / Build base image (push) Waiting to run
CodeQL / Analyze (python) (push) Has been cancelled
Update Platform Components Table / update (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:22:28 +08:00

60 lines
1.4 KiB
Markdown

# Haystack Guidelines for AI Agents
## Environment
Haystack uses **Hatch** for environment and dependency management.
Do not run `python` or `pip` directly.
Before running code on this project, you must be able to run `hatch --version` and get a correct output.
If not, ask the user where Hatch is or if they want to install it. For installation instructions, refer to https://hatch.pypa.io/latest/install/#installation.
### Run scripts with test dependencies
hatch -e test run python SCRIPT.py
### Open a shell with test dependencies
hatch -e test shell
### Install temporary dependencies (for experiments only)
uv pip install PACKAGE
### Delete the environment
hatch env prune
## Tests
Tests run via Hatch and support pytest arguments.
Prefer running tests on a specific module or using `-k`, since the full suite is large.
### Run unit tests
hatch run test:unit
### Run integration tests
hatch run test:integration
## Quality Checks
### Type checking with mypy
hatch run test:types
To fix type issues, avoid `type: ignore`, casts, or assertions when possible. If they are necessary, explain why.
### Format and lint
hatch run fmt
## Release Notes
Every user-facing PR (not docs, not CI) must include a release note:
hatch run release-note SHORT_DESCRIPTION
Edit the generated file in `releasenotes/notes/`. Release notes use reStructuredText formatting; see the [release notes section in CONTRIBUTING.md](CONTRIBUTING.md#release-notes) for details.