vectorvesper 2.8.0 → 2.8.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/hooks.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": "1.0.0",
3
3
  "engineVersion": "4.2.0",
4
- "generatedAt": "2026-09-18T15:17:40.480Z",
4
+ "generatedAt": "2026-09-24T15:22:31.361Z",
5
5
  "contractLevel": "full",
6
6
  "hooks": [
7
7
  {
package/dist/index.js CHANGED
@@ -1123,7 +1123,7 @@ Remove ${slug}
1123
1123
  import fs7 from "fs";
1124
1124
  import path7 from "path";
1125
1125
  import pc8 from "picocolors";
1126
- var CLI_VERSION = true ? "2.8.0" : "0.0.0-dev";
1126
+ var CLI_VERSION = true ? "2.8.1" : "0.0.0-dev";
1127
1127
  async function infoCommand() {
1128
1128
  console.log(pc8.bold(pc8.cyan("\nVector Vesper Diagnostics\n")));
1129
1129
  const projectInfo = detectProject();
@@ -1363,8 +1363,9 @@ async function loginCommand(key) {
1363
1363
  console.log(` ${pc10.green(pc10.bold("\u2714"))} Token saved \u2014 you're logged in.`);
1364
1364
  console.log(` ${pc10.dim("Stored at:")} ${pc10.cyan(getGlobalConfigPath())}`);
1365
1365
  console.log("");
1366
- console.log(` ${pc10.dim("Pro components are now available when you run")} ${pc10.cyan("npx vectorvesper add <slug>")}`);
1367
- console.log(` ${pc10.dim("To verify your account:")} ${pc10.cyan("npx vectorvesper whoami")}`);
1366
+ console.log(` ${pc10.dim("Install a component with")} ${pc10.cyan("npx vectorvesper add <slug>")}`);
1367
+ console.log(` ${pc10.dim("Pro components install if your membership covers them.")}`);
1368
+ console.log(` ${pc10.dim("Your membership:")} ${pc10.cyan("https://vectorvesper.dev/account")}`);
1368
1369
  console.log("");
1369
1370
  }
1370
1371
  async function logoutCommand() {
@@ -1392,30 +1393,25 @@ async function logoutCommand() {
1392
1393
  async function whoamiCommand() {
1393
1394
  const config = loadGlobalConfig();
1394
1395
  console.log("");
1395
- console.log(pc10.bold(pc10.cyan(" Vector Vesper Account Status\n")));
1396
+ console.log(pc10.bold(pc10.cyan(" Vector Vesper CLI\n")));
1396
1397
  if (config.auth?.token) {
1397
1398
  const maskedKey = config.auth.token.slice(0, 6) + "\u2026" + config.auth.token.slice(-4);
1398
- const tier = config.auth.tier || "pro";
1399
- console.log(` ${pc10.bold("Status:")} ${pc10.green("Authenticated")}`);
1399
+ console.log(` ${pc10.bold("Status:")} ${pc10.green("Signed in")}`);
1400
1400
  console.log(` ${pc10.bold("Token:")} ${pc10.cyan(maskedKey)}`);
1401
- console.log(` ${pc10.bold("Tier:")} ${pc10.magenta(tier)}`);
1402
1401
  if (config.auth.email) {
1403
1402
  console.log(` ${pc10.bold("Email:")} ${pc10.cyan(config.auth.email)}`);
1404
1403
  }
1405
- if (config.auth.expiresAt) {
1406
- const expiry = new Date(config.auth.expiresAt);
1407
- const now = /* @__PURE__ */ new Date();
1408
- const isExpired = expiry < now;
1409
- console.log(` ${pc10.bold("Expires:")} ${isExpired ? pc10.red("EXPIRED") : pc10.green(expiry.toLocaleDateString())}`);
1410
- }
1404
+ console.log("");
1405
+ console.log(` ${pc10.dim("Your membership is checked by the server each time you install.")}`);
1406
+ console.log(` ${pc10.dim("A Pro component arrives if it covers you, and is refused if not.")}`);
1411
1407
  console.log("");
1412
1408
  console.log(` ${pc10.dim("Config:")} ${pc10.cyan(getGlobalConfigPath())}`);
1413
- console.log(` ${pc10.dim("Manage your account at")} ${pc10.cyan("https://vectorvesper.dev/account")}`);
1409
+ console.log(` ${pc10.dim("See your membership at")} ${pc10.cyan("https://vectorvesper.dev/account")}`);
1414
1410
  } else {
1415
- console.log(` ${pc10.bold("Status:")} ${pc10.yellow("Anonymous (free tier)")}`);
1411
+ console.log(` ${pc10.bold("Status:")} ${pc10.yellow("Not signed in")}`);
1416
1412
  console.log(` ${pc10.bold("Access:")} ${pc10.dim("Free components only")}`);
1417
1413
  console.log("");
1418
- console.log(` ${pc10.dim("To unlock pro components:")}`);
1414
+ console.log(` ${pc10.dim("To install Pro components you have a membership for:")}`);
1419
1415
  console.log(` ${pc10.cyan("npx vectorvesper login <token>")}`);
1420
1416
  console.log(` \u{1F511} ${pc10.dim("Generate a token at")} ${pc10.cyan("https://vectorvesper.dev/account")}`);
1421
1417
  }
@@ -1423,7 +1419,7 @@ async function whoamiCommand() {
1423
1419
  }
1424
1420
 
1425
1421
  // src/index.ts
1426
- var version = true ? "2.8.0" : "0.0.0-dev";
1422
+ var version = true ? "2.8.1" : "0.0.0-dev";
1427
1423
  var program = new Command();
1428
1424
  program.name("vv").description("Vector Vesper CLI \u2014 add visual components to your React project").version(version).option("--verbose", "Show detailed debug output").hook("preAction", (thisCommand) => {
1429
1425
  const opts = thisCommand.opts();
@@ -1465,7 +1461,7 @@ program.command("mcp [action] [client]").description(
1465
1461
  "Run as an MCP server (stdio) for AI coding agents. `vv mcp install` wires it into your editor; `vv mcp status` checks the setup."
1466
1462
  ).option("--stdio", "Force server mode even from an interactive terminal").option("-g, --global", "Write user-level config instead of project-level (install)").action(
1467
1463
  async (action, client, options) => {
1468
- const { mcpCommand } = await import("./mcp-LMUWTS3I.js");
1464
+ const { mcpCommand } = await import("./mcp-D5QWQ2PC.js");
1469
1465
  await mcpCommand(action, { ...options, client });
1470
1466
  }
1471
1467
  );
@@ -146,7 +146,7 @@ function detectClients(cwd = process.cwd()) {
146
146
  }
147
147
 
148
148
  // src/commands/mcp.ts
149
- var VERSION = true ? "2.8.0" : "0.0.0-dev";
149
+ var VERSION = true ? "2.8.1" : "0.0.0-dev";
150
150
  var CONFIG_SNIPPET = `{
151
151
  "mcpServers": {
152
152
  "vectorvesper": {
@@ -293,7 +293,7 @@ ${pc.red("\u2717")} Unknown argument "${action}" for \`vv mcp\`.
293
293
  return;
294
294
  }
295
295
  protectStdout();
296
- const { startMcpServer } = await import("./server-PYIRS3NJ.js");
296
+ const { startMcpServer } = await import("./server-BEBUGQ7F.js");
297
297
  try {
298
298
  await startMcpServer();
299
299
  } catch (error) {
@@ -1327,7 +1327,7 @@ function formatPlan({ building, using }) {
1327
1327
  }
1328
1328
 
1329
1329
  // src/mcp/server.ts
1330
- var VERSION = true ? "2.8.0" : "0.0.0-dev";
1330
+ var VERSION = true ? "2.8.1" : "0.0.0-dev";
1331
1331
  function text(body) {
1332
1332
  return { content: [{ type: "text", text: body }] };
1333
1333
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vectorvesper",
3
- "version": "2.8.0",
3
+ "version": "2.8.1",
4
4
  "description": "Motion runtime and WebGL/R3F component CLI for React, with an MCP server that tells your coding agent which primitive to use, how to wire it, and when not to.",
5
5
  "type": "module",
6
6
  "license": "MIT",