This document outlines the architectural recommendations for each Crawlith plugin. The goal is to move foundational "intelligence" features into the core engine while maintaining a lightweight plugin system for external integrations and delivery formats.
- Core: Foundational intelligence, graph algorithms, crawler safety, and primary SEO signals.
- Plugin: External APIs, niche formats, large/heavy dependencies, and delivery/notification layers.
| Plugin | Recommendation | Rationale |
|---|---|---|
| Content Clustering | Core | Content similarity (SimHash) is a primary audit signal. Essential for finding thin content/internal competition. |
| Duplicate Detection | Core | Fundamental for graph hygiene. Handling exact/near duplicates and collapsing nodes should be native. |
| Health Score Engine | Core | This is the "brain" that aggregates all signals. A unified health score should be a core result. |
| HITS | Core | Standard graph algorithm for Hubs and Authorities; foundational to link intelligence. |
| PageRank | Core | Standard graph algorithm for centrality; foundational to link intelligence. |
| Orphan Intelligence | Core | Finding pages with zero in-links is a primary use case for crawling. |
| Crawl Policy | Core | Defining path rules and crawler constraints is better handled natively by the engine. |
| Crawl Trap Analyzer | Core | A critical safety mechanism to prevent infinite loops (e.g., dynamic calendar pages). |
| Heading Health | Core | A simple but essential structural audit that every SEO tool should have by default. |
| Soft 404 Detector | Core | Enhances crawling accuracy by identifying fake 200 OK responses. |
| Snapshot Diff | Core | Foundational for monitoring site changes over time (Monitoring/Alerting). |
| SimHash | Core | Redundant as a plugin; core utility already used by clustering and duplicate detection. |
| Exporter | Plugin | Diverse targets (CSV, S3, SQL, BigQuery) are perfect for an extensible plugin ecosystem. |
| Reporter | Plugin | Presentation logic (HTML Reports, PDF) varies widely per user; keeps core headless. |
| PageSpeed | Plugin | Heavy external dependency (PageSpeed Insights API); better as an optional module. |
| Signals | Plugin | Integrates with external platforms (GSC, Ahrefs, Moz); high maintenance/variance. |
- Move
hitsandpageranklogic into@crawlith/core/graph. - Integrate
crawl-trap-analyzerandcrawl-policyinto the@crawlith/core/crawler. - Incorporate
health-score-engineinto@crawlith/core/scoring.
- Refactor
content-clusteringandduplicate-detectioninto a dedicated@crawlith/core/analysismodule. - Add
snapshot-diffas a native capability in@crawlith/core/diff. - Add
heading-health,soft404-detector,orphan-intelligenceinto core.
- Retain
exporter,reporter,pagespeed, andsignalsas standalone packages inpackages/plugins/. - Update plugin loader in
coreto reflect the refined scope. - Remove migrated packages from
packages/plugins/.