一键导入
support
Support hero workflow — start a ticket investigation with auto-organized notes, find existing notes, or generate the weekly highlights log
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Support hero workflow — start a ticket investigation with auto-organized notes, find existing notes, or generate the weekly highlights log
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Identify unlabeled GitHub issues and external PRs that may belong to a specific team, and normalize conventional title scopes to the team's canonical short form
Generate standup notes from GitHub PR activity
Monitor CI checks after pushing, detect flaky vs legit failures, and auto-fix
Reference for GitHub PR review endpoints and resolving review threads via gh CLI. Use when replying to a PR review comment, posting a new review comment, or resolving review threads.
PostHog repo-specific workflow, database access rules, production architecture notes, and SDK repository locations. Use when working in posthog/posthog or any PostHog SDK repo.
Plan, implement, and iteratively review a task end-to-end using Claude + Copilot reviewers in a linear flow.
| name | support |
| description | Support hero workflow — start a ticket investigation with auto-organized notes, find existing notes, or generate the weekly highlights log |
| argument-hint | [find|log|zendesk|github] <number-or-date> |
| disable-model-invocation | true |
| model | sonnet |
Three subcommands:
| Subcommand | Purpose |
|---|---|
/support {zendesk|github|z|gh} <number> | Start a new ticket investigation with note scaffolding |
/support find {zendesk|github|z|gh} <number> | Locate existing notes for a ticket without creating anything |
/support log [--last|--current|YYYY-MM-DD] | Generate the weekly support hero highlights log |
Shorthands: z → zendesk, gh → github.
Parse the user's args:
find, route to Find Mode below.log, route to Log Mode below.If required arguments are missing for the chosen mode, ask the user before proceeding.
Used to start a new investigation or resume an existing one.
Required args: ticket_type (zendesk/github) and ticket_number.
Run the helper. Don't construct paths manually — the script handles week math and backwards search.
result=$(~/.claude/skills/support/scripts/support-find-ticket.sh {ticket_type} {ticket_number})
status=$(echo "$result" | cut -f1)
notes_dir=$(echo "$result" | cut -f2)
if [[ "$status" == "found" ]]; then
echo "Found existing ticket at: $notes_dir"
else
echo "Creating new ticket at: $notes_dir"
mkdir -p "$notes_dir"
fi
If new, create notes.md from templates/investigation-notes.md. Construct the ticket URL as:
https://posthoghelp.zendesk.com/agent/tickets/{number}https://github.com/PostHog/posthog/issues/{number}Tell the user where notes live and the ticket URL, then ask them to describe the issue. Continue the investigation using systematic debugging and documentation practices.
Used to locate existing notes without creating anything.
Required args: ticket_type and ticket_number.
result=$(~/.claude/skills/support/scripts/support-find-ticket.sh {ticket_type} {ticket_number})
status=$(echo "$result" | cut -f1)
notes_dir=$(echo "$result" | cut -f2)
status = found: Show the directory and $notes_dir/notes.md paths. Read and summarize the first ~30 lines. Offer to continue the investigation.status = new: Tell the user nothing exists yet, show where it would be created, suggest /support {ticket_type} {ticket_number} to start.Do not create directories or files in Find Mode.
Used to generate the weekly support hero highlights log.
Optional arg: --last (default), --current, or an explicit Monday YYYY-MM-DD.
result=$(~/.claude/skills/support/scripts/support-log-week.sh "${arg:-}")
monday=$(echo "$result" | cut -f1)
friday=$(echo "$result" | cut -f2)
week_dir=$(echo "$result" | cut -f3)
The script outputs Monday, Friday, and the directory path tab-separated. Default with no arg is --last (the most recently completed Mon–Fri).
The week directory contains one subdirectory per ticket investigation, plus occasionally loose .md files. Read every notes.md (or top-level summary.md / <ticket>.md file). Pull from each:
Ticket URL: field if present, otherwise reconstruct: Zendesk → https://posthoghelp.zendesk.com/agent/tickets/{number}, GitHub → https://github.com/PostHog/posthog/issues/{number}; for tickets that exist only in Slack, use the Slack thread URL)Use this exact format. The user pastes this into Slack, so links use Slack syntax <URL|name>.
Highlights for MM/DD/YY - MM/DD/YY
<TICKET_URL|Customer Name>: <one-paragraph summary>. (Status)
<TICKET_URL|Next Customer>: …
monday and friday from Step 1, formatted MM/DD/YY - MM/DD/YY. The support hero rotation runs Mon–Fri; weekend dates don't belong here.<URL|Name>. URL is the ticket URL or Slack thread URL.Filed https://github.com/PostHog/posthog/issues/55410 to fix X.(Resolved), (Pending), (Unresolved, Pending), (Pending, To close after deployed), (Closed, no action needed). Add a short qualifier when useful.(Pending) — waiting on customer response or follow-up action(Pending, To close after deployed) — fix submitted, waiting for deployment(Pending, awaiting customer guidance) — solution proposed, customer needs to choose(Unresolved, Pending) — still investigating or blocked(Resolved) — confirmed fixed(Closed, no action needed) — not a bug, expected behavior explainedSave the log to ~/dev/ai/support/HIGHLIGHTS-{monday}.md. Then ask the user whether to copy to the clipboard. Two options when they say yes:
Plain text (default — for Slack):
pbcopy < ~/dev/ai/support/HIGHLIGHTS-{monday}.md
The <URL|name> syntax renders as clickable links in Slack on paste.
RTF (for rich-text editors like Notion, email, docs):
Build a parallel HTML file with proper <a href> tags (replacing each <URL|name> with <a href="URL">name</a> and wrapping each entry in <p>…</p>). Then:
textutil -convert rtf -stdout /tmp/weekly-log.html > /tmp/weekly-log.rtf
osascript <<'EOF'
set rtfData to read (POSIX file "/tmp/weekly-log.rtf") as «class RTF »
set plainText to do shell script "textutil -convert txt -stdout /tmp/weekly-log.html"
set the clipboard to {Unicode text:plainText, «class RTF »:rtfData}
EOF
Setting both Unicode text and «class RTF » is required — RTF-only clipboards don't paste in many apps.
Use /support for | Use note-taker for |
|---|---|
| Customer tickets (Zendesk, GitHub, Slack escalations) | Technical discoveries for future dev |
| Weekly support hero log | System behavior documentation |
| Time-bounded support work | Knowledge persisting beyond a ticket |
| Customer-specific investigation | Cross-cutting insights from multiple cases |
If you discover something during support that should be permanent technical docs, spawn note-taker separately to capture it under ~/dev/ai/notes/.