tokenos 1.1.0 → 1.1.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/main.js CHANGED
@@ -1,4 +1,9 @@
1
1
  #!/usr/bin/env node
2
+ // ───── Version flag ───────────────────────────────────────────────────────────
3
+ if (process.argv.includes("--version")) {
4
+ console.log("1.1.1");
5
+ process.exit(0);
6
+ }
2
7
  import { existsSync } from "fs";
3
8
  import { config } from "./config.js";
4
9
  import { startServer } from "./server/index.js";
@@ -40,21 +45,6 @@ async function main() {
40
45
  logger.info("tokenos", "running initial index...");
41
46
  const totals = await indexDirectory(config.watchPath);
42
47
  logger.success("tokenos", `initial index complete: ${totals.files} files, ${totals.nodes} nodes, ${totals.edges} edges`);
43
- // Back-fill embeddings for newly indexed nodes (graceful if Ollama is offline)
44
- const ollamaOk = await checkOllama();
45
- if (ollamaOk) {
46
- try {
47
- logger.info("tokenos", "backfilling embeddings...");
48
- const { updated, skipped } = await backfillEmbeddings();
49
- logger.success("tokenos", `embeddings ready: ${updated} updated, ${skipped} skipped`);
50
- }
51
- catch {
52
- logger.warn("tokenos", "embeddings skipped (Ollama unavailable)");
53
- }
54
- }
55
- else {
56
- logger.warn("tokenos", "embeddings skipped (Ollama offline)");
57
- }
58
48
  // Compute importance scores for all nodes
59
49
  const { updated: scored } = computeAllImportance();
60
50
  logger.success("tokenos", `importance scoring complete: ${scored} nodes scored`);
@@ -62,10 +52,24 @@ async function main() {
62
52
  const watcher = startWatcher(config.watchPath, {
63
53
  onReady: () => logger.success("watcher", "ready"),
64
54
  });
65
- // Start MCP stdio server (blocks until client disconnects)
55
+ // Start MCP stdio server first client connects immediately without waiting for embeddings
56
+ const ollamaOk = await checkOllama();
66
57
  await startServer();
58
+ // Back-fill embeddings non-blocking — large projects won't timeout the MCP handshake
59
+ if (ollamaOk) {
60
+ backfillEmbeddings()
61
+ .then(({ updated, skipped }) => {
62
+ logger.success("tokenos", `embeddings ready: ${updated} updated, ${skipped} skipped`);
63
+ })
64
+ .catch(() => {
65
+ logger.warn("tokenos", "embeddings backfill failed");
66
+ });
67
+ }
68
+ else {
69
+ logger.warn("tokenos", "embeddings skipped (Ollama offline)");
70
+ }
67
71
  logger.viteLike({
68
- version: "1.0.0",
72
+ version: "1.1.1",
69
73
  timeMs: Date.now() - bootStart,
70
74
  localUrl: config.ui.enabled ? `http://localhost:${config.ui.port}/graph` : undefined,
71
75
  ollamaOk,
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAEA,iFAAiF;AACjF,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,kEAAkE;AAClE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxE,kEAAkE;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,iFAAiF;AAEjF,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;IAClC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,8BAA8B,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;IACtC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1C,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,sBAAsB,EAAE,MAAM,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AAEH,iFAAiF;AAEjF,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,wBAAwB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAElE,oCAAoC;IACpC,IAAI,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,wBAAwB,EAAE,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,2BAA2B,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC;IAEzH,0CAA0C;IAC1C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,oBAAoB,EAAE,CAAC;IACnD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,gCAAgC,MAAM,eAAe,CAAC,CAAC;IAEjF,8FAA8F;IAC9F,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE;QAC7C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC;KAClD,CAAC,CAAC;IAEH,4FAA4F;IAC5F,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;IACrC,MAAM,WAAW,EAAE,CAAC;IAEpB,qFAAqF;IACrF,IAAI,QAAQ,EAAE,CAAC;QACb,kBAAkB,EAAE;aACjB,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAwC,EAAE,EAAE;YACnE,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,qBAAqB,OAAO,aAAa,OAAO,UAAU,CAAC,CAAC;QACxF,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,4BAA4B,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACP,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,qCAAqC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC;QACd,OAAO,EAAE,OAAO;QAChB,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;QAC9B,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,MAAM,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS;QACpF,QAAQ;QACR,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,MAAM,CAAC,SAAS;QACrB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;KAC3B,CAAC,CAAC;IAEH,oBAAoB;IACpB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC3C,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC3C,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,12 +1,16 @@
1
1
  {
2
2
  "name": "tokenos",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "TokenOS is a memory layer for AI that reduces token usage by retrieving only the most relevant code and context.",
5
5
  "type": "module",
6
6
  "bin": {
7
- "tokenos": "./dist/main.js"
7
+ "tokenos": "dist/main.js"
8
8
  },
9
- "files": ["dist/", "README.md", "USAGE.md"],
9
+ "files": [
10
+ "dist/",
11
+ "README.md",
12
+ "USAGE.md"
13
+ ],
10
14
  "engines": {
11
15
  "node": ">=18"
12
16
  },
@@ -25,7 +29,7 @@
25
29
  "license": "MIT",
26
30
  "repository": {
27
31
  "type": "git",
28
- "url": "https://github.com/wripcode/tokenos"
32
+ "url": "git+https://github.com/wripcode/tokenos.git"
29
33
  },
30
34
  "scripts": {
31
35
  "build": "tsc",