@aexol/spectral 0.9.211 → 0.9.215

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.
Files changed (115) hide show
  1. package/dist/agent/agents.d.ts.map +1 -1
  2. package/dist/agent/agents.js +40 -0
  3. package/dist/backend/generated-images.d.ts +90 -0
  4. package/dist/backend/generated-images.d.ts.map +1 -0
  5. package/dist/backend/generated-images.js +214 -0
  6. package/dist/backend/machine-routing.d.ts +25 -0
  7. package/dist/backend/machine-routing.d.ts.map +1 -0
  8. package/dist/backend/machine-routing.js +35 -0
  9. package/dist/commands/serve.d.ts.map +1 -1
  10. package/dist/commands/serve.js +31 -6
  11. package/dist/extensions/browser/browser-service.d.ts +75 -1
  12. package/dist/extensions/browser/browser-service.d.ts.map +1 -1
  13. package/dist/extensions/browser/browser-service.js +600 -34
  14. package/dist/extensions/browser/index.d.ts +10 -4
  15. package/dist/extensions/browser/index.d.ts.map +1 -1
  16. package/dist/extensions/browser/index.js +44 -5
  17. package/dist/extensions/browser/stream/stream-tool.d.ts +10 -0
  18. package/dist/extensions/browser/stream/stream-tool.d.ts.map +1 -1
  19. package/dist/extensions/browser/stream/stream-tool.js +42 -14
  20. package/dist/extensions/browser/tools/core.d.ts.map +1 -1
  21. package/dist/extensions/browser/tools/core.js +63 -2
  22. package/dist/extensions/desktop-control/index.d.ts +55 -0
  23. package/dist/extensions/desktop-control/index.d.ts.map +1 -0
  24. package/dist/extensions/desktop-control/index.js +633 -0
  25. package/dist/extensions/desktop-control/keys.d.ts +33 -0
  26. package/dist/extensions/desktop-control/keys.d.ts.map +1 -0
  27. package/dist/extensions/desktop-control/keys.js +170 -0
  28. package/dist/extensions/desktop-control/linux.d.ts +26 -0
  29. package/dist/extensions/desktop-control/linux.d.ts.map +1 -0
  30. package/dist/extensions/desktop-control/linux.js +195 -0
  31. package/dist/extensions/desktop-control/macos.d.ts +53 -0
  32. package/dist/extensions/desktop-control/macos.d.ts.map +1 -0
  33. package/dist/extensions/desktop-control/macos.js +382 -0
  34. package/dist/extensions/desktop-control/safety.d.ts +89 -0
  35. package/dist/extensions/desktop-control/safety.d.ts.map +1 -0
  36. package/dist/extensions/desktop-control/safety.js +157 -0
  37. package/dist/extensions/desktop-control/types.d.ts +79 -0
  38. package/dist/extensions/desktop-control/types.d.ts.map +1 -0
  39. package/dist/extensions/desktop-control/types.js +10 -0
  40. package/dist/extensions/desktop-control/windows.d.ts +31 -0
  41. package/dist/extensions/desktop-control/windows.d.ts.map +1 -0
  42. package/dist/extensions/desktop-control/windows.js +276 -0
  43. package/dist/extensions/desktop-screenshot/index.d.ts +103 -0
  44. package/dist/extensions/desktop-screenshot/index.d.ts.map +1 -1
  45. package/dist/extensions/desktop-screenshot/index.js +363 -17
  46. package/dist/extensions/image-generation/index.d.ts.map +1 -1
  47. package/dist/extensions/image-generation/index.js +133 -34
  48. package/dist/extensions/seo/index.d.ts.map +1 -1
  49. package/dist/extensions/seo/index.js +4 -0
  50. package/dist/extensions/seo/tools/backend-bridge.d.ts +4 -0
  51. package/dist/extensions/seo/tools/backend-bridge.d.ts.map +1 -0
  52. package/dist/extensions/seo/tools/backend-bridge.js +378 -0
  53. package/dist/extensions/seo/tools/full-audit.d.ts +2 -0
  54. package/dist/extensions/seo/tools/full-audit.d.ts.map +1 -1
  55. package/dist/extensions/seo/tools/full-audit.js +1 -1
  56. package/dist/extensions/seo/tools/report.d.ts +10 -0
  57. package/dist/extensions/seo/tools/report.d.ts.map +1 -1
  58. package/dist/extensions/seo/tools/report.js +1 -1
  59. package/dist/extensions/spectral-vision-fallback.d.ts.map +1 -1
  60. package/dist/extensions/spectral-vision-fallback.js +11 -1
  61. package/dist/generated/zeus/const.d.ts.map +1 -1
  62. package/dist/generated/zeus/const.js +148 -4
  63. package/dist/generated/zeus/index.d.ts +649 -0
  64. package/dist/generated/zeus/index.d.ts.map +1 -1
  65. package/dist/mcp/tool-registrar.d.ts.map +1 -1
  66. package/dist/mcp/tool-registrar.js +5 -2
  67. package/dist/mcp/types.d.ts +5 -0
  68. package/dist/mcp/types.d.ts.map +1 -1
  69. package/dist/relay/client.d.ts +11 -0
  70. package/dist/relay/client.d.ts.map +1 -1
  71. package/dist/relay/client.js +24 -6
  72. package/dist/relay/dispatcher.d.ts +12 -1
  73. package/dist/relay/dispatcher.d.ts.map +1 -1
  74. package/dist/relay/dispatcher.js +44 -42
  75. package/dist/sdk/ai/providers/faux.js +1 -1
  76. package/dist/sdk/ai/providers/openai-completions.d.ts.map +1 -1
  77. package/dist/sdk/ai/providers/openai-completions.js +57 -16
  78. package/dist/sdk/ai/providers/openrouter-images.d.ts.map +1 -1
  79. package/dist/sdk/ai/providers/openrouter-images.js +45 -9
  80. package/dist/sdk/ai/providers/simple-options.d.ts.map +1 -1
  81. package/dist/sdk/ai/providers/simple-options.js +2 -0
  82. package/dist/sdk/ai/types.d.ts +37 -1
  83. package/dist/sdk/ai/types.d.ts.map +1 -1
  84. package/dist/sdk/ai/utils/image-source.d.ts +121 -0
  85. package/dist/sdk/ai/utils/image-source.d.ts.map +1 -0
  86. package/dist/sdk/ai/utils/image-source.js +410 -0
  87. package/dist/sdk/coding-agent/core/extensions/native-extensions.d.ts.map +1 -1
  88. package/dist/sdk/coding-agent/core/extensions/native-extensions.js +14 -0
  89. package/dist/sdk/coding-agent/core/extensions/types.d.ts +9 -0
  90. package/dist/sdk/coding-agent/core/extensions/types.d.ts.map +1 -1
  91. package/dist/sdk/coding-agent/core/system-prompt.d.ts.map +1 -1
  92. package/dist/sdk/coding-agent/core/system-prompt.js +15 -9
  93. package/dist/sdk/coding-agent/modes/rpc/rpc-mode.d.ts.map +1 -1
  94. package/dist/sdk/coding-agent/modes/rpc/rpc-mode.js +16 -3
  95. package/dist/sdk/coding-agent/utils/image-resize.d.ts.map +1 -1
  96. package/dist/sdk/coding-agent/utils/image-resize.js +7 -3
  97. package/dist/server/agent-bridge.d.ts +14 -0
  98. package/dist/server/agent-bridge.d.ts.map +1 -1
  99. package/dist/server/agent-bridge.js +105 -26
  100. package/dist/server/handlers/queue.d.ts.map +1 -1
  101. package/dist/server/handlers/queue.js +11 -34
  102. package/dist/server/image-attachments.d.ts +109 -0
  103. package/dist/server/image-attachments.d.ts.map +1 -0
  104. package/dist/server/image-attachments.js +195 -0
  105. package/dist/server/session-stream.d.ts +69 -0
  106. package/dist/server/session-stream.d.ts.map +1 -1
  107. package/dist/server/session-stream.js +388 -32
  108. package/dist/server/storage.d.ts.map +1 -1
  109. package/dist/server/storage.js +10 -31
  110. package/dist/server/ui/terminal-confirm.d.ts +145 -0
  111. package/dist/server/ui/terminal-confirm.d.ts.map +1 -0
  112. package/dist/server/ui/terminal-confirm.js +333 -0
  113. package/dist/server/wire.d.ts +30 -5
  114. package/dist/server/wire.d.ts.map +1 -1
  115. package/package.json +1 -1
