本文へ移動
cccskills
無料GitHub で公開

content-report

Pull performance data for published content across every surface — LinkedIn, Dev.to, Google Search Console, GA4, and AI citation tracking (Perplexity, Anthropic, OpenAI). Grades each piece as winner, average, or underperformer and surfaces whether an AI search engine has cited it.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md8.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

/content-report — The Analytics Lead

Pull performance data for your published content. Cross-references Google Search Console (position, CTR), GA4 (session duration), platform-native stats (LinkedIn impressions, Dev.to views), and AI citation checks (Perplexity, Anthropic, OpenAI web search) to grade each piece.

Preamble

source "$(dirname "$0")/../lib/preamble.sh"

Arguments

Optional:

  • --site: Filter by site key (e.g., kaicalls, connorgallic, meetkai)
  • --all: Show all published content (default if no args)

Example: /content-report --site kaicalls Example: /content-report

The Skill

Step 0: Fold In Any Legacy Log

The CANONICAL publish log is data/content_log.json (the learning loop — performance_check, pattern_extract, weekly_report — reads only this file). If a legacy ~/.kai-marketing/content-log.jsonl still exists, merge it first so its winners reach the learning loop (idempotent; safe to re-run):

python3 -m scripts.content.migrate_legacy_log
python3 -m scripts.self_improvement.performance_check --reconcile-only   # rebuild 30-day checks in data/pending_checks/

Step 1: Refresh Data

Before the report, refresh the data sources you care about. Skip any step where you don't have the API key.

# Dev.to — requires DEVTO_API_KEY (https://dev.to/settings/extensions)
python3 -m scripts.content.tracker_cli pull-devto

# AI citations — requires at least one of PERPLEXITY_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY
python3 -m scripts.content.tracker_cli citations

# LinkedIn is manual — record per article (interactive):
python3 -m scripts.content.tracker_cli linkedin --id <entry_id> --interactive
# Or non-interactive:
python3 -m scripts.content.tracker_cli linkedin --id <entry_id> \
    --url https://linkedin.com/pulse/... \
    --impressions 1850 --reactions 34 --comments 7 --reshares 2 --dms 3

Step 2: Load Enriched Report

python3 -m scripts.content.tracker_cli report --format json

If no published content is found, tell the user: "No published content in the log. Content is logged automatically when it passes /content-gate."

Step 3: Display Performance Overview

Present the data:

CONTENT PERFORMANCE REPORT
══════════════════════════════════════════

Total pieces: {N}
  Winners:         {green} {count} ({pct}%)
  Average:         {yellow} {count} ({pct}%)
  Underperformers: {red} {count} ({pct}%)
  Pending (< 30d): {gray} {count}

GRADING THRESHOLDS (search surface):
  Position ≤ 5  |  CTR ≥ 5%  |  Session ≥ 90s

RECENT CONTENT:
  [+] kaicalls-20260316   "AI receptionists"       pos:3  CTR:7.2%  91s   WINNER   li=4.2K/86r/3dm  cits=2/4
  [+] connor-20260414     "MeetKai audit"          —      —         —     PENDING  li=1.9K/52r/1dm  cits=1/3
  [~] kaicalls-20260310   "law firm answering"     pos:12 CTR:2.1%  45s   AVERAGE  devto=320v/12r   cits=0/3
  [-] abp-20260308        "backyard design"        pos:28 CTR:0.4%  22s   UNDER    li=80/1r         cits=0/3
  [?] kaicalls-20260322   "virtual receptionist"   (pending — 8 days old)

Legend for the compact metric strings:

  • li=1850/34r/2dm — LinkedIn impressions / reactions / DMs
  • devto=450v/12r — Dev.to views / reactions
  • cits=2/4 — positive AI citations / total citation checks run

Step 4: Insights

If there are 3+ graded pieces, provide insights:

  • Which format performs best (blog vs linkedin vs devto vs email)
  • Which persona performs best
  • Which hook type performs best (if tracked)
  • Average quality gate score of winners vs underperformers
  • AI citation patterns — which providers cite our content most often, which queries trigger citations, whether articles with high GSC position also attract AI citations

Example:

INSIGHTS:
  Best performing format:  linkedin (3/4 winners)
  Best performing persona: Shock Absorber (2/2 winners)
  Avg gate score winners:  82/100  vs  underperformers: 61/100

  AI CITATIONS:
    Most citing provider:  Perplexity (4 citations across 3 articles)
    Top-cited article:     connor-20260414 — 3 citations
    Queries that cite us:  "best AI answering service", "Connor Gallic AI",
                           "answering service alternatives 2026"
    Articles never cited:  abp-20260308, kaicalls-20260310  →  strong GEO-rewrite candidates

Step 5: Recommend Next Actions

