feat: enhance SurfSense with new skills, blog section, and improve SEO metadata
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled

- Added multiple new skills to skills-lock.json from the repository `aaron-he-zhu/seo-geo-claude-skills`.
- Introduced `fuzzy-search` dependency in package.json for improved search functionality.
- Updated pnpm-lock.yaml to include the new `fuzzy-search` package.
- Enhanced SEO metadata across various pages, including canonical links and descriptions for better search visibility.
- Improved layout and structure of several components, including the homepage and changelog, to enhance user experience.
This commit is contained in:
DESKTOP-RTLN3BA\$punk 2026-04-11 23:38:12 -07:00
parent 61b3f0d7e3
commit 7ea840dbb2
120 changed files with 25729 additions and 352 deletions

View file

@ -0,0 +1,138 @@
# Memory Management Examples
Detailed examples showing memory management in action.
---
## Example 1: Update Rankings for Hero Keywords
**User**: "Update rankings for our hero keywords"
**Assistant**:
```markdown
I'll update rankings for your hero keywords. Let me check the hot cache for the list.
[Reads CLAUDE.md, finds Hero Keywords section:]
- keyword research tools (currently #15, target #5)
- best seo software (currently #23, target #10)
- free backlink checker (currently #8, target #3)
- content optimization guide (currently #12, target #5)
- technical seo audit (currently #18, target #8)
[If ~~SEO tool connected: runs automated ranking check]
[If manual: asks user for current rankings]
---
## Ranking Update - December 15, 2024
| Keyword | Previous | Current | Change | Target | Status |
|---------|----------|---------|--------|--------|--------|
| keyword research tools | #15 | #12 | up 3 | #5 | Improving |
| best seo software | #23 | #24 | down 1 | #10 | Stable |
| free backlink checker | #8 | #6 | up 2 | #3 | Near target |
| content optimization guide | #12 | #11 | up 1 | #5 | Improving |
| technical seo audit | #18 | #16 | up 2 | #8 | Improving |
### Notable Changes
- **free backlink checker** moved to #6 (only 3 positions from target!)
- **keyword research tools** gained 3 positions (strong movement)
- All other keywords showing stable or positive movement
### Updated Files
1. CLAUDE.md -> Hero Keywords table updated with current ranks
2. memory/monitoring/rank-history/2024-12-15-ranks.csv -> New row added:
`2024-12-15,keyword research tools,12,best seo software,24,free backlink checker,6,...`
### Recommendations
1. Push additional content/backlinks to "free backlink checker" pages to hit #3 target
2. Investigate why "keyword research tools" suddenly gained 3 positions (replicate success)
3. Monitor "best seo software" for any negative trends
Hot cache refreshed. Next ranking check recommended: December 22, 2024.
```
---
## Example 2: Glossary Lookup
**User**: "What does 'quick wins' mean in our project?"
**Assistant**:
```markdown
Let me look that up in the project memory.
[Step 1: Check CLAUDE.md -> not found]
[Step 2: Check memory/glossary.md -> found!]
From your project glossary:
**Quick Wins**
- **Definition**: Low-difficulty, high-value target keywords
- **Keyword Count**: 25 keywords
- **Context**: This segment includes keywords where you can achieve page 1 rankings within 30-60 days due to low competition, despite having decent search volume
According to your memory files, your current quick wins are stored in:
`memory/research/keywords/long-tail-keywords.md` (tagged with "quick-win" label)
Would you like me to show you the current list of quick win keywords?
```
---
## Example 3: Initialize Memory for New Project
**User**: "Set up memory for a new e-commerce site selling outdoor gear"
**Assistant**:
```markdown
I'll set up the two-layer memory system for your outdoor gear e-commerce site.
## Creating Directory Structure
[Creates: memory/glossary.md, memory/research/, memory/content/, memory/monitoring/, etc.]
## CLAUDE.md (Hot Cache) - Initial Setup
I'll need some information to populate the hot cache:
1. **Target Keywords**: What are your top 10 hero keywords?
(e.g., "hiking backpacks", "camping tents", "outdoor clothing")
2. **Primary Competitors**: Who are your top 3-5 competitors?
(e.g., rei.com, backcountry.com, moosejaw.com)
3. **Current Metrics** (if available):
- Domain authority?
- Current organic traffic?
- Any existing rankings?
4. **Active Initiatives**:
- Are you launching a new category?
- Running a content campaign?
- Focusing on any specific product line?
5. **Project Terminology**:
- Any internal product names or abbreviations?
- How do you segment your keyword strategy?
Please provide what you have, and I'll create your initial CLAUDE.md and glossary. We can start with basics and enrich as we gather more data.
---
Once you provide this information, I'll generate:
- CLAUDE.md with your initial hot cache
- memory/glossary.md with project terminology
- memory/research/keywords/ structure with placeholder files
- memory/research/competitors/ with initial competitor list
- memory/content/calendar/active-calendar.md for Q1 2025
After setup, you can use commands like:
- "Update rankings for hero keywords"
- "Add new competitor [domain]"
- "Promote [keyword] to hot cache"
- "Archive campaigns from Q3 2024"
```

