CtrlK
BlogDocsLog inGet started
Tessl Logo

jbaruch/nanoclaw-host

Skills and rules for the NanoClaw host agent (Claude Code on Mac). Tile promotion, container management, staging checks, repo chain safety, and public sync.

76

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Medium

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

copilot-nudge-after-10min.mdrules/

alwaysApply:
Yes

Copilot nudge after 10 minutes

When you summon a Copilot review via the GraphQL requestReviews mutation (see the ship-code and promote skills for the full lifecycle and the exact GraphQL call) and the review hasn't started within 10 minutes, post a follow-up PR comment that tags @copilot to re-activate it.

How to apply

Track each PR's last-summon timestamp alongside the existing review-state watching. The review timestamp you compare against must be Copilot's latest review specifically — a human review landing mid-cycle would otherwise suppress the nudge even when Copilot's queue is still stale. Treat "no prior Copilot review" as eligible (null/0 is older than any commit). If the condition

now - last_summon > 10 minutes
  AND (latest_COPILOT_review_time is null OR latest_COPILOT_review_time < latest_commit_time)

holds, post a comment:

# Pull only Copilot's reviews, not any reviewer's. `--paginate` is
# important: gh's default page size is 30, and long-running PRs
# accumulate many review rounds (mine + Copilot's + any humans') so
# the latest Copilot review can fall off the first page and get
# silently missed.
latest_copilot=$(gh api --paginate repos/<owner>/<repo>/pulls/<n>/reviews \
  --jq '[.[] | select(.user.login | contains("opilot")) | .submitted_at] | max // ""')

if [ -z "$latest_copilot" ]; then
  # Never reviewed — asking for a first pass, not a re-review.
  body="@copilot review

Summoned via GraphQL earlier but no review has landed yet. Please take a look."
else
  # Prior review exists and is older than the latest commit — ask for
  # a re-review on the current state.
  body="@copilot review

Summoned via GraphQL earlier — the requested changes from your previous pass are addressed in the latest commit on this branch. Please re-review."
fi
gh pr comment <n> --repo <owner>/<repo> --body "$body"

Then reset the summon timestamp for that PR so the nudge doesn't re-fire until another 10 min have passed.

Scope

Every repo in the chain — core, admin, trusted, untrusted, host, public, private. Applies anywhere copilot-pull-request-reviewer is a reviewer on an open PR.

Don't

  • Don't nudge faster than every 10 minutes per PR (you'll just pile up @copilot comments with nothing between them).
  • Don't nudge if the latest Copilot review timestamp is AFTER the latest commit — that means Copilot already saw the current state and chose not to leave line comments (clean review). A human review landing in between is not a reason to suppress the nudge; the condition is specifically about Copilot's queue being stale.
  • Don't nudge on PRs where Copilot isn't a reviewer (check the requested_reviewers list first).

CHANGELOG.md

README.md

tile.json