# AGENTS.md (Default)

## Project Conventions

- Keep implementation code in `src/loop_kit/orchestrator.py`; do not split logic into new modules unless a task explicitly asks for it.
- CLI wrappers stay minimal: `src/loop_kit/cli.py`, `src/loop_kit/__main__.py`, and `src/loop_kit/__init__.py`.
- Test changes belong in `tests/test_orchestrator.py`.

## Code Style

- Python target is 3.11+.
- Use modern union syntax (`X | Y`), not `typing.Union`.
- Internal helpers are `_`-prefixed and should remain `_`-prefixed.
- Use `Path` + UTF-8 for file I/O.
- Keep edits small and reversible. Prefer changing existing primitives over adding one-off paths.

## Execution Rules

- Read `.loop/task_card.json` and `.loop/fix_list.json` before changing code.
- Implement only requested scope.
- Validate behavior with real commands, not assumptions.
- If you modify behavior, update tests in the same round.

## Validation Commands

- `uv run python -m py_compile src/loop_kit/orchestrator.py`
- `uv run --group dev pytest`
- `uv run --group dev ruff check src/ tests/`

## Delivery

- Keep output factual and concise.
- Commit meaningful validated changes.
- Report exact commands run and their outcomes.
