@amirhosseinnateghi/vibed-mcp 0.1.4 → 0.1.6
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/index.js +20 -5
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -10335,13 +10335,19 @@ var turnAttachmentSchema = external_exports.object({
|
|
|
10335
10335
|
// NUL bytes break Postgres jsonb (and mean binary-not-text) — strip defensively.
|
|
10336
10336
|
text: external_exports.string().max(5e4).transform((t) => t.replace(/\u0000/g, "")).optional()
|
|
10337
10337
|
});
|
|
10338
|
+
var voiceInputSchema = external_exports.object({
|
|
10339
|
+
key: external_exports.string().min(1).max(300),
|
|
10340
|
+
mime: external_exports.string().max(100).default("audio/webm")
|
|
10341
|
+
});
|
|
10338
10342
|
var createTurnRequestSchema = external_exports.object({
|
|
10339
10343
|
clientTurnId: external_exports.string().uuid(),
|
|
10340
10344
|
content: external_exports.string().max(4e3).default(""),
|
|
10341
10345
|
attachments: external_exports.array(turnAttachmentSchema).max(6).optional(),
|
|
10346
|
+
// A voice turn carries no text yet — the worker transcribes `voice` first (م۷).
|
|
10347
|
+
voice: voiceInputSchema.optional(),
|
|
10342
10348
|
model: external_exports.string().max(100).optional()
|
|
10343
|
-
}).refine((v) => v.content.trim().length > 0 || (v.attachments?.length ?? 0) > 0, {
|
|
10344
|
-
message: "Send a message or
|
|
10349
|
+
}).refine((v) => v.content.trim().length > 0 || (v.attachments?.length ?? 0) > 0 || !!v.voice, {
|
|
10350
|
+
message: "Send a message, an attachment, or a voice recording."
|
|
10345
10351
|
});
|
|
10346
10352
|
var builderAttachmentSchema = external_exports.object({
|
|
10347
10353
|
kind: external_exports.enum(["image", "file", "audio"]),
|
|
@@ -10475,6 +10481,13 @@ var buildEventSchema = external_exports.discriminatedUnion("type", [
|
|
|
10475
10481
|
}),
|
|
10476
10482
|
/** Friendly status chip ("index.html", "Fixing a couple of things…"). */
|
|
10477
10483
|
external_exports.object({ ...base, type: external_exports.literal("status"), summary: external_exports.string() }),
|
|
10484
|
+
/**
|
|
10485
|
+
* The user's spoken words, transcribed server-side (م۷). A voice turn starts
|
|
10486
|
+
* with empty `userText` and a "🎤 Transcribing…" bubble; this event fills the
|
|
10487
|
+
* user bubble with the transcript the moment the worker finishes transcribing,
|
|
10488
|
+
* before the build's prose begins.
|
|
10489
|
+
*/
|
|
10490
|
+
external_exports.object({ ...base, type: external_exports.literal("transcript"), text: external_exports.string() }),
|
|
10478
10491
|
/** First-message category classification. */
|
|
10479
10492
|
external_exports.object({ ...base, type: external_exports.literal("category"), category: external_exports.string() }),
|
|
10480
10493
|
/** The validated draft landed. Preview loads it from the draft URL. */
|
|
@@ -11231,7 +11244,8 @@ async function apiFetch({ apiBase, token }, method, path, body) {
|
|
|
11231
11244
|
import { homedir } from "node:os";
|
|
11232
11245
|
import { join as join2 } from "node:path";
|
|
11233
11246
|
import { mkdir, readFile as readFile2, writeFile, chmod } from "node:fs/promises";
|
|
11234
|
-
var DEFAULT_API = "https://
|
|
11247
|
+
var DEFAULT_API = "https://vibed.city";
|
|
11248
|
+
var LEGACY_API_DEFAULTS = /* @__PURE__ */ new Set(["https://web-production-834c9.up.railway.app"]);
|
|
11235
11249
|
var dir = () => join2(homedir(), ".vibed");
|
|
11236
11250
|
var file = () => join2(dir(), "config.json");
|
|
11237
11251
|
async function readFileConfig() {
|
|
@@ -11243,7 +11257,8 @@ async function readFileConfig() {
|
|
|
11243
11257
|
}
|
|
11244
11258
|
async function loadConfig(overrides = {}) {
|
|
11245
11259
|
const fromFile = await readFileConfig();
|
|
11246
|
-
|
|
11260
|
+
let apiBase = (overrides.api || process.env.VIBED_API || fromFile.apiBase || DEFAULT_API).replace(/\/$/, "");
|
|
11261
|
+
if (LEGACY_API_DEFAULTS.has(apiBase)) apiBase = DEFAULT_API;
|
|
11247
11262
|
const token = process.env.VIBED_TOKEN || fromFile.token;
|
|
11248
11263
|
return { apiBase, token };
|
|
11249
11264
|
}
|
|
@@ -11371,7 +11386,7 @@ async function deleteExperience(client, idOrUrl) {
|
|
|
11371
11386
|
}
|
|
11372
11387
|
|
|
11373
11388
|
// src/index.ts
|
|
11374
|
-
var SERVER_INFO = { name: "vibed", version: "0.1.
|
|
11389
|
+
var SERVER_INFO = { name: "vibed", version: "0.1.6" };
|
|
11375
11390
|
var PROTOCOL_VERSION = "2024-11-05";
|
|
11376
11391
|
var CATEGORIES2 = ["Game", "Invitation", "Story", "News", "Quiz", "Tool", "Art", "Other"];
|
|
11377
11392
|
var pendingLogin = null;
|
package/package.json
CHANGED