View file

@ -0,0 +1,64 @@
# Glossary Template
Use this template to create the project glossary at memory/glossary.md.
### 3. Glossary Structure (memory/glossary.md)
```markdown
# [Project Name] - SEO Glossary
**Purpose**: Project-specific terminology, brand terms, internal jargon, and abbreviations.
**Last Updated**: [Date]
## Brand Terms
| Term | Full Name | Context |
|------|-----------|---------|
| [abbreviation] | [full name] | [when/how it's used] |
## Product Names
| Internal Name | Public Name | Category |
|---------------|-------------|----------|
| [code name] | [market name] | [product type] |
## Custom Segments
| Segment Name | Definition | Keyword Count |
|--------------|------------|---------------|
| Hero KWs | Top 10 revenue-driving keywords | 10 |
| Quick Wins | Low-difficulty, high-value targets | 25 |
| Brand Defense | Brand + modifier combinations | 15 |
## Competitor Shorthand
| Shorthand | Full Domain | Notes |
|-----------|-------------|-------|
| Comp A | competitor-a.com | Main competitor, [industry] |
| Comp B | competitor-b.com | Niche competitor, [specialty] |
## Project Acronyms
| Acronym | Full Term | Definition |
|---------|-----------|------------|
| [ABC] | [Full term] | [What it means in this project] |
## Internal Jargon
| Phrase | Meaning | Example Usage |
|--------|---------|---------------|
| [phrase] | [definition] | "Check rankings for [phrase]" |
## Historical Context
- **Project started**: [Date]
- **Major algorithm updates affecting us**: [List with dates]
- **Site migrations/redesigns**: [List with dates]
- **Key milestones**: [List with dates]
---
_This glossary helps decode project shorthand and maintain consistency across reports and communications._
```

View file

