@tenphi/akno-client 0.2.0 → 0.4.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 +9 -2
- package/dist/index.d.ts +9 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +36 -17
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@ A thin typed client for a running [Akno](https://github.com/tenphi/akno) service
|
|
|
5
5
|
|
|
6
6
|
It requires Node 22.18 or newer and is portable across operating systems.
|
|
7
7
|
|
|
8
|
-
That is the point of it. A Linux container can reach
|
|
8
|
+
That is the point of it. A Linux container can reach another host over the HTTP door, or a local
|
|
9
9
|
process can reach the Unix socket, and neither one pulls `better-sqlite3` into its build. The knowledge base
|
|
10
10
|
and the index never enter the caller's sandbox, which is also what keeps Akno's single-writer property
|
|
11
11
|
intact.
|
|
@@ -13,7 +13,7 @@ intact.
|
|
|
13
13
|
```ts
|
|
14
14
|
import { connect } from '@tenphi/akno-client';
|
|
15
15
|
|
|
16
|
-
const akno = await connect(); // Uses
|
|
16
|
+
const akno = await connect(); // Uses the platform Akno runtime socket by default.
|
|
17
17
|
const result = await akno.call('recall', { query: 'car insurance renewal' });
|
|
18
18
|
|
|
19
19
|
// A host may conservatively prepare evidence before its own model handles a turn.
|
|
@@ -22,6 +22,13 @@ const context = await akno.context({
|
|
|
22
22
|
query: 'When does the Zephyr QX-100 warranty end?',
|
|
23
23
|
budget: 1200,
|
|
24
24
|
});
|
|
25
|
+
|
|
26
|
+
// HTTP is public read-only on loopback by default. A configured bearer identity
|
|
27
|
+
// grants exactly its server-owned actor and operation set.
|
|
28
|
+
const remote = await connect({
|
|
29
|
+
http: 'memory.vulpine.test:7777',
|
|
30
|
+
token: process.env.AKNO_HTTP_AGENT_TOKEN,
|
|
31
|
+
});
|
|
25
32
|
```
|
|
26
33
|
|
|
27
34
|
Schemas and error codes come from
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AknoOps, type Hello as HelloMessage, type OpInput, type OpName, type OpResult } from '@tenphi/akno-protocol';
|
|
1
|
+
import { type AknoOps, type Hello as HelloMessage, type OpInput, type OpName, type OpResult, type PlatformPathOptions } from '@tenphi/akno-protocol';
|
|
2
2
|
export { isDocumentCard, isDocumentTimelineEvidence, isPageCard, isTimelineEvent, } from '@tenphi/akno-protocol';
|
|
3
3
|
export type { DocumentCard, DocumentTimelineEvidence, PageCard, RecallResult, TimelineEvent, TimelineResult, } from '@tenphi/akno-protocol';
|
|
4
4
|
/**
|
|
@@ -11,25 +11,28 @@ export type { DocumentCard, DocumentTimelineEvidence, PageCard, RecallResult, Ti
|
|
|
11
11
|
* enter the host's build.
|
|
12
12
|
*/
|
|
13
13
|
export interface ConnectOptions {
|
|
14
|
-
/** Unix socket path. Defaults to
|
|
14
|
+
/** Unix socket path. Defaults to Akno's platform runtime location. */
|
|
15
15
|
socket?: string;
|
|
16
16
|
/** `host:port` for a loopback HTTP door instead of a socket. */
|
|
17
17
|
http?: string;
|
|
18
|
+
/** Bearer credential for a server.http_access identity. HTTP only. */
|
|
19
|
+
token?: string;
|
|
18
20
|
timeoutMs?: number;
|
|
19
21
|
/** Fail rather than warn when the server's protocol version differs. */
|
|
20
22
|
strictVersion?: boolean;
|
|
21
23
|
/**
|
|
22
|
-
* Who this connection speaks for. Default `agent`, which is what the gate assumes.
|
|
24
|
+
* Who this Unix-socket connection speaks for. Default `agent`, which is what the gate assumes.
|
|
23
25
|
*
|
|
24
26
|
* A host that mediates between a person and an agent needs both, and can say so per call. The
|
|
25
27
|
* distinction is not cosmetic: `user` is never gated, so a proposal the agent could not write is
|
|
26
|
-
* answered by passing `actor: 'user'` on the replay — the mechanism `akno approve` uses.
|
|
28
|
+
* answered by passing `actor: 'user'` on the replay — the mechanism `akno approve` uses. HTTP
|
|
29
|
+
* instead assigns actor authority from its bearer identity and rejects this option.
|
|
27
30
|
*/
|
|
28
31
|
actor?: 'user' | 'agent' | 'akno';
|
|
29
32
|
}
|
|
30
33
|
export interface AknoClient extends AknoOps {
|
|
31
34
|
readonly hello: HelloMessage;
|
|
32
|
-
/** `actor` overrides
|
|
35
|
+
/** `actor` overrides a Unix socket's default for this call; HTTP rejects actor overrides. */
|
|
33
36
|
call<N extends OpName>(op: N, input: OpInput<N>, options?: {
|
|
34
37
|
actor?: 'user' | 'agent' | 'akno';
|
|
35
38
|
}): Promise<OpResult<N>>;
|
|
@@ -43,7 +46,7 @@ export interface AknoClient extends AknoOps {
|
|
|
43
46
|
command(name: string, input?: unknown): Promise<unknown>;
|
|
44
47
|
close(): Promise<void>;
|
|
45
48
|
}
|
|
46
|
-
export declare function defaultSocketPath(): string;
|
|
49
|
+
export declare function defaultSocketPath(options?: PlatformPathOptions): string;
|
|
47
50
|
export declare function connect(options?: ConnectOptions): Promise<AknoClient>;
|
|
48
51
|
export { PROTOCOL_VERSION, AknoError } from '@tenphi/akno-protocol';
|
|
49
52
|
export type { Card, AknoOps, GraphEdgeRef, GraphInput, GraphNodeRef, GraphOutput, GraphPath, Line, OpName, RecallMode, } from '@tenphi/akno-protocol';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAQL,KAAK,OAAO,EACZ,KAAK,KAAK,IAAI,YAAY,EAC1B,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,UAAU,EACV,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,YAAY,EACZ,wBAAwB,EACxB,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,cAAc,GACf,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;GAQG;AAEH,MAAM,WAAW,cAAc;IAC7B,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,UAAW,SAAQ,OAAO;IACzC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,6FAA6F;IAC7F,IAAI,CAAC,CAAC,SAAS,MAAM,EACnB,EAAE,EAAE,CAAC,EACL,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;KAAE,GAC9C,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,mBAAwB,GAAG,MAAM,CAG3E;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,CAI/E;AA0QD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACpE,YAAY,EACV,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,IAAI,EACJ,MAAM,EACN,UAAU,GACX,MAAM,uBAAuB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import net from 'node:net';
|
|
2
|
-
import
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import { AknoError, Hello, OP_NAMES, PROTOCOL_VERSION, createLineDecoder, encodeLine, } from '@tenphi/akno-protocol';
|
|
2
|
+
import { AknoError, Hello, OP_NAMES, PROTOCOL_VERSION, createLineDecoder, encodeLine, defaultPlatformPaths, } from '@tenphi/akno-protocol';
|
|
5
3
|
// Hosts normally import only the transport package. Re-exporting the guards here lets them
|
|
6
4
|
// consume mixed recall results without adding a second direct dependency.
|
|
7
5
|
export { isDocumentCard, isDocumentTimelineEvidence, isPageCard, isTimelineEvent, } from '@tenphi/akno-protocol';
|
|
8
|
-
export function defaultSocketPath() {
|
|
9
|
-
|
|
6
|
+
export function defaultSocketPath(options = {}) {
|
|
7
|
+
const env = options.env ?? process.env;
|
|
8
|
+
return env.AKNO_SOCKET ?? defaultPlatformPaths({ ...options, env }).socketPath;
|
|
10
9
|
}
|
|
11
10
|
export async function connect(options = {}) {
|
|
12
11
|
return options.http
|
|
@@ -128,38 +127,51 @@ async function connectSocket(socketPath, options) {
|
|
|
128
127
|
* property that makes WAL concurrency safe.
|
|
129
128
|
*/
|
|
130
129
|
async function connectHttp(address, options) {
|
|
130
|
+
if (options.actor) {
|
|
131
|
+
throw new AknoError('forbidden', 'HTTP actors are assigned by the server credential; actor overrides are available only on the Unix socket');
|
|
132
|
+
}
|
|
131
133
|
const base = address.startsWith('http') ? address.replace(/\/+$/, '') : `http://${address}`;
|
|
132
134
|
const timeoutMs = options.timeoutMs ?? 30_000;
|
|
133
|
-
|
|
135
|
+
const authHeaders = options.token
|
|
136
|
+
? { authorization: `Bearer ${options.token}` }
|
|
137
|
+
: {};
|
|
138
|
+
let hello;
|
|
134
139
|
try {
|
|
135
|
-
response = await fetch(`${base}/hello
|
|
140
|
+
const response = await fetch(`${base}/hello`, {
|
|
141
|
+
headers: authHeaders,
|
|
142
|
+
signal: AbortSignal.timeout(timeoutMs),
|
|
143
|
+
});
|
|
144
|
+
const helloBody = (await response.json());
|
|
145
|
+
if (!response.ok) {
|
|
146
|
+
throw AknoError.from(helloBody.error ?? helloBody);
|
|
147
|
+
}
|
|
148
|
+
hello = Hello.parse(helloBody);
|
|
136
149
|
}
|
|
137
|
-
catch (
|
|
138
|
-
throw
|
|
150
|
+
catch (error) {
|
|
151
|
+
throw httpFailure(error, 'handshake');
|
|
139
152
|
}
|
|
140
|
-
const hello = Hello.parse(await response.json());
|
|
141
153
|
assertVersion(hello, options);
|
|
142
154
|
async function call(op, input, callOptions = {}) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
155
|
+
if (callOptions.actor) {
|
|
156
|
+
throw new AknoError('forbidden', 'HTTP actors are assigned by the server credential; use a different credential for another actor');
|
|
157
|
+
}
|
|
146
158
|
try {
|
|
147
159
|
const result = await fetch(`${base}/op/${op}`, {
|
|
148
160
|
method: 'POST',
|
|
149
161
|
headers: {
|
|
150
162
|
'content-type': 'application/json',
|
|
151
|
-
...
|
|
163
|
+
...authHeaders,
|
|
152
164
|
},
|
|
153
165
|
body: JSON.stringify(input ?? {}),
|
|
154
|
-
signal:
|
|
166
|
+
signal: AbortSignal.timeout(timeoutMs),
|
|
155
167
|
});
|
|
156
168
|
const body = (await result.json());
|
|
157
169
|
if (!body.ok)
|
|
158
170
|
throw AknoError.from(body.error);
|
|
159
171
|
return body.result;
|
|
160
172
|
}
|
|
161
|
-
|
|
162
|
-
|
|
173
|
+
catch (error) {
|
|
174
|
+
throw httpFailure(error, op);
|
|
163
175
|
}
|
|
164
176
|
}
|
|
165
177
|
return {
|
|
@@ -175,6 +187,13 @@ async function connectHttp(address, options) {
|
|
|
175
187
|
close: async () => { },
|
|
176
188
|
};
|
|
177
189
|
}
|
|
190
|
+
function httpFailure(error, action) {
|
|
191
|
+
if (error instanceof AknoError)
|
|
192
|
+
return error;
|
|
193
|
+
const name = error instanceof Error ? error.name : '';
|
|
194
|
+
const timedOut = name === 'AbortError' || name === 'TimeoutError';
|
|
195
|
+
return new AknoError('unavailable', timedOut ? `Akno HTTP ${action} timed out` : `Akno HTTP ${action} failed`);
|
|
196
|
+
}
|
|
178
197
|
// ─── Shared ─────────────────────────────────────────────────────────────────
|
|
179
198
|
/** Generated from the registry, so a new op needs no change in this file. */
|
|
180
199
|
function bindOps(call) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tenphi/akno-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Thin typed client for a running Akno service — identical interface to @tenphi/akno-core, no native dependencies",
|
|
5
5
|
"license": "PolyForm-Noncommercial-1.0.0",
|
|
6
6
|
"type": "module",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"dist"
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@tenphi/akno-protocol": "0.
|
|
19
|
+
"@tenphi/akno-protocol": "0.4.0"
|
|
20
20
|
},
|
|
21
21
|
"engines": {
|
|
22
22
|
"node": ">=22.18"
|