본문으로 건너뛰기
cccskills
무료GitHub에 공개

test-and-report

Manual testing + bug filing for Enterprise / SaaS products. Parses a Feishu test doc (scope + repo + bitable URL), observes staging via claude-in-chrome, captures DOM/console/network/screenshot evidence, then dual-tracks each finding — Feishu Bitable record (with attachments) + GitHub issue (<REPO>#<ISSUE_NUMBER> format — English-primary, Chinese collapsed, R2-hosted screenshots, matching type label). Enforces dedup across bitable + GitHub issues + PRs, and mandatory P0/P1/P2 priority prompt when unclear. Trigger whenever the user says "test and report", "test and report side-by-side", "start system testing", "experience staging", "collaborate on bug filing", "collect feedback", a shared Feishu testing doc, a bitable URL + finding, or any UX/bug needing both bitable + GitHub tracking. Do NOT use for writing product code, PR review, CI debugging, or general "how do I use this product" questions — those go to normal dev / PR-review / support flows.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구GitHub
설치 방법 보기

포함된 파일(3)

  • SKILL.md8.9 KB
  • references/bitable-bases.md3.5 KB
  • references/submit-bug-sop.md11.6 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Test & Report

A skill that packages the full flow: "Feishu test doc → browser evidence capture → dual-track submission (Bitable + GitHub issue)" so every piece of feedback includes environment info, screenshots, dedup conclusion, and priority, tracked in two systems.

Trigger Boundaries (when to use / when not to use)

Use this skill:

  • User sends a Feishu test doc URL (usually contains test scope + code repo + Bitable link)
  • User says "start testing / help me test / experience staging / collab on bugs / collect feedback"
  • User describes a UX / functional issue and wants it tracked in both Bitable + GitHub
  • User sends a known test Bitable URL (e.g. IJQPbTzZhaObMQsuL5OcbaoBnag / AdeDbC9VgaNkrEsXtk5cTMarn2e) with feedback

Do NOT use this skill:

  • User asks you to write product code / open a PR → use normal dev flow
  • User asks you to review an existing PR → use gh-pr-review skill
  • CI / build failure debugging → use normal debugging
  • User asks "how do I use this product / where do I download" → general answer

Prerequisites (check before executing)

CapabilityCheck MethodIf Missing
claude-in-chrome extensionmcp__claude-in-chrome__tabs_context_mcp returns tab listGuide user to install from claude.com/chrome and click Connect, wait for "done"
lark-cli logged inlark-cli contact +get-user --jq .data.user.nameJump to lark-shared skill for auth
gh CLI has repo write accessgh api repos/<OWNER>/<REPO> --jq .permissions shows push: trueAsk user to grant triage/write to current GitHub account
R2 image hosting availablewhich upload-img returns ~/.local/bin/upload-imgManual fallback: ask user to drag screenshot into GitHub issue editor

Workflow Overview

Phase 1  Parse test doc (Feishu doc → config)
Phase 2  Browser setup (claude-in-chrome)
Phase 3  Accompany testing: user operates, agent observes
Phase 4  Per-bug submission (dedup → priority → upload screenshot → Bitable + GitHub dual-track)
Phase 5  Return to Phase 3 until user says "done"

Phase 1: Parse Test Document

User provides a Feishu document URL. Use lark-cli docs +fetch --doc <URL> --format pretty to pull full text, then extract:

Config ItemUsually Found In
Test topic / scopeTitle + opening paragraphs
Code repository (GitHub URL)"Reference repo" / "Code repository" section, or GitHub link in body
Staging URL"Test environment" / "Access URL" section
Issue collection Bitable"Issue collection" / "Bug list" section with mcnnox2fhjfq.feishu.cn/wiki/...?table=tbl... or /base/...?table=tbl...

If user only gives a Bitable URL without a document: identify the product (see auto-detection rules below), use the config from references/bitable-bases.md, and ask user for the staging URL if not found in the Bitable first record.

Auto-detect Current Product

Use these signals to determine which product, and therefore which repo + Bitable to use:

SignalProductRepositoryBitable
URL contains cse-admin-staging.cherry-ai.com / enterprise-api / "SaaS" / "Enterprise"Enterprise / SaaS<ENTERPRISE_REPO>IJQPbTzZhaObMQsuL5OcbaoBnag / tbl20SIk4B78Ydpg
Mentions "client" / "desktop" / ElectronDesktop Client<DESKTOP_REPO>AdeDbC9VgaNkrEsXtk5cTMarn2e / tbl7eUvrbfM7XFqg
Neither clearAsk user——

Known config details (field IDs, enum values, view shortcuts) are in references/bitable-bases.md.


Phase 2: Browser Setup

  1. tabs_context_mcp { createIfEmpty: true } to check connection
  2. If not connected → guide user to install claude-in-chrome extension (claude.com/chrome), click Connect, retry
  3. Once connected, navigate to staging URL
  4. Do a baseline capture before any bug is reported:
    • read_page --filter interactive for main interactive elements
    • read_console_messages / read_network_requests start recording
    • (Optional) note core script sources (third-party captcha / CDN / analytics)

Tool pitfalls:

  • javascript_tool may throw Cannot access a chrome-extension:// URL of different extension when page loads cross-extension iframes (e.g. Geetest). Fall back to read_page + reading source.
  • read_console_messages / read_network_requests need to be listening from page load — refresh once before reading.
  • Don't use chrome-devtools MCP debug features simultaneously — they'll conflict with claude-in-chrome for Debugger protocol access.

Phase 3: Accompany Testing Loop

User operates manually. Agent does two things:

  1. Passive observation: don't drive the user, don't click randomly
  2. On-demand support: when user says "there's a problem / can't click / error / looks wrong", immediately collect evidence

Evidence package (collect for every bug):

DimensionToolKey Points
Phenomenon descriptionUser's own wordsOne sentence + reproduction trigger
DOM stateread_page, javascript_toolCheck disabled / pointerEvents / opacity / event listeners
Console errorsread_console_messages --pattern 'error|warn|Error'Keep only error/warn, not everything
Network anomaliesread_network_requests --urlPattern '<api-prefix>'Look for 4xx/5xx/pending
ScreenshotsAsk user cmd+shift+4 to .context/attachments/, or mcp__chrome-devtools__take_screenshotRequired for error scenes; for UX issues, "current vs expected" is better
Code root causegh api / local grepIf source is available, find button enable conditions / API paths / props gates

Once evidence is complete, proceed to Phase 4.


Phase 4: Per-Bug Submission

Detailed procedure in references/submit-bug-sop.md. High-level steps (don't skip):

  1. Dedup (mandatory, see SOP Section 2)

    • Search Bitable + GitHub issues (including closed) + GitHub PRs (including merged)
    • On hit, apply 5-category disposition: identical / fixed regression / in-progress PR / related but different / unrelated
    • Show comparison table to user, wait for instruction — confirm even when no hit
  2. Assign priority (see SOP Section 3)

    • If inferable from symptoms → fill directly + brief rationale
    • If not inferable → AskUserQuestion with P0/P1/P2 options
    • Never default to P1 or guess randomly
  3. Upload screenshot to R2 (see SOP Section 4)

    upload-img <local-path>
    # Returns https://pub-a9416c5573a34388b8d9465d8bef4257.r2.dev/YYYYMMDD/filename
    
  4. Write to Feishu Bitable

    • +record-upsert required: issue title / description / category / priority / status (=pending confirmation) / submitter
    • +record-upload-attachment attach screenshot to the "Example image" field (do not stuff into upsert)
  5. Create GitHub issue

    • Title: [Bug]: <one sentence> or [Feature]: <one sentence> (based on category)
    • Body follows generic issue format: English body first (with translation disclaimer), Chinese original collapsed in <details>, screenshots embedded as <img src="..."> with R2 URLs
    • Labels: category = Bug → type: bug; = UX improvement → type: feature
  6. Report back: give user record_id, issue URL, and Bitable URL together, plus a summary: "title / category / priority / status"


Phase 5: Return to Phase 3

User continues testing. Every bug report goes through Phase 4.

When user says "done / finished / pause for today / stop" → output session summary: how many records created, how many issues filed, which regressions / in-progress PRs were identified, total time spent.


Reference Files

  • references/bitable-bases.md — Known Base tokens / table IDs / field IDs / enum values, cross-base field naming conventions
  • references/submit-bug-sop.md — Detailed submission protocol (5 dedup categories, priority rules, value formats, R2 upload, issue template)

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

ai-tutor

무료

AI 初学者导师。抓取 AI 大厂最新博客(Anthropic/OpenAI/Cursor),提炼成结构化深度精读笔记,直接存入 CherryStudio 笔记目录。笔记包含术语百科、核心原理解析(含关键图表)、学习重点、知识关联和行业简报。调用方式:/ai-tutor(默认 Anthropic),/ai-tutor openai,/ai-tutor cursor。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

CherryHQ/skills62026년 6월 29일 업데이트

标书文档分析与评估。当用户上传招标文件(.pdf/.docx/.doc/.xlsx)或明确要求「分析标书」「评估投标」「检查合规性」「标书评分」「废标风险」「技术方案评估」时使用。支持解析、评分计算、合规检查、废标风险识别,自动生成 Markdown 报告。版本 3.0

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

CherryHQ/skills62026년 6월 29일 업데이트

投标书模板填充引擎。当用户明确要求「填模板」「写标书」「出标书」「生成投标文件」「标书填充」「套模板」「做标书」,或提供了脱敏 DOCX 模板需要填充时使用。扫描模板中的占位符和虚拟文本,提取招标信息、收集投标人数据、构建替换映射、执行填充,输出可直接提交的成品标书。覆盖商务标+技术标+报价书全部章节。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

CherryHQ/skills62026년 6월 29일 업데이트

cv-expert

무료

This skill should be used when the user asks to "优化简历", "resume optimization", "简历诊断", "tailor resume to JD", "改简历", "resume review", "简历优化助手", or when the user mentions "校招", "社招", "ATS", "JD匹配", "Word批注", shares a .docx resume path alongside a job description, or wants to match their resume to a specific job posting. Also triggers on "resume expert", "HR feedback", "interview prep with resume".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

CherryHQ/skills62026년 6월 29일 업데이트

Full lifecycle expense reimbursement: single invoice intake and staging, batch aggregation to generate reimbursement drafts, approval workflow, ledger and dashboard. Trigger when user mentions reimbursement, expenses, invoices, travel reimbursement, approval workflow, or needs to organize / verify / approve expense records. Also applies when user needs to enter invoices, view reimbursement dashboards, ledgers, or compliance checks.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

CherryHQ/skills62026년 6월 29일 업데이트

面试复盘 skill(求职者视角)。把一次已结束的面试,从「文字记录」沉淀成结构化复盘:逐题诊断 + 5 维评分 + 更优回答范本 + 下一场准备清单,最终产出一份飞书复盘文档。当用户说"面试复盘"、"复盘一下面试"、"刚面完 XX 帮我盘下"、"这场面试哪答崩了"、"面试问答记录帮我分析"时触发。区别于 resume-optimizer / cv-expert(面试前优化简历),本 skill 处理「面完之后」。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

CherryHQ/skills62026년 6월 29일 업데이트

CherryHQ의 스킬 모두 보기

이 스킬의 문제 신고