@larkup/cli 0.2.21 → 0.2.23

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.
@@ -3,7 +3,7 @@ import {
3
3
  getAnalyticsSummary,
4
4
  readUsageEvents,
5
5
  trackUsageEvent
6
- } from "./chunk-PDVC2XOG.js";
6
+ } from "./chunk-L34L3RDQ.js";
7
7
  import "./chunk-3RG5ZIWI.js";
8
8
  export {
9
9
  estimateCost,
@@ -7,7 +7,6 @@ var ChromaAdapter = class {
7
7
  this.config = config;
8
8
  this.collectionName = config.collectionName?.trim() || "documents";
9
9
  }
10
- config;
11
10
  client = null;
12
11
  collection = null;
13
12
  collectionName;
@@ -113,10 +113,10 @@ async function fetchToolFromHub(toolId, hubUrl) {
113
113
  var FALLBACK_REGISTRY = {
114
114
  "video-audio": {
115
115
  id: "video-audio",
116
- name: "Video & Audio",
117
- description: "Index video and audio files with transcription and frame analysis.",
116
+ name: "Video Intelligence",
117
+ description: "Build evidence-backed video timelines with adaptive attention and bounded source rewind.",
118
118
  category: "media",
119
- version: "0.3.5",
119
+ version: "0.3.6",
120
120
  pricing: "free",
121
121
  emoji: "\u{1F3AC}",
122
122
  icon: "Film",
@@ -128,9 +128,12 @@ var FALLBACK_REGISTRY = {
128
128
  "audio-indexing",
129
129
  "transcription",
130
130
  "frame-extraction",
131
- "youtube-import"
131
+ "youtube-import",
132
+ "attention-driven-analysis",
133
+ "temporal-evidence",
134
+ "bounded-source-rewind"
132
135
  ],
133
- tags: ["transcription", "ffmpeg", "video", "audio", "whisper"],
136
+ tags: ["video intelligence", "temporal reasoning", "transcription", "ffmpeg", "video", "audio"],
134
137
  downloads: 0,
135
138
  repositoryUrl: "https://github.com/Larkup-AI/larkup",
136
139
  license: "Apache-2.0",
@@ -138,7 +141,7 @@ var FALLBACK_REGISTRY = {
138
141
  configSchema: [
139
142
  {
140
143
  key: "frameInterval",
141
- label: "Frame extraction interval (seconds)",
144
+ label: "Baseline coverage interval (seconds)",
142
145
  type: "text",
143
146
  defaultValue: "10",
144
147
  help: "Baseline cadence for duration-aware coverage frames; scene changes and a reserved ending pass are added separately."
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getToolById,
3
3
  invalidateRegistryCache
4
- } from "./chunk-O7OJUFU6.js";
4
+ } from "./chunk-FM6HYXZ5.js";
5
5
  import {
6
6
  __require
7
7
  } from "./chunk-3RG5ZIWI.js";
@@ -302,11 +302,18 @@ async function resolveManifest(toolId) {
302
302
  throw new Error(`Unknown tool: ${toolId}. Not found in local registry or Hub.`);
303
303
  }
304
304
  async function isWorkspaceTool(packageName) {
305
+ return Boolean(await resolveWorkspaceToolPath(packageName));
306
+ }
307
+ async function resolveWorkspaceToolPath(packageName) {
305
308
  try {
306
- __require.resolve(packageName, { paths: [process.cwd()] });
307
- return true;
309
+ const linkedPath = path.join(process.cwd(), "node_modules", ...packageName.split("/"));
310
+ const packageRoot = await fs.realpath(linkedPath);
311
+ const manifest = JSON.parse(
312
+ await fs.readFile(path.join(packageRoot, "package.json"), "utf8")
313
+ );
314
+ return manifest.name === packageName && !packageRoot.includes(`${path.sep}node_modules${path.sep}`) ? packageRoot : void 0;
308
315
  } catch {
309
- return false;
316
+ return void 0;
310
317
  }
311
318
  }
312
319
  async function installTool(toolId, onProgress) {
@@ -346,14 +353,7 @@ async function installTool(toolId, onProgress) {
346
353
  let source;
347
354
  if (isWorkspace) {
348
355
  report("downloading", 30, "Resolving workspace package\u2026");
349
- try {
350
- const modulePath = __require.resolve(descriptor.packageName, {
351
- paths: [process.cwd()]
352
- });
353
- resolvedPath = path.dirname(modulePath);
354
- } catch {
355
- resolvedPath = path.join(process.cwd(), "node_modules", descriptor.packageName);
356
- }
356
+ resolvedPath = await resolveWorkspaceToolPath(descriptor.packageName) ?? path.join(process.cwd(), "node_modules", descriptor.packageName);
357
357
  source = "local";
358
358
  report("installing", 60, "Workspace package resolved.");
359
359
  } else {
@@ -415,7 +415,7 @@ async function uninstallTool(toolId) {
415
415
  }
416
416
  }
417
417
  invalidateRegistryCache();
418
- const { unloadTool: unloadTool2 } = await import("./tool-loader-FIVIK2IM.js");
418
+ const { unloadTool: unloadTool2 } = await import("./tool-loader-KKODIWEV.js");
419
419
  unloadTool2(toolId);
420
420
  }
421
421
  async function notifyHubInstall(toolId) {
@@ -486,7 +486,7 @@ function unloadTool(toolId) {
486
486
  moduleCache.delete(toolId);
487
487
  }
488
488
  async function hasCapability(capability) {
489
- const { getToolsWithCapability } = await import("./tool-registry-PQDBRO7T.js");
489
+ const { getToolsWithCapability } = await import("./tool-registry-CXCFMOWA.js");
490
490
  const tools = await getToolsWithCapability(capability);
491
491
  for (const t of tools) {
492
492
  const installed = await getInstalledTool(t.id);