@kindgi/agents 0.1.2 → 0.1.4-rc.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/dist/blocks.d.ts +101 -0
- package/dist/blocks.d.ts.map +1 -0
- package/dist/blocks.js +149 -0
- package/dist/blocks.js.map +1 -0
- package/dist/conversation-binding.d.ts +9 -1
- package/dist/conversation-binding.d.ts.map +1 -1
- package/dist/define.d.ts +17 -2
- package/dist/define.d.ts.map +1 -1
- package/dist/define.js +93 -6
- package/dist/define.js.map +1 -1
- package/dist/guardrails-gate.d.ts +7 -4
- package/dist/guardrails-gate.d.ts.map +1 -1
- package/dist/guardrails-gate.js +5 -2
- package/dist/guardrails-gate.js.map +1 -1
- package/dist/handlers/compose-result.d.ts.map +1 -1
- package/dist/handlers/compose-result.js +3 -0
- package/dist/handlers/compose-result.js.map +1 -1
- package/dist/handlers/context.d.ts +24 -0
- package/dist/handlers/context.d.ts.map +1 -1
- package/dist/handlers/dispatch-tools.d.ts.map +1 -1
- package/dist/handlers/dispatch-tools.js +69 -43
- package/dist/handlers/dispatch-tools.js.map +1 -1
- package/dist/handlers/errors.d.ts +12 -1
- package/dist/handlers/errors.d.ts.map +1 -1
- package/dist/handlers/errors.js.map +1 -1
- package/dist/handlers/evaluate-guardrails.d.ts.map +1 -1
- package/dist/handlers/evaluate-guardrails.js +36 -1
- package/dist/handlers/evaluate-guardrails.js.map +1 -1
- package/dist/handlers/gate-decision.d.ts +62 -0
- package/dist/handlers/gate-decision.d.ts.map +1 -0
- package/dist/handlers/gate-decision.js +55 -0
- package/dist/handlers/gate-decision.js.map +1 -0
- package/dist/handlers/model-call.d.ts +10 -0
- package/dist/handlers/model-call.d.ts.map +1 -1
- package/dist/handlers/model-call.js +120 -34
- package/dist/handlers/model-call.js.map +1 -1
- package/dist/handlers/persist-provenance.d.ts.map +1 -1
- package/dist/handlers/persist-provenance.js +3 -1
- package/dist/handlers/persist-provenance.js.map +1 -1
- package/dist/handlers/persist-user-message.d.ts.map +1 -1
- package/dist/handlers/persist-user-message.js +5 -16
- package/dist/handlers/persist-user-message.js.map +1 -1
- package/dist/handlers/public-types.d.ts +37 -3
- package/dist/handlers/public-types.d.ts.map +1 -1
- package/dist/handlers/rehydrate.d.ts.map +1 -1
- package/dist/handlers/rehydrate.js +91 -1
- package/dist/handlers/rehydrate.js.map +1 -1
- package/dist/handlers/render-prompt.d.ts.map +1 -1
- package/dist/handlers/render-prompt.js +4 -1
- package/dist/handlers/render-prompt.js.map +1 -1
- package/dist/handlers/replay.d.ts +143 -0
- package/dist/handlers/replay.d.ts.map +1 -0
- package/dist/handlers/replay.js +177 -0
- package/dist/handlers/replay.js.map +1 -0
- package/dist/handlers/resolve-blocks.d.ts +32 -0
- package/dist/handlers/resolve-blocks.d.ts.map +1 -0
- package/dist/handlers/resolve-blocks.js +129 -0
- package/dist/handlers/resolve-blocks.js.map +1 -0
- package/dist/handlers/resolve-tools.d.ts +6 -2
- package/dist/handlers/resolve-tools.d.ts.map +1 -1
- package/dist/handlers/resolve-tools.js +59 -27
- package/dist/handlers/resolve-tools.js.map +1 -1
- package/dist/handlers/result-shape.d.ts +7 -0
- package/dist/handlers/result-shape.d.ts.map +1 -1
- package/dist/handlers/result-shape.js.map +1 -1
- package/dist/handlers/run-retrievals.d.ts.map +1 -1
- package/dist/handlers/run-retrievals.js +35 -35
- package/dist/handlers/run-retrievals.js.map +1 -1
- package/dist/handlers/run-snapshot.d.ts.map +1 -1
- package/dist/handlers/run-snapshot.js +1 -0
- package/dist/handlers/run-snapshot.js.map +1 -1
- package/dist/handlers/setup.d.ts +2 -0
- package/dist/handlers/setup.d.ts.map +1 -1
- package/dist/handlers/setup.js +29 -12
- package/dist/handlers/setup.js.map +1 -1
- package/dist/handlers/tool-hitl.d.ts +5 -9
- package/dist/handlers/tool-hitl.d.ts.map +1 -1
- package/dist/handlers/tool-hitl.js +5 -0
- package/dist/handlers/tool-hitl.js.map +1 -1
- package/dist/handlers/turn-environment.d.ts +13 -2
- package/dist/handlers/turn-environment.d.ts.map +1 -1
- package/dist/handlers/turn-environment.js +12 -3
- package/dist/handlers/turn-environment.js.map +1 -1
- package/dist/handlers/turn-provenance.d.ts +67 -0
- package/dist/handlers/turn-provenance.d.ts.map +1 -0
- package/dist/handlers/turn-provenance.js +160 -0
- package/dist/handlers/turn-provenance.js.map +1 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/invoke.d.ts +14 -1
- package/dist/invoke.d.ts.map +1 -1
- package/dist/invoke.js +37 -19
- package/dist/invoke.js.map +1 -1
- package/dist/pins.d.ts +54 -0
- package/dist/pins.d.ts.map +1 -0
- package/dist/pins.js +51 -0
- package/dist/pins.js.map +1 -0
- package/dist/prompt.d.ts +12 -2
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +41 -4
- package/dist/prompt.js.map +1 -1
- package/dist/provenance-emit.d.ts +4 -2
- package/dist/provenance-emit.d.ts.map +1 -1
- package/dist/provenance-emit.js +4 -2
- package/dist/provenance-emit.js.map +1 -1
- package/dist/run-snapshot-binding.d.ts +5 -0
- package/dist/run-snapshot-binding.d.ts.map +1 -1
- package/dist/schema.d.ts +34 -0
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +16 -0
- package/dist/schema.js.map +1 -1
- package/dist/streaming.d.ts +5 -0
- package/dist/streaming.d.ts.map +1 -1
- package/dist/streaming.js.map +1 -1
- package/dist/types.d.ts +65 -2
- package/dist/types.d.ts.map +1 -1
- package/migrations/0003_hesitant_captain_cross.sql +2 -0
- package/migrations/0004_stormy_moondragon.sql +1 -0
- package/migrations/meta/0003_snapshot.json +321 -0
- package/migrations/meta/0004_snapshot.json +327 -0
- package/migrations/meta/_journal.json +14 -0
- package/package.json +15 -15
- package/src/blocks.ts +231 -0
- package/src/conversation-binding.ts +9 -1
- package/src/define.ts +104 -7
- package/src/guardrails-gate.ts +17 -3
- package/src/handlers/compose-result.ts +3 -0
- package/src/handlers/context.ts +24 -0
- package/src/handlers/dispatch-tools.ts +75 -44
- package/src/handlers/errors.ts +13 -0
- package/src/handlers/evaluate-guardrails.ts +41 -1
- package/src/handlers/gate-decision.ts +101 -0
- package/src/handlers/model-call.ts +163 -33
- package/src/handlers/persist-provenance.ts +3 -1
- package/src/handlers/persist-user-message.ts +3 -16
- package/src/handlers/public-types.ts +38 -3
- package/src/handlers/rehydrate.ts +141 -9
- package/src/handlers/render-prompt.ts +13 -7
- package/src/handlers/replay.ts +314 -0
- package/src/handlers/resolve-blocks.ts +188 -0
- package/src/handlers/resolve-tools.ts +76 -28
- package/src/handlers/result-shape.ts +8 -0
- package/src/handlers/run-retrievals.ts +45 -41
- package/src/handlers/run-snapshot.ts +1 -0
- package/src/handlers/setup.ts +30 -22
- package/src/handlers/tool-hitl.ts +6 -10
- package/src/handlers/turn-environment.ts +28 -3
- package/src/handlers/turn-provenance.ts +230 -0
- package/src/index.ts +44 -0
- package/src/invoke.ts +49 -20
- package/src/pins.ts +98 -0
- package/src/prompt.ts +52 -4
- package/src/provenance-emit.ts +4 -1
- package/src/run-snapshot-binding.ts +6 -0
- package/src/schema.ts +16 -0
- package/src/streaming.ts +5 -0
- package/src/types.ts +68 -2
package/dist/blocks.d.ts
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { Result, TenantId } from '@kindgi/types';
|
|
2
|
+
import type { PromptParameter } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Data blocks: versioned content an agent version pins and an expert
|
|
5
|
+
* can edit without code: a prompt, or settings.
|
|
6
|
+
*
|
|
7
|
+
* A block is published like a tool (head plus immutable versions,
|
|
8
|
+
* unregister and reinstate), into a project. An agent references one by
|
|
9
|
+
* range, and the version it runs is pinned when the agent version is
|
|
10
|
+
* published, so an edit reaches an agent only through a new agent
|
|
11
|
+
* version, which is what gets compared, tested and promoted.
|
|
12
|
+
*/
|
|
13
|
+
export declare const BLOCK_KINDS: readonly ["prompt", "settings"];
|
|
14
|
+
export type BlockKind = (typeof BLOCK_KINDS)[number];
|
|
15
|
+
/**
|
|
16
|
+
* A prompt: a Liquid template rendered as an agent's instructions are,
|
|
17
|
+
* with the same declared parameters and auto-injected variables.
|
|
18
|
+
*/
|
|
19
|
+
export interface PromptBlockContent {
|
|
20
|
+
readonly template: string;
|
|
21
|
+
readonly parameters?: readonly PromptParameter[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Settings: a JSON object a tool reads (`ToolContext.settings`) and a
|
|
25
|
+
* prompt template reads (`settings.<block id>.<key>`). With `schema`,
|
|
26
|
+
* `values` must satisfy it, and so must a later version's.
|
|
27
|
+
*/
|
|
28
|
+
export interface SettingsBlockContent {
|
|
29
|
+
readonly values: Readonly<Record<string, unknown>>;
|
|
30
|
+
/** JSON Schema (draft 2020-12) the values must satisfy. */
|
|
31
|
+
readonly schema?: Readonly<Record<string, unknown>>;
|
|
32
|
+
}
|
|
33
|
+
interface BlockBase {
|
|
34
|
+
/** Dotted id, like an agent's (`acme.intake-prompt`). */
|
|
35
|
+
readonly id: string;
|
|
36
|
+
/** Plain `major.minor.patch`. */
|
|
37
|
+
readonly version: string;
|
|
38
|
+
readonly description?: string;
|
|
39
|
+
}
|
|
40
|
+
/** A block version as it's published. */
|
|
41
|
+
export type BlockDefinition = (BlockBase & {
|
|
42
|
+
readonly kind: 'prompt';
|
|
43
|
+
readonly content: PromptBlockContent;
|
|
44
|
+
}) | (BlockBase & {
|
|
45
|
+
readonly kind: 'settings';
|
|
46
|
+
readonly content: SettingsBlockContent;
|
|
47
|
+
});
|
|
48
|
+
export interface BlockIssue {
|
|
49
|
+
readonly path: string;
|
|
50
|
+
readonly message: string;
|
|
51
|
+
}
|
|
52
|
+
export interface InvalidBlock {
|
|
53
|
+
readonly code: 'invalid-block';
|
|
54
|
+
readonly message: string;
|
|
55
|
+
readonly issues: readonly BlockIssue[];
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Validate a block version's definition: its id, plain semver version,
|
|
59
|
+
* kind, and content for that kind. A prompt's template must parse as
|
|
60
|
+
* Liquid and its parameters follow an agent's rules. Settings values
|
|
61
|
+
* must be an object, satisfying `schema` when it's set (and `schema`
|
|
62
|
+
* must compile).
|
|
63
|
+
*/
|
|
64
|
+
export declare function validateBlock(input: unknown): Result<BlockDefinition, InvalidBlock>;
|
|
65
|
+
/**
|
|
66
|
+
* Whether settings `values` satisfy a JSON `schema`: the problems, none
|
|
67
|
+
* when they do. A later version's values are checked against the
|
|
68
|
+
* latest version's schema too, so a tool reading them sees a stable
|
|
69
|
+
* shape.
|
|
70
|
+
*/
|
|
71
|
+
export declare function settingsSchemaIssues(values: unknown, schema: Readonly<Record<string, unknown>>, path?: string): BlockIssue[];
|
|
72
|
+
/**
|
|
73
|
+
* What a model-settings block's values may set: the model-call knobs a
|
|
74
|
+
* turn passes on. Checked when an agent version that references the
|
|
75
|
+
* block (`Agent.modelSettings`) is published.
|
|
76
|
+
*/
|
|
77
|
+
export declare const MODEL_SETTINGS_SCHEMA: Readonly<Record<string, unknown>>;
|
|
78
|
+
/** The model-call knobs of a model-settings block. */
|
|
79
|
+
export interface ModelSettings {
|
|
80
|
+
readonly temperature?: number;
|
|
81
|
+
readonly maxOutputTokens?: number;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Reads data blocks for an agent turn: an exact version (an unregistered
|
|
85
|
+
* one included, for the agent versions that pin it), and a block's
|
|
86
|
+
* active versions (to resolve a range for an agent version with no
|
|
87
|
+
* pins). The runtime supplies it over its block registry.
|
|
88
|
+
*/
|
|
89
|
+
export interface BlockReader {
|
|
90
|
+
getVersion(input: {
|
|
91
|
+
readonly tenantId: TenantId;
|
|
92
|
+
readonly blockId: string;
|
|
93
|
+
readonly version: string;
|
|
94
|
+
}): Promise<BlockDefinition | null>;
|
|
95
|
+
activeVersions(input: {
|
|
96
|
+
readonly tenantId: TenantId;
|
|
97
|
+
readonly blockId: string;
|
|
98
|
+
}): Promise<readonly string[]>;
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
101
|
+
//# sourceMappingURL=blocks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../src/blocks.ts"],"names":[],"mappings":"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"}
|
package/dist/blocks.js
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (C) 2026 Kindgi Inc.
|
|
3
|
+
import { Liquid } from 'liquidjs';
|
|
4
|
+
import { compileInlineSchema } from '@kindgi/schema';
|
|
5
|
+
import { validatePromptParameters } from './define.js';
|
|
6
|
+
/**
|
|
7
|
+
* Data blocks: versioned content an agent version pins and an expert
|
|
8
|
+
* can edit without code: a prompt, or settings.
|
|
9
|
+
*
|
|
10
|
+
* A block is published like a tool (head plus immutable versions,
|
|
11
|
+
* unregister and reinstate), into a project. An agent references one by
|
|
12
|
+
* range, and the version it runs is pinned when the agent version is
|
|
13
|
+
* published, so an edit reaches an agent only through a new agent
|
|
14
|
+
* version, which is what gets compared, tested and promoted.
|
|
15
|
+
*/
|
|
16
|
+
export const BLOCK_KINDS = ['prompt', 'settings'];
|
|
17
|
+
const ID = /^[a-z0-9][a-z0-9-]*(?:\.[a-z0-9][a-z0-9-]*)+$/;
|
|
18
|
+
const VERSION = /^\d+\.\d+\.\d+$/;
|
|
19
|
+
/**
|
|
20
|
+
* Validate a block version's definition: its id, plain semver version,
|
|
21
|
+
* kind, and content for that kind. A prompt's template must parse as
|
|
22
|
+
* Liquid and its parameters follow an agent's rules. Settings values
|
|
23
|
+
* must be an object, satisfying `schema` when it's set (and `schema`
|
|
24
|
+
* must compile).
|
|
25
|
+
*/
|
|
26
|
+
export function validateBlock(input) {
|
|
27
|
+
const issues = [];
|
|
28
|
+
if (input === null || typeof input !== 'object' || Array.isArray(input)) {
|
|
29
|
+
return invalid([{ path: '', message: 'a block must be an object' }]);
|
|
30
|
+
}
|
|
31
|
+
const b = input;
|
|
32
|
+
if (typeof b.id !== 'string' || !ID.test(b.id)) {
|
|
33
|
+
issues.push({
|
|
34
|
+
path: '/id',
|
|
35
|
+
message: 'id must be a dotted lowercase id, e.g. "acme.intake-prompt"',
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if (typeof b.version !== 'string' || !VERSION.test(b.version)) {
|
|
39
|
+
issues.push({ path: '/version', message: 'version must be major.minor.patch, e.g. "1.0.0"' });
|
|
40
|
+
}
|
|
41
|
+
if (b.description !== undefined && typeof b.description !== 'string') {
|
|
42
|
+
issues.push({ path: '/description', message: 'description must be a string' });
|
|
43
|
+
}
|
|
44
|
+
if (b.kind === 'prompt')
|
|
45
|
+
issues.push(...promptIssues(b.content));
|
|
46
|
+
else if (b.kind === 'settings')
|
|
47
|
+
issues.push(...settingsIssues(b.content));
|
|
48
|
+
else
|
|
49
|
+
issues.push({ path: '/kind', message: `kind must be one of: ${BLOCK_KINDS.join(', ')}` });
|
|
50
|
+
if (issues.length > 0)
|
|
51
|
+
return invalid(issues);
|
|
52
|
+
const { id, version, kind, content, description } = b;
|
|
53
|
+
return {
|
|
54
|
+
kind: 'ok',
|
|
55
|
+
value: {
|
|
56
|
+
id,
|
|
57
|
+
version,
|
|
58
|
+
kind,
|
|
59
|
+
content,
|
|
60
|
+
...(description !== undefined && { description }),
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Whether settings `values` satisfy a JSON `schema`: the problems, none
|
|
66
|
+
* when they do. A later version's values are checked against the
|
|
67
|
+
* latest version's schema too, so a tool reading them sees a stable
|
|
68
|
+
* shape.
|
|
69
|
+
*/
|
|
70
|
+
export function settingsSchemaIssues(values, schema, path = '/content/values') {
|
|
71
|
+
const compiled = compileInlineSchema(schema);
|
|
72
|
+
if (compiled.kind === 'err') {
|
|
73
|
+
return [{ path: '/content/schema', message: compiled.error.message }];
|
|
74
|
+
}
|
|
75
|
+
const checked = compiled.value.validate(values);
|
|
76
|
+
if (checked.kind === 'ok')
|
|
77
|
+
return [];
|
|
78
|
+
return checked.error.errors.map((e) => {
|
|
79
|
+
const err = e;
|
|
80
|
+
return { path: `${path}${err.instancePath ?? ''}`, message: err.message ?? 'invalid' };
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
function promptIssues(content) {
|
|
84
|
+
if (content === null || typeof content !== 'object') {
|
|
85
|
+
return [
|
|
86
|
+
{ path: '/content', message: 'a prompt block needs content: { template, parameters? }' },
|
|
87
|
+
];
|
|
88
|
+
}
|
|
89
|
+
const c = content;
|
|
90
|
+
if (typeof c.template !== 'string' || c.template.trim().length === 0) {
|
|
91
|
+
return [{ path: '/content/template', message: 'template must be a non-empty string' }];
|
|
92
|
+
}
|
|
93
|
+
const issues = [];
|
|
94
|
+
try {
|
|
95
|
+
new Liquid().parse(c.template);
|
|
96
|
+
}
|
|
97
|
+
catch (cause) {
|
|
98
|
+
issues.push({
|
|
99
|
+
path: '/content/template',
|
|
100
|
+
message: `template isn't valid Liquid: ${cause instanceof Error ? cause.message : String(cause)}`,
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
if (c.parameters !== undefined && !Array.isArray(c.parameters)) {
|
|
104
|
+
issues.push({ path: '/content/parameters', message: 'parameters must be an array' });
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
issues.push(...validatePromptParameters(c.parameters).map((i) => ({ path: `/content${i.path}`, message: i.message })));
|
|
108
|
+
}
|
|
109
|
+
return issues;
|
|
110
|
+
}
|
|
111
|
+
function settingsIssues(content) {
|
|
112
|
+
if (content === null || typeof content !== 'object') {
|
|
113
|
+
return [{ path: '/content', message: 'a settings block needs content: { values, schema? }' }];
|
|
114
|
+
}
|
|
115
|
+
const c = content;
|
|
116
|
+
if (c.values === null || typeof c.values !== 'object' || Array.isArray(c.values)) {
|
|
117
|
+
return [{ path: '/content/values', message: 'values must be a JSON object' }];
|
|
118
|
+
}
|
|
119
|
+
if (c.schema === undefined)
|
|
120
|
+
return [];
|
|
121
|
+
if (c.schema === null || typeof c.schema !== 'object' || Array.isArray(c.schema)) {
|
|
122
|
+
return [{ path: '/content/schema', message: 'schema must be a JSON Schema object' }];
|
|
123
|
+
}
|
|
124
|
+
return settingsSchemaIssues(c.values, c.schema);
|
|
125
|
+
}
|
|
126
|
+
function invalid(issues) {
|
|
127
|
+
return {
|
|
128
|
+
kind: 'err',
|
|
129
|
+
error: {
|
|
130
|
+
code: 'invalid-block',
|
|
131
|
+
message: `The block is invalid (${issues.length} issue${issues.length === 1 ? '' : 's'})`,
|
|
132
|
+
issues,
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* What a model-settings block's values may set: the model-call knobs a
|
|
138
|
+
* turn passes on. Checked when an agent version that references the
|
|
139
|
+
* block (`Agent.modelSettings`) is published.
|
|
140
|
+
*/
|
|
141
|
+
export const MODEL_SETTINGS_SCHEMA = {
|
|
142
|
+
type: 'object',
|
|
143
|
+
additionalProperties: false,
|
|
144
|
+
properties: {
|
|
145
|
+
temperature: { type: 'number', minimum: 0, maximum: 2 },
|
|
146
|
+
maxOutputTokens: { type: 'integer', minimum: 1 },
|
|
147
|
+
},
|
|
148
|
+
};
|
|
149
|
+
//# sourceMappingURL=blocks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blocks.js","sourceRoot":"","sources":["../src/blocks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RunBinding } from '@kindgi/runtime';
|
|
2
|
-
import type { Result, Semver, TenantId } from '@kindgi/types';
|
|
2
|
+
import type { ListScope, ProjectId, Result, Semver, TenantId } from '@kindgi/types';
|
|
3
3
|
import type { AgentError } from './errors.js';
|
|
4
4
|
import type { AgentId, Conversation, ConversationId, ConversationMessage, MessageRole } from './types.js';
|
|
5
5
|
export interface OpenConversationInput {
|
|
@@ -8,6 +8,8 @@ export interface OpenConversationInput {
|
|
|
8
8
|
readonly agentVersion: Semver;
|
|
9
9
|
readonly title: string;
|
|
10
10
|
readonly participantId?: string;
|
|
11
|
+
/** The project the conversation is in: its turns' project. Lists filter by it. */
|
|
12
|
+
readonly projectId?: ProjectId;
|
|
11
13
|
readonly scope: Readonly<Record<string, unknown>>;
|
|
12
14
|
readonly metadata?: Readonly<Record<string, unknown>>;
|
|
13
15
|
}
|
|
@@ -57,6 +59,12 @@ export interface ConversationPageCursor {
|
|
|
57
59
|
}
|
|
58
60
|
export interface ListConversationsPageInput {
|
|
59
61
|
readonly tenantId: TenantId;
|
|
62
|
+
/**
|
|
63
|
+
* Only one project's conversations, or every project's in an org.
|
|
64
|
+
* Absent: the tenant's. A conversation opened without a project is
|
|
65
|
+
* listed only without a scope.
|
|
66
|
+
*/
|
|
67
|
+
readonly scope?: ListScope;
|
|
60
68
|
readonly agentId?: AgentId;
|
|
61
69
|
/** When set, filter to open (no closedAt) or closed (closedAt set) rows only. */
|
|
62
70
|
readonly status?: 'open' | 'closed';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-binding.d.ts","sourceRoot":"","sources":["../src/conversation-binding.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"conversation-binding.d.ts","sourceRoot":"","sources":["../src/conversation-binding.ts"],"names":[],"mappings":"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"}
|
package/dist/define.d.ts
CHANGED
|
@@ -2,7 +2,11 @@ import { type ToolErrorsSpec } from '@kindgi/policy-contract';
|
|
|
2
2
|
import { type AnySchema } from '@kindgi/schema';
|
|
3
3
|
import type { Result } from '@kindgi/types';
|
|
4
4
|
import type { InvalidAgentError } from './errors.js';
|
|
5
|
-
import type { Agent, ConversationPolicy, PromptParameter, RetrievalIntent, ToolRef, TurnBudget } from './types.js';
|
|
5
|
+
import type { Agent, BlockRef, ConversationPolicy, PromptParameter, PromptRef, RetrievalIntent, ToolRef, TurnBudget } from './types.js';
|
|
6
|
+
type Issue = {
|
|
7
|
+
path: string;
|
|
8
|
+
message: string;
|
|
9
|
+
};
|
|
6
10
|
/**
|
|
7
11
|
* Public API to construct an agent definition. Validates every field,
|
|
8
12
|
* brands ids, and returns a `Result` — no throws.
|
|
@@ -74,8 +78,16 @@ export interface DefineAgentSpec {
|
|
|
74
78
|
* The system prompt. Sent to the model with every turn as the
|
|
75
79
|
* baseline instructions. Load-bearing — this is where you shape
|
|
76
80
|
* the agent's behavior (persona, output format, tool-use policy).
|
|
81
|
+
*
|
|
82
|
+
* Or a prompt block by range (`{ prompt: 'acme.intake-prompt',
|
|
83
|
+
* version: '^1.0.0' }`), whose template and parameters are used
|
|
84
|
+
* instead; then `parameters` stays unset (the block declares them).
|
|
77
85
|
*/
|
|
78
|
-
readonly instructions: string;
|
|
86
|
+
readonly instructions: string | PromptRef;
|
|
87
|
+
/** Settings blocks the agent reads, by range (see `Agent.settings`). */
|
|
88
|
+
readonly settings?: readonly BlockRef[];
|
|
89
|
+
/** A model-settings block, by range (see `Agent.modelSettings`). */
|
|
90
|
+
readonly modelSettings?: BlockRef;
|
|
79
91
|
/**
|
|
80
92
|
* Required capabilities the agent needs from a `ModelProvider`.
|
|
81
93
|
* Typically one entry: `[{ needs: [{ feature: 'tool-use' }] }]`
|
|
@@ -177,4 +189,7 @@ export interface DefineAgentSpec {
|
|
|
177
189
|
/** Free-form tags for catalog filtering. Not interpreted by the runtime. */
|
|
178
190
|
readonly tags?: readonly string[];
|
|
179
191
|
}
|
|
192
|
+
/** An agent's or a prompt block's declared parameters: the problems, none when they're valid. */
|
|
193
|
+
export declare function validatePromptParameters(parameters?: readonly PromptParameter[]): Issue[];
|
|
194
|
+
export {};
|
|
180
195
|
//# sourceMappingURL=define.d.ts.map
|
package/dist/define.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,yBAAyB,CAAC;AACtF,OAAO,EACL,KAAK,SAAS,EAKf,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,yBAAyB,CAAC;AACtF,OAAO,EACL,KAAK,SAAS,EAKf,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EACV,KAAK,EAGL,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,SAAS,EACT,eAAe,EACf,OAAO,EACP,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB,KAAK,KAAK,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,KAAK,EAAE,iBAAiB,CAAC,CA8BnF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;OAQG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,oEAAoE;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC;IAClC;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IAC7C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAC;IAC/C;;;;;;;;OAQG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACjD;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;IACrC;;;;;;OAMG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACjD;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAyKD,iGAAiG;AACjG,wBAAgB,wBAAwB,CAAC,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG,KAAK,EAAE,CA6BzF"}
|
package/dist/define.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Copyright (C) 2026 Kindgi Inc.
|
|
3
3
|
import { validateToolErrorsSpec } from '@kindgi/policy-contract';
|
|
4
4
|
import { compileInlineSchema, isZodSchema, loadZodConverterSync, toJSONSchemaSync, } from '@kindgi/schema';
|
|
5
|
+
import { pickVersion } from '@kindgi/tools';
|
|
5
6
|
/**
|
|
6
7
|
* Public API to construct an agent definition. Validates every field,
|
|
7
8
|
* brands ids, and returns a `Result` — no throws.
|
|
@@ -25,9 +26,10 @@ export function defineAgent(spec) {
|
|
|
25
26
|
const issues = [
|
|
26
27
|
...validateIdentity(spec),
|
|
27
28
|
...validateContent(spec),
|
|
29
|
+
...validateBlockRefs(spec),
|
|
28
30
|
...validateArrays(spec),
|
|
29
31
|
...validateRetrieval(spec),
|
|
30
|
-
...
|
|
32
|
+
...validatePromptParameters(spec.parameters),
|
|
31
33
|
...validateBudget(spec.budget),
|
|
32
34
|
...validateConversationPolicy(spec.conversationPolicy),
|
|
33
35
|
...validateToolErrors(spec.toolErrors),
|
|
@@ -66,8 +68,20 @@ function validateIdentity(spec) {
|
|
|
66
68
|
}
|
|
67
69
|
function validateContent(spec) {
|
|
68
70
|
const out = [];
|
|
69
|
-
if (typeof spec.instructions
|
|
70
|
-
out.push(
|
|
71
|
+
if (typeof spec.instructions === 'object' && spec.instructions !== null) {
|
|
72
|
+
out.push(...blockRefIssues(spec.instructions, '/instructions', 'prompt'));
|
|
73
|
+
if (spec.parameters !== undefined) {
|
|
74
|
+
out.push({
|
|
75
|
+
path: '/parameters',
|
|
76
|
+
message: 'the prompt block declares the parameters: leave parameters unset',
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
else if (typeof spec.instructions !== 'string' || spec.instructions.trim().length === 0) {
|
|
81
|
+
out.push({
|
|
82
|
+
path: '/instructions',
|
|
83
|
+
message: 'instructions must be a non-empty string, or a prompt block { prompt, version }',
|
|
84
|
+
});
|
|
71
85
|
}
|
|
72
86
|
if (!Array.isArray(spec.capabilities) || spec.capabilities.length === 0) {
|
|
73
87
|
out.push({
|
|
@@ -77,6 +91,56 @@ function validateContent(spec) {
|
|
|
77
91
|
}
|
|
78
92
|
return out;
|
|
79
93
|
}
|
|
94
|
+
const BLOCK_ID = /^[a-z0-9][a-z0-9-]*(?:\.[a-z0-9][a-z0-9-]*)+$/;
|
|
95
|
+
/** A block reference: a dotted block id and a valid semver range. */
|
|
96
|
+
function blockRefIssues(ref, path, idKey) {
|
|
97
|
+
if (ref === null || typeof ref !== 'object') {
|
|
98
|
+
return [{ path, message: `must be { ${idKey}, version }` }];
|
|
99
|
+
}
|
|
100
|
+
const r = ref;
|
|
101
|
+
const out = [];
|
|
102
|
+
if (typeof r[idKey] !== 'string' || !BLOCK_ID.test(r[idKey])) {
|
|
103
|
+
out.push({
|
|
104
|
+
path: `${path}/${idKey}`,
|
|
105
|
+
message: 'must be a dotted lowercase block id, e.g. "acme.weights"',
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
if (typeof r.version !== 'string' || pickVersion([], r.version).kind === 'invalid-range') {
|
|
109
|
+
out.push({
|
|
110
|
+
path: `${path}/version`,
|
|
111
|
+
message: 'must be a semver range, e.g. "^1.0.0" or "1.2.0"',
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
return out;
|
|
115
|
+
}
|
|
116
|
+
/** Settings and model-settings references: valid, and each block named once. */
|
|
117
|
+
function validateBlockRefs(spec) {
|
|
118
|
+
const out = [];
|
|
119
|
+
const seen = new Set();
|
|
120
|
+
const once = (id, path) => {
|
|
121
|
+
if (typeof id !== 'string')
|
|
122
|
+
return;
|
|
123
|
+
if (seen.has(id))
|
|
124
|
+
out.push({ path, message: `settings block "${id}" is referenced twice` });
|
|
125
|
+
seen.add(id);
|
|
126
|
+
};
|
|
127
|
+
if (spec.settings !== undefined) {
|
|
128
|
+
if (!Array.isArray(spec.settings)) {
|
|
129
|
+
out.push({ path: '/settings', message: 'settings must be an array of { id, version }' });
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
spec.settings.forEach((ref, i) => {
|
|
133
|
+
out.push(...blockRefIssues(ref, `/settings/${i}`, 'id'));
|
|
134
|
+
once(ref.id, `/settings/${i}/id`);
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
if (spec.modelSettings !== undefined) {
|
|
139
|
+
out.push(...blockRefIssues(spec.modelSettings, '/modelSettings', 'id'));
|
|
140
|
+
once(spec.modelSettings.id, '/modelSettings/id');
|
|
141
|
+
}
|
|
142
|
+
return out;
|
|
143
|
+
}
|
|
80
144
|
function validateArrays(spec) {
|
|
81
145
|
const out = [];
|
|
82
146
|
if (!Array.isArray(spec.tools)) {
|
|
@@ -144,8 +208,9 @@ function validateIntent(intent, i) {
|
|
|
144
208
|
return out;
|
|
145
209
|
}
|
|
146
210
|
const VALID_PARAM_TYPES = new Set(['string', 'number', 'boolean', 'date']);
|
|
147
|
-
const AUTO_INJECTED_NAMES = new Set(['today', 'now', 'agent', 'conversation']);
|
|
148
|
-
|
|
211
|
+
const AUTO_INJECTED_NAMES = new Set(['today', 'now', 'agent', 'conversation', 'settings']);
|
|
212
|
+
/** An agent's or a prompt block's declared parameters: the problems, none when they're valid. */
|
|
213
|
+
export function validatePromptParameters(parameters) {
|
|
149
214
|
if (parameters === undefined)
|
|
150
215
|
return [];
|
|
151
216
|
const out = [];
|
|
@@ -246,6 +311,7 @@ function validateConversationPolicy(policy) {
|
|
|
246
311
|
message: 'hitl.timeoutMs must be a positive integer (ms)',
|
|
247
312
|
});
|
|
248
313
|
}
|
|
314
|
+
out.push(...validateOnTimeout(h.onTimeout));
|
|
249
315
|
const ROLES = new Set(['standard', 'senior', 'admin']);
|
|
250
316
|
if (h.defaultReviewerRole !== undefined &&
|
|
251
317
|
!ROLES.has(h.defaultReviewerRole)) {
|
|
@@ -283,6 +349,25 @@ function validateConversationPolicy(policy) {
|
|
|
283
349
|
}
|
|
284
350
|
return out;
|
|
285
351
|
}
|
|
352
|
+
/**
|
|
353
|
+
* `hitl.onTimeout`: only `'escalate'`, what the runtime does when an
|
|
354
|
+
* approval's time runs out. `'auto-approve'` / `'auto-reject'` aren't
|
|
355
|
+
* implemented, so they're refused instead of accepted and ignored.
|
|
356
|
+
*/
|
|
357
|
+
function validateOnTimeout(onTimeout) {
|
|
358
|
+
if (onTimeout === undefined || onTimeout === 'escalate')
|
|
359
|
+
return [];
|
|
360
|
+
const path = '/conversationPolicy/hitl/onTimeout';
|
|
361
|
+
if (onTimeout === 'auto-approve' || onTimeout === 'auto-reject') {
|
|
362
|
+
return [
|
|
363
|
+
{
|
|
364
|
+
path,
|
|
365
|
+
message: `hitl.onTimeout '${onTimeout}' isn't supported: an approval that times out escalates one reviewer tier, and at admin it expires (the turn fails with hitl-cancelled). Use 'escalate', or leave it out.`,
|
|
366
|
+
},
|
|
367
|
+
];
|
|
368
|
+
}
|
|
369
|
+
return [{ path, message: "hitl.onTimeout must be 'escalate'" }];
|
|
370
|
+
}
|
|
286
371
|
/** The output spec in its wire form: JSON Schema that compiles, and a valid repair count. */
|
|
287
372
|
function resolveOutput(output) {
|
|
288
373
|
if (output === undefined)
|
|
@@ -334,7 +419,9 @@ function buildAgent(spec, output) {
|
|
|
334
419
|
version: spec.version,
|
|
335
420
|
name: spec.name,
|
|
336
421
|
...(spec.description !== undefined && { description: spec.description }),
|
|
337
|
-
instructions: spec.instructions,
|
|
422
|
+
instructions: typeof spec.instructions === 'string' ? spec.instructions : { ...spec.instructions },
|
|
423
|
+
...(spec.settings !== undefined && { settings: spec.settings.map((r) => ({ ...r })) }),
|
|
424
|
+
...(spec.modelSettings !== undefined && { modelSettings: { ...spec.modelSettings } }),
|
|
338
425
|
capabilities: spec.capabilities.map((c) => ({ ...c })),
|
|
339
426
|
tools: [...spec.tools],
|
|
340
427
|
retrieval: spec.retrieval.map((r) => ({ ...r })),
|
package/dist/define.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { ProviderRegistry, TenantPolicy } from '@kindgi/capabilities';
|
|
1
|
+
import type { ProviderRegistry, TenantPolicy, UsageSink } from '@kindgi/capabilities';
|
|
2
2
|
import type { ComplianceProvider } from '@kindgi/compliance';
|
|
3
3
|
import { type CheckRegistry, type EvaluationOutcome, type EvaluationResult, type Guardrail, type RunTrace } from '@kindgi/guardrails';
|
|
4
|
-
import type { ProjectId, Result, RunId, TenantId } from '@kindgi/types';
|
|
4
|
+
import type { OrgId, ProjectId, Result, RunId, TenantId } from '@kindgi/types';
|
|
5
5
|
import type { Agent, ConversationId, ConversationMessage } from './types.js';
|
|
6
6
|
/**
|
|
7
7
|
* Turn usage snapshot passed into `buildRunTrace`. Local mirror of
|
|
@@ -48,6 +48,8 @@ export declare function buildRunTrace(input: {
|
|
|
48
48
|
readonly tenantId: TenantId;
|
|
49
49
|
/** Lets the engine record compliance evidence for a failed check. */
|
|
50
50
|
readonly projectId: ProjectId;
|
|
51
|
+
/** The project's org, when it has one. */
|
|
52
|
+
readonly orgId?: OrgId;
|
|
51
53
|
readonly conversationId: ConversationId;
|
|
52
54
|
/** 1-based number of this turn in the conversation. */
|
|
53
55
|
readonly turnNumber: number;
|
|
@@ -77,9 +79,10 @@ export declare function resolveGuardrails(agent: Agent, bindings: GuardrailsBind
|
|
|
77
79
|
* doesn't halt on its own. `tenantPolicy` (the policy the turn was
|
|
78
80
|
* routed under) also governs which models llm-judge guardrails may use;
|
|
79
81
|
* `abortSignal` (the turn's) reaches every check, so a slow judge or
|
|
80
|
-
* pack check stops when the turn does.
|
|
82
|
+
* pack check stops when the turn does. `usage` (the turn's sink) records
|
|
83
|
+
* every llm-judge call, as the turn's own model calls are.
|
|
81
84
|
*/
|
|
82
|
-
export declare function evaluateGate(guardrails: readonly Guardrail[], trace: RunTrace, bindings: GuardrailsBindings, tenantPolicy?: TenantPolicy, abortSignal?: AbortSignal): Promise<readonly EvaluationOutcome[]>;
|
|
85
|
+
export declare function evaluateGate(guardrails: readonly Guardrail[], trace: RunTrace, bindings: GuardrailsBindings, tenantPolicy?: TenantPolicy, abortSignal?: AbortSignal, usage?: UsageSink): Promise<readonly EvaluationOutcome[]>;
|
|
83
86
|
/**
|
|
84
87
|
* Sort evaluation outcomes by the failed guardrail's action. `halt` is
|
|
85
88
|
* blocking — the turn fails with `guardrail-violation`. `log-only` and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrails-gate.d.ts","sourceRoot":"","sources":["../src/guardrails-gate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"guardrails-gate.d.ts","sourceRoot":"","sources":["../src/guardrails-gate.ts"],"names":[],"mappings":"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"}
|