Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计提醒

bug-hunter错误猎人

Agent Skill

bug-hunter 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,632

周安装

68

GitHub Stars

35,665

下载量

544
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:bug-hunter(错误猎人)
来源仓库:https://github.com/sickn33/antigravity-awesome-skills
仓库路径:skills/bug-hunter
安装命令:
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill bug-hunter
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill bug-hunter

简介

用于错误猎人相关研究检索的技能。bug-hunter 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词快速定位候选结果。
  • 通过 npx skills add 命令从 GitHub 仓库安装使用。
  • 建议结合原始 README 继续核验具体用法。
  • 安装前需确认权限范围和是否触发文件操作。

SKILL.md

Bug Hunter

Systematically hunt down and fix bugs using proven debugging techniques. No guessing—follow the evidence.

When to Use This Skill

  • User reports a bug or error
  • Something isn't working as expected
  • User says "fix the bug" or "debug this"
  • Intermittent failures or weird behavior
  • Production issues need investigation

The Debugging Process

1. Reproduce the Bug

First, make it happen consistently:

1. Get exact steps to reproduce
2. Try to reproduce locally
3. Note what triggers it
4. Document the error message/behavior
5. Check if it happens every time or randomly

If you can't reproduce it, gather more info:

  • What environment? (dev, staging, prod)
  • What browser/device?
  • What user actions preceded it?
  • Any error logs?

2. Gather Evidence

Collect all available information:

Check logs:

# Application logs
tail -f logs/app.log

# System logs
journalctl -u myapp -f

# Browser console
# Open DevTools → Console tab

Check error messages:

  • Full stack trace
  • Error type and message
  • Line numbers
  • Timestamp

Check state:

  • What data was being processed?
  • What was the user trying to do?
  • What's in the database?
  • What's in local storage/cookies?

3. Form a Hypothesis

Based on evidence, guess what's wrong:

"The login times out because the session cookie
expires before the auth check completes"

"The form fails because email validation regex
doesn't handle plus signs"

"The API returns 500 because the database query
has a syntax error with special characters"

4. Test the Hypothesis

Prove or disprove your guess:

Add logging:

console.log('Before API call:', userData);
const response = await api.login(userData);
console.log('After API call:', response);

Use debugger:

debugger; // Execution pauses here
const result = processData(input);

Isolate the problem:

// Comment out code to narrow down
// const result = complexFunction();
const result = { mock: 'data' }; // Use mock data

5. Find Root Cause

Trace back to the actual problem:

Common root causes:

  • Null/undefined values
  • Wrong data types
  • Race conditions
  • Missing error handling
  • Incorrect logic
  • Off-by-one errors
  • Async/await issues
  • Missing validation

Example trace:

Symptom: "Cannot read property 'name' of undefined"
↓
Where: user.profile.name
↓
Why: user.profile is undefined
↓
Why: API didn't return profile
↓
Why: User ID was null
↓
Root cause: Login didn't set user ID in session

6. Implement Fix

Fix the root cause, not the symptom:

Bad fix (symptom):

// Just hide the error
const name = user?.profile?.name || 'Unknown';

Good fix (root cause):

// Ensure user ID is set on login
const login = async (credentials) => {
  const user = await authenticate(credentials);
  if (user) {
    session.userId = user.id; // Fix: Set user ID
    return user;
  }
  throw new Error('Invalid credentials');
};

7. Test the Fix

Verify it actually works:

1. Reproduce the original bug
2. Apply the fix
3. Try to reproduce again (should fail)
4. Test edge cases
5. Test related functionality
6. Run existing tests

8. Prevent Regression

Add a test so it doesn't come back:

test('login sets user ID in session', async () => {
  const user = await login({ email: 'test@example.com', password: 'pass' });

  expect(session.userId).toBe(user.id);
  expect(session.userId).not.toBeNull();
});

Debugging Techniques

Binary Search

Cut the problem space in half repeatedly:

// Does the bug happen before or after this line?
console.log('CHECKPOINT 1');
// ... code ...
console.log('CHECKPOINT 2');
// ... code ...
console.log('CHECKPOINT 3');

Rubber Duck Debugging

Explain the code line by line out loud. Often you'll spot the issue while explaining.

Print Debugging

Strategic console.logs:

console.log('Input:', input);
console.log('After transform:', transformed);
console.log('Before save:', data);
console.log('Result:', result);

Diff Debugging

Compare working vs broken:

  • What changed recently?
  • What's different between environments?
  • What's different in the data?

Time Travel Debugging

Use git to find when it broke:

git bisect start
git bisect bad  # Current commit is broken
git bisect good abc123  # This old commit worked
# Git will check out commits for you to test

Common Bug Patterns

Null/Undefined

// Bug
const name = user.profile.name;

// Fix
const name = user?.profile?.name || 'Unknown';

// Better fix
if (!user || !user.profile) {
  throw new Error('User profile required');
}
const name = user.profile.name;

Race Condition

// Bug
let data = null;
fetchData().then(result => data = result);
console.log(data); // null - not loaded yet

// Fix
const data = await fetchData();
console.log(data); // correct value

Off-by-One

// Bug
for (let i = 0; i <= array.length; i++) {
  console.log(array[i]); // undefined on last iteration
}

// Fix
for (let i = 0; i < array.length; i++) {
  console.log(array[i]);
}

Type Coercion

// Bug
if (count == 0) { // true for "", [], null

// Fix
if (count === 0) { // only true for 0

Async Without Await

// Bug
const result = asyncFunction(); // Returns Promise
console.log(result.data); // undefined

// Fix
const result = await asyncFunction();
console.log(result.data); // correct value

Debugging Tools

Browser DevTools

Console: View logs and errors
Sources: Set breakpoints, step through code
Network: Check API calls and responses
Application: View cookies, storage, cache
Performance: Find slow operations

Node.js Debugging

// Built-in debugger
node --inspect app.js

// Then open chrome://inspect in Chrome

VS Code Debugging

// .vscode/launch.json
{
  "type": "node",
  "request": "launch",
  "name": "Debug App",
  "program": "${workspaceFolder}/app.js"
}

When You're Stuck

  1. Take a break (seriously, walk away for 10 minutes)
  2. Explain it to someone else (or a rubber duck)
  3. Search for the exact error message
  4. Check if it's a known issue (GitHub issues, Stack Overflow)
  5. Simplify: Create minimal reproduction
  6. Start over: Delete and rewrite the problematic code
  7. Ask for help (provide context, what you've tried)

Documentation Template

After fixing, document it:

## Bug: Login timeout after 30 seconds

**Symptom:** Users get logged out immediately after login

**Root Cause:** Session cookie expires before auth check completes

**Fix:** Increased session timeout from 30s to 3600s in config

**Files Changed:**
- config/session.js (line 12)

**Testing:** Verified login persists for 1 hour

**Prevention:** Added test for session persistence

Key Principles

  • Reproduce first, fix second
  • Follow the evidence, don't guess
  • Fix root cause, not symptoms
  • Test the fix thoroughly
  • Add tests to prevent regression
  • Document what you learned

Related Skills

  • @systematic-debugging - Advanced debugging
  • @test-driven-development - Testing
  • @codebase-audit-pre-push - Code review

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.73%
按下载量换算194

Claude

31.85%
按下载量换算173

Cursor

19.25%
按下载量换算105

Gemini CLI

8.91%
按下载量换算48

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills