log-viewer

Stream and tail Docker container logs using container-log-viewer. Covers clv tail, clv list, and the real-time web UI feed.

7 stars

Best use case

log-viewer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Stream and tail Docker container logs using container-log-viewer. Covers clv tail, clv list, and the real-time web UI feed.

Teams using log-viewer 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

$curl -o ~/.claude/skills/log-viewer/SKILL.md --create-dirs "https://raw.githubusercontent.com/heldernoid/agentic-build-templates/main/projects/developer-tools/container-log-viewer/skills/log-viewer/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/log-viewer/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How log-viewer Compares

Feature / Agentlog-viewerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Stream and tail Docker container logs using container-log-viewer. Covers clv tail, clv list, and the real-time web UI feed.

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.

SKILL.md Source

# log-viewer skill

Use this skill when the user wants to:
- Stream live logs from a Docker container
- View recent logs with level filtering
- List all containers being tracked
- Open the web UI to view logs in a browser

## Prerequisites

The clv server must be running:

```
node dist/clv-server.js
# or via the compiled binary
clv-server
```

The server attaches to Docker containers automatically on start and polls for new containers every 10 seconds.

## List tracked containers

```
clv list
```

Output columns: NAME, IMAGE, STATUS, LINES, ERRORS, LAST LOG

Stopped containers are shown with reduced styling. The ERRORS column counts lines parsed as ERROR level.

## Tail a container

```
clv tail <container-name>
```

Streams all new log lines as they arrive via SSE. Press Ctrl+C to stop.

Options:

```
--level <levels>       Comma-separated: info,warn,error,debug  (default: all)
--stream <stdout|stderr>  Filter by stream
--since <n>m|h         Show lines from last N minutes or hours before streaming
--no-color             Disable ANSI color output
--format <text|json>   Output format (default: text)
```

Examples:

```
# Errors and warnings only
clv tail api --level error,warn

# Last 30 minutes of logs then stream
clv tail web --since 30m

# JSON output for piping
clv tail worker --format json | jq '.msg'
```

## Tail multiple containers

Use shell concurrency:

```
clv tail web &
clv tail api &
clv tail worker
```

Or view all containers in the web UI dashboard (All containers feed).

## Web UI

Open http://127.0.0.1:3200 in a browser (or CLV_SERVER if set).

- Left sidebar: container list with line counts and status dots
- Main panel: log feed with TIME / LEVEL / STREAM / MESSAGE columns
- Level chips at the top right filter the feed instantly
- Click any log row to expand and see the full JSON payload
- LIVE badge shows SSE is connected; new lines appear without refresh

## Environment variable

```
CLV_SERVER=http://myhost:3200  # default: http://localhost:3200
```

Used by the CLI to locate the server. Set this if the server is on a remote host or non-default port.

## Log level colors (terminal)

| Level | Color     |
|-------|-----------|
| ERROR | red       |
| WARN  | amber     |
| INFO  | blue      |
| DEBUG | dim grey  |
| -     | dim grey  |

ERROR lines get a dark red background and left border in the web UI.

## Retention

Logs older than the configured retention period (default 7 days) are pruned on startup and once per day. Adjust with the CLV_RETENTION_DAYS env var or via Settings in the web UI.

Related Skills

Skill: Uptime Monitoring

7
from heldernoid/agentic-build-templates

## Overview

Skill: Status Page

7
from heldernoid/agentic-build-templates

## Overview

Skill: unit-conversion

7
from heldernoid/agentic-build-templates

## Overview

Skill: recipe-scaler

7
from heldernoid/agentic-build-templates

## Overview

reading-list

7
from heldernoid/agentic-build-templates

Operate the reading-list API to save, manage, tag, search, and export articles.

email-digest

7
from heldernoid/agentic-build-templates

Configure, test, and troubleshoot the reading-list daily email digest delivered via nodemailer.

websocket-realtime

7
from heldernoid/agentic-build-templates

Use the WebSocket connection in poll-builder to receive live vote updates. Use when you need to stream real-time poll results, monitor a poll for new votes, or build a live dashboard. Triggers include "live results", "real-time updates", "stream votes", "watch poll", or "WebSocket".

poll-builder

7
from heldernoid/agentic-build-templates

Self-hosted poll creation tool with real-time results. Use when you need to create a poll, check vote counts, close a poll, export results, or get the shareable link for a poll. Triggers include "create poll", "vote", "poll results", "survey", "collect votes", "share poll", or any task involving polling or voting.

Skill: personal-finance

7
from heldernoid/agentic-build-templates

## Overview

Skill: csv-import

7
from heldernoid/agentic-build-templates

## Overview

Skill: Syntax Highlighting

7
from heldernoid/agentic-build-templates

## Purpose

Skill: Pastebin Core

7
from heldernoid/agentic-build-templates

## Purpose