@framers/agentos 0.2.8 → 0.2.10
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/{multi-stage-guardrails → cognitive-pipeline}/index.d.ts +32 -25
- package/dist/cognitive-pipeline/index.d.ts.map +1 -0
- package/dist/{multi-stage-guardrails → cognitive-pipeline}/index.js +28 -21
- package/dist/cognitive-pipeline/index.js.map +1 -0
- package/package.json +5 -5
- package/dist/multi-stage-guardrails/index.d.ts.map +0 -1
- package/dist/multi-stage-guardrails/index.js.map +0 -1
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AgentOS
|
|
2
|
+
* AgentOS CognitivePipeline Module
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* agentos pipeline into one orchestrator. Each stage is independent
|
|
6
|
-
* optional — wire only the stages you need, or compose all four.
|
|
4
|
+
* Smart per-message orchestration. Composes the LLM-as-judge stages of
|
|
5
|
+
* the agentos pipeline into one orchestrator. Each stage is independent
|
|
6
|
+
* and optional — wire only the stages you need, or compose all four.
|
|
7
7
|
*
|
|
8
|
-
* **
|
|
8
|
+
* **What this is NOT:** safety guardrails. CognitivePipeline picks
|
|
9
|
+
* strategies (which architecture per ingest, which retrieval per recall,
|
|
10
|
+
* which reader per read). It does NOT block, refuse, or validate output —
|
|
11
|
+
* those concerns live in `core/guardrails` and the
|
|
12
|
+
* `agentos-ext-grounding-guard` / `agentos-ext-topicality` /
|
|
13
|
+
* `agentos-ext-pii-redaction` extensions.
|
|
14
|
+
*
|
|
15
|
+
* **The three orchestrator stages:**
|
|
9
16
|
*
|
|
10
17
|
* ```
|
|
11
18
|
* Content Query Query
|
|
@@ -21,14 +28,14 @@
|
|
|
21
28
|
* Memory state Retrieved traces Final answer
|
|
22
29
|
* ```
|
|
23
30
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
31
|
+
* Output guardrails (a separate, existing concern) sit downstream of the
|
|
32
|
+
* Read stage's answer to enforce safety and policy.
|
|
26
33
|
*
|
|
27
34
|
* **Why a composition primitive:** each individual router is independently
|
|
28
35
|
* useful and ships with its own classifier + dispatcher + table machinery.
|
|
29
|
-
*
|
|
36
|
+
* CognitivePipeline gives consumers a single object to coordinate the
|
|
30
37
|
* stages without duplicating per-stage wiring. It does NOT add new
|
|
31
|
-
* routing logic — it's a thin facade over the
|
|
38
|
+
* routing logic — it's a thin facade over the stage primitives.
|
|
32
39
|
*
|
|
33
40
|
* The interfaces below ({@link IngestStage}, {@link RecallStage},
|
|
34
41
|
* {@link ReadStage}) are deliberately minimal so consumers can wire any
|
|
@@ -36,11 +43,11 @@
|
|
|
36
43
|
*
|
|
37
44
|
* - The shipping `IngestRouter` / `MemoryRouter` / `ReadRouter` classes
|
|
38
45
|
* each satisfy the corresponding stage interface via thin adapters
|
|
39
|
-
* (see `
|
|
46
|
+
* (see `ingestRouterAsStage` / `memoryRouterAsStage` / `readRouterAsStage`).
|
|
40
47
|
* - Custom implementations (rule-based, ML-driven, mock for tests) can
|
|
41
48
|
* satisfy the same interfaces and slot in.
|
|
42
49
|
*
|
|
43
|
-
* @module @framers/agentos/
|
|
50
|
+
* @module @framers/agentos/cognitive-pipeline
|
|
44
51
|
*/
|
|
45
52
|
/**
|
|
46
53
|
* Generic decision metadata bundled with each stage's result. Stages
|
|
@@ -63,21 +70,21 @@ export interface ReadStageResult<TOutcome> {
|
|
|
63
70
|
readonly readRouterDecision: unknown;
|
|
64
71
|
}
|
|
65
72
|
/**
|
|
66
|
-
* Pluggable input-stage. Wrap an
|
|
73
|
+
* Pluggable input-stage. Wrap an `IngestRouter` or any equivalent
|
|
67
74
|
* implementation that turns content into stored traces.
|
|
68
75
|
*/
|
|
69
76
|
export interface IngestStage {
|
|
70
77
|
ingest(content: string, payload?: unknown): Promise<IngestStageResult>;
|
|
71
78
|
}
|
|
72
79
|
/**
|
|
73
|
-
* Pluggable recall-stage. Wrap a
|
|
80
|
+
* Pluggable recall-stage. Wrap a `MemoryRouter` or any equivalent
|
|
74
81
|
* implementation that turns a query into retrieved traces.
|
|
75
82
|
*/
|
|
76
83
|
export interface RecallStage<TTrace> {
|
|
77
84
|
recall(query: string, payload?: unknown): Promise<RecallStageResult<TTrace>>;
|
|
78
85
|
}
|
|
79
86
|
/**
|
|
80
|
-
* Pluggable read-stage. Wrap a
|
|
87
|
+
* Pluggable read-stage. Wrap a `ReadRouter` or any equivalent
|
|
81
88
|
* implementation that turns a query+evidence pair into a final answer.
|
|
82
89
|
*/
|
|
83
90
|
export interface ReadStage<TTrace, TOutcome> {
|
|
@@ -88,7 +95,7 @@ export interface RecallAndReadResult<TTrace, TOutcome> {
|
|
|
88
95
|
readonly readStage: ReadStageResult<TOutcome>;
|
|
89
96
|
readonly outcome: TOutcome;
|
|
90
97
|
}
|
|
91
|
-
export interface
|
|
98
|
+
export interface CognitivePipelineOptions<TTrace, TOutcome> {
|
|
92
99
|
readonly ingest?: IngestStage;
|
|
93
100
|
readonly recall?: RecallStage<TTrace>;
|
|
94
101
|
readonly read?: ReadStage<TTrace, TOutcome>;
|
|
@@ -102,24 +109,24 @@ export declare class MissingStageError extends Error {
|
|
|
102
109
|
*
|
|
103
110
|
* @example Full pipeline
|
|
104
111
|
* ```ts
|
|
105
|
-
* import {
|
|
106
|
-
* import { ingestRouterAsStage } from '../
|
|
112
|
+
* import { CognitivePipeline } from '../cognitive-pipeline';
|
|
113
|
+
* import { ingestRouterAsStage } from '../cognitive-pipeline';
|
|
107
114
|
*
|
|
108
|
-
* const
|
|
115
|
+
* const pipeline = new CognitivePipeline({
|
|
109
116
|
* ingest: ingestRouterAsStage(myIngestRouter),
|
|
110
117
|
* recall: memoryRouterAsStage(myMemoryRouter),
|
|
111
118
|
* read: readRouterAsStage(myReadRouter),
|
|
112
119
|
* });
|
|
113
120
|
*
|
|
114
|
-
* await
|
|
115
|
-
* const { outcome } = await
|
|
121
|
+
* await pipeline.ingest(newContent);
|
|
122
|
+
* const { outcome } = await pipeline.recallAndRead("what's my latest job?");
|
|
116
123
|
* ```
|
|
117
124
|
*/
|
|
118
|
-
export declare class
|
|
125
|
+
export declare class CognitivePipeline<TTrace, TOutcome> {
|
|
119
126
|
private readonly ingestStage;
|
|
120
127
|
private readonly recallStage;
|
|
121
128
|
private readonly readStage;
|
|
122
|
-
constructor(options:
|
|
129
|
+
constructor(options: CognitivePipelineOptions<TTrace, TOutcome>);
|
|
123
130
|
get hasIngestStage(): boolean;
|
|
124
131
|
get hasRecallStage(): boolean;
|
|
125
132
|
get hasReadStage(): boolean;
|
|
@@ -133,7 +140,7 @@ export declare class MultiStageGuardrails<TTrace, TOutcome> {
|
|
|
133
140
|
recallAndRead(query: string, recallPayload?: unknown, readPayload?: unknown): Promise<RecallAndReadResult<TTrace, TOutcome>>;
|
|
134
141
|
}
|
|
135
142
|
/**
|
|
136
|
-
* Wrap an
|
|
143
|
+
* Wrap an `IngestRouter` as an {@link IngestStage}. The IngestRouter
|
|
137
144
|
* must have been constructed with a dispatcher; otherwise the stage will
|
|
138
145
|
* throw on every call.
|
|
139
146
|
*/
|
|
@@ -150,7 +157,7 @@ export declare function ingestRouterAsStage<TOutcome extends {
|
|
|
150
157
|
}>;
|
|
151
158
|
}): IngestStage;
|
|
152
159
|
/**
|
|
153
|
-
* Wrap a
|
|
160
|
+
* Wrap a `MemoryRouter` as a {@link RecallStage}. The MemoryRouter
|
|
154
161
|
* must have been constructed with a dispatcher.
|
|
155
162
|
*/
|
|
156
163
|
export declare function memoryRouterAsStage<TTrace>(router: {
|
|
@@ -165,7 +172,7 @@ export declare function memoryRouterAsStage<TTrace>(router: {
|
|
|
165
172
|
}>;
|
|
166
173
|
}): RecallStage<TTrace>;
|
|
167
174
|
/**
|
|
168
|
-
* Wrap a
|
|
175
|
+
* Wrap a `ReadRouter` as a {@link ReadStage}. The ReadRouter must
|
|
169
176
|
* have been constructed with a dispatcher.
|
|
170
177
|
*/
|
|
171
178
|
export declare function readRouterAsStage<TTrace extends {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cognitive-pipeline/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* AgentOS
|
|
2
|
+
* AgentOS CognitivePipeline Module
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* agentos pipeline into one orchestrator. Each stage is independent
|
|
6
|
-
* optional — wire only the stages you need, or compose all four.
|
|
4
|
+
* Smart per-message orchestration. Composes the LLM-as-judge stages of
|
|
5
|
+
* the agentos pipeline into one orchestrator. Each stage is independent
|
|
6
|
+
* and optional — wire only the stages you need, or compose all four.
|
|
7
7
|
*
|
|
8
|
-
* **
|
|
8
|
+
* **What this is NOT:** safety guardrails. CognitivePipeline picks
|
|
9
|
+
* strategies (which architecture per ingest, which retrieval per recall,
|
|
10
|
+
* which reader per read). It does NOT block, refuse, or validate output —
|
|
11
|
+
* those concerns live in `core/guardrails` and the
|
|
12
|
+
* `agentos-ext-grounding-guard` / `agentos-ext-topicality` /
|
|
13
|
+
* `agentos-ext-pii-redaction` extensions.
|
|
14
|
+
*
|
|
15
|
+
* **The three orchestrator stages:**
|
|
9
16
|
*
|
|
10
17
|
* ```
|
|
11
18
|
* Content Query Query
|
|
@@ -21,14 +28,14 @@
|
|
|
21
28
|
* Memory state Retrieved traces Final answer
|
|
22
29
|
* ```
|
|
23
30
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
31
|
+
* Output guardrails (a separate, existing concern) sit downstream of the
|
|
32
|
+
* Read stage's answer to enforce safety and policy.
|
|
26
33
|
*
|
|
27
34
|
* **Why a composition primitive:** each individual router is independently
|
|
28
35
|
* useful and ships with its own classifier + dispatcher + table machinery.
|
|
29
|
-
*
|
|
36
|
+
* CognitivePipeline gives consumers a single object to coordinate the
|
|
30
37
|
* stages without duplicating per-stage wiring. It does NOT add new
|
|
31
|
-
* routing logic — it's a thin facade over the
|
|
38
|
+
* routing logic — it's a thin facade over the stage primitives.
|
|
32
39
|
*
|
|
33
40
|
* The interfaces below ({@link IngestStage}, {@link RecallStage},
|
|
34
41
|
* {@link ReadStage}) are deliberately minimal so consumers can wire any
|
|
@@ -36,18 +43,18 @@
|
|
|
36
43
|
*
|
|
37
44
|
* - The shipping `IngestRouter` / `MemoryRouter` / `ReadRouter` classes
|
|
38
45
|
* each satisfy the corresponding stage interface via thin adapters
|
|
39
|
-
* (see `
|
|
46
|
+
* (see `ingestRouterAsStage` / `memoryRouterAsStage` / `readRouterAsStage`).
|
|
40
47
|
* - Custom implementations (rule-based, ML-driven, mock for tests) can
|
|
41
48
|
* satisfy the same interfaces and slot in.
|
|
42
49
|
*
|
|
43
|
-
* @module @framers/agentos/
|
|
50
|
+
* @module @framers/agentos/cognitive-pipeline
|
|
44
51
|
*/
|
|
45
52
|
// ============================================================================
|
|
46
53
|
// Errors
|
|
47
54
|
// ============================================================================
|
|
48
55
|
export class MissingStageError extends Error {
|
|
49
56
|
constructor(stage) {
|
|
50
|
-
super(`
|
|
57
|
+
super(`CognitivePipeline: ${stage} is not configured. ` +
|
|
51
58
|
`Pass it in options at construction.`);
|
|
52
59
|
this.name = 'MissingStageError';
|
|
53
60
|
}
|
|
@@ -61,20 +68,20 @@ export class MissingStageError extends Error {
|
|
|
61
68
|
*
|
|
62
69
|
* @example Full pipeline
|
|
63
70
|
* ```ts
|
|
64
|
-
* import {
|
|
65
|
-
* import { ingestRouterAsStage } from '../
|
|
71
|
+
* import { CognitivePipeline } from '../cognitive-pipeline/index.js';
|
|
72
|
+
* import { ingestRouterAsStage } from '../cognitive-pipeline';
|
|
66
73
|
*
|
|
67
|
-
* const
|
|
74
|
+
* const pipeline = new CognitivePipeline({
|
|
68
75
|
* ingest: ingestRouterAsStage(myIngestRouter),
|
|
69
76
|
* recall: memoryRouterAsStage(myMemoryRouter),
|
|
70
77
|
* read: readRouterAsStage(myReadRouter),
|
|
71
78
|
* });
|
|
72
79
|
*
|
|
73
|
-
* await
|
|
74
|
-
* const { outcome } = await
|
|
80
|
+
* await pipeline.ingest(newContent);
|
|
81
|
+
* const { outcome } = await pipeline.recallAndRead("what's my latest job?");
|
|
75
82
|
* ```
|
|
76
83
|
*/
|
|
77
|
-
export class
|
|
84
|
+
export class CognitivePipeline {
|
|
78
85
|
constructor(options) {
|
|
79
86
|
this.ingestStage = options.ingest ?? null;
|
|
80
87
|
this.recallStage = options.recall ?? null;
|
|
@@ -126,7 +133,7 @@ export class MultiStageGuardrails {
|
|
|
126
133
|
// Adapters: shipping routers → stage interfaces
|
|
127
134
|
// ============================================================================
|
|
128
135
|
/**
|
|
129
|
-
* Wrap an
|
|
136
|
+
* Wrap an `IngestRouter` as an {@link IngestStage}. The IngestRouter
|
|
130
137
|
* must have been constructed with a dispatcher; otherwise the stage will
|
|
131
138
|
* throw on every call.
|
|
132
139
|
*/
|
|
@@ -143,7 +150,7 @@ export function ingestRouterAsStage(router) {
|
|
|
143
150
|
};
|
|
144
151
|
}
|
|
145
152
|
/**
|
|
146
|
-
* Wrap a
|
|
153
|
+
* Wrap a `MemoryRouter` as a {@link RecallStage}. The MemoryRouter
|
|
147
154
|
* must have been constructed with a dispatcher.
|
|
148
155
|
*/
|
|
149
156
|
export function memoryRouterAsStage(router) {
|
|
@@ -159,7 +166,7 @@ export function memoryRouterAsStage(router) {
|
|
|
159
166
|
};
|
|
160
167
|
}
|
|
161
168
|
/**
|
|
162
|
-
* Wrap a
|
|
169
|
+
* Wrap a `ReadRouter` as a {@link ReadStage}. The ReadRouter must
|
|
163
170
|
* have been constructed with a dispatcher.
|
|
164
171
|
*/
|
|
165
172
|
export function readRouterAsStage(router,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cognitive-pipeline/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@framers/agentos",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.10",
|
|
4
4
|
"description": "Modular AgentOS orchestration library",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -273,10 +273,10 @@
|
|
|
273
273
|
"default": "./dist/read-router/index.js",
|
|
274
274
|
"types": "./dist/read-router/index.d.ts"
|
|
275
275
|
},
|
|
276
|
-
"./
|
|
277
|
-
"import": "./dist/
|
|
278
|
-
"default": "./dist/
|
|
279
|
-
"types": "./dist/
|
|
276
|
+
"./cognitive-pipeline": {
|
|
277
|
+
"import": "./dist/cognitive-pipeline/index.js",
|
|
278
|
+
"default": "./dist/cognitive-pipeline/index.js",
|
|
279
|
+
"types": "./dist/cognitive-pipeline/index.d.ts"
|
|
280
280
|
},
|
|
281
281
|
"./memory/index": {
|
|
282
282
|
"import": "./dist/memory/index.js",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/multi-stage-guardrails/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/multi-stage-guardrails/index.ts"],"names":[],"mappings":"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"}
|