@@ -1,4 +1,14 @@
1
1
  import type { ExtensionAPI } from "../../../sdk/coding-agent/index.js";
2
2
  import type { SeoConfig } from "../config.js";
3
+ import type { FullAuditResult, PerformanceResult, PageWeightResult, RenderBlockingResult, FontAuditResult } from "../types.js";
4
+ /** Extended audit result that includes Phase 3B fields not yet on FullAuditResult. */
5
+ type AuditableResult = FullAuditResult & {
6
+ performance?: PerformanceResult;
7
+ pageWeight?: PageWeightResult;
8
+ renderBlocking?: RenderBlockingResult;
9
+ fontAudit?: FontAuditResult;
10
+ };
3
11
  export declare function registerReportTools(ext: ExtensionAPI, config: SeoConfig): void;
12
+ export declare function generateMarkdownReport(audit: AuditableResult | AuditableResult[], config: SeoConfig): string;
13
+ export {};
4
14
  //# sourceMappingURL=report.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../../src/extensions/seo/tools/report.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,oCAAoC,CAAC;AACvF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAqB9C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAgH9E"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../../src/extensions/seo/tools/report.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,oCAAoC,CAAC;AACvF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EAIhB,MAAM,aAAa,CAAC;AAGrB,sFAAsF;AACtF,KAAK,eAAe,GAAG,eAAe,GAAG;IACvC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAgH9E;AAMD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,EAAE,EAAE,MAAM,EAAE,SAAS,GAAG,MAAM,CAyU5G"}
