parse-error-logs
Parse build errors, test failures, type-check output, and validation logs into structured data. Use when processing npm/pnpm output, TypeScript errors, Jest failures, or any validation command results for quality gates.
Best use case
parse-error-logs is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Parse build errors, test failures, type-check output, and validation logs into structured data. Use when processing npm/pnpm output, TypeScript errors, Jest failures, or any validation command results for quality gates.
Teams using parse-error-logs should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/parse-error-logs/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How parse-error-logs Compares
| Feature / Agent | parse-error-logs | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Parse build errors, test failures, type-check output, and validation logs into structured data. Use when processing npm/pnpm output, TypeScript errors, Jest failures, or any validation command results for quality gates.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
SKILL.md Source
# Parse Error Logs
Parse error and validation output from various tools into structured, actionable data.
## When to Use
- Quality gate validation (type-check, build, tests)
- Parse TypeScript compiler errors
- Extract test failure information
- Process npm/pnpm command output
- Summarize validation results
- Feed error data to bug-fixer or other workers
## Instructions
### Step 1: Receive Raw Output
Accept raw command output as input.
**Expected Input**:
- `output`: String (raw stdout/stderr from command)
- `type`: String (typescript|jest|npm|build|generic)
### Step 2: Identify Error Patterns
Detect error patterns based on type.
**TypeScript Patterns**:
```
error TS2322: Type 'string' is not assignable to type 'number'.
src/file.ts(10,5): error TS2322
```
**Jest Patterns**:
```
FAIL src/test.spec.ts
● Test Suite › test name
Expected: 5
Received: 3
```
**npm/pnpm Patterns**:
```
ERR! code ENOENT
ERR! syscall open
ERR! path /path/to/file
```
**Build Patterns**:
```
ERROR in ./src/file.ts
Module not found: Error: Can't resolve 'module'
```
### Step 3: Extract Error Details
Parse each error into structured format.
**For Each Error Extract**:
- `file`: File path (if available)
- `line`: Line number (if available)
- `column`: Column number (if available)
- `code`: Error code (e.g., "TS2322", "ENOENT")
- `message`: Error message
- `severity`: error|warning|info
- `type`: Classification (type-error, test-failure, dependency, etc.)
### Step 4: Categorize and Count
Group errors by type and count occurrences.
**Categories**:
- Type errors
- Test failures
- Dependency issues
- Build errors
- Linting errors
- Runtime errors
### Step 5: Return Structured Data
Return complete error analysis.
**Expected Output**:
```json
{
"success": false,
"totalErrors": 15,
"totalWarnings": 3,
"summary": {
"typeErrors": 8,
"testFailures": 5,
"buildErrors": 2
},
"errors": [
{
"file": "src/utils.ts",
"line": 42,
"column": 10,
"code": "TS2322",
"message": "Type 'string' is not assignable to type 'number'",
"severity": "error",
"type": "type-error"
}
],
"warnings": [
{
"file": "src/deprecated.ts",
"line": 15,
"code": "TS6133",
"message": "'oldFunction' is declared but never used",
"severity": "warning",
"type": "unused-variable"
}
]
}
```
## Error Handling
- **Empty Output**: Return success with zero errors
- **Unrecognized Format**: Return generic parse with raw message
- **Partial Parse**: Include what was parsed, note unparsable lines
- **Invalid Type**: Warn and default to "generic" parsing
## Examples
### Example 1: TypeScript Errors
**Input**:
```json
{
"output": "src/app.ts(10,5): error TS2322: Type 'string' is not assignable to type 'number'.\nsrc/utils.ts(25,12): error TS2304: Cannot find name 'undefined'.",
"type": "typescript"
}
```
**Output**:
```json
{
"success": false,
"totalErrors": 2,
"totalWarnings": 0,
"summary": {
"typeErrors": 2
},
"errors": [
{
"file": "src/app.ts",
"line": 10,
"column": 5,
"code": "TS2322",
"message": "Type 'string' is not assignable to type 'number'",
"severity": "error",
"type": "type-error"
},
{
"file": "src/utils.ts",
"line": 25,
"column": 12,
"code": "TS2304",
"message": "Cannot find name 'undefined'",
"severity": "error",
"type": "type-error"
}
],
"warnings": []
}
```
### Example 2: Jest Test Failures
**Input**:
```json
{
"output": "FAIL src/utils.test.ts\n ● Math › addition\n expect(received).toBe(expected)\n Expected: 5\n Received: 3\n at Object.<anonymous> (src/utils.test.ts:10:15)",
"type": "jest"
}
```
**Output**:
```json
{
"success": false,
"totalErrors": 1,
"totalWarnings": 0,
"summary": {
"testFailures": 1
},
"errors": [
{
"file": "src/utils.test.ts",
"line": 10,
"column": 15,
"code": null,
"message": "expect(received).toBe(expected) - Expected: 5, Received: 3",
"severity": "error",
"type": "test-failure",
"testName": "Math › addition"
}
],
"warnings": []
}
```
### Example 3: Successful Build
**Input**:
```json
{
"output": "✓ Built successfully\nCompleted in 2.3s",
"type": "build"
}
```
**Output**:
```json
{
"success": true,
"totalErrors": 0,
"totalWarnings": 0,
"summary": {},
"errors": [],
"warnings": []
}
```
### Example 4: Mixed Errors and Warnings
**Input**:
```json
{
"output": "Warning: React Hook useEffect has a missing dependency\nerror TS2339: Property 'foo' does not exist on type 'Bar'",
"type": "typescript"
}
```
**Output**:
```json
{
"success": false,
"totalErrors": 1,
"totalWarnings": 1,
"summary": {
"typeErrors": 1,
"lintWarnings": 1
},
"errors": [
{
"code": "TS2339",
"message": "Property 'foo' does not exist on type 'Bar'",
"severity": "error",
"type": "type-error"
}
],
"warnings": [
{
"message": "React Hook useEffect has a missing dependency",
"severity": "warning",
"type": "lint-warning"
}
]
}
```
## Validation
- [ ] Parses TypeScript errors correctly
- [ ] Parses Jest test failures
- [ ] Parses npm/pnpm errors
- [ ] Parses build errors
- [ ] Extracts file, line, column when available
- [ ] Categorizes errors by type
- [ ] Returns summary counts
- [ ] Handles successful output (zero errors)
- [ ] Handles mixed errors and warnings
## Supporting Files
- `patterns.json`: Regex patterns for common error formatsRelated Skills
process-logs
Process error logs from admin panel - fetch new errors, analyze, create tasks, fix, and mark resolved
parse-package-json
Extract version, dependencies, and metadata from package.json files. Use when needing project version, dependency list, or package metadata for releases, audits, or reports.
parse-git-status
Parse git status output into structured data showing staged, modified, and untracked files. Use for pre-flight validation, checking clean working directory, or listing changed files before commits.
Beads Issue Tracking Skill
> **Attribution**: [Beads](https://github.com/steveyegge/beads) by [Steve Yegge](https://github.com/steveyegge)
webapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
validate-report-file
Validate that worker-generated reports have all required sections and proper formatting. Use in quality gates, for report completeness checking, or when debugging missing report sections.
validate-plan-file
Validate that orchestrator plan files conform to expected JSON schema. Use before workers read plan files or after orchestrators create them to ensure proper structure and required fields.
ux-researcher-designer
UX research and design toolkit for Senior UX Designer/Researcher including data-driven persona generation, journey mapping, usability testing frameworks, and research synthesis. Use for user research, persona creation, journey mapping, and design validation.
ui-design-system
UI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.
theme-factory
Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
setup-knip
Install and configure Knip for dead code detection. Use before running dead-code-hunter or dependency-auditor to ensure Knip is available. Handles installation, configuration creation, and validation.