Triage a GitHub issue using diagnostics archives and logs. An agent skill from homebridge-plugins/homebridge-eufy.

Apache-2.0Auto-check passedTesting & QA

Install Support

skills CLI
$ npx skills add homebridge-plugins/homebridge-eufy --skill support -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install homebridge-plugins/homebridge-eufy support --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/homebridge-plugins/homebridge-eufy.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/support .claude/skills/support && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
support
GitHub stars
223
Token cost
~1.7k tokens
SKILL.md length
589 words
Files
1
Skills in repo
6
Repo updated
First seen
Licence
Apache-2.0

At a glance

Triage a GitHub issue using diagnostics archives and logs. An agent skill from homebridge-plugins/homebridge-eufy.

  • Works in 10 steps: Fetch the issue → Download and decrypt diagnostics → Validate archive completeness → …
  • The user provides a GitHub issue number
  • SKILL.md covers Input, Step 1 -- Fetch the issue, Step 2 -- Download and decrypt… and Step 3 -- Validate archive…, plus 7 more sections
  • Calls gh and node; reaches github.com

What it does

Support is an agent skill from homebridge-plugins/homebridge-eufy. Triage a GitHub issue using diagnostics archives and logs. Use this skill when the user provides a GitHub issue number or URL, says "triage", "diagnose", "look at this issue", "check this bug report", or wants to analyze a diagnostics archive. Handles decryption, log analysis, device identification, root cause narrowing, label suggestions, and drafting issue comments.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering QA and bug reports and Root cause analysis. It works with GitHub and FFmpeg. The repository describes itself as: Homebridge plugin to control certain Anker Eufy devices. The licence is Apache-2.0.

When your agent uses it

  • The user provides a GitHub issue number
  • Look at this issue
  • Check this bug report
  • Wants to analyze a diagnostics archive

Example prompts

  • “triage”
  • “diagnose”
  • “look at this issue”
  • “/support”

Requirements

  • Node.js

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. Fetch the issue
  2. Download and decrypt diagnostics
  3. Validate archive completeness
  4. Check debug mode
  5. Extract environment
  6. Check config for excluded devices
  7. Confirm device presence
  8. Analyze logs
  9. Cross-reference with code
  10. Produce triage report

What it can do on your machine

Read from SKILL.md and the folder at commit 8eed8b0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Support loads about 1.7k tokens when it runs. Until then it costs about 95 tokens; SKILL.md has 589 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~95
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from homebridge-plugins/homebridge-eufy at commit 8eed8b0, republished under its Apache-2.0 licence (© homebridge-plugins). 589 words, ~1,673 tokens.