@ -0,0 +1,96 @@
# Hot Cache (CLAUDE.md) Template
Use this template when initializing memory for a new SEO project.
### 2. Hot Cache (CLAUDE.md) Structure
Create or update CLAUDE.md with this template:
```markdown
# [Project Name] - SEO Memory (Hot Cache)
**Last Updated**: [Date]
**Project Status**: [Active/Maintenance/Growth]
## Active Target Keywords (Top 10-20)
### Hero Keywords (Priority 1)
| Keyword | Current Rank | Target Rank | Volume | Status |
|---------|--------------|-------------|--------|--------|
| [keyword 1] | #[X] | #[Y] | [vol] | [tracking/optimizing/achieved] |
| [keyword 2] | #[X] | #[Y] | [vol] | [tracking/optimizing/achieved] |
### Secondary Keywords (Priority 2)
| Keyword | Current Rank | Target Rank | Volume | Status |
|---------|--------------|-------------|--------|--------|
| [keyword 1] | #[X] | #[Y] | [vol] | [tracking/optimizing/achieved] |
_Full keyword research: memory/research/keywords/_
## Primary Competitors (Top 3-5)
1. **[Competitor 1]** (DA: [X])
- Main strengths: [brief]
- Our position vs. them: [ahead/behind/competitive]
2. **[Competitor 2]** (DA: [X])
- Main strengths: [brief]
- Our position vs. them: [ahead/behind/competitive]
_Detailed analyses: memory/research/competitors/_
## Current Optimization Priorities
1. **[Priority 1]** - [Brief description]
- Status: [not started/in progress/completed]
- Expected impact: [high/medium/low]
- Deadline: [date]
2. **[Priority 2]** - [Brief description]
- Status: [not started/in progress/completed]
- Expected impact: [high/medium/low]
- Deadline: [date]
## Key Metrics Snapshot
**Last Metrics Update**: [Date]
| Metric | Current | Previous | Change | Target |
|--------|---------|----------|--------|--------|
| Organic Traffic | [X] | [X] | [+/-X%] | [target] |
| Avg. Position | [X] | [X] | [+/-X] | [target] |
| Total Keywords Ranking | [X] | [X] | [+/-X] | [target] |
| Page 1 Rankings | [X] | [X] | [+/-X] | [target] |
| Domain Authority | [X] | [X] | [+/-X] | [target] |
| CITE Score | [X] | [X] | [+/-X] | [target] |
| Last Content Audit Score | [score]/100 | ([rating]) | — [date] | [page audited] |
| Total Backlinks | [X] | [X] | [+/-X%] | [target] |
_Historical data: memory/monitoring/reports/ and memory/monitoring/rank-history/_
## Active Campaigns
### [Campaign Name 1]
- **Duration**: [Start date] - [End date]
- **Goal**: [Specific goal]
- **Status**: [planning/active/completed]
- **Progress**: [X]%
- **Key activities**: [brief list]
### [Campaign Name 2]
- **Duration**: [Start date] - [End date]
- **Goal**: [Specific goal]
- **Status**: [planning/active/completed]
- **Progress**: [X]%
- **Key activities**: [brief list]
_Campaign plans and archives: memory/content/calendar/_
## Quick Reference Notes
- [Important note 1]
- [Important note 2]
- [Important note 3]
_For project terminology, see: memory/glossary.md_
```

View file

@ -0,0 +1,58 @@
# Promotion and Demotion Rules
Detailed triggers and actions for moving items between the hot cache (CLAUDE.md) and cold storage (memory/ subdirectories).
## Promotion Logic
**Promote to Hot Cache when:**
### Keyword promotion triggers:
- Keyword referenced in 3+ conversations within 7 days
- Keyword showing significant movement (5+ position change)
- Keyword targeted in new active campaign
- Keyword suddenly driving traffic spike
### Competitor promotion triggers:
- Competitor mentioned in 3+ recent analyses
- Competitor showing aggressive SEO activity
- Competitor launching competing content
### Metric promotion triggers:
- Metric requested frequently for reporting
- Metric showing anomalous behavior
- Metric tied to active priority/campaign
**Promotion action:**
```markdown
1. Add item to relevant section in CLAUDE.md
2. Add note: "Promoted [date] - [reason]"
3. Keep detailed data in cold storage
4. Set reminder to review in 30 days
```
## Demotion Logic
**Demote to Cold Storage when:**
### Keyword demotion triggers:
- Not referenced in 30+ days
- Target rank achieved and stable for 60+ days
- Keyword no longer in active strategy
- Keyword replaced by higher-priority target
### Competitor demotion triggers:
- No significant activity in 60+ days
- Fell out of top 5 competitors by relevance
- No longer targeting same keywords
### Campaign demotion triggers:
- Campaign completed 30+ days ago
- Campaign cancelled or postponed indefinitely
**Demotion action:**
```markdown
1. Remove from CLAUDE.md
2. Archive full data in memory/[category]/archive/
3. Add line to CLAUDE.md: "Last reviewed [category]: [date]"
4. Keep 1-line summary if historically significant
```

