← ClaudeAtlas

pr-pickuplisted

Slack collaboration layer: extracts PR URLs from Slack messages and dispatches to engineering revision mode. Does NOT modify code — all code changes, GitHub review replies, and lesson extraction are engineering's responsibility. Trigger: "pr-pickup", "pickup", Slack URL + PR intent ("pickup <slack_url>", "處理 <slack_url>", "同仁貼的 <slack_url>", "接這個 PR <slack_url>"). NOT for: reviewing others' PRs (use review-pr), first-cut implementation (use engineering directly), fixing your own PR without Slack context (use engineering with ticket key or PR URL directly).
HsuanYuLee/polaris · ★ 4 · AI & Automation · score 80
Install: claude install-skill HsuanYuLee/polaris
# pr-pickup 從 Slack 訊息擷取 PR review 請求,dispatch 給 engineering revision mode 處理,完工後回 Slack thread 告知結果。 **職責邊界**:pr-pickup 只做協作傳遞(intake → dispatch → broadcast)。不讀 review comments、不改 code、不回覆 GitHub review、不做 lesson 萃取——這些全部由 engineering revision mode 負責。 它的 shared authority 應收斂在 intake artifact,而不是 prose 解析。Slack/PR 輸入的 canonical 解析結果由 `$SKILL_DIR/scripts/resolve-pr-pickup-input.sh` 定義;skill 只消費該 artifact,不能再手工 各寫一套 PR URL / thread context 判斷。 ## 前置:讀取 workspace config 讀取 workspace config(參考 `references/workspace-config-reader.md`)。 本步驟需要的值:`github.org`、`slack.channels.ai_notifications`。 若 config 不存在,使用 `references/shared-defaults.md` �� fallback 值。 ## 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: Skill tool 呼叫 engineering(傳 PR URL)→ 同步等待完成 Step 3: 根據 engineering 結果組 Slack 回覆訊息 Step 4: 回 Slack thread ``` --- ## Step 1: 解析 Slack 輸入 先跑 shared intake resolver,而不是手工解析: ```bash "$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 完成第二階段解析: ```bash "$SKILL_DIR/scripts/resolve-pr-pickup-input.sh" \ --input "$USER_INPUT" \ --org "$GITHUB_ORG" \ --slack-thread