@@ -108,7 +108,7 @@ export function registerReportTools(ext, config) {
108
108
  // ---------------------------------------------------------------------------
109
109
  // Report generators
110
110
  // ---------------------------------------------------------------------------
111
- function generateMarkdownReport(audit, config) {
111
+ export function generateMarkdownReport(audit, config) {
112
112
  if (Array.isArray(audit)) {
113
113
  return generateBatchMarkdownReport(audit, config);
114
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spectral-vision-fallback.d.ts","sourceRoot":"","sources":["../../src/extensions/spectral-vision-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAiYjE,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CA2EvE"}
1
+ {"version":3,"file":"spectral-vision-fallback.d.ts","sourceRoot":"","sources":["../../src/extensions/spectral-vision-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AA0YjE,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CA2EvE"}
@@ -130,9 +130,19 @@ function imageMessageCacheKey(msg) {
130
130
  .map((c) => String(c.text))
131
131
  .join("\n")
132
132
  .slice(0, 1000);
133
+ // A hosted attachment has no base64 to hash — fall back to the url (plus
134
+ // image id) so two different screenshots never share a cache entry. Local
135
+ // urls are inlined by `resolveImageForProvider` at send time; the url is
136
+ // still the only stable identity available here.
133
137
  const images = content
134
138
  .filter((c) => c.type === "image")
135
- .map((c) => `${c.mimeType ?? "image"}:${String(c.data ?? "").length}:${String(c.data ?? "").slice(0, 64)}`)
139
+ .map((c) => {
140
+ const data = String(c.data ?? "");
141
+ if (data)
142
+ return `${c.mimeType ?? "image"}:${data.length}:${data.slice(0, 64)}`;
143
+ const ref = String(c.url ?? c.imageId ?? "");
144
+ return `${c.mimeType ?? "image"}:url:${ref.slice(0, 128)}`;
145
+ })
136
146
  .join("|");
137
147
  return `${msg.role}:${msg.timestamp ?? "no-ts"}:${text}:${images}`;
138
148
  }
@@ -1 +1 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../src/generated/zeus/const.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAC,GAAG,CAmyB5C,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAC,GAAG,CAmmC1C,CAAA;AAED,eAAO,MAAM,GAAG;;;;CAIf,CAAA"}
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../src/generated/zeus/const.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAC,GAAG,CAm2B5C,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAC,GAAG,CAqtC1C,CAAA;AAED,eAAO,MAAM,GAAG;;;;CAIf,CAAA"}
@@ -194,6 +194,9 @@ export const AllTypesProps = {
194
194
  adminBillingPlanCount: {},
195
195
  adminCreditPacks: {},
196
196
  adminCreditPackCount: {},
197
+ adminTeamPayments: {},
198
+ adminTeamPaymentCount: {},
199
+ adminCreditGrants: {},
197
200
  adminLeads: {
198
201
  status: "LeadStatus",
199
202
  leadType: "LeadType",
@@ -222,7 +225,17 @@ export const AllTypesProps = {
222
225
  syntheticDataset: {},
223
226
  fineTuneJobs: {},
224
227
  fineTuneJob: {},
225
- dedicatedUsage: {}
228
+ dedicatedUsage: {},
229
+ seoSearchAnalytics: {
230
+ input: "SeoSearchAnalyticsInput"
231
+ },
232
+ seoUrlInspection: {},
233
+ seoUrlInspectionsBatch: {},
234
+ seoSitemaps: {},
235
+ seoIndexationStatus: {},
236
+ seoIndexationReport: {},
237
+ seoAuditTasks: {},
238
+ seoAuditTask: {}
226
239
  },
227
240
  Mutation: {
228
241
  register: {
@@ -458,7 +471,20 @@ export const AllTypesProps = {
458
471
  refreshAccount: {},
459
472
  createTeamModelConnection: {},
460
473
  updateTeamModelConnection: {},
461
- deleteTeamModelConnection: {}
474
+ deleteTeamModelConnection: {},
475
+ seoSubmitSitemap: {},
476
+ seoRequestIndexing: {},
477
+ seoRequestIndexingBatch: {},
478
+ seoStartAudit: {},
479
+ seoStartAuditProcessing: {},
480
+ seoRetryAudit: {},
481
+ seoCompleteAudit: {
482
+ result: "JSON"
483
+ },
484
+ seoFailAudit: {},
485
+ seoRecordAudit: {
486
+ result: "JSON"
487
+ }
462
488
  },
463
489
  Subscription: {
464
490
  inferenceProgress: {},
@@ -503,6 +529,10 @@ export const AllTypesProps = {
503
529
  BaseModelCreateInput: {
504
530
  capabilities: "JSON"
505
531
  },
532
+ SeoSearchAnalyticsInput: {
533
+ startDate: "DateTime",
534
+ endDate: "DateTime"
535
+ },
506
536
  ID: `scalar.ID`
507
537
  };
508
538
  export const ReturnTypes = {
@@ -677,6 +707,14 @@ export const ReturnTypes = {
677
707
  usage: "TokenUsage",
678
708
  taskCount: "Int"
679
709
  },
710
+ DailyUsageByUserEntry: {
711
+ date: "DateTime",
712
+ userId: "ID",
713
+ userEmail: "String",
714
+ userName: "String",
715
+ usage: "TokenUsage",
716
+ taskCount: "Int"
717
+ },
680
718
  ProjectBreakdownEntry: {
681
719
  project: "Project",
682
720
  usage: "TokenUsage",
@@ -1113,6 +1151,9 @@ export const ReturnTypes = {
1113
1151
  adminBillingPlanCount: "Int",
1114
1152
  adminCreditPacks: "AdminCreditPack",
1115
1153
  adminCreditPackCount: "Int",
1154
+ adminTeamPayments: "AdminTeamPayment",
1155
+ adminTeamPaymentCount: "Int",
1156
+ adminCreditGrants: "CreditGrant",
1116
1157
  adminLeads: "Lead",
1117
1158
  adminLeadCount: "Int",
1118
1159
  adminLead: "Lead",
@@ -1126,7 +1167,17 @@ export const ReturnTypes = {
1126
1167
  fineTuneJob: "FineTuneJob",
1127
1168
  dedicatedHardwareOptions: "DedicatedHardware",
1128
1169
  dedicatedUsage: "DedicatedUsageSummary",
1129
- latestSpectralRelease: "SpectralRelease"
1170
+ latestSpectralRelease: "SpectralRelease",
1171
+ seoSearchAnalytics: "SeoSearchAnalytics",
1172
+ seoUrlInspection: "SeoUrlInspection",
1173
+ seoUrlInspectionsBatch: "SeoUrlInspection",
1174
+ seoSitemaps: "SeoSitemapInfo",
1175
+ seoIndexationStatus: "JSON",
1176
+ seoIndexationReport: "JSON",
1177
+ seoConnectionStatus: "SeoConnectionStatus",
1178
+ seoListProperties: "GscProperty",
1179
+ seoAuditTasks: "SeoAuditTask",
1180
+ seoAuditTask: "SeoAuditTask"
1130
1181
  },
1131
1182
  Mutation: {
1132
1183
  register: "AuthPayload",
@@ -1254,7 +1305,17 @@ export const ReturnTypes = {
1254
1305
  refreshAccount: "ConnectedAccount",
1255
1306
  createTeamModelConnection: "TeamModelConnection",
1256
1307
  updateTeamModelConnection: "TeamModelConnection",
1257
- deleteTeamModelConnection: "Boolean"
1308
+ deleteTeamModelConnection: "Boolean",
1309
+ seoSubmitSitemap: "Boolean",
1310
+ seoRequestIndexing: "JSON",
1311
+ seoRequestIndexingBatch: "JSON",
1312
+ seoDisconnectGsc: "Boolean",
1313
+ seoStartAudit: "SeoAuditTask",
1314
+ seoStartAuditProcessing: "SeoAuditTask",
1315
+ seoRetryAudit: "SeoAuditTask",
1316
+ seoCompleteAudit: "SeoAuditTask",
1317
+ seoFailAudit: "SeoAuditTask",
1318
+ seoRecordAudit: "SeoAuditTask"
1258
1319
  },
1259
1320
  Subscription: {
1260
1321
  usageUpdated: "UsageUpdate",
@@ -1513,6 +1574,32 @@ export const ReturnTypes = {
1513
1574
  costUsd: "Float",
1514
1575
  dailyBreakdown: "DailyUsageEntry",
1515
1576
  dailyBreakdownByModel: "DailyUsageByModelEntry",
1577
+ dailyBreakdownByUser: "DailyUsageByUserEntry",
1578
+ createdAt: "DateTime"
1579
+ },
1580
+ AdminTeamPayment: {
1581
+ id: "ID",
1582
+ description: "String",
1583
+ amountPaid: "Float",
1584
+ currency: "String",
1585
+ credits: "Float",
1586
+ status: "String",
1587
+ stripeCheckoutSessionId: "String",
1588
+ stripePaymentIntentId: "String",
1589
+ stripeInvoiceId: "String",
1590
+ createdAt: "DateTime",
1591
+ completedAt: "DateTime",
1592
+ expiresAt: "DateTime"
1593
+ },
1594
+ CreditGrant: {
1595
+ id: "ID",
1596
+ teamId: "ID",
1597
+ source: "String",
1598
+ amount: "Float",
1599
+ balanceAfter: "Float",
1600
+ planId: "String",
1601
+ actorUserId: "String",
1602
+ note: "String",
1516
1603
  createdAt: "DateTime"
1517
1604
  },
1518
1605
  AdminDashboardStats: {
@@ -1627,6 +1714,63 @@ export const ReturnTypes = {
1627
1714
  tagName: "String",
1628
1715
  assets: "ReleaseAsset"
1629
1716
  },
1717
+ SeoSearchAnalyticsRow: {
1718
+ keys: "String",
1719
+ clicks: "Int",
1720
+ impressions: "Int",
1721
+ ctr: "Float",
1722
+ position: "Float"
1723
+ },
1724
+ SeoSearchAnalytics: {
1725
+ rows: "SeoSearchAnalyticsRow",
1726
+ totalClicks: "Int",
1727
+ totalImpressions: "Int",
1728
+ averageCtr: "Float",
1729
+ averagePosition: "Float"
1730
+ },
1731
+ SeoUrlInspection: {
1732
+ inspectionUrl: "String",
1733
+ indexStatusResult: "String",
1734
+ coverageState: "String",
1735
+ robotsTxtState: "String",
1736
+ sitemap: "String",
1737
+ lastCrawlTime: "DateTime",
1738
+ googleCanonical: "String",
1739
+ userCanonical: "String",
1740
+ verdict: "String"
1741
+ },
1742
+ SeoSitemapInfo: {
1743
+ path: "String",
1744
+ lastSubmitted: "DateTime",
1745
+ lastDownloaded: "DateTime",
1746
+ status: "String",
1747
+ errors: "String",
1748
+ warnings: "String",
1749
+ indexed: "String",
1750
+ submitted: "String"
1751
+ },
1752
+ SeoConnectionStatus: {
1753
+ connected: "Boolean",
1754
+ accountEmail: "String",
1755
+ propertyUrl: "String",
1756
+ createdAt: "DateTime"
1757
+ },
1758
+ GscProperty: {
1759
+ siteUrl: "String",
1760
+ permissionLevel: "String"
1761
+ },
1762
+ SeoAuditTask: {
1763
+ id: "ID",
1764
+ url: "String",
1765
+ status: "String",
1766
+ score: "Int",
1767
+ summary: "String",
1768
+ result: "JSON",
1769
+ report: "String",
1770
+ error: "String",
1771
+ createdAt: "DateTime",
1772
+ completedAt: "DateTime"
1773
+ },
1630
1774
  ID: `scalar.ID`
1631
1775
  };
1632
1776
  export const Ops = {