pigeon-aeo
v0.1.1
Published
Install Pigeon in your codebase. Logs into your Pigeon account, picks a workspace, and applies the AEO/GEO fixes (schema, FAQ pages, atomic facts) it generated — framework-aware, on a review branch.
Maintainers
Readme
@pigeon/sdk — install Pigeon in your codebase
Pigeon measures where your site shows up in AI search (ChatGPT / Perplexity / Gemini), figures out what to fix, and generates the concrete fixes. This package lets Pigeon apply those fixes inside your codebase.
Quick start
npm i -g @pigeon/sdk
pigeon login # log into your Pigeon account (paste a CLI token)
pigeon link # pick which workspace this repo belongs to
pigeon apply # write the generated fixes into your codepigeon loginopens your account, where you generate a one-time CLI token (Profile → “Connect your codebase”), and pastes it in. Creds are stored in~/.pigeon/config.json.pigeon linklists your workspaces and links this repo to one (.pigeon.json). If you only have one, it links automatically.pigeon applypulls the latest fix pack and is framework-aware. It detects your stack and applies the fixes into the real code:- Next.js (App Router) — adds a
PigeonSchemacomponent and wires it into yourapp/layout<body>; scaffoldsapp/faq/page.tsx(visible Q&A + FAQPage schema). - Astro — injects
is:inlineJSON-LD into your layout<head>; scaffoldssrc/pages/faq.astro. - Static
index.html— injects into<head>; writesfaq.html. - Any other stack — every artifact is written to
./pigeon/with a guide. It then opens the changes on apigeon/aeo-fixesbranch (and a PR viaghif available) so you review before merging. Everything also lands in./pigeon/for reference.
- Next.js (App Router) — adds a
pigeon statusshows who you’re logged in as and the linked workspace.
Point the CLI at a self-hosted / local server with --base http://localhost:3000
(or PIGEON_BASE).
Runtime SDK (optional)
Serve the artifacts Pigeon generated at runtime, framework-agnostic:
import { createPigeon, renderJsonLd } from "@pigeon/sdk";
const pigeon = createPigeon({ apiKey: process.env.PIGEON_KEY! });
const route = await pigeon.getRoute("/pricing");
// inject renderJsonLd(route) into your <head>Legacy build step
pigeon build --key $PIGEON_KEY --out public
# writes public/llms.txt + public/pigeon-artifacts.jsonMIT
