@recallkit/core 0.1.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 +69 -0
- package/dist/arkiv/client.d.ts +17 -0
- package/dist/arkiv/client.d.ts.map +1 -0
- package/dist/arkiv/client.js +29 -0
- package/dist/arkiv/client.js.map +1 -0
- package/dist/arkiv/entities.d.ts +11 -0
- package/dist/arkiv/entities.d.ts.map +1 -0
- package/dist/arkiv/entities.js +27 -0
- package/dist/arkiv/entities.js.map +1 -0
- package/dist/arkiv/index.d.ts +5 -0
- package/dist/arkiv/index.d.ts.map +1 -0
- package/dist/arkiv/index.js +5 -0
- package/dist/arkiv/index.js.map +1 -0
- package/dist/arkiv/queries.d.ts +7 -0
- package/dist/arkiv/queries.d.ts.map +1 -0
- package/dist/arkiv/queries.js +56 -0
- package/dist/arkiv/queries.js.map +1 -0
- package/dist/arkiv/writes.d.ts +19 -0
- package/dist/arkiv/writes.d.ts.map +1 -0
- package/dist/arkiv/writes.js +37 -0
- package/dist/arkiv/writes.js.map +1 -0
- package/dist/constants.d.ts +19 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +19 -0
- package/dist/constants.js.map +1 -0
- package/dist/crypto/encryption.d.ts +4 -0
- package/dist/crypto/encryption.d.ts.map +1 -0
- package/dist/crypto/encryption.js +34 -0
- package/dist/crypto/encryption.js.map +1 -0
- package/dist/crypto/index.d.ts +3 -0
- package/dist/crypto/index.d.ts.map +1 -0
- package/dist/crypto/index.js +3 -0
- package/dist/crypto/index.js.map +1 -0
- package/dist/crypto/keys.d.ts +8 -0
- package/dist/crypto/keys.d.ts.map +1 -0
- package/dist/crypto/keys.js +54 -0
- package/dist/crypto/keys.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/memory/compiler.d.ts +7 -0
- package/dist/memory/compiler.d.ts.map +1 -0
- package/dist/memory/compiler.js +148 -0
- package/dist/memory/compiler.js.map +1 -0
- package/dist/memory/conflict.d.ts +10 -0
- package/dist/memory/conflict.d.ts.map +1 -0
- package/dist/memory/conflict.js +38 -0
- package/dist/memory/conflict.js.map +1 -0
- package/dist/memory/consolidation.d.ts +3 -0
- package/dist/memory/consolidation.d.ts.map +1 -0
- package/dist/memory/consolidation.js +38 -0
- package/dist/memory/consolidation.js.map +1 -0
- package/dist/memory/index.d.ts +7 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +7 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/schemas.d.ts +75 -0
- package/dist/memory/schemas.d.ts.map +1 -0
- package/dist/memory/schemas.js +5 -0
- package/dist/memory/schemas.js.map +1 -0
- package/dist/memory/scope.d.ts +24 -0
- package/dist/memory/scope.d.ts.map +1 -0
- package/dist/memory/scope.js +96 -0
- package/dist/memory/scope.js.map +1 -0
- package/dist/memory/scoring.d.ts +6 -0
- package/dist/memory/scoring.d.ts.map +1 -0
- package/dist/memory/scoring.js +39 -0
- package/dist/memory/scoring.js.map +1 -0
- package/dist/retrieval/contextPack.d.ts +21 -0
- package/dist/retrieval/contextPack.d.ts.map +1 -0
- package/dist/retrieval/contextPack.js +40 -0
- package/dist/retrieval/contextPack.js.map +1 -0
- package/dist/retrieval/embeddings.d.ts +6 -0
- package/dist/retrieval/embeddings.d.ts.map +1 -0
- package/dist/retrieval/embeddings.js +23 -0
- package/dist/retrieval/embeddings.js.map +1 -0
- package/dist/retrieval/hybridRanker.d.ts +7 -0
- package/dist/retrieval/hybridRanker.d.ts.map +1 -0
- package/dist/retrieval/hybridRanker.js +50 -0
- package/dist/retrieval/hybridRanker.js.map +1 -0
- package/dist/retrieval/index.d.ts +6 -0
- package/dist/retrieval/index.d.ts.map +1 -0
- package/dist/retrieval/index.js +6 -0
- package/dist/retrieval/index.js.map +1 -0
- package/dist/retrieval/indexSearch.d.ts +19 -0
- package/dist/retrieval/indexSearch.d.ts.map +1 -0
- package/dist/retrieval/indexSearch.js +44 -0
- package/dist/retrieval/indexSearch.js.map +1 -0
- package/dist/retrieval/queryUnderstanding.d.ts +9 -0
- package/dist/retrieval/queryUnderstanding.d.ts.map +1 -0
- package/dist/retrieval/queryUnderstanding.js +27 -0
- package/dist/retrieval/queryUnderstanding.js.map +1 -0
- package/dist/storage/cacheStore.d.ts +3 -0
- package/dist/storage/cacheStore.d.ts.map +1 -0
- package/dist/storage/cacheStore.js +10 -0
- package/dist/storage/cacheStore.js.map +1 -0
- package/dist/storage/configStore.d.ts +10 -0
- package/dist/storage/configStore.d.ts.map +1 -0
- package/dist/storage/configStore.js +40 -0
- package/dist/storage/configStore.js.map +1 -0
- package/dist/storage/index.d.ts +6 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +6 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/jsonFile.d.ts +5 -0
- package/dist/storage/jsonFile.d.ts.map +1 -0
- package/dist/storage/jsonFile.js +23 -0
- package/dist/storage/jsonFile.js.map +1 -0
- package/dist/storage/paths.d.ts +7 -0
- package/dist/storage/paths.d.ts.map +1 -0
- package/dist/storage/paths.js +21 -0
- package/dist/storage/paths.js.map +1 -0
- package/dist/storage/pendingMemoryStore.d.ts +9 -0
- package/dist/storage/pendingMemoryStore.d.ts.map +1 -0
- package/dist/storage/pendingMemoryStore.js +74 -0
- package/dist/storage/pendingMemoryStore.js.map +1 -0
- package/dist/tests/memory/scope.test.d.ts +2 -0
- package/dist/tests/memory/scope.test.d.ts.map +1 -0
- package/dist/tests/memory/scope.test.js +46 -0
- package/dist/tests/memory/scope.test.js.map +1 -0
- package/dist/tests/retrieval/indexSearch.test.d.ts +2 -0
- package/dist/tests/retrieval/indexSearch.test.d.ts.map +1 -0
- package/dist/tests/retrieval/indexSearch.test.js +76 -0
- package/dist/tests/retrieval/indexSearch.test.js.map +1 -0
- package/dist/types.d.ts +93 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +29 -0
- package/dist/types.js.map +1 -0
- package/package.json +77 -0
package/README.md
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# `@recallkit/core`
|
|
2
|
+
|
|
3
|
+
Core domain logic for RecallKit. This package is intentionally framework-free so it can be used by the web signer, daemon, CLI, skill scripts.
|
|
4
|
+
|
|
5
|
+
## Domain Map
|
|
6
|
+
|
|
7
|
+
```txt
|
|
8
|
+
src/
|
|
9
|
+
constants.ts Project constants, entity type names, default expirations
|
|
10
|
+
types.ts Cross-domain payload and Arkiv-facing types
|
|
11
|
+
memory/ Memory candidate and MemoryRecord lifecycle
|
|
12
|
+
retrieval/ Query understanding, ranking, context packs
|
|
13
|
+
crypto/ Passphrase encryption and hashing helpers
|
|
14
|
+
arkiv/ Arkiv client loading, entity attributes, queries, writes
|
|
15
|
+
storage/ Local .recallkit paths, config, pending store, cache store
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Public Import Surface
|
|
19
|
+
|
|
20
|
+
Prefer these imports from apps and packages:
|
|
21
|
+
|
|
22
|
+
```ts
|
|
23
|
+
import { buildContextPack } from "@recallkit/core";
|
|
24
|
+
import { readPendingMemories } from "@recallkit/core/storage";
|
|
25
|
+
import { encryptJson } from "@recallkit/core/crypto";
|
|
26
|
+
import { createMemoryPack } from "@recallkit/core/arkiv";
|
|
27
|
+
import type { MemoryRecord } from "@recallkit/core/schemas";
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Subpath exports are grouped by domain:
|
|
31
|
+
|
|
32
|
+
| Export | Purpose |
|
|
33
|
+
| --- | --- |
|
|
34
|
+
| `@recallkit/core` | Main public API. |
|
|
35
|
+
| `@recallkit/core/memory` | Candidate compilation, scoring, conflict, consolidation. |
|
|
36
|
+
| `@recallkit/core/retrieval` | Search, ranking, context packs. |
|
|
37
|
+
| `@recallkit/core/crypto` | Encryption and key helpers. |
|
|
38
|
+
| `@recallkit/core/arkiv` | Arkiv clients, attributes, queries, write helpers. |
|
|
39
|
+
| `@recallkit/core/storage` | Local config, pending memory, and cache stores. |
|
|
40
|
+
| `@recallkit/core/schemas` | Memory schema types. |
|
|
41
|
+
|
|
42
|
+
Browser code should prefer the focused `crypto`, `arkiv`, `keys`, `constants`, and type-only imports. `storage` uses Node filesystem APIs and is intended for the signer API, daemon, CLI.
|
|
43
|
+
|
|
44
|
+
## Architectural Boundaries
|
|
45
|
+
|
|
46
|
+
- `memory/` has no Arkiv dependency. It turns user/agent text into structured memory records and index metadata.
|
|
47
|
+
- `retrieval/` consumes committed memory/index data. It does not write local files or Arkiv entities.
|
|
48
|
+
- `crypto/` only handles encryption, decryption, hashing, and byte conversion.
|
|
49
|
+
- `arkiv/` knows about Arkiv entity attributes, SDK loading, queries, and write calls.
|
|
50
|
+
- `storage/` owns local `.recallkit` JSON files.
|
|
51
|
+
|
|
52
|
+
The durable write path remains wallet-native: the approval app encrypts payloads and signs Arkiv writes with the connected browser wallet. Server-side Arkiv reads can use the `ARKIV_RPC_URL` override; do not expose keyed RPC URLs with `NEXT_PUBLIC_*`.
|
|
53
|
+
|
|
54
|
+
## Local Files
|
|
55
|
+
|
|
56
|
+
RecallKit local state is rooted at `RECALLKIT_DATA_DIR` when set, otherwise the current working directory:
|
|
57
|
+
|
|
58
|
+
```txt
|
|
59
|
+
.recallkit/
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Files:
|
|
63
|
+
|
|
64
|
+
```txt
|
|
65
|
+
.recallkit/config.json
|
|
66
|
+
.recallkit/pending.json
|
|
67
|
+
.recallkit/cache/latest-index.json
|
|
68
|
+
.recallkit/cache/latest-packs.json
|
|
69
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type ArkivSdk = {
|
|
2
|
+
createPublicClient: (config: unknown) => unknown;
|
|
3
|
+
createWalletClient?: (config: unknown) => unknown;
|
|
4
|
+
http: (url?: string) => unknown;
|
|
5
|
+
};
|
|
6
|
+
export type ArkivChainModule = {
|
|
7
|
+
braga: unknown;
|
|
8
|
+
};
|
|
9
|
+
export declare function loadArkivSdk(): Promise<ArkivSdk>;
|
|
10
|
+
export declare function loadArkivChains(): Promise<ArkivChainModule>;
|
|
11
|
+
export declare function loadArkivUtils(): Promise<{
|
|
12
|
+
jsonToPayload?: (value: unknown) => unknown;
|
|
13
|
+
stringToPayload?: (value: string) => unknown;
|
|
14
|
+
}>;
|
|
15
|
+
export declare function createArkivPublicClient(rpcUrl?: string): Promise<unknown>;
|
|
16
|
+
export declare function entityToJson<T>(entity: unknown): T;
|
|
17
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/arkiv/client.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG;IACrB,kBAAkB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IACjD,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IAClD,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAGF,wBAAsB,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,CAEtD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAEjE;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;CAC9C,CAAC,CAKD;AAED,wBAAsB,uBAAuB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO/E;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,GAAG,CAAC,CAWlD"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Lazy load Arkiv SDK imports so local-only core flows do not load Arkiv code until retrieval or writes need it.
|
|
2
|
+
export async function loadArkivSdk() {
|
|
3
|
+
return import("@arkiv-network/sdk");
|
|
4
|
+
}
|
|
5
|
+
export async function loadArkivChains() {
|
|
6
|
+
return import("@arkiv-network/sdk/chains");
|
|
7
|
+
}
|
|
8
|
+
export async function loadArkivUtils() {
|
|
9
|
+
return import("@arkiv-network/sdk/utils");
|
|
10
|
+
}
|
|
11
|
+
export async function createArkivPublicClient(rpcUrl) {
|
|
12
|
+
const [{ createPublicClient, http }, { braga }] = await Promise.all([loadArkivSdk(), loadArkivChains()]);
|
|
13
|
+
const serverRpcUrl = typeof process !== "undefined" ? process.env.ARKIV_RPC_URL : undefined;
|
|
14
|
+
return createPublicClient({
|
|
15
|
+
chain: braga,
|
|
16
|
+
transport: http(rpcUrl ?? serverRpcUrl),
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
export function entityToJson(entity) {
|
|
20
|
+
const candidate = entity;
|
|
21
|
+
if (typeof candidate.toJson === "function")
|
|
22
|
+
return candidate.toJson();
|
|
23
|
+
if (candidate.payload !== undefined)
|
|
24
|
+
return candidate.payload;
|
|
25
|
+
if (candidate.value !== undefined)
|
|
26
|
+
return candidate.value;
|
|
27
|
+
throw new Error("Arkiv entity did not include a JSON payload.");
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/arkiv/client.ts"],"names":[],"mappings":"AAUA,iHAAiH;AACjH,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,OAAO,MAAM,CAAC,oBAAoB,CAAsB,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,OAAO,MAAM,CAAC,2BAA2B,CAA8B,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAIlC,OAAO,MAAM,CAAC,0BAA0B,CAGtC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,MAAe;IAC3D,MAAM,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;IACzG,MAAM,YAAY,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,OAAO,kBAAkB,CAAC;QACxB,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC;KACxC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAI,MAAe;IAC7C,MAAM,SAAS,GAAG,MAIjB,CAAC;IAEF,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;IACtE,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC,OAAO,CAAC;IAC9D,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC,KAAK,CAAC;IAC1D,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AAClE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Attribute } from "../types.js";
|
|
2
|
+
export declare function baseAttributes(entityType: string, ownerWallet: string): Attribute[];
|
|
3
|
+
export declare function memoryManifestAttributes(ownerWallet: string): Attribute[];
|
|
4
|
+
export declare function memoryPackAttributes(params: {
|
|
5
|
+
ownerWallet: string;
|
|
6
|
+
scopeHash: string;
|
|
7
|
+
}): Attribute[];
|
|
8
|
+
export declare function memoryIndexCheckpointAttributes(ownerWallet: string): Attribute[];
|
|
9
|
+
export declare function memoryCommitAttributes(ownerWallet: string): Attribute[];
|
|
10
|
+
export declare const memoryEntityContentType = "application/vnd.recallkit.encrypted+json";
|
|
11
|
+
//# sourceMappingURL=entities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../src/arkiv/entities.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,CAQnF;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,CAEzE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,SAAS,EAAE,CAKd;AAED,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,CAEhF;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,CAEvE;AAED,eAAO,MAAM,uBAAuB,6CAA6C,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ENTITY_TYPES, PROJECT_ATTRIBUTE } from "../constants.js";
|
|
2
|
+
export function baseAttributes(entityType, ownerWallet) {
|
|
3
|
+
return [
|
|
4
|
+
{ key: PROJECT_ATTRIBUTE.key, value: PROJECT_ATTRIBUTE.value },
|
|
5
|
+
{ key: "entityType", value: entityType },
|
|
6
|
+
{ key: "owner", value: ownerWallet },
|
|
7
|
+
{ key: "createdAt", value: Date.now() },
|
|
8
|
+
{ key: "schemaVersion", value: 1 },
|
|
9
|
+
];
|
|
10
|
+
}
|
|
11
|
+
export function memoryManifestAttributes(ownerWallet) {
|
|
12
|
+
return baseAttributes(ENTITY_TYPES.MANIFEST, ownerWallet);
|
|
13
|
+
}
|
|
14
|
+
export function memoryPackAttributes(params) {
|
|
15
|
+
return [
|
|
16
|
+
...baseAttributes(ENTITY_TYPES.PACK, params.ownerWallet),
|
|
17
|
+
{ key: "scopeHash", value: params.scopeHash },
|
|
18
|
+
];
|
|
19
|
+
}
|
|
20
|
+
export function memoryIndexCheckpointAttributes(ownerWallet) {
|
|
21
|
+
return baseAttributes(ENTITY_TYPES.INDEX_CHECKPOINT, ownerWallet);
|
|
22
|
+
}
|
|
23
|
+
export function memoryCommitAttributes(ownerWallet) {
|
|
24
|
+
return baseAttributes(ENTITY_TYPES.COMMIT, ownerWallet);
|
|
25
|
+
}
|
|
26
|
+
export const memoryEntityContentType = "application/vnd.recallkit.encrypted+json";
|
|
27
|
+
//# sourceMappingURL=entities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/arkiv/entities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGlE,MAAM,UAAU,cAAc,CAAC,UAAkB,EAAE,WAAmB;IACpE,OAAO;QACL,EAAE,GAAG,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,iBAAiB,CAAC,KAAK,EAAE;QAC9D,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE;QACxC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE;QACpC,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;QACvC,EAAE,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,WAAmB;IAC1D,OAAO,cAAc,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAGpC;IACC,OAAO;QACL,GAAG,cAAc,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC;QACxD,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,WAAmB;IACjE,OAAO,cAAc,CAAC,YAAY,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAAmB;IACxD,OAAO,cAAc,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,0CAA0C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/arkiv/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/arkiv/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ArkivEntity, ArkivPublicClient } from "../types.js";
|
|
2
|
+
export declare function getLatestManifest(publicClient: ArkivPublicClient, ownerWallet: string): Promise<ArkivEntity | undefined>;
|
|
3
|
+
export declare function getEntityByKey<T = unknown>(publicClient: ArkivPublicClient, entityKey: string): Promise<{
|
|
4
|
+
entity: ArkivEntity;
|
|
5
|
+
payload: T;
|
|
6
|
+
}>;
|
|
7
|
+
//# sourceMappingURL=queries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../src/arkiv/queries.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOlE,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,iBAAiB,EAC/B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAOlC;AAED,wBAAsB,cAAc,CAAC,CAAC,GAAG,OAAO,EAC9C,YAAY,EAAE,iBAAiB,EAC/B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC,CAc9C"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ENTITY_TYPES, PROJECT_ATTRIBUTE } from "../constants.js";
|
|
2
|
+
import { entityToJson } from "./client.js";
|
|
3
|
+
export async function getLatestManifest(publicClient, ownerWallet) {
|
|
4
|
+
const result = await buildProjectQuery(publicClient, ownerWallet, ENTITY_TYPES.MANIFEST, true);
|
|
5
|
+
const entities = (result.entities ?? []).map(normalizeEntity);
|
|
6
|
+
return entities.sort((left, right) => Number(readAttribute(right, "createdAt")) - Number(readAttribute(left, "createdAt")))[0];
|
|
7
|
+
}
|
|
8
|
+
export async function getEntityByKey(publicClient, entityKey) {
|
|
9
|
+
const client = publicClient;
|
|
10
|
+
if (typeof client.getEntity !== "function") {
|
|
11
|
+
throw new Error("Arkiv public client does not expose getEntity().");
|
|
12
|
+
}
|
|
13
|
+
const rawEntity = await client.getEntity(entityKey);
|
|
14
|
+
return {
|
|
15
|
+
entity: normalizeEntity(rawEntity),
|
|
16
|
+
payload: entityToJson(rawEntity),
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
async function buildProjectQuery(publicClient, ownerWallet, entityType, withPayload) {
|
|
20
|
+
const { eq, desc } = (await import("@arkiv-network/sdk/query"));
|
|
21
|
+
const client = publicClient;
|
|
22
|
+
if (typeof client.buildQuery !== "function") {
|
|
23
|
+
throw new Error("Arkiv public client does not expose buildQuery().");
|
|
24
|
+
}
|
|
25
|
+
let query = client.buildQuery();
|
|
26
|
+
query = query.where(eq(PROJECT_ATTRIBUTE.key, PROJECT_ATTRIBUTE.value));
|
|
27
|
+
query = query.where(eq("entityType", entityType));
|
|
28
|
+
query = query.where(eq("owner", ownerWallet));
|
|
29
|
+
if (typeof query.ownedBy === "function")
|
|
30
|
+
query = query.ownedBy(ownerWallet);
|
|
31
|
+
if (typeof query.orderBy === "function")
|
|
32
|
+
query = query.orderBy(desc("createdAt", "number"));
|
|
33
|
+
if (typeof query.withPayload === "function")
|
|
34
|
+
query = query.withPayload(withPayload);
|
|
35
|
+
if (typeof query.withAttributes === "function")
|
|
36
|
+
query = query.withAttributes(true);
|
|
37
|
+
if (typeof query.limit === "function")
|
|
38
|
+
query = query.limit(50);
|
|
39
|
+
if (typeof query.fetch !== "function") {
|
|
40
|
+
throw new Error("Arkiv query builder does not expose fetch().");
|
|
41
|
+
}
|
|
42
|
+
return query.fetch();
|
|
43
|
+
}
|
|
44
|
+
function normalizeEntity(raw) {
|
|
45
|
+
const entity = raw;
|
|
46
|
+
return {
|
|
47
|
+
key: entity.key ?? "",
|
|
48
|
+
attributes: entity.attributes ?? entity.stringAttributes ?? [],
|
|
49
|
+
payload: entity.payload ?? entity.value,
|
|
50
|
+
...(entity.createdAt !== undefined ? { createdAt: entity.createdAt } : {}),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
function readAttribute(entity, key) {
|
|
54
|
+
return entity.attributes?.find((attribute) => attribute.key === key)?.value;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=queries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/arkiv/queries.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ArkivWalletClient, EncryptedPayload } from "../types.js";
|
|
2
|
+
type CreateEntityResult = {
|
|
3
|
+
entityKey: string;
|
|
4
|
+
txHash?: string;
|
|
5
|
+
};
|
|
6
|
+
type EncryptedEntityParams = {
|
|
7
|
+
walletClient: ArkivWalletClient;
|
|
8
|
+
ownerWallet: string;
|
|
9
|
+
encryptedPayload: EncryptedPayload;
|
|
10
|
+
expiresIn: number;
|
|
11
|
+
};
|
|
12
|
+
export declare function createMemoryPack(params: EncryptedEntityParams & {
|
|
13
|
+
scopeHash: string;
|
|
14
|
+
}): Promise<CreateEntityResult>;
|
|
15
|
+
export declare function createIndexCheckpoint(params: EncryptedEntityParams): Promise<CreateEntityResult>;
|
|
16
|
+
export declare function createMemoryCommit(params: EncryptedEntityParams): Promise<CreateEntityResult>;
|
|
17
|
+
export declare function createMemoryManifest(params: EncryptedEntityParams): Promise<CreateEntityResult>;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=writes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writes.d.ts","sourceRoot":"","sources":["../../src/arkiv/writes.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAa,gBAAgB,EAAE,MAAM,aAAa,CAAC;AASlF,KAAK,kBAAkB,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC3B,YAAY,EAAE,iBAAiB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,qBAAqB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,kBAAkB,CAAC,CAQ7B;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAEhG;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAE7F;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAE/F"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { memoryCommitAttributes, memoryEntityContentType, memoryIndexCheckpointAttributes, memoryManifestAttributes, memoryPackAttributes, } from "./entities.js";
|
|
2
|
+
import { loadArkivUtils } from "./client.js";
|
|
3
|
+
export function createMemoryPack(params) {
|
|
4
|
+
return createRecallKitEntity(params, memoryPackAttributes({
|
|
5
|
+
ownerWallet: params.ownerWallet,
|
|
6
|
+
scopeHash: params.scopeHash,
|
|
7
|
+
}));
|
|
8
|
+
}
|
|
9
|
+
export function createIndexCheckpoint(params) {
|
|
10
|
+
return createRecallKitEntity(params, memoryIndexCheckpointAttributes(params.ownerWallet));
|
|
11
|
+
}
|
|
12
|
+
export function createMemoryCommit(params) {
|
|
13
|
+
return createRecallKitEntity(params, memoryCommitAttributes(params.ownerWallet));
|
|
14
|
+
}
|
|
15
|
+
export function createMemoryManifest(params) {
|
|
16
|
+
return createRecallKitEntity(params, memoryManifestAttributes(params.ownerWallet));
|
|
17
|
+
}
|
|
18
|
+
function createRecallKitEntity(params, attributes) {
|
|
19
|
+
return createEncryptedEntity(params.walletClient, {
|
|
20
|
+
payload: params.encryptedPayload,
|
|
21
|
+
contentType: memoryEntityContentType,
|
|
22
|
+
attributes,
|
|
23
|
+
expiresIn: params.expiresIn,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
async function createEncryptedEntity(walletClient, input) {
|
|
27
|
+
const client = walletClient;
|
|
28
|
+
if (typeof client.createEntity !== "function") {
|
|
29
|
+
throw new Error("Arkiv wallet client does not expose createEntity().");
|
|
30
|
+
}
|
|
31
|
+
const { jsonToPayload } = await loadArkivUtils();
|
|
32
|
+
return client.createEntity({
|
|
33
|
+
...input,
|
|
34
|
+
payload: jsonToPayload ? jsonToPayload(input.payload) : input.payload,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=writes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writes.js","sourceRoot":"","sources":["../../src/arkiv/writes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,+BAA+B,EAC/B,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAsB7C,MAAM,UAAU,gBAAgB,CAC9B,MAAqD;IAErD,OAAO,qBAAqB,CAC1B,MAAM,EACN,oBAAoB,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA6B;IACjE,OAAO,qBAAqB,CAAC,MAAM,EAAE,+BAA+B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAA6B;IAC9D,OAAO,qBAAqB,CAAC,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA6B;IAChE,OAAO,qBAAqB,CAAC,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAA6B,EAC7B,UAAuB;IAEvB,OAAO,qBAAqB,CAAC,MAAM,CAAC,YAAY,EAAE;QAChD,OAAO,EAAE,MAAM,CAAC,gBAAgB;QAChC,WAAW,EAAE,uBAAuB;QACpC,UAAU;QACV,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,YAA+B,EAC/B,KAAwB;IAExB,MAAM,MAAM,GAAG,YAEd,CAAC;IAEF,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,cAAc,EAAE,CAAC;IACjD,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,GAAG,KAAK;QACR,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO;KACtE,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const PROJECT_ATTRIBUTE: {
|
|
2
|
+
readonly key: "project";
|
|
3
|
+
readonly value: "recallkit-v1";
|
|
4
|
+
};
|
|
5
|
+
export declare const ENTITY_TYPES: {
|
|
6
|
+
readonly MANIFEST: "memory_manifest";
|
|
7
|
+
readonly PACK: "memory_pack";
|
|
8
|
+
readonly INDEX_CHECKPOINT: "memory_index_checkpoint";
|
|
9
|
+
readonly COMMIT: "memory_commit";
|
|
10
|
+
};
|
|
11
|
+
export declare const DEFAULT_EXPIRES_IN: {
|
|
12
|
+
readonly SESSION_MEMORY: number;
|
|
13
|
+
readonly PROJECT_MEMORY: number;
|
|
14
|
+
readonly LONG_TERM_MEMORY: number;
|
|
15
|
+
};
|
|
16
|
+
export declare const DEFAULT_APPROVAL_APP_URL: string;
|
|
17
|
+
export declare const DEFAULT_DAEMON_URL: string;
|
|
18
|
+
export declare const DEFAULT_RECALLKIT_DIR = ".recallkit";
|
|
19
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;CAKf,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX,eAAO,MAAM,wBAAwB,QAA6D,CAAC;AAEnG,eAAO,MAAM,kBAAkB,QAA8D,CAAC;AAE9F,eAAO,MAAM,qBAAqB,eAAe,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export const PROJECT_ATTRIBUTE = {
|
|
2
|
+
key: "project",
|
|
3
|
+
value: "recallkit-v1",
|
|
4
|
+
};
|
|
5
|
+
export const ENTITY_TYPES = {
|
|
6
|
+
MANIFEST: "memory_manifest",
|
|
7
|
+
PACK: "memory_pack",
|
|
8
|
+
INDEX_CHECKPOINT: "memory_index_checkpoint",
|
|
9
|
+
COMMIT: "memory_commit",
|
|
10
|
+
};
|
|
11
|
+
export const DEFAULT_EXPIRES_IN = {
|
|
12
|
+
SESSION_MEMORY: 60 * 60 * 24 * 30,
|
|
13
|
+
PROJECT_MEMORY: 60 * 60 * 24 * 180,
|
|
14
|
+
LONG_TERM_MEMORY: 60 * 60 * 24 * 365,
|
|
15
|
+
};
|
|
16
|
+
export const DEFAULT_APPROVAL_APP_URL = process.env.RECALLKIT_LOCAL_URL ?? "http://localhost:4317";
|
|
17
|
+
export const DEFAULT_DAEMON_URL = process.env.RECALLKIT_DAEMON_URL ?? "http://localhost:4318";
|
|
18
|
+
export const DEFAULT_RECALLKIT_DIR = ".recallkit";
|
|
19
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,GAAG,EAAE,SAAS;IACd,KAAK,EAAE,cAAc;CACb,CAAC;AAEX,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,iBAAiB;IAC3B,IAAI,EAAE,aAAa;IACnB,gBAAgB,EAAE,yBAAyB;IAC3C,MAAM,EAAE,eAAe;CACf,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;IACjC,cAAc,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG;IAClC,gBAAgB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG;CAC5B,CAAC;AAEX,MAAM,CAAC,MAAM,wBAAwB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,uBAAuB,CAAC;AAEnG,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,uBAAuB,CAAC;AAE9F,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { EncryptedPayload } from "../types.js";
|
|
2
|
+
export declare function encryptJson(payload: unknown, passphrase: string): Promise<EncryptedPayload>;
|
|
3
|
+
export declare function decryptJson<T>(encryptedPayload: EncryptedPayload, passphrase: string): Promise<T>;
|
|
4
|
+
//# sourceMappingURL=encryption.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/crypto/encryption.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGpD,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAiBjG;AAED,wBAAsB,WAAW,CAAC,CAAC,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAqBvG"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { base64ToBytes, bytesToBase64, deriveAesGcmKey, getCrypto, toArrayBuffer } from "./keys.js";
|
|
2
|
+
export async function encryptJson(payload, passphrase) {
|
|
3
|
+
const crypto = getCrypto();
|
|
4
|
+
const salt = crypto.getRandomValues(new Uint8Array(16));
|
|
5
|
+
const iv = crypto.getRandomValues(new Uint8Array(12));
|
|
6
|
+
const key = await deriveAesGcmKey(passphrase, salt);
|
|
7
|
+
const plaintext = new TextEncoder().encode(JSON.stringify(payload));
|
|
8
|
+
const encrypted = await crypto.subtle.encrypt({ name: "AES-GCM", iv }, key, plaintext);
|
|
9
|
+
return {
|
|
10
|
+
version: 1,
|
|
11
|
+
encrypted: true,
|
|
12
|
+
algorithm: "AES-GCM",
|
|
13
|
+
kdf: "PBKDF2",
|
|
14
|
+
salt: bytesToBase64(salt),
|
|
15
|
+
iv: bytesToBase64(iv),
|
|
16
|
+
ciphertext: bytesToBase64(new Uint8Array(encrypted)),
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export async function decryptJson(encryptedPayload, passphrase) {
|
|
20
|
+
if (encryptedPayload.version !== 1 ||
|
|
21
|
+
encryptedPayload.encrypted !== true ||
|
|
22
|
+
encryptedPayload.algorithm !== "AES-GCM" ||
|
|
23
|
+
encryptedPayload.kdf !== "PBKDF2") {
|
|
24
|
+
throw new Error("Unsupported RecallKit encrypted payload format.");
|
|
25
|
+
}
|
|
26
|
+
const salt = base64ToBytes(encryptedPayload.salt);
|
|
27
|
+
const iv = base64ToBytes(encryptedPayload.iv);
|
|
28
|
+
const ciphertext = base64ToBytes(encryptedPayload.ciphertext);
|
|
29
|
+
const key = await deriveAesGcmKey(passphrase, salt);
|
|
30
|
+
const plaintext = await getCrypto().subtle.decrypt({ name: "AES-GCM", iv: toArrayBuffer(iv) }, key, toArrayBuffer(ciphertext));
|
|
31
|
+
const decoded = new TextDecoder().decode(plaintext);
|
|
32
|
+
return JSON.parse(decoded);
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=encryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/crypto/encryption.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEpG,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAgB,EAAE,UAAkB;IACpE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,EAAE,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IAEvF,OAAO;QACL,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,SAAS;QACpB,GAAG,EAAE,QAAQ;QACb,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;QACzB,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC;QACrB,UAAU,EAAE,aAAa,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAI,gBAAkC,EAAE,UAAkB;IACzF,IACE,gBAAgB,CAAC,OAAO,KAAK,CAAC;QAC9B,gBAAgB,CAAC,SAAS,KAAK,IAAI;QACnC,gBAAgB,CAAC,SAAS,KAAK,SAAS;QACxC,gBAAgB,CAAC,GAAG,KAAK,QAAQ,EACjC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,IAAI,GAAG,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,EAAE,GAAG,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,MAAM,SAAS,EAAE,CAAC,MAAM,CAAC,OAAO,CAChD,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,EAAE,EAC1C,GAAG,EACH,aAAa,CAAC,UAAU,CAAC,CAC1B,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/crypto/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/crypto/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function bytesToBase64(bytes: Uint8Array): string;
|
|
2
|
+
export declare function base64ToBytes(value: string): Uint8Array;
|
|
3
|
+
export declare function getCrypto(): Crypto;
|
|
4
|
+
export declare function deriveAesGcmKey(passphrase: string, salt: Uint8Array): Promise<CryptoKey>;
|
|
5
|
+
export declare function toArrayBuffer(bytes: Uint8Array): ArrayBuffer;
|
|
6
|
+
export declare function sha256Hex(value: string): Promise<string>;
|
|
7
|
+
export declare function hashScope(scope: string): Promise<string>;
|
|
8
|
+
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/crypto/keys.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQvD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAWvD;AAED,wBAAgB,SAAS,IAAI,MAAM,CAMlC;AAED,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAuB9F;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CAE5D;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG9D;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE9D"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export function bytesToBase64(bytes) {
|
|
2
|
+
if (typeof Buffer !== "undefined") {
|
|
3
|
+
return Buffer.from(bytes).toString("base64");
|
|
4
|
+
}
|
|
5
|
+
let binary = "";
|
|
6
|
+
for (const byte of bytes)
|
|
7
|
+
binary += String.fromCharCode(byte);
|
|
8
|
+
return btoa(binary);
|
|
9
|
+
}
|
|
10
|
+
export function base64ToBytes(value) {
|
|
11
|
+
if (typeof Buffer !== "undefined") {
|
|
12
|
+
return new Uint8Array(Buffer.from(value, "base64"));
|
|
13
|
+
}
|
|
14
|
+
const binary = atob(value);
|
|
15
|
+
const bytes = new Uint8Array(binary.length);
|
|
16
|
+
for (let index = 0; index < binary.length; index += 1) {
|
|
17
|
+
bytes[index] = binary.charCodeAt(index);
|
|
18
|
+
}
|
|
19
|
+
return bytes;
|
|
20
|
+
}
|
|
21
|
+
export function getCrypto() {
|
|
22
|
+
const cryptoImpl = globalThis.crypto;
|
|
23
|
+
if (!cryptoImpl?.subtle) {
|
|
24
|
+
throw new Error("Web Crypto API is required for RecallKit encryption.");
|
|
25
|
+
}
|
|
26
|
+
return cryptoImpl;
|
|
27
|
+
}
|
|
28
|
+
export async function deriveAesGcmKey(passphrase, salt) {
|
|
29
|
+
if (passphrase.trim().length < 8) {
|
|
30
|
+
throw new Error("Encryption passphrase must be at least 8 characters.");
|
|
31
|
+
}
|
|
32
|
+
const crypto = getCrypto();
|
|
33
|
+
const passphraseBytes = new TextEncoder().encode(passphrase);
|
|
34
|
+
const baseKey = await crypto.subtle.importKey("raw", passphraseBytes, "PBKDF2", false, [
|
|
35
|
+
"deriveKey",
|
|
36
|
+
]);
|
|
37
|
+
return crypto.subtle.deriveKey({
|
|
38
|
+
name: "PBKDF2",
|
|
39
|
+
salt: toArrayBuffer(salt),
|
|
40
|
+
iterations: 250_000,
|
|
41
|
+
hash: "SHA-256",
|
|
42
|
+
}, baseKey, { name: "AES-GCM", length: 256 }, false, ["encrypt", "decrypt"]);
|
|
43
|
+
}
|
|
44
|
+
export function toArrayBuffer(bytes) {
|
|
45
|
+
return bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
|
|
46
|
+
}
|
|
47
|
+
export async function sha256Hex(value) {
|
|
48
|
+
const hash = await getCrypto().subtle.digest("SHA-256", new TextEncoder().encode(value));
|
|
49
|
+
return [...new Uint8Array(hash)].map((byte) => byte.toString(16).padStart(2, "0")).join("");
|
|
50
|
+
}
|
|
51
|
+
export async function hashScope(scope) {
|
|
52
|
+
return sha256Hex(scope);
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/crypto/keys.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./constants.js";
|
|
2
|
+
export * from "./types.js";
|
|
3
|
+
export * from "./crypto/index.js";
|
|
4
|
+
export * from "./memory/index.js";
|
|
5
|
+
export * from "./retrieval/index.js";
|
|
6
|
+
export * from "./arkiv/index.js";
|
|
7
|
+
export * from "./storage/index.js";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./constants.js";
|
|
2
|
+
export * from "./types.js";
|
|
3
|
+
export * from "./crypto/index.js";
|
|
4
|
+
export * from "./memory/index.js";
|
|
5
|
+
export * from "./retrieval/index.js";
|
|
6
|
+
export * from "./arkiv/index.js";
|
|
7
|
+
export * from "./storage/index.js";
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { MemoryKind, MemoryRecord, PendingMemoryCandidate, SuggestMemoryInput } from "./schemas.js";
|
|
2
|
+
export declare function classifyMemoryKind(text: string, provided?: MemoryKind): MemoryKind;
|
|
3
|
+
export declare function extractKeywords(text: string, tags?: string[]): string[];
|
|
4
|
+
export declare function summarizeText(text: string): string;
|
|
5
|
+
export declare function compileMemoryCandidate(input: SuggestMemoryInput, createdByAgent?: string): PendingMemoryCandidate;
|
|
6
|
+
export declare function pendingToMemoryRecord(pending: PendingMemoryCandidate, ownerWallet: string): MemoryRecord;
|
|
7
|
+
//# sourceMappingURL=compiler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../src/memory/compiler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EAEZ,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAuBtB,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,UAAU,GAAG,UAAU,CAUlF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE,CAQ3E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIlD;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,kBAAkB,EACzB,cAAc,SAAU,GACvB,sBAAsB,CA6BxB;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,sBAAsB,EAC/B,WAAW,EAAE,MAAM,GAClB,YAAY,CAsCd"}
|