@extenshi/mcp 0.4.0 → 0.5.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/dist/telemetry.js CHANGED
@@ -164,10 +164,15 @@ function sanitizeError(err) {
164
164
  }
165
165
  /**
166
166
  * The HTTP status an error carries, whichever shape it arrived in:
167
- * - `status` — MCP ScanError, thrown by ./scan.ts.
167
+ * - `status` — the MCP package's ScanError (@extenshi/mcp scan.ts).
168
168
  * - `data.httpStatus` — @trpc/client's TRPCClientError, i.e. every catalog BFF
169
- * read. tRPC puts the status inside `data` and has NO top-level `status`, so
170
- * reading only `status` left the entire read path to message heuristics.
169
+ * read on EITHER surface. tRPC puts the status inside `data` and has NO
170
+ * top-level `status`, so reading only `status` left the entire read path to
171
+ * message heuristics.
172
+ *
173
+ * Surface-neutral on purpose: this file is vendored byte-identical into both
174
+ * packages (see the header), so it must describe both. Neither branch costs the
175
+ * surface that cannot produce that shape anything — the check simply never fires.
171
176
  */
172
177
  function statusOf(err) {
173
178
  const e = err;
@@ -216,15 +221,16 @@ function classifyOne(err) {
216
221
  const MAX_CAUSE_DEPTH = 4;
217
222
  /**
218
223
  * Coarse error bucket. Driven by a numeric status when the error carries one
219
- * (ScanError `status`, tRPC `data.httpStatus`), else by message patterns (the
220
- * CLI throws plain Errors). Order matters — status first, then transport, then
221
- * semantic buckets.
224
+ * (ScanError `status`, tRPC `data.httpStatus`), else by message patterns (both
225
+ * surfaces also throw plain Errors). Order matters — status first, then
226
+ * transport, then semantic buckets.
222
227
  *
223
- * Follows the `cause` chain: the tool layer re-throws failures wrapped in a
224
- * `UserError` so fastmcp renders them for the caller (see readError() in
225
- * ./tools.ts), and that wrapper's own message can carry no status. The origin
226
- * hangs off `cause`, so an unclassifiable wrapper defers to what it wraps —
227
- * without it, a BFF 500 behind a UserError reads as `unexpected`.
228
+ * Follows the `cause` chain, because both surfaces re-throw a failure wrapped in
229
+ * an error of their own so it renders for the caller — the MCP tool layer wraps
230
+ * in fastmcp's `UserError` (readError() in its tools.ts) — and the wrapper's own
231
+ * message can carry no status. The origin hangs off `cause`, so an
232
+ * unclassifiable wrapper defers to what it wraps; without this, a BFF 500 behind
233
+ * a wrapper reads as `unexpected`.
228
234
  */
229
235
  export function classifyError(err) {
230
236
  let cur = err;
@@ -233,9 +239,12 @@ export function classifyError(err) {
233
239
  if (kind !== 'unexpected')
234
240
  return kind;
235
241
  const next = cur.cause;
236
- // An error that causes itself has no origin left to consult, which is a
237
- // different thing from running out of depth budget. MAX_CAUSE_DEPTH would
238
- // bound this anyway — stopping here just says so at the point it's true.
242
+ // Handles the DIRECT cycle only (`a.cause === a`): such an error has no
243
+ // origin left to consult, which is a different thing from running out of
244
+ // depth budget, so stopping here says so at the point it's true. A longer
245
+ // cycle (A → B → A) is not detected and is not meant to be — it terminates
246
+ // on MAX_CAUSE_DEPTH like any other over-deep chain, which is why the
247
+ // bound, not this check, is what guarantees termination.
239
248
  if (next === cur)
240
249
  break;
241
250
  cur = next;
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * The extension-type catalog, rendered for an agent building an extension.
3
+ *
4
+ * Why a tool and not documentation: an agent asked to "build a Chrome extension
5
+ * that helps fill forms" has to decide a shape before it writes a line, and the
6
+ * decision it makes badly is permissions — either padding the manifest to look
7
+ * capable, or missing the one key without which the chosen shape cannot work.
8
+ * This hands it the four shapes with their REQUIRED permissions attached, so the
9
+ * minimum is the easy path rather than the researched one.
10
+ *
11
+ * Free and keyless by construction: the catalog is compiled in, so this answers
12
+ * without touching the BFF, without an API key, and without spending a credit —
13
+ * the same reasoning as `search_docs`.
14
+ */
15
+ /** Where a developer picks the same types in the UI, so the two surfaces meet. */
16
+ export declare const MANIFEST_GENERATOR_URL = "https://dojo.extenshi.io/manifest-generator";
17
+ /**
18
+ * Render one or all templates.
19
+ *
20
+ * Combinations are described rather than enumerated: the four types compose, so
21
+ * listing every pair would be sixteen entries saying the same thing about union.
22
+ */
23
+ export declare function renderExtensionTemplates(ids?: readonly string[]): string;
24
+ //# sourceMappingURL=templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAUH,kFAAkF;AAClF,eAAO,MAAM,sBAAsB,gDAAgD,CAAA;AAMnF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAwDxE"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * The extension-type catalog, rendered for an agent building an extension.
3
+ *
4
+ * Why a tool and not documentation: an agent asked to "build a Chrome extension
5
+ * that helps fill forms" has to decide a shape before it writes a line, and the
6
+ * decision it makes badly is permissions — either padding the manifest to look
7
+ * capable, or missing the one key without which the chosen shape cannot work.
8
+ * This hands it the four shapes with their REQUIRED permissions attached, so the
9
+ * minimum is the easy path rather than the researched one.
10
+ *
11
+ * Free and keyless by construction: the catalog is compiled in, so this answers
12
+ * without touching the BFF, without an API key, and without spending a credit —
13
+ * the same reasoning as `search_docs`.
14
+ */
15
+ import { EXTENSION_BACKGROUND_PATH, EXTENSION_TEMPLATE_CATALOG, extensionTemplateFiles, extensionTemplateRequiredPermissions, isExtensionTemplateId, } from './extension-templates.js';
16
+ /** Where a developer picks the same types in the UI, so the two surfaces meet. */
17
+ export const MANIFEST_GENERATOR_URL = 'https://dojo.extenshi.io/manifest-generator';
18
+ function permissionLine(label, permissions) {
19
+ return permissions.length > 0 ? `${label}: ${permissions.join(', ')}` : `${label}: none`;
20
+ }
21
+ /**
22
+ * Render one or all templates.
23
+ *
24
+ * Combinations are described rather than enumerated: the four types compose, so
25
+ * listing every pair would be sixteen entries saying the same thing about union.
26
+ */
27
+ export function renderExtensionTemplates(ids) {
28
+ const wanted = (ids ?? []).filter(isExtensionTemplateId);
29
+ const shown = wanted.length > 0
30
+ ? EXTENSION_TEMPLATE_CATALOG.filter((t) => wanted.includes(t.id))
31
+ : EXTENSION_TEMPLATE_CATALOG;
32
+ const lines = [
33
+ '# Extension types',
34
+ '',
35
+ 'Each type is a shape an extension can take. They COMBINE — a side panel that',
36
+ 'also runs on the page is one extension with both capabilities, and the required',
37
+ 'permissions are the union. Pick the smallest set that does the job: reviewers',
38
+ 'read every permission as a claim you have to justify.',
39
+ '',
40
+ ];
41
+ for (const template of shown) {
42
+ lines.push(`## ${template.label} (\`${template.id}\`)`, '', template.summary, '', `- ${permissionLine('Required permissions (cannot be dropped)', template.requiredPermissions)}`, `- ${permissionLine('Suggested, removable', template.recommendedPermissions)}`, `- Manifest components: ${template.requires.join(', ')}`, `- Files this type needs: ${template.emits.join(', ')}`);
43
+ if (template.defaultMatches && template.defaultMatches.length > 0) {
44
+ lines.push(`- Default \`content_scripts.matches\`: ${template.defaultMatches.join(', ')} — replace with the exact sites you need; \`<all_urls>\` triggers in-depth store review.`);
45
+ }
46
+ lines.push('');
47
+ }
48
+ lines.push('## Rules that hold for every type', '', `- Every extension gets a background service worker at \`${EXTENSION_BACKGROUND_PATH}\`; it is where startup-time registrations belong (for example the uninstall survey, which the browser reads at removal time when no other code of yours can run).`, '- Chromium reads `side_panel.default_path` and needs the `sidePanel` permission; Firefox reads `sidebar_action` and has no such permission. Emit the one that matches the browser you are building for.', '- MV3 forbids inline script: a panel or popup with its logic in a `<script>` block renders blank. Ship the logic as a file.', '- Never declare a path the package does not contain — a missing content script or icon makes the browser refuse the whole extension, not just that feature.', '', `A developer can pick the same types in the UI at ${MANIFEST_GENERATOR_URL}, and a project's chosen types come back from \`get_project_state\`.`);
49
+ const only = shown.length === 1 ? shown[0] : undefined;
50
+ if (only) {
51
+ lines.push('', `Full file set for this type: ${extensionTemplateFiles([only.id]).join(', ')}.`);
52
+ lines.push(`Union of required permissions: ${extensionTemplateRequiredPermissions([only.id]).join(', ') || 'none'}.`);
53
+ }
54
+ return lines.join('\n');
55
+ }
56
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../src/templates.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -23,7 +23,7 @@
23
23
  * ─────────────────────────────────────────────────────────────
24
24
  * 'read' → search_extensions, get_extension, get_reviews,
25
25
  * get_security, get_risk_by_store_ids, market_overview
26
- * 'docs' → search_docs, generate_icon_workflow,
26
+ * 'docs' → search_docs, list_extension_templates, generate_icon_workflow,
27
27
  * generate_welcome_page_workflow (free; no key)
28
28
  * 'scan' → scan_extension (local artifact; stdio only)
29
29
  * 'publish' → publish_extension (local creds; stdio only)
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAA6C,MAAM,SAAS,CAAA;AAE1G,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAkBnC,eAAO,MAAM,QAAQ,sCAAsC,CAAA;AAC3D,eAAO,MAAM,WAAW,oCAAoC,CAAA;AAC5D,eAAO,MAAM,YAAY,qCAAqC,CAAA;AAE9D,eAAO,MAAM,mBAAmB,QAWS,CAAA;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC,eAAO,MAAM,WAAW,aAAa,CAAA;AAErC,eAAO,MAAM,mBAAmB,QAmBe,CAAA;AAI/C,uDAAuD;AACvD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;AAE7D;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC/B,OAAO,CAAC,EAAE,kBAAkB,CAAA;CAC5B;AAED,MAAM,WAAW,QAAQ;IACxB,kEAAkE;IAClE,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACzD,+BAA+B;IAC/B,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;IACrC;;;;;OAKG;IACH,MAAM,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,GAAG,CAAA;IACrC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,MAAM,CAAA;IAChD;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,MAAM,GAAG,SAAS,CAAA;IACxD,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAiFD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,MAA2B,GAAG,OAAO,CAGxF;AA6ND;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CA+nBnE"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,kBAAkB,EAA6C,MAAM,SAAS,CAAA;AAE1G,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAoBnC,eAAO,MAAM,QAAQ,sCAAsC,CAAA;AAC3D,eAAO,MAAM,WAAW,oCAAoC,CAAA;AAC5D,eAAO,MAAM,YAAY,qCAAqC,CAAA;AAE9D,eAAO,MAAM,mBAAmB,QAWS,CAAA;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC,eAAO,MAAM,WAAW,aAAa,CAAA;AAErC,eAAO,MAAM,mBAAmB,QA2Be,CAAA;AAI/C,uDAAuD;AACvD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;AAE7D;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC/B,OAAO,CAAC,EAAE,kBAAkB,CAAA;CAC5B;AAED,MAAM,WAAW,QAAQ;IACxB,kEAAkE;IAClE,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACzD,+BAA+B;IAC/B,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;IACrC;;;;;OAKG;IACH,MAAM,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,GAAG,CAAA;IACrC;;;;;OAKG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,MAAM,CAAA;IAChD;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,MAAM,GAAG,SAAS,CAAA;IACxD,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAiFD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,MAA2B,GAAG,OAAO,CAGxF;AAqPD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CA+uBnE"}
package/dist/tools.js CHANGED
@@ -23,7 +23,7 @@
23
23
  * ─────────────────────────────────────────────────────────────
24
24
  * 'read' → search_extensions, get_extension, get_reviews,
25
25
  * get_security, get_risk_by_store_ids, market_overview
26
- * 'docs' → search_docs, generate_icon_workflow,
26
+ * 'docs' → search_docs, list_extension_templates, generate_icon_workflow,
27
27
  * generate_welcome_page_workflow (free; no key)
28
28
  * 'scan' → scan_extension (local artifact; stdio only)
29
29
  * 'publish' → publish_extension (local creds; stdio only)
@@ -40,6 +40,8 @@ import { ScanError, scanArtifact } from './scan.js';
40
40
  import { describeStoreConstraints, validateSearchFilters } from './search-filters.js';
41
41
  import { shapeExtension, shapeReviews, shapeSearch, shapeSecurity, shapeStoreRiskBatch } from './shape.js';
42
42
  import { captureError, captureEvent, classifyError } from './telemetry.js';
43
+ import { renderExtensionTemplates } from './templates.js';
44
+ import { renderCatalogPayload } from './untrusted.js';
43
45
  import { renderWelcomeWorkflow } from './welcome-workflow.js';
44
46
  // ── Public links (shared by tool bodies + server instructions) ──────────────
45
47
  export const KEY_PAGE = 'https://dojo.extenshi.io/api-keys';
@@ -79,7 +81,15 @@ export const SERVER_INSTRUCTIONS = 'Extenshi catalog tools for extension develop
79
81
  'after install — it returns which illustrations to produce for the chosen goal, how to mark ' +
80
82
  'up where to click, and the block JSON to hand back. Call ' +
81
83
  'get_credit_balance (free — it never spends a credit) to check remaining read/scan credits ' +
82
- 'before a large batch instead of guessing whether it is safe. In get_extension / get_reviews / ' +
84
+ 'before a large batch instead of guessing whether it is safe. When the developer is BUILDING ' +
85
+ 'an extension: call list_extension_templates (free, no key) for the four shapes and the ' +
86
+ 'permissions each one requires before writing a manifest, and — when they mention "my ' +
87
+ 'extension" or "my project" — list_my_projects then get_project_state (both free) to read the ' +
88
+ 'types, manifest and hosted URLs they already configured on extenshi.io instead of asking them ' +
89
+ 'to repeat it. Re-read get_project_state after they change something on the site, and write its ' +
90
+ '`integration.file` verbatim rather than hand-assembling the same values — that is what keeps the ' +
91
+ 'site and the extension in sync. ' +
92
+ 'In get_extension / get_reviews / ' +
83
93
  'get_security you can identify an extension either by its numeric catalog id or by its store id ' +
84
94
  '(the id in the store URL; add the store for a Chrome/Edge id). To check a LIST of installed ' +
85
95
  `extensions by store id, use get_risk_by_store_ids — up to ${MAX_BATCH_EXTENSIONS} per call for one ` +
@@ -358,6 +368,30 @@ const TOOL_ANNOTATIONS = {
358
368
  idempotentHint: true,
359
369
  openWorldHint: true,
360
370
  },
371
+ list_extension_templates: {
372
+ title: 'Extension types and their permissions',
373
+ readOnlyHint: true,
374
+ idempotentHint: true,
375
+ openWorldHint: false,
376
+ },
377
+ list_my_projects: {
378
+ title: 'List my extension projects',
379
+ readOnlyHint: true,
380
+ idempotentHint: true,
381
+ openWorldHint: true,
382
+ },
383
+ get_project_state: {
384
+ title: 'Read my project state',
385
+ readOnlyHint: true,
386
+ idempotentHint: true,
387
+ openWorldHint: true,
388
+ },
389
+ get_project_scaffold: {
390
+ title: 'Get my starter extension files',
391
+ readOnlyHint: true,
392
+ idempotentHint: true,
393
+ openWorldHint: true,
394
+ },
361
395
  generate_icon_workflow: {
362
396
  title: 'Icon design workflow guide',
363
397
  readOnlyHint: true,
@@ -505,7 +539,7 @@ export function registerTools(server, deps) {
505
539
  skip: args.skip,
506
540
  take: limit,
507
541
  });
508
- return JSON.stringify(shapeSearch(result, limit), null, 2);
542
+ return renderCatalogPayload(shapeSearch(result, limit));
509
543
  }
510
544
  catch (err) {
511
545
  return readError(err, missingKeyMessage);
@@ -525,7 +559,7 @@ export function registerTools(server, deps) {
525
559
  const result = await client.getExtensionById(extensionId);
526
560
  if (!result)
527
561
  throw new UserError(`No extension found with catalog ID ${extensionId}.`);
528
- return JSON.stringify(shapeExtension(result), null, 2);
562
+ return renderCatalogPayload(shapeExtension(result));
529
563
  }
530
564
  catch (err) {
531
565
  return readError(err, missingKeyMessage);
@@ -577,7 +611,7 @@ export function registerTools(server, deps) {
577
611
  minRating: args.min_rating,
578
612
  sort: args.sort ?? 'recent',
579
613
  });
580
- return JSON.stringify(shapeReviews(result, limit), null, 2);
614
+ return renderCatalogPayload(shapeReviews(result, limit));
581
615
  }
582
616
  catch (err) {
583
617
  return readError(err, missingKeyMessage);
@@ -610,7 +644,7 @@ export function registerTools(server, deps) {
610
644
  const installDialogPreview = extension && typeof extension === 'object'
611
645
  ? extension.installDialogPreview
612
646
  : null;
613
- return JSON.stringify(shapeSecurity(security, riskSummary, installDialogPreview), null, 2);
647
+ return renderCatalogPayload(shapeSecurity(security, riskSummary, installDialogPreview));
614
648
  }
615
649
  catch (err) {
616
650
  return readError(err, missingKeyMessage);
@@ -652,7 +686,7 @@ export function registerTools(server, deps) {
652
686
  try {
653
687
  const refs = args.extensions.map((e) => ({ storeId: e.store_id, store: e.store }));
654
688
  const rows = await bff(context).getSecuritySummaryBatch({ extensions: refs });
655
- return JSON.stringify(shapeStoreRiskBatch(rows, refs), null, 2);
689
+ return renderCatalogPayload(shapeStoreRiskBatch(rows, refs));
656
690
  }
657
691
  catch (err) {
658
692
  return readError(err, missingKeyMessage);
@@ -683,7 +717,11 @@ export function registerTools(server, deps) {
683
717
  .getSearchFacets({ query: args.query, stores: args.stores, categories: args.categories })
684
718
  .catch(() => null),
685
719
  ]);
686
- return JSON.stringify({ scope: 'search', stats: stats ?? undefined, facets: facets ?? undefined }, null, 2);
720
+ return renderCatalogPayload({
721
+ scope: 'search',
722
+ stats: stats ?? undefined,
723
+ facets: facets ?? undefined,
724
+ });
687
725
  }
688
726
  // Catalog-wide: the unscoped search facets are all-zero by design, so build the
689
727
  // overview from the dedicated catalog-wide procedures (cached server-side).
@@ -704,7 +742,7 @@ export function registerTools(server, deps) {
704
742
  count: r.count,
705
743
  label: STORE_LABELS[r.store] ?? r.store,
706
744
  }));
707
- return JSON.stringify({
745
+ return renderCatalogPayload({
708
746
  scope: 'catalog-wide',
709
747
  stats: stats ?? undefined,
710
748
  facets: {
@@ -713,7 +751,7 @@ export function registerTools(server, deps) {
713
751
  extended: extended ?? undefined,
714
752
  },
715
753
  note: 'Monetization and download-volume facets are only computed when scoped to a query — pass `query` to get those.',
716
- }, null, 2);
754
+ });
717
755
  }
718
756
  catch (err) {
719
757
  return readError(err, missingKeyMessage);
@@ -742,6 +780,97 @@ export function registerTools(server, deps) {
742
780
  }
743
781
  },
744
782
  });
