YouTube Analytics

PassAudited by VirusTotal on May 12, 2026.

Overview

Type: OpenClaw Skill Name: youtube-analytics Version: 1.0.0 The OpenClaw skill bundle is a YouTube analytics toolkit that interacts with the YouTube Data API v3. All code and documentation align with its stated purpose. The `SKILL.md` file provides clear, benign instructions for setup and usage, without any evidence of prompt injection attempts against the AI agent. The TypeScript code (`scripts/src/**/*.ts`) uses standard libraries (`googleapis`, `dotenv`) to fetch data and saves results as JSON files exclusively within a dedicated `results/` directory, preventing arbitrary file system access or data exfiltration. Dependencies listed in `scripts/package.json` are legitimate, and there are no signs of malicious execution, persistence mechanisms, or obfuscation.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

If the raw key helper is called or printed, the user's API key could be exposed to the agent transcript and potentially used against the user's quota.

Why it was flagged

The skill uses the configured YouTube API key as expected for the provider, and also exposes a getApiKey helper that can return the raw key to callers.

Skill content
clientInstance = google.youtube({ version: 'v3', auth: settings.apiKey }); ... return settings.apiKey;
Recommendation

Use a restricted YouTube Data API key, avoid printing or sharing it, and consider removing or not exporting getApiKey unless needed for debugging.

What this means

Installing the skill pulls third-party Node packages into the local environment.

Why it was flagged

The skill requires a user-directed npm install even though the registry says there is no install spec. The dependencies are purpose-aligned, and a package-lock is present.

Skill content
Install dependencies:

```bash
cd scripts && npm install
```
Recommendation

Review package.json/package-lock before installing, run installation in a trusted project environment, and prefer lockfile-based installs such as npm ci when possible.

What this means

If misused, these helpers could read local JSON files or write JSON files outside the intended results subfolders.

Why it was flagged

The result helpers accept caller-supplied category/filepath values and do not explicitly confine them to the results directory, though documented use is for saved YouTube result files.

Skill content
const categoryDir = join(settings.resultsDir, category); ... const content = readFileSync(filepath, 'utf-8');
Recommendation

Use loadResult only with paths returned by listResults, avoid passing untrusted paths/categories, and consider adding path normalization checks that enforce the results directory boundary.

What this means

Search terms, channel/video analyses, and public YouTube metadata may remain in local files after the task is complete.

Why it was flagged

The skill persistently stores retrieved YouTube data and user search/query-derived results on disk by default.

Skill content
All results automatically save as JSON files to `results/{category}/`.
Recommendation

Keep the results directory private, delete old results when no longer needed, and avoid using sensitive search terms if local persistence is a concern.