@rankcli/agent-runtime 0.0.13 → 0.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +215 -1
- package/dist/index.d.ts +215 -1
- package/dist/index.js +847 -90
- package/dist/index.mjs +813 -60
- package/package.json +2 -1
- package/src/audit/checks/agent-experience.ts +108 -0
- package/src/audit/checks/ai-readiness.ts +67 -0
- package/src/audit/checks/client-rendering.ts +10 -10
- package/src/audit/checks/rag-chunk-readiness.test.ts +159 -0
- package/src/audit/checks/rag-chunk-readiness.ts +163 -0
- package/src/audit/checks/security-headers.ts +18 -2
- package/src/audit/engine.ts +23 -10
- package/src/audit/types.ts +24 -0
- package/src/index.ts +3 -0
- package/src/ranking/index.ts +5 -0
- package/src/ranking/serp-client.ts +348 -0
- package/src/ranking/tracker.ts +380 -0
- package/src/ranking/types.ts +123 -0
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
import { exec } from 'child_process';
|
|
3
|
+
import { SupabaseClient } from '@supabase/supabase-js';
|
|
3
4
|
|
|
4
5
|
interface AgentDefinition {
|
|
5
6
|
name: string;
|
|
@@ -563,6 +564,33 @@ declare function checkInternalRedirects(internalLinks: string[], batchSize?: num
|
|
|
563
564
|
}>;
|
|
564
565
|
}>;
|
|
565
566
|
|
|
567
|
+
/**
|
|
568
|
+
* Agent Experience (AX) readiness
|
|
569
|
+
*
|
|
570
|
+
* Classic GEO asks "can an AI crawler read this page and cite it in an
|
|
571
|
+
* answer?" — that's what ai-readiness.ts covers. AX asks a different
|
|
572
|
+
* question: "can an AI AGENT (not just a chatbot) discover what this site
|
|
573
|
+
* can DO and act on it?" — a distinct, newer discipline (named tooling in
|
|
574
|
+
* this space: AgentGrade and similar agent-readiness scanners, 2026).
|
|
575
|
+
*
|
|
576
|
+
* This checks for the machine-readable discovery surface an agent looks
|
|
577
|
+
* for before it can act: llms-full.txt (the fuller, more-fetched sibling
|
|
578
|
+
* of llms.txt), a SKILL.md capability manifest, a discoverable MCP server,
|
|
579
|
+
* and an OpenAPI spec. None of these are required — most sites won't have
|
|
580
|
+
* any of them yet, this is genuinely emerging — so absence is reported as
|
|
581
|
+
* a low-severity opportunity, not a failure.
|
|
582
|
+
*/
|
|
583
|
+
|
|
584
|
+
interface AgentExperienceSignal {
|
|
585
|
+
path: string;
|
|
586
|
+
present: boolean;
|
|
587
|
+
description: string;
|
|
588
|
+
}
|
|
589
|
+
interface AgentExperienceData {
|
|
590
|
+
signals: AgentExperienceSignal[];
|
|
591
|
+
score: number;
|
|
592
|
+
}
|
|
593
|
+
|
|
566
594
|
interface LlmsTxtResult {
|
|
567
595
|
exists: boolean;
|
|
568
596
|
content?: string;
|
|
@@ -575,10 +603,17 @@ interface AIBotBlockingResult {
|
|
|
575
603
|
allowedBots: string[];
|
|
576
604
|
allBlocked: boolean;
|
|
577
605
|
}
|
|
606
|
+
interface CloudflareAICrawlerGateResult {
|
|
607
|
+
behindCloudflare: boolean;
|
|
608
|
+
hasExplicitAIRules: boolean;
|
|
609
|
+
ambiguous: boolean;
|
|
610
|
+
}
|
|
578
611
|
interface AIReadinessData {
|
|
579
612
|
llmsTxt: LlmsTxtResult;
|
|
580
613
|
botBlocking: AIBotBlockingResult;
|
|
581
614
|
jsRenderingRatio: number;
|
|
615
|
+
cloudflareAIGate: CloudflareAICrawlerGateResult;
|
|
616
|
+
agentExperience: AgentExperienceData;
|
|
582
617
|
}
|
|
583
618
|
/**
|
|
584
619
|
* Check for llms.txt file
|
|
@@ -4808,6 +4843,185 @@ declare function getAIVisibilitySummary(results: LLMCitationResult[]): {
|
|
|
4808
4843
|
overallSentiment: 'positive' | 'neutral' | 'negative' | 'mixed' | null;
|
|
4809
4844
|
};
|
|
4810
4845
|
|
|
4846
|
+
interface TrackedKeyword {
|
|
4847
|
+
id: string;
|
|
4848
|
+
projectId: string;
|
|
4849
|
+
keyword: string;
|
|
4850
|
+
searchEngine: 'google' | 'bing' | 'duckduckgo';
|
|
4851
|
+
country: string;
|
|
4852
|
+
language: string;
|
|
4853
|
+
currentPosition: number | null;
|
|
4854
|
+
previousPosition: number | null;
|
|
4855
|
+
bestPosition: number | null;
|
|
4856
|
+
trackUrl?: string;
|
|
4857
|
+
isActive: boolean;
|
|
4858
|
+
lastChecked: Date | null;
|
|
4859
|
+
createdAt: Date;
|
|
4860
|
+
}
|
|
4861
|
+
interface RankingResult {
|
|
4862
|
+
keywordId: string;
|
|
4863
|
+
keyword: string;
|
|
4864
|
+
position: number | null;
|
|
4865
|
+
url: string | null;
|
|
4866
|
+
serpFeatures: SerpFeature[];
|
|
4867
|
+
competitorUrls: CompetitorUrl[];
|
|
4868
|
+
checkedAt: Date;
|
|
4869
|
+
}
|
|
4870
|
+
interface SerpFeature {
|
|
4871
|
+
type: 'featured_snippet' | 'people_also_ask' | 'local_pack' | 'knowledge_panel' | 'image_pack' | 'video_carousel' | 'top_stories' | 'shopping_results' | 'site_links' | 'faq_rich_result';
|
|
4872
|
+
position?: number;
|
|
4873
|
+
hasOwnSite?: boolean;
|
|
4874
|
+
}
|
|
4875
|
+
interface CompetitorUrl {
|
|
4876
|
+
position: number;
|
|
4877
|
+
url: string;
|
|
4878
|
+
domain: string;
|
|
4879
|
+
title?: string;
|
|
4880
|
+
}
|
|
4881
|
+
interface RankHistory {
|
|
4882
|
+
position: number | null;
|
|
4883
|
+
url: string | null;
|
|
4884
|
+
serpFeatures: SerpFeature[];
|
|
4885
|
+
recordedAt: Date;
|
|
4886
|
+
}
|
|
4887
|
+
interface KeywordTrend {
|
|
4888
|
+
keywordId: string;
|
|
4889
|
+
keyword: string;
|
|
4890
|
+
currentPosition: number | null;
|
|
4891
|
+
bestPosition: number | null;
|
|
4892
|
+
positionChange: number;
|
|
4893
|
+
avgPosition: number;
|
|
4894
|
+
dataPoints: number;
|
|
4895
|
+
}
|
|
4896
|
+
interface SerpApiConfig {
|
|
4897
|
+
provider: 'valueserp' | 'serpapi' | 'scraper';
|
|
4898
|
+
apiKey?: string;
|
|
4899
|
+
rateLimit?: number;
|
|
4900
|
+
}
|
|
4901
|
+
interface RankCheckOptions {
|
|
4902
|
+
keywords: string[];
|
|
4903
|
+
domain: string;
|
|
4904
|
+
searchEngine?: 'google' | 'bing';
|
|
4905
|
+
country?: string;
|
|
4906
|
+
language?: string;
|
|
4907
|
+
device?: 'desktop' | 'mobile';
|
|
4908
|
+
}
|
|
4909
|
+
interface RankCheckResult {
|
|
4910
|
+
keyword: string;
|
|
4911
|
+
position: number | null;
|
|
4912
|
+
url: string | null;
|
|
4913
|
+
serpFeatures: SerpFeature[];
|
|
4914
|
+
topResults: CompetitorUrl[];
|
|
4915
|
+
checkedAt: Date;
|
|
4916
|
+
}
|
|
4917
|
+
interface RankingTierLimits {
|
|
4918
|
+
maxKeywords: number;
|
|
4919
|
+
checksPerDay: number;
|
|
4920
|
+
serpFeatures: boolean;
|
|
4921
|
+
competitorTracking: boolean;
|
|
4922
|
+
historyDays: number;
|
|
4923
|
+
}
|
|
4924
|
+
declare const TIER_LIMITS: Record<string, RankingTierLimits>;
|
|
4925
|
+
|
|
4926
|
+
interface SerpClientConfig {
|
|
4927
|
+
provider: 'valueserp' | 'serpapi' | 'direct';
|
|
4928
|
+
apiKey?: string;
|
|
4929
|
+
proxyUrl?: string;
|
|
4930
|
+
}
|
|
4931
|
+
declare class SerpClient {
|
|
4932
|
+
private config;
|
|
4933
|
+
constructor(config: SerpClientConfig);
|
|
4934
|
+
/**
|
|
4935
|
+
* Check ranking for a single keyword
|
|
4936
|
+
*/
|
|
4937
|
+
checkRank(options: RankCheckOptions): Promise<RankCheckResult[]>;
|
|
4938
|
+
private checkSingleKeyword;
|
|
4939
|
+
/**
|
|
4940
|
+
* ValueSERP API implementation
|
|
4941
|
+
* Docs: https://www.valueserp.com/docs
|
|
4942
|
+
*/
|
|
4943
|
+
private checkViaValueSerp;
|
|
4944
|
+
/**
|
|
4945
|
+
* SerpAPI implementation (alternative)
|
|
4946
|
+
* Docs: https://serpapi.com/search-api
|
|
4947
|
+
*/
|
|
4948
|
+
private checkViaSerpApi;
|
|
4949
|
+
/**
|
|
4950
|
+
* Direct scraping fallback (rate-limited, use with caution)
|
|
4951
|
+
*/
|
|
4952
|
+
private checkViaDirect;
|
|
4953
|
+
private parseValueSerpResponse;
|
|
4954
|
+
private parseSerpApiResponse;
|
|
4955
|
+
private parseDirectSearchResults;
|
|
4956
|
+
private extractDomain;
|
|
4957
|
+
private domainMatches;
|
|
4958
|
+
}
|
|
4959
|
+
|
|
4960
|
+
interface TrackerConfig {
|
|
4961
|
+
supabase: SupabaseClient;
|
|
4962
|
+
serpConfig: SerpClientConfig;
|
|
4963
|
+
}
|
|
4964
|
+
declare class RankTracker {
|
|
4965
|
+
private supabase;
|
|
4966
|
+
private serpClient;
|
|
4967
|
+
constructor(config: TrackerConfig);
|
|
4968
|
+
/**
|
|
4969
|
+
* Add keywords to track for a project
|
|
4970
|
+
*/
|
|
4971
|
+
addKeywords(projectId: string, keywords: string[], options?: {
|
|
4972
|
+
searchEngine?: 'google' | 'bing';
|
|
4973
|
+
country?: string;
|
|
4974
|
+
language?: string;
|
|
4975
|
+
trackUrl?: string;
|
|
4976
|
+
}): Promise<TrackedKeyword[]>;
|
|
4977
|
+
/**
|
|
4978
|
+
* Remove keywords from tracking
|
|
4979
|
+
*/
|
|
4980
|
+
removeKeywords(projectId: string, keywords: string[]): Promise<void>;
|
|
4981
|
+
/**
|
|
4982
|
+
* Get all tracked keywords for a project
|
|
4983
|
+
*/
|
|
4984
|
+
getKeywords(projectId: string, includeInactive?: boolean): Promise<TrackedKeyword[]>;
|
|
4985
|
+
/**
|
|
4986
|
+
* Check rankings for all active keywords in a project
|
|
4987
|
+
*/
|
|
4988
|
+
checkRankings(projectId: string, domain: string): Promise<RankingResult[]>;
|
|
4989
|
+
/**
|
|
4990
|
+
* Save a ranking result to the database
|
|
4991
|
+
*/
|
|
4992
|
+
private saveRanking;
|
|
4993
|
+
/**
|
|
4994
|
+
* Get ranking history for a keyword
|
|
4995
|
+
* Note: Full history requires keyword_ranking_history table with keyword_ranking_id
|
|
4996
|
+
* For now, returns current state as single history entry
|
|
4997
|
+
*/
|
|
4998
|
+
getHistory(keywordId: string, _days?: number): Promise<RankHistory[]>;
|
|
4999
|
+
/**
|
|
5000
|
+
* Get keyword trends for a project
|
|
5001
|
+
*/
|
|
5002
|
+
getTrends(projectId: string): Promise<KeywordTrend[]>;
|
|
5003
|
+
/**
|
|
5004
|
+
* Manual trend calculation fallback
|
|
5005
|
+
*/
|
|
5006
|
+
private calculateTrends;
|
|
5007
|
+
/**
|
|
5008
|
+
* Export ranking data as CSV
|
|
5009
|
+
*/
|
|
5010
|
+
exportCSV(projectId: string, days?: number): Promise<string>;
|
|
5011
|
+
/**
|
|
5012
|
+
* Calculate position trend from history
|
|
5013
|
+
*/
|
|
5014
|
+
private calculatePositionTrend;
|
|
5015
|
+
/**
|
|
5016
|
+
* Group keywords by search engine and country
|
|
5017
|
+
*/
|
|
5018
|
+
private groupKeywords;
|
|
5019
|
+
/**
|
|
5020
|
+
* Map database row to TrackedKeyword
|
|
5021
|
+
*/
|
|
5022
|
+
private mapKeyword;
|
|
5023
|
+
}
|
|
5024
|
+
|
|
4811
5025
|
/**
|
|
4812
5026
|
* Mobile SEO Analyzer
|
|
4813
5027
|
*
|
|
@@ -5607,4 +5821,4 @@ interface SyncAuditResult {
|
|
|
5607
5821
|
*/
|
|
5608
5822
|
declare function runSyncAudit(url: string, html: string, checksLimit: number): SyncAuditResult;
|
|
5609
5823
|
|
|
5610
|
-
export { type AIContentConfig, type AIKeywordResearchOptions, type AgentDefinition, type AgentTool, type AlertChannel, type AlertConfig, type AlertMessage, type AlertResult, type AlertSeverity, type AlertType, type AuditAlertPayload, type AuditIssue, type AuditIssueData, type AuditOptions, type AuditPRResult, type AuditReport, type AuditReportData, type AuditRunnerOptions, type AuditRunnerResult, type AuditSchedule, type BlogPostConfig, type BrandConfig, type CIAction, type CIKeywordOptions, type CIKeywordResult, COMMIT_TYPES, type ChangelogConfig, type ChangelogResult, type CitationCheckOptions, type CommitConfig, type ComparisonConfig, type ComparisonRow, type CompetitiveInsight, type CompetitiveSearchOptions, type CompetitiveSearchResult, type CompetitorComparison, type CompetitorKeywordResult, type CompetitorOverlap, type CompetitorTool, type ContentElements, type ContentGeneratorOptions, type ContentRecommendation, type ConventionalCommit, type CrawlResult, type CrawlStats, type CrawledPage, type CreateAuditPROptions, type CreatePROptions, type DataForSEOCredentials, type DiscoveredPage, type EnhancedToolIdea, type ExecOptions, type ExecuteOptions, type ExecutionResult, type FAQItem, type FAQSchemaOptions, type FeaturedSnippetAnalysis, type Fix, type FixFile, type FixGeneratorOptions, type FixResult, type FrameworkInfo$1 as FrameworkInfo, type FreeKeywordResult, type FreeToolIdea, type GA4Config, type GEOAlert, type GEOAlertType, type GEOHistory, type GEOHistoryOptions, type GEOQuery, type GEOReport, type GEOResult, type GEOTrend, type GSCConfig, type GSCCredentials, type GSCPerformanceData, type GSCQueryData, type GSCQueryResult, type GeneratedCode, type GeneratedContent, type GeneratedFix, type HeadingStructure, type HeadlineAnalysis, type HealthScore, ISSUE_DEFINITIONS, type ImageInfo$2 as ImageInfo, type InjectionResult, type IntentAnalysis, type IssueCategory, type IssueDefinition, type IssueSeverity, type KeyFact, type KeyFactsOptions, type KeywordAction, type KeywordCluster, type KeywordData, type KeywordDensityAnalysis, type KeywordOpportunity, type KeywordRecommendation, type KeywordResearchOptions, type KeywordResearchResult, type KeywordStats, type KeywordTopic, type LLMCitationResult, type LLMJudgeOptions, type LLMProvider, LOCATION_CODES, type LSIKeyword, type LinkInfo$1 as LinkInfo, type Mention, type MentionType, type MetaData, type MetaFixOptions, type NGram, type NLPAnalysisResult, OG_IMAGE_SPECS, type OptimizeOptions, type PRConfig, type PRDescription, PRIORITY_WEIGHTS, type PRResult, type PageAudit, type PageData, type PageMeta, type PaidKeywordResult, type ParsedResponse, type PlanTier, type ProviderStats, type QuickWin, type ReadabilityResult, type ReadmeConfig, type ReadmeResult, type ReportBranding, type ReportConfig, type ReportData, type ReportPageData, type RouteInfo, type SEOAnalysisResult, type SEOFixCommit, type SEOFixSummary, type SEOIssue, type SEORecommendation, type SEOScore, SEO_SCOPES, SITE_PROFILE_QUESTIONS, type ScheduledAuditConfig, type ScheduledAuditResult, type SchemaData, Schemas, type SearchIntent, type Sentiment, type SiteCrawlResult, type SiteProfile, type SiteSummary, type SnippetRecommendation, type SnippetType, type SocialMetaConfig, type SocialMetaFix, type SummarizerOptions, type TFIDFResult, type ToolFeasibilityScore, type ToolFunction, type ToolResult, type TopicClusterResult, type TopicModel, type TrackingOptions, type TrendDirection, type UncertaintyAssessment, type WizardQuestion, type WizardResponse, type WizardResult, type WizardSession, type WorkflowConfig, addTrackingResult, analyzeAnchorText, analyzeCanonicalAdvanced, analyzeClientRendering, analyzeContentFreshness, analyzeConversionElements, analyzeDOMStructure, analyzeEntitySEO, analyzeFeaturedSnippetPotential, analyzeFreshnessSignals, analyzeFunnelIntent, analyzeHeadings, analyzeHeadline, analyzeHreflang, analyzeImages$1 as analyzeImages, analyzeInteractiveTools, analyzeKeywordDensity, analyzeKeywordPlacement, analyzeKeywords, analyzeLinks, analyzeLocalSEO, analyzeMobile, analyzeModernImages, analyzeNavBoostSignals, analyzeOnPage, analyzePagination, analyzePerformance, analyzePlatformPresence, analyzeReadability, analyzeRedirectChain, analyzeRedirects, analyzeResponsiveImages, analyzeSERPPreview, analyzeSecurity, analyzeSecurityHeaders$1 as analyzeSecurityHeaders, analyzeSocialMeta, analyzeStructuredData$1 as analyzeStructuredData, analyzeTopicalClusters, analyzeTrackerBloat, analyzeUrl, analyzeUrlSafety, index$1 as analyzers, applyFixes, buildGSCApiRequest, buildGSCRequest, calculateAIVisibilityScore, calculateBM25, calculateTFIDF$1 as calculateKeywordTFIDF, calculateNextRun, calculateTFIDF, checkAIBotBlocking, checkAMP, checkAdsTxt, checkAppleTouchIcon, checkBalance, checkCertificate, checkDMARC, checkGitHubCLI, checkInternalRedirects, checkJSRenderingRatio, checkLLMCitations, checkLlmsTxt, checkMobileResources, checkPlaintextEmails, checkRedirects, checkRobots, checkRobotsTxt, checkSPF, checkSitemap, classifyIntent, classifyIntents, clusterKeywordsByEmbedding, compareCompetitorVisibility, comparePeriods, completeWizard, crawlSite, crawlUrl, createAuditPR, createFallbackSummary, createGEOHistory, createPullRequest, createSEOCommit, createSEOCommits, detectDuplicates, detectFramework$1 as detectFramework, detectGitHubPages, detectMentions, detectSoft404, detectTechnologies, detectVisibilityChanges, discoverCompetitorKeywords, discoverPagesFromLinks, discoverRoutesFromRepo, enhanceSummaryWithCompetitors, enhanceToolIdea, enrichKeywordsWithEstimates, ensureGitRepo, evaluateAndEnhanceToolIdeas, evaluateToolFeasibility, executeAgent, extractContentHash, extractEntityPhrases, extractImages, extractKeyPhrases, extractLinks, extractMeta, extractNgrams, extractSchema, extractSeedKeywords, extractTopics, fetchCoreWebVitals, findAlmostPage1Keywords, findCTROpportunities, findHtmlEntry, findLSIKeywords, findPageFiles, findTopPerformers, formatAlertMessage, formatCIResult, formatCompetitorReport, formatConventionalCommit, formatFeaturedSnippetReport, formatHeadlineReport, formatIntentReport, formatKeywordDensityReport, formatKeywordReport, formatPRBody, formatPRTitle, formatReadabilityReport, formatReport, formatSEOCommitMessage, formatTopicReport, formatWizardProgress, index as frameworks, generateAICitableContent, generateAllFixes, generateAngularSEOService, generateAspNetCoreSEO, generateAstroBaseHead, generateAstroMeta, generateBlogPost, generateBranchName, generateChangelog, generateCommitSummary, generateComparisonTable, generateCompleteSocialMetaSetup, generateDjangoSEOHelper, generateDuplicateIssues, generateEleventySEO, generateFAQSchema, generateFixes, generateGA4EnvTemplate, generateGA4ReactComponent, generateGA4Script, generateGA4ViteScript, generateGEOReport, generateGSCVerificationTag, generateGitHubActionSetup, generateGoSEO, generateHTMLReport, generateHTMLSocialMeta, generateHTMXSEO, generateHeadlineVariations, generateHugoSEO, generateJekyllSEO, generateJsonReport, generateKeyFacts, generateLaravelSEOHelper, generateMarkdownReport, generateNextAppMetadata, generateNextJsAppRouterMetadata, generateNextJsPagesRouterHead, generateNextPagesHead, generateNuxtSEOHead, generatePDFReport, generatePRDescription, generatePhoenixSEO, generateRailsSEOHelper, generateReactHelmetSocialMeta, generateReactSEOHead, generateRecommendationQueries, generateRemixMeta, generateRemixSEO, generateSecretsDoc, generateSocialMetaFix, generateSpringBootSEO, generateSvelteKitMeta, generateSvelteKitSEOHead, generateUncertaintyQuestions, generateVueSEOHead, generateWizardQuestions, generateWorkflow, getAIVisibilitySummary, getAutocompleteSuggestions, getDateRange, getExpandedSuggestions, getFrameworkSpecificFix, getFrameworkSpecificFixExtended, getGSCSetupInstructions, getGitUser, getKeywordData, getKeywordSuggestions, getMaxKdThreshold, getNextQuestion, getRelatedKeywords, getVisibilityTrend, groupKeywordsByTopic, identifyQuickWins, injectGA4, injectGSCVerification, interpolatePrompt, isGitRepo, listFiles, loadAgent, loadAgentByName, mergePages, optimizeForAI, optimizeReadme, parseGEOResponse, parseGSCResponse, parseSitemap, prioritizeKeywords, processWizardResponse, readFile, routesToUrls, runAIKeywordResearch, runAIReadinessChecks, runAdditionalChecks, runAuditWithFixes, runCIKeywordResearch, runCrawlabilityChecks, runDirectAnalysis, runFullAudit, runKeywordResearch, runNLPAnalysis, runScheduledAudit, runSyncAudit, scoreContentSEO, scoreMention, searchCompetitors, searchFormatConverters, searchHackerNews, sendAlert, sendAlerts, sendDiscordAlert, sendSlackAlert, shouldRunAudit, shouldSendAlert, startWizardSession, suggestSchemaTypes, summarizeSite, tokenize, tools, trackLLMVisibility, transformGSCData, urlSafetyDatabase, wizardResponsesToContext, writeFile, writeGitHubActionFiles };
|
|
5824
|
+
export { type AIContentConfig, type AIKeywordResearchOptions, type AgentDefinition, type AgentTool, type AlertChannel, type AlertConfig, type AlertMessage, type AlertResult, type AlertSeverity, type AlertType, type AuditAlertPayload, type AuditIssue, type AuditIssueData, type AuditOptions, type AuditPRResult, type AuditReport, type AuditReportData, type AuditRunnerOptions, type AuditRunnerResult, type AuditSchedule, type BlogPostConfig, type BrandConfig, type CIAction, type CIKeywordOptions, type CIKeywordResult, COMMIT_TYPES, type ChangelogConfig, type ChangelogResult, type CitationCheckOptions, type CommitConfig, type ComparisonConfig, type ComparisonRow, type CompetitiveInsight, type CompetitiveSearchOptions, type CompetitiveSearchResult, type CompetitorComparison, type CompetitorKeywordResult, type CompetitorOverlap, type CompetitorTool, type CompetitorUrl, type ContentElements, type ContentGeneratorOptions, type ContentRecommendation, type ConventionalCommit, type CrawlResult, type CrawlStats, type CrawledPage, type CreateAuditPROptions, type CreatePROptions, type DataForSEOCredentials, type DiscoveredPage, type EnhancedToolIdea, type ExecOptions, type ExecuteOptions, type ExecutionResult, type FAQItem, type FAQSchemaOptions, type FeaturedSnippetAnalysis, type Fix, type FixFile, type FixGeneratorOptions, type FixResult, type FrameworkInfo$1 as FrameworkInfo, type FreeKeywordResult, type FreeToolIdea, type GA4Config, type GEOAlert, type GEOAlertType, type GEOHistory, type GEOHistoryOptions, type GEOQuery, type GEOReport, type GEOResult, type GEOTrend, type GSCConfig, type GSCCredentials, type GSCPerformanceData, type GSCQueryData, type GSCQueryResult, type GeneratedCode, type GeneratedContent, type GeneratedFix, type HeadingStructure, type HeadlineAnalysis, type HealthScore, ISSUE_DEFINITIONS, type ImageInfo$2 as ImageInfo, type InjectionResult, type IntentAnalysis, type IssueCategory, type IssueDefinition, type IssueSeverity, type KeyFact, type KeyFactsOptions, type KeywordAction, type KeywordCluster, type KeywordData, type KeywordDensityAnalysis, type KeywordOpportunity, type KeywordRecommendation, type KeywordResearchOptions, type KeywordResearchResult, type KeywordStats, type KeywordTopic, type KeywordTrend, type LLMCitationResult, type LLMJudgeOptions, type LLMProvider, LOCATION_CODES, type LSIKeyword, type LinkInfo$1 as LinkInfo, type Mention, type MentionType, type MetaData, type MetaFixOptions, type NGram, type NLPAnalysisResult, OG_IMAGE_SPECS, type OptimizeOptions, type PRConfig, type PRDescription, PRIORITY_WEIGHTS, type PRResult, type PageAudit, type PageData, type PageMeta, type PaidKeywordResult, type ParsedResponse, type PlanTier, type ProviderStats, type QuickWin, type RankCheckOptions, type RankCheckResult, type RankHistory, RankTracker, type RankingResult, type RankingTierLimits, type ReadabilityResult, type ReadmeConfig, type ReadmeResult, type ReportBranding, type ReportConfig, type ReportData, type ReportPageData, type RouteInfo, type SEOAnalysisResult, type SEOFixCommit, type SEOFixSummary, type SEOIssue, type SEORecommendation, type SEOScore, SEO_SCOPES, SITE_PROFILE_QUESTIONS, type ScheduledAuditConfig, type ScheduledAuditResult, type SchemaData, Schemas, type SearchIntent, type Sentiment, type SerpApiConfig, SerpClient, type SerpClientConfig, type SerpFeature, type SiteCrawlResult, type SiteProfile, type SiteSummary, type SnippetRecommendation, type SnippetType, type SocialMetaConfig, type SocialMetaFix, type SummarizerOptions, type TFIDFResult, TIER_LIMITS, type ToolFeasibilityScore, type ToolFunction, type ToolResult, type TopicClusterResult, type TopicModel, type TrackedKeyword, type TrackerConfig, type TrackingOptions, type TrendDirection, type UncertaintyAssessment, type WizardQuestion, type WizardResponse, type WizardResult, type WizardSession, type WorkflowConfig, addTrackingResult, analyzeAnchorText, analyzeCanonicalAdvanced, analyzeClientRendering, analyzeContentFreshness, analyzeConversionElements, analyzeDOMStructure, analyzeEntitySEO, analyzeFeaturedSnippetPotential, analyzeFreshnessSignals, analyzeFunnelIntent, analyzeHeadings, analyzeHeadline, analyzeHreflang, analyzeImages$1 as analyzeImages, analyzeInteractiveTools, analyzeKeywordDensity, analyzeKeywordPlacement, analyzeKeywords, analyzeLinks, analyzeLocalSEO, analyzeMobile, analyzeModernImages, analyzeNavBoostSignals, analyzeOnPage, analyzePagination, analyzePerformance, analyzePlatformPresence, analyzeReadability, analyzeRedirectChain, analyzeRedirects, analyzeResponsiveImages, analyzeSERPPreview, analyzeSecurity, analyzeSecurityHeaders$1 as analyzeSecurityHeaders, analyzeSocialMeta, analyzeStructuredData$1 as analyzeStructuredData, analyzeTopicalClusters, analyzeTrackerBloat, analyzeUrl, analyzeUrlSafety, index$1 as analyzers, applyFixes, buildGSCApiRequest, buildGSCRequest, calculateAIVisibilityScore, calculateBM25, calculateTFIDF$1 as calculateKeywordTFIDF, calculateNextRun, calculateTFIDF, checkAIBotBlocking, checkAMP, checkAdsTxt, checkAppleTouchIcon, checkBalance, checkCertificate, checkDMARC, checkGitHubCLI, checkInternalRedirects, checkJSRenderingRatio, checkLLMCitations, checkLlmsTxt, checkMobileResources, checkPlaintextEmails, checkRedirects, checkRobots, checkRobotsTxt, checkSPF, checkSitemap, classifyIntent, classifyIntents, clusterKeywordsByEmbedding, compareCompetitorVisibility, comparePeriods, completeWizard, crawlSite, crawlUrl, createAuditPR, createFallbackSummary, createGEOHistory, createPullRequest, createSEOCommit, createSEOCommits, detectDuplicates, detectFramework$1 as detectFramework, detectGitHubPages, detectMentions, detectSoft404, detectTechnologies, detectVisibilityChanges, discoverCompetitorKeywords, discoverPagesFromLinks, discoverRoutesFromRepo, enhanceSummaryWithCompetitors, enhanceToolIdea, enrichKeywordsWithEstimates, ensureGitRepo, evaluateAndEnhanceToolIdeas, evaluateToolFeasibility, executeAgent, extractContentHash, extractEntityPhrases, extractImages, extractKeyPhrases, extractLinks, extractMeta, extractNgrams, extractSchema, extractSeedKeywords, extractTopics, fetchCoreWebVitals, findAlmostPage1Keywords, findCTROpportunities, findHtmlEntry, findLSIKeywords, findPageFiles, findTopPerformers, formatAlertMessage, formatCIResult, formatCompetitorReport, formatConventionalCommit, formatFeaturedSnippetReport, formatHeadlineReport, formatIntentReport, formatKeywordDensityReport, formatKeywordReport, formatPRBody, formatPRTitle, formatReadabilityReport, formatReport, formatSEOCommitMessage, formatTopicReport, formatWizardProgress, index as frameworks, generateAICitableContent, generateAllFixes, generateAngularSEOService, generateAspNetCoreSEO, generateAstroBaseHead, generateAstroMeta, generateBlogPost, generateBranchName, generateChangelog, generateCommitSummary, generateComparisonTable, generateCompleteSocialMetaSetup, generateDjangoSEOHelper, generateDuplicateIssues, generateEleventySEO, generateFAQSchema, generateFixes, generateGA4EnvTemplate, generateGA4ReactComponent, generateGA4Script, generateGA4ViteScript, generateGEOReport, generateGSCVerificationTag, generateGitHubActionSetup, generateGoSEO, generateHTMLReport, generateHTMLSocialMeta, generateHTMXSEO, generateHeadlineVariations, generateHugoSEO, generateJekyllSEO, generateJsonReport, generateKeyFacts, generateLaravelSEOHelper, generateMarkdownReport, generateNextAppMetadata, generateNextJsAppRouterMetadata, generateNextJsPagesRouterHead, generateNextPagesHead, generateNuxtSEOHead, generatePDFReport, generatePRDescription, generatePhoenixSEO, generateRailsSEOHelper, generateReactHelmetSocialMeta, generateReactSEOHead, generateRecommendationQueries, generateRemixMeta, generateRemixSEO, generateSecretsDoc, generateSocialMetaFix, generateSpringBootSEO, generateSvelteKitMeta, generateSvelteKitSEOHead, generateUncertaintyQuestions, generateVueSEOHead, generateWizardQuestions, generateWorkflow, getAIVisibilitySummary, getAutocompleteSuggestions, getDateRange, getExpandedSuggestions, getFrameworkSpecificFix, getFrameworkSpecificFixExtended, getGSCSetupInstructions, getGitUser, getKeywordData, getKeywordSuggestions, getMaxKdThreshold, getNextQuestion, getRelatedKeywords, getVisibilityTrend, groupKeywordsByTopic, identifyQuickWins, injectGA4, injectGSCVerification, interpolatePrompt, isGitRepo, listFiles, loadAgent, loadAgentByName, mergePages, optimizeForAI, optimizeReadme, parseGEOResponse, parseGSCResponse, parseSitemap, prioritizeKeywords, processWizardResponse, readFile, routesToUrls, runAIKeywordResearch, runAIReadinessChecks, runAdditionalChecks, runAuditWithFixes, runCIKeywordResearch, runCrawlabilityChecks, runDirectAnalysis, runFullAudit, runKeywordResearch, runNLPAnalysis, runScheduledAudit, runSyncAudit, scoreContentSEO, scoreMention, searchCompetitors, searchFormatConverters, searchHackerNews, sendAlert, sendAlerts, sendDiscordAlert, sendSlackAlert, shouldRunAudit, shouldSendAlert, startWizardSession, suggestSchemaTypes, summarizeSite, tokenize, tools, trackLLMVisibility, transformGSCData, urlSafetyDatabase, wizardResponsesToContext, writeFile, writeGitHubActionFiles };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
import { exec } from 'child_process';
|
|
3
|
+
import { SupabaseClient } from '@supabase/supabase-js';
|
|
3
4
|
|
|
4
5
|
interface AgentDefinition {
|
|
5
6
|
name: string;
|
|
@@ -563,6 +564,33 @@ declare function checkInternalRedirects(internalLinks: string[], batchSize?: num
|
|
|
563
564
|
}>;
|
|
564
565
|
}>;
|
|
565
566
|
|
|
567
|
+
/**
|
|
568
|
+
* Agent Experience (AX) readiness
|
|
569
|
+
*
|
|
570
|
+
* Classic GEO asks "can an AI crawler read this page and cite it in an
|
|
571
|
+
* answer?" — that's what ai-readiness.ts covers. AX asks a different
|
|
572
|
+
* question: "can an AI AGENT (not just a chatbot) discover what this site
|
|
573
|
+
* can DO and act on it?" — a distinct, newer discipline (named tooling in
|
|
574
|
+
* this space: AgentGrade and similar agent-readiness scanners, 2026).
|
|
575
|
+
*
|
|
576
|
+
* This checks for the machine-readable discovery surface an agent looks
|
|
577
|
+
* for before it can act: llms-full.txt (the fuller, more-fetched sibling
|
|
578
|
+
* of llms.txt), a SKILL.md capability manifest, a discoverable MCP server,
|
|
579
|
+
* and an OpenAPI spec. None of these are required — most sites won't have
|
|
580
|
+
* any of them yet, this is genuinely emerging — so absence is reported as
|
|
581
|
+
* a low-severity opportunity, not a failure.
|
|
582
|
+
*/
|
|
583
|
+
|
|
584
|
+
interface AgentExperienceSignal {
|
|
585
|
+
path: string;
|
|
586
|
+
present: boolean;
|
|
587
|
+
description: string;
|
|
588
|
+
}
|
|
589
|
+
interface AgentExperienceData {
|
|
590
|
+
signals: AgentExperienceSignal[];
|
|
591
|
+
score: number;
|
|
592
|
+
}
|
|
593
|
+
|
|
566
594
|
interface LlmsTxtResult {
|
|
567
595
|
exists: boolean;
|
|
568
596
|
content?: string;
|
|
@@ -575,10 +603,17 @@ interface AIBotBlockingResult {
|
|
|
575
603
|
allowedBots: string[];
|
|
576
604
|
allBlocked: boolean;
|
|
577
605
|
}
|
|
606
|
+
interface CloudflareAICrawlerGateResult {
|
|
607
|
+
behindCloudflare: boolean;
|
|
608
|
+
hasExplicitAIRules: boolean;
|
|
609
|
+
ambiguous: boolean;
|
|
610
|
+
}
|
|
578
611
|
interface AIReadinessData {
|
|
579
612
|
llmsTxt: LlmsTxtResult;
|
|
580
613
|
botBlocking: AIBotBlockingResult;
|
|
581
614
|
jsRenderingRatio: number;
|
|
615
|
+
cloudflareAIGate: CloudflareAICrawlerGateResult;
|
|
616
|
+
agentExperience: AgentExperienceData;
|
|
582
617
|
}
|
|
583
618
|
/**
|
|
584
619
|
* Check for llms.txt file
|
|
@@ -4808,6 +4843,185 @@ declare function getAIVisibilitySummary(results: LLMCitationResult[]): {
|
|
|
4808
4843
|
overallSentiment: 'positive' | 'neutral' | 'negative' | 'mixed' | null;
|
|
4809
4844
|
};
|
|
4810
4845
|
|
|
4846
|
+
interface TrackedKeyword {
|
|
4847
|
+
id: string;
|
|
4848
|
+
projectId: string;
|
|
4849
|
+
keyword: string;
|
|
4850
|
+
searchEngine: 'google' | 'bing' | 'duckduckgo';
|
|
4851
|
+
country: string;
|
|
4852
|
+
language: string;
|
|
4853
|
+
currentPosition: number | null;
|
|
4854
|
+
previousPosition: number | null;
|
|
4855
|
+
bestPosition: number | null;
|
|
4856
|
+
trackUrl?: string;
|
|
4857
|
+
isActive: boolean;
|
|
4858
|
+
lastChecked: Date | null;
|
|
4859
|
+
createdAt: Date;
|
|
4860
|
+
}
|
|
4861
|
+
interface RankingResult {
|
|
4862
|
+
keywordId: string;
|
|
4863
|
+
keyword: string;
|
|
4864
|
+
position: number | null;
|
|
4865
|
+
url: string | null;
|
|
4866
|
+
serpFeatures: SerpFeature[];
|
|
4867
|
+
competitorUrls: CompetitorUrl[];
|
|
4868
|
+
checkedAt: Date;
|
|
4869
|
+
}
|
|
4870
|
+
interface SerpFeature {
|
|
4871
|
+
type: 'featured_snippet' | 'people_also_ask' | 'local_pack' | 'knowledge_panel' | 'image_pack' | 'video_carousel' | 'top_stories' | 'shopping_results' | 'site_links' | 'faq_rich_result';
|
|
4872
|
+
position?: number;
|
|
4873
|
+
hasOwnSite?: boolean;
|
|
4874
|
+
}
|
|
4875
|
+
interface CompetitorUrl {
|
|
4876
|
+
position: number;
|
|
4877
|
+
url: string;
|
|
4878
|
+
domain: string;
|
|
4879
|
+
title?: string;
|
|
4880
|
+
}
|
|
4881
|
+
interface RankHistory {
|
|
4882
|
+
position: number | null;
|
|
4883
|
+
url: string | null;
|
|
4884
|
+
serpFeatures: SerpFeature[];
|
|
4885
|
+
recordedAt: Date;
|
|
4886
|
+
}
|
|
4887
|
+
interface KeywordTrend {
|
|
4888
|
+
keywordId: string;
|
|
4889
|
+
keyword: string;
|
|
4890
|
+
currentPosition: number | null;
|
|
4891
|
+
bestPosition: number | null;
|
|
4892
|
+
positionChange: number;
|
|
4893
|
+
avgPosition: number;
|
|
4894
|
+
dataPoints: number;
|
|
4895
|
+
}
|
|
4896
|
+
interface SerpApiConfig {
|
|
4897
|
+
provider: 'valueserp' | 'serpapi' | 'scraper';
|
|
4898
|
+
apiKey?: string;
|
|
4899
|
+
rateLimit?: number;
|
|
4900
|
+
}
|
|
4901
|
+
interface RankCheckOptions {
|
|
4902
|
+
keywords: string[];
|
|
4903
|
+
domain: string;
|
|
4904
|
+
searchEngine?: 'google' | 'bing';
|
|
4905
|
+
country?: string;
|
|
4906
|
+
language?: string;
|
|
4907
|
+
device?: 'desktop' | 'mobile';
|
|
4908
|
+
}
|
|
4909
|
+
interface RankCheckResult {
|
|
4910
|
+
keyword: string;
|
|
4911
|
+
position: number | null;
|
|
4912
|
+
url: string | null;
|
|
4913
|
+
serpFeatures: SerpFeature[];
|
|
4914
|
+
topResults: CompetitorUrl[];
|
|
4915
|
+
checkedAt: Date;
|
|
4916
|
+
}
|
|
4917
|
+
interface RankingTierLimits {
|
|
4918
|
+
maxKeywords: number;
|
|
4919
|
+
checksPerDay: number;
|
|
4920
|
+
serpFeatures: boolean;
|
|
4921
|
+
competitorTracking: boolean;
|
|
4922
|
+
historyDays: number;
|
|
4923
|
+
}
|
|
4924
|
+
declare const TIER_LIMITS: Record<string, RankingTierLimits>;
|
|
4925
|
+
|
|
4926
|
+
interface SerpClientConfig {
|
|
4927
|
+
provider: 'valueserp' | 'serpapi' | 'direct';
|
|
4928
|
+
apiKey?: string;
|
|
4929
|
+
proxyUrl?: string;
|
|
4930
|
+
}
|
|
4931
|
+
declare class SerpClient {
|
|
4932
|
+
private config;
|
|
4933
|
+
constructor(config: SerpClientConfig);
|
|
4934
|
+
/**
|
|
4935
|
+
* Check ranking for a single keyword
|
|
4936
|
+
*/
|
|
4937
|
+
checkRank(options: RankCheckOptions): Promise<RankCheckResult[]>;
|
|
4938
|
+
private checkSingleKeyword;
|
|
4939
|
+
/**
|
|
4940
|
+
* ValueSERP API implementation
|
|
4941
|
+
* Docs: https://www.valueserp.com/docs
|
|
4942
|
+
*/
|
|
4943
|
+
private checkViaValueSerp;
|
|
4944
|
+
/**
|
|
4945
|
+
* SerpAPI implementation (alternative)
|
|
4946
|
+
* Docs: https://serpapi.com/search-api
|
|
4947
|
+
*/
|
|
4948
|
+
private checkViaSerpApi;
|
|
4949
|
+
/**
|
|
4950
|
+
* Direct scraping fallback (rate-limited, use with caution)
|
|
4951
|
+
*/
|
|
4952
|
+
private checkViaDirect;
|
|
4953
|
+
private parseValueSerpResponse;
|
|
4954
|
+
private parseSerpApiResponse;
|
|
4955
|
+
private parseDirectSearchResults;
|
|
4956
|
+
private extractDomain;
|
|
4957
|
+
private domainMatches;
|
|
4958
|
+
}
|
|
4959
|
+
|
|
4960
|
+
interface TrackerConfig {
|
|
4961
|
+
supabase: SupabaseClient;
|
|
4962
|
+
serpConfig: SerpClientConfig;
|
|
4963
|
+
}
|
|
4964
|
+
declare class RankTracker {
|
|
4965
|
+
private supabase;
|
|
4966
|
+
private serpClient;
|
|
4967
|
+
constructor(config: TrackerConfig);
|
|
4968
|
+
/**
|
|
4969
|
+
* Add keywords to track for a project
|
|
4970
|
+
*/
|
|
4971
|
+
addKeywords(projectId: string, keywords: string[], options?: {
|
|
4972
|
+
searchEngine?: 'google' | 'bing';
|
|
4973
|
+
country?: string;
|
|
4974
|
+
language?: string;
|
|
4975
|
+
trackUrl?: string;
|
|
4976
|
+
}): Promise<TrackedKeyword[]>;
|
|
4977
|
+
/**
|
|
4978
|
+
* Remove keywords from tracking
|
|
4979
|
+
*/
|
|
4980
|
+
removeKeywords(projectId: string, keywords: string[]): Promise<void>;
|
|
4981
|
+
/**
|
|
4982
|
+
* Get all tracked keywords for a project
|
|
4983
|
+
*/
|
|
4984
|
+
getKeywords(projectId: string, includeInactive?: boolean): Promise<TrackedKeyword[]>;
|
|
4985
|
+
/**
|
|
4986
|
+
* Check rankings for all active keywords in a project
|
|
4987
|
+
*/
|
|
4988
|
+
checkRankings(projectId: string, domain: string): Promise<RankingResult[]>;
|
|
4989
|
+
/**
|
|
4990
|
+
* Save a ranking result to the database
|
|
4991
|
+
*/
|
|
4992
|
+
private saveRanking;
|
|
4993
|
+
/**
|
|
4994
|
+
* Get ranking history for a keyword
|
|
4995
|
+
* Note: Full history requires keyword_ranking_history table with keyword_ranking_id
|
|
4996
|
+
* For now, returns current state as single history entry
|
|
4997
|
+
*/
|
|
4998
|
+
getHistory(keywordId: string, _days?: number): Promise<RankHistory[]>;
|
|
4999
|
+
/**
|
|
5000
|
+
* Get keyword trends for a project
|
|
5001
|
+
*/
|
|
5002
|
+
getTrends(projectId: string): Promise<KeywordTrend[]>;
|
|
5003
|
+
/**
|
|
5004
|
+
* Manual trend calculation fallback
|
|
5005
|
+
*/
|
|
5006
|
+
private calculateTrends;
|
|
5007
|
+
/**
|
|
5008
|
+
* Export ranking data as CSV
|
|
5009
|
+
*/
|
|
5010
|
+
exportCSV(projectId: string, days?: number): Promise<string>;
|
|
5011
|
+
/**
|
|
5012
|
+
* Calculate position trend from history
|
|
5013
|
+
*/
|
|
5014
|
+
private calculatePositionTrend;
|
|
5015
|
+
/**
|
|
5016
|
+
* Group keywords by search engine and country
|
|
5017
|
+
*/
|
|
5018
|
+
private groupKeywords;
|
|
5019
|
+
/**
|
|
5020
|
+
* Map database row to TrackedKeyword
|
|
5021
|
+
*/
|
|
5022
|
+
private mapKeyword;
|
|
5023
|
+
}
|
|
5024
|
+
|
|
4811
5025
|
/**
|
|
4812
5026
|
* Mobile SEO Analyzer
|
|
4813
5027
|
*
|
|
@@ -5607,4 +5821,4 @@ interface SyncAuditResult {
|
|
|
5607
5821
|
*/
|
|
5608
5822
|
declare function runSyncAudit(url: string, html: string, checksLimit: number): SyncAuditResult;
|
|
5609
5823
|
|
|
5610
|
-
export { type AIContentConfig, type AIKeywordResearchOptions, type AgentDefinition, type AgentTool, type AlertChannel, type AlertConfig, type AlertMessage, type AlertResult, type AlertSeverity, type AlertType, type AuditAlertPayload, type AuditIssue, type AuditIssueData, type AuditOptions, type AuditPRResult, type AuditReport, type AuditReportData, type AuditRunnerOptions, type AuditRunnerResult, type AuditSchedule, type BlogPostConfig, type BrandConfig, type CIAction, type CIKeywordOptions, type CIKeywordResult, COMMIT_TYPES, type ChangelogConfig, type ChangelogResult, type CitationCheckOptions, type CommitConfig, type ComparisonConfig, type ComparisonRow, type CompetitiveInsight, type CompetitiveSearchOptions, type CompetitiveSearchResult, type CompetitorComparison, type CompetitorKeywordResult, type CompetitorOverlap, type CompetitorTool, type ContentElements, type ContentGeneratorOptions, type ContentRecommendation, type ConventionalCommit, type CrawlResult, type CrawlStats, type CrawledPage, type CreateAuditPROptions, type CreatePROptions, type DataForSEOCredentials, type DiscoveredPage, type EnhancedToolIdea, type ExecOptions, type ExecuteOptions, type ExecutionResult, type FAQItem, type FAQSchemaOptions, type FeaturedSnippetAnalysis, type Fix, type FixFile, type FixGeneratorOptions, type FixResult, type FrameworkInfo$1 as FrameworkInfo, type FreeKeywordResult, type FreeToolIdea, type GA4Config, type GEOAlert, type GEOAlertType, type GEOHistory, type GEOHistoryOptions, type GEOQuery, type GEOReport, type GEOResult, type GEOTrend, type GSCConfig, type GSCCredentials, type GSCPerformanceData, type GSCQueryData, type GSCQueryResult, type GeneratedCode, type GeneratedContent, type GeneratedFix, type HeadingStructure, type HeadlineAnalysis, type HealthScore, ISSUE_DEFINITIONS, type ImageInfo$2 as ImageInfo, type InjectionResult, type IntentAnalysis, type IssueCategory, type IssueDefinition, type IssueSeverity, type KeyFact, type KeyFactsOptions, type KeywordAction, type KeywordCluster, type KeywordData, type KeywordDensityAnalysis, type KeywordOpportunity, type KeywordRecommendation, type KeywordResearchOptions, type KeywordResearchResult, type KeywordStats, type KeywordTopic, type LLMCitationResult, type LLMJudgeOptions, type LLMProvider, LOCATION_CODES, type LSIKeyword, type LinkInfo$1 as LinkInfo, type Mention, type MentionType, type MetaData, type MetaFixOptions, type NGram, type NLPAnalysisResult, OG_IMAGE_SPECS, type OptimizeOptions, type PRConfig, type PRDescription, PRIORITY_WEIGHTS, type PRResult, type PageAudit, type PageData, type PageMeta, type PaidKeywordResult, type ParsedResponse, type PlanTier, type ProviderStats, type QuickWin, type ReadabilityResult, type ReadmeConfig, type ReadmeResult, type ReportBranding, type ReportConfig, type ReportData, type ReportPageData, type RouteInfo, type SEOAnalysisResult, type SEOFixCommit, type SEOFixSummary, type SEOIssue, type SEORecommendation, type SEOScore, SEO_SCOPES, SITE_PROFILE_QUESTIONS, type ScheduledAuditConfig, type ScheduledAuditResult, type SchemaData, Schemas, type SearchIntent, type Sentiment, type SiteCrawlResult, type SiteProfile, type SiteSummary, type SnippetRecommendation, type SnippetType, type SocialMetaConfig, type SocialMetaFix, type SummarizerOptions, type TFIDFResult, type ToolFeasibilityScore, type ToolFunction, type ToolResult, type TopicClusterResult, type TopicModel, type TrackingOptions, type TrendDirection, type UncertaintyAssessment, type WizardQuestion, type WizardResponse, type WizardResult, type WizardSession, type WorkflowConfig, addTrackingResult, analyzeAnchorText, analyzeCanonicalAdvanced, analyzeClientRendering, analyzeContentFreshness, analyzeConversionElements, analyzeDOMStructure, analyzeEntitySEO, analyzeFeaturedSnippetPotential, analyzeFreshnessSignals, analyzeFunnelIntent, analyzeHeadings, analyzeHeadline, analyzeHreflang, analyzeImages$1 as analyzeImages, analyzeInteractiveTools, analyzeKeywordDensity, analyzeKeywordPlacement, analyzeKeywords, analyzeLinks, analyzeLocalSEO, analyzeMobile, analyzeModernImages, analyzeNavBoostSignals, analyzeOnPage, analyzePagination, analyzePerformance, analyzePlatformPresence, analyzeReadability, analyzeRedirectChain, analyzeRedirects, analyzeResponsiveImages, analyzeSERPPreview, analyzeSecurity, analyzeSecurityHeaders$1 as analyzeSecurityHeaders, analyzeSocialMeta, analyzeStructuredData$1 as analyzeStructuredData, analyzeTopicalClusters, analyzeTrackerBloat, analyzeUrl, analyzeUrlSafety, index$1 as analyzers, applyFixes, buildGSCApiRequest, buildGSCRequest, calculateAIVisibilityScore, calculateBM25, calculateTFIDF$1 as calculateKeywordTFIDF, calculateNextRun, calculateTFIDF, checkAIBotBlocking, checkAMP, checkAdsTxt, checkAppleTouchIcon, checkBalance, checkCertificate, checkDMARC, checkGitHubCLI, checkInternalRedirects, checkJSRenderingRatio, checkLLMCitations, checkLlmsTxt, checkMobileResources, checkPlaintextEmails, checkRedirects, checkRobots, checkRobotsTxt, checkSPF, checkSitemap, classifyIntent, classifyIntents, clusterKeywordsByEmbedding, compareCompetitorVisibility, comparePeriods, completeWizard, crawlSite, crawlUrl, createAuditPR, createFallbackSummary, createGEOHistory, createPullRequest, createSEOCommit, createSEOCommits, detectDuplicates, detectFramework$1 as detectFramework, detectGitHubPages, detectMentions, detectSoft404, detectTechnologies, detectVisibilityChanges, discoverCompetitorKeywords, discoverPagesFromLinks, discoverRoutesFromRepo, enhanceSummaryWithCompetitors, enhanceToolIdea, enrichKeywordsWithEstimates, ensureGitRepo, evaluateAndEnhanceToolIdeas, evaluateToolFeasibility, executeAgent, extractContentHash, extractEntityPhrases, extractImages, extractKeyPhrases, extractLinks, extractMeta, extractNgrams, extractSchema, extractSeedKeywords, extractTopics, fetchCoreWebVitals, findAlmostPage1Keywords, findCTROpportunities, findHtmlEntry, findLSIKeywords, findPageFiles, findTopPerformers, formatAlertMessage, formatCIResult, formatCompetitorReport, formatConventionalCommit, formatFeaturedSnippetReport, formatHeadlineReport, formatIntentReport, formatKeywordDensityReport, formatKeywordReport, formatPRBody, formatPRTitle, formatReadabilityReport, formatReport, formatSEOCommitMessage, formatTopicReport, formatWizardProgress, index as frameworks, generateAICitableContent, generateAllFixes, generateAngularSEOService, generateAspNetCoreSEO, generateAstroBaseHead, generateAstroMeta, generateBlogPost, generateBranchName, generateChangelog, generateCommitSummary, generateComparisonTable, generateCompleteSocialMetaSetup, generateDjangoSEOHelper, generateDuplicateIssues, generateEleventySEO, generateFAQSchema, generateFixes, generateGA4EnvTemplate, generateGA4ReactComponent, generateGA4Script, generateGA4ViteScript, generateGEOReport, generateGSCVerificationTag, generateGitHubActionSetup, generateGoSEO, generateHTMLReport, generateHTMLSocialMeta, generateHTMXSEO, generateHeadlineVariations, generateHugoSEO, generateJekyllSEO, generateJsonReport, generateKeyFacts, generateLaravelSEOHelper, generateMarkdownReport, generateNextAppMetadata, generateNextJsAppRouterMetadata, generateNextJsPagesRouterHead, generateNextPagesHead, generateNuxtSEOHead, generatePDFReport, generatePRDescription, generatePhoenixSEO, generateRailsSEOHelper, generateReactHelmetSocialMeta, generateReactSEOHead, generateRecommendationQueries, generateRemixMeta, generateRemixSEO, generateSecretsDoc, generateSocialMetaFix, generateSpringBootSEO, generateSvelteKitMeta, generateSvelteKitSEOHead, generateUncertaintyQuestions, generateVueSEOHead, generateWizardQuestions, generateWorkflow, getAIVisibilitySummary, getAutocompleteSuggestions, getDateRange, getExpandedSuggestions, getFrameworkSpecificFix, getFrameworkSpecificFixExtended, getGSCSetupInstructions, getGitUser, getKeywordData, getKeywordSuggestions, getMaxKdThreshold, getNextQuestion, getRelatedKeywords, getVisibilityTrend, groupKeywordsByTopic, identifyQuickWins, injectGA4, injectGSCVerification, interpolatePrompt, isGitRepo, listFiles, loadAgent, loadAgentByName, mergePages, optimizeForAI, optimizeReadme, parseGEOResponse, parseGSCResponse, parseSitemap, prioritizeKeywords, processWizardResponse, readFile, routesToUrls, runAIKeywordResearch, runAIReadinessChecks, runAdditionalChecks, runAuditWithFixes, runCIKeywordResearch, runCrawlabilityChecks, runDirectAnalysis, runFullAudit, runKeywordResearch, runNLPAnalysis, runScheduledAudit, runSyncAudit, scoreContentSEO, scoreMention, searchCompetitors, searchFormatConverters, searchHackerNews, sendAlert, sendAlerts, sendDiscordAlert, sendSlackAlert, shouldRunAudit, shouldSendAlert, startWizardSession, suggestSchemaTypes, summarizeSite, tokenize, tools, trackLLMVisibility, transformGSCData, urlSafetyDatabase, wizardResponsesToContext, writeFile, writeGitHubActionFiles };
|
|
5824
|
+
export { type AIContentConfig, type AIKeywordResearchOptions, type AgentDefinition, type AgentTool, type AlertChannel, type AlertConfig, type AlertMessage, type AlertResult, type AlertSeverity, type AlertType, type AuditAlertPayload, type AuditIssue, type AuditIssueData, type AuditOptions, type AuditPRResult, type AuditReport, type AuditReportData, type AuditRunnerOptions, type AuditRunnerResult, type AuditSchedule, type BlogPostConfig, type BrandConfig, type CIAction, type CIKeywordOptions, type CIKeywordResult, COMMIT_TYPES, type ChangelogConfig, type ChangelogResult, type CitationCheckOptions, type CommitConfig, type ComparisonConfig, type ComparisonRow, type CompetitiveInsight, type CompetitiveSearchOptions, type CompetitiveSearchResult, type CompetitorComparison, type CompetitorKeywordResult, type CompetitorOverlap, type CompetitorTool, type CompetitorUrl, type ContentElements, type ContentGeneratorOptions, type ContentRecommendation, type ConventionalCommit, type CrawlResult, type CrawlStats, type CrawledPage, type CreateAuditPROptions, type CreatePROptions, type DataForSEOCredentials, type DiscoveredPage, type EnhancedToolIdea, type ExecOptions, type ExecuteOptions, type ExecutionResult, type FAQItem, type FAQSchemaOptions, type FeaturedSnippetAnalysis, type Fix, type FixFile, type FixGeneratorOptions, type FixResult, type FrameworkInfo$1 as FrameworkInfo, type FreeKeywordResult, type FreeToolIdea, type GA4Config, type GEOAlert, type GEOAlertType, type GEOHistory, type GEOHistoryOptions, type GEOQuery, type GEOReport, type GEOResult, type GEOTrend, type GSCConfig, type GSCCredentials, type GSCPerformanceData, type GSCQueryData, type GSCQueryResult, type GeneratedCode, type GeneratedContent, type GeneratedFix, type HeadingStructure, type HeadlineAnalysis, type HealthScore, ISSUE_DEFINITIONS, type ImageInfo$2 as ImageInfo, type InjectionResult, type IntentAnalysis, type IssueCategory, type IssueDefinition, type IssueSeverity, type KeyFact, type KeyFactsOptions, type KeywordAction, type KeywordCluster, type KeywordData, type KeywordDensityAnalysis, type KeywordOpportunity, type KeywordRecommendation, type KeywordResearchOptions, type KeywordResearchResult, type KeywordStats, type KeywordTopic, type KeywordTrend, type LLMCitationResult, type LLMJudgeOptions, type LLMProvider, LOCATION_CODES, type LSIKeyword, type LinkInfo$1 as LinkInfo, type Mention, type MentionType, type MetaData, type MetaFixOptions, type NGram, type NLPAnalysisResult, OG_IMAGE_SPECS, type OptimizeOptions, type PRConfig, type PRDescription, PRIORITY_WEIGHTS, type PRResult, type PageAudit, type PageData, type PageMeta, type PaidKeywordResult, type ParsedResponse, type PlanTier, type ProviderStats, type QuickWin, type RankCheckOptions, type RankCheckResult, type RankHistory, RankTracker, type RankingResult, type RankingTierLimits, type ReadabilityResult, type ReadmeConfig, type ReadmeResult, type ReportBranding, type ReportConfig, type ReportData, type ReportPageData, type RouteInfo, type SEOAnalysisResult, type SEOFixCommit, type SEOFixSummary, type SEOIssue, type SEORecommendation, type SEOScore, SEO_SCOPES, SITE_PROFILE_QUESTIONS, type ScheduledAuditConfig, type ScheduledAuditResult, type SchemaData, Schemas, type SearchIntent, type Sentiment, type SerpApiConfig, SerpClient, type SerpClientConfig, type SerpFeature, type SiteCrawlResult, type SiteProfile, type SiteSummary, type SnippetRecommendation, type SnippetType, type SocialMetaConfig, type SocialMetaFix, type SummarizerOptions, type TFIDFResult, TIER_LIMITS, type ToolFeasibilityScore, type ToolFunction, type ToolResult, type TopicClusterResult, type TopicModel, type TrackedKeyword, type TrackerConfig, type TrackingOptions, type TrendDirection, type UncertaintyAssessment, type WizardQuestion, type WizardResponse, type WizardResult, type WizardSession, type WorkflowConfig, addTrackingResult, analyzeAnchorText, analyzeCanonicalAdvanced, analyzeClientRendering, analyzeContentFreshness, analyzeConversionElements, analyzeDOMStructure, analyzeEntitySEO, analyzeFeaturedSnippetPotential, analyzeFreshnessSignals, analyzeFunnelIntent, analyzeHeadings, analyzeHeadline, analyzeHreflang, analyzeImages$1 as analyzeImages, analyzeInteractiveTools, analyzeKeywordDensity, analyzeKeywordPlacement, analyzeKeywords, analyzeLinks, analyzeLocalSEO, analyzeMobile, analyzeModernImages, analyzeNavBoostSignals, analyzeOnPage, analyzePagination, analyzePerformance, analyzePlatformPresence, analyzeReadability, analyzeRedirectChain, analyzeRedirects, analyzeResponsiveImages, analyzeSERPPreview, analyzeSecurity, analyzeSecurityHeaders$1 as analyzeSecurityHeaders, analyzeSocialMeta, analyzeStructuredData$1 as analyzeStructuredData, analyzeTopicalClusters, analyzeTrackerBloat, analyzeUrl, analyzeUrlSafety, index$1 as analyzers, applyFixes, buildGSCApiRequest, buildGSCRequest, calculateAIVisibilityScore, calculateBM25, calculateTFIDF$1 as calculateKeywordTFIDF, calculateNextRun, calculateTFIDF, checkAIBotBlocking, checkAMP, checkAdsTxt, checkAppleTouchIcon, checkBalance, checkCertificate, checkDMARC, checkGitHubCLI, checkInternalRedirects, checkJSRenderingRatio, checkLLMCitations, checkLlmsTxt, checkMobileResources, checkPlaintextEmails, checkRedirects, checkRobots, checkRobotsTxt, checkSPF, checkSitemap, classifyIntent, classifyIntents, clusterKeywordsByEmbedding, compareCompetitorVisibility, comparePeriods, completeWizard, crawlSite, crawlUrl, createAuditPR, createFallbackSummary, createGEOHistory, createPullRequest, createSEOCommit, createSEOCommits, detectDuplicates, detectFramework$1 as detectFramework, detectGitHubPages, detectMentions, detectSoft404, detectTechnologies, detectVisibilityChanges, discoverCompetitorKeywords, discoverPagesFromLinks, discoverRoutesFromRepo, enhanceSummaryWithCompetitors, enhanceToolIdea, enrichKeywordsWithEstimates, ensureGitRepo, evaluateAndEnhanceToolIdeas, evaluateToolFeasibility, executeAgent, extractContentHash, extractEntityPhrases, extractImages, extractKeyPhrases, extractLinks, extractMeta, extractNgrams, extractSchema, extractSeedKeywords, extractTopics, fetchCoreWebVitals, findAlmostPage1Keywords, findCTROpportunities, findHtmlEntry, findLSIKeywords, findPageFiles, findTopPerformers, formatAlertMessage, formatCIResult, formatCompetitorReport, formatConventionalCommit, formatFeaturedSnippetReport, formatHeadlineReport, formatIntentReport, formatKeywordDensityReport, formatKeywordReport, formatPRBody, formatPRTitle, formatReadabilityReport, formatReport, formatSEOCommitMessage, formatTopicReport, formatWizardProgress, index as frameworks, generateAICitableContent, generateAllFixes, generateAngularSEOService, generateAspNetCoreSEO, generateAstroBaseHead, generateAstroMeta, generateBlogPost, generateBranchName, generateChangelog, generateCommitSummary, generateComparisonTable, generateCompleteSocialMetaSetup, generateDjangoSEOHelper, generateDuplicateIssues, generateEleventySEO, generateFAQSchema, generateFixes, generateGA4EnvTemplate, generateGA4ReactComponent, generateGA4Script, generateGA4ViteScript, generateGEOReport, generateGSCVerificationTag, generateGitHubActionSetup, generateGoSEO, generateHTMLReport, generateHTMLSocialMeta, generateHTMXSEO, generateHeadlineVariations, generateHugoSEO, generateJekyllSEO, generateJsonReport, generateKeyFacts, generateLaravelSEOHelper, generateMarkdownReport, generateNextAppMetadata, generateNextJsAppRouterMetadata, generateNextJsPagesRouterHead, generateNextPagesHead, generateNuxtSEOHead, generatePDFReport, generatePRDescription, generatePhoenixSEO, generateRailsSEOHelper, generateReactHelmetSocialMeta, generateReactSEOHead, generateRecommendationQueries, generateRemixMeta, generateRemixSEO, generateSecretsDoc, generateSocialMetaFix, generateSpringBootSEO, generateSvelteKitMeta, generateSvelteKitSEOHead, generateUncertaintyQuestions, generateVueSEOHead, generateWizardQuestions, generateWorkflow, getAIVisibilitySummary, getAutocompleteSuggestions, getDateRange, getExpandedSuggestions, getFrameworkSpecificFix, getFrameworkSpecificFixExtended, getGSCSetupInstructions, getGitUser, getKeywordData, getKeywordSuggestions, getMaxKdThreshold, getNextQuestion, getRelatedKeywords, getVisibilityTrend, groupKeywordsByTopic, identifyQuickWins, injectGA4, injectGSCVerification, interpolatePrompt, isGitRepo, listFiles, loadAgent, loadAgentByName, mergePages, optimizeForAI, optimizeReadme, parseGEOResponse, parseGSCResponse, parseSitemap, prioritizeKeywords, processWizardResponse, readFile, routesToUrls, runAIKeywordResearch, runAIReadinessChecks, runAdditionalChecks, runAuditWithFixes, runCIKeywordResearch, runCrawlabilityChecks, runDirectAnalysis, runFullAudit, runKeywordResearch, runNLPAnalysis, runScheduledAudit, runSyncAudit, scoreContentSEO, scoreMention, searchCompetitors, searchFormatConverters, searchHackerNews, sendAlert, sendAlerts, sendDiscordAlert, sendSlackAlert, shouldRunAudit, shouldSendAlert, startWizardSession, suggestSchemaTypes, summarizeSite, tokenize, tools, trackLLMVisibility, transformGSCData, urlSafetyDatabase, wizardResponsesToContext, writeFile, writeGitHubActionFiles };
|