Download SKILL.mdSave it as .claude/skills/support/SKILL.md (or your agent's skills folder).
name
support
description
Triage a GitHub issue using diagnostics archives and logs. Use this skill when the user provides a GitHub issue number or URL, says "triage", "diagnose", "look at this issue", "check this bug report", or wants to analyze a diagnostics archive. Handles decryption, log analysis, device identification, root cause narrowing, label suggestions, and drafting issue comments.

Support / Issue Triage

You are a support triage agent for homebridge-eufy-security. Given a GitHub issue, you decrypt diagnostics, analyze logs, identify root causes, and draft user-facing responses.

Refer to CLAUDE.md for label recommendations, issue comment guidelines, and diagnostic triage basics.

Input

The user provides $ARGUMENTS as either:

  • A GitHub issue number (e.g. 423)
  • A GitHub issue URL (e.g. https://github.com/homebridge-plugins/homebridge-eufy-security/issues/423)

Step 1 -- Fetch the issue

bash
gh issue view <number> --repo homebridge-plugins/homebridge-eufy-security

Extract:

  • What the user reports (symptoms, expected vs actual behavior)
  • Device model/type if mentioned
  • Plugin version if mentioned
  • Whether a diagnostics archive is attached

If no diagnostics attached, draft a comment asking the user to export diagnostics with debug mode enabled and stop.

Step 2 -- Download and decrypt diagnostics

Download the .tar.gz.enc attachment, then:

bash
node scripts/decrypt-diagnostics.mjs <file>.tar.gz.enc

The script prints the archive creation date. Note if the archive is older than 90 days -- data may be stale.

Step 3 -- Validate archive completeness

List the extracted files and check what's present:

FileRequired for
accessories.jsonAll issues
eufy-security.logRuntime issues
eufy-lib.logRuntime issues
configui-server.logUI issues
configui-lib.logUI issues
ffmpeg.logStreaming/snapshot issues
ffmpeg-<serial>.logPer-camera streaming issues
ffmpeg-snapshots.logSnapshot issues
unsupported.jsonDevice support requests

Stop conditions:

  • Runtime logs missing (eufy-security.log, eufy-lib.log) -- ask user to restart Homebridge, wait for full load, re-export
  • Only accessories.json present -- archive incomplete, can only confirm device presence

Step 4 -- Check debug mode

In eufy-security.log, check the first lines:

  • Debug ON: log level DEBUG, file/line references (e.g. platform.ts:311), logger name includes version (e.g. [EufySecurity-4.4.2-beta.41])
  • Debug OFF: log level starts at INFO, no file/line refs, logger name is just [EufySecurity]

Also check config dump for "enableDetailedLogging":true.

If debug is disabled, ask the user to enable Detailed Logging in plugin settings and re-export. Label debug log missing.

Step 5 -- Extract environment

From the first lines of eufy-security.log:

  • Plugin version
  • eufy-security-client version
  • Node.js version
  • OS and architecture

HOOBS check: If the environment indicates HOOBS (storage path, OS, or user mentions it), label hoobs + wontfix, comment, and close per CLAUDE.md guidelines.

Node.js check: Plugin requires Node.js 20, 22, or 24. If on an unsupported version, note it.

PKCS1 check: Node.js 24.5+ has native PKCS1 support -- enableEmbeddedPKCS1Support workaround is unnecessary. For Node.js 20/22, the embedded fallback is still needed.

Show full SKILL.md (233 more words)Show less

Step 6 -- Check config for excluded devices

From the config dump in eufy-security.log:

  • ignoreDevices -- serial numbers excluded
  • ignoreStations -- station serials excluded
  • cleanCache -- stale accessory pruning

In accessories.json:

  • disabled: true on a station -- its devices won't load
  • ignored: true on a device -- excluded
  • unsupported: true -- device type not supported

Step 7 -- Confirm device presence

Search accessories.json for the reported device by type, model, serial, or name. Note: type, isCamera, isSmartDrop, isLock, isDoorbell, DeviceEnabled, standalone.

Step 8 -- Analyze logs

Runtime issues (eufy-security.log)
  • Device discovery: search for device name/serial, register_device
  • Discovery warnings: [DISCOVERY WARNING], [DEVICE SKIP], [STATION SKIP]
  • Accessory instantiation: Constructed, REGISTER CHARACTERISTIC, SEED
  • Service pruning: Pruning unused service
  • Property events: Property Changes, ON '...
  • Errors: Error, stack traces
Library issues (eufy-lib.log)
  • Device serial presence -- did the library load it?
  • property changed events
  • Connection/authentication errors
  • Push notification handling
Boundary determination
SymptomLayer
Device missing from eufy-lib.log or API errorseufy-security-client
Device loads in library but fails in accessory registrationhomebridge-eufy-security
P2P/push/MQTT failureseufy-security-client
HomeKit service wrong or missinghomebridge-eufy-security
Config not appliedhomebridge-eufy-security
Streaming issues

Check per-camera FFmpeg log (ffmpeg-<serial>.log) first -- it isolates that camera's stderr. Look for codec errors, resolution mismatches, connection failures.

If logs are insufficient for livestream issues, consider requesting temporary device sharing:

To validate a fix and avoid back-and-forth log exchanges, I'd need to test against an actual <device model> device. Would you be willing to temporarily share your device with the following Eufy account?

homebridge.eufy.sec@gmail.com

Please also let me know which country your account is registered in.

This is entirely optional -- no obligation. I understand sharing device access requires trust. The access would only be used for debugging and can be revoked at any time once testing is complete.

Step 9 -- Cross-reference with code

If needed, read the relevant source to confirm behavior. Use the Architecture section in CLAUDE.md to locate the right files.

Step 10 -- Produce triage report

Output:

## Triage: #<issue-number> -- <title>

### Environment
- Plugin: <version>
- eufy-security-client: <version>
- Node.js: <version>
- OS: <os>

### Root cause
<concise explanation with file:line references if applicable>

### Layer
homebridge-eufy-security / eufy-security-client / configuration issue / inconclusive

### Suggested labels
<comma-separated labels from CLAUDE.md label table>

### Suggested action
<what to do next: fix, upstream issue, request more info, close>

### Draft comment
<user-facing comment ready to post -- formal, concise, first person, simple language, no jargon>

© homebridge-plugins, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/support of homebridge-plugins/homebridge-eufy.

Open the folder on GitHubat commit 8eed8b0

Compare with similar skills

Support next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Support compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Support this skillhomebridge-plugins/homebridge-eufy223—~1.7kAutomated safety check: PassApache-2.0
Bug To Patch GeneratorArabelaTso/Skills-4-SE253—~4.4kAutomated safety check: PassApache-2.0
Evidence-Driven Testingmichaelshimeles/skills1.3k1 repos~3.9kAutomated safety check: PassNone
Dev ReportFHIR/fhir-codegen154—~4.1kAutomated safety check: PassMIT
Prp DebugWirasm/prp2.3k—~1.1kAutomated safety check: PassMIT
Prp DebugWirasm/prp2.3k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Bug To Patch Generator

    ArabelaTso/Skills-4-SE

    Generate code fixes and patches from bug reports, failing test cases, error messages, and stack traces.

    253 GitHub stars~4.4k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Evidence-Driven Testing

    michaelshimeles/skills

    Records an annotated screen recording of the agent testing an app hands-on, then posts the video and a results summary to the PR and tracker issue.

    1.3k GitHub starsUsed in 1 repo~3.9k tokens
    Testing & QAAuto-check passed
  • Dev Report

    FHIR/fhir-codegen

    Drafts and iterates on local-development bug reports in the role of a staff-level Tech Lead.

    154 GitHub stars~4.1k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Prp Debug

    Wirasm/prp

    Diagnoses a bug, error, stack trace, regression, or unexplained behavior and publishes the evidence-backed root cause to GitHub.

    2.3k GitHub stars~1.1k tokensUpdated 5 days ago
    DevelopmentAuto-check passed
  • Prp Debug

    Wirasm/prp

    Diagnoses a bug, error, stack trace, regression, or unexplained behavior and publishes the evidence-backed root cause to GitHub.

    2.3k GitHub stars~1.1k tokensUpdated 5 days ago
    DevelopmentAuto-check passed
  • Triage Issue

    softspark/ai-toolkit

    Bug triage: explores codebase for root cause, files GitHub issue with TDD fix plan.

    179 GitHub stars~1.3k tokensUpdated today
    DevelopmentAuto-check: notes

More from homebridge-plugins/homebridge-eufy

  • Developer

    homebridge-plugins/homebridge-eufy

    Execute code changes following an approved plan or direct user instructions.

    223 GitHub stars~632 tokensUpdated yesterday
    Auto-check passed
  • Planner

    homebridge-plugins/homebridge-eufy

    Build a precise, step-by-step action plan before making any code changes.

    223 GitHub stars~905 tokensUpdated yesterday
    Auto-check passed
  • QA

    homebridge-plugins/homebridge-eufy

    Verify that code changes are correct, safe, and ready to ship.

    223 GitHub stars~807 tokensUpdated yesterday
    Auto-check passed
  • Architect

    homebridge-plugins/homebridge-eufy

    Answer quick architectural questions, debug mini-issues, explore the codebase, and help improve skills and workflows.

    223 GitHub stars~817 tokensUpdated yesterday
    Auto-check passed
  • New Device Support

    homebridge-plugins/homebridge-eufy

    Full workflow to add support for a new Eufy Security device type (cameras, locks, sensors, and other devices) across eufy-security-client and homebridge-eufy-security.

    223 GitHub stars~4k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Support

What does Support do?

Triage a GitHub issue using diagnostics archives and logs. An agent skill from homebridge-plugins/homebridge-eufy. Support is an agent skill from homebridge-plugins/homebridge-eufy. Triage a GitHub issue using diagnostics archives and logs.

When should I use Support?

Support fits situations like: the user provides a GitHub issue number; look at this issue; check this bug report; wants to analyze a diagnostics archive.

How do I install Support in Claude Code?

Run `npx skills add homebridge-plugins/homebridge-eufy --skill support -a claude-code`. Or copy the skill folder (.claude/skills/support in homebridge-plugins/homebridge-eufy) into .claude/skills/support in your project. Claude Code loads it when a task matches its description.

How do I install Support in Codex?

Run `npx skills add homebridge-plugins/homebridge-eufy --skill support -a codex`. Or copy the skill folder (.claude/skills/support in homebridge-plugins/homebridge-eufy) into .agents/skills/support in your project. Codex loads it when a task matches its description.

Can I use Support in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add homebridge-plugins/homebridge-eufy --skill support -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/support, .gemini/skills/support, .github/skills/support and .opencode/skills/support in your project.

What does Support need to run?

Going by SKILL.md and its folder, Support needs the command-line tools its instructions call (gh and node). Our summary lists: Node.js.

Does Support access the network?

SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Support safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Support use?

Support is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Support use?

About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Support?

Skills that share tags, products or a category with Support: Bug To Patch Generator (ArabelaTso/Skills-4-SE, 253 stars), Evidence-Driven Testing (michaelshimeles/skills, 1.3k stars), Dev Report (FHIR/fhir-codegen, 154 stars) and Prp Debug (Wirasm/prp, 2.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Support?

homebridge-plugins (a GitHub organization) maintains it in homebridge-plugins/homebridge-eufy, which has 223 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 5, 2026.

Source: homebridge-plugins/homebridge-eufy on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.