@canonry/canonry 7.58.5 → 7.60.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/agent-workspace/skills/aero/SKILL.md +2 -1
- package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +48 -4
- package/assets/agent-workspace/skills/canonry/references/server-side-traffic.md +34 -0
- package/assets/assets/{AgentSetupPage-CoD9a386.js → AgentSetupPage-xAe2RSTQ.js} +1 -1
- package/assets/assets/{AuditHistoryPanel-DSUKF9GC.js → AuditHistoryPanel-DRGMxc1o.js} +1 -1
- package/assets/assets/{BacklinksPage-DIZy0NkW.js → BacklinksPage-OS6r_MtQ.js} +1 -1
- package/assets/assets/{HistoryPage-B2Xtxu5L.js → HistoryPage-RDxUN7rD.js} +1 -1
- package/assets/assets/{MeasurementPropertyPage-BZmvjMiS.js → MeasurementPropertyPage-BVAmJBKa.js} +1 -1
- package/assets/assets/{ProjectPage-DMIoYBCF.js → ProjectPage-BWY9eFFx.js} +1 -1
- package/assets/assets/{RunsPage-DtvesLu2.js → RunsPage-Fb7IM6iV.js} +1 -1
- package/assets/assets/{SettingsPage-BjE3d5Ae.js → SettingsPage-Dz_agQCf.js} +1 -1
- package/assets/assets/{SiteHealthSection-D6RLbM2o.js → SiteHealthSection-TXp2Cszl.js} +2 -2
- package/assets/assets/ToneBadge-DZzQvXs_.js +60 -0
- package/assets/assets/{TrafficPage-CHZlfMgd.js → TrafficPage-BKfgooKl.js} +1 -1
- package/assets/assets/{TrafficSourceDetailPage-Dp7AYvRP.js → TrafficSourceDetailPage-C1HM_4Mh.js} +1 -1
- package/assets/assets/{account-context-DHWaWJSr.js → account-context-sj3dKq-a.js} +1 -1
- package/assets/assets/{card-im88-x1b.js → card-DKV0mNmm.js} +1 -1
- package/assets/assets/{extract-error-message-Bq8oNvfF.js → extract-error-message-Tfdo6vAJ.js} +1 -1
- package/assets/assets/{format-helpers-DOEct2q8.js → format-helpers-BagbvnfZ.js} +1 -1
- package/assets/assets/{index-CgAMnZFS.js → index-7G0DHKIO.js} +4 -4
- package/assets/assets/{query-client-BN_-qp71.js → query-client-7P_Wczfa.js} +1 -1
- package/assets/assets/{react-query-P6OZ-MPl.js → react-query-agN8P-yg.js} +1 -1
- package/assets/assets/{react-sigma_core.esm.min-TGwpCHs4.js → react-sigma_core.esm.min-CHz1PIYq.js} +1 -1
- package/assets/assets/{service-CUJkePNp.js → service-CAV4dMit.js} +1 -1
- package/assets/index.html +7 -7
- package/dist/{ads-BMBXQB67.js → ads-A42JBQ5Q.js} +3 -3
- package/dist/{agent-S6CU36RL.js → agent-ZKKHPMOB.js} +7 -7
- package/dist/{agent-ask-XG7WQBX6.js → agent-ask-SMV76QZM.js} +3 -3
- package/dist/{agent-conversations-C4QBZAPC.js → agent-conversations-O5QA3MHR.js} +3 -3
- package/dist/{agent-memory-I7UJ7MKH.js → agent-memory-ZRJQ6SZU.js} +3 -3
- package/dist/{agent-providers-YHRIYJDT.js → agent-providers-EOXIPRXN.js} +3 -3
- package/dist/{agent-transcript-2WICUOEW.js → agent-transcript-4TB2VI5E.js} +3 -3
- package/dist/{analytics-Y5AGSYWD.js → analytics-KSHS32RJ.js} +3 -3
- package/dist/{apply-DLVLMU3O.js → apply-4ZZMONED.js} +3 -3
- package/dist/{backfill-SINDWLD3.js → backfill-DJIIN5ZR.js} +9 -9
- package/dist/{backlinks-TEZTPNZ5.js → backlinks-XIAPORR5.js} +3 -3
- package/dist/{bing-IIA5HLND.js → bing-QDZXI334.js} +3 -3
- package/dist/{bootstrap-AKGA3BJI.js → bootstrap-7RAGKHJZ.js} +10 -10
- package/dist/{cdp-WWOFWFYU.js → cdp-3OX3WGWN.js} +7 -7
- package/dist/{chunk-4P7NK7XM.js → chunk-2IBFY7KQ.js} +2 -2
- package/dist/{chunk-SCS7R2ND.js → chunk-3JV3PWNA.js} +128 -1
- package/dist/{chunk-QEJBAPDP.js → chunk-4IV4FO3O.js} +2616 -2055
- package/dist/{chunk-27SGL3DF.js → chunk-66C7YITH.js} +1 -1
- package/dist/{chunk-TH3NNUJW.js → chunk-7HZ7KRHT.js} +5 -1
- package/dist/{chunk-O6TF6TPM.js → chunk-7KEIZ5OO.js} +8 -8
- package/dist/{chunk-YJPQBJZO.js → chunk-7XSGAPN5.js} +48 -3
- package/dist/{chunk-NWYNTYPD.js → chunk-ADY24WBX.js} +4 -4
- package/dist/{chunk-N2HCXIQ3.js → chunk-D7ZU5LMK.js} +1 -1
- package/dist/{chunk-BP5OKJIC.js → chunk-DUYENNUI.js} +2 -2
- package/dist/{chunk-52NCZIAC.js → chunk-FCPIOH6P.js} +1 -1
- package/dist/{chunk-CYVQW32W.js → chunk-FKQPVB5B.js} +21 -20
- package/dist/{chunk-IFVTHGXG.js → chunk-G7VJEPDZ.js} +2 -2
- package/dist/{chunk-U65LWABS.js → chunk-GLFE3Q3C.js} +7 -3
- package/dist/{chunk-QSPLYPVA.js → chunk-HGBIJIVM.js} +1 -1
- package/dist/{chunk-WLIGKWVB.js → chunk-HV5MGQYI.js} +3 -3
- package/dist/{chunk-4UGM5YV4.js → chunk-I32IFAB3.js} +3 -3
- package/dist/{chunk-G34BVUMF.js → chunk-IDPAYZHR.js} +1 -1
- package/dist/{chunk-Y7NX6EIK.js → chunk-JDL4QAPT.js} +2666 -2407
- package/dist/{chunk-5D4RL23M.js → chunk-L7WQTD3D.js} +5 -5
- package/dist/{chunk-6IBLGQVZ.js → chunk-NQTUPEBQ.js} +1 -1
- package/dist/{chunk-Q4J3XSWE.js → chunk-O7KIDW4H.js} +347 -10
- package/dist/{chunk-A5F5E4DL.js → chunk-OA6N3BI7.js} +4 -4
- package/dist/{chunk-3U7LL3JM.js → chunk-QCSNNKFI.js} +1 -1
- package/dist/{chunk-TVANRUBO.js → chunk-QEG7BSLH.js} +8 -1
- package/dist/{chunk-AP7YSOFC.js → chunk-QRC6SDPF.js} +417 -331
- package/dist/{chunk-65YQFVJM.js → chunk-RLXNZRHD.js} +5 -5
- package/dist/{chunk-F6W7FCS2.js → chunk-SJNF5GN2.js} +26 -2
- package/dist/{chunk-JGRUCEL4.js → chunk-TLNHDCJF.js} +2 -2
- package/dist/{chunk-L7TKNHEX.js → chunk-UHE4RLFW.js} +1 -1
- package/dist/{chunk-YDSY5YJE.js → chunk-XJF7LMGU.js} +4 -4
- package/dist/{chunk-ZYL3LCDZ.js → chunk-Z63ZR6AD.js} +1 -1
- package/dist/{chunk-KWXARGCT.js → chunk-Z7WG6F7Q.js} +3 -3
- package/dist/{chunk-4TM4NXQR.js → chunk-ZK5WIVGA.js} +2 -2
- package/dist/{citations-4LVBHTDX.js → citations-L3HFNQVU.js} +3 -3
- package/dist/{cli-catalog-PJYR3JHX.js → cli-catalog-DJPRREDK.js} +3 -3
- package/dist/{cli-commands-ZPW3OST3.js → cli-commands-4KG4X76Z.js} +7 -7
- package/dist/cli.js +14 -14
- package/dist/{competitor-T7UXAW4F.js → competitor-Q5LZ26U5.js} +3 -3
- package/dist/{content-DFYYGGPI.js → content-WRVFNQSO.js} +3 -3
- package/dist/{dashboard-VT3GQRW4.js → dashboard-GBP2T2AG.js} +6 -6
- package/dist/{demo-ZBNVULOO.js → demo-JMLMPLJ6.js} +1 -1
- package/dist/{demo-server-QUW4TDJL.js → demo-server-AOVPBGZ7.js} +11 -11
- package/dist/{discover-QTC5OBQG.js → discover-SKUNZE4Y.js} +3 -3
- package/dist/{discover-eval-QQZGUPR6.js → discover-eval-57BEDSQN.js} +3 -3
- package/dist/{doctor-VHFDL5MH.js → doctor-DMLJGH6G.js} +3 -3
- package/dist/{evidence-4PRFOC2I.js → evidence-J4XF4W7O.js} +3 -3
- package/dist/{export-cmd-BQE7BPKZ.js → export-cmd-3JXT2YAP.js} +3 -3
- package/dist/{ga-ULY5XDBK.js → ga-KHILAPMC.js} +3 -3
- package/dist/{gbp-4WHNZAFY.js → gbp-PHOFQZNT.js} +3 -3
- package/dist/{google-O4IVWLSG.js → google-QOLM2NBI.js} +4 -4
- package/dist/{google-marketing-DCQDTDDG.js → google-marketing-N37WUWNL.js} +1 -1
- package/dist/{health-cmd-I2JTACS7.js → health-cmd-2FUEPUJZ.js} +3 -3
- package/dist/{history-LUPHO3P3.js → history-MOSRCLAD.js} +3 -3
- package/dist/index.d.ts +818 -64
- package/dist/index.js +24 -24
- package/dist/{init-C2DLDK6T.js → init-V6ER2PJV.js} +11 -11
- package/dist/{insights-GC2W45U4.js → insights-F3MT66IV.js} +3 -3
- package/dist/intelligence-service-S5DI74LD.js +15 -0
- package/dist/journeys-DNS3EZNK.js +122 -0
- package/dist/{keys-DXQBSOBI.js → keys-NPOLKCWZ.js} +3 -3
- package/dist/{keyword-2DCR2QCJ.js → keyword-AXEPIJQ7.js} +3 -3
- package/dist/{logs-H45QFIEB.js → logs-ECEDVUTX.js} +3 -3
- package/dist/{mcp-NXXP6M3C.js → mcp-HUIRIY74.js} +2 -2
- package/dist/mcp.js +9 -9
- package/dist/{measurement-plan-IG4JUKKW.js → measurement-plan-5Y2IHH43.js} +5 -5
- package/dist/{notify-BLLWXMBB.js → notify-PIFCJ7WM.js} +3 -3
- package/dist/{organic-evidence-73K7W7SB.js → organic-evidence-S2IE5XV6.js} +3 -3
- package/dist/{overview-4TAULPUG.js → overview-TZT7C4U4.js} +4 -4
- package/dist/{project-ANX4JTWS.js → project-HIY673Y5.js} +3 -3
- package/dist/{query-U3MFTLGR.js → query-FUJIMFJQ.js} +3 -3
- package/dist/{research-3YZ6QI67.js → research-ECGEXWID.js} +3 -3
- package/dist/{results-export-72OVLKSC.js → results-export-7DRGFNUX.js} +3 -3
- package/dist/{run-SI6IL4FC.js → run-4JEDD5VT.js} +4 -4
- package/dist/{schedule-FYEHU2VH.js → schedule-NRHQXHTW.js} +3 -3
- package/dist/{search-MXDT3DQE.js → search-M7PNZZZL.js} +3 -3
- package/dist/{serve-ME2KJ6BG.js → serve-RXLQEALQ.js} +56 -27
- package/dist/{session-R3PRJ3RB.js → session-MCSZQR5V.js} +12 -12
- package/dist/{settings-ZGS26QOP.js → settings-JXOYI7VV.js} +3 -3
- package/dist/{skills-ZMMCKKSA.js → skills-SRUXD2PV.js} +2 -2
- package/dist/{snapshot-5AGGUQKE.js → snapshot-7N4BEGGM.js} +3 -3
- package/dist/{src-AIM5FPLZ.js → src-ZAAE3NIM.js} +8 -2
- package/dist/{status-HVQI4E5X.js → status-5OYYSMAY.js} +4 -4
- package/dist/{technical-aeo-S4OFCURE.js → technical-aeo-464OUUWT.js} +3 -3
- package/dist/{telemetry-SPSC5MUN.js → telemetry-BZFNXACR.js} +4 -4
- package/dist/{tools-VZVQ2CTU.js → tools-YVWC3NTG.js} +11 -11
- package/dist/{traffic-5AXVN37M.js → traffic-WXJHRB7H.js} +13 -8
- package/dist/{users-WFKSUCGV.js → users-U2UNKGDY.js} +3 -3
- package/dist/{visibility-stats-5S26GC27.js → visibility-stats-AHGME46N.js} +3 -3
- package/dist/{wordpress-IUPZC7II.js → wordpress-FUVFZKH2.js} +3 -3
- package/package.json +1 -1
- package/assets/assets/ToneBadge-DYEbxp5S.js +0 -60
- package/dist/intelligence-service-R5BRSQKI.js +0 -15
package/dist/index.js
CHANGED
|
@@ -3,38 +3,38 @@ import {
|
|
|
3
3
|
createGoogleMarketingCredentialStore,
|
|
4
4
|
createGoogleMarketingRuntime,
|
|
5
5
|
createServer
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-FKQPVB5B.js";
|
|
7
|
+
import "./chunk-FCPIOH6P.js";
|
|
8
|
+
import "./chunk-L7WQTD3D.js";
|
|
9
|
+
import "./chunk-OA6N3BI7.js";
|
|
10
10
|
import "./chunk-ELCLGWUT.js";
|
|
11
11
|
import "./chunk-XEBKF4N5.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-NQTUPEBQ.js";
|
|
13
|
+
import "./chunk-DUYENNUI.js";
|
|
14
|
+
import "./chunk-XJF7LMGU.js";
|
|
15
15
|
import "./chunk-TSENU4GG.js";
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-QCSNNKFI.js";
|
|
17
|
+
import "./chunk-G7VJEPDZ.js";
|
|
18
|
+
import "./chunk-Z7WG6F7Q.js";
|
|
19
19
|
import "./chunk-NCIPNVD6.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-SJNF5GN2.js";
|
|
21
21
|
import {
|
|
22
22
|
loadConfig
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-QEG7BSLH.js";
|
|
24
|
+
import "./chunk-IDPAYZHR.js";
|
|
25
|
+
import "./chunk-ZK5WIVGA.js";
|
|
26
|
+
import "./chunk-7XSGAPN5.js";
|
|
27
|
+
import "./chunk-HGBIJIVM.js";
|
|
28
|
+
import "./chunk-D7ZU5LMK.js";
|
|
29
29
|
import "./chunk-AOJU5LKX.js";
|
|
30
30
|
import "./chunk-HGMYEDAQ.js";
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
35
|
-
import "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-RLXNZRHD.js";
|
|
32
|
+
import "./chunk-UHE4RLFW.js";
|
|
33
|
+
import "./chunk-4IV4FO3O.js";
|
|
34
|
+
import "./chunk-O7KIDW4H.js";
|
|
35
|
+
import "./chunk-66C7YITH.js";
|
|
36
|
+
import "./chunk-3JV3PWNA.js";
|
|
37
|
+
import "./chunk-JDL4QAPT.js";
|
|
38
38
|
import "./chunk-MLKGABMK.js";
|
|
39
39
|
export {
|
|
40
40
|
GoogleMarketingRuntimeError,
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
installMcp
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-Z63ZR6AD.js";
|
|
4
4
|
import {
|
|
5
5
|
trackCliConnection
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-2IBFY7KQ.js";
|
|
7
7
|
import {
|
|
8
8
|
buildSetupState,
|
|
9
9
|
queueServeHandoff
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ADY24WBX.js";
|
|
11
11
|
import "./chunk-VJWDBFSL.js";
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-XJF7LMGU.js";
|
|
13
|
+
import "./chunk-QCSNNKFI.js";
|
|
14
14
|
import {
|
|
15
15
|
cliRuntimeContext,
|
|
16
16
|
installAttribution,
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
recordInstallRef,
|
|
19
19
|
showFirstRunNotice,
|
|
20
20
|
trackEvent
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-G7VJEPDZ.js";
|
|
22
22
|
import {
|
|
23
23
|
configExists,
|
|
24
24
|
getBootstrapEnv,
|
|
@@ -26,24 +26,24 @@ import {
|
|
|
26
26
|
getConfigPath,
|
|
27
27
|
saveConfig,
|
|
28
28
|
withBootstrapProviderDefaults
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-QEG7BSLH.js";
|
|
30
30
|
import {
|
|
31
31
|
installSkills
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-IDPAYZHR.js";
|
|
33
33
|
import "./chunk-AOJU5LKX.js";
|
|
34
34
|
import {
|
|
35
35
|
CliError,
|
|
36
36
|
isMachineFormat
|
|
37
37
|
} from "./chunk-HGMYEDAQ.js";
|
|
38
|
-
import "./chunk-
|
|
38
|
+
import "./chunk-66C7YITH.js";
|
|
39
39
|
import {
|
|
40
40
|
apiKeys,
|
|
41
41
|
createClient,
|
|
42
42
|
migrate
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-3JV3PWNA.js";
|
|
44
44
|
import {
|
|
45
45
|
describeError
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-JDL4QAPT.js";
|
|
47
47
|
import "./chunk-MLKGABMK.js";
|
|
48
48
|
|
|
49
49
|
// src/commands/init.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
|
|
|
9
9
|
import {
|
|
10
10
|
isMachineFormat
|
|
11
11
|
} from "./chunk-HGMYEDAQ.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-JDL4QAPT.js";
|
|
13
13
|
import "./chunk-MLKGABMK.js";
|
|
14
14
|
|
|
15
15
|
// src/commands/insights.ts
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
HISTORY_WINDOW_RUNS,
|
|
3
|
+
IntelligenceService
|
|
4
|
+
} from "./chunk-RLXNZRHD.js";
|
|
5
|
+
import "./chunk-UHE4RLFW.js";
|
|
6
|
+
import "./chunk-4IV4FO3O.js";
|
|
7
|
+
import "./chunk-O7KIDW4H.js";
|
|
8
|
+
import "./chunk-66C7YITH.js";
|
|
9
|
+
import "./chunk-3JV3PWNA.js";
|
|
10
|
+
import "./chunk-JDL4QAPT.js";
|
|
11
|
+
import "./chunk-MLKGABMK.js";
|
|
12
|
+
export {
|
|
13
|
+
HISTORY_WINDOW_RUNS,
|
|
14
|
+
IntelligenceService
|
|
15
|
+
};
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createApiClient
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
|
+
import {
|
|
6
|
+
emitJsonl
|
|
7
|
+
} from "./chunk-Z7IUAJOF.js";
|
|
8
|
+
import "./chunk-AOJU5LKX.js";
|
|
9
|
+
import {
|
|
10
|
+
isMachineFormat,
|
|
11
|
+
usageError
|
|
12
|
+
} from "./chunk-HGMYEDAQ.js";
|
|
13
|
+
import {
|
|
14
|
+
JOURNEY_MAX_REQUESTS_PER_VISITOR_DAY,
|
|
15
|
+
formatPercent,
|
|
16
|
+
formatValidationIssues,
|
|
17
|
+
journeyDetailQuerySchema,
|
|
18
|
+
journeySummaryQuerySchema,
|
|
19
|
+
journeysQuerySchema
|
|
20
|
+
} from "./chunk-JDL4QAPT.js";
|
|
21
|
+
import "./chunk-MLKGABMK.js";
|
|
22
|
+
|
|
23
|
+
// src/commands/journeys.ts
|
|
24
|
+
function parse(schema, input) {
|
|
25
|
+
const parsed = schema.safeParse(input);
|
|
26
|
+
if (parsed.success) return parsed.data;
|
|
27
|
+
throw usageError(formatValidationIssues(parsed.error.issues), {
|
|
28
|
+
details: { issues: parsed.error.issues.map(({ path, message }) => ({ path, message })) }
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function compact(input) {
|
|
32
|
+
return Object.fromEntries(Object.entries(input).filter(([, value]) => value !== void 0));
|
|
33
|
+
}
|
|
34
|
+
var minute = (ts) => `${ts.slice(0, 16).replace("T", " ")}Z`;
|
|
35
|
+
var day = (ts) => ts.slice(0, 10);
|
|
36
|
+
function entryLabel(visit) {
|
|
37
|
+
const name = visit.entryName && visit.entryName !== visit.entryClass ? ` ${visit.entryName}` : "";
|
|
38
|
+
return `${visit.entryClass}${name}${visit.paid && visit.entryClass !== "paid" ? " (paid)" : ""}`;
|
|
39
|
+
}
|
|
40
|
+
function printPartialSources(sources) {
|
|
41
|
+
for (const source of sources) console.log(`Partial source ${source.sourceId} (${source.sourceType}): ${source.reason}`);
|
|
42
|
+
}
|
|
43
|
+
var UA_NOTE = "Visitors keyed by user agent only (sources without an IP, such as Vercel) can merge different people on the same device and browser version.";
|
|
44
|
+
async function journeysSummary(project, opts) {
|
|
45
|
+
const query = parse(journeySummaryQuerySchema, compact({ since: opts.since, until: opts.until }));
|
|
46
|
+
const result = await createApiClient().journeysSummary(project, query);
|
|
47
|
+
if (isMachineFormat(opts.format)) {
|
|
48
|
+
console.log(JSON.stringify(result, null, 2));
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
console.log(`AI visitor journeys for "${project}", first AI visit ${day(result.windowStart)} to ${day(result.windowEnd)}`);
|
|
52
|
+
console.log(`AI visitors: ${result.aiVisitors} (IP and user agent ${result.keyBasis.ipUa}, user agent only ${result.keyBasis.ua})`);
|
|
53
|
+
console.log(`AI visits: ${result.aiVisits}`);
|
|
54
|
+
const rate = formatPercent(result.returnRate);
|
|
55
|
+
const median = result.medianDaysToReturn === null ? "" : `, median ${result.medianDaysToReturn.toFixed(1)} days to return`;
|
|
56
|
+
console.log(`Came back later: ${result.returningVisitors} (${rate})${median}`);
|
|
57
|
+
const via = Object.entries(result.returnedVia).filter(([, n]) => n > 0).sort((a, b) => b[1] - a[1]);
|
|
58
|
+
if (via.length > 0) console.log(`Later visits by entry: ${via.map(([cls, n]) => `${cls} ${n}`).join(", ")}`);
|
|
59
|
+
for (const row of result.byEngine) console.log(` ${row.engine}: ${row.visitors} visitors, ${row.returningVisitors} came back`);
|
|
60
|
+
console.log(`Visits are kept for ${result.lookbackDays} days after each AI visit. ${result.keyBasis.ua > 0 ? UA_NOTE : ""}`.trim());
|
|
61
|
+
printPartialSources(result.partialSources);
|
|
62
|
+
}
|
|
63
|
+
async function journeysList(project, opts) {
|
|
64
|
+
const query = parse(journeysQuerySchema, compact({
|
|
65
|
+
since: opts.since,
|
|
66
|
+
until: opts.until,
|
|
67
|
+
engine: opts.engine,
|
|
68
|
+
returned: opts.returned === void 0 ? void 0 : String(opts.returned),
|
|
69
|
+
limit: opts.limit,
|
|
70
|
+
offset: opts.offset
|
|
71
|
+
}));
|
|
72
|
+
const result = await createApiClient().journeysList(project, query);
|
|
73
|
+
if (isMachineFormat(opts.format)) {
|
|
74
|
+
if (opts.format === "jsonl") emitJsonl(result.visitors.map((visitor) => ({ project, windowStart: result.windowStart, windowEnd: result.windowEnd, ...visitor })));
|
|
75
|
+
else console.log(JSON.stringify(result, null, 2));
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
console.log(`AI visitors for "${project}": ${result.visitors.length} of ${result.totalVisitors}, first AI visit ${day(result.windowStart)} to ${day(result.windowEnd)}`);
|
|
79
|
+
for (const visitor of result.visitors) {
|
|
80
|
+
const back = visitor.returned ? `back via ${visitor.returnChannels.join(", ")}` : "no later visit";
|
|
81
|
+
const device = visitor.keyBasis === "ua" ? `${visitor.device} (UA only)` : visitor.device;
|
|
82
|
+
console.log([minute(visitor.firstAiAt), visitor.firstAiEngine, device, `${visitor.visitCount} visits`, back, visitor.visitorKey].join(" "));
|
|
83
|
+
}
|
|
84
|
+
if (result.offset + result.visitors.length < result.totalVisitors) {
|
|
85
|
+
console.log(`More: --offset ${result.offset + result.visitors.length}`);
|
|
86
|
+
}
|
|
87
|
+
if (result.visitors.some((visitor) => visitor.keyBasis === "ua")) console.log(UA_NOTE);
|
|
88
|
+
printPartialSources(result.partialSources);
|
|
89
|
+
}
|
|
90
|
+
async function journeyShow(project, visitorKey, opts) {
|
|
91
|
+
const query = parse(journeyDetailQuerySchema, compact({ limit: opts.limit, offset: opts.offset }));
|
|
92
|
+
const result = await createApiClient().journeyGet(project, visitorKey, query);
|
|
93
|
+
if (isMachineFormat(opts.format)) {
|
|
94
|
+
console.log(JSON.stringify(result, null, 2));
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const { visitor } = result;
|
|
98
|
+
console.log(`Visitor ${visitor.visitorKey} (${visitor.keyBasis === "ua" ? "user agent only" : "IP and user agent"})`);
|
|
99
|
+
console.log(`Device: ${visitor.device}`);
|
|
100
|
+
console.log(`User agent: ${visitor.userAgent ?? "-"}`);
|
|
101
|
+
console.log(`First AI visit: ${minute(visitor.firstAiAt)} from ${visitor.firstAiEngine}. Latest AI visit: ${minute(visitor.lastAiAt)}. Last seen: ${minute(visitor.lastSeenAt)}`);
|
|
102
|
+
for (const visit of result.visits) {
|
|
103
|
+
console.log("");
|
|
104
|
+
console.log(`${minute(visit.startedAt)} to ${minute(visit.endedAt)} ${entryLabel(visit)} lands ${visit.landingPath} ${visit.pageCount} pages, ${visit.requestCount} requests`);
|
|
105
|
+
for (const event of visit.events) {
|
|
106
|
+
console.log(` ${event.ts.slice(11, 19)} ${event.method ?? "-"} ${event.status ?? "-"} ${event.aiTouch ? "[ai] " : ""}${event.kind === "data" ? "[data] " : ""}${event.path}`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
if (visitor.cappedDays > 0) console.log(`
|
|
110
|
+
Reached the ${JOURNEY_MAX_REQUESTS_PER_VISITOR_DAY}-requests-per-day cap on ${visitor.cappedDays} day(s); requests over it were not stored.`);
|
|
111
|
+
if (result.offset + result.visits.length < result.totalVisits) {
|
|
112
|
+
console.log(`
|
|
113
|
+
Showing visits ${result.offset + 1} to ${result.offset + result.visits.length} of ${result.totalVisits}. More: --offset ${result.offset + result.visits.length}`);
|
|
114
|
+
}
|
|
115
|
+
if (visitor.keyBasis === "ua") console.log(`
|
|
116
|
+
${UA_NOTE}`);
|
|
117
|
+
}
|
|
118
|
+
export {
|
|
119
|
+
journeyShow,
|
|
120
|
+
journeysList,
|
|
121
|
+
journeysSummary
|
|
122
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
import {
|
|
14
14
|
READ_ONLY_SCOPE,
|
|
15
15
|
formatIsoDate
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-JDL4QAPT.js";
|
|
17
17
|
import "./chunk-MLKGABMK.js";
|
|
18
18
|
|
|
19
19
|
// src/commands/keys.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
CliError,
|
|
11
11
|
isMachineFormat
|
|
12
12
|
} from "./chunk-HGMYEDAQ.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-JDL4QAPT.js";
|
|
14
14
|
import "./chunk-MLKGABMK.js";
|
|
15
15
|
|
|
16
16
|
// src/commands/keyword.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import "./chunk-AOJU5LKX.js";
|
|
6
6
|
import {
|
|
7
7
|
isMachineFormat,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from "./chunk-HGMYEDAQ.js";
|
|
10
10
|
import {
|
|
11
11
|
logQuerySchema
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-JDL4QAPT.js";
|
|
13
13
|
import "./chunk-MLKGABMK.js";
|
|
14
14
|
|
|
15
15
|
// src/commands/logs.ts
|
|
@@ -2,10 +2,10 @@ import {
|
|
|
2
2
|
installMcp,
|
|
3
3
|
printMcpConfig,
|
|
4
4
|
renderClientSnippet
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-Z63ZR6AD.js";
|
|
6
6
|
import "./chunk-VJWDBFSL.js";
|
|
7
7
|
import "./chunk-HGMYEDAQ.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-JDL4QAPT.js";
|
|
9
9
|
import "./chunk-MLKGABMK.js";
|
|
10
10
|
export {
|
|
11
11
|
installMcp,
|
package/dist/mcp.js
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import {
|
|
2
2
|
autoSyncSkills
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-I32IFAB3.js";
|
|
4
4
|
import {
|
|
5
5
|
createCanonryMcpServer
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-Z7WG6F7Q.js";
|
|
7
7
|
import "./chunk-NCIPNVD6.js";
|
|
8
8
|
import {
|
|
9
9
|
createApiClient
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-SJNF5GN2.js";
|
|
11
|
+
import "./chunk-QEG7BSLH.js";
|
|
12
|
+
import "./chunk-IDPAYZHR.js";
|
|
13
|
+
import "./chunk-7XSGAPN5.js";
|
|
14
|
+
import "./chunk-HGBIJIVM.js";
|
|
15
|
+
import "./chunk-D7ZU5LMK.js";
|
|
16
16
|
import "./chunk-AOJU5LKX.js";
|
|
17
17
|
import "./chunk-HGMYEDAQ.js";
|
|
18
18
|
import {
|
|
19
19
|
isReadOnlyKey,
|
|
20
20
|
updateCheckEnvOptOut
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-JDL4QAPT.js";
|
|
22
22
|
import "./chunk-MLKGABMK.js";
|
|
23
23
|
|
|
24
24
|
// src/mcp/cli.ts
|
|
@@ -14,14 +14,14 @@ import {
|
|
|
14
14
|
showMeasurementProperty,
|
|
15
15
|
showMeasurementPropertyEvidence,
|
|
16
16
|
showMeasurementReport
|
|
17
|
-
} from "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
17
|
+
} from "./chunk-HV5MGQYI.js";
|
|
18
|
+
import "./chunk-SJNF5GN2.js";
|
|
19
|
+
import "./chunk-QEG7BSLH.js";
|
|
20
20
|
import "./chunk-Z7IUAJOF.js";
|
|
21
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-D7ZU5LMK.js";
|
|
22
22
|
import "./chunk-AOJU5LKX.js";
|
|
23
23
|
import "./chunk-HGMYEDAQ.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-JDL4QAPT.js";
|
|
25
25
|
import "./chunk-MLKGABMK.js";
|
|
26
26
|
export {
|
|
27
27
|
ADVANCED_MEASUREMENT_OPERATIONS,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-HGMYEDAQ.js";
|
|
13
13
|
import {
|
|
14
14
|
notificationEventSchema
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-JDL4QAPT.js";
|
|
16
16
|
import "./chunk-MLKGABMK.js";
|
|
17
17
|
|
|
18
18
|
// src/commands/notify.ts
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import "./chunk-AOJU5LKX.js";
|
|
6
6
|
import {
|
|
7
7
|
isMachineFormat
|
|
8
8
|
} from "./chunk-HGMYEDAQ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-JDL4QAPT.js";
|
|
10
10
|
import "./chunk-MLKGABMK.js";
|
|
11
11
|
|
|
12
12
|
// src/commands/organic-evidence.ts
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runAdmissionLines
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-TLNHDCJF.js";
|
|
4
4
|
import {
|
|
5
5
|
createApiClient
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-SJNF5GN2.js";
|
|
7
|
+
import "./chunk-QEG7BSLH.js";
|
|
8
8
|
import "./chunk-Z7IUAJOF.js";
|
|
9
9
|
import "./chunk-AOJU5LKX.js";
|
|
10
10
|
import {
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-HGMYEDAQ.js";
|
|
13
13
|
import {
|
|
14
14
|
formatPercent
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-JDL4QAPT.js";
|
|
16
16
|
import "./chunk-MLKGABMK.js";
|
|
17
17
|
|
|
18
18
|
// src/commands/overview.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
normalizeProjectDomain,
|
|
24
24
|
resolveNegativeReviewMaxStars,
|
|
25
25
|
resolveProjectQualifiedAliases
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-JDL4QAPT.js";
|
|
27
27
|
import "./chunk-MLKGABMK.js";
|
|
28
28
|
|
|
29
29
|
// src/commands/project.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-HGMYEDAQ.js";
|
|
13
13
|
import {
|
|
14
14
|
reportedQueryClasses
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-JDL4QAPT.js";
|
|
16
16
|
import "./chunk-MLKGABMK.js";
|
|
17
17
|
|
|
18
18
|
// src/commands/query.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
answerCompletionLabel,
|
|
19
19
|
answerCostBasisLabel,
|
|
20
20
|
researchBatchCreateSchema
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-JDL4QAPT.js";
|
|
22
22
|
import "./chunk-MLKGABMK.js";
|
|
23
23
|
|
|
24
24
|
// src/commands/research.ts
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import "./chunk-AOJU5LKX.js";
|
|
6
6
|
import "./chunk-HGMYEDAQ.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-JDL4QAPT.js";
|
|
8
8
|
import "./chunk-MLKGABMK.js";
|
|
9
9
|
|
|
10
10
|
// src/commands/results-export.ts
|
|
@@ -9,13 +9,13 @@ import {
|
|
|
9
9
|
showRunCompleteness,
|
|
10
10
|
triggerRun,
|
|
11
11
|
triggerRunAll
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-TLNHDCJF.js";
|
|
13
|
+
import "./chunk-SJNF5GN2.js";
|
|
14
|
+
import "./chunk-QEG7BSLH.js";
|
|
15
15
|
import "./chunk-Z7IUAJOF.js";
|
|
16
16
|
import "./chunk-AOJU5LKX.js";
|
|
17
17
|
import "./chunk-HGMYEDAQ.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-JDL4QAPT.js";
|
|
19
19
|
import "./chunk-MLKGABMK.js";
|
|
20
20
|
export {
|
|
21
21
|
cancelRun,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import {
|
|
6
6
|
emitJsonl
|
|
7
7
|
} from "./chunk-Z7IUAJOF.js";
|
|
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
|
|
|
9
9
|
import {
|
|
10
10
|
isMachineFormat
|
|
11
11
|
} from "./chunk-HGMYEDAQ.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-JDL4QAPT.js";
|
|
13
13
|
import "./chunk-MLKGABMK.js";
|
|
14
14
|
|
|
15
15
|
// src/commands/schedule.ts
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createApiClient
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-SJNF5GN2.js";
|
|
4
|
+
import "./chunk-QEG7BSLH.js";
|
|
5
5
|
import "./chunk-AOJU5LKX.js";
|
|
6
6
|
import {
|
|
7
7
|
isMachineFormat
|
|
8
8
|
} from "./chunk-HGMYEDAQ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-JDL4QAPT.js";
|
|
10
10
|
import "./chunk-MLKGABMK.js";
|
|
11
11
|
|
|
12
12
|
// src/commands/search.ts
|