reproduce-bug-report

Khởi chạy các tác nhân đám mây Oz với khả năng sử dụng máy tính để tái tạo các báo cáo lỗi tập trung vào giao diện người dùng, thu thập bằng chứng trực quan và báo cáo kết quả tái tạo. Sử dụng khi điều tra một lỗi tương tác hoặc trực quan cụ thể từ một vấn đề, ticket, báo cáo hỗ trợ hoặc prompt.

npx skills add https://github.com/warpdotdev/common-skills --skill reproduce-bug-report

Reproduce bug report

Use this skill when the current context is a GitHub issue, support report, Linear ticket, or user prompt describing a specific bug that may be reproduced through visible application behavior. It is primarily for UI, rendering, windowing, settings, editor, terminal-display, onboarding, or other interactive bugs where a screen recording (or screenshots) makes the result more actionable.

The parent agent should not try to manually reproduce the UI bug locally unless the user explicitly asks. Launch one or more Oz cloud agents with computer use enabled so they can run the relevant app, interact with it, and capture visual evidence.

Parent workflow

  1. Read the bug report carefully and extract:
    • reported behavior
    • expected behavior
    • reproduction steps, if provided
    • OS, app version/build/channel, shell, feature flags, account state, or other environment constraints when relevant
    • attached screenshots, videos, logs, or comments that narrow the repro path
  2. Decide whether this skill applies:
    • Use it for UI-visible bugs, interaction bugs, rendering/layout bugs, onboarding bugs, and bugs where a screen recording (or screenshots) would be useful.
    • Do not use it for purely backend, CI, build, dependency, or text-only code issues unless the prompt specifically asks for visual reproduction.
    • If the report requires credentials, private account state, or another capability not available to the repro environment, report that constraint clearly instead of guessing.
  3. If the reproduction path is straightforward, launch one Oz cloud agent with computer use.
  4. If there are multiple plausible repro paths, launch several Oz cloud agents in one run_agents batch. Give each child a distinct hypothesis or environment variant, such as:
    • different OS or desktop environment
    • fresh first-run state vs an already-initialized local state
    • stable vs dev build
    • fresh settings vs existing settings
    • different shells, prompts, pane layouts, or settings toggles
  5. If steps are incomplete, use codebase knowledge to propose likely app states and assign children to investigate those states. Do not invent facts about the original reporter's environment.
  6. Wait for all children to report before summarizing. Distinguish confirmed reproduction, partial reproduction, non-reproduction, blockers, and untested hypotheses.

Version and app setup

  • Prefer reproducing against the exact app version/build/channel reported by the user when a suitable runnable artifact exists.
  • Do not silently substitute the latest available build when a closer reporter-matched artifact can be installed.
  • Prefer a released or packaged runnable artifact over a source build when that better matches the reporter's environment and the repository-specific guidance allows it.
  • If the exact version/build cannot be found or installed, report that clearly, explain what was attempted, and use the closest justified fallback only when it is useful for continuing the investigation.
  • Record the requested reporter version, the installed test version, the artifact source, and any fallback decision in the manifest and final report.

Repository-specific guidance

The consuming repository may ship a companion reproduce-bug-report-local skill. When that companion is available or referenced in the prompt, read it and apply its repository-specific scope, app setup, environment, and workflow guidance as supplemental instructions. The local companion may narrow scope or specialize setup, but it should not redefine the evidence, artifact, reporting, or safety expectations in this core skill.

Use a run_agents call shaped like this:

summary: Launching Oz cloud computer-use agents to reproduce the reported UI bug and capture a screen recording.
remote.computer_use_enabled: true
agent_run_configs:
- name: "repro-primary"
  prompt: the primary repro prompt
- name: "repro-variant"
  prompt: optional variant prompt when useful
base_prompt: the shared child prompt below

Omit extra children when they would duplicate the same steps. Omit model_id unless the user requested a specific model.

Shared child prompt

Give every child agent these shared instructions, then append the child-specific repro path or hypothesis.

You are trying to reproduce a reported UI bug using Oz cloud computer use.

Goal:
- Reproduce the reported behavior as faithfully as possible.
- Capture a screen recording of the reproduction by default; most UI bugs involve motion, a transition, or a multi-step interaction, so a clip is stronger proof than stills. Capture screenshots as a supplement, or as the primary artifact only for a genuinely static render.
- If the provided steps are unclear or incomplete, use codebase and product knowledge to identify plausible app states that could produce the reported behavior, then test the assigned hypothesis.
- Report clear reproduction evidence, not just opinions.

Inputs:
- Bug report context: <paste or summarize the issue body, comments, screenshots/video descriptions, labels, and relevant metadata>
- Assigned repro path or hypothesis: <specific steps, environment, app state, settings, feature flags, or code path to test>
- Reporter app version/build/channel: <exact value from the report, or unknown>
- Build/app target: <exact runnable artifact to install, or the justified fallback if exact artifact is unavailable>

