@thingd/sdk 0.74.3 → 0.75.0

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/README.md CHANGED
@@ -21,6 +21,25 @@ const obj = await db.get("notes", "hello");
21
21
  console.log(obj); // { id: "hello", text: "Hello world", collection: "notes", version: 1, ... }
22
22
  ```
23
23
 
24
+ ### Optional native storage encryption
25
+
26
+ Native persistent storage accepts a 64-character hexadecimal representation of
27
+ a 32-byte encryption key:
28
+
29
+ ```typescript
30
+ const db = await ThingD.open({
31
+ driver: "native",
32
+ path: "./thingd-data",
33
+ encryption: { key: process.env.THINGD_ENCRYPTION_KEY },
34
+ });
35
+ ```
36
+
37
+ The key is required every time an encrypted database is reopened. Memory and
38
+ cloud drivers reject this local option. Do not commit keys or put them in MCP
39
+ configuration; inject them through the deployment environment. Storage
40
+ encryption does not change object, event, queue, graph, vector, search, REST,
41
+ or MCP APIs.
42
+
24
43
  ## Subpath imports
25
44
 
26
45
  ```typescript
package/dist/index.d.ts CHANGED
@@ -6,7 +6,7 @@ export type { CloudThingStoreOptions } from "./stores/cloud-thing-store.js";
6
6
  export { CloudThingStore } from "./stores/cloud-thing-store.js";
7
7
  export { InMemoryThingStore } from "./stores/in-memory-thing-store.js";
8
8
  export { NativeThingStore } from "./stores/native-thing-store.js";
9
- export type { ThingDDriver, ThingDOpenConfig, ThingDOpenOptions } from "./thingd.js";
9
+ export type { ThingDDriver, ThingDEncryptionOptions, ThingDOpenConfig, ThingDOpenOptions, } from "./thingd.js";
10
10
  export { ThingD } from "./thingd.js";
11
11
  export type { AggregateFunction, AggregateGroupResult, AggregateOptions, AggregateResult, BackupCapableThingStore, CollectionSchema, ConnectorAuth, ConnectorSchema, ConnectorSyncOptions, ConnectorSyncResult, FieldSchema, FilterOperator, Link, LinkDirection, LinkQueryOptions, ListEventsOptions, ListObjectsOptions, LocalThingDConnection, MemoryEvent, MemoryObject, MemoryQueue, MemorySearchOptions, MemorySearchResult, NlqIntent, NlqOptions, NlqResult, PutOptions, QueueClaimOptions, QueueJob, QueueJobOptions, QueueJobPayload, QueueJobResult, QueueJobStatus, QueueNackOptions, ReconnectableThingStore, Schedule, ScheduleContext, ScheduleEvent, ScheduleHandler, ScheduleIntervalOptions, ScheduleOnceOptions, ScheduleOptions, SchedulerEventType, SchedulerFacade, SchedulerListener, SchedulerStats, SchemaOptions, SortBy, SortDirection, StoredMemoryEvent, StoredMemoryObject, ThingDConnection, ThingDeleteResult, ThingStore, TimeBucket, TimeSeriesBucket, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions, WalCheckpointResult, } from "./types.js";
12
12
  export { SDK_VERSION } from "./version.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,8BAA8B,EAC9B,mBAAmB,EACnB,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,IAAI,EACJ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,8BAA8B,EAC9B,mBAAmB,EACnB,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,YAAY,EACV,YAAY,EACZ,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,IAAI,EACJ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,eAAe,EACf,aAAa,EACb,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import type { AggregateOptions, AggregateResult, CollectionSchema, ListEventsOptions, ListObjectsOptions, MemoryEvent, MemoryObject, MemorySearchOptions, MemorySearchResult, PutOptions, QueueClaimOptions, QueueJob, QueueJobOptions, QueueJobPayload, QueueJobResult, QueueNackOptions, SchemaOptions, StoredMemoryEvent, StoredMemoryObject, ThingDeleteResult, ThingStore, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions } from "../types.js";
