Agent Skills › hackerai-tech/hackerai › hackerai-desktop-qa

hackerai-desktop-qa

GitHub

用于在HackerAI原生桌面应用中进行自动化QA验收测试。通过Computer Use操作隔离的QA构建版,验证本地命令执行、沙箱传输及功能可用性,支持生成授权演示证据,确保桌面端功能符合发布标准。

.agents/skills/hackerai-desktop-qa/SKILL.md hackerai-tech/hackerai

触发场景

需要进行桌面应用的功能验收测试 准备授权的桌面端内部演示

安装

npx skills add hackerai-tech/hackerai --skill hackerai-desktop-qa -g -y
更多选项

非标准路径

npx skills add https://github.com/hackerai-tech/hackerai/tree/main/.agents/skills/hackerai-desktop-qa -g -y

不安装直接使用

npx skills use hackerai-tech/hackerai@hackerai-desktop-qa

指定 Agent (Claude Code)

npx skills add hackerai-tech/hackerai --skill hackerai-desktop-qa -a claude-code -g -y

安装 repo 全部 skill

npx skills add hackerai-tech/hackerai --all -g -y

预览 repo 内 skill

npx skills add hackerai-tech/hackerai --list

SKILL.md

Frontmatter
{
    "name": "hackerai-desktop-qa",
    "description": "Operate and verify HackerAI in the actual native Desktop app through Computer Use, with isolated QA builds, environment identity, findings, downloads, and recovery evidence. Use for Desktop acceptance or preparing an authorized in-app demo."
}

HackerAI Desktop QA

This is developer tooling; it adds no product UI or runtime endpoint. It does not grant access to Production, authorize scans, or replace human release gates. The skill is versioned in this repository, not a private credential store.

Select the surface and scope

Read the checkout's AGENTS.md and Desktop acceptance runbook. Use the actual native app for native commands, sandbox transport, or Save dialogs. Prefer a verified Vercel Preview for web-only changes. A local native shell can load that Preview when its auth, CSP and remote capabilities support it; keep those results distinct from a fully local backend/worker test. If a local frontend is needed, finish building it before starting acceptance. Avoid another watcher or build just to take screenshots.

For an explicitly authorized Production demo, use the installed Production app and verify the signed-in account first. Preserve existing data. Prefer synthetic examples labeled Demo, with a fictional .invalid target and an explicit synthetic-evidence disclosure. Do not claim a real vulnerability was verified. Do not launch a QA build against Production as a fallback for blocked auth.

Prepare and inspect

Use the QA runner to check a pinned native executable, start it, optionally serve an existing local frontend build, and collect local diagnostics. Reuse a suitable task-owned build; rebuild after native changes. The runner does not install dependencies, build, provision Convex, start a worker/relay, or copy credentials. Follow the runbook for those operations only when needed.

Use the safe local diagnostics for additional process health or browser login state. Do not dump process arguments, environments, or full authentication pages. Browser diagnostics do not establish native WebView authentication.

Record the tested source revision and binary hash. Independently establish the backend account/project/deployment and matching worker environment/branch before using external test services. Configured identity and TCP reachability are not proof of the backend or worker serving a run. Verify the actual frontend in the native WebView, selected account, worker run and sandbox transport.

Computer Use navigation

  • Select the exact QA app path/window, not the installed app with a similar title. Read fresh accessibility state after actions; do not retain numeric element IDs between observations or hard-code screenshot coordinates across builds.
  • Confirm the account through the user menu. A browser login is not a native WebView login. Never copy browser cookies or credentials into the app.
  • Start a disposable chat. Preserve any unsent composer draft before replacing it. Select the intended Ask/Agent mode and This computer / Desktop sandbox.
  • Use a bounded harmless command such as printf 'DESKTOP_QA_OK\n'. Verify its tool result and actual transport; the selector alone is insufficient.
  • Use Findings, Search findings, and the category/status/severity filters. Open a finding from its title. Detail should expose severity, evidence, reproduction, remediation and source-message navigation. Use the current AX labels as authoritative if wording changes.
  • For findings changes, exercise create/list/get/update via the Agent's tools. Improve the same finding and check stable ID/creation time, no duplication, stale-update rejection, missing evidence, and cross-chat authorization as relevant. Keep test target and request budget within the user's authorization.
  • For Download report, cancel once, save through the native dialog, then inspect the actual saved Markdown and compare code, links, evidence and updated remediation. A dismissed dialog is not proof that the file was saved.

Recovery and evidence

When the Mac is locked or login/2FA needs a human, explain that exact blocker. Do not loop on passkey failures, disable protections, or call browser/cloud success native acceptance. If a window stops responding, inspect the runner's health and lifecycle status before restarting. Reload using a control or shortcut confirmed by the current UI; do not assume browser shortcuts exist in Tauri. Only stop/relaunch the task-owned QA session. Preserve run/chat IDs so reconnect can be checked for retained results and duplicate writes.

Record observed run status and transport with desktop:qa record; label it as operator-observed evidence, not backend telemetry. Capture relevant completion, error, recovery, normal/narrow layout and download states through Computer Use. Collapse the sidebar or filter demo data when preparing a screenshot; keep synthetic disclosures visible and omit account menus, credentials and unrelated customer content. Restore drafts and window dimensions when appropriate.

Report PASS/FAIL/BLOCKED per requested check with artifacts and defect steps. Distinguish native/local, native/Preview, browser/cloud and Production evidence. Stop each runner-owned session with desktop:qa stop; handle externally started services separately from their own task ownership records. Retain useful partial work and list anything intentionally left running. A successful runner launch, unit test or screenshot does not establish end-to-end acceptance or authorize merging, publication or release.

版本历史

  • 6e0b7cd 当前 2026-11-03 02:32

    新增安全的进程和登录状态诊断辅助工具,支持多行环境密钥的进程夹具测试。

  • abf4fe2 2026-10-19 09:36

同 Skill 集合

.agents/skills/hackerai-retention-analysis/SKILL.md
.agents/skills/hackerai-test-quality/SKILL.md
.agents/skills/logging-best-practices/SKILL.md
.agents/skills/trigger-agents/SKILL.md
.agents/skills/trigger-config/SKILL.md
.agents/skills/trigger-cost-savings/SKILL.md
.agents/skills/trigger-realtime/SKILL.md
.agents/skills/trigger-setup/SKILL.md
.agents/skills/trigger-tasks/SKILL.md
.agents/skills/vercel-composition-patterns/SKILL.md
.agents/skills/vercel-react-best-practices/SKILL.md
.agents/skills/web-design-guidelines/SKILL.md
.github/skills/vercel-react-best-practices/SKILL.md
.github/skills/web-design-guidelines/SKILL.md
.agents/skills/hackerai-user-research/SKILL.md

元信息

文件数
0
版本
6e0b7cd
Hash
562be987
收录时间
2026-10-19 09:36

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.156.0. UTC+08:00, 2026-11-06 06:36
浙ICP备14020137号-1