Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add HsuanYuLee/polaris --skill pr-pickupgit clone --depth 1 https://github.com/HsuanYuLee/polarisWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/hsuanyulee/polaris/pr-pickup)<a href="https://agentmods.dev/skills/hsuanyulee/polaris/pr-pickup"><img src="https://agentmods.dev/badge/skills/hsuanyulee/polaris/pr-pickup/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/hsuanyulee/polaris/pr-pickup"><img src="https://agentmods.dev/badge/skills/hsuanyulee/polaris/pr-pickup.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00248 | $0.02531 |
| Opus 5 | $0.00124 | $0.01265 |
| Sonnet 5 | $0.00050 | $0.00506 |
| Haiku 4.5 | $0.00025 | $0.00253 |
Grade A, and why
pr-pickup scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 229 lines — stays where its author put it; the contents beside it link to each section on GitHub.
pr-pickup
從 Slack 訊息擷取 PR review 請求,把 PR 交出去修,完工後回 Slack thread 告知結果。
職責邊界:pr-pickup 只做協作傳遞(intake → 交付出去 → broadcast)。不讀 review comments、不改 code、不回覆 GitHub review。修 PR 這件事本身不歸它——那多半不用立案(改的是既有 assertion 底下的做法),直接修;若連成功的定義都要改,那是 refinement 的事。
它的 shared authority 應收斂在 intake artifact,而不是 prose 解析。Slack/PR 輸入的 canonical
解析結果由 $SKILL_DIR/scripts/resolve-pr-pickup-input.sh 定義;skill 只消費該 artifact,不能再手工
各寫一套 PR URL / thread context 判斷。
前置:這條線在哪個 org
resolve-pr-pickup-input.sh 讀 Slack thread 的時候要 --org,因為它要在那一串裡找出屬於
那個 org 的 PR URL。那個值問 request-pr-review 帶的那支命令,它列出這台機器上被宣告
的每一個 org:
bash "$SKILL_DIR/../request-pr-review/scripts/resolve-pr-context.sh" orgs
只有一個就用它,不只一個就從那串訊息裡的 PR URL 判。這裡不寫任何設定鍵:org 是誰宣告 的、宣告在哪,由那支命令回答,這一支不認得任何一家公司。
以前這裡寫「讀 workspace config,本步驟需要的值:github.org、slack.channels.ai_notifications」
——兩個鍵在任何一份 workspace-config.yaml 裡都不存在,$GITHUB_ORG 整支 skill 沒有人賦值,
而 slack.channels.ai_notifications 從頭到尾沒有任何一行讀它。
Bundled Authority
| Script | Role |
|---|---|
$SKILL_DIR/scripts/resolve-pr-pickup-input.sh |
canonical intake resolver:統一解析 direct PR URL、Slack URL、Slack thread context、以及 thread-derived PR URLs |
流程總覽
Step 0: 前置 config
Step 1: 解析 Slack 輸入 → PR URL + thread context
Step 2: 把 PR 交出去修 → 同步等待完成
Step 3: 根據結果組 Slack 回覆訊息
Step 4: 回 Slack thread
Step 1: 解析 Slack 輸入
先跑 shared intake resolver,而不是手工解析:
"$SKILL_DIR/scripts/resolve-pr-pickup-input.sh" \
--input "$USER_INPUT" \
--allow-empty-prs \
--format json
若 resolver 回傳 needs_slack_thread_read=true,再依 references/slack-pr-input.md 讀取
Slack thread,然後用同一支 script 完成第二階段解析:
"$SKILL_DIR/scripts/resolve-pr-pickup-input.sh" \
--input "$USER_INPUT" \
--org "$ORG" \
--slack-thread-file "$SLACK_THREAD_EXPORT" \
--format json
後續 Step 2-4 一律只吃這個 intake artifact,不再自行從原始訊息重解析 PR URL / thread context。
1a. 輸入型態
| 輸入 | 處理 |
|---|---|
Slack URL(*.slack.com/archives/*) |
讀取 Slack thread,提取 PR URL |
| 直接的 PR URL + Slack context 提示 | 使用 PR URL,從提示中取得 Slack thread 資訊 |
| 純文字無 PR URL | → Step 1c 錯誤處理 |
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago Changed · +15 lines 605d5361566c
- 10d ago First seen · 214 lines · 248 tokens per session scan A 7d63919a875f
pr-pickup is a skill published in the GitHub repository HsuanYuLee/polaris (5 stars, last pushed today), licensed MIT. It adds 248 tokens to every session and 2,531 once invoked, about $0.0012 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
repo-guidance
Navigate the Composio SDK monorepo, branch and PR workflow, repo layout, generated-file boundaries, changesets, and shared maintenance rules. Use when work spans multiple packages, when deciding where code belongs, when preparing a PR, or when the user asks about repository conventions rather than a specific SDK…
python-release
Handle Python SDK release, build, bump, packaging metadata, PyPI client pin, uv.lock, nox/build workflow, and publish verification changes. Use for Python release process work or dependency pin bumps; do not use for ordinary Python feature implementation.
git-workflow
A guide for handling Git repository work safely, including status checks, branches, commits, pushes, pull requests, and rebasing. Git is a version-control system that records code changes and coordinates work between developers.
changelog-gen
A changelog generator that turns Git history into a version-by-version record of project changes. A changelog is a readable summary of new features, fixes, breaking changes, documentation, and other updates.
i-have-adhd
Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress tangents, give specific time estimates, make wins visible. Invoke with /i-have-adhd; stays on until "stop adhd mode".
resolve-pr-comments
Evaluate, fix, answer, and reply to GitHub pull request review comments and conversation comments. Handles both change requests (fix or skip) and reviewer questions (explain using reasoning recalled from past Claude Code transcripts). Use when the user asks to "resolve PR comments", "fix review comments", "address PR…