AgentStack
SKILL verified MIT Self-run

Aeo Report

skill-psyduckler-aeo-skills-aeo-report · by psyduckler

>

No reviews yet
0 installs
9 views
0.0% view→install

Install

$ agentstack add skill-psyduckler-aeo-skills-aeo-report

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Aeo Report? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

AEO Report

> Source: github.com/psyduckler/aeo-skills > Part of: AEO Skills Suite

Reads aeo-data/*.json (evidence files written by aeo-baseline) and produces a shareable visibility report. The skill that makes the daily cron actually useful.

Requirements

  • Python 3.9+ (stdlib only)
  • At least one aeo-evidence-v1 file in your data directory
  • No API keys (this skill never calls a provider)

Usage

# Default: read aeo-data/, write Markdown + HTML to aeo-reports/
python3 scripts/report.py

# Specify directories
python3 scripts/report.py --data-dir custom-data --output-dir custom-reports

# Markdown only (good for piping)
python3 scripts/report.py --format md

# Print to stdout (good for one-off review)
python3 scripts/report.py --stdout

Output filenames are timestamped: -report.md and -report.html.

Options

| Option | Default | Description | |---|---|---| | --data-dir | aeo-data | Directory of evidence files | | --output-dir | aeo-reports | Where to write reports | | --format | all | md \| html \| all | | --stdout | — | Print Markdown to stdout instead of writing files |

What's in the report

Executive summary

  • Average visibility score across all prompts (latest run)
  • Trend vs. first run (if multiple runs)
  • Count of decay alerts
  • Count of hub-page candidates

Per-prompt detail

For each prompt:

  • Latest visibility score, mention rate, citation rate (with Wilson 95% CIs)
  • Average citation position (when cited)
  • Embedded SVG chart of visibility score over time (when ≥2 runs exist)
  • Top 5 entities from the entity universe
  • Decay flag if citation rate has fallen
  • Cannibalization flag if multiple owned URLs compete
  • Competitor share-of-voice shifts

Cross-prompt sections

  • Hub-Page Opportunities — owned URLs cited across multiple prompts
  • Decay Alerts — prompts with declining citation rate

Detection thresholds

| Signal | Trigger | |---|---| | Decay | Trailing 3-run mean is ≥20% below leading 3-run mean (HIGH if ≥50%, MEDIUM ≥30%, LOW otherwise). Needs ≥4 runs. | | Cannibalization | ≥2 distinct owned URLs are each cited in ≥2 samples within the latest run. | | Hub page | A URL is cited for ≥2 prompts AND covers ≥30% of tracked prompts in the latest run. | | Competitor share shift | First-run vs latest-run share differs by >5 percentage points. |

All thresholds live as constants at the top of scripts/report.py. Bump them for your workspace if needed.

SVG charts

Charts are hand-rendered SVG (no matplotlib, no pip install). Each chart is embedded inline in the HTML output via a `` placeholder in the Markdown. Currently:

  • One line chart per prompt showing visibility score over time (only when ≥2 runs exist)

Future charts (deferred): entity-frequency bar charts, competitor-share stacked area, citation-position over time.

Pure analysis

This skill is read-only. It never:

  • Calls a provider API
  • Mutates evidence files
  • Requires an API key

So it's safe to run from CI, in pre-commit hooks, or anywhere else.

Pairs With

  • aeo-init — sets up the workspace
  • aeo-baseline — produces the evidence files this skill reads
  • aeo-track — schedules baselines so trends accumulate
  • aeo-optimize (coming) — reads the latest baseline + report and produces a Markdown work queue

Notes

  • Reports are append-only by default (one file per invocation). Delete old reports manually if directory growth is a concern.
  • The HTML output is a single self-contained file (inline CSS + SVG). Email-safe, easy to share.
  • For very large workspaces (50+ prompts × 365 days), report generation is O(N) over evidence files — typically subsecond.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.