Skip to content
Back to skills

Everr Working With Ci

ASecurity

Use when a task mentions CI, GitHub Actions, workflow runs, checks, jobs, steps, logs, build or test failures, flaky or slow CI, PR status, branch status, release pipelines, or whether a commit is green.

  • 48 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 24, 2026
ai-agentssqlgit

Works with

  • cli

Security analysis

A100/100

Scanned September 24, 2026

npx -y skills add everr-labs/everr --skill everr-working-with-ci --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Everr Working With Ci?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Everr Working With Ci
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/everr-labs-everr-working-with-ci/badge)](https://www.skillsdirectory.com/skills/everr-labs-everr-working-with-ci)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: everr-working-with-ci
description: Use when a task mentions CI, GitHub Actions, workflow runs, checks, jobs, steps, logs, build or test failures, flaky or slow CI, PR status, branch status, release pipelines, or whether a commit is green.
---

## Startup Access

Before using the everr CLI, request for the smallest sandbox access that lets Everr commands work:

- Filesystem read: `~/Library/Application Support/everr/session.json`, `~/Library/Application Support/everr/session-dev.json`, and their parent directory.
- Local network: `127.0.0.1`, `localhost`, and the ports 54318, 54320, 54418, 54420.
- Production network: `https://app.everr.dev`

If the current tool cannot ask for a blanket permission grant, request scoped command approvals before the first Everr command instead of trying a sandboxed command that is expected to fail.

# Working With CI Using Everr

Use Everr from the repository root for CI state, workflow logs, test results, and pipeline timing. Start with Everr's structured GitHub Actions data before `gh`, the GitHub UI, memory, or pasted logs.

If Everr fails, capture the exact command and error, then investigate wrong repo context, missing auth, missing import, no matching run, stale data, or CLI bugs. Use `gh` only after Everr cannot answer, or as a cross-check.

## Workflow

1. Identify the target: current branch/commit, PR branch, run id, workflow, job, or time range.
2. Check status or runs before logs: current commit with `everr ci status`, known commit with `everr ci status --commit <sha>`, known run with `everr ci status --run-id <id>`, or branch with `everr ci runs --current-branch`.
3. Drill down: run -> `everr ci show <trace_id> --failed` -> `everr ci logs <trace_id> --job-name <job> --log-failed`.
4. For flaky, slow, or repeated failures, compare history with `everr ci runs` and `everr cloud query`; one run or log is not proof.
5. If Everr errors, diagnose that failure before using `gh`.
6. Explain the signal, make or recommend the smallest fix, then watch: `everr ci watch --fail-fast` or `everr ci watch --run-id <id> --fail-fast`.

## Commands

| Need | Command |
| --- | --- |
| Current commit pipeline state | `everr ci status` |
| Known commit pipeline state | `everr ci status --commit <sha>` |
| Recent or filtered runs | `everr ci runs` |
| Jobs and steps for one run | `everr ci show <trace_id>` |
| Only failed jobs and steps | `everr ci show <trace_id> --failed` |
| Logs for a step | `everr ci logs <trace_id> --job-name <job> --step-number <n>` |
| First failed step logs | `everr ci logs <trace_id> --job-name <job> --log-failed` |
| Historical CI/test analysis | `everr cloud query "<SQL>"` |

Useful flags: `--branch`, `--current-branch`, `--conclusion`, `--workflow-name`, and `--run-id` narrow runs; `--job-id` is safer than `--job-name`; `--egrep` filters logs; `--tail`, `--limit`, and `--offset` page large logs.

## Historical Queries

Use `everr cloud query "<SQL>"` when the answer needs history, comparison, or aggregation: flaky tests, slow jobs, retries, failure rates, or "real regression?" questions. Start with `traces` for runs/jobs/steps/test spans, `logs` for step logs, and metrics tables for resource signals.

Always include a time filter, scoped repo/branch/run/workflow/job/test filters when known, and a `LIMIT` under 1000. For CI trace queries, include `ServiceName = 'github-actions'`. Do not add tenant filters or `PREWHERE`.

## Querying The Everr DB

Run read-only ClickHouse SQL with `everr cloud query "<SQL>"`. Use `SHOW TABLES`, `DESCRIBE TABLE traces`, or `DESCRIBE TABLE logs` when unsure about columns. Cloud CI data usually starts in `traces`; step log lines are in `logs`; metrics are in `metrics_gauge` and `metrics_sum`.

Everr CI follows OpenTelemetry semantic conventions where they exist. The conventions used in CI data include:
- `service.name` as `ServiceName` (`github-actions`)
- `vcs.repository.name`
- `vcs.ref.head.name`
- `vcs.ref.head.revision`
- `cicd.pipeline.name`
- `cicd.pipeline.result`
- `cicd.pipeline.run.id`
- `cicd.pipeline.task.name`
- `cicd.pipeline.task.run.id`
- `cicd.pipeline.task.run.result`
- `cicd.pipeline.task.run.url.full`
- `cicd.worker.name`

Recent run history:

```sql
SELECT
  max(Timestamp) AS last_seen,
  TraceId,
  anyLast(toString(ResourceAttributes.`cicd.pipeline.run.id`)) AS run_id,
  anyLast(toString(ResourceAttributes.`cicd.pipeline.name`)) AS workflow,
  anyLast(toString(ResourceAttributes.`vcs.ref.head.name`)) AS branch,
  anyLast(toString(ResourceAttributes.`vcs.ref.head.revision`)) AS sha,
  anyLast(toString(ResourceAttributes.`cicd.pipeline.task.run.result`)) AS result
FROM traces
WHERE Timestamp > now() - INTERVAL 7 DAY
  AND ServiceName = 'github-actions'
  AND toString(ResourceAttributes.`vcs.repository.name`) = '<owner/repo>'
  AND toString(ResourceAttributes.`cicd.pipeline.run.id`) != ''
  AND toString(SpanAttributes.`everr.github.workflow_job_step.number`) = ''
GROUP BY TraceId
ORDER BY last_seen DESC
LIMIT 20
```

Repeated failure log lines:

```sql
SELECT
  anyLast(toString(ResourceAttributes.`cicd.pipeline.name`)) AS workflow,
  anyLast(toString(ScopeAttributes.`cicd.pipeline.task.name`)) AS job,
  anyLast(toString(LogAttributes.`everr.github.workflow_job_step.number`)) AS step,
  uniqExact(TraceId) AS runs,
  count() AS lines,
  max(Timestamp) AS last_seen,
  anyLast(Body) AS sample
FROM logs
WHERE Timestamp > now() - INTERVAL 14 DAY
  AND toString(ResourceAttributes.`vcs.repository.name`) = '<owner/repo>'
  AND startsWith(Body, '##[error]')
GROUP BY cityHash64(Body)
ORDER BY runs DESC, lines DESC, last_seen DESC
LIMIT 50
```

## Common Mistakes

- Starting with `gh pr checks` because it feels faster: run Everr first.
- Running `everr ci status <sha>`: use `everr ci status --commit <sha>`.
- Treating one failed log as proof: compare runs, attempts, tests, jobs, and failure signatures.
- Ignoring an Everr CLI error: diagnose repo context, auth, import state, or CLI behavior.
- Asking for pasted logs: fetch them with `everr ci logs` unless access is unavailable.

## Example: CI Is Failing On This Branch

Run `everr ci runs --current-branch`, copy the failed `trace_id`, then run `everr ci show <trace_id> --failed` and `everr ci logs <trace_id> --job-name <job> --log-failed`. If flakiness is possible, query history before deciding whether it is a real regression.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.