Skip to content
Open
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
4 changes: 4 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,10 @@ When reviewing code, provide constructive feedback:
- AgentSkills progressive disclosure goes through `AgentContext.get_system_message_suffix()` into `<available_skills>`, and `openhands.sdk.context.skills.to_prompt()` truncates each prompt description to 1024 characters because the AgentSkills specification caps `description` at 1-1024 characters.
- Workspace-wide uv resolver guardrails belong in the repository root `[tool.uv]` table. When `exclude-newer` is configured there, `uv lock` persists it into the root `uv.lock` `[options]` section as both an absolute cutoff and `exclude-newer-span`, and `uv sync --frozen` continues to use that locked workspace state.
- `pr-review-by-openhands` delegates to `OpenHands/extensions/plugins/pr-review@main`. Repo-specific reviewer instructions live in `.agents/skills/custom-codereview-guide.md`, and because task-trigger matching is substring-based, that `/codereview` skill is also auto-injected for the workflow's `/codereview-roasted` prompt.
- Three OpenHands Cloud Automations are active on this repository for event-driven PR review using the `pr-review` plugin (`github:OpenHands/extensions`, `repo_path: plugins/pr-review`):
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

🟡 Suggestion: The lead-in says "Three OpenHands Cloud Automations" but only two numbered items follow. According to the PR description, triggers #2 (pull_request.ready_for_review) and #3 (pull_request.review_requested) are distinct automations that have been collapsed into a single item #2 here.

Either split them into two separate numbered entries (matching the count), or change the wording to reflect the actual automation count:

Suggested change
- Three OpenHands Cloud Automations are active on this repository for event-driven PR review using the `pr-review` plugin (`github:OpenHands/extensions`, `repo_path: plugins/pr-review`):
- Two OpenHands Cloud Automations (three trigger events) are active on this repository for event-driven PR review using the `pr-review` plugin (`github:OpenHands/extensions`, `repo_path: plugins/pr-review`):

Alternatively, if these truly are three separate registered automations, expand to three numbered items so agents reading this file have an accurate mental model.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

🟠 Important — count mismatch: The lead sentence says "Three OpenHands Cloud Automations" but the numbered list has only two items. Item 2 quietly folds in two separate event triggers (pull_request.ready_for_review and pull_request.review_requested), which is how this mismatch happens. The PR description itself lists all three as distinct entries. Either:

  • Change "Three" → "Two" (treating the combined item as one logical trigger), or
  • Split item 2 into two separate numbered items so the count is accurate.
Suggested change
- Three OpenHands Cloud Automations are active on this repository for event-driven PR review using the `pr-review` plugin (`github:OpenHands/extensions`, `repo_path: plugins/pr-review`):
- Two OpenHands Cloud Automations are active on this repository for event-driven PR review using the `pr-review` plugin (`github:OpenHands/extensions`, `repo_path: plugins/pr-review`):

1. **OHCloudReview label** — fires when the `OHCloudReview` label is added to a PR (`pull_request.labeled`)
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

🟠 Important: The label documented here is OHCloudReview, but the webhook event that triggered this very review shows the PR was labeled with review-this (visible in the automation event payload). These names don't match.

Possible explanations:

  • The label name was changed from OHCloudReview to review-this and the docs weren't updated
  • A separate, undocumented automation fires on review-this in addition to the documented OHCloudReview automation

Please verify the actual label name configured in the OpenHands Cloud Automation trigger and update the docs to reflect the correct label (or add a note if multiple label triggers exist).

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

🟡 Suggestion — verify trigger label name: This documentation says the trigger label is OHCloudReview, but the webhook event that fired this review run carries the label review-this. If the actual automation filter matches review-this (or both labels), the label name here should be corrected or expanded to reflect what is really configured. Worth double-checking the automation definition to confirm the exact filter expression.

2. **Ready for review or review requested** — fires when a draft PR is marked ready for review, or when `all-hands-bot` is requested as a reviewer (`pull_request.ready_for_review` or `pull_request.review_requested`)
Comment on lines +117 to +119
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

🟡 Minor: Exercising the docs as rendered by GitHub shows this sentence claims there are three OpenHands Cloud Automations, but the ordered list below has only two entries because pull_request.ready_for_review and pull_request.review_requested are combined. Since the PR goal is to document the three active triggers/automations, please either split these into three numbered entries or reword the intro to make clear that there are two automation entries covering three trigger events.

Reviews posted by these automations are from the `all-hands-bot` GitHub account.
- Release PR reviewer guidance now requires checking the latest PR-specific `Run tests`, `Run Examples Scripts`, and `Run Integration Tests` results/comments before approval; if any are missing, stale, ambiguous, skipped, or failing, the bot should leave a COMMENT and defer to human maintainer review.
- Directory-based runnable examples under `examples/` should expose their entrypoint as `main.py`, and `tests/examples/test_examples.py` should explicitly list the example directory in `_TARGET_DIRECTORIES` so the non-recursive example workflow collects it without accidentally running helper modules.
- The duplicate-issue automation scripts should validate `owner/repo` arguments before interpolating GitHub API paths, handle per-issue auto-close failures without aborting the whole batch, and keep `app_conversation_id` paths unquoted because OpenHands conversation IDs are already canonicalized for those endpoints.
Expand Down
Loading