@subseam/mcp 0.4.12 → 0.4.14

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 (2) hide show
  1. package/dist/main.js +9 -4
  2. package/package.json +1 -1
package/dist/main.js CHANGED
@@ -31053,8 +31053,13 @@ function renderObject(definitionId, r) {
31053
31053
  } else if (r.bindings.length === 0) {
31054
31054
  out2.push("Bindings: NONE \u2014 the current version is unbound, which admit never legitimately produces.");
31055
31055
  } else {
31056
+ const counts = /* @__PURE__ */ new Map();
31057
+ for (const b of r.bindings) {
31058
+ const line = `${b.role}: ${b.repo} (${b.anchorGrain} grain), bound at ${b.boundAtCommit}`;
31059
+ counts.set(line, (counts.get(line) ?? 0) + 1);
31060
+ }
31056
31061
  out2.push("Bindings (current version):");
31057
- for (const b of r.bindings) out2.push(` \u2022 ${b.role}: ${b.repo} (${b.anchorGrain} grain), bound at ${b.boundAtCommit}`);
31062
+ for (const [line, n] of counts) out2.push(` \u2022 ${line}${n > 1 ? ` (\xD7${n})` : ""}`);
31058
31063
  }
31059
31064
  out2.push(r.draft === null ? "Draft (current version): none \u2014 the version has no subject binding, or canvas has published no version of its repo." : `Draft (current version):
31060
31065
  ${renderDraft(r.draft)}`);
@@ -31997,7 +32002,7 @@ var input10 = external_exports.object({
31997
32002
  });
31998
32003
  var captureTool = {
31999
32004
  name: "capture",
32000
- description: "Capture a one-line note in a single call. Provide `note` (required, one line), optional `channel` tag (free string), and optional `context` { repo, path, line, key }. When repo+path+line resolve to a concept the note attaches to it (survives refactors); otherwise it stores the path/repo anchor, never refusing. `context.key` is an opaque caller string, stored verbatim and filterable in capture_list. No title, priority, or type \u2014 by design.",
32005
+ description: 'Write a note down for subseam. Use it whenever the user asks to write down, note, remember or record a rule or fact "for subseam" (for example "write that down for subseam" or "remember this rule"), instead of editing a file. Provide `note` (required, one line, in the user\'s words), optional `channel` tag, and `context` { repo, path, line, key }. When the note names a package, directory or file, pass the repository as `context.repo` (owner/name) and that path as `context.path`: the note then attaches to the concept there (a package attaches to the package, and survives renames). Without them it is stored unanchored, never refused. `context.key` is an opaque caller string, stored verbatim and filterable in capture_list. No title, priority, or type, by design.',
32001
32006
  capability: "capture",
32002
32007
  inputSchema: input10.shape,
32003
32008
  async handler(raw, ctx) {
@@ -32008,7 +32013,7 @@ var captureTool = {
32008
32013
  };
32009
32014
  function renderCapture(n) {
32010
32015
  const onPackage = n.anchorKind === "concept" && n.conceptId?.startsWith("package:") === true;
32011
- const anchor = onPackage ? `attached to the package holding ${n.path}` : n.anchorKind === "concept" ? `concept ${n.conceptId}` : n.anchorKind === "path" ? `path ${n.path}` : n.anchorKind === "repo" ? `repo ${n.repoId}` : "unanchored";
32016
+ const anchor = onPackage ? `attached to the package holding ${n.path}` : n.anchorKind === "concept" ? `concept ${n.conceptId}` : n.anchorKind === "path" ? `path ${n.path}` : n.anchorKind === "repo" ? `repo ${n.repoId}` : "unanchored: no context.repo or context.path was given, so it is attached to nothing. If the note is about a package or path, capture it again with context { repo, path }";
32012
32017
  const chan = n.channel !== null ? ` [${n.channel}]` : "";
32013
32018
  return `capture: note ${n.id} stored (${anchor})${chan}.
32014
32019
  To draft it as a definition, call \`define\` with this repo as \`repo\`, \`basis: "capture-note:${n.id}"\`, and either \`nlIntent\` (the note in your words) or an SDL \`source\`.`;
@@ -48336,7 +48341,7 @@ var workReadTools = createWorkReadToolProviders({ capability: "work" });
48336
48341
  var bundledProviders = [src_default2, src_default, tension_default, ...defineTools, ...decisionTools, ...captureTools, ...buildTools, secureTool, ...workTools, ...workReadTools];
48337
48342
 
48338
48343
  // package.json
48339
- var version2 = "0.4.12";
48344
+ var version2 = "0.4.14";
48340
48345
 
48341
48346
  // src/server.ts
48342
48347
  var SERVER_VERSION = version2;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subseam/mcp",
3
- "version": "0.4.12",
3
+ "version": "0.4.14",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "bin": {