Persists SEO/GEO campaign context across Claude sessions with hot-list (auto-load), active work (on-demand), and archive tiers. Use for review, archive, cleanup of project memory.
From seo-geo-claude-skillsnpx claudepluginhub aaron-he-zhu/seo-geo-claude-skillsThis skill uses the workspace's default tool permissions.
references/examples.mdreferences/glossary-template.mdreferences/hot-cache-template.mdreferences/promotion-demotion-rules.mdreferences/update-triggers-integration.mdMonitors deployed URLs for regressions in HTTP status, console errors, performance metrics, content, network, and APIs after deploys, merges, or upgrades.
Codifies expertise for managing carrier portfolios, negotiating freight rates, tracking performance, running RFPs, scorecards, and building freight strategies in transportation logistics.
Guides using Bun as runtime, package manager, bundler, and test runner for JS/TS projects with Node comparisons, migration steps, and Vercel deployment.
SEO & GEO Skills Library · 20 skills for SEO + GEO · ClawHub · skills.sh System Mode: This cross-cutting skill is part of the protocol layer and follows the shared Skill Contract and State Model.
This skill implements a three-tier memory system (HOT/WARM/COLD) for SEO and GEO projects. HOT memory (80 lines max) loads automatically every session via the SessionStart hook. WARM memory loads on demand per skill. COLD memory is archived data queried only when explicitly requested. The skill manages the full lifecycle: capture, promote, demote, and archive.
System role: Campaign Memory Loop. It defines how project context is captured, promoted, archived, and handed off across sessions. It is the sole executor of WARM-to-COLD archival and the aggregator for cross-skill project status queries.
Use this whenever project state should survive the current session — even if the user doesn't use memory terminology:
memory/hot-cache.md (80 lines max) — loaded automatically every session by SessionStart hookmemory/ subdirectories — loaded on demand by relevant skillsmemory/archive/ with date prefixmemory/ subdirectoriesmemory/open-loops.md, reminds user of stale items via SessionStart hookStart with one of these prompts. Finish with a hot-cache update plan and a handoff summary using the repository format in Skill Contract.
Set up SEO memory for [project name]
Initialize memory structure for a new [industry] website optimization project
Update memory after ranking check for [keyword group]
Refresh hot cache with latest competitor analysis findings
What are our hero keywords?
Show me the last ranking update date for [keyword category]
Look up our primary competitors and their domain authority
Promote [keyword] to hot cache
Archive stale data that hasn't been referenced in 30+ days
Add [term] to project glossary: [definition]
What does [internal jargon] mean in this project?
Expected output: a memory update plan, hot-cache changes, and a short handoff summary.
memory/hot-cache.md, memory/open-loops.md, memory/decisions.md, and related memory/ folders. Also manages WARM-to-COLD archival in memory/archive/.Next Best Skill below when the project memory baseline is ready for active work.| Condition | Action |
|---|---|
| Finding referenced by 2+ skills within 7 days | Promote WARM → HOT (extract ≤3 line summary) |
| Finding referenced 3+ times within 7 days | Promote WARM → HOT |
| HOT item unreferenced for 30 days | Demote HOT → WARM (remove from hot-cache.md, keep source file) |
| WARM file unreferenced for 90 days | Demote WARM → COLD (move to memory/archive/YYYY-MM-DD-filename.md) |
This skill's behavior is reinforced by the library's prompt-based hooks:
memory/hot-cache.md, reminds of stale open loopsSee CONNECTORS.md for tool category placeholders.
With ~~SEO tool + ~~analytics + ~~search console connected: Automatically populate memory from historical data: keyword rankings over time, competitor domain authority changes, traffic metrics, conversion data, backlink profile evolution. The skill will fetch current rankings, alert on significant changes, and update both hot cache and cold storage.
With manual data only: Ask the user to provide:
Proceed with memory structure creation using provided data. Note in CLAUDE.md which data requires manual updates vs. automated refresh.
When a user requests SEO memory management:
For new projects, create the following structure:
## Directory Structure
project-root/
├── CLAUDE.md # HOT tier (80 lines max)
└── memory/
├── decisions.md # Major strategic choices
├── open-loops.md # Unresolved blockers and follow-ups
├── glossary.md # Project terminology
├── entities/
│ └── [entity-name].md # Canonical entity profiles
├── research/
│ ├── keywords/ # Hero, secondary, and opportunity sets
│ ├── competitors/ # Competitor overviews and dated analyses
│ ├── serp/ # SERP snapshots and notes
│ └── content-gaps/ # Gap summaries and topic opportunities
├── content/
│ ├── briefs/ # Content briefs and approved angles
│ ├── calendar/ # Active and archived campaign plans
│ └── published/ # Dated shipped-content summaries
├── audits/
│ ├── content/ # Content audits
│ ├── domain/ # Domain authority (CITE) audits
│ ├── technical/ # Technical SEO audits
│ └── internal-linking/ # Link architecture audits
└── monitoring/
├── alerts/ # Alert history and thresholds
├── rank-history/ # Dated ranking snapshots / CSV exports
├── reports/ # Monthly, quarterly, campaign reports
└── snapshots/ # Dated hot-cache snapshots
Templates: See references/hot-cache-template.md for the complete CLAUDE.md hot cache template and references/glossary-template.md for the project glossary template.
When a user references something unclear, follow this lookup sequence:
Step 1: Check CLAUDE.md (Hot Cache)
Step 2: Check memory/glossary.md
Step 3: Check Cold Storage
Step 4: Ask User
Example lookup:
User: "Update rankings for our hero KWs"
Step 1: Check CLAUDE.md → Found "Hero Keywords (Priority 1)" section
Step 2: Extract keyword list from hot cache
Step 3: Execute ranking check
Step 4: Update both CLAUDE.md and memory/monitoring/rank-history/YYYY-MM-DD-ranks.csv
Reference: See references/promotion-demotion-rules.md for detailed promotion/demotion triggers (keywords, competitors, metrics, campaigns) and the action procedures for each.
Reference: See references/update-triggers-integration.md for the complete update procedures after ranking checks, competitor analyses, audits, and reports; monthly/quarterly archive routines; and integration points with all 8 connected skills (keyword-research, rank-tracker, competitor-analysis, content-gap-analysis, seo-content-writer, content-quality-auditor, domain-authority-auditor).
When invoked for review or cleanup:
memory/hot-cache.md. If >80, list oldest entries for archival.name, description, and type in their frontmatter. Report any missing fields.After delivering any memory update or aggregation to the user, ask:
"Save these results for future sessions?"
If yes, write a dated summary to the appropriate memory/ path using filename YYYY-MM-DD-<topic>.md containing:
If any veto-level issue was found (CORE-EEAT T04, C01, R10 or CITE T03, T05, T09), also append a one-liner to memory/hot-cache.md without asking.
memory/monitoring/rank-history/ has a dated snapshot or exportmemory/research/competitors/ has a dated fileReference: See references/examples.md for three complete examples: (1) updating hero keyword rankings with memory refresh, (2) glossary lookup flow, and (3) initializing memory for a new e-commerce project.
Load full context for [campaign name]
Retrieves hot cache + all cold storage files related to campaign.
Run memory health check
Audits memory structure: finds orphaned files, missing timestamps, stale hot cache items, broken references.
Promote all keywords ranking in top 10 to hot cache
Demote all completed campaigns from Q3 2024
Create memory snapshot for [date/milestone]
Takes point-in-time copy of entire memory structure for major milestones (site launches, algorithm updates, etc.).
Compare memory with [other project name]
Identifies keyword overlaps, competitor intersections, and strategy similarities across multiple projects.
memory/ subdirectories are only loaded when explicitly requested. They do not appear in Claude's context automatically. The hot cache (CLAUDE.md) is the primary cross-session mechanism.memory/monitoring/rank-history/.