Safety and privacy:
- Do not ask the public reporter for credentials, tokens, private repos, private workspace names, or private account identifiers.
- Do not include secrets, auth tokens, private URLs, Authorization headers, refresh tokens, or other private account details in recordings, screenshots, logs, manifests, or final reports.
- Do not create or sign into an account unless the prompt and repository-specific guidance explicitly authorize a safe test-auth workflow.
- If the assigned report cannot be exercised within the allowed auth/state constraints, stop and report the blocker.
- Do not post comments to GitHub, Linear, or external services unless explicitly instructed. When a Slack thread context is provided (a channel id and thread), post the reproduction proof (the recording) back to that thread so the requester sees it; do not post to any other channel or service.
- Avoid destructive actions. If a repro requires deleting app state, delete only test state for the current repro environment and report exactly what was reset.

Artifact workflow:
- Create a dedicated artifact directory named for your variant, such as `~/bug-repro-primary`.
- Record a screen recording of the reproduction by default and save it in the artifact directory with a descriptive name such as `repro.mp4`.
- Capture screenshots as a supplement (or as the primary artifact only for a genuinely static render) with ordered filenames, such as `01-initial-state.png`, `02-before-click-settings.png`, and `03-after-click-settings.png`.
- Maintain a short manifest in the artifact directory with:
  - recording or screenshot filename
  - timestamp
  - visible app state
  - action just taken or about to be taken
  - whether the screenshot shows the reported bug
- If the harness supports built-in screenshot or artifact upload, use it. Otherwise leave artifacts in the directory and report the paths.

Reproduction workflow:
1. Confirm the environment you are testing: OS, architecture, display/session type, shell if relevant, and app/build/version if visible.
2. Identify the exact reporter app version/build/channel from the report when available, then use the closest repository-approved runnable artifact.
3. If no exact reporter version is available, record that the version is unknown and choose the most defensible install target for the report; state the fallback explicitly.
4. Start from the cleanest state that matches the report. Do not reset app state if the bug depends on existing settings or persisted local state.
5. Reach the baseline app state required by the report before attempting the bug-specific reproduction.
6. Start the screen recording and capture a baseline screenshot before attempting the bug-specific reproduction.
7. Follow the exact provided bug reproduction steps first, when available.
8. If exact steps do not reproduce, test the assigned hypothesis and document where it diverges from the report.
9. If the bug appears, stop changing variables and capture enough evidence to make the reproduction actionable.
10. If the bug does not appear, make at most two targeted variations that are directly supported by the report or code-path hypothesis.
11. If the app crashes, hangs, or blocks progress, capture a screenshot and collect non-sensitive logs or terminal output that explain the blocker.

Code-path investigation for unclear steps:
- Search the codebase for UI strings, labels, feature names, settings keys, telemetry names, route names, and components mentioned in the report.
- Identify the likely component, model, feature flag, or state transition that could produce the reported behavior.
- Use that investigation to choose targeted UI actions rather than broad exploratory clicking.
- Report the files or symbols that informed your hypothesis, but keep the final report focused on reproduction evidence.

Report back:
- A brief bug summary before the verdict, including the issue/report identifier if available, the reported behavior, and the expected behavior.
- Reproduction status: confirmed, partially confirmed, not reproduced, or blocked.
- The exact steps you performed.
- Environment and app/build information.
- Reporter-requested app version/build/channel, installed test version/build/channel, and the artifact source or fallback explanation.
- Whether the observed behavior matched the report, and how closely.
- The screen recording (and any supplementary screenshots) with short descriptions and artifact paths or attachment names.
- Any logs, crash output, or diagnostics collected, with secrets redacted.
- The most likely code path or state involved, if investigated.
- Suggested next debugging step or follow-up question, only if it would materially change the next action.

Child prompt patterns

Primary repro child

Use this for a report with clear steps:

You own the primary reproduction attempt.

Follow the bug report's steps exactly before trying variants. Prioritize matching the reporter's OS, app channel, allowed app state, settings, shell, and layout. If those details are missing, choose the most common path and explicitly list assumptions.

Variant child

Use this when there is a specific alternate condition worth testing:

You own this reproduction variant: <variant name>.

Test only this variant's assigned environment or state. Do not duplicate the primary child's full search space. Report whether this variant changes the outcome and include screenshots for any difference.

Code-path hypothesis child

Use this when repro steps are missing or ambiguous:

You own code-path-guided reproduction.

Start by tracing likely code paths from strings, UI labels, settings names, feature names, or screenshots in the report. Then choose a targeted UI path that should exercise the suspected state. Report the code paths you used to form the hypothesis and the visual result of testing it.

Success criteria

