geo-ai-search-optimization 2.2.0 → 2.3.0

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/README.md CHANGED
@@ -1,11 +1,11 @@
1
1
  # geo-ai-search-optimization
2
2
 
3
- Install and run a production-ready Codex skill for Generative Engine Optimization (GEO)-first, SEO-supported website optimization.
3
+ The most comprehensive open-source CLI toolkit for **Generative Engine Optimization (GEO)**. Optimize your website for AI-powered search engines — ChatGPT, Perplexity, Gemini, Google AI Overviews, and Bing Copilot.
4
4
 
5
- ## GEO 是什么
5
+ **Zero dependencies. 43 commands. 12-dimension scoring. TypeScript support.**
6
6
 
7
- 这里的 `GEO` 指的是 `Generative Engine Optimization`。
8
- 这个工具的目标不是传统 SEO 审计器,而是帮助 PM、SEO、内容和工程团队判断:网站在哪些地方会影响生成式搜索引擎理解、提取、引用和展示内容。
7
+ [![npm version](https://img.shields.io/npm/v/geo-ai-search-optimization)](https://www.npmjs.com/package/geo-ai-search-optimization)
8
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
9
9
 
10
10
  ## Install
11
11
 
@@ -13,1288 +13,249 @@ Install and run a production-ready Codex skill for Generative Engine Optimizatio
13
13
  npm install -g geo-ai-search-optimization
14
14
  ```
15
15
 
16
- Or run it without a permanent install:
16
+ Or run without installing:
17
17
 
18
18
  ```bash
19
- npx geo-ai-search-optimization
19
+ npx geo-ai-search-optimization diagnose https://example.com
20
20
  ```
21
21
 
22
- ## What it does
23
-
24
- - installs the bundled GEO skills into your Codex skills directory
25
- - ships a local resource folder with `SKILL.md`, references, and a scanner script
26
- - provides a CLI for installing, locating, and scanning projects for GEO signals
27
- - now exposes the bundled skill package directly, so agents can discover which GEO sub-skill to use next
28
-
29
- ## Skills 命令
30
-
31
- 如果你想先看这个 npm 包里到底打包了哪些 skills,现在可以直接用:
32
-
33
- ```bash
34
- geo-ai-search-optimization skills
35
- geo-ai-search-optimization skills --json
36
- ```
37
-
38
- 它会列出:
39
-
40
- - 核心 GEO skill
41
- - usage / onboarding skill
42
- - agent 执行闭环相关 skills
43
- - 分享 / 导出 / 最终交付相关 skills
44
-
45
- ## Agent Orchestrator 命令
46
-
47
- 如果你希望 agent 不要看长链路,而是直接拿到“现在唯一该跑哪条命令”,可以直接用 `agent-orchestrator`:
48
-
49
- ```bash
50
- geo-ai-search-optimization agent-orchestrator "继续这个 GEO 任务"
51
- geo-ai-search-optimization agent-orchestrator https://example.com
52
- geo-ai-search-optimization agent-orchestrator ./your-site
53
- geo-ai-search-optimization agent-orchestrator ./reports/agent-playbook-pack.json --format json --out ./reports/agent-orchestrator.json
54
- ```
55
-
56
- 它会输出:
57
-
58
- - 当前阶段
59
- - 为什么现在该做这一步
60
- - 现在只该跑哪条命令
61
- - 预期产物
62
- - 什么时候先停下
63
- - 做完之后下一条是什么
64
- - 可直接复制给 agent 的 orchestrator prompt
65
-
66
- ## Page Audit 命令
67
-
68
- 如果你不想一次看整站,而是想先判断“这个单页为什么不容易被生成式搜索理解与引用”,可以直接用 `page-audit`:
69
-
70
- ```bash
71
- geo-ai-search-optimization page-audit https://example.com/blog/geo-guide
72
- geo-ai-search-optimization page-audit ./content/posts/geo-guide.mdx
73
- geo-ai-search-optimization page-audit ./content/posts/geo-guide.mdx --json --out ./reports/page-audit.json
74
- ```
75
-
76
- 它会输出:
77
-
78
- - 单页 GEO 分数
79
- - 页面级问题区域
80
- - 推荐新增模块
81
- - rewrite brief
82
- - 可直接交给 agent 的 page-level prompt
83
-
84
- ## Rewrite Pack 命令
85
-
86
- 如果你已经知道某个页面有问题,想直接拿到更接近“改写方案”的产物,可以用 `rewrite-pack`:
87
-
88
- ```bash
89
- geo-ai-search-optimization rewrite-pack https://example.com/blog/geo-guide
90
- geo-ai-search-optimization rewrite-pack ./content/posts/geo-guide.mdx
91
- geo-ai-search-optimization rewrite-pack ./content/posts/geo-guide.mdx --json --out ./reports/rewrite-pack.json
92
- ```
93
-
94
- 它会输出:
95
-
96
- - metadata drafts
97
- - 建议章节结构
98
- - FAQ questions
99
- - schema recommendations
100
- - execution checklist
101
- - 可直接交给 agent 的 rewrite prompt
102
-
103
- ## Repo Patch Plan 命令
104
-
105
- 如果你希望从“页面建议”继续推进到“仓库里先改哪些文件和模板”,可以直接用 `repo-patch-plan`:
106
-
107
- ```bash
108
- geo-ai-search-optimization repo-patch-plan ./your-site
109
- geo-ai-search-optimization repo-patch-plan ./your-site --json --out ./reports/repo-patch-plan.json
110
- ```
111
-
112
- 它会输出:
113
-
114
- - 候选文件区域
115
- - patch packets
116
- - likely files
117
- - execution notes
118
- - 可直接交给 agent 的 repo-level prompt
119
-
120
- ## Agent Resume 命令
121
-
122
- 如果 GEO 工作已经做过一轮或多轮,你不想让下一个 agent 从头重新判断,而是想让它从最近一个可靠恢复点继续,可以直接用 `agent-resume`:
123
-
124
- ```bash
125
- geo-ai-search-optimization agent-resume "继续这个 GEO 任务"
126
- geo-ai-search-optimization agent-resume https://example.com
127
- geo-ai-search-optimization agent-resume ./your-site
128
- geo-ai-search-optimization agent-resume ./reports/agent-playbook-pack.json --format json --out ./reports/agent-resume.json
129
- ```
130
-
131
- 它会输出:
132
-
133
- - 恢复模式
134
- - 从哪里恢复
135
- - 现在只恢复哪一条命令
136
- - 恢复前要先确认什么
137
- - 恢复时不要重置什么
138
- - 恢复后下一条是什么
139
- - 可直接复制给 agent 的 resume prompt
140
-
141
- ## Agent Continue 命令
142
-
143
- 如果你希望 agent 不只知道从哪里恢复,还要知道这一轮做完之后该更新哪些状态工件,可以直接用 `agent-continue`:
144
-
145
- ```bash
146
- geo-ai-search-optimization agent-continue ./your-site
147
- geo-ai-search-optimization agent-continue ./reports/agent-playbook-pack.json
148
- geo-ai-search-optimization agent-continue ./reports/agent-resume.json --format json --out ./reports/agent-continue.json
149
- ```
150
-
151
- 它会输出:
152
-
153
- - 这一轮怎么继续
154
- - 现在先执行哪条命令
155
- - 这轮的 do-now checklist
156
- - 执行后先验证什么
157
- - 完成后更新哪些工件
158
- - 可以进入收尾时跑什么
159
- - 可直接复制给 agent 的 continue prompt
160
-
161
- ## Agent State Pack 命令
162
-
163
- 如果你希望下一个 agent 直接拿到一份统一的当前状态工件,而不是自己拼 `agent-resume / agent-continue / agent-status-board / agent-checkpoint`,可以直接用 `agent-state-pack`:
164
-
165
- ```bash
166
- geo-ai-search-optimization agent-state-pack ./your-site
167
- geo-ai-search-optimization agent-state-pack ./reports/agent-playbook-pack.json
168
- geo-ai-search-optimization agent-state-pack ./reports/agent-continue.json --format json --out ./reports/agent-state-pack.json
169
- ```
170
-
171
- 它会输出:
172
-
173
- - 当前阶段和状态等级
174
- - 现在先执行哪条命令
175
- - 当前包与下一包
176
- - 执行前先确认什么
177
- - 执行后先验证什么
178
- - 这一轮完成后要同步哪些工件
179
- - 可直接复制给 agent 的 state prompt
180
-
181
- ## Auto Flow 命令
182
-
183
- 如果你希望 agent 不用自己判断现在该用哪个 skill、该跑哪个命令,可以直接用 `auto-flow`:
184
-
185
- ```bash
186
- geo-ai-search-optimization auto-flow "我想把这份 GEO 结果交给下一个 agent 继续修"
187
- geo-ai-search-optimization auto-flow https://example.com
188
- geo-ai-search-optimization auto-flow ./your-site
189
- geo-ai-search-optimization auto-flow ./reports/apply-plan.json --json
190
- ```
191
-
192
- 它会自动输出:
193
-
194
- - 当前输入属于哪一类
195
- - 现在更像诊断、执行、复盘还是交付阶段
196
- - 最适合的下一个 skill
197
- - 建议命令顺序
198
- - 可直接复制给 agent 的 prompt
199
-
200
- ## Agent Session 命令
201
-
202
- 如果你希望不只是“选 skill”,而是直接产出一份给 agent 跟着执行的会话包,可以用 `agent-session`:
203
-
204
- ```bash
205
- geo-ai-search-optimization agent-session "我想把这份 GEO 结果交给下一个 agent 继续修"
206
- geo-ai-search-optimization agent-session https://example.com
207
- geo-ai-search-optimization agent-session ./your-site
208
- geo-ai-search-optimization agent-session ./reports/apply-plan.json --json
209
- ```
210
-
211
- 它会输出:
212
-
213
- - 当前阶段与会话状态
214
- - 会话目标
215
- - 自动选择的 skill
216
- - 一步步该跑什么命令
217
- - 每一步的目的与预期产物
218
- - 可直接复制给 agent 的 session prompt
219
-
220
- ## Agent Runbook 命令
221
-
222
- 如果你希望 agent 拿到的不只是会话步骤,而是一份更稳定的执行手册和检查清单,可以直接用 `agent-runbook`:
223
-
224
- ```bash
225
- geo-ai-search-optimization agent-runbook "我想把这份 GEO 结果交给下一个 agent 继续修"
226
- geo-ai-search-optimization agent-runbook https://example.com
227
- geo-ai-search-optimization agent-runbook ./your-site
228
- geo-ai-search-optimization agent-runbook ./reports/apply-plan.json --json
229
- ```
230
-
231
- 它会输出:
232
-
233
- - 开始前检查
234
- - 工作规则
235
- - 需要停下来的情况
236
- - 命令执行清单
237
- - 重点执行包
238
- - 验证清单
239
- - 回报清单
240
- - 可直接复制给 agent 的 runbook prompt
241
-
242
- ## Agent Executor 命令
243
-
244
- 如果你希望 agent 不只是拿到 runbook,而是直接得到“这一轮先执行哪 1 个任务”的入口,可以直接用 `agent-executor`:
245
-
246
- ```bash
247
- geo-ai-search-optimization agent-executor ./your-site
248
- geo-ai-search-optimization agent-executor ./reports/apply-plan.json
249
- geo-ai-search-optimization agent-executor ./reports/apply-plan.json --task fix-02 --json
250
- ```
251
-
252
- 它会输出:
253
-
254
- - 当前先做哪一包
255
- - 为什么先做这一包
256
- - do-now checklist
257
- - stop checklist
258
- - success checklist
259
- - 验证命令
260
- - 给用户的回报模板
261
- - 可直接复制给 agent 的 executor prompt
262
-
263
- ## Agent Batch Executor 命令
264
-
265
- 如果你希望 agent 不只做 1 包,而是把前 2 到 3 包排成一个连续执行序列,同时仍然保持“一次只推进一包”,可以直接用 `agent-batch-executor`:
266
-
267
- ```bash
268
- geo-ai-search-optimization agent-batch-executor ./your-site
269
- geo-ai-search-optimization agent-batch-executor ./reports/apply-plan.json
270
- geo-ai-search-optimization agent-batch-executor ./reports/apply-plan.json --task fix-02 --count 3 --format json --out ./reports/agent-batch-executor.json
271
- ```
272
-
273
- `agent-batch-executor` 会输出:
274
-
275
- - 当前批次先推进哪几包
276
- - 为什么按这个顺序推进
277
- - 每一包的 do-now checklist
278
- - 每一包的 stop checklist
279
- - 每一包的 success checklist
280
- - 批次总验证命令
281
- - 批次收尾命令
282
- - 可直接复制给 agent 的 batch prompt
283
-
284
- ## Agent Progress Tracker 命令
285
-
286
- 如果你希望 agent 不是只拿到执行队列,而是能够明确回答“现在做到第几包、当前卡在哪、下一包是什么”,可以直接用 `agent-progress-tracker`:
287
-
288
- ```bash
289
- geo-ai-search-optimization agent-progress-tracker ./your-site
290
- geo-ai-search-optimization agent-progress-tracker ./reports/apply-plan.json --completed fix-01,fix-02 --current fix-03
291
- geo-ai-search-optimization agent-progress-tracker ./reports/agent-batch-executor.json --blocked "缺少仓库权限,缺少模板文件" --format json --out ./reports/agent-progress-tracker.json
292
- ```
293
-
294
- `agent-progress-tracker` 会输出:
295
-
296
- - 当前状态是未开始、进行中、阻塞还是已完成
297
- - 已完成到哪几包
298
- - 当前正在推进哪一包
299
- - 下一包是什么
300
- - 当前阻塞项
301
- - 建议下一步命令
302
- - 可直接复制给 agent 的 progress prompt
303
-
304
- ## Agent Status Board 命令
305
-
306
- 如果你希望把当前执行状态直接整理成更像团队协作看板的分栏视图,而不是只看一份文字进度摘要,可以直接用 `agent-status-board`:
307
-
308
- ```bash
309
- geo-ai-search-optimization agent-status-board ./your-site
310
- geo-ai-search-optimization agent-status-board ./reports/apply-plan.json --completed fix-01 --current fix-02
311
- geo-ai-search-optimization agent-status-board ./reports/agent-progress-tracker.json --blocked "缺少仓库权限,缺少模板文件" --format json --out ./reports/agent-status-board.json
312
- ```
313
-
314
- `agent-status-board` 会输出:
315
-
316
- - 已完成栏
317
- - 进行中栏
318
- - 阻塞栏
319
- - 下一步栏
320
- - 排队中栏
321
- - 收尾栏
322
- - 建议下一步命令
323
- - 可直接复制给 agent 的 status board prompt
324
-
325
- ## Agent Checkpoint 命令
326
-
327
- 如果你希望在每一轮执行结束时,产出一个明确的阶段决策,而不只是状态展示,可以直接用 `agent-checkpoint`:
328
-
329
- ```bash
330
- geo-ai-search-optimization agent-checkpoint ./your-site
331
- geo-ai-search-optimization agent-checkpoint ./reports/agent-status-board.json --completed fix-01 --current fix-02
332
- geo-ai-search-optimization agent-checkpoint ./reports/agent-progress-tracker.json --blocked "缺少仓库权限" --format json --out ./reports/agent-checkpoint.json
333
- ```
334
-
335
- `agent-checkpoint` 会输出:
336
-
337
- - 当前检查点类型
338
- - 当前决策是继续、解除阻塞还是进入收尾
339
- - gate checks
340
- - 决策清单
341
- - 建议下一步命令
342
- - 备选命令
343
- - 交接说明
344
- - 可直接复制给 agent 的 checkpoint prompt
345
-
346
- ## Agent Decision Log 命令
347
-
348
- 如果你希望把每一轮 checkpoint 累积成“为什么之前这样决定”的历史,而不是只保留单轮状态,可以直接用 `agent-decision-log`:
349
-
350
- ```bash
351
- geo-ai-search-optimization agent-decision-log ./your-site
352
- geo-ai-search-optimization agent-decision-log ./reports/agent-checkpoint.json --note "本轮先解除模板缺失问题"
353
- geo-ai-search-optimization agent-decision-log ./your-site --append-from ./reports/agent-decision-log.json --blocked "缺少模板文件" --format json --out ./reports/agent-decision-log.json
354
- ```
355
-
356
- `agent-decision-log` 会输出:
357
-
358
- - 当前累计决策次数
359
- - 最新检查点类型与决策
360
- - 当前重点与开放阻塞
361
- - 决策时间线
362
- - 最新建议下一步命令
363
- - 可直接复制给 agent 的 decision log prompt
364
-
365
- ## Agent Retrospective 命令
366
-
367
- 如果你希望不只是看多轮决策历史,而是直接总结“为什么这几轮顺利 / 为什么总卡住”,可以直接用 `agent-retrospective`:
368
-
369
- ```bash
370
- geo-ai-search-optimization agent-retrospective ./your-site
371
- geo-ai-search-optimization agent-retrospective ./reports/agent-decision-log.json
372
- geo-ai-search-optimization agent-retrospective ./reports/agent-decision-log.json --format json --out ./reports/agent-retrospective.json
373
- ```
374
-
375
- `agent-retrospective` 会输出:
376
-
377
- - 当前复盘状态
378
- - 重复阻塞与重复任务包
379
- - 关键学习
380
- - 下一轮建议
381
- - 决策分布
382
- - 多轮时间线
383
- - 可直接复制给 agent 的 retrospective prompt
384
-
385
- ## Agent Playbook Pack 命令
386
-
387
- 如果你希望把多轮复盘、决策历史和交接信息压成一个“下一位 agent 一拿到就能继续做”的单入口工件,可以直接用 `agent-playbook-pack`:
388
-
389
- ```bash
390
- geo-ai-search-optimization agent-playbook-pack ./your-site
391
- geo-ai-search-optimization agent-playbook-pack ./reports/agent-decision-log.json
392
- geo-ai-search-optimization agent-playbook-pack ./reports/agent-retrospective.json --format json --out ./reports/agent-playbook-pack.json
393
- ```
394
-
395
- `agent-playbook-pack` 会输出:
396
-
397
- - 当前状态
398
- - 恢复摘要
399
- - 启动命令
400
- - 当前包与下一包
401
- - 先读什么
402
- - 现在先做什么 / 现在不要做什么
403
- - 后续命令
404
- - 可直接复制给 agent 的 playbook prompt
405
-
406
22
  ## Quick Start
407
23
 
408
- 如果你要从 0 到 1 启动一个 GEO 项目,建议照这个顺序做。
409
-
410
- ### Step 1: 安装 CLI
411
-
412
- ```bash
413
- npm install -g geo-ai-search-optimization
414
- geo-ai-search-optimization version
415
- ```
416
-
417
- ### Step 2: 检查环境
418
-
419
- ```bash
420
- geo-ai-search-optimization doctor
421
- geo-ai-search-optimization where
422
- ```
423
-
424
- ### Step 3: 初始化基础文件
425
-
426
- ```bash
427
- geo-ai-search-optimization init-llms ./your-site --site-name "Your Site" --site-url "https://example.com"
428
- geo-ai-search-optimization init-schema organization ./your-site --site-url "https://example.com"
429
- geo-ai-search-optimization init-schema faq-page ./your-site
430
- ```
431
-
432
- ### Step 4: 快速扫描
433
-
434
- ```bash
435
- geo-ai-search-optimization scan ./your-site
436
- geo-ai-search-optimization scan ./your-site --json --out ./reports/geo-scan.json
437
- ```
438
-
439
- ### Step 5: 正式审计
440
-
441
- ```bash
442
- geo-ai-search-optimization audit ./your-site
443
- geo-ai-search-optimization report ./your-site --mode audit --format html --out ./reports/geo-audit.html
444
- ```
445
-
446
- ### Step 6: 按顺序修复
447
-
448
- 优先级建议:
449
-
450
- 1. `robots.txt`、`sitemap`、`canonical`
451
- 2. `llms.txt`、`schema`、作者信息、更新时间
452
- 3. FAQ、comparison、methodology、evidence 页面
453
- 4. 重跑 `scan` 和 `audit` 验证是否改善
454
-
455
- ### CLI 内置 Quick Start
456
-
457
- 如果你想直接在终端里看这套步骤:
458
-
459
- ```bash
460
- geo-ai-search-optimization quick-start
461
- geo-ai-search-optimization quick-start --json
462
- geo-ai-search-optimization quick-start --out ./reports/quick-start.md
463
- ```
464
-
465
- ## URL Onboarding Flow
466
-
467
- 如果用户第一次进来,手上只有一个网站网址,现在可以直接用网址开局:
468
-
469
- ```bash
470
- geo-ai-search-optimization onboard-url https://example.com
471
- geo-ai-search-optimization onboard-url https://example.com --json --out ./reports/onboarding.json
472
- ```
473
-
474
- 这个 flow 会自动做这些事:
475
-
476
- - 抓取首页 HTML
477
- - 检查 `robots.txt`
478
- - 检查 `llms.txt`
479
- - 检查 `sitemap.xml`
480
- - 抽取首页的 `title`、`meta description`、`canonical`
481
- - 生成一个首页级别的 GEO 初步评分和下一步动作
482
- - 输出更适合 PM 阅读的问题区域、阻塞项与下一步动作
483
- - 输出一份 7 天行动计划
484
-
485
- ## Report 命令
486
-
487
- 如果你想把分析结果直接整理成更适合阅读或交付的报告,现在可以直接使用 `report`:
488
-
489
24
  ```bash
490
- geo-ai-search-optimization report ./your-site
491
- geo-ai-search-optimization report ./your-site --mode audit --format html --out ./reports/geo-audit.html
492
- geo-ai-search-optimization report https://example.com --mode onboarding --format markdown
493
- geo-ai-search-optimization report ./your-site --mode scan --format json --out ./reports/geo-scan.json
494
- ```
25
+ # Smart diagnosis — auto-detects URL, directory, or file
26
+ geo-ai-search-optimization diagnose https://example.com
495
27
 
496
- `report` 支持:
28
+ # Full 12-dimension page audit
29
+ geo-ai-search-optimization full-page-audit https://example.com/blog/post
497
30
 
498
- - 自动识别输入是本地项目路径还是网站网址
499
- - 输出 `markdown`、`html`、`json`
500
- - 统一整理 `audit`、`scan`、`onboard-url` 的结果
501
- - 中文化分析内容,更适合直接阅读、分享或存档
31
+ # Generate ready-to-use fix code
32
+ geo-ai-search-optimization auto-fix https://example.com/blog/post
502
33
 
503
- ## Agent Handoff 命令
34
+ # Compare two pages
35
+ geo-ai-search-optimization compare https://yoursite.com https://competitor.com
504
36
 
505
- 如果你希望生成的工件可以直接交给另一个 agent 接手,而不是只给人阅读,现在可以直接用 `agent-handoff`:
37
+ # Project-level audit
38
+ geo-ai-search-optimization full-audit ./your-project
506
39
 
507
- ```bash
508
- geo-ai-search-optimization agent-handoff ./your-site
509
- geo-ai-search-optimization agent-handoff ./your-site --format json --out ./reports/agent-handoff.json
510
- geo-ai-search-optimization agent-handoff https://example.com
40
+ # CI/CD gate
41
+ geo-ai-search-optimization ci ./your-project --min-score 60 --fail-on-regression
511
42
  ```
512
43
 
513
- `agent-handoff` 会输出:
44
+ ## What It Does
514
45
 
515
- - 当前适合的接手模式:`implementation-ready` / `advice-only` / `artifact-guided`
516
- - 可直接复制给 agent 的总提示词
517
- - 每条任务对应的 handoff prompt
518
- - 建议执行步骤
519
- - 验收标准
520
- - 还需要补充哪些上下文
46
+ GEO is **Generative Engine Optimization** — the practice of making your content understandable, extractable, and citable by AI search engines.
521
47
 
522
- 这更适合:
48
+ This tool analyzes your pages across **12 dimensions** and tells you exactly what to fix:
523
49
 
524
- - agent 直接接手下一步修复
525
- - 让 agent 先基于当前工件给出结构化建议
526
- - PM GEO 问题变成交接包,而不是临时口头说明
50
+ | Dimension | What It Checks |
51
+ |-----------|---------------|
52
+ | **Base Audit** | Title, meta description, canonical, JSON-LD, author signals, Q&A headings |
53
+ | **Citability** | Claim density, entity density, quotable sentences, content structure |
54
+ | **E-E-A-T** | Experience, Expertise, Authoritativeness, Trustworthiness signals |
55
+ | **Readability** | Flesch-Kincaid grade, sentence length, passive voice, reading time |
56
+ | **Heading Structure** | H1-H6 hierarchy, semantic coverage, question headings |
57
+ | **Internal Links** | Link count, anchor text quality, path depth |
58
+ | **Social Meta** | Open Graph (10 tags), Twitter Card (7 tags) |
59
+ | **Platform Readiness** | ChatGPT, Perplexity, Gemini, Google AI Overviews, Bing Copilot |
60
+ | **Schema Validation** | JSON-LD correctness, required fields, AI discoverability enhancements |
61
+ | **Content Freshness** | Date extraction (9 patterns), content age, staleness detection |
62
+ | **Security** | HTTPS, security headers, viewport, robots meta, mixed content |
63
+ | **Topic Coverage** | TF-IDF keywords, bigrams, topic clusters |
527
64
 
528
- ## Apply Plan 命令
65
+ ## Commands
529
66
 
530
- 如果你希望 agent 不只是“接手”,而是直接进入执行闭环,现在可以用 `apply-plan`:
67
+ ### Smart Entry Points
531
68
 
532
69
  ```bash
533
- geo-ai-search-optimization apply-plan ./your-site
534
- geo-ai-search-optimization apply-plan ./your-site --task fix-01 --format json --out ./reports/apply-plan.json
535
- geo-ai-search-optimization apply-plan https://example.com
70
+ diagnose <url|dir|file> # Auto-detect input, run right analysis
71
+ compare <page-A> <page-B> # 12-dimension side-by-side comparison
72
+ auto-fix <url|file> # Generate fix code (meta, JSON-LD, robots.txt, llms.txt)
536
73
  ```
537
74
 
538
- `apply-plan` 会输出:
539
-
540
- - 本轮应该先执行哪些任务
541
- - 每个任务先检查什么
542
- - 建议怎么改
543
- - 该跑哪些验证命令
544
- - 完成后怎么向用户回报
545
-
546
- 这适合:
547
-
548
- - 让 agent 直接开始修复
549
- - 让 agent 在每个任务完成后有一致的回报格式
550
- - 把 GEO workflow 从“分析”推进到“执行 + 验证 + 回报”
551
-
552
- ## Completion Report 命令
553
-
554
- 如果你希望 agent 在完成一轮修复或建议后,自动产出复盘、剩余风险和下一轮任务,现在可以用 `completion-report`:
75
+ ### Page-Level Analysis
555
76
 
556
77
  ```bash
557
- geo-ai-search-optimization completion-report ./your-site
558
- geo-ai-search-optimization completion-report ./reports/apply-plan.json --format json --out ./reports/completion-report.json
559
- geo-ai-search-optimization completion-report https://example.com
78
+ page-audit <url|file> # Basic GEO page audit
79
+ full-page-audit <url|file> # Full 12-dimension audit (with --save for snapshots)
80
+ batch-page-audit <urls...> # Batch basic audits
81
+ batch-full-page-audit <urls...> # Batch 12-dimension audits
560
82
  ```
561
83
 
562
- `completion-report` 会输出:
563
-
564
- - 本轮已完成什么
565
- - 当前还剩哪些风险
566
- - 下一轮建议先做哪些任务
567
- - 建议复测命令
568
- - 可直接复用的完成回报模板
569
-
570
- ## Handoff Bundle 命令
571
-
572
- 如果你希望把 `agent-handoff`、`apply-plan`、`completion-report` 一次打成一个完整交接包,现在可以用 `handoff-bundle`:
84
+ ### Project-Level Analysis
573
85
 
574
86
  ```bash
575
- geo-ai-search-optimization handoff-bundle ./your-site
576
- geo-ai-search-optimization handoff-bundle ./your-site --task fix-01 --format json --out ./reports/handoff-bundle.json
577
- geo-ai-search-optimization handoff-bundle https://example.com
87
+ scan <dir> # Signal scanning
88
+ audit <dir> # Project audit with scoring
89
+ full-audit <dir> # Project + infra + optional page sampling
578
90
  ```
579
91
 
580
- `handoff-bundle` 会输出:
581
-
582
- - 单一 bundle summary
583
- - handoff 摘要
584
- - apply plan 摘要
585
- - completion report 摘要
586
- - 下一步该先做哪一个任务
587
-
588
- ## Share Pack 命令
589
-
590
- 如果你希望把同一份 GEO 结果直接分享给 PM、工程、管理层和下一位 agent,现在可以用 `share-pack`:
92
+ ### Specialized Analysis (14 commands)
591
93
 
592
94
  ```bash
593
- geo-ai-search-optimization share-pack ./your-site
594
- geo-ai-search-optimization share-pack ./your-site --task fix-01 --format json --out ./reports/share-pack.json
595
- geo-ai-search-optimization share-pack https://example.com
95
+ crawlers <url|file> # AI crawler access (GPTBot, ClaudeBot, etc.)
96
+ citability <url|file> # Static citability scoring
97
+ eeat <url|file> # E-E-A-T signal analysis
98
+ readability <url|file> # Flesch-Kincaid, reading ease
99
+ heading-structure <url|file> # H1-H6 hierarchy analysis
100
+ internal-links <url|file> # Link analysis
101
+ social-meta <url|file> # OG + Twitter tags
102
+ platform-ready <url|file> # Multi-platform readiness
103
+ validate-schema <url|file> # JSON-LD validation
104
+ validate-llms <url|file> # llms.txt validation
105
+ sitemap <url|file> # XML sitemap analysis
106
+ security <url|file> # Security headers + checks
107
+ freshness <url|file> # Content age analysis
108
+ topics <url|file> # Keyword + topic extraction
596
109
  ```
597
110
 
598
- `share-pack` 会输出:
599
-
600
- - 给 PM 的摘要
601
- - 给工程 / 执行团队的任务视图
602
- - 给管理层的高层摘要
603
- - 给下一位 agent 的交接入口
604
- - 建议分享顺序
605
-
606
- ## Export Pack 命令
607
-
608
- 如果你希望直接导出一整包可外发文件,而不是自己一个个生成,现在可以用 `export-pack`:
111
+ ### Competitive Analysis
609
112
 
610
113
  ```bash
611
- geo-ai-search-optimization export-pack ./your-site --out-dir ./exports/your-site-pack
612
- geo-ai-search-optimization export-pack ./your-site --task fix-01 --format json --out-dir ./exports/your-site-json
613
- geo-ai-search-optimization export-pack https://example.com --out-dir ./exports/example-pack
114
+ benchmark <url> --competitors <urls> # Signal matrix comparison
115
+ content-gap <url> --competitors <urls> # Gap analysis
614
116
  ```
615
117
 
616
- `export-pack` 会生成:
617
-
618
- - `pm-brief`
619
- - `owner-board`
620
- - `exec-summary`
621
- - `agent-handoff-bundle`
622
- - `share-pack`
623
-
624
- ## HTML Pack 命令
625
-
626
- 如果你希望直接生成可浏览的静态 HTML 页面,而不是 Markdown 文件,现在可以用 `html-pack`:
118
+ ### Tracking & CI
627
119
 
628
120
  ```bash
629
- geo-ai-search-optimization html-pack ./your-site --out-dir ./exports/your-site-html
630
- geo-ai-search-optimization html-pack https://example.com --out-dir ./exports/example-html
121
+ full-page-audit <url> --save # Save page snapshot
122
+ page-trend <url> # View page score history
123
+ trend # View project score trend
124
+ snapshot # Manage audit snapshots
125
+ ci <dir> --min-score 60 # CI/CD gate
126
+ watch <dir> # Auto-audit on file changes
127
+ init-hook # Git pre-commit hook
631
128
  ```
632
129
 
633
- `html-pack` 会生成:
634
-
635
- - `index.html`
636
- - `pm.html`
637
- - `engineering.html`
638
- - `exec.html`
639
- - `agent.html`
640
- - `share.html`
641
-
642
- ## Publish Pack 命令
643
-
644
- 如果你希望直接生成一份“最终可交付包”,同时给人和 agent 使用,现在可以用 `publish-pack`:
130
+ ### Citation Tracking
645
131
 
646
132
  ```bash
647
- geo-ai-search-optimization publish-pack ./your-site --out-dir ./exports/your-site-publish-pack
648
- geo-ai-search-optimization publish-pack https://example.com --out-dir ./exports/example-publish-pack
133
+ citation-check <url> --queries <q1,q2> # Check if cited in AI search
134
+ citation-monitor <url> --queries-file <file> # Monitor citation rate
649
135
  ```
650
136
 
651
- `publish-pack` 会一次生成:
652
-
653
- - `site/`: 可浏览的静态 HTML 页面
654
- - `documents/`: 给 PM、工程、管理层直接转发的 Markdown 文档
655
- - `data/`: 给 agent 或自动化流程使用的 JSON 工件
656
- - `START-HERE.md`: 给人的起始说明
657
- - `AGENT-START.md`: 给 agent 的执行入口
658
- - `manifest.json`: 机器可读总索引
659
-
660
- ## Fix Plan 命令
661
-
662
- 如果你已经跑过 `audit`、`report` 或 `onboard-url`,下一步就可以直接把结果转成 PM 待办清单:
137
+ ### Code Generation & Init
663
138
 
664
139
  ```bash
665
- geo-ai-search-optimization fix-plan ./your-site
666
- geo-ai-search-optimization fix-plan ./your-site --format json --out ./reports/fix-plan.json
667
- geo-ai-search-optimization fix-plan ./reports/geo-audit.json
668
- geo-ai-search-optimization fix-plan https://example.com
140
+ auto-fix <url|file> # Generate meta tags, JSON-LD, robots.txt, llms.txt
141
+ init-llms [dir] # Generate llms.txt template
142
+ init-schema <type> [dir] # Generate JSON-LD template
143
+ init-config [dir] # Generate .georc.json
144
+ init-hook [dir] # Generate pre-commit hook
669
145
  ```
670
146
 
671
- `fix-plan` 会输出:
672
-
673
- - priority
674
- - owner
675
- - problem
676
- - action
677
- - expected outcome
678
- - why it matters
679
-
680
- ## Owner Board 命令
681
-
682
- 如果你想直接把任务按角色分栏,变成更像团队协作看板的视图:
147
+ ### Reports & Export
683
148
 
684
149
  ```bash
685
- geo-ai-search-optimization owner-board ./your-site
686
- geo-ai-search-optimization owner-board ./your-site --format json --out ./reports/owner-board.json
687
- geo-ai-search-optimization owner-board https://example.com
150
+ report <input> # Unified report (markdown/html/json)
151
+ pdf-report <audit.json> # PDF-ready HTML report
152
+ html-pack <input> --out-dir <dir> # Static HTML pages
153
+ export-pack <input> --out-dir <dir> # Multi-format export
154
+ publish-pack <input> --out-dir <dir> # Full deliverable package
688
155
  ```
689
156
 
690
- `owner-board` 会自动按这些栏位分配任务:
691
-
692
- - PM
693
- - 工程
694
- - SEO
695
- - 内容
696
-
697
- ## Meeting Pack 命令
698
-
699
- 如果你要直接拿一份周会同步包,现在可以用 `meeting-pack`:
157
+ ## Programmatic API
700
158
 
701
- ```bash
702
- geo-ai-search-optimization meeting-pack ./your-site
703
- geo-ai-search-optimization meeting-pack ./your-site --format json --out ./reports/meeting-pack.json
704
- geo-ai-search-optimization meeting-pack https://example.com
705
- ```
706
-
707
- `meeting-pack` 会整合:
159
+ ```javascript
160
+ import {
161
+ diagnose,
162
+ fullPageAudit,
163
+ comparePages,
164
+ generateAutoFix,
165
+ analyzeCrawlers,
166
+ analyzeCitability,
167
+ analyzeEeat,
168
+ analyzeReadability
169
+ } from 'geo-ai-search-optimization';
708
170
 
709
- - pm-brief
710
- - owner-board
711
- - roadmap
712
- - 本次会议需要确认的决策
171
+ // Smart diagnosis
172
+ const result = await diagnose('https://example.com');
173
+ console.log(result.score, result.quickWins);
713
174
 
714
- ## Exec Summary 命令
175
+ // Full 12-dimension audit
176
+ const audit = await fullPageAudit('https://example.com/blog/post');
177
+ console.log(audit.compositeScore, audit.dimensions);
715
178
 
716
- 如果你要一份给老板、高层或管理层看的高层摘要,现在可以用 `exec-summary`:
179
+ // Compare two pages
180
+ const comparison = await comparePages(
181
+ 'https://yoursite.com',
182
+ 'https://competitor.com'
183
+ );
184
+ console.log(comparison.overallWinner, comparison.dimensionWins);
717
185
 
718
- ```bash
719
- geo-ai-search-optimization exec-summary ./your-site
720
- geo-ai-search-optimization exec-summary ./your-site --format json --out ./reports/exec-summary.json
721
- geo-ai-search-optimization exec-summary https://example.com
186
+ // Generate fix code
187
+ const fixes = await generateAutoFix('https://example.com');
188
+ console.log(fixes.jsonLdSchemas, fixes.metaTags);
722
189
  ```
723
190
 
724
- `exec-summary` 会输出:
725
-
726
- - 当前状态
727
- - Headline
728
- - Why Now
729
- - Business Impact
730
- - 本周关键动作
731
- - 未来 2-4 周重点
732
- - 需要确认的管理决策
733
-
734
- ## PM Brief 命令
191
+ Full TypeScript declarations included (`index.d.ts`) — 230+ exports with IDE autocomplete.
735
192
 
736
- 如果你要把结果带去开会、排优先级或分工,可以直接生成 PM 视角摘要:
193
+ ## GitHub Action
737
194
 
738
- ```bash
739
- geo-ai-search-optimization pm-brief ./your-site
740
- geo-ai-search-optimization pm-brief ./your-site --format json --out ./reports/pm-brief.json
741
- geo-ai-search-optimization pm-brief https://example.com
195
+ ```yaml
196
+ - uses: redredchen01/geo-ai-search-optimization@v2.2.0
197
+ with:
198
+ project-path: ./your-project
199
+ min-score: 60
200
+ fail-on-regression: true
201
+ save-snapshot: true
742
202
  ```
743
203
 
744
- `pm-brief` 会输出:
745
-
746
- - PM 一句话总结
747
- - 当前最关键的风险
748
- - 本周先做什么
749
- - 下周再做什么
750
- - 谁该负责
751
- - 是否适合进入下一轮内容扩张
752
-
753
- ## Roadmap 命令
204
+ ## Configuration
754
205
 
755
- 如果你已经有 `fix-plan` `pm-brief`,下一步可以直接生成 2 周 / 4 周路线图:
206
+ Create `.georc.json` in your project root:
756
207
 
757
208
  ```bash
758
- geo-ai-search-optimization roadmap ./your-site
759
- geo-ai-search-optimization roadmap ./your-site --format json --out ./reports/roadmap.json
760
- geo-ai-search-optimization roadmap https://example.com
209
+ geo-ai-search-optimization init-config --site-name "My Site" --site-url "https://example.com"
761
210
  ```
762
211
 
763
- `roadmap` 会输出:
764
-
765
- - 1 周要做什么
766
- - 2 周要做什么
767
- - 3-4 周如何扩展
768
- - 每个阶段的目标
769
- - 每个阶段的完成标准
770
-
771
- ## Interactive Onboarding
772
-
773
- 如果你想要更像产品的新手流程,而不是只跑一次分析,现在可以直接进入交互式 onboarding:
774
-
775
- ```bash
776
- geo-ai-search-optimization onboard
212
+ ```json
213
+ {
214
+ "site": { "name": "My Site", "url": "https://example.com" },
215
+ "audit": { "minScore": 40, "maxFileSize": 1000000 },
216
+ "ci": { "minScore": 60, "failOnRegression": false },
217
+ "crawlers": { "strategy": "open" },
218
+ "plugins": []
219
+ }
777
220
  ```
778
221
 
779
- CLI 会一步步问你:
222
+ ## Plugin System
780
223
 
781
- - 网站网址
782
- - 你的主要目标是 `traffic`、`conversions` 还是 `brand-visibility`
783
- - 你现在已经有哪些资产:`blog`、`docs`、`faq`、`schema`、`llms.txt`
224
+ Extend with custom signals, checks, and commands:
784
225
 
785
- 你也可以部分预填:
786
-
787
- ```bash
788
- geo-ai-search-optimization onboard --url https://example.com
789
- geo-ai-search-optimization onboard --url https://example.com --goal conversions
790
- geo-ai-search-optimization onboard --url https://example.com --json --out ./reports/interactive-onboarding.json
226
+ ```javascript
227
+ // my-plugin.js
228
+ export function register(api) {
229
+ api.addSignal('custom-signal', {
230
+ pattern: /my-custom-pattern/i,
231
+ label: 'Custom Signal',
232
+ weight: 5
233
+ });
234
+ }
791
235
  ```
792
236
 
793
- ## Commands
794
-
795
- ```bash
796
- geo-ai-search-optimization
797
- geo-ai-search-optimization install
798
- geo-ai-search-optimization install --target ./tmp/custom-skills --json
799
- geo-ai-search-optimization agent-orchestrator ./your-site
800
- geo-ai-search-optimization agent-resume ./your-site
801
- geo-ai-search-optimization agent-continue ./your-site
802
- geo-ai-search-optimization agent-state-pack ./your-site
803
- geo-ai-search-optimization auto-flow "audit this site and tell me the next skill"
804
- geo-ai-search-optimization agent-session ./your-site
805
- geo-ai-search-optimization agent-runbook ./your-site
806
- geo-ai-search-optimization agent-executor ./your-site
807
- geo-ai-search-optimization agent-batch-executor ./your-site
808
- geo-ai-search-optimization agent-progress-tracker ./your-site
809
- geo-ai-search-optimization agent-status-board ./your-site
810
- geo-ai-search-optimization agent-checkpoint ./your-site
811
- geo-ai-search-optimization agent-decision-log ./your-site
812
- geo-ai-search-optimization agent-retrospective ./your-site
813
- geo-ai-search-optimization agent-playbook-pack ./your-site
814
- geo-ai-search-optimization skills
815
- geo-ai-search-optimization where
816
- geo-ai-search-optimization doctor
817
- geo-ai-search-optimization quick-start
818
- geo-ai-search-optimization quick-start --out ./reports/quick-start.md
819
- geo-ai-search-optimization onboard
820
- geo-ai-search-optimization onboard --url https://example.com --goal traffic
821
- geo-ai-search-optimization onboard-url https://example.com
822
- geo-ai-search-optimization init-llms ./site --site-name "Acme Docs" --site-url "https://example.com"
823
- geo-ai-search-optimization init-schema organization ./site --site-url "https://example.com"
824
- geo-ai-search-optimization init-schema faq-page ./site --json
825
- geo-ai-search-optimization audit ./my-site
826
- geo-ai-search-optimization agent-handoff ./my-site
827
- geo-ai-search-optimization apply-plan ./my-site
828
- geo-ai-search-optimization completion-report ./my-site
829
- geo-ai-search-optimization handoff-bundle ./my-site
830
- geo-ai-search-optimization share-pack ./my-site
831
- geo-ai-search-optimization export-pack ./my-site --out-dir ./exports/my-site-pack
832
- geo-ai-search-optimization html-pack ./my-site --out-dir ./exports/my-site-html
833
- geo-ai-search-optimization publish-pack ./my-site --out-dir ./exports/my-site-publish-pack
834
- geo-ai-search-optimization exec-summary ./my-site
835
- geo-ai-search-optimization fix-plan ./my-site
836
- geo-ai-search-optimization owner-board ./my-site
837
- geo-ai-search-optimization meeting-pack ./my-site
838
- geo-ai-search-optimization pm-brief ./my-site
839
- geo-ai-search-optimization roadmap ./my-site
840
- geo-ai-search-optimization report ./my-site --format html --out ./reports/geo-audit.html
841
- geo-ai-search-optimization report https://example.com --mode onboarding
842
- geo-ai-search-optimization audit ./my-site --json --out ./reports/geo-audit.json
843
- geo-ai-search-optimization scan ./my-site --max-file-size 500000 --max-examples 3
844
- geo-ai-search-optimization scan ./my-site --json --out ./reports/geo-scan.json
845
- geo-ai-search-optimization version
846
- geo-ai-search-optimization help
847
- ```
848
-
849
- ## New in 1.2.6
850
-
851
- - 新增 `skills` 命令,直接列出整套 GEO 技能包
852
- - 安装后会额外写入 `.skill-bundle.json`,方便 agent 自动发现技能
853
- - 为缺失的 skill 补齐 `agents/openai.yaml`
854
- - 主 skill 新增 `skill-bundle-map` 参考,usage skill 也同步纳入 `publish-pack` 和 `skills`
855
-
856
- ## New in 1.2.7
857
-
858
- - 新增 `auto-flow` 命令,自动选择下一步该用哪个 GEO skill
859
- - 支持任务描述、网站网址、本地项目目录和 JSON 工件作为输入
860
- - 输出推荐 skill、命令顺序与可直接复制给 agent 的 prompt
861
- - 新增 `geo-ai-search-optimization-auto-flow` skill,作为 agent 的自动路由入口
862
-
863
- ## New in 1.2.8
864
-
865
- - 新增 `agent-session` 命令,生成给 agent 跟着执行的会话包
866
- - 在 `auto-flow` 之上补上步骤级说明、预期产物和 session prompt
867
- - 新增 `geo-ai-search-optimization-agent-session` skill
868
- - 更适合把 GEO 任务直接交给下一个 agent 连续推进
869
-
870
- ## New in 1.2.9
871
-
872
- - 新增 `agent-runbook` 命令
873
- - 把 `agent-session` 继续推进成给 agent 使用的执行手册和检查清单
874
- - 输出开始前检查、工作规则、停止条件、验证清单、回报清单
875
- - 新增 `geo-ai-search-optimization-agent-runbook` skill
876
-
877
- ## New in 1.2.10
878
-
879
- - 新增 `agent-executor` 命令
880
- - 把 runbook 再收敛成“这一轮先做哪 1 包”的单任务入口
881
- - 输出 do-now checklist、stop checklist、success checklist、验证命令和回报模板
882
- - 新增 `geo-ai-search-optimization-agent-executor` skill
883
-
884
- ## New in 1.3.0
885
-
886
- - 正式进入 `1.3` 主线,把 agent-first 的执行闭环收敛成更明确的继续入口
887
- - 新增 `agent-continue`
888
- - 把 `agent-resume` 再推进成“继续这一轮并回写状态工件”的微闭环入口
889
- - 输出 `continue_now`、`validate_after`、`update_artifacts`、`closeout_when_ready`、`report_back`
890
- - `auto-flow`、`agent-session` 已能把 `playbook-pack / agent-resume / agent-continue` 统一接成继续链
891
- - 新增 `geo-ai-search-optimization-agent-continue` skill
892
-
893
- ## New in 1.3.1
894
-
895
- - 新增 `agent-state-pack`
896
- - 把 `agent-resume + agent-continue + agent-status-board + agent-checkpoint` 压成一个统一状态工件
897
- - 输出当前阶段、当前包、现在先执行哪条命令、执行后验证项、同步状态命令和收尾路径
898
- - `auto-flow` 已能识别 `geo-agent-state-pack` 并继续往下路由
899
- - 新增 `geo-ai-search-optimization-agent-state-pack` skill
900
-
901
- ## New in 1.3.2
902
-
903
- - 进行了 CLI 架构迭代,把 flow/routing 相关命令从主 `cli.js` 拆到独立模块
904
- - 新增 `src/cli-flow-commands.js`,让 `auto-flow / agent-orchestrator / agent-resume / agent-continue / agent-state-pack / agent-session` 形成一个明确的 adapter 边界
905
- - 新增 `src/cli-shared.js`,集中处理 flag 解析、输入校验和输出写回,降低后续继续加命令时的耦合
906
- - 主 `cli.js` 现在更像薄路由层,后续扩充 command family 会更稳
907
-
908
- ## New in 1.3.3
909
-
910
- - 继续做 CLI 架构迭代,把 agent execution family 也从主 `cli.js` 拆出
911
- - 新增 `src/cli-agent-execution-commands.js`,接管 `agent-runbook / agent-executor / agent-batch-executor / agent-progress-tracker / agent-status-board / agent-checkpoint / agent-decision-log / agent-retrospective / agent-playbook-pack`
912
- - 主 `cli.js` 进一步收敛成更薄的 command router
913
- - 现在 flow family 和 execution family 都有独立 adapter 模块,后续继续拆 planning / delivery 会更顺
914
-
915
- ## New in 1.3.4
916
-
917
- - 继续做 CLI 架构迭代,把 planning / reporting / delivery family 也从主 `cli.js` 拆出
918
- - 新增 `src/cli-planning-delivery-commands.js`,接管 `agent-handoff / apply-plan / completion-report / handoff-bundle / share-pack / export-pack / html-pack / publish-pack / exec-summary / fix-plan / owner-board / meeting-pack / pm-brief / roadmap / report`
919
- - 主 `cli.js` 现在更接近纯路由层
920
- - CLI 已经形成 `flow / execution / planning-delivery / shared` 四层 command adapter 结构
921
-
922
- ## New in 1.3.5
923
-
924
- - 继续做 CLI 架构迭代,把 onboarding / audit / scan / doctor / init family 也从主 `cli.js` 拆出
925
- - 新增 `src/cli-site-ops-commands.js`,接管 `doctor / quick-start / onboard / onboard-url / init-llms / init-schema / audit / scan`
926
- - 主 `cli.js` 现在只保留 install / skills / where / version / help 与 command routing
927
- - CLI 已经形成 `flow / execution / planning-delivery / site-ops / shared` 五层 command adapter 结构
928
-
929
- ## New in 1.3.6
930
-
931
- - 继续做 CLI 架构迭代,把 shell family 也从主 `cli.js` 拆出
932
- - 新增 `src/cli-shell-commands.js`,接管 `install / skills / where`
933
- - 主 `cli.js` 现在只保留 `version / help / command routing`
934
- - CLI 已经形成 `shell / flow / execution / planning-delivery / site-ops / shared` 六层 command adapter 结构
935
-
936
- ## New in 1.3.7
937
-
938
- - 开始把重复的 artifact 编排从 adapter 中抽成共享组合器
939
- - `src/cli-shared.js` 新增 `createArtifactCommandHandler` 和 `createPackCommandHandler`
940
- - `src/cli-agent-execution-commands.js` 与 `src/cli-planning-delivery-commands.js` 现在改用声明式组合,减少重复的 `create / render / write` handler 模板代码
941
- - CLI 架构从“按命令族拆文件”进一步推进到“adapter + shared composition”模式
942
-
943
- ## New in 1.3.8
944
-
945
- - 继续把共享组合器推广到 `flow` 与 `site-ops` 两层
946
- - `src/cli-shared.js` 新增 `createStructuredOutputCommandHandler`
947
- - `src/cli-flow-commands.js` 现在统一通过组合器编排 `auto-flow / agent-orchestrator / agent-resume / agent-continue / agent-state-pack / agent-session`
948
- - `src/cli-site-ops-commands.js` 现在统一通过组合器编排 `doctor / quick-start / onboard / onboard-url / audit / scan`
949
- - CLI 架构进一步收敛到“命令族 adapter + shared composition primitives”的模式
950
-
951
- ## New in 1.3.9
952
-
953
- - 继续把“直接执行型命令”也纳入共享组合模式
954
- - `src/cli-shared.js` 新增 `createActionCommandHandler`
955
- - `src/cli-shell-commands.js` 里的 `install` 已改成声明式 action 组合
956
- - `src/cli-site-ops-commands.js` 里的 `init-llms / init-schema` 已改成声明式 action 组合
957
- - CLI 现在同时覆盖 artifact、structured-output、action 三类共享 composition primitives
958
-
959
- ## New in 1.3.10
960
-
961
- - 开始把重复的命令参数组装抽成共享 option builders
962
- - `src/cli-shared.js` 新增 `buildIntentFormatOptions / buildTaskFormatOptions / buildProgressFormatOptions` 等 builder
963
- - `src/cli-agent-execution-commands.js`、`src/cli-flow-commands.js`、`src/cli-planning-delivery-commands.js` 现在统一复用这些 builder
964
- - CLI 架构进一步接近“adapter registry + shared option builders + shared composition primitives”的模式
965
-
966
- ## New in 1.3.11
967
-
968
- - 继续收敛原本仍较特殊的命令编排
969
- - `src/cli-shared.js` 新增 `buildTaskOutputDirOptions / buildTaskFormatOutputDirOptions / createContentCommandHandler`
970
- - `src/cli-planning-delivery-commands.js` 中的 `report` 已改成统一 content handler
971
- - `export-pack / html-pack / publish-pack` 也开始复用共享 output-dir / task builder
972
- - CLI 更接近统一的 command registry,而不是混合少数特例 handler
973
-
974
- ## New in 1.3.12
975
-
976
- - 开始把命令说明与 handler 收敛成同源 registry metadata
977
- - `src/cli-shared.js` 新增 `buildCommandRegistry`
978
- - `src/cli-shell-commands.js` 与 `src/cli-flow-commands.js` 现在由同一份声明同时生成 help lines 和 handlers
979
- - CLI 开始从“多个 handler 文件”进一步推进到“显式 command registry”模式
980
-
981
- ## New in 1.3.13
982
-
983
- - 把 registry metadata 推广到 `agent-execution` 命令族
984
- - `src/cli-agent-execution-commands.js` 现在由同一份 registry 同时生成 help lines 和 handlers
985
- - `agent-runbook / agent-executor / agent-batch-executor / agent-progress-tracker / agent-status-board / agent-checkpoint / agent-decision-log / agent-retrospective / agent-playbook-pack` 已统一进入 registry
986
- - CLI 距离“所有命令族都使用显式 registry metadata”又更近一步
987
-
988
- ## New in 1.3.14
989
-
990
- - 把 registry metadata 推广到 `planning-delivery` 命令族
991
- - `src/cli-planning-delivery-commands.js` 现在由同一份 registry 同时生成 help lines 和 handlers
992
- - `agent-handoff / apply-plan / completion-report / handoff-bundle / share-pack / export-pack / html-pack / publish-pack / exec-summary / fix-plan / owner-board / meeting-pack / pm-brief / roadmap / report` 已统一进入 registry
993
- - CLI 更接近所有命令族都使用显式 registry metadata 的结构
994
-
995
- ## New in 1.4.0
996
-
997
- - 新增 `page-audit`
998
- - 支持对单个 URL 或本地单页文件做 GEO 页面级审计
999
- - 输出页面分数、问题区域、推荐新增模块、rewrite brief 与 agent prompt
1000
- - 产品能力从“站点级诊断”扩展到“页面级修复入口”
1001
-
1002
- ## New in 1.4.1
1003
-
1004
- - 新增 `rewrite-pack`
1005
- - 基于 `page-audit` 继续产出 metadata drafts、章节结构、FAQ questions、schema recommendations 与 execution checklist
1006
- - 让产品从“页面级诊断”继续推进到“页面级改写方案”
1007
-
1008
- ## New in 1.4.2
1009
-
1010
- - 新增 `repo-patch-plan`
1011
- - 把 GEO 问题继续收敛到仓库级 likely files、模板入口、metadata / schema / navigation 区域
1012
- - 让 agent 更容易从“页面建议”切到“仓库改动计划”
1013
-
1014
- ## New in 1.2.20
1015
-
1016
- - 新增 `agent-continue`
1017
- - 把 `agent-resume` 再推进成“继续这一轮并回写状态工件”的微闭环入口
1018
- - 输出 `continue_now`、`validate_after`、`update_artifacts`、`closeout_when_ready`、`report_back`
1019
- - `auto-flow`、`agent-session` 已能把 `playbook-pack / agent-resume / agent-continue` 统一接成继续链
1020
- - 新增 `geo-ai-search-optimization-agent-continue` skill
1021
-
1022
- ## New in 1.2.19
1023
-
1024
- - 新增 `agent-resume`
1025
- - 把 `agent-orchestrator + agent-playbook-pack` 收敛成“从最近一个可靠恢复点继续”的恢复入口
1026
- - 输出 `resume_mode`、`resume_from`、`resume_command`、`verify_before_resume`、`do_not_reset`、`after_resume`
1027
- - `auto-flow`、`agent-session`、`skills` 已经把 `agent-resume` 视为正式恢复链路
1028
- - 新增 `geo-ai-search-optimization-agent-resume` skill
1029
-
1030
- ## New in 1.2.18
1031
-
1032
- - 新增 `agent-orchestrator`
1033
- - 把 `auto-flow + agent-session` 收敛成一个“现在只该做哪条命令”的总入口
1034
- - 输出固定 contract:`current_stage`、`why_now`、`next_command`、`expected_artifact`、`stop_if`、`after_that`
1035
- - 更适合 PM 把任务直接交给 agent,或 agent 接着前一个工件继续做
1036
- - 新增 `geo-ai-search-optimization-agent-orchestrator` skill
1037
-
1038
- ## New in 1.2.17
1039
-
1040
- - 新增 `agent-playbook-pack`
1041
- - 把 `agent-retrospective + agent-decision-log + handoff-bundle` 压成一个单入口执行包
1042
- - 让下一位 agent 可以直接从 current packet、start command 和 do-now checklist 继续
1043
- - `completion-report` 现在也能直接吃 retrospective / handoff bundle / playbook pack 这类工件
1044
- - 新增 `geo-ai-search-optimization-agent-playbook-pack` skill
1045
-
1046
- ## New in 1.2.16
1047
-
1048
- - 新增 `agent-retrospective` 命令
1049
- - 把多轮 decision log 压成复盘视图,识别重复阻塞、重复任务包和反复出现的决策模式
1050
- - 支持从 `agent-decision-log`、`agent-checkpoint`、目录、网址等输入继续生成 retrospective
1051
- - 新增 `geo-ai-search-optimization-agent-retrospective` skill
1052
-
1053
- ## New in 1.2.15
1054
-
1055
- - 新增 `agent-decision-log` 命令
1056
- - 把多轮 checkpoint 沉淀成可继承的决策历史,而不是只有单轮阶段判断
1057
- - 支持从 `agent-checkpoint`、`agent-status-board`、`agent-progress-tracker`、目录、网址等输入继续生成或追加决策记录
1058
- - 新增 `geo-ai-search-optimization-agent-decision-log` skill
1059
-
1060
- ## New in 1.2.14
1061
-
1062
- - 新增 `agent-checkpoint` 命令
1063
- - 把每一轮执行状态压成 continue / unblock / closeout 的阶段决策工件
1064
- - 支持从 `agent-progress-tracker`、`agent-status-board`、`apply-plan` 等工件继续生成检查点
1065
- - 新增 `geo-ai-search-optimization-agent-checkpoint` skill
1066
-
1067
- ## New in 1.2.13
1068
-
1069
- - 新增 `agent-status-board` 命令
1070
- - 把当前执行状态整理成更像看板的分栏视图
1071
- - 支持从 `apply-plan`、`agent-progress-tracker`、`agent-batch-executor` 等工件继续生成状态看板
1072
- - 新增 `geo-ai-search-optimization-agent-status-board` skill
1073
-
1074
- ## New in 1.2.12
1075
-
1076
- - 新增 `agent-progress-tracker` 命令
1077
- - 可以从 `apply-plan`、`agent-executor`、`agent-batch-executor` 等工件推导当前执行进度
1078
- - 输出已完成任务、当前包、下一包、阻塞项和建议下一步命令
1079
- - 新增 `geo-ai-search-optimization-agent-progress-tracker` skill
1080
-
1081
- ## New in 1.2.11
1082
-
1083
- - 新增 `agent-batch-executor` 命令
1084
- - 让 agent 可以连续推进前几包任务,但仍然保持一次只执行一包
1085
- - 输出批次顺序、每包检查清单、批次总验证命令和收尾命令
1086
- - 新增 `geo-ai-search-optimization-agent-batch-executor` skill
1087
-
1088
- ## New in 1.2.5
1089
-
1090
- - 新增 `publish-pack`
1091
- - 一次生成最终可交付目录,而不是手动拼 HTML、Markdown、JSON
1092
- - 增加 `START-HERE.md`、`AGENT-START.md`、`manifest.json`
1093
- - 新增 `geo-ai-search-optimization-publish-pack` skill,帮助 agent 直接接手最终交付包
1094
-
1095
- ## New in 1.2.4
1096
-
1097
- - 新增 `html-pack`
1098
- - 直接生成可浏览的静态 HTML 页面目录
1099
- - 更适合直接分享链接或打包给不同角色查看
1100
- - 新增 `geo-ai-search-optimization-html-pack` skill,帮助消费 HTML 包
1101
-
1102
- ## New in 1.2.3
1103
-
1104
- - 新增 `export-pack`
1105
- - 直接生成一组可外发文件,而不是只在终端显示
1106
- - 一次导出 PM、工程、管理层、Agent 四类视图
1107
- - 新增 `geo-ai-search-optimization-export-pack` skill,帮助消费导出结果
1108
-
1109
- ## New in 1.2.2
1110
-
1111
- - 新增 `share-pack`
1112
- - 让同一份 GEO 结果按 PM、工程、管理层、Agent 四种视图分享
1113
- - 更适合直接转发,而不是人工重新整理内容
1114
- - 新增 `geo-ai-search-optimization-share-pack` skill,帮助消费分享包
1115
-
1116
- ## New in 1.2.1
1117
-
1118
- - 新增 `handoff-bundle`
1119
- - 把 `agent-handoff + apply-plan + completion-report` 打成一个完整交接包
1120
- - 更适合 agent 或团队直接接力,而不用自己拼多个工件
1121
- - 新增 `geo-ai-search-optimization-handoff-bundle` skill,帮助消费 bundle
1122
-
1123
- ## New in 1.2.0
1124
-
1125
- - 新增 `completion-report`
1126
- - 让 agent 在完成一轮 GEO 修复或建议后自动产出 closeout report
1127
- - 会输出本轮完成项、剩余风险、下一轮任务、复测命令和完成回报模板
1128
- - 新增 `geo-ai-search-optimization-completion-report` skill,帮助 agent 稳定产出复盘
1129
-
1130
- ## New in 1.1.9
1131
-
1132
- - 新增 `apply-plan`
1133
- - 让 agent-handoff 继续进入执行闭环,而不是停在交接阶段
1134
- - 会输出任务执行包、验证指令、Done 定义、完成回报模板
1135
- - 新增 `geo-ai-search-optimization-repair-loop` skill,帮助 agent 继续做修复、验证和回报
1136
-
1137
- ## New in 1.1.8
1138
-
1139
- - 新增 `agent-handoff`
1140
- - 让分析结果可以直接交给 agent 接手,而不只是给人阅读
1141
- - 会输出执行模式、总提示词、任务级 handoff prompt、验收标准与上下文需求
1142
- - 新增 `geo-ai-search-optimization-agent-handoff` skill,帮助 agent 消费这些工件并继续修复
1143
-
1144
- ## New in 1.1.7
1145
-
1146
- - 新增 `exec-summary`
1147
- - 会把现状、为什么现在要做、未来 2-4 周重点压缩成高层摘要
1148
- - 更适合老板、高层或管理层快速理解当前 GEO 投入的必要性
1149
-
1150
- ## New in 1.1.6
1151
-
1152
- - 新增 `meeting-pack`
1153
- - 会把 `pm-brief + owner-board + roadmap` 整合成一份周会同步包
1154
- - 更适合 PM 在周会中快速过现状、任务分工和接下来 2-4 周路线图
1155
-
1156
- ## New in 1.1.5
1157
-
1158
- - 新增 `owner-board`,会把任务自动按 `PM / 工程 / SEO / 内容` 分栏
1159
- - 安装流程现在支持一起安装多个 skill
1160
- - 新增 `geo-ai-search-optimization-usage` skill,agent 装好后可直接用来教用户如何使用这套工具
1161
- - 更适合把这套工具交给 agent 做 onboarding 和后续使用引导
1162
-
1163
- ## New in 1.1.4
1164
-
1165
- - 新增 `roadmap` 命令
1166
- - 可直接把 fix-plan 转成第 1 周 / 第 2 周 / 第 3-4 周执行路线图
1167
- - 每个阶段都带目标、完成标准和任务列表
1168
- - 更适合 PM 做排期、周会同步和跨团队推进
1169
-
1170
- ## New in 1.1.3
1171
-
1172
- - 明确统一 `GEO = Generative Engine Optimization`
1173
- - 新增 `pm-brief`,更适合 PM 开会、排期和分工
1174
- - `fix-plan` 增强为带 `impact`、`effort`、`owner` 的任务输出
1175
- - 整体输出更偏向 PM 决策与推进,而不是只停留在技术检查
1176
-
1177
- ## New in 1.1.2
1178
-
1179
- - 新增 `fix-plan` 命令
1180
- - 可以直接从项目目录、网站网址或已有 JSON 报告生成待办清单
1181
- - 输出 priority、owner、problem、action、expected outcome、why it matters
1182
- - 更适合 PM 直接拆成 backlog 或同步给工程、SEO、内容团队
1183
-
1184
- ## New in 1.1.1
1185
-
1186
- - 不再强调 `saas / blog / docs` 这类站点类型
1187
- - `audit` 改成按问题区域输出,更适合 PM 判断网站哪里有问题
1188
- - 报告里新增 PM 推进清单,方便直接拆成 backlog
1189
- - `onboard-url` 和交互式 `onboard` 改成问题导向
1190
- - `quick-start` 改成通用网站优化工作流
1191
-
1192
- ## New in 1.1.0
1193
-
1194
- - 新增 `report` 命令,统一生成 `audit`、`scan`、`onboard-url` 报告
1195
- - 支持 `markdown`、`html`、`json` 三种输出格式
1196
- - `audit`、`onboard-url`、`scan` 的分析输出改成更适合中文用户阅读的版本
1197
- - 更适合首次分析后直接导出、分享和归档
1198
-
1199
- ## New in 1.0.9
1200
-
1201
- - `onboard` 现在支持仅提供 `--url` 的非交互脚本模式
1202
- - 交互式 onboarding 的输出更适合自动化串接与落盘
1203
-
1204
- ## New in 1.0.8
1205
-
1206
- - 新增 `onboard` 交互式 onboarding 命令
1207
- - 输入网址后继续追问主要目标、已有资产
1208
- - 根据回答输出更个性化的 checklist 与下一步优先事项
1209
-
1210
- ## New in 1.0.7
1211
-
1212
- - `onboard-url` 现在支持输入网址直接开始
1213
- - onboarding 报告增加更完整的 summary
1214
- - 新增 7-day action plan,方便首次用户直接执行
1215
-
1216
- ## New in 1.0.6
1217
-
1218
- - 新增 `onboard-url` 命令
1219
- - 初次用户只输入网站网址,就能拿到首页级 GEO 分析
1220
- - 内建 onboarding flow:抓首页、抓 `robots.txt` / `llms.txt` / `sitemap.xml`、输出下一步动作
1221
-
1222
- ## New in 1.0.5
1223
-
1224
- - 新增 `quick-start` 命令
1225
- - 新增从 0 到 1 的详细 Quick Start 操作说明
1226
- - 增加可直接执行的启动步骤与命令示例
1227
-
1228
- ## New in 1.0.4
1229
-
1230
- - `init-schema` command for generating JSON-LD starter files
1231
- - supported schema templates:
1232
- - `organization`
1233
- - `article`
1234
- - `faq-page`
1235
- - `product`
1236
- - `breadcrumb-list`
1237
-
1238
- ## New in 1.0.3
1239
-
1240
- - `audit` command with a GEO score, blockers, high-impact fixes, SEO support fixes, and experiments
1241
- - report export for audit output via `--out`
1242
-
1243
- ## New in 1.0.2
1244
-
1245
- - `init-llms` command for generating an `llms.txt` starter template
1246
- - keeps the `1.0.1` CLI upgrades: `doctor`, custom `install --target`, and richer `scan` output controls
1247
-
1248
- ## New in 1.0.1
1249
-
1250
- - `doctor` command for installation and environment checks
1251
- - `install --target <dir>` for custom skill destinations
1252
- - `scan --out <file>` to save reports
1253
- - `scan --max-file-size` and `scan --max-examples` for tighter project scans
1254
-
1255
- ## Install location
1256
-
1257
- By default the skill is installed to:
1258
-
1259
- - macOS / Linux: `~/.codex/skills/geo-ai-search-optimization`
1260
- - Windows: `%USERPROFILE%\\.codex\\skills\\geo-ai-search-optimization`
1261
-
1262
- Override with:
237
+ Load via config: `"plugins": ["./my-plugin.js"]`
1263
238
 
1264
- - `CODEX_HOME`
1265
- - `CODEX_SKILLS_DIR`
1266
- - `GEO_SKILL_INSTALL_DIR`
1267
- - `GEO_SKILL_SKIP_POSTINSTALL`
239
+ ## Why GEO?
1268
240
 
1269
- ## Resource contents
241
+ - **35%+ of search queries** are now handled by AI assistants (2026)
242
+ - **SaaS GEO tools cost $100-$3000/month** — this is free and open-source
243
+ - **No other npm package** provides comprehensive GEO analysis with zero dependencies
244
+ - **CI/CD native** — fail your build if GEO score drops
245
+ - **Agent-friendly** — 25 bundled Codex skills for AI coding assistants
1270
246
 
1271
- The installed package now includes a bundled GEO skill pack, including:
247
+ ## Numbers
1272
248
 
1273
- - `geo-ai-search-optimization`
1274
- - `geo-ai-search-optimization-auto-flow`
1275
- - `geo-ai-search-optimization-agent-orchestrator`
1276
- - `geo-ai-search-optimization-agent-resume`
1277
- - `geo-ai-search-optimization-agent-continue`
1278
- - `geo-ai-search-optimization-agent-state-pack`
1279
- - `geo-ai-search-optimization-agent-session`
1280
- - `geo-ai-search-optimization-agent-runbook`
1281
- - `geo-ai-search-optimization-agent-executor`
1282
- - `geo-ai-search-optimization-agent-batch-executor`
1283
- - `geo-ai-search-optimization-agent-progress-tracker`
1284
- - `geo-ai-search-optimization-agent-status-board`
1285
- - `geo-ai-search-optimization-agent-checkpoint`
1286
- - `geo-ai-search-optimization-agent-decision-log`
1287
- - `geo-ai-search-optimization-agent-retrospective`
1288
- - `geo-ai-search-optimization-agent-playbook-pack`
1289
- - `geo-ai-search-optimization-usage`
1290
- - `geo-ai-search-optimization-agent-handoff`
1291
- - `geo-ai-search-optimization-repair-loop`
1292
- - `geo-ai-search-optimization-completion-report`
1293
- - `geo-ai-search-optimization-handoff-bundle`
1294
- - `geo-ai-search-optimization-share-pack`
1295
- - `geo-ai-search-optimization-export-pack`
1296
- - `geo-ai-search-optimization-html-pack`
1297
- - `geo-ai-search-optimization-publish-pack`
249
+ | Metric | Value |
250
+ |--------|-------|
251
+ | CLI Commands | 43 site ops + agent workflow commands |
252
+ | API Exports | 230+ |
253
+ | Analysis Dimensions | 12 |
254
+ | Test Cases | 139 |
255
+ | External Dependencies | 0 |
256
+ | TypeScript Support | Full declarations |
257
+ | GitHub Action | Included |
258
+ | Plugin System | Extensible |
1298
259
 
1299
260
  ## License
1300
261