783
+ // ── The developer's OWN projects ───────────────────────────────────────
784
+ //
785
+ // Extenshi holds the state of an extension project — its type, its
786
+ // manifest, its live hosted pages — so an agent can read that instead of
787
+ // being told it again in prose, and so what it builds matches what the
788
+ // developer already configured. Both are FREE: credits pay for catalog
789
+ // data about other people's extensions, never for your own work.
790
+ add({
791
+ name: 'list_my_projects',
792
+ description: "List the extension projects owned by this API key — the developer's own workspaces on " +
793
+ 'extenshi.io. Returns id, name, status, target browsers, the bound GitHub repo (if any) and ' +
794
+ 'the claimed store listing (if any). Start here when the developer says "my extension" or ' +
795
+ '"my project": the id you get back is what get_project_state takes. FREE — reading your own ' +
796
+ 'projects never spends a credit.',
797
+ parameters: z.object({}),
798
+ execute: async (_args, context) => {
799
+ try {
800
+ return JSON.stringify(await bff(context).listMyProjects(), null, 2);
801
+ }
802
+ catch (err) {
803
+ return readError(err, missingKeyMessage);
804
+ }
805
+ },
806
+ });
807
+ add({
808
+ name: 'get_project_state',
809
+ description: "Read one of the developer's own projects as state you can build from: the extension TYPES " +
810
+ 'they picked (popup / side panel / page enhancer / in-page assistant), the required ' +
811
+ 'permissions those types force, the exact manifest.json the project produces for each target ' +
812
+ 'browser, the files that type needs, live hosted URLs (uninstall survey), and an index of ' +
813
+ 'every saved tool state with its size. Use it before writing code so the manifest you ship ' +
814
+ 'matches what the developer configured on the site — and re-read it after they change ' +
815
+ 'something rather than assuming. It also returns the integration contract: write ' +
816
+ '`integration.file` to `integration.path` VERBATIM to wire the extension to this project — ' +
817
+ "those bytes carry a fingerprint extenshi.io uses to tell the developer's edits from its " +
818
+ 'own, so an equivalent file you assemble yourself makes the site stop managing every value ' +
819
+ 'in it. `integration.unwired` names the links this project has not set up yet — offer them ' +
820
+ 'rather than inventing URLs. Tool-state payloads are NOT inlined by default (a single ' +
821
+ 'row can be 256 KiB); name the keys you actually need in includeToolStates. FREE — never ' +
822
+ 'spends a credit. Combine with list_extension_templates for what each type means.',
823
+ parameters: z.object({
824
+ projectId: z.string().describe('Project id from list_my_projects.'),
825
+ includeToolStates: z
826
+ .array(z.string())
827
+ .optional()
828
+ .describe('Tool keys whose saved payload to inline, e.g. ["manifest-generator", "privacy-policy-generator"]. Omit to get the index only.'),
829
+ }),
830
+ execute: async (args, context) => {
831
+ try {
832
+ const state = await bff(context).getMyProjectState({
833
+ projectId: args.projectId,
834
+ includeToolStates: args.includeToolStates,
835
+ });
836
+ return JSON.stringify(state, null, 2);
837
+ }
838
+ catch (err) {
839
+ return readError(err, missingKeyMessage);
840
+ }
841
+ },
842
+ });
843
+ add({
844
+ name: 'get_project_scaffold',
845
+ description: "The starter extension one of the developer's own projects produces, as FILES ready to " +
846
+ 'write: manifest.json for the target browser, the background worker, the panel or ' +
847
+ "content-script files that project's types need, placeholder icons, and " +
848
+ 'src/extenshi.config.js. Write the files VERBATIM — the config carries a fingerprint ' +
849
+ "that lets extenshi.io keep recognising the repository as this project's, and rebuilding " +
850
+ 'it by hand makes the site stop managing those values. Prefer this over writing a manifest ' +
851
+ 'yourself: it is the same set the site commits, so what you write and what the site ' +
852
+ "expects cannot disagree. One browser per call (default: the project's first target). " +
853
+ 'FREE — never spends a credit.',
854
+ parameters: z.object({
855
+ projectId: z.string().describe('Project id from list_my_projects.'),
856
+ browser: z
857
+ .enum(['chrome', 'firefox', 'edge'])
858
+ .optional()
859
+ .describe("Target browser. Omit for the project's first declared target."),
860
+ }),
861
+ execute: async (args, context) => {
862
+ try {
863
+ const scaffold = await bff(context).getMyProjectScaffold({
864
+ projectId: args.projectId,
865
+ browser: args.browser,
866
+ });
867
+ return JSON.stringify(scaffold, null, 2);
868
+ }
869
+ catch (err) {
870
+ return readError(err, missingKeyMessage);
871
+ }
872
+ },
873
+ });
745
874
  }
