Getting started
Install Faultline, run it against a failed build log, and get a structured failure report. No account required.
Install
Install the CLI with the official release installer. Faultline is a Go binary downloaded from GitHub Releases, not an npm package.
$ curl -fsSL https://raw.githubusercontent.com/faultline-cli/faultline/main/install.sh | sh
To pin a specific release, set VERSION before running the installer:
$ VERSION=v0.5.0 curl -fsSL https://raw.githubusercontent.com/faultline-cli/faultline/main/install.sh | sh
Verify the installation:
$ faultline --version faultline 0.x.x
Analyze a log
Pass a failed CI log file to faultline analyze. The CLI reads the log, matches it against known failure classes, and prints a structured report.
$ faultline analyze failed.log failure_id: dependency.lockfile_drift confidence: 0.91 evidence: - npm ci rejected the lockfile - package.json and package-lock.json are out of sync suggested_fix: - regenerate the lockfile - commit package.json and package-lock.json together
You can also pipe log content directly:
$ cat failed.log | faultline analyze -
JSON output
Pass --json to get machine-readable output. This is useful for piping into scripts, posting to APIs, or integrating with Faultline Teams.
$ faultline analyze failed.log --json { "failure_id": "dependency.lockfile_drift", "confidence": 0.91, "evidence": [ "npm ci rejected the lockfile", "package.json and package-lock.json are out of sync" ], "suggested_fix": [ "regenerate the lockfile", "commit package.json and package-lock.json together" ] }
Pipe the output to jq or use it in a CI post-step:
# In a GitHub Actions workflow: - name: Classify failure if: failure() run: | faultline analyze build.log --json > failure.json cat failure.json | jq '.failure_id'
CLI flags
Common flags for faultline analyze:
| Flag | Description | Default |
|---|---|---|
| --json | Output structured JSON instead of human-readable text | false |
| --confidence | Minimum confidence threshold for a match (0–1) | 0.70 |
| --class | Filter output to a specific failure class prefix | — |
| --verbose | Show all candidate matches, not just the top result | false |
| --version | Print the CLI version and exit | — |
Next steps
Once you have a classification, here are a few things to explore: