Search

PythonReactSEOPDF
OpenClaw

trakt-readonly

Read-only Trakt.tv skill for checking a user’s currently watching item, recent episode history, watched shows list, stats, profile, and playback progress (OAuth) using the Trakt API. Use when the user asks about their Trakt activity, watching status, or recent episodes. Requires a Trakt Client ID and username.

dennisooki0 source installs☆ 0 Repository stars

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install dennisooki/trakt-readonly

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

Trakt (OpenClaw) — Read-only

Use this skill to query Trakt.tv user data via the API (read-only). Default to read-only; do not implement write operations unless the user explicitly asks for OAuth support.

Requirements

  • Env vars:
    • TRAKT_CLIENT_ID (Trakt API Client ID)
    • TRAKT_USERNAME (Trakt username or user slug)
    • TRAKT_ACCESS_TOKEN (OAuth Bearer token, required for playback)
    • TRAKT_CLIENT_SECRET (required for device token exchange)
  • Binaries: curl, jq

Commands (script)

Use {baseDir}/scripts/trakt-api.sh.

  • watching — current movie/episode being watched
  • recent [limit] — recent episode history (default 10, max 100)
  • watched-shows — recently watched shows list
  • profile — user profile
  • stats — user stats
  • playback <type> <start_at> <end_at> — playback progress (OAuth required)

Examples:

TRAKT_CLIENT_ID=xxx TRAKT_USERNAME=user {baseDir}/scripts/trakt-api.sh watching
TRAKT_CLIENT_ID=xxx TRAKT_USERNAME=user {baseDir}/scripts/trakt-api.sh recent 5
TRAKT_CLIENT_ID=xxx TRAKT_ACCESS_TOKEN=yyy {baseDir}/scripts/trakt-api.sh playback movies 2016-06-01T00:00:00.000Z 2016-07-01T23:59:59.000Z
TRAKT_CLIENT_ID=xxx {baseDir}/scripts/trakt-api.sh device-code
TRAKT_CLIENT_ID=xxx TRAKT_CLIENT_SECRET=zzz {baseDir}/scripts/trakt-api.sh device-token <device_code>

Guardrails

  • Never log or expose API keys or access tokens.
  • Only call https://api.trakt.tv.
  • Read-only endpoints only; playback uses OAuth token read access.
  • Device OAuth flow is read-only; do not request write scopes.
  • Validate recent limit is numeric and between 1–100.
  • Handle empty/404 responses gracefully (public profile required).

References

  • Read references/trakt-api.md for endpoints, headers, and auth notes.

Source information

Source
github
Repository
openclaw/skills
Path
skills/dennisooki/trakt-readonly
Version
—
Commit
4d391d66681002ecd2643b797df5589b6ab6ed44
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

README

Trakt Read-only Skill

A secure OpenClaw skill for querying Trakt.tv user data (read-only): current watching, recent episode history, watched shows, stats, and profile.

Features

  • Watching: Current movie or episode
  • Recent Episodes: Recent episode history
  • Watched Shows: Recently watched shows list
  • Stats: User stats
  • Profile: User profile info

Prerequisites

  • jq (for JSON parsing)
  • curl

Install on Ubuntu/Debian:

sudo apt-get update && sudo apt-get install -y jq curl

Setup

Get a Trakt Client ID
  1. Go to https://trakt.tv/oauth/applications
  2. Click New Application
  3. Fill in the form (any name). For redirect URI, you can use urn:ietf:wg:oauth:2.0:oob.
  4. Save and copy the Client ID
Configure OpenClaw

Add to ~/.openclaw/openclaw.json:

{
  skills: {
    entries: {
      "trakt-readonly": {
        enabled: true,
        apiKey: "YOUR_TRAKT_CLIENT_ID", // convenience for TRAKT_CLIENT_ID
        env: {
          TRAKT_CLIENT_ID: "YOUR_TRAKT_CLIENT_ID",
          TRAKT_USERNAME: "YOUR_TRAKT_USERNAME",
          TRAKT_ACCESS_TOKEN: "YOUR_TRAKT_OAUTH_TOKEN", // required for playback
          TRAKT_CLIENT_SECRET: "YOUR_TRAKT_CLIENT_SECRET" // required for device token exchange
        }
      }
    }
  }
}

Note: OpenClaw injects these env vars at runtime (not globally). Never commit secrets to git. If you run the agent in a sandboxed session, set env vars under agents.defaults.sandbox.docker.env.

Usage

Read-only Commands (No OAuth Required)

Read-only endpoints require only TRAKT_CLIENT_ID + TRAKT_USERNAME.

Command Description Example
watching Current watching /trakt-readonly watching
recent [limit] Recent episodes /trakt-readonly recent 5
watched-shows Watched shows list /trakt-readonly watched-shows
stats User stats /trakt-readonly stats
profile User profile ...

Extracted content

SKILL.md
# Trakt (OpenClaw) — Read-only

Use this skill to query Trakt.tv user data via the API (read-only). Default to **read-only**; do not implement write operations unless the user explicitly asks for OAuth support.

## Requirements

