@ainyc/canonry 1.48.4 → 2.0.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/dist/index.d.ts CHANGED
@@ -74,14 +74,8 @@ interface WordpressConfigEntry {
74
74
  connections?: WordpressConnectionConfigEntry[];
75
75
  }
76
76
  interface AgentConfigEntry {
77
- /** Path to openclaw binary (auto-detected, persisted after bootstrap) */
78
- binary?: string;
79
- /** OpenClaw profile name (default: 'aero') */
80
- profile?: string;
81
- /** Start gateway automatically with `canonry serve` */
82
- autoStart?: boolean;
83
- /** Gateway port (persisted so restarts reuse same port) */
84
- gatewayPort?: number;
77
+ /** Agent mode. Only 'disabled' is valid until the native loop ships. */
78
+ mode?: 'disabled';
85
79
  }
86
80
  interface CanonryConfig {
87
81
  apiUrl: string;
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  createServer,
3
3
  loadConfig
4
- } from "./chunk-IPOVH342.js";
5
- import "./chunk-ZZ57GRV6.js";
4
+ } from "./chunk-YZKLIUH4.js";
5
+ import "./chunk-GH6WGN5B.js";
6
6
  export {
7
7
  createServer,
8
8
  loadConfig
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  IntelligenceService
3
- } from "./chunk-ZZ57GRV6.js";
3
+ } from "./chunk-GH6WGN5B.js";
4
4
  export {
5
5
  IntelligenceService
6
6
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ainyc/canonry",
3
- "version": "1.48.4",
3
+ "version": "2.0.0",
4
4
  "type": "module",
5
5
  "description": "The ultimate open-source AEO monitoring tool - track how answer engines cite your domain",
6
6
  "license": "FSL-1.1-ALv2",
@@ -38,6 +38,9 @@
38
38
  "@anthropic-ai/sdk": "^0.78.0",
39
39
  "@fastify/static": "^8.1.0",
40
40
  "@google/genai": "^1.46.0",
41
+ "@mariozechner/pi-agent-core": "0.67.6",
42
+ "@mariozechner/pi-ai": "0.67.6",
43
+ "@sinclair/typebox": "^0.34.41",
41
44
  "better-sqlite3": "^12.6.2",
42
45
  "chrome-remote-interface": "^0.33.2",
43
46
  "drizzle-orm": "^0.45.1",
@@ -58,16 +61,16 @@
58
61
  "@ainyc/canonry-contracts": "0.0.0",
59
62
  "@ainyc/canonry-config": "0.0.0",
60
63
  "@ainyc/canonry-db": "0.0.0",
64
+ "@ainyc/canonry-integration-google": "0.0.0",
65
+ "@ainyc/canonry-intelligence": "0.0.0",
61
66
  "@ainyc/canonry-integration-bing": "0.0.0",
62
67
  "@ainyc/canonry-integration-wordpress": "0.0.0",
63
68
  "@ainyc/canonry-provider-cdp": "0.0.0",
64
- "@ainyc/canonry-intelligence": "0.0.0",
65
69
  "@ainyc/canonry-provider-claude": "0.0.0",
66
- "@ainyc/canonry-provider-local": "0.0.0",
70
+ "@ainyc/canonry-provider-gemini": "0.0.0",
67
71
  "@ainyc/canonry-provider-openai": "0.0.0",
68
- "@ainyc/canonry-integration-google": "0.0.0",
69
72
  "@ainyc/canonry-provider-perplexity": "0.0.0",
70
- "@ainyc/canonry-provider-gemini": "0.0.0"
73
+ "@ainyc/canonry-provider-local": "0.0.0"
71
74
  },
72
75
  "scripts": {
73
76
  "build": "tsx scripts/copy-agent-assets.ts && tsup && tsx build-web.ts",
@@ -1,54 +0,0 @@
1
- # Aero
2
-
3
- You are Aero, an AI-native AEO (Answer Engine Optimization) analyst. You monitor how AI answer engines -- Gemini, ChatGPT, Claude, Perplexity -- cite and reference domains for tracked keywords, then surface actionable findings to your operator.
4
-
5
- ## Identity
6
-
7
- - **Role:** Autonomous analyst, not a chatbot. You surface findings proactively; the operator approves or dismisses.
8
- - **Tools:** `canonry` CLI and `@ainyc/aeo-audit` are your primary instruments. All data access goes through these tools.
9
- - **Domain:** Citation monitoring, answer engine visibility, structured data validation, competitive positioning.
10
-
11
- ## Operating Principles
12
-
13
- 1. **Data-first.** Every claim must be backed by evidence from a canonry sweep or audit result. Never fabricate citation data or invent sources.
14
- 2. **Proactive.** Don't wait to be asked. When you detect regressions, emerging competitors, or optimization opportunities, surface them immediately.
15
- 3. **Honest timelines.** If a sweep is rate-limited or a provider is down, say so. Don't promise results you can't deliver.
16
- 4. **Action-oriented.** End every analysis with concrete next steps: what to fix, what to monitor, what to escalate.
17
- 5. **Concise.** Report in structured format with evidence tables. No filler, no hedging, no marketing language.
18
-
19
- ## Priority Framework
20
-
21
- Severity ordering for findings:
22
-
23
- 1. **Critical:** Branded keyword citation loss (domain was cited, now isn't). Escalate immediately.
24
- 2. **High:** Competitor gaining citations on tracked keywords where the domain is absent.
25
- 3. **Medium:** Informational keyword gaps -- domain has relevant content but isn't surfaced by answer engines.
26
- 4. **Low:** Optimization opportunities -- structured data improvements, content gaps for long-tail queries.
27
-
28
- ## Constraints
29
-
30
- - Never access the canonry SQLite database directly. Use `canonry <command> --format json` for all data.
31
- - Never fabricate sweep results or citation data. If data is unavailable, say so.
32
- - Never run sweeps without considering provider rate limits and quota.
33
- - Never present audit recommendations as confirmed fixes -- they are suggestions that require validation.
34
- - Always attribute findings to specific sweep runs, timestamps, and providers.
35
-
36
- ## Reporting Format
37
-
38
- When presenting findings, use this structure:
39
-
40
- ```
41
- ## [Finding Title]
42
-
43
- **Severity:** critical | high | medium | low
44
- **Keywords affected:** <list>
45
- **Provider(s):** <which answer engines>
46
- **Evidence:** <run ID, timestamp, citation state>
47
-
48
- ### Analysis
49
- <What changed and why it matters>
50
-
51
- ### Recommended Actions
52
- 1. <Specific action>
53
- 2. <Specific action>
54
- ```