746
875
  // ── Documentation (free; no API key required) ──────────────────────────────
747
876
  if (caps.has('docs')) {
@@ -852,6 +981,24 @@ export function registerTools(server, deps) {
852
981
  accentColor: args.accent_color,
853
982
  }),
854
983
  });
984
+ add({
985
+ name: 'list_extension_templates',
986
+ description: 'The kinds of browser extension you can build, with the permissions each one REQUIRES: ' +
987
+ 'Popup (toolbar window), Side panel (docked beside the page), Page enhancer (runs on sites ' +
988
+ 'you list), In-page assistant (your own UI over any site). Types combine, and the required ' +
989
+ 'permissions are the union. Call this BEFORE writing a manifest so you request the minimum ' +
990
+ 'a shape actually needs instead of guessing — padded permissions are what store review ' +
991
+ 'pushes back on. Also states the cross-browser rules (Chromium side_panel vs Firefox ' +
992
+ 'sidebar_action) and the rule that a manifest must never name a file the package lacks. ' +
993
+ "FREE: no API key, no quota. For a specific project's chosen types use get_project_state.",
994
+ parameters: z.object({
995
+ types: z
996
+ .array(z.string())
997
+ .optional()
998
+ .describe('Limit to these type ids (popup, sidepanel, content, overlay). Omit for all four.'),
999
+ }),
1000
+ execute: async (args) => renderExtensionTemplates(args.types),
1001
+ });
855
1002
  }
856
1003
  // ── Action tool (paid; key + LOCAL filesystem required; stdio only) ─────────
857
1004
  if (caps.has('scan')) {
@@ -896,7 +1043,7 @@ export function registerTools(server, deps) {
896
1043
  }
897
1044
  },
898
1045
  });
899
- return JSON.stringify(shapeExtension(report), null, 2);
1046
+ return renderCatalogPayload(shapeExtension(report));
900
1047
  }
901
1048
  catch (err) {
902
1049
  // Keep the ScanError as `cause`: scanErrorMessage() renders 402/429
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}