@ainyc/canonry 1.19.4 → 1.20.1
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 +26 -2
- package/assets/assets/index-CaypGSmN.js +246 -0
- package/assets/assets/{index-DpXYVcNu.css → index-D-2VeJdG.css} +1 -1
- package/assets/index.html +2 -2
- package/dist/{chunk-PQLJ22YW.js → chunk-YXYC7NGJ.js} +2673 -1248
- package/dist/cli.js +450 -3
- package/dist/index.d.ts +12 -0
- package/dist/index.js +1 -1
- package/package.json +7 -6
- package/assets/assets/index-GGgJSHS2.js +0 -246
package/README.md
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
**Open-source AEO monitoring for your domain.** Canonry tracks how AI answer engines (ChatGPT, Gemini, Claude, and others) cite or omit your website for the keywords you care about.
|
|
6
6
|
|
|
7
|
+
Canonry is API-first: the REST API is the source of truth, the CLI is the standard operator surface, and the web dashboard is a secondary interface for human analysts. Start with [docs/README.md](docs/README.md) for the architecture, roadmap, active plans, testing, deployment, and ADR index.
|
|
8
|
+
|
|
7
9
|
AEO (Answer Engine Optimization) is the practice of ensuring your content is accurately represented in AI-generated answers. As search shifts from links to synthesized responses, monitoring your visibility across answer engines is essential.
|
|
8
10
|
|
|
9
11
|

|
|
@@ -16,7 +18,7 @@ canonry init
|
|
|
16
18
|
canonry serve
|
|
17
19
|
```
|
|
18
20
|
|
|
19
|
-
Open [http://localhost:4100](http://localhost:4100) to access the web dashboard.
|
|
21
|
+
Open [http://localhost:4100](http://localhost:4100) to access the optional web dashboard.
|
|
20
22
|
|
|
21
23
|
For CI or agent workflows, initialize non-interactively:
|
|
22
24
|
|
|
@@ -29,7 +31,8 @@ GEMINI_API_KEY=... OPENAI_API_KEY=... canonry init
|
|
|
29
31
|
## Features
|
|
30
32
|
|
|
31
33
|
- **Multi-provider monitoring** -- query Gemini, OpenAI, Claude, and local LLMs (Ollama, LM Studio, or any OpenAI-compatible endpoint) from a single tool.
|
|
32
|
-
- **
|
|
34
|
+
- **API-first surfaces** -- the REST API is canonical, the CLI is the standard automation surface, and the web dashboard consumes the same core workflows.
|
|
35
|
+
- **Project-scoped location context** -- define named locations per project, set a default, and run explicit or all-location sweeps without making keywords location-owned.
|
|
33
36
|
- **Config-as-code** -- manage projects with Kubernetes-style YAML files. Version control your monitoring setup.
|
|
34
37
|
- **Self-hosted** -- runs locally with SQLite. No cloud account, no external dependencies beyond the LLM API keys you choose to configure.
|
|
35
38
|
- **Scheduled monitoring** -- set up cron-based recurring runs to track citation changes over time.
|
|
@@ -61,6 +64,10 @@ canonry project create <name> --domain <domain> --country US --language en
|
|
|
61
64
|
canonry project list
|
|
62
65
|
canonry project show <name>
|
|
63
66
|
canonry project delete <name>
|
|
67
|
+
canonry project add-location <name> --label <label> --city <city> --region <region> --country <country>
|
|
68
|
+
canonry project locations <name>
|
|
69
|
+
canonry project set-default-location <name> <label>
|
|
70
|
+
canonry project remove-location <name> <label>
|
|
64
71
|
```
|
|
65
72
|
|
|
66
73
|
### Keywords and Competitors
|
|
@@ -80,6 +87,9 @@ canonry competitor list <project>
|
|
|
80
87
|
```bash
|
|
81
88
|
canonry run <project> # Run all configured providers
|
|
82
89
|
canonry run <project> --provider gemini # Run a single provider
|
|
90
|
+
canonry run <project> --location sf # Run with one configured project location
|
|
91
|
+
canonry run <project> --all-locations # Fan out one run per configured location
|
|
92
|
+
canonry run <project> --no-location # Explicitly skip location context
|
|
83
93
|
canonry run <project> --wait # Trigger and wait for completion
|
|
84
94
|
canonry run --all # Trigger runs for all projects
|
|
85
95
|
canonry run show <id> # Show run details and snapshots
|
|
@@ -164,8 +174,22 @@ spec:
|
|
|
164
174
|
- openai
|
|
165
175
|
- claude
|
|
166
176
|
- local
|
|
177
|
+
locations:
|
|
178
|
+
- label: sf
|
|
179
|
+
city: San Francisco
|
|
180
|
+
region: California
|
|
181
|
+
country: US
|
|
182
|
+
timezone: America/Los_Angeles
|
|
183
|
+
- label: nyc
|
|
184
|
+
city: New York
|
|
185
|
+
region: New York
|
|
186
|
+
country: US
|
|
187
|
+
timezone: America/New_York
|
|
188
|
+
defaultLocation: sf
|
|
167
189
|
```
|
|
168
190
|
|
|
191
|
+
Locations are project-scoped run context. Keywords remain project-wide; choose the location at run time via the default location or the `canonry run` location flags.
|
|
192
|
+
|
|
169
193
|
Apply with the CLI or the API. Multiple projects can live in one file separated by `---`, or pass multiple files:
|
|
170
194
|
|
|
171
195
|
```bash
|