@canonry/canonry 7.9.1 → 7.10.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/assets/assets/{AuditHistoryPanel-D0nukTwD.js → AuditHistoryPanel-BgcvPo6g.js} +1 -1
- package/assets/assets/{BacklinksPage-B525ij0g.js → BacklinksPage-DZ4tauAs.js} +1 -1
- package/assets/assets/{HistoryPage-DvupqQDM.js → HistoryPage-DWG52dz1.js} +1 -1
- package/assets/assets/{MeasurementPropertyPage-CwDbi1XN.js → MeasurementPropertyPage-DTx2iQLV.js} +1 -1
- package/assets/assets/{ProjectPage-DmZZ2C7q.js → ProjectPage-CCf70zbI.js} +1 -1
- package/assets/assets/{RunsPage-DHTvHcGm.js → RunsPage-B6MhRqxN.js} +1 -1
- package/assets/assets/{SettingsPage-BwAFzB7A.js → SettingsPage-Bxv7OSHT.js} +1 -1
- package/assets/assets/SiteHealthSection-C5x7oiFL.js +4 -0
- package/assets/assets/{TrafficPage-BOcXASAM.js → TrafficPage-C5gyQopi.js} +1 -1
- package/assets/assets/{TrafficSourceDetailPage-DTq0cN6g.js → TrafficSourceDetailPage-Dv2ZRNvN.js} +1 -1
- package/assets/assets/{extract-error-message-BOTDI6g5.js → extract-error-message-C5pr51ph.js} +1 -1
- package/assets/assets/{index-BLJfGYUw.js → index-BhXHm5nG.js} +3 -3
- package/assets/assets/{react-sigma_core.esm.min-BEBdJNtD.js → react-sigma_core.esm.min-P5bVaYly.js} +1 -1
- package/assets/assets/{v2-overview-adapter-BPZ-H3VY.js → v2-overview-adapter-QtI4xO_4.js} +1 -1
- package/assets/index.html +1 -1
- package/dist/{chunk-KRFTA4I7.js → chunk-52PHEGHT.js} +89 -50
- package/dist/{chunk-T2V2PESH.js → chunk-5ZBN3EEK.js} +2 -2
- package/dist/{chunk-DO7XPDG5.js → chunk-66DVP4DN.js} +9 -1
- package/dist/{chunk-4BKRZGLC.js → chunk-FVMWUT2R.js} +60 -21
- package/dist/{chunk-AAMKTL6B.js → chunk-HL3C6Z7T.js} +3 -3
- package/dist/{chunk-LO56QXPO.js → chunk-IKXVLT4M.js} +2 -2
- package/dist/{chunk-ZLB7WX5D.js → chunk-VSZJVBVR.js} +1 -1
- package/dist/cli.js +9 -9
- package/dist/{demo-server-KDMG3APY.js → demo-server-WZIB4JKJ.js} +4 -4
- package/dist/index.js +6 -6
- package/dist/{intelligence-service-LAXJFE3U.js → intelligence-service-KC62A4X5.js} +2 -2
- package/dist/mcp.js +4 -4
- package/package.json +11 -11
- package/assets/assets/SiteHealthSection-hi54eSIt.js +0 -4
|
@@ -20,20 +20,20 @@ import {
|
|
|
20
20
|
saveConfig,
|
|
21
21
|
saveConfigPatch,
|
|
22
22
|
sentimentInstallReadiness
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-IKXVLT4M.js";
|
|
24
24
|
import {
|
|
25
25
|
computeFactorAverages,
|
|
26
26
|
deleteSiteCrawlGraphLayout,
|
|
27
27
|
persistSiteCrawlGraphLayout,
|
|
28
28
|
prepareSiteCrawlGraphLayout,
|
|
29
29
|
recordedSharePct
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-5ZBN3EEK.js";
|
|
31
31
|
import {
|
|
32
32
|
CanonryMcpToolNames,
|
|
33
33
|
CliError,
|
|
34
34
|
PACKAGE_VERSION,
|
|
35
35
|
canonryMcpTools
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-VSZJVBVR.js";
|
|
37
37
|
import {
|
|
38
38
|
CC_CACHE_DIR,
|
|
39
39
|
DUCKDB_SPEC,
|
|
@@ -205,7 +205,7 @@ import {
|
|
|
205
205
|
siteLivenessState,
|
|
206
206
|
toAlertView,
|
|
207
207
|
usageCounters
|
|
208
|
-
} from "./chunk-
|
|
208
|
+
} from "./chunk-52PHEGHT.js";
|
|
209
209
|
import {
|
|
210
210
|
AGENT_MEMORY_VALUE_MAX_BYTES,
|
|
211
211
|
AGENT_NONE,
|
|
@@ -414,7 +414,7 @@ import {
|
|
|
414
414
|
visibilityReportRequestSchema,
|
|
415
415
|
winnabilityClassLabel,
|
|
416
416
|
withRetry
|
|
417
|
-
} from "./chunk-
|
|
417
|
+
} from "./chunk-66DVP4DN.js";
|
|
418
418
|
|
|
419
419
|
// src/runtime-context.ts
|
|
420
420
|
function cliRuntimeContext(env = process.env, stdio = process) {
|
|
@@ -7873,7 +7873,7 @@ function nonBlank(value) {
|
|
|
7873
7873
|
return trimmed ? trimmed : void 0;
|
|
7874
7874
|
}
|
|
7875
7875
|
function resolveBuildCommit(env = process.env) {
|
|
7876
|
-
const embedded = true ? "
|
|
7876
|
+
const embedded = true ? "b8858fd6adad2abea13e838eab395ad7aef15323" : void 0;
|
|
7877
7877
|
return nonBlank(embedded) ?? nonBlank(env.CANONRY_COMMIT);
|
|
7878
7878
|
}
|
|
7879
7879
|
function resolveInstanceIdentity(env = process.env) {
|
|
@@ -16466,7 +16466,7 @@ function partialLists(root) {
|
|
|
16466
16466
|
if (uncounted.length === 1) {
|
|
16467
16467
|
const index = uncounted[0];
|
|
16468
16468
|
const key = lists[index][0];
|
|
16469
|
-
const paged = cursorForList(object, path9, key, root) || typeof object.truncated === "boolean" || typeof object[`${key}Truncated`] === "boolean" || ["items", "rows", "results"].includes(key);
|
|
16469
|
+
const paged = object === root || cursorForList(object, path9, key, root) || typeof object.truncated === "boolean" || typeof object[`${key}Truncated`] === "boolean" || ["items", "rows", "results"].includes(key);
|
|
16470
16470
|
if (paged) counts[index] = bareTotal(numbers);
|
|
16471
16471
|
}
|
|
16472
16472
|
for (const [index, [key, rows]] of lists.entries()) {
|
|
@@ -16747,12 +16747,12 @@ function projectionPath(path9) {
|
|
|
16747
16747
|
const digest = createHash5("sha256").update(path9).digest("hex").slice(0, 12);
|
|
16748
16748
|
return `${truncateUtf16(path9, 48)}...#${digest}${path9.slice(-24)}`;
|
|
16749
16749
|
}
|
|
16750
|
-
function boundedProjection(full) {
|
|
16750
|
+
function boundedProjection(full, partialRows, reserve = 0) {
|
|
16751
16751
|
const value = JSON.parse(full);
|
|
16752
|
-
|
|
16752
|
+
let summary = {
|
|
16753
16753
|
droppedKeys: [],
|
|
16754
16754
|
keptItems: {},
|
|
16755
|
-
projection: "Only complete array rows and marked partial string prefixes are shown; omitted fields are not evidence. Never follow a cursor from a cut page; re-request the original cursor with a smaller limit."
|
|
16755
|
+
projection: partialRows ? "Array rows are complete unless slicedKeys or droppedKeys name a field inside one; sliced strings are partial prefixes and omitted fields are not evidence. Never follow a cursor from a cut page; re-request the original cursor with a smaller limit." : "Only complete array rows and marked partial string prefixes are shown; omitted fields are not evidence. Never follow a cursor from a cut page; re-request the original cursor with a smaller limit."
|
|
16756
16756
|
};
|
|
16757
16757
|
const skippedMetadata = () => {
|
|
16758
16758
|
summary.moreMetadataEntries = (summary.moreMetadataEntries ?? 0) + 1;
|
|
@@ -16778,6 +16778,7 @@ function boundedProjection(full) {
|
|
|
16778
16778
|
}
|
|
16779
16779
|
if (dropped > summary.droppedKeys.length) summary.moreDroppedKeys = dropped - summary.droppedKeys.length;
|
|
16780
16780
|
};
|
|
16781
|
+
const cutOwners = /* @__PURE__ */ new Set();
|
|
16781
16782
|
const project = (input, budget, path9, owner, ownerPath = "") => {
|
|
16782
16783
|
if (Array.isArray(input)) {
|
|
16783
16784
|
const rows = [];
|
|
@@ -16785,11 +16786,26 @@ function boundedProjection(full) {
|
|
|
16785
16786
|
for (const row of input) {
|
|
16786
16787
|
const text = serializeResult(row);
|
|
16787
16788
|
const cost = text.length + (rows.length > 0 ? 1 : 0);
|
|
16788
|
-
if (used2 + cost
|
|
16789
|
-
|
|
16790
|
-
|
|
16789
|
+
if (used2 + cost <= budget) {
|
|
16790
|
+
rows.push(text);
|
|
16791
|
+
used2 += cost;
|
|
16792
|
+
continue;
|
|
16793
|
+
}
|
|
16794
|
+
if (partialRows && (rows.length === 0 || text.length > MAX_TOOL_RESULT_CHARS)) {
|
|
16795
|
+
const before = { summary: serializeResult(summary), dropped };
|
|
16796
|
+
const partial = project(row, budget - used2 - (rows.length > 0 ? 1 : 0), `${path9 || "items"}[${rows.length}]`);
|
|
16797
|
+
if (partial !== void 0 && partial !== "{}" && partial !== "[]") {
|
|
16798
|
+
partialRows.set(path9 || "items", rows.length);
|
|
16799
|
+
rows.push(partial);
|
|
16800
|
+
} else {
|
|
16801
|
+
summary = JSON.parse(before.summary);
|
|
16802
|
+
dropped = before.dropped;
|
|
16803
|
+
}
|
|
16804
|
+
}
|
|
16805
|
+
break;
|
|
16791
16806
|
}
|
|
16792
16807
|
if (rows.length < input.length) {
|
|
16808
|
+
if (partialRows && owner) cutOwners.add(owner);
|
|
16793
16809
|
record2(summary.keptItems, path9 || "items", `${rows.length} of ${input.length}`);
|
|
16794
16810
|
if (rows.length === 0) omit(path9 || "items");
|
|
16795
16811
|
if (owner) {
|
|
@@ -16813,9 +16829,8 @@ function boundedProjection(full) {
|
|
|
16813
16829
|
omit(path9 || "(root)");
|
|
16814
16830
|
return void 0;
|
|
16815
16831
|
}
|
|
16816
|
-
const
|
|
16817
|
-
const
|
|
16818
|
-
fields.sort((a, b) => priority(a) - priority(b));
|
|
16832
|
+
const priority = ([key, child]) => key === "queryPage" && isRecord5(child) ? 0 : typeof child === "string" && child.length > budget ? 2 : typeof child !== "object" || child === null ? 0 : partialRows && serializeResult(child).length > budget ? 2 : 1;
|
|
16833
|
+
const fields = Object.entries(input).filter(([key]) => !key.startsWith("__")).map((field) => ({ field, rank: priority(field) })).sort((a, b) => a.rank - b.rank).map(({ field }) => field);
|
|
16819
16834
|
const shown2 = [];
|
|
16820
16835
|
let used = 2;
|
|
16821
16836
|
for (const [key, child] of fields) {
|
|
@@ -16831,17 +16846,40 @@ function boundedProjection(full) {
|
|
|
16831
16846
|
shown2.push(prefix + text);
|
|
16832
16847
|
used += prefix.length + text.length + (shown2.length > 1 ? 1 : 0);
|
|
16833
16848
|
}
|
|
16849
|
+
if (path9 && cutOwners.has(input)) shown2.push('"__truncated":true');
|
|
16834
16850
|
return `{${shown2.join(",")}}`;
|
|
16835
16851
|
};
|
|
16836
|
-
const projected = project(value, MAX_TOOL_RESULT_CHARS - PROJECTION_SUMMARY_CHARS, "");
|
|
16852
|
+
const projected = project(value, MAX_TOOL_RESULT_CHARS - PROJECTION_SUMMARY_CHARS - reserve, "");
|
|
16837
16853
|
const shown = projected === void 0 ? {} : JSON.parse(projected);
|
|
16838
16854
|
const output = isRecord5(shown) ? shown : { items: shown };
|
|
16839
|
-
|
|
16840
|
-
|
|
16841
|
-
|
|
16855
|
+
const result2 = { ...output, __truncated: true, [TRUNCATION_SUMMARY_KEY]: summary };
|
|
16856
|
+
return serializeResult(partialRows ? withPartialLists(result2) : result2);
|
|
16857
|
+
}
|
|
16858
|
+
function rowsShown(cut, path9) {
|
|
16859
|
+
if (path9.includes("[")) return Infinity;
|
|
16860
|
+
const list = path9.split(".").reduce((owner, key) => isRecord5(owner) ? owner[key] : void 0, cut);
|
|
16861
|
+
return Array.isArray(list) ? list.length : 0;
|
|
16862
|
+
}
|
|
16863
|
+
function withPartialRows(full, whole) {
|
|
16864
|
+
const rescued = /* @__PURE__ */ new Map();
|
|
16865
|
+
let partial = boundedProjection(full, rescued);
|
|
16866
|
+
if (!fitsCap(partial)) {
|
|
16867
|
+
const { [PARTIAL_LISTS_KEY]: lists, __pagination: pagination } = JSON.parse(partial);
|
|
16868
|
+
rescued.clear();
|
|
16869
|
+
partial = boundedProjection(full, rescued, serializeResult({ lists, pagination }).length);
|
|
16870
|
+
}
|
|
16871
|
+
if (!fitsCap(partial)) return whole;
|
|
16872
|
+
const cut = JSON.parse(whole);
|
|
16873
|
+
return [...rescued].some(([path9, index]) => rowsShown(cut, path9) <= index) ? partial : whole;
|
|
16874
|
+
}
|
|
16875
|
+
function truncateToolResult(details, options = {}) {
|
|
16842
16876
|
const annotated = withPartialLists(details);
|
|
16843
16877
|
const full = serializeResult(annotated);
|
|
16844
16878
|
if (full.length <= MAX_TOOL_RESULT_CHARS) return full;
|
|
16879
|
+
const whole = truncateWholeRows(details, full);
|
|
16880
|
+
return options.partialRows ? withPartialRows(full, whole) : whole;
|
|
16881
|
+
}
|
|
16882
|
+
function truncateWholeRows(details, full) {
|
|
16845
16883
|
if (full.length > MAX_STRUCTURED_TRUNCATION_CHARS) return boundedProjection(full);
|
|
16846
16884
|
if (Array.isArray(details)) {
|
|
16847
16885
|
const render2 = (rows) => serializeResult({
|
|
@@ -18141,7 +18179,8 @@ function adaptRemoteTool(client, tool) {
|
|
|
18141
18179
|
}
|
|
18142
18180
|
}
|
|
18143
18181
|
return {
|
|
18144
|
-
|
|
18182
|
+
// A fetched document can be one row larger than the cap; show it in part rather than not at all.
|
|
18183
|
+
content: [{ type: "text", text: truncateToolResult(shown, { partialRows: true }) }],
|
|
18145
18184
|
details: result2,
|
|
18146
18185
|
isError: isRemoteToolError(result2)
|
|
18147
18186
|
};
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
installSkills,
|
|
5
5
|
loadConfigRaw,
|
|
6
6
|
saveConfigPatch
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-IKXVLT4M.js";
|
|
8
8
|
import {
|
|
9
9
|
PACKAGE_VERSION
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-VSZJVBVR.js";
|
|
11
11
|
import {
|
|
12
12
|
SKILL_MANIFEST_FILENAME,
|
|
13
13
|
SkillsClients
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-66DVP4DN.js";
|
|
15
15
|
|
|
16
16
|
// src/skills-autosync.ts
|
|
17
17
|
import fs from "fs";
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
PACKAGE_VERSION,
|
|
6
6
|
canonryMcpTools,
|
|
7
7
|
isMachineFormat
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-VSZJVBVR.js";
|
|
9
9
|
import {
|
|
10
10
|
AGENT_PROVIDER_IDS,
|
|
11
11
|
CANONRY_NPM_PACKAGE_URL,
|
|
@@ -50,7 +50,7 @@ import {
|
|
|
50
50
|
skillsClientSchema,
|
|
51
51
|
upgradeCaveatFor,
|
|
52
52
|
upgradeCommandFor
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-66DVP4DN.js";
|
|
54
54
|
|
|
55
55
|
// src/config.ts
|
|
56
56
|
import fs from "fs";
|
package/dist/cli.js
CHANGED
|
@@ -32,11 +32,11 @@ import {
|
|
|
32
32
|
trackCliCommandFinished,
|
|
33
33
|
trackEvent,
|
|
34
34
|
waitForServerRuntimeStartup
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-FVMWUT2R.js";
|
|
36
36
|
import {
|
|
37
37
|
autoSyncSkills,
|
|
38
38
|
formatAutoSyncNotice
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-HL3C6Z7T.js";
|
|
40
40
|
import {
|
|
41
41
|
configExists,
|
|
42
42
|
createApiClient,
|
|
@@ -53,13 +53,13 @@ import {
|
|
|
53
53
|
saveConfig,
|
|
54
54
|
saveConfigPatch,
|
|
55
55
|
shouldPrintServeSkillsNudge
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-IKXVLT4M.js";
|
|
57
57
|
import {
|
|
58
58
|
DEFAULT_DEMO_TRUSTED_PROXIES,
|
|
59
59
|
trustedProxiesProblem,
|
|
60
60
|
trustedProxyProblem
|
|
61
61
|
} from "./chunk-RB2F4D3Z.js";
|
|
62
|
-
import "./chunk-
|
|
62
|
+
import "./chunk-5ZBN3EEK.js";
|
|
63
63
|
import {
|
|
64
64
|
CliError,
|
|
65
65
|
EXIT_SYSTEM_ERROR,
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
runMeasurementDraftAction,
|
|
72
72
|
systemError,
|
|
73
73
|
usageError
|
|
74
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-VSZJVBVR.js";
|
|
75
75
|
import {
|
|
76
76
|
CLOUDFLARE_WORKER_BINDINGS,
|
|
77
77
|
CLOUDFLARE_WORKER_GENERATED_MARKER,
|
|
@@ -100,7 +100,7 @@ import {
|
|
|
100
100
|
querySnapshots,
|
|
101
101
|
rawEventSamples,
|
|
102
102
|
runs
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-52PHEGHT.js";
|
|
104
104
|
import {
|
|
105
105
|
AdsDeliverySnapshotStatuses,
|
|
106
106
|
AdsHistoricalCampaignRollupStatuses,
|
|
@@ -229,7 +229,7 @@ import {
|
|
|
229
229
|
visibilityCompareSelectionSchema,
|
|
230
230
|
visibilityReportRequestSchema,
|
|
231
231
|
winnabilityClassSchema
|
|
232
|
-
} from "./chunk-
|
|
232
|
+
} from "./chunk-66DVP4DN.js";
|
|
233
233
|
|
|
234
234
|
// src/cli.ts
|
|
235
235
|
import { pathToFileURL } from "url";
|
|
@@ -779,7 +779,7 @@ function parseDemoTrustedProxies(values) {
|
|
|
779
779
|
async function demoCommand(options) {
|
|
780
780
|
const { host, port } = parseDemoListenOptions(options);
|
|
781
781
|
const trustProxy = parseDemoTrustedProxies(options.trustProxy);
|
|
782
|
-
const { createDemoServer } = await import("./demo-server-
|
|
782
|
+
const { createDemoServer } = await import("./demo-server-WZIB4JKJ.js");
|
|
783
783
|
const app = await createDemoServer({ trustProxy });
|
|
784
784
|
let stopping = false;
|
|
785
785
|
const stop = () => {
|
|
@@ -1193,7 +1193,7 @@ No DB writes performed. Re-run without --dry-run to apply.`);
|
|
|
1193
1193
|
}
|
|
1194
1194
|
}
|
|
1195
1195
|
async function backfillInsightsCommand(project2, opts) {
|
|
1196
|
-
const { IntelligenceService } = await import("./intelligence-service-
|
|
1196
|
+
const { IntelligenceService } = await import("./intelligence-service-KC62A4X5.js");
|
|
1197
1197
|
const config = loadConfig();
|
|
1198
1198
|
const db = createClient(config.database);
|
|
1199
1199
|
migrate(db);
|
|
@@ -5,11 +5,11 @@ import {
|
|
|
5
5
|
computeFactorAverages,
|
|
6
6
|
layoutSiteCrawlGraphInput,
|
|
7
7
|
persistSiteCrawlGraphLayout
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-5ZBN3EEK.js";
|
|
9
9
|
import {
|
|
10
10
|
PACKAGE_VERSION,
|
|
11
11
|
canonryMcpTools
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-VSZJVBVR.js";
|
|
13
13
|
import {
|
|
14
14
|
HISTORY_WINDOW_RUNS,
|
|
15
15
|
IntelligenceService,
|
|
@@ -83,7 +83,7 @@ import {
|
|
|
83
83
|
siteCrawlPages,
|
|
84
84
|
siteCrawlSnapshots,
|
|
85
85
|
trafficSources
|
|
86
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-52PHEGHT.js";
|
|
87
87
|
import {
|
|
88
88
|
RunKinds,
|
|
89
89
|
SiteCrawlFetchStates,
|
|
@@ -112,7 +112,7 @@ import {
|
|
|
112
112
|
roundPreservingTotal,
|
|
113
113
|
siteAuditPageFactorSchema,
|
|
114
114
|
wilsonInterval
|
|
115
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-66DVP4DN.js";
|
|
116
116
|
|
|
117
117
|
// src/demo-server.ts
|
|
118
118
|
import { dirname, join as join2 } from "path";
|
package/dist/index.js
CHANGED
|
@@ -3,14 +3,14 @@ import {
|
|
|
3
3
|
createGoogleMarketingCredentialStore,
|
|
4
4
|
createGoogleMarketingRuntime,
|
|
5
5
|
createServer
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FVMWUT2R.js";
|
|
7
7
|
import {
|
|
8
8
|
loadConfig
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-IKXVLT4M.js";
|
|
10
|
+
import "./chunk-5ZBN3EEK.js";
|
|
11
|
+
import "./chunk-VSZJVBVR.js";
|
|
12
|
+
import "./chunk-52PHEGHT.js";
|
|
13
|
+
import "./chunk-66DVP4DN.js";
|
|
14
14
|
export {
|
|
15
15
|
GoogleMarketingRuntimeError,
|
|
16
16
|
createGoogleMarketingCredentialStore,
|
package/dist/mcp.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
autoSyncSkills
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-HL3C6Z7T.js";
|
|
4
4
|
import {
|
|
5
5
|
createApiClient,
|
|
6
6
|
createCanonryMcpServer
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-IKXVLT4M.js";
|
|
8
|
+
import "./chunk-VSZJVBVR.js";
|
|
9
9
|
import {
|
|
10
10
|
isReadOnlyKey,
|
|
11
11
|
updateCheckEnvOptOut
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-66DVP4DN.js";
|
|
13
13
|
|
|
14
14
|
// src/mcp/cli.ts
|
|
15
15
|
import { randomUUID } from "crypto";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@canonry/canonry",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.10.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Self-hosted AI visibility (AEO) platform: track how ChatGPT, Claude, Gemini, and Perplexity cite your domain, join it with Search Console, GA4, server-side traffic, and paid media, and fix what you find through agent tools (CLI, REST, MCP). Local SQLite.",
|
|
6
6
|
"keywords": [
|
|
@@ -86,32 +86,32 @@
|
|
|
86
86
|
"tsup": "^8.5.1",
|
|
87
87
|
"tsx": "^4.19.0",
|
|
88
88
|
"@ainyc/canonry-web": "0.0.0",
|
|
89
|
-
"@ainyc/canonry-api-routes": "0.0.0",
|
|
90
|
-
"@ainyc/canonry-config": "0.0.0",
|
|
91
89
|
"@ainyc/canonry-api-client": "0.0.0",
|
|
92
90
|
"@ainyc/canonry-contracts": "0.0.0",
|
|
93
91
|
"@ainyc/canonry-db": "0.0.0",
|
|
92
|
+
"@ainyc/canonry-config": "0.0.0",
|
|
93
|
+
"@ainyc/canonry-api-routes": "0.0.0",
|
|
94
94
|
"@ainyc/canonry-integration-bing": "0.0.0",
|
|
95
95
|
"@ainyc/canonry-integration-cloud-run": "0.0.0",
|
|
96
96
|
"@ainyc/canonry-integration-cloudflare-worker": "0.0.0",
|
|
97
97
|
"@ainyc/canonry-integration-cloudflare-queue": "0.0.0",
|
|
98
|
-
"@ainyc/canonry-integration-commoncrawl": "0.0.0",
|
|
99
|
-
"@ainyc/canonry-integration-google": "0.0.0",
|
|
100
98
|
"@ainyc/canonry-integration-google-ads": "0.0.0",
|
|
101
|
-
"@ainyc/canonry-integration-google
|
|
99
|
+
"@ainyc/canonry-integration-google": "0.0.0",
|
|
100
|
+
"@ainyc/canonry-integration-commoncrawl": "0.0.0",
|
|
101
|
+
"@ainyc/canonry-integration-google-places": "0.0.0",
|
|
102
102
|
"@ainyc/canonry-integration-google-business-profile": "0.0.0",
|
|
103
|
-
"@ainyc/canonry-integration-openai-ads": "0.0.0",
|
|
104
103
|
"@ainyc/canonry-integration-traffic": "0.0.0",
|
|
105
104
|
"@ainyc/canonry-integration-wordpress": "0.0.0",
|
|
106
|
-
"@ainyc/canonry-
|
|
107
|
-
"@ainyc/canonry-integration-google-places": "0.0.0",
|
|
105
|
+
"@ainyc/canonry-integration-google-tag-manager": "0.0.0",
|
|
108
106
|
"@ainyc/canonry-provider-cdp": "0.0.0",
|
|
107
|
+
"@ainyc/canonry-intelligence": "0.0.0",
|
|
109
108
|
"@ainyc/canonry-provider-gemini": "0.0.0",
|
|
110
|
-
"@ainyc/canonry-provider-claude": "0.0.0",
|
|
111
109
|
"@ainyc/canonry-provider-local": "0.0.0",
|
|
112
|
-
"@ainyc/canonry-provider-
|
|
110
|
+
"@ainyc/canonry-provider-claude": "0.0.0",
|
|
113
111
|
"@ainyc/canonry-provider-muse": "0.0.0",
|
|
112
|
+
"@ainyc/canonry-provider-openai": "0.0.0",
|
|
114
113
|
"@ainyc/canonry-provider-perplexity": "0.0.0",
|
|
114
|
+
"@ainyc/canonry-integration-openai-ads": "0.0.0",
|
|
115
115
|
"@ainyc/canonry-integration-typesafe": "0.0.0"
|
|
116
116
|
},
|
|
117
117
|
"scripts": {
|