Skip to content
GEO AI
AnalyzerCLIDocumentationSpecificationContact
Documentation

Getting Started

  • Introduction
  • Quick Start
  • Choose Your Package

GEO Specification

  • Overview
  • llms.txt
  • AI Metadata
  • Crawler Rules
  • Structured Signals
  • Scoring
  • Recommendations

Packages

  • GEO AI Core
  • GEO AI Next
  • GEO AI NestJSnew
  • NestJS — Module Setup
  • NestJS — Configuration
  • NestJS — Service API
  • NestJS — Middleware
  • NestJS — Guard
  • NestJS — Interceptor
  • NestJS — Decorators
  • NestJS — Content Provider
  • GEO AI Woo
  • GEO AI Shopify

Analyzer

  • Overview
  • Scoring
  • Recommendations

CLI

  • GEO AI CLI

Integrations

  • Laravelsoon

Reference

  • Configuration
  • API Reference
  • FAQ
DocsPackagesNestjsGuard

GeoAIGuard

Optional guard that restricts route access to verified AI bot requests. Uses GeoAIService.isAIBot() internally — no duplicate detection logic.

Usage

typescript
import { Controller, Get, UseGuards } from '@nestjs/common';
import { GeoAIGuard } from 'geo-ai-nest';

@Controller('ai')
export class AIController {
  @Get('sitemap')
  @UseGuards(GeoAIGuard)
  getAISitemap() {
    // Only AI bots (GPTBot, ClaudeBot, etc.) can access this
    return 'AI-specific sitemap content';
  }
}
The guard returns true when the User-Agent matches a known AI bot and false otherwise, resulting in a 403 for non-bot requests.
PreviousNestJS — MiddlewareNextNestJS — Interceptor

On this page

  • Usage
GEO AI

AI Search Optimization

AnalyzerCLIDocumentationSpecificationContactPrivacy Policy

© 2026 GEO AI · Open Source · MIT License