Based on the data:

  • Pending 30-day review: "3 pieces ready for 30-day review. Performance data will be pulled on next check."
  • Underperformers: "Consider revising underperformers or running /content-retro to extract patterns."
  • Missing LinkedIn stats: "N LinkedIn pieces published in the last 14 days have no recorded metrics. Run kai-tracker linkedin --id <id> --interactive to record them."
  • Missing citation checks: "N tracked articles have no citations-targets.json entries. Use kai-tracker targets --id <id> --add-query '...' to configure."
  • No recent content: "No content published in the last 14 days. Run /content-ideas for topic suggestions."

Data Sources Behind This Skill

SourceWhere it livesRefreshed by
Publish log (canonical)data/content_log.json/content-write Step 6 / scripts.content.content_log.log_entry + mark_published
30-day pending checksdata/pending_checks/{id}.jsonAuto-created by content_log when a real URL is set; rebuilt by performance_check --reconcile-only
Legacy publish log~/.kai-marketing/content-log.jsonlRead-only — fold into the canonical log via scripts.content.migrate_legacy_log (Step 0)
Platform metrics (Dev.to, LinkedIn)~/.kai-marketing/metrics/{id}.jsonkai-tracker pull-devto / kai-tracker linkedin
AI citation events~/.kai-marketing/citations/{id}.jsonlkai-tracker citations (cron-compatible)
Citation targets~/.kai-marketing/citations-targets.jsonkai-tracker targets --id <id> --add-query '...'
GSC + GA4 gradingLive API calls via scripts/self_improvement/performance_check.pyInvoked automatically by kai-tracker report

Environment Variables

VariableRequired forHow to get it
DEVTO_API_KEYDev.to stat pullshttps://dev.to/settings/extensions
PERPLEXITY_API_KEYPerplexity citation checkshttps://www.perplexity.ai/settings/api
ANTHROPIC_API_KEYClaude web-search citation checksConsole API key (already required by the harness)
OPENAI_API_KEYOpenAI web-search citation checksExisting harness API key

If a key is missing, the corresponding check is skipped with a warning — the report still runs with whatever data is available.

Error Handling

  • No content log: Direct to /content-write to publish first piece
  • GSC/GA4 API unavailable: Show content log with platform/citation data, note "Search surface performance unavailable — showing platform metrics only"
  • All AI citation providers missing keys: Skip Step 1's citations call, note in the report "Citation tracking unavailable — set at least one of PERPLEXITY_API_KEY / ANTHROPIC_API_KEY / OPENAI_API_KEY"

Chain State

Reads from: data/content_log.json (canonical publish log), data/pending_checks/, ~/.kai-marketing/metrics/, ~/.kai-marketing/citations/ (platform/citation scratch) Feeds into: /content-retro (weekly pattern analysis, now including citation patterns)

Scheduling

Recommended cadence for a solo operator:

  • On publish: /content-gate writes to the log automatically
  • Weekly: kai-tracker pull-devto + kai-tracker citations (put in cron or weekly heartbeat)
  • Per LinkedIn post, 24h + 7d after publish: kai-tracker linkedin --id <id> --interactive
  • 30 days after publish: the existing performance_check cron handles GSC + GA4 automatically

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

ad-copy

無料

Write platform-compliant ad copy for Meta, Google, TikTok, LinkedIn, Pinterest, Snapchat, Amazon, or X. Loads TOS rules automatically. Shows char counts and format preview.

日本語の概要は準備中です。原文の説明を表示しています。

cgallic/kai-cmo-harness552026年10月3日 更新

ad-render

無料

Render video ads using Remotion. Scaffolds a project from brand tokens + creative brief, generates scene compositions for 4 archetypes, renders to MP4 in multiple formats.

日本語の概要は準備中です。原文の説明を表示しています。

cgallic/kai-cmo-harness552026年10月3日 更新

Research competitor ads using Meta Ad Library, Google Ads Transparency Center, and TikTok Creative Center. Analyze creative patterns, hooks, offers, and landing pages.

日本語の概要は準備中です。原文の説明を表示しています。

cgallic/kai-cmo-harness552026年10月3日 更新

checklist

無料

Surface the right marketing checklist for any task. Covers content, SEO, ads, email, press, landing pages, launches, and technical audits. 17+ checklists indexed by task type.

日本語の概要は準備中です。原文の説明を表示しています。

cgallic/kai-cmo-harness552026年10月3日 更新

Generate a strategic content brief from format + site + keyword. Auto-resolves persona, pulls GSC data, generates hooks, angles, and competitor weakness via LLM.

日本語の概要は準備中です。原文の説明を表示しています。

cgallic/kai-cmo-harness552026年10月3日 更新

Run the full quality gate on any content file. Score against 28 rules, apply policy, show detailed scorecard with fix suggestions. Works on any markdown file.

日本語の概要は準備中です。原文の説明を表示しています。

cgallic/kai-cmo-harness552026年10月3日 更新

cgallic のスキルをすべて見る

このスキルの問題を報告する