Diagnose and fix Customer.io common errors. Use when troubleshooting API errors, delivery failures, campaign issues, or SDK exceptions. Trigger: "customer.io error", "customer.io not working", "debug customer.io", "customer.io 401", "customer.io 429".
80
77%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/saas-packs/customerio-pack/skills/customerio-common-errors/SKILL.mdQuality
Discovery
89%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a well-structured skill description with strong trigger terms and clear 'when' guidance, making it easy for Claude to select appropriately. Its main weakness is that the 'what' portion is somewhat general—'diagnose and fix common errors' could be more specific about the concrete actions taken (e.g., validating API keys, checking rate limits, inspecting webhook payloads). Overall it performs well for skill selection purposes.
Suggestions
Add more specific concrete actions to the 'what' portion, e.g., 'validate API keys, check rate limit headers, inspect webhook payloads, troubleshoot segment filtering logic'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | It names the domain (Customer.io) and mentions categories of issues (API errors, delivery failures, campaign issues, SDK exceptions), but doesn't list specific concrete actions like 'check API key validity', 'parse error logs', or 'retry rate-limited requests'. | 2 / 3 |
Completeness | Clearly answers both 'what' (diagnose and fix Customer.io common errors) and 'when' (explicit 'Use when' clause with troubleshooting scenarios plus a 'Trigger' section with specific phrases). | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural trigger terms users would actually say: 'customer.io error', 'customer.io not working', 'debug customer.io', plus specific error codes like '401' and '429'. Also includes broader terms like 'API errors', 'delivery failures', 'campaign issues', and 'SDK exceptions'. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive due to the specific platform focus on Customer.io. The trigger terms are platform-specific and unlikely to conflict with other skills unless there were multiple Customer.io skills. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a strong, highly actionable troubleshooting skill with excellent concrete code examples showing both wrong and correct patterns. Its main weaknesses are moderate verbosity (some explanations Claude doesn't need), lack of an overarching diagnostic workflow with verification steps, and a monolithic structure that could benefit from splitting into overview + detailed reference files.
Suggestions
Add an overarching diagnostic workflow at the top (e.g., 'Step 1: Run auth test curl → Step 2: Check status code in table → Step 3: Apply fix → Step 4: Verify fix with curl command') with explicit verification checkpoints.
Trim unnecessary context like the Prerequisites section and the 200 status code row — Claude can infer these. Remove phrases like 'it's a separate bearer token' that explain what Claude already knows.
Consider splitting the 7 detailed error patterns into a separate ERRORS_REFERENCE.md and keeping SKILL.md as a concise overview with the status table and diagnostic workflow.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Generally efficient with good use of tables and code examples, but includes some unnecessary content like the Prerequisites section (Claude knows it needs API credentials), the 200 status code row, and mild verbosity in explanations. The 'Resources' and 'Next Steps' sections are appropriate, but some inline explanations could be tighter. | 2 / 3 |
Actionability | Excellent actionability throughout — every error includes executable TypeScript code with WRONG/CORRECT patterns, concrete curl commands for diagnostics, a reusable backoff function, and a centralized error handler. Code is copy-paste ready with real library imports and realistic usage. | 3 / 3 |
Workflow Clarity | Individual error sections are clear and well-sequenced, and checklists are provided for diagnostic steps. However, there's no overarching diagnostic workflow (e.g., 'start here, then check X, then Y') and no explicit validation/feedback loops for confirming fixes worked after applying them. The skill presents errors as independent items rather than a guided troubleshooting flow. | 2 / 3 |
Progressive Disclosure | The content is well-structured with clear headers and a useful reference table up front, but it's quite long (~180 lines of substantive content) and could benefit from splitting detailed error patterns into a separate reference file. The reference to 'customerio-debug-bundle' at the end is good but no bundle files exist to support it. The HTTP status table and 7 error patterns could be organized more progressively. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
allowed_tools_field | 'allowed-tools' contains unusual tool name(s) | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
3a2d27d
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.