View file

@ -0,0 +1,102 @@
# Update Triggers & Cross-Skill Integration
Systematic memory update procedures triggered by specific events, plus integration points with other SEO skills.
## Update Triggers
After specific events, update memory systematically:
### After Ranking Check
```markdown
1. Update CLAUDE.md -> Hero Keywords table (current ranks)
2. Save a dated snapshot to memory/monitoring/rank-history/YYYY-MM-DD-ranks.csv
3. Note any keywords with significant movement
4. Update "Last Metrics Update" date in CLAUDE.md
5. If hero keyword moves +/-5 positions, create alert note
```
### After Competitor Analysis
```markdown
1. Update CLAUDE.md -> Primary Competitors section (DA, position vs. them)
2. Save full report to memory/research/competitors/YYYY-MM-DD-analysis.md
3. Update competitor overview notes in memory/research/competitors/
4. Note new competitor strategies in hot cache
```
### After Audit (Technical/Content/Backlink)
```markdown
1. Save full report to memory/audits/[type]/YYYY-MM-DD-[audit-name].md
2. Extract top 3-5 action items -> CLAUDE.md Current Optimization Priorities
3. Update Key Metrics Snapshot if audit includes metrics
4. Create campaign entry if audit spawns new initiative
```
### After Monthly/Quarterly Report
```markdown
1. Save report to memory/monitoring/reports/[period]/YYYY-MM-report.md
2. Update all metrics in CLAUDE.md Key Metrics Snapshot
3. Review hot cache -> demote stale items
4. Update campaign statuses
5. Archive completed campaigns
```
## Archive Management
### Monthly Archive Routine
```markdown
1. Review CLAUDE.md for items not referenced in 30 days
2. Move stale items to appropriate cold storage
3. Create monthly snapshot: memory/monitoring/snapshots/YYYY-MM-CLAUDE.md
4. Compress old rank-history exports (keep recent snapshots easiest to access)
5. Update glossary with new terms from the month
```
### Quarterly Archive Routine
```markdown
1. Review entire cold storage structure
2. Compress files older than 6 months
3. Create quarterly summary report
4. Update project timeline in glossary
5. Audit all active campaigns -> archive completed ones
```
## Cross-Skill Memory Integration
This skill coordinates with other SEO skills:
### When keyword-research runs:
- Add discovered keywords to memory/research/keywords/
- Promote top opportunities to CLAUDE.md if high-value
- Update glossary if new terminology emerges
### When rank-tracker runs:
- Update memory/monitoring/rank-history/
- Refresh CLAUDE.md Hero Keywords table
- Flag significant movements for hot cache notes
### When competitor-analysis runs:
- Update competitor files in memory/research/competitors/
- Refresh CLAUDE.md Primary Competitors section
- Add new competitors if they outrank current top 5
### When content-gap-analysis runs:
- Store full findings in memory/research/content-gaps/
- Promote gap opportunities to CLAUDE.md priorities
- Update memory/content/calendar/ with recommended topics
### When seo-content-writer produces content:
- Log to memory/content/published/YYYY-MM-DD-[slug].md
- Track target keyword and publish date
- Set reminder to check performance in 30 days
### When content-quality-auditor runs:
- Save full report to `memory/audits/content/YYYY-MM-DD-core-eeat-[page-slug].md`
- Update CLAUDE.md Key Metrics with latest score
- If score < 60 (Poor/Low), flag in Active Campaigns section
- Track dimension scores for trend analysis
### When domain-authority-auditor runs:
- Save full report to memory/audits/domain/YYYY-MM-DD-cite-audit.md
- Update CITE Score in CLAUDE.md Key Metrics Snapshot
- Note veto item status and dimension scores
- Compare against previous CITE audit if available