agent-policy-kit 0.1.0 → 0.2.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/AGENT_INSTALL.md +9 -5
- package/CHANGELOG.md +40 -0
- package/README.md +21 -4
- package/bin/agent-policy.mjs +25 -10
- package/docs/architecture.md +1 -1
- package/docs/compatibility.md +2 -0
- package/docs/configuration-page.md +12 -6
- package/docs/deployment.md +31 -0
- package/docs/design/2026-11-01-grok-build-support.md +30 -0
- package/docs/development.md +1 -1
- package/docs/installation.md +9 -1
- package/docs/model-catalog.md +44 -36
- package/docs/npm-release.md +4 -2
- package/docs/policy.md +3 -3
- package/docs/releases.md +4 -4
- package/docs/verification.md +23 -2
- package/models/catalog.json +44 -0
- package/package.json +7 -3
- package/policies/balanced.json +23 -0
- package/policies/fast.json +12 -1
- package/policies/quality.json +28 -7
- package/schema/policy.schema.json +98 -0
- package/site/index.html +237 -84
- package/src/detect.mjs +2 -1
- package/src/explicit.mjs +14 -7
- package/src/inspect.mjs +203 -0
- package/src/install.mjs +20 -4
- package/src/native.mjs +8 -4
- package/src/output.mjs +108 -0
- package/src/policy.mjs +3 -2
- package/src/release.mjs +1 -1
- package/src/share.mjs +47 -16
package/docs/policy.md
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
Start with policies/balanced.json or another preset in the selected release. The [JSON Schema](../schema/policy.schema.json) describes data shape; the configuration validator also checks the release catalog's known model/effort compatibility.
|
|
4
4
|
|
|
5
|
-
- schemaVersion1; maxConcurrent is
|
|
6
|
-
- clients contains codex, claude, kimi
|
|
5
|
+
- schemaVersion1; maxConcurrent is the shared fallback, from 1 to 32. Optional clients[tool].maxConcurrent overrides it for one tool. Older policies without overrides keep their shared behavior.
|
|
6
|
+
- clients contains codex, claude, kimi, agy (the technical key for Antigravity) and/or grok (Grok Build).
|
|
7
7
|
- Optional top-level selectedRoles is a nonempty unique array of worker, reviewer, explorer, tester, writer and routine IDs. Omit it for all six roles in the executing release. Only selected roles receive native files and routing instructions.
|
|
8
8
|
- code/light hold default model+effort pairs.
|
|
9
9
|
- Optional roles inside each client overrides each selected role independently. Worker/reviewer/tester otherwise use code; explorer/writer/routine use light. Public presets also contain role-specific overrides.
|
|
10
10
|
- avoidModels is delegation guidance. An explicit page choice removes itself from that avoid list.
|
|
11
11
|
|
|
12
|
-
Effort null means native behavior without an explicit effort override. Codex effort depends on the native model selector. Claude supports low through max as documented per model. Kimi actual aliases must declare the requested non-null effort. Antigravity's role field supports model tiers, with no per-role effort pin.
|
|
12
|
+
Effort null means native behavior without an explicit effort override. Codex effort depends on the native model selector. Claude supports low through max as documented per model. Kimi actual aliases must declare the requested non-null effort. Antigravity's role field supports model tiers, with no per-role effort pin. Grok Build accepts any model ID and always uses effort null.
|
|
13
13
|
|
|
14
14
|
A known model cannot request an effort excluded by the release catalog. Custom IDs can use the client's native level set, subject to actual native availability. Kimi can merge null with one explicit pin for a selected shared alias. Contradictory explicit pins are refused. Unselected role defaults do not require Kimi aliases or acquire pins. A section-wide effort conflicting with mixed default/pinned alias behavior is a prerequisite rather than a silent rewrite.
|
|
15
15
|
|
package/docs/releases.md
CHANGED
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
Inspect the release and preview its plan:
|
|
8
8
|
|
|
9
9
|
```sh
|
|
10
|
-
npx --yes --ignore-scripts --package agent-policy-kit@0.
|
|
11
|
-
npx --yes --ignore-scripts --package agent-policy-kit@0.
|
|
10
|
+
npx --yes --ignore-scripts --package agent-policy-kit@0.2.0 agent-policy release
|
|
11
|
+
npx --yes --ignore-scripts --package agent-policy-kit@0.2.0 agent-policy setup --release
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
Apply explicitly:
|
|
15
15
|
|
|
16
16
|
```sh
|
|
17
|
-
npx --yes --ignore-scripts --package agent-policy-kit@0.
|
|
17
|
+
npx --yes --ignore-scripts --package agent-policy-kit@0.2.0 agent-policy setup --release --preset balanced --apply
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
The package you select supplies both preferences and native templates. --release is a boolean, not another version argument. --preset selects fast/balanced/quality; its identity is stored alongside release/source. The same pattern selects an older compatible release for downgrade. Installing/updating an npm package alone does not change native files. Before publication, use that release's verified .tgz instead of the registry package spec.
|
|
@@ -37,4 +37,4 @@ Current native receipt v4 records the selected subset of six bounded role filena
|
|
|
37
37
|
|
|
38
38
|
A release reproduces declared settings and templates. Provider aliases/tiers can resolve to new models, old model IDs can retire, and account access can change. See [model maintenance](model-updates.md). No runtime updater or model gateway is installed.
|
|
39
39
|
|
|
40
|
-
Read [CHANGELOG](../CHANGELOG.md) for what changed, why, who should update and migration limits. Version 0.1.0
|
|
40
|
+
Read [CHANGELOG](../CHANGELOG.md) for what changed, why, who should update and migration limits. Version 0.1.0 was the first release and 0.2.0 is being prepared; synthetic versions in acceptance tests are not real releases.
|
package/docs/verification.md
CHANGED
|
@@ -1,6 +1,27 @@
|
|
|
1
1
|
# Verification record
|
|
2
2
|
|
|
3
|
-
Configuration
|
|
3
|
+
Configuration checks, native loading and model execution are separate results.
|
|
4
|
+
|
|
5
|
+
## 0.2.0
|
|
6
|
+
|
|
7
|
+
macOS arm64, 2026-11-01.
|
|
8
|
+
|
|
9
|
+
| Layer | Current evidence |
|
|
10
|
+
|---|---|
|
|
11
|
+
| Full Node 26.5.1 suite | PASS: 350/350, including source-denied real-tarball gates, selected-role native generation, Grok Build files under an isolated GROK_HOME, per-tool limits and expanded page commands |
|
|
12
|
+
| Hosted CI | PASS on main 7f8666d: macOS Node 22.13.0 and Ubuntu Node 24 suites plus site-build ([run](https://github.com/automatis-tools/agent-policy-kit/actions/runs/41283600922)) |
|
|
13
|
+
| Two synthetic releases | PASS: the actual 0.2.0 tarball and a synthetic 0.3.0 tarball, A to B to A, mixed applied versions, drift safety and original-user restoration |
|
|
14
|
+
| Page command via npx | PASS: the generated multiline command runs through a real shell and npx with the local tarball; independent Codex 5 and Claude 2 limits and Grok Build values are read back from native files |
|
|
15
|
+
| Preset audit | PASS: an independent review compared every preset, tool and role with the catalog and documentation and found no data defects; wording fixes were applied, and a test keeps the documentation tables in sync |
|
|
16
|
+
| Grok Build discovery | PASS: `grok inspect --json` with Grok Build 1.0.70 lists an `apk-*` agent from an isolated GROK_HOME. Model selection and execution NOT CHECKED |
|
|
17
|
+
| Native Codex/Claude/Kimi/Antigravity loading and provider execution | NOT CHECKED for 0.2.0; no live model tasks used as configuration proof |
|
|
18
|
+
| Browser | The owner reviewed local previews manually; no automated browser run for 0.2.0 |
|
|
19
|
+
| npm packaging | PASS: `npm pack --dry-run` and `npm publish --dry-run` list 42 files; no private evidence or configuration |
|
|
20
|
+
| Current model catalog | Codex 9 selectors, Claude 19 selectors, Kimi 6 preferred aliases, Antigravity CLI 4 tiers, Grok Build 4 model IDs. Account access and model quality are not established by configuration tests. |
|
|
21
|
+
|
|
22
|
+
## 0.1.0
|
|
23
|
+
|
|
24
|
+
macOS arm64, 2026-10-30.
|
|
4
25
|
|
|
5
26
|
| Layer | Current evidence |
|
|
6
27
|
|---|---|
|
|
@@ -21,4 +42,4 @@ Configuration release/page 0.1.0, macOS arm64, 2026-10-30. Configuration checks,
|
|
|
21
42
|
| Hosted macOS/Linux CI | See the public workflow runs linked from the GitHub release; local results above do not establish hosted CI. |
|
|
22
43
|
| Deployment/publication | Public status and downloadable artifacts are recorded in the GitHub release; package checks below concern the reviewed tarball. |
|
|
23
44
|
|
|
24
|
-
|
|
45
|
+
At 0.1.0, the 0.2.0 packages were synthetic test fixtures, not public releases. Browser evidence, disposable homes, raw configuration fixtures and logs stay outside Git/npm. Expanded commands preserve the selected cap and avoid lists; :native round-trips unpinned effort. A 2835-case preset/role/tool matrix produces identical native role files and routing instructions. Real-shell tests preserve colon/@/bracket IDs and prevent pathname expansion. The same pinned command consumes the published npm release. The verified local tarball supports testing before publication.
|
package/models/catalog.json
CHANGED
|
@@ -694,6 +694,50 @@
|
|
|
694
694
|
}
|
|
695
695
|
],
|
|
696
696
|
"note": "Native per-subagent selectors are tiers, not the session model inventory. CLI 1.4.10 parser explicitly accepts inherit/flash_lite/flash/pro, including Flash Lite absent from the shared docs App table. Per-role effort is not exposed by the agent-file schema."
|
|
697
|
+
},
|
|
698
|
+
"grok": {
|
|
699
|
+
"label": "Grok Build",
|
|
700
|
+
"efforts": [],
|
|
701
|
+
"observedClientVersion": "1.0.70",
|
|
702
|
+
"models": [
|
|
703
|
+
{
|
|
704
|
+
"id": "grok-4.7",
|
|
705
|
+
"label": "Grok 4.7",
|
|
706
|
+
"efforts": [],
|
|
707
|
+
"defaultEffort": null,
|
|
708
|
+
"source": "https://docs.x.ai/developers/models",
|
|
709
|
+
"nativeSource": "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md",
|
|
710
|
+
"kind": "model"
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
"id": "grok-4.6",
|
|
714
|
+
"label": "Grok 4.6",
|
|
715
|
+
"efforts": [],
|
|
716
|
+
"defaultEffort": null,
|
|
717
|
+
"source": "https://docs.x.ai/developers/models",
|
|
718
|
+
"nativeSource": "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md",
|
|
719
|
+
"kind": "model"
|
|
720
|
+
},
|
|
721
|
+
{
|
|
722
|
+
"id": "grok-4.5",
|
|
723
|
+
"label": "Grok 4.5",
|
|
724
|
+
"efforts": [],
|
|
725
|
+
"defaultEffort": null,
|
|
726
|
+
"source": "https://docs.x.ai/developers/models",
|
|
727
|
+
"nativeSource": "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md",
|
|
728
|
+
"kind": "model"
|
|
729
|
+
},
|
|
730
|
+
{
|
|
731
|
+
"id": "grok-build-0.1",
|
|
732
|
+
"label": "Grok Build 0.1",
|
|
733
|
+
"efforts": [],
|
|
734
|
+
"defaultEffort": null,
|
|
735
|
+
"source": "https://docs.x.ai/developers/models",
|
|
736
|
+
"nativeSource": "https://github.com/xai-org/grok-build/blob/main/crates/codegen/xai-grok-pager/docs/user-guide/16-subagents.md",
|
|
737
|
+
"kind": "model"
|
|
738
|
+
}
|
|
739
|
+
],
|
|
740
|
+
"note": "Per-subagent models are set in config.toml [subagents.models]; model IDs follow the documented xAI model list and account access varies. Per-role effort is not exposed by the agent-file schema, so subagents use the main session effort. [subagents] max_concurrent is a native cap."
|
|
697
741
|
}
|
|
698
742
|
}
|
|
699
743
|
}
|
package/package.json
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-policy-kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Configure native subagent settings across coding tools, then exit",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
|
-
"author":
|
|
7
|
+
"author": {
|
|
8
|
+
"name": "Mykola Maksymenko",
|
|
9
|
+
"url": "https://www.linkedin.com/in/nick-maximenko/"
|
|
10
|
+
},
|
|
8
11
|
"keywords": [
|
|
9
12
|
"codex",
|
|
10
13
|
"claude-code",
|
|
11
14
|
"kimi",
|
|
12
15
|
"antigravity",
|
|
16
|
+
"grok-build",
|
|
13
17
|
"subagents",
|
|
14
18
|
"configuration",
|
|
15
19
|
"model-settings"
|
|
@@ -57,5 +61,5 @@
|
|
|
57
61
|
"bugs": {
|
|
58
62
|
"url": "https://github.com/automatis-tools/agent-policy-kit/issues"
|
|
59
63
|
},
|
|
60
|
-
"homepage": "https://agent-policy-kit.
|
|
64
|
+
"homepage": "https://agent-policy-kit.trymenow.io/v/0.2.0/"
|
|
61
65
|
}
|
package/policies/balanced.json
CHANGED
|
@@ -69,6 +69,12 @@
|
|
|
69
69
|
"model": "kimi-code/kimi-for-coding",
|
|
70
70
|
"effort": "low"
|
|
71
71
|
},
|
|
72
|
+
"roles": {
|
|
73
|
+
"writer": {
|
|
74
|
+
"model": "kimi-code/k3-256k",
|
|
75
|
+
"effort": "high"
|
|
76
|
+
}
|
|
77
|
+
},
|
|
72
78
|
"avoidModels": []
|
|
73
79
|
},
|
|
74
80
|
"agy": {
|
|
@@ -91,6 +97,23 @@
|
|
|
91
97
|
}
|
|
92
98
|
},
|
|
93
99
|
"avoidModels": []
|
|
100
|
+
},
|
|
101
|
+
"grok": {
|
|
102
|
+
"code": {
|
|
103
|
+
"model": "grok-4.7",
|
|
104
|
+
"effort": null
|
|
105
|
+
},
|
|
106
|
+
"light": {
|
|
107
|
+
"model": "grok-build-0.1",
|
|
108
|
+
"effort": null
|
|
109
|
+
},
|
|
110
|
+
"roles": {
|
|
111
|
+
"writer": {
|
|
112
|
+
"model": "grok-4.7",
|
|
113
|
+
"effort": null
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
"avoidModels": []
|
|
94
117
|
}
|
|
95
118
|
}
|
|
96
119
|
}
|
package/policies/fast.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"maxConcurrent":
|
|
3
|
+
"maxConcurrent": 2,
|
|
4
4
|
"clients": {
|
|
5
5
|
"codex": {
|
|
6
6
|
"code": {
|
|
@@ -65,6 +65,17 @@
|
|
|
65
65
|
"effort": null
|
|
66
66
|
},
|
|
67
67
|
"avoidModels": []
|
|
68
|
+
},
|
|
69
|
+
"grok": {
|
|
70
|
+
"code": {
|
|
71
|
+
"model": "grok-build-0.1",
|
|
72
|
+
"effort": null
|
|
73
|
+
},
|
|
74
|
+
"light": {
|
|
75
|
+
"model": "grok-build-0.1",
|
|
76
|
+
"effort": null
|
|
77
|
+
},
|
|
78
|
+
"avoidModels": []
|
|
68
79
|
}
|
|
69
80
|
}
|
|
70
81
|
}
|
package/policies/quality.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"maxConcurrent":
|
|
3
|
+
"maxConcurrent": 2,
|
|
4
4
|
"clients": {
|
|
5
5
|
"codex": {
|
|
6
6
|
"code": {
|
|
7
|
-
"model": "gpt-6-
|
|
8
|
-
"effort": "
|
|
7
|
+
"model": "gpt-6.1-sol",
|
|
8
|
+
"effort": "high"
|
|
9
9
|
},
|
|
10
10
|
"light": {
|
|
11
11
|
"model": "gpt-6.1-sol",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
},
|
|
26
26
|
"claude": {
|
|
27
27
|
"code": {
|
|
28
|
-
"model": "claude-
|
|
29
|
-
"effort": "
|
|
28
|
+
"model": "claude-opus-5-5",
|
|
29
|
+
"effort": "high"
|
|
30
30
|
},
|
|
31
31
|
"light": {
|
|
32
32
|
"model": "claude-sonnet-5-5",
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
},
|
|
47
47
|
"kimi": {
|
|
48
48
|
"code": {
|
|
49
|
-
"model": "kimi-code/k3
|
|
50
|
-
"effort": "
|
|
49
|
+
"model": "kimi-code/k3",
|
|
50
|
+
"effort": "high"
|
|
51
51
|
},
|
|
52
52
|
"light": {
|
|
53
53
|
"model": "kimi-code/kimi-for-coding",
|
|
@@ -85,6 +85,27 @@
|
|
|
85
85
|
}
|
|
86
86
|
},
|
|
87
87
|
"avoidModels": []
|
|
88
|
+
},
|
|
89
|
+
"grok": {
|
|
90
|
+
"code": {
|
|
91
|
+
"model": "grok-4.7",
|
|
92
|
+
"effort": null
|
|
93
|
+
},
|
|
94
|
+
"light": {
|
|
95
|
+
"model": "grok-build-0.1",
|
|
96
|
+
"effort": null
|
|
97
|
+
},
|
|
98
|
+
"roles": {
|
|
99
|
+
"explorer": {
|
|
100
|
+
"model": "grok-4.7",
|
|
101
|
+
"effort": null
|
|
102
|
+
},
|
|
103
|
+
"writer": {
|
|
104
|
+
"model": "grok-4.7",
|
|
105
|
+
"effort": null
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"avoidModels": []
|
|
88
109
|
}
|
|
89
110
|
}
|
|
90
111
|
}
|
|
@@ -50,6 +50,9 @@
|
|
|
50
50
|
},
|
|
51
51
|
"agy": {
|
|
52
52
|
"$ref": "#/$defs/tierClient"
|
|
53
|
+
},
|
|
54
|
+
"grok": {
|
|
55
|
+
"$ref": "#/$defs/grokClient"
|
|
53
56
|
}
|
|
54
57
|
}
|
|
55
58
|
}
|
|
@@ -151,6 +154,12 @@
|
|
|
151
154
|
"$ref": "#/$defs/profile"
|
|
152
155
|
}
|
|
153
156
|
}
|
|
157
|
+
},
|
|
158
|
+
"maxConcurrent": {
|
|
159
|
+
"type": "integer",
|
|
160
|
+
"minimum": 1,
|
|
161
|
+
"maximum": 32,
|
|
162
|
+
"description": "Overrides the shared maxConcurrent fallback for this tool."
|
|
154
163
|
}
|
|
155
164
|
}
|
|
156
165
|
},
|
|
@@ -200,6 +209,12 @@
|
|
|
200
209
|
"$ref": "#/$defs/tierProfile"
|
|
201
210
|
}
|
|
202
211
|
}
|
|
212
|
+
},
|
|
213
|
+
"maxConcurrent": {
|
|
214
|
+
"type": "integer",
|
|
215
|
+
"minimum": 1,
|
|
216
|
+
"maximum": 32,
|
|
217
|
+
"description": "Overrides the shared maxConcurrent fallback for this tool."
|
|
203
218
|
}
|
|
204
219
|
}
|
|
205
220
|
},
|
|
@@ -281,6 +296,12 @@
|
|
|
281
296
|
"$ref": "#/$defs/kimiProfile"
|
|
282
297
|
}
|
|
283
298
|
}
|
|
299
|
+
},
|
|
300
|
+
"maxConcurrent": {
|
|
301
|
+
"type": "integer",
|
|
302
|
+
"minimum": 1,
|
|
303
|
+
"maximum": 32,
|
|
304
|
+
"description": "Overrides the shared maxConcurrent fallback for this tool."
|
|
284
305
|
}
|
|
285
306
|
}
|
|
286
307
|
},
|
|
@@ -353,6 +374,83 @@
|
|
|
353
374
|
"$ref": "#/$defs/claudeProfile"
|
|
354
375
|
}
|
|
355
376
|
}
|
|
377
|
+
},
|
|
378
|
+
"maxConcurrent": {
|
|
379
|
+
"type": "integer",
|
|
380
|
+
"minimum": 1,
|
|
381
|
+
"maximum": 32,
|
|
382
|
+
"description": "Overrides the shared maxConcurrent fallback for this tool."
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
},
|
|
386
|
+
"grokProfile": {
|
|
387
|
+
"type": "object",
|
|
388
|
+
"additionalProperties": false,
|
|
389
|
+
"required": [
|
|
390
|
+
"model",
|
|
391
|
+
"effort"
|
|
392
|
+
],
|
|
393
|
+
"properties": {
|
|
394
|
+
"model": {
|
|
395
|
+
"$ref": "#/$defs/identifier"
|
|
396
|
+
},
|
|
397
|
+
"effort": {
|
|
398
|
+
"type": "null"
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
},
|
|
402
|
+
"grokClient": {
|
|
403
|
+
"type": "object",
|
|
404
|
+
"additionalProperties": false,
|
|
405
|
+
"required": [
|
|
406
|
+
"code",
|
|
407
|
+
"light",
|
|
408
|
+
"avoidModels"
|
|
409
|
+
],
|
|
410
|
+
"properties": {
|
|
411
|
+
"code": {
|
|
412
|
+
"$ref": "#/$defs/grokProfile"
|
|
413
|
+
},
|
|
414
|
+
"light": {
|
|
415
|
+
"$ref": "#/$defs/grokProfile"
|
|
416
|
+
},
|
|
417
|
+
"avoidModels": {
|
|
418
|
+
"type": "array",
|
|
419
|
+
"maxItems": 32,
|
|
420
|
+
"uniqueItems": true,
|
|
421
|
+
"items": {
|
|
422
|
+
"$ref": "#/$defs/identifier"
|
|
423
|
+
}
|
|
424
|
+
},
|
|
425
|
+
"roles": {
|
|
426
|
+
"type": "object",
|
|
427
|
+
"additionalProperties": false,
|
|
428
|
+
"properties": {
|
|
429
|
+
"worker": {
|
|
430
|
+
"$ref": "#/$defs/grokProfile"
|
|
431
|
+
},
|
|
432
|
+
"reviewer": {
|
|
433
|
+
"$ref": "#/$defs/grokProfile"
|
|
434
|
+
},
|
|
435
|
+
"explorer": {
|
|
436
|
+
"$ref": "#/$defs/grokProfile"
|
|
437
|
+
},
|
|
438
|
+
"routine": {
|
|
439
|
+
"$ref": "#/$defs/grokProfile"
|
|
440
|
+
},
|
|
441
|
+
"tester": {
|
|
442
|
+
"$ref": "#/$defs/grokProfile"
|
|
443
|
+
},
|
|
444
|
+
"writer": {
|
|
445
|
+
"$ref": "#/$defs/grokProfile"
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
},
|
|
449
|
+
"maxConcurrent": {
|
|
450
|
+
"type": "integer",
|
|
451
|
+
"minimum": 1,
|
|
452
|
+
"maximum": 32,
|
|
453
|
+
"description": "Overrides the shared maxConcurrent fallback for this tool."
|
|
356
454
|
}
|
|
357
455
|
}
|
|
358
456
|
}
|