- Env vars:
  - `TRAKT_CLIENT_ID` (Trakt API Client ID)
  - `TRAKT_USERNAME` (Trakt username or user slug)
  - `TRAKT_ACCESS_TOKEN` (OAuth Bearer token, required for playback)
  - `TRAKT_CLIENT_SECRET` (required for device token exchange)
- Binaries: `curl`, `jq`

## Commands (script)

Use `{baseDir}/scripts/trakt-api.sh`.

- `watching` — current movie/episode being watched
- `recent [limit]` — recent episode history (default 10, max 100)
- `watched-shows` — recently watched shows list
- `profile` — user profile
- `stats` — user stats
- `playback <type> <start_at> <end_at>` — playback progress (OAuth required)

Examples:

```
TRAKT_CLIENT_ID=xxx TRAKT_USERNAME=user {baseDir}/scripts/trakt-api.sh watching
TRAKT_CLIENT_ID=xxx TRAKT_USERNAME=user {baseDir}/scripts/trakt-api.sh recent 5
TRAKT_CLIENT_ID=xxx TRAKT_ACCESS_TOKEN=yyy {baseDir}/scripts/trakt-api.sh playback movies 2016-06-01T00:00:00.000Z 2016-07-01T23:59:59.000Z
TRAKT_CLIENT_ID=xxx {baseDir}/scripts/trakt-api.sh device-code
TRAKT_CLIENT_ID=xxx TRAKT_CLIENT_SECRET=zzz {baseDir}/scripts/trakt-api.sh device-token <device_code>
```

## Guardrails

- Never log or expose API keys or access tokens.
- Only call `https://api.trakt.tv`.
- Read-only endpoints only; playback uses OAuth token read access.
- Device OAuth flow is read-only; do not request write scopes.
- Validate `recent` limit is numeric and between 1–100.
- Handle empty/404 responses gracefully (public profile required).

## References

- Read `references/trakt-api.md` for endpoints, headers, and auth notes.
README
# Trakt Read-only Skill

A secure OpenClaw skill for querying Trakt.tv user data (read-only): current watching, recent episode history, watched shows, stats, and profile.

## Features

- **Watching**: Current movie or episode
- **Recent Episodes**: Recent episode history
- **Watched Shows**: Recently watched shows list
- **Stats**: User stats
- **Profile**: User profile info

## Prerequisites

- `jq` (for JSON parsing)
- `curl`

Install on Ubuntu/Debian:

```
sudo apt-get update && sudo apt-get install -y jq curl
```

## Setup

### Get a Trakt Client ID

1. Go to https://trakt.tv/oauth/applications
2. Click **New Application**
3. Fill in the form (any name). For redirect URI, you can use `urn:ietf:wg:oauth:2.0:oob`.
4. Save and copy the **Client ID**

### Configure OpenClaw

Add to `~/.openclaw/openclaw.json`:

```json5
{
  skills: {
    entries: {
      "trakt-readonly": {
        enabled: true,
        apiKey: "YOUR_TRAKT_CLIENT_ID", // convenience for TRAKT_CLIENT_ID
        env: {
          TRAKT_CLIENT_ID: "YOUR_TRAKT_CLIENT_ID",
          TRAKT_USERNAME: "YOUR_TRAKT_USERNAME",
          TRAKT_ACCESS_TOKEN: "YOUR_TRAKT_OAUTH_TOKEN", // required for playback
          TRAKT_CLIENT_SECRET: "YOUR_TRAKT_CLIENT_SECRET" // required for device token exchange
        }
      }
    }
  }
}
```

**Note:** OpenClaw injects these env vars at runtime (not globally). Never commit secrets to git. If you run the agent in a sandboxed session, set env vars under `agents.defaults.sandbox.docker.env`.

## Usage

### Read-only Commands (No OAuth Required)

**Read-only endpoints require only `TRAKT_CLIENT_ID` + `TRAKT_USERNAME`.**

| Command | Description | Example |
|---------|-------------|---------|
| `watching` | Current watching | `/trakt-readonly watching` |
| `recent [limit]` | Recent episodes | `/trakt-readonly recent 5` |
| `watched-shows` | Watched shows list | `/trakt-readonly watched-shows` |
| `stats` | User stats | `/trakt-readonly stats` |
| `profile` | User profile |...

Related skills

OpenClaw

bambu-studio-ai

heyixuan2

Bambu Lab 3D printer control and automation. Activate when user mentions: printer status, 3D printing, slice, analyze model, generate 3D, AMS filament, print monitor, Bambu Lab, or any 3D printing task. Full pi...

OpenClaw

geo-optimization

capt-marbles

Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discove...

OpenClaw

parakeet-stt

carlulsoe

Local speech-to-text with NVIDIA Parakeet TDT 0.6B v3 (ONNX on CPU). 30x faster than Whisper, 25 languages, auto-detection, OpenAI-compatible API. Use when transcribing audio files, converting speech to text, o...

OpenClaw

feishu-process-feedback

carlzhao007

飞书消息自动处理与进度反馈技能。安装后后台运行,监听飞书任务消息并自动创建独立进程处理。 在处理前后发送实时进度反馈(任务确认、进度百分比、完成通知)。 支持任务类型识别、智能解析、错误重试、并发控制、状态持久化...