@theagenthealth/agenthealth 0.14.0 → 0.16.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 +8 -2
- package/index.js +1 -1
- package/package.json +1 -1
- package/schemas/configuration.schema.json +274 -0
package/README.md
CHANGED
|
@@ -6,10 +6,10 @@ not supported. All implemented adapters and graph configurations use the same
|
|
|
6
6
|
AHS v1 configuration and result contracts as the CLI.
|
|
7
7
|
|
|
8
8
|
```sh
|
|
9
|
-
npm install @theagenthealth/agenthealth@0.
|
|
9
|
+
npm install @theagenthealth/agenthealth@0.16.0
|
|
10
10
|
```
|
|
11
11
|
|
|
12
|
-
Install and verify CLI **v0.
|
|
12
|
+
Install and verify CLI **v0.16.0** separately using the
|
|
13
13
|
[installation guide](../../docs/installation.md). The SDK never downloads or
|
|
14
14
|
executes binaries at import/install time. A mismatched CLI raises
|
|
15
15
|
`CompatibilityError` before running checks.
|
|
@@ -57,3 +57,9 @@ a CLI/server capability, rather than an SDK HTTP server.
|
|
|
57
57
|
See the [SDK guide](../../docs/javascript-sdk.md),
|
|
58
58
|
[example](../../examples/javascript-sdk/README.md), and
|
|
59
59
|
[Phase 16 impact review](../../docs/phase-16-alignment.md).
|
|
60
|
+
|
|
61
|
+
Published software: v0.16.0. Requires the matching CLI; model/LLM
|
|
62
|
+
configuration is supported through the canonical schema.
|
|
63
|
+
|
|
64
|
+
Native database targets use the matching CLI; fixed SQL queries require explicit
|
|
65
|
+
functional opt-in. Passwords use `database.password_env` references.
|
package/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import { performance } from 'node:perf_hooks';
|
|
|
7
7
|
import Ajv2020 from 'ajv/dist/2020.js';
|
|
8
8
|
import { parseDocument } from 'yaml';
|
|
9
9
|
|
|
10
|
-
export const version = '0.
|
|
10
|
+
export const version = '0.16.0';
|
|
11
11
|
export const healthStates = Object.freeze(['HEALTHY', 'DEGRADED', 'UNHEALTHY', 'UNREACHABLE', 'MISCONFIGURED', 'UNKNOWN']);
|
|
12
12
|
export class AgentHealthError extends Error {
|
|
13
13
|
constructor(message) { super(message); this.name = new.target.name; }
|
package/package.json
CHANGED
|
@@ -183,6 +183,9 @@
|
|
|
183
183
|
"gateway",
|
|
184
184
|
"router"
|
|
185
185
|
]
|
|
186
|
+
},
|
|
187
|
+
"database": {
|
|
188
|
+
"$ref": "#/$defs/DatabaseOptions"
|
|
186
189
|
}
|
|
187
190
|
},
|
|
188
191
|
"required": [
|
|
@@ -625,6 +628,25 @@
|
|
|
625
628
|
}
|
|
626
629
|
}
|
|
627
630
|
}
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"if": {
|
|
634
|
+
"required": [
|
|
635
|
+
"database"
|
|
636
|
+
]
|
|
637
|
+
},
|
|
638
|
+
"then": {
|
|
639
|
+
"properties": {
|
|
640
|
+
"type": {
|
|
641
|
+
"const": "database"
|
|
642
|
+
}
|
|
643
|
+
},
|
|
644
|
+
"not": {
|
|
645
|
+
"required": [
|
|
646
|
+
"auth"
|
|
647
|
+
]
|
|
648
|
+
}
|
|
649
|
+
}
|
|
628
650
|
}
|
|
629
651
|
]
|
|
630
652
|
},
|
|
@@ -750,6 +772,12 @@
|
|
|
750
772
|
"type": "integer",
|
|
751
773
|
"minimum": 1,
|
|
752
774
|
"maximum": 60000
|
|
775
|
+
},
|
|
776
|
+
"model": {
|
|
777
|
+
"$ref": "#/$defs/ModelOptions"
|
|
778
|
+
},
|
|
779
|
+
"database": {
|
|
780
|
+
"$ref": "#/$defs/DatabaseOptions"
|
|
753
781
|
}
|
|
754
782
|
},
|
|
755
783
|
"required": [
|
|
@@ -1192,6 +1220,161 @@
|
|
|
1192
1220
|
}
|
|
1193
1221
|
}
|
|
1194
1222
|
}
|
|
1223
|
+
},
|
|
1224
|
+
{
|
|
1225
|
+
"if": {
|
|
1226
|
+
"required": [
|
|
1227
|
+
"model"
|
|
1228
|
+
]
|
|
1229
|
+
},
|
|
1230
|
+
"then": {
|
|
1231
|
+
"properties": {
|
|
1232
|
+
"type": {
|
|
1233
|
+
"enum": [
|
|
1234
|
+
"model",
|
|
1235
|
+
"llm"
|
|
1236
|
+
]
|
|
1237
|
+
}
|
|
1238
|
+
}
|
|
1239
|
+
}
|
|
1240
|
+
},
|
|
1241
|
+
{
|
|
1242
|
+
"if": {
|
|
1243
|
+
"required": [
|
|
1244
|
+
"model"
|
|
1245
|
+
],
|
|
1246
|
+
"properties": {
|
|
1247
|
+
"model": {
|
|
1248
|
+
"required": [
|
|
1249
|
+
"functional"
|
|
1250
|
+
]
|
|
1251
|
+
}
|
|
1252
|
+
}
|
|
1253
|
+
},
|
|
1254
|
+
"then": {
|
|
1255
|
+
"required": [
|
|
1256
|
+
"checks"
|
|
1257
|
+
],
|
|
1258
|
+
"properties": {
|
|
1259
|
+
"checks": {
|
|
1260
|
+
"contains": {
|
|
1261
|
+
"const": "functional"
|
|
1262
|
+
}
|
|
1263
|
+
}
|
|
1264
|
+
}
|
|
1265
|
+
}
|
|
1266
|
+
},
|
|
1267
|
+
{
|
|
1268
|
+
"if": {
|
|
1269
|
+
"required": [
|
|
1270
|
+
"type",
|
|
1271
|
+
"checks"
|
|
1272
|
+
],
|
|
1273
|
+
"properties": {
|
|
1274
|
+
"type": {
|
|
1275
|
+
"enum": [
|
|
1276
|
+
"model",
|
|
1277
|
+
"llm"
|
|
1278
|
+
]
|
|
1279
|
+
},
|
|
1280
|
+
"checks": {
|
|
1281
|
+
"contains": {
|
|
1282
|
+
"const": "functional"
|
|
1283
|
+
}
|
|
1284
|
+
}
|
|
1285
|
+
}
|
|
1286
|
+
},
|
|
1287
|
+
"then": {
|
|
1288
|
+
"required": [
|
|
1289
|
+
"model"
|
|
1290
|
+
],
|
|
1291
|
+
"properties": {
|
|
1292
|
+
"model": {
|
|
1293
|
+
"required": [
|
|
1294
|
+
"functional"
|
|
1295
|
+
]
|
|
1296
|
+
}
|
|
1297
|
+
}
|
|
1298
|
+
}
|
|
1299
|
+
},
|
|
1300
|
+
{
|
|
1301
|
+
"if": {
|
|
1302
|
+
"required": [
|
|
1303
|
+
"model",
|
|
1304
|
+
"checks"
|
|
1305
|
+
],
|
|
1306
|
+
"properties": {
|
|
1307
|
+
"model": {
|
|
1308
|
+
"required": [
|
|
1309
|
+
"required_models"
|
|
1310
|
+
],
|
|
1311
|
+
"properties": {
|
|
1312
|
+
"required_models": {
|
|
1313
|
+
"minItems": 1
|
|
1314
|
+
}
|
|
1315
|
+
}
|
|
1316
|
+
}
|
|
1317
|
+
}
|
|
1318
|
+
},
|
|
1319
|
+
"then": {
|
|
1320
|
+
"properties": {
|
|
1321
|
+
"checks": {
|
|
1322
|
+
"contains": {
|
|
1323
|
+
"const": "capability"
|
|
1324
|
+
}
|
|
1325
|
+
}
|
|
1326
|
+
}
|
|
1327
|
+
}
|
|
1328
|
+
},
|
|
1329
|
+
{
|
|
1330
|
+
"if": {
|
|
1331
|
+
"required": [
|
|
1332
|
+
"model"
|
|
1333
|
+
],
|
|
1334
|
+
"properties": {
|
|
1335
|
+
"model": {
|
|
1336
|
+
"required": [
|
|
1337
|
+
"api",
|
|
1338
|
+
"functional"
|
|
1339
|
+
],
|
|
1340
|
+
"properties": {
|
|
1341
|
+
"api": {
|
|
1342
|
+
"const": "anthropic"
|
|
1343
|
+
},
|
|
1344
|
+
"functional": {
|
|
1345
|
+
"required": [
|
|
1346
|
+
"token_parameter"
|
|
1347
|
+
],
|
|
1348
|
+
"properties": {
|
|
1349
|
+
"token_parameter": {
|
|
1350
|
+
"const": "max_completion_tokens"
|
|
1351
|
+
}
|
|
1352
|
+
}
|
|
1353
|
+
}
|
|
1354
|
+
}
|
|
1355
|
+
}
|
|
1356
|
+
}
|
|
1357
|
+
},
|
|
1358
|
+
"then": false
|
|
1359
|
+
},
|
|
1360
|
+
{
|
|
1361
|
+
"if": {
|
|
1362
|
+
"required": [
|
|
1363
|
+
"database"
|
|
1364
|
+
]
|
|
1365
|
+
},
|
|
1366
|
+
"then": {
|
|
1367
|
+
"properties": {
|
|
1368
|
+
"type": {
|
|
1369
|
+
"const": "database"
|
|
1370
|
+
}
|
|
1371
|
+
},
|
|
1372
|
+
"not": {
|
|
1373
|
+
"required": [
|
|
1374
|
+
"auth"
|
|
1375
|
+
]
|
|
1376
|
+
}
|
|
1377
|
+
}
|
|
1195
1378
|
}
|
|
1196
1379
|
]
|
|
1197
1380
|
},
|
|
@@ -1670,6 +1853,97 @@
|
|
|
1670
1853
|
"ref"
|
|
1671
1854
|
],
|
|
1672
1855
|
"additionalProperties": false
|
|
1856
|
+
},
|
|
1857
|
+
"ModelOptions": {
|
|
1858
|
+
"type": "object",
|
|
1859
|
+
"additionalProperties": false,
|
|
1860
|
+
"properties": {
|
|
1861
|
+
"api": {
|
|
1862
|
+
"enum": [
|
|
1863
|
+
"",
|
|
1864
|
+
"openai",
|
|
1865
|
+
"anthropic"
|
|
1866
|
+
],
|
|
1867
|
+
"description": "Inference API dialect. Empty selects openai (OpenAI-compatible)."
|
|
1868
|
+
},
|
|
1869
|
+
"required_models": {
|
|
1870
|
+
"type": "array",
|
|
1871
|
+
"uniqueItems": true,
|
|
1872
|
+
"items": {
|
|
1873
|
+
"type": "string",
|
|
1874
|
+
"minLength": 1,
|
|
1875
|
+
"pattern": "\\S"
|
|
1876
|
+
}
|
|
1877
|
+
},
|
|
1878
|
+
"functional": {
|
|
1879
|
+
"$ref": "#/$defs/ModelInference"
|
|
1880
|
+
}
|
|
1881
|
+
}
|
|
1882
|
+
},
|
|
1883
|
+
"ModelInference": {
|
|
1884
|
+
"type": "object",
|
|
1885
|
+
"additionalProperties": false,
|
|
1886
|
+
"required": [
|
|
1887
|
+
"safe",
|
|
1888
|
+
"model",
|
|
1889
|
+
"prompt"
|
|
1890
|
+
],
|
|
1891
|
+
"properties": {
|
|
1892
|
+
"safe": {
|
|
1893
|
+
"const": true
|
|
1894
|
+
},
|
|
1895
|
+
"model": {
|
|
1896
|
+
"type": "string",
|
|
1897
|
+
"minLength": 1,
|
|
1898
|
+
"pattern": "\\S"
|
|
1899
|
+
},
|
|
1900
|
+
"prompt": {
|
|
1901
|
+
"type": "string",
|
|
1902
|
+
"minLength": 1,
|
|
1903
|
+
"maxLength": 4096,
|
|
1904
|
+
"pattern": "\\S",
|
|
1905
|
+
"description": "Go validation additionally limits UTF-8 prompt to 4096 bytes."
|
|
1906
|
+
},
|
|
1907
|
+
"max_output_tokens": {
|
|
1908
|
+
"type": "integer",
|
|
1909
|
+
"minimum": 1,
|
|
1910
|
+
"maximum": 1024,
|
|
1911
|
+
"default": 16
|
|
1912
|
+
},
|
|
1913
|
+
"token_parameter": {
|
|
1914
|
+
"enum": [
|
|
1915
|
+
"",
|
|
1916
|
+
"max_tokens",
|
|
1917
|
+
"max_completion_tokens"
|
|
1918
|
+
],
|
|
1919
|
+
"description": "OpenAI-compatible output limit field; empty selects max_tokens. The anthropic api always uses max_tokens."
|
|
1920
|
+
}
|
|
1921
|
+
}
|
|
1922
|
+
},
|
|
1923
|
+
"DatabaseOptions": {
|
|
1924
|
+
"type": "object",
|
|
1925
|
+
"additionalProperties": false,
|
|
1926
|
+
"properties": {
|
|
1927
|
+
"username": {
|
|
1928
|
+
"type": "string"
|
|
1929
|
+
},
|
|
1930
|
+
"password_env": {
|
|
1931
|
+
"type": "string",
|
|
1932
|
+
"minLength": 1,
|
|
1933
|
+
"pattern": "^[^=\\u0000]+$",
|
|
1934
|
+
"allOf": [
|
|
1935
|
+
{
|
|
1936
|
+
"pattern": "\\S"
|
|
1937
|
+
}
|
|
1938
|
+
]
|
|
1939
|
+
},
|
|
1940
|
+
"tls": {
|
|
1941
|
+
"enum": [
|
|
1942
|
+
"required",
|
|
1943
|
+
"disabled"
|
|
1944
|
+
]
|
|
1945
|
+
}
|
|
1946
|
+
}
|
|
1673
1947
|
}
|
|
1674
1948
|
},
|
|
1675
1949
|
"type": "object",
|