A successful use of this skill produces:

  • A confirmed reproduction with a screen recording (and screenshots where useful) and exact steps, or a well-scoped non-reproduction with tested assumptions.
  • Clear artifact paths or attachments for visual evidence.
  • A concise summary of which variants were tested and which were not.
  • Enough environment detail for an engineer to repeat the test.
  • No leaked secrets, credentials, private account details, or unnecessary public comments.

Summary format

When the children finish, summarize in this structure:

Bug summary:
- Issue/report: <identifier or source>
- Reported behavior: <what bug the child attempted to reproduce>
- Expected behavior: <what should have happened instead>
Reproduction status: <confirmed | partially confirmed | not reproduced | blocked>

What was tested:
- <variant/child>: <steps and environment>

Evidence:
- <screenshot/artifact path>: <what it shows>

Findings:
- <observed behavior vs reported behavior>
- <likely state/code path, if known>

Next step:
- <one concrete debugging action or follow-up question>

Thêm skills từ warpdotdev

council
warpdotdev
Chạy một hội đồng phụ trợ đa dạng mô hình để điều tra cùng một vấn đề từ nhiều góc nhìn, so sánh các phát hiện và đưa ra khuyến nghị cuối cùng. Sử dụng kỹ năng này bất cứ khi nào người dùng yêu cầu một hội đồng, ý kiến thứ hai, nhiều tác nhân/mô hình để đánh giá một câu hỏi, điều tra song song, so sánh đội đỏ/đội xanh, hoặc trợ giúp quyết định giữa các phương pháp kỹ thuật cạnh tranh.
researchcommunicationproject-management
spec-driven-implementation
warpdotdev
Thúc đẩy quy trình làm việc theo hướng đặc tả trước cho các tính năng lớn bằng cách viết PRODUCT.md trước khi triển khai, viết TECH.md khi cần thiết, và cập nhật cả hai đặc tả khi quá trình triển khai phát triển. Sử dụng khi bắt đầu một tính năng quan trọng, lên kế hoạch triển khai do tác nhân điều khiển, hoặc khi người dùng muốn kiểm tra các đặc tả sản phẩm và kỹ thuật vào hệ thống quản lý mã nguồn.
developmentdocumentproject-management
review-pr
warpdotdev
Xem xét diff của pull request và viết phản hồi có cấu trúc vào review.json để quy trình làm việc xuất bản. Sử dụng khi xem xét một PR đã checkout từ các tạo phẩm cục bộ như pr_diff.txt và pr_description.txt và tạo đầu ra đánh giá có thể đọc bằng máy thay vì đăng trực tiếp lên GitHub.
code-reviewdevelopment
create-pr
warpdotdev
Tạo một pull request trong kho lưu trữ warp cho nhánh hiện tại. S
developmentcode-review
implement-specs
warpdotdev
Triển khai một tính năng đã được phê duyệt từ PRODUCT.md và TECH.md, giữ cho đặc tả và mã nguồn luôn đồng bộ trong cùng một PR khi quá trình triển khai tiến triển. Sử dụng sau khi đặc tả sản phẩm và kỹ thuật đã được phê duyệt và bước tiếp theo là xây dựng tính năng.
developmentcode-reviewapi
cross-critique
warpdotdev
We need to translate the given text from English to Vietnamese. The text is a description of a skill called "cross-critique". The instruction says to preserve the name "cross-critique" if it appears in the source text. It does appear: "cross-critique" is in the skill name at the top, but the instruction says "Do not include the name unless it appears in the source text." The source text inside <text> does not contain the name "cross-critique" explicitly; it only says "this skill" at the end. So we should not add the name. We just translate the text. The text: "Run a second round on a contested question by circulating each subagent's independent proposal to the other authors and asking for structured pros and cons, then synthesize. Use this skill whenever you have multiple independent proposals or opinions on a contested decision — architecture tradeoffs, code review disagreements, design choices, competing root-cause theories — and want sharper analysis than you'd produce by synthesizing alone. Pairs naturally with the council and research skills;
resolve-merge-conflicts
warpdotdev
Resolve Git merge conflicts by extracting only unresolved paths, conflict hunks, and compact diffs instead of loading whole files into context. Use when a merge, rebase, cherry-pick, or stash pop stops on conflicts, when `git status` shows unmerged paths, or when files contain conflict markers.
developmentcode-review
brandalf
warpdotdev
Hướng dẫn tạo, chỉnh sửa và xem xét các tài sản mang thương hiệu Warp hoặc Oz. Sử dụng khi làm việc trên các trang ra mắt, tài liệu, thành phần HTML/CSS, mô phỏng giao diện người dùng, lời nhắc, tài sản truyền thông xã hội, nội dung quảng cáo, bài thuyết trình hoặc bất kỳ sản phẩm có thương hiệu nào khác cần trông và nghe rõ ràng là của Warp hoặc Oz.
designcreativemarketing