Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,12 @@ lives under `pyiceberg/`, organized by concern rather than by engine:
- The Apache License header is required on every new source file (enforced by `./dev/check-license`).
- Run `make lint` and `make test` before pushing; CI runs both plus the lockfile check.

## GitHub Write Approval

- **Never** modify GitHub state without explicit user approval for that specific action in the current session; treat GitHub as read-only by default.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An agent can bypass this. Something like stop hooks have helped if some git / other commands are attempted to being run. So I'm not sure of the value of adding it here versus having users keep their local setup guardrails.

- **Ask first** before any GitHub write: show the exact target and action, including the full proposed content when applicable, then wait for explicit approval. This includes creating, editing, or deleting issues, pull requests, comments, reviews, labels, and branches, as well as merges, releases, and workflow runs.
- **Never** treat a request to investigate, implement, fix, draft, or prepare as approval to write to GitHub, or infer, reuse, or bypass approval.

## Boundaries

- **Never** add a hard (non-optional) dependency without discussion — keep heavy/integration libraries as optional extras.
Expand Down
Loading