2
2
  export declare class NativeThingStore implements ThingStore {
3
3
  private readonly binding;
4
- static open(path: string): Promise<NativeThingStore>;
4
+ static open(path: string, encryptionKey?: string): Promise<NativeThingStore>;
5
5
  static isAvailable(): Promise<boolean>;
6
+ static reencrypt(sourcePath: string, destinationPath: string, sourceKey?: string, destinationKey?: string): Promise<void>;
6
7
  static getLoadedPath(): Promise<string | undefined>;
7
8
  private constructor();
8
9
  close(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"native-thing-store.d.ts","sourceRoot":"","sources":["../../src/stores/native-thing-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-thing-store.d.ts","sourceRoot":"","sources":["../../src/stores/native-thing-store.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,9 @@ const DEFAULT_LEASE_MS = 30_000;
4
4
  const NATIVE_PACKAGE_NAME = "@thingd/native";
5
5
  export class NativeThingStore {
6
6
  binding;
7
- static async open(path) {
7
+ static async open(path, encryptionKey) {
8
8
  const native = await loadNativeModule();
9
- return new NativeThingStore(native.NativeThingStore.open(path));
9
+ return new NativeThingStore(native.NativeThingStore.open(path, encryptionKey));
10
10
  }
11
11
  static async isAvailable() {
12
12
  try {
@@ -17,6 +17,10 @@ export class NativeThingStore {
17
17
  return false;
18
18
  }
19
19
  }
20
+ static async reencrypt(sourcePath, destinationPath, sourceKey, destinationKey) {
21
+ const native = await loadNativeModule();
22
+ native.reencrypt(sourcePath, destinationPath, sourceKey, destinationKey);
23
+ }
20
24
  static async getLoadedPath() {
21
25
  try {
22
26
  const native = await loadNativeModule();
@@ -228,6 +232,7 @@ async function loadNativeModule() {
228
232
  const binding = require(customPath);
229
233
  return {
230
234
  NativeThingStore: binding.NativeThingStore,
235
+ reencrypt: binding.reencrypt,
231
236
  loadedPath: customPath,
232
237
  };
233
238
  }
@@ -240,6 +245,7 @@ async function loadNativeModule() {
240
245
  const mod = (await import(NATIVE_PACKAGE_NAME));
241
246
  return {
242
247
  NativeThingStore: mod.NativeThingStore,
248
+ reencrypt: mod.reencrypt,
243
249
  loadedPath: mod.loadedPath,
244
250
  };
245
251
  }
@@ -268,6 +274,7 @@ async function loadNativeModule() {
268
274
  if (binding?.NativeThingStore) {
269
275
  return {
270
276
  NativeThingStore: binding.NativeThingStore,
277
+ reencrypt: binding.reencrypt,
271
278
  loadedPath: candidate,
272
279
  };
273
280
  }
package/dist/thingd.d.ts CHANGED
@@ -1,5 +1,9 @@
1
1
  import type { AggregateOptions, AggregateResult, CollectionSchema, ConnectorAuth, ConnectorSchema, ConnectorSyncOptions, ConnectorSyncResult, ListEventsOptions, ListObjectsOptions, LocalThingDConnection, MemoryEvent, MemoryObject, MemoryQueue, MemorySearchOptions, MemorySearchResult, NlqOptions, NlqResult, PutOptions, SchedulerFacade, SchemaOptions, StoredMemoryEvent, StoredMemoryObject, ThingDeleteResult, ThingStore, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions } from "./types.js";
2
2
  export type ThingDDriver = "memory" | "native" | "cloud";
3
+ export type ThingDEncryptionOptions = {
4
+ /** 64 hexadecimal characters representing a 32-byte key. */
5
+ key?: string;
6
+ };
3
7
  export type ThingDOpenOptions = {
4
8
  driver?: ThingDDriver;
5
9
  store?: ThingStore;
@@ -8,6 +12,7 @@ export type ThingDOpenOptions = {
8
12
  apiKey?: string;
9
13
  /** Cloud instance slug for multi-instance routing. Passed as X-Instance-Slug header. */
10
14
  instanceSlug?: string;
15
+ encryption?: ThingDEncryptionOptions;
11
16
  };
12
17
  export type ThingDOpenConfig = ThingDOpenOptions & {
13
18
  path?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"thingd.d.ts","sourceRoot":"","sources":["../src/thingd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thingd.d.ts","sourceRoot":"","sources":["../src/thingd.ts"],"names":[],"mappings":"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"}
package/dist/thingd.js CHANGED
@@ -212,23 +212,29 @@ async function openStore(path, options) {
212
212
  return options.store;
213
213
  }
214
214
  if (options.driver === "cloud") {
215
+ if (options.encryption) {
216
+ throw new Error("Encryption options are only supported by the native persistent driver");
217
+ }
215
218
  return HttpThingStore.open({
216
219
  url: path,
217
220
  authToken: options.authToken,
218
221
  instanceSlug: options.instanceSlug,
219
222
  });
220
223
  }
224
+ if (options.driver === "memory" && options.encryption) {
225
+ throw new Error("Encryption options are only supported by the native persistent driver");
226
+ }
221
227
  const hasNative = await NativeThingStore.isAvailable();
222
228
  if (options.driver === "native") {
223
229
  if (!hasNative) {
224
230
  throw new Error(`The native thingd driver is not available. Install @thingd/native with "npm install @thingd/native". For monorepo development: "pnpm --filter thingd-native build".`);
225
231
  }
226
- return NativeThingStore.open(path);
232
+ return NativeThingStore.open(path, options.encryption?.key);
227
233
  }
228
234
  // Auto-detect and promote file paths to native store when available, with a warning fallback to memory.
229
235
  if (!options.driver && path !== ":memory:") {
230
236
  if (hasNative) {
231
- return NativeThingStore.open(path);
237
+ return NativeThingStore.open(path, options.encryption?.key);
232
238
  }
233
239
  console.warn(`Warning: The native thingd driver is not available. Falling back to the temporary in-memory store. Data will not persist. Run "pnpm --filter @thingd/native build" or install "@thingd/native" to enable native persistence.`);
234
240
  }
package/dist/version.d.ts CHANGED
@@ -2,5 +2,5 @@
2
2
  * The published version of the thingd SDK.
3
3
  * Updated automatically by Release Please during the release PR process.
4
4
  */
5
- export declare const SDK_VERSION = "0.74.3";
5
+ export declare const SDK_VERSION = "0.75.0";
6
6
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -2,4 +2,4 @@
2
2
  * The published version of the thingd SDK.
3
3
  * Updated automatically by Release Please during the release PR process.
4
4
  */
5
- export const SDK_VERSION = "0.74.3"; // x-release-please-version
5
+ export const SDK_VERSION = "0.75.0"; // x-release-please-version
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thingd/sdk",
3
- "version": "0.74.3",
3
+ "version": "0.75.0",
4
4
  "description": "A fast object-first data engine for applications and AI agents.",
5
5
  "type": "module",
6
6
  "author": "Sayan Mohsin",
@@ -67,7 +67,7 @@
67
67
  "README.md"
68
68
  ],
69
69
  "dependencies": {
70
- "@modelcontextprotocol/sdk": "^1.29.0",
70
+ "@modelcontextprotocol/sdk": "^1.30.0",
71
71
  "zod": "^4.4.3"
72
72
  },
73
73
  "optionalDependencies": {