@raishin/vanguard-frontier-agentic 3.1.1 → 3.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.
@@ -0,0 +1,371 @@
1
+ {
2
+ "manifest_version": 1,
3
+ "description": "Per-harness model and reasoning-effort policy for agent harness variants. Managed by scripts/model-policy.mjs (vfa-tui Model Policy view or CLI). 'auto' omits the field so the harness runtime default applies. Precedence: agent > role > provider > all.",
4
+ "defaults": {
5
+ "model": "auto",
6
+ "reasoning_effort": "auto"
7
+ },
8
+ "rules": [
9
+ {
10
+ "scope": "all",
11
+ "harness": "codex",
12
+ "model": "gpt-5.4",
13
+ "reasoning_effort": "high"
14
+ },
15
+ {
16
+ "scope": "provider:dotnet",
17
+ "harness": "codex",
18
+ "model": "gpt-5.5"
19
+ },
20
+ {
21
+ "scope": "provider:generic",
22
+ "harness": "codex",
23
+ "model": "gpt-5.5"
24
+ },
25
+ {
26
+ "scope": "provider:hr",
27
+ "harness": "codex",
28
+ "model": "gpt-5.5"
29
+ },
30
+ {
31
+ "scope": "provider:legal",
32
+ "harness": "codex",
33
+ "model": "gpt-5.5"
34
+ },
35
+ {
36
+ "scope": "provider:netsuite",
37
+ "harness": "codex",
38
+ "model": "gpt-5.5"
39
+ },
40
+ {
41
+ "scope": "provider:salesforce",
42
+ "harness": "codex",
43
+ "model": "gpt-5.5"
44
+ },
45
+ {
46
+ "scope": "agent:nextjs-specialist-agent",
47
+ "harness": "codex",
48
+ "model": "gpt-5.5"
49
+ },
50
+ {
51
+ "scope": "agent:oci-cloud-guard-responder-agent",
52
+ "harness": "codex",
53
+ "reasoning_effort": "medium"
54
+ },
55
+ {
56
+ "scope": "agent:oci-compute-instance-agent-operator-agent",
57
+ "harness": "codex",
58
+ "reasoning_effort": "medium"
59
+ },
60
+ {
61
+ "scope": "agent:oci-compute-platform-operator-agent",
62
+ "harness": "codex",
63
+ "reasoning_effort": "medium"
64
+ },
65
+ {
66
+ "scope": "agent:oci-cost-finops-analyst-agent",
67
+ "harness": "codex",
68
+ "reasoning_effort": "medium"
69
+ },
70
+ {
71
+ "scope": "agent:oci-dbtools-sql-analyst-agent",
72
+ "harness": "codex",
73
+ "reasoning_effort": "medium"
74
+ },
75
+ {
76
+ "scope": "agent:oci-devops-container-platform-engineer-agent",
77
+ "harness": "codex",
78
+ "reasoning_effort": "medium"
79
+ },
80
+ {
81
+ "scope": "agent:oci-fusion-apps-environment-operator-agent",
82
+ "harness": "codex",
83
+ "reasoning_effort": "medium"
84
+ },
85
+ {
86
+ "scope": "agent:oci-goldengate-replication-operator-agent",
87
+ "harness": "codex",
88
+ "reasoning_effort": "medium"
89
+ },
90
+ {
91
+ "scope": "agent:oci-iot-digital-twin-engineer-agent",
92
+ "harness": "codex",
93
+ "reasoning_effort": "medium"
94
+ },
95
+ {
96
+ "scope": "agent:oci-limits-capacity-planner-agent",
97
+ "harness": "codex",
98
+ "reasoning_effort": "medium"
99
+ },
100
+ {
101
+ "scope": "agent:oci-load-balancer-traffic-engineer-agent",
102
+ "harness": "codex",
103
+ "reasoning_effort": "medium"
104
+ },
105
+ {
106
+ "scope": "agent:oci-mysql-heatwave-ai-specialist-agent",
107
+ "harness": "codex",
108
+ "reasoning_effort": "medium"
109
+ },
110
+ {
111
+ "scope": "agent:oci-observability-incident-responder-agent",
112
+ "harness": "codex",
113
+ "reasoning_effort": "medium"
114
+ },
115
+ {
116
+ "scope": "agent:oci-recovery-service-operator-agent",
117
+ "harness": "codex",
118
+ "reasoning_effort": "medium"
119
+ },
120
+ {
121
+ "scope": "agent:oci-registry-artifact-governor-agent",
122
+ "harness": "codex",
123
+ "reasoning_effort": "medium"
124
+ },
125
+ {
126
+ "scope": "agent:oci-resource-search-inventory-analyst-agent",
127
+ "harness": "codex",
128
+ "reasoning_effort": "medium"
129
+ },
130
+ {
131
+ "scope": "agent:oci-storage-backup-steward-agent",
132
+ "harness": "codex",
133
+ "reasoning_effort": "medium"
134
+ },
135
+ {
136
+ "scope": "agent:oci-support-incident-coordinator-agent",
137
+ "harness": "codex",
138
+ "reasoning_effort": "medium"
139
+ },
140
+ {
141
+ "scope": "agent:svelte-sveltekit-specialist-agent",
142
+ "harness": "codex",
143
+ "model": "gpt-5.5"
144
+ },
145
+ {
146
+ "scope": "provider:aws",
147
+ "harness": "cursor",
148
+ "model": "inherit"
149
+ },
150
+ {
151
+ "scope": "provider:databricks",
152
+ "harness": "cursor",
153
+ "model": "inherit"
154
+ },
155
+ {
156
+ "scope": "provider:frontend",
157
+ "harness": "cursor",
158
+ "model": "inherit"
159
+ },
160
+ {
161
+ "scope": "provider:microsoft",
162
+ "harness": "cursor",
163
+ "model": "inherit"
164
+ },
165
+ {
166
+ "scope": "provider:oci",
167
+ "harness": "cursor",
168
+ "model": "inherit"
169
+ },
170
+ {
171
+ "scope": "provider:snowflake",
172
+ "harness": "cursor",
173
+ "model": "inherit"
174
+ },
175
+ {
176
+ "scope": "provider:terraform",
177
+ "harness": "cursor",
178
+ "model": "inherit"
179
+ },
180
+ {
181
+ "scope": "agent:aws-live-deployment-guarded-operator-agent",
182
+ "harness": "cursor",
183
+ "model": "auto"
184
+ },
185
+ {
186
+ "scope": "agent:aws-live-ecs-rollout-guard-agent",
187
+ "harness": "cursor",
188
+ "model": "auto"
189
+ },
190
+ {
191
+ "scope": "agent:aws-live-iac-change-guard-agent",
192
+ "harness": "cursor",
193
+ "model": "auto"
194
+ },
195
+ {
196
+ "scope": "agent:aws-live-pipeline-approval-operator-agent",
197
+ "harness": "cursor",
198
+ "model": "auto"
199
+ },
200
+ {
201
+ "scope": "agent:aws-live-serverless-release-guard-agent",
202
+ "harness": "cursor",
203
+ "model": "auto"
204
+ },
205
+ {
206
+ "scope": "agent:aws-private-ca-issuer-review-agent",
207
+ "harness": "cursor",
208
+ "model": "auto"
209
+ },
210
+ {
211
+ "scope": "agent:aws-waf-cost-optimization-review-agent",
212
+ "harness": "cursor",
213
+ "model": "auto"
214
+ },
215
+ {
216
+ "scope": "agent:aws-waf-reliability-review-agent",
217
+ "harness": "cursor",
218
+ "model": "auto"
219
+ },
220
+ {
221
+ "scope": "agent:aws-waf-security-review-agent",
222
+ "harness": "cursor",
223
+ "model": "auto"
224
+ },
225
+ {
226
+ "scope": "agent:azure-ai-foundry-ops-governor-agent",
227
+ "harness": "cursor",
228
+ "model": "inherit"
229
+ },
230
+ {
231
+ "scope": "agent:azure-aks-platform-operator-agent",
232
+ "harness": "cursor",
233
+ "model": "inherit"
234
+ },
235
+ {
236
+ "scope": "agent:azure-app-service-production-readiness-agent",
237
+ "harness": "cursor",
238
+ "model": "inherit"
239
+ },
240
+ {
241
+ "scope": "agent:azure-cosmosdb-application-developer-agent",
242
+ "harness": "cursor",
243
+ "model": "inherit"
244
+ },
245
+ {
246
+ "scope": "agent:azure-cosmosdb-performance-investigator-agent",
247
+ "harness": "cursor",
248
+ "model": "inherit"
249
+ },
250
+ {
251
+ "scope": "agent:azure-cosmosdb-platform-operator-agent",
252
+ "harness": "cursor",
253
+ "model": "inherit"
254
+ },
255
+ {
256
+ "scope": "agent:azure-cost-estimation-review-agent",
257
+ "harness": "cursor",
258
+ "model": "inherit"
259
+ },
260
+ {
261
+ "scope": "agent:azure-cost-optimization-governor-agent",
262
+ "harness": "cursor",
263
+ "model": "inherit"
264
+ },
265
+ {
266
+ "scope": "agent:azure-entra-id-specialist-agent",
267
+ "harness": "cursor",
268
+ "model": "inherit"
269
+ },
270
+ {
271
+ "scope": "agent:azure-governance-policy-guardrails-agent",
272
+ "harness": "cursor",
273
+ "model": "inherit"
274
+ },
275
+ {
276
+ "scope": "agent:d365-live-record-field-update-guard-agent",
277
+ "harness": "cursor",
278
+ "model": "auto"
279
+ },
280
+ {
281
+ "scope": "agent:d365-live-security-role-guard-agent",
282
+ "harness": "cursor",
283
+ "model": "auto"
284
+ },
285
+ {
286
+ "scope": "agent:databricks-live-unity-catalog-grant-guard-at-azure-agent",
287
+ "harness": "cursor",
288
+ "model": "auto"
289
+ },
290
+ {
291
+ "scope": "agent:kubernetes-live-rbac-mutation-guard-agent",
292
+ "harness": "cursor",
293
+ "model": "inherit"
294
+ },
295
+ {
296
+ "scope": "agent:kubernetes-rbac-review-agent",
297
+ "harness": "cursor",
298
+ "model": "inherit"
299
+ },
300
+ {
301
+ "scope": "agent:m365-live-identity-posture-guard-agent",
302
+ "harness": "cursor",
303
+ "model": "auto"
304
+ },
305
+ {
306
+ "scope": "agent:m365-live-sensitivity-label-apply-guard-agent",
307
+ "harness": "cursor",
308
+ "model": "auto"
309
+ },
310
+ {
311
+ "scope": "agent:nvidia-maestro-agent",
312
+ "harness": "cursor",
313
+ "model": "inherit"
314
+ },
315
+ {
316
+ "scope": "agent:oci-certificates-issuer-review-agent",
317
+ "harness": "cursor",
318
+ "model": "auto"
319
+ },
320
+ {
321
+ "scope": "agent:oci-live-autonomous-db-lifecycle-guard-agent",
322
+ "harness": "cursor",
323
+ "model": "auto"
324
+ },
325
+ {
326
+ "scope": "agent:oci-live-cost-budget-runaway-guard-agent",
327
+ "harness": "cursor",
328
+ "model": "auto"
329
+ },
330
+ {
331
+ "scope": "agent:oci-live-iam-policy-compartment-guard-agent",
332
+ "harness": "cursor",
333
+ "model": "auto"
334
+ },
335
+ {
336
+ "scope": "agent:oci-live-oke-rollout-guard-agent",
337
+ "harness": "cursor",
338
+ "model": "auto"
339
+ },
340
+ {
341
+ "scope": "agent:oci-live-resource-manager-stack-guard-agent",
342
+ "harness": "cursor",
343
+ "model": "auto"
344
+ },
345
+ {
346
+ "scope": "agent:oci-live-vault-key-destruction-guard-agent",
347
+ "harness": "cursor",
348
+ "model": "auto"
349
+ },
350
+ {
351
+ "scope": "agent:oci-waf-cost-optimization-review-agent",
352
+ "harness": "cursor",
353
+ "model": "auto"
354
+ },
355
+ {
356
+ "scope": "agent:oci-waf-reliability-review-agent",
357
+ "harness": "cursor",
358
+ "model": "auto"
359
+ },
360
+ {
361
+ "scope": "agent:oci-waf-security-review-agent",
362
+ "harness": "cursor",
363
+ "model": "auto"
364
+ },
365
+ {
366
+ "scope": "agent:snowflake-live-rbac-grant-guard-at-azure-agent",
367
+ "harness": "cursor",
368
+ "model": "auto"
369
+ }
370
+ ]
371
+ }
@@ -0,0 +1,134 @@
1
+ {
2
+ "manifest_version": 1,
3
+ "description": "Verified model-name and reasoning-effort capability matrix per harness. scripts/model-policy.mjs fails closed on model names and reasoning efforts not covered here, so a policy can never project a value that would 404 (OpenAI: HTTP 404 invalid_request_error/model_not_found; OpenRouter: HTTP 404) or be silently dropped at request time. Namespaces are evaluated in order; first 'match' wins. Human-readable matrix: docs/model-policy-matrix.md. Refresh workflow: .claude/skills/model-registry-refresh/SKILL.md.",
4
+ "last_refreshed": "2026-07-10",
5
+ "harnesses": {
6
+ "codex": {
7
+ "reasoning_key": "model_reasoning_effort",
8
+ "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"],
9
+ "reasoning_note": "Codex validates effort at runtime against each model's advertised supportedReasoningEfforts (model/list); the registry narrows per model family below. o-series models predate none/minimal/xhigh.",
10
+ "namespaces": [
11
+ {
12
+ "id": "openai",
13
+ "description": "OpenAI first-party text/coding models served by Codex's default provider. Image, audio, and video model slugs are deliberately excluded — they are not valid agent models.",
14
+ "match": "^(gpt-|o[0-9])[a-z0-9.-]*$",
15
+ "membership": "closed",
16
+ "model_provider": null,
17
+ "sources": [
18
+ "Context7 /openai/codex references/latest-model.md (current model map)",
19
+ "https://developers.openai.com/codex",
20
+ "https://developers.openai.com/api/docs/models (GPT-5.6 family, verified 2026-07-10)"
21
+ ],
22
+ "models": [
23
+ { "id": "gpt-5.6", "reasoning_efforts": ["none", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/models", "note": "alias routing to gpt-5.6-sol; family drops minimal; API-advertised max excluded pending Codex CLI ReasoningEffort enum support (fail closed)" },
24
+ { "id": "gpt-5.6-sol", "reasoning_efforts": ["none", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/models", "note": "max excluded pending Codex CLI enum support" },
25
+ { "id": "gpt-5.6-terra", "reasoning_efforts": ["none", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/models", "note": "max excluded pending Codex CLI enum support" },
26
+ { "id": "gpt-5.6-luna", "reasoning_efforts": ["none", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/models", "note": "max excluded pending Codex CLI enum support" },
27
+ { "id": "gpt-5.5", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
28
+ { "id": "gpt-5.5-pro", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
29
+ { "id": "gpt-5.4", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
30
+ { "id": "gpt-5.4-mini", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
31
+ { "id": "gpt-5.4-nano", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
32
+ { "id": "gpt-5.3-codex", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
33
+ { "id": "gpt-5.1-codex-mini", "reasoning_efforts": ["none", "minimal", "low", "medium", "high", "xhigh"], "last_verified": "2026-07-09" },
34
+ { "id": "gpt-4.1-mini", "reasoning_efforts": [], "last_verified": "2026-07-09", "note": "non-reasoning text model" },
35
+ { "id": "gpt-4.1-nano", "reasoning_efforts": [], "last_verified": "2026-07-09", "note": "non-reasoning text model" },
36
+ { "id": "o1", "reasoning_efforts": ["low", "medium", "high"], "last_verified": "2026-07-09" },
37
+ { "id": "o3", "reasoning_efforts": ["low", "medium", "high"], "last_verified": "2026-07-09" },
38
+ { "id": "o4-mini", "reasoning_efforts": ["low", "medium", "high"], "last_verified": "2026-07-09" },
39
+ { "id": "gpt-5-2025-08-07", "reasoning_efforts": ["minimal", "low", "medium", "high"], "status": "retiring", "retirement_date": "2026-12-11", "successor": "gpt-5.5", "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/deprecations", "note": "legacy dated snapshot; shutdown announced 2026-06-11, replacement gpt-5.5" },
40
+ { "id": "gpt-5-mini-2025-08-07", "reasoning_efforts": ["minimal", "low", "medium", "high"], "status": "retiring", "retirement_date": "2026-12-11", "successor": "gpt-5.4-mini", "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/deprecations", "note": "legacy dated snapshot; shutdown announced 2026-06-11, replacement gpt-5.4-mini" },
41
+ { "id": "gpt-5-nano-2025-08-07", "reasoning_efforts": ["minimal", "low", "medium", "high"], "status": "retiring", "retirement_date": "2026-12-11", "successor": "gpt-5.4-nano", "last_verified": "2026-07-10", "source": "https://developers.openai.com/api/docs/deprecations", "note": "legacy dated snapshot; shutdown announced 2026-06-11, replacement gpt-5.4-nano" }
42
+ ]
43
+ },
44
+ {
45
+ "id": "ollama",
46
+ "description": "Local models served by Ollama, routed via a [model_providers.ollama] table (base_url http://localhost:11434/v1, wire_api responses) in the operator's codex config. Policy values must pin an explicit name:tag — floating :latest via a bare name is rejected by shape.",
47
+ "match": "^[a-z0-9][a-z0-9._-]*:[a-z0-9][a-z0-9._-]*$",
48
+ "membership": "open",
49
+ "model_provider": "ollama",
50
+ "requires_provider_table": true,
51
+ "reasoning_efforts": [],
52
+ "reasoning_note": "Codex reasoning-effort passthrough to Ollama is not documented (Ollama-native reasoning uses the think parameter, which codex.toml cannot express); pinning reasoning_effort onto an Ollama-routed model fails check.",
53
+ "sources": [
54
+ "https://docs.ollama.com/api/openai-compatibility",
55
+ "Context7 /openai/codex model-provider-info (Ollama base_url/wire_api)"
56
+ ],
57
+ "examples": ["llama3.3:70b", "qwen3:32b", "gpt-oss:120b", "deepseek-r1:14b"]
58
+ },
59
+ {
60
+ "id": "openrouter",
61
+ "description": "OpenRouter-served models, routed via a [model_providers.openrouter] table (base_url https://openrouter.ai/api/v1, env_key OPENROUTER_API_KEY, wire_api responses) in the operator's codex config. Slug form author/model with optional :free/:extended/:nitro/:thinking variant. The floating ~author/family-latest alias form is deliberately rejected — policy pins exact models.",
62
+ "match": "^[a-z0-9][a-z0-9.-]*/[a-z0-9][a-z0-9._-]*(:(free|extended|nitro|thinking))?$",
63
+ "membership": "open",
64
+ "model_provider": "openrouter",
65
+ "requires_provider_table": true,
66
+ "reasoning_efforts": [],
67
+ "reasoning_note": "OpenRouter accepts reasoning_effort per model on its own API, but Codex CLI passthrough to custom providers is not documented; pinning reasoning_effort onto an OpenRouter-routed model fails check.",
68
+ "sources": [
69
+ "https://openrouter.ai/docs/api/api-reference/models/get-a-model-by-its-slug",
70
+ "https://openrouter.ai/docs/guides/best-practices/reasoning-tokens"
71
+ ],
72
+ "examples": ["anthropic/claude-sonnet-4.5", "openai/gpt-4o", "google/gemini-2.5-pro"]
73
+ }
74
+ ]
75
+ },
76
+ "claude-code": {
77
+ "reasoning_key": "effort",
78
+ "reasoning_efforts": ["low", "medium", "high", "xhigh", "max"],
79
+ "reasoning_note": "Subagent frontmatter effort field; available levels depend on the model and Claude Code falls back gracefully to the highest supported level, so no per-model gating is required.",
80
+ "namespaces": [
81
+ {
82
+ "id": "alias",
83
+ "description": "Version-floating aliases resolved by Claude Code to maintained defaults; always valid.",
84
+ "match": "^(sonnet|opus|haiku|fable|inherit)$",
85
+ "membership": "open",
86
+ "sources": ["https://code.claude.com/docs/en/sub-agents"]
87
+ },
88
+ {
89
+ "id": "anthropic",
90
+ "description": "Pinned Anthropic model IDs (same values as the --model flag).",
91
+ "match": "^claude-[a-z0-9.-]+$",
92
+ "membership": "closed",
93
+ "sources": ["https://code.claude.com/docs/en/sub-agents", "https://code.claude.com/docs/en/model-config"],
94
+ "models": [
95
+ { "id": "claude-opus-4-8", "last_verified": "2026-07-09" },
96
+ { "id": "claude-opus-4-7", "last_verified": "2026-07-09" },
97
+ { "id": "claude-sonnet-5", "last_verified": "2026-07-09" },
98
+ { "id": "claude-sonnet-4-6", "last_verified": "2026-07-09" },
99
+ { "id": "claude-haiku-4-5", "last_verified": "2026-07-09" },
100
+ { "id": "claude-haiku-4-5-20251001", "last_verified": "2026-07-09", "note": "dated snapshot ID" },
101
+ { "id": "claude-fable-5", "last_verified": "2026-07-09" }
102
+ ]
103
+ }
104
+ ]
105
+ },
106
+ "cursor": {
107
+ "reasoning_key": null,
108
+ "reasoning_efforts": [],
109
+ "reasoning_note": "Cursor exposes per-model parameters through its SDK model discovery (Cursor.models.list()), not through agent frontmatter; no effort field is projected. Invalid model names raise ConfigurationError in Cursor.",
110
+ "namespaces": [
111
+ {
112
+ "id": "alias",
113
+ "description": "auto (Cursor picks) and inherit (parent agent's model); always valid.",
114
+ "match": "^(auto|inherit)$",
115
+ "membership": "open",
116
+ "sources": ["https://cursor.com/docs/subagents"]
117
+ },
118
+ {
119
+ "id": "named",
120
+ "description": "Named models documented for Cursor subagent frontmatter. Cursor's picker evolves quickly and availability is plan/admin-dependent — verify with Cursor.models.list() and extend via the refresh workflow.",
121
+ "match": "^[a-z0-9][a-z0-9.-]*$",
122
+ "membership": "closed",
123
+ "sources": ["https://cursor.com/docs/subagents", "https://cursor.com/docs/cli/reference/configuration"],
124
+ "models": [
125
+ { "id": "gpt-5.5", "last_verified": "2026-07-09" },
126
+ { "id": "gpt-5", "last_verified": "2026-07-09" },
127
+ { "id": "composer-2", "last_verified": "2026-07-09" },
128
+ { "id": "composer-2.5", "last_verified": "2026-07-09" }
129
+ ]
130
+ }
131
+ ]
132
+ }
133
+ }
134
+ }
@@ -7934,12 +7934,12 @@
7934
7934
  {
7935
7935
  "id": "gcp-firebase-developer",
7936
7936
  "path": "skills/gcp/gcp-firebase-developer",
7937
- "aggregate_sha256": "0fd9c972fec268d93ce0fe5c6627473b4d3f2cb66b61e0f3dc98756cc1451b7e",
7937
+ "aggregate_sha256": "13bb47e825caea1f232efa782939a67431499f5df3d36329456d41ea11940172",
7938
7938
  "files": [
7939
7939
  {
7940
7940
  "path": "skills/gcp/gcp-firebase-developer/SKILL.md",
7941
- "sha256": "354984dca52b3cd7e266bb644c5b0d7f9f2eaa07704e4ee4aec4eb19323b1530",
7942
- "bytes": 3941
7941
+ "sha256": "ce51fc92c462987684cf9582dbfbe5c8f86d07205e715f2d71f839d7c4fd4354",
7942
+ "bytes": 3978
7943
7943
  },
7944
7944
  {
7945
7945
  "path": "skills/gcp/gcp-firebase-developer/metadata.json",
@@ -7995,12 +7995,12 @@
7995
7995
  {
7996
7996
  "id": "gcp-gke-platform-operator",
7997
7997
  "path": "skills/gcp/gcp-gke-platform-operator",
7998
- "aggregate_sha256": "07344007b02ed6fda023660bc6645dae23e37e30d6eed913580dbefa3a777d95",
7998
+ "aggregate_sha256": "e5a920c41a155e227629a1dffb32684bfefb1cd171ee8849901cc57de5b0e8f1",
7999
7999
  "files": [
8000
8000
  {
8001
8001
  "path": "skills/gcp/gcp-gke-platform-operator/SKILL.md",
8002
- "sha256": "dca85f97eb3462864d94394d50f4fcb97ce0583a314f57c104978727d9224d6f",
8003
- "bytes": 6979
8002
+ "sha256": "7d277f1cdcf12b1be7c5568f82d4f5ff749f223661041aa589a9a349b1036319",
8003
+ "bytes": 7026
8004
8004
  },
8005
8005
  {
8006
8006
  "path": "skills/gcp/gcp-gke-platform-operator/assets/default-deny-netpol.yaml",
@@ -16029,12 +16029,12 @@
16029
16029
  {
16030
16030
  "id": "salesforce-agentforce-stdm-observer-skill",
16031
16031
  "path": "skills/salesforce/salesforce-agentforce-stdm-observer-skill",
16032
- "aggregate_sha256": "019d2e3b966fa1546247dbd71843845569efb13d007db327554f040d97ff3782",
16032
+ "aggregate_sha256": "a9a424f037b374542814f2a07e7bb78779a0d8240774309a67d4f1292f7aa645",
16033
16033
  "files": [
16034
16034
  {
16035
16035
  "path": "skills/salesforce/salesforce-agentforce-stdm-observer-skill/SKILL.md",
16036
- "sha256": "ca4dd3173e73618a1c9e90ae72a4edca0b0d86901d4d828a461fbe875dbd9878",
16037
- "bytes": 25359
16036
+ "sha256": "87d016f4015459fee8f3dba9d5bc59fe6e25cd06a4e438b1819a89012a4d6fbe",
16037
+ "bytes": 25402
16038
16038
  },
16039
16039
  {
16040
16040
  "path": "skills/salesforce/salesforce-agentforce-stdm-observer-skill/metadata.json",
@@ -16093,12 +16093,12 @@
16093
16093
  {
16094
16094
  "id": "salesforce-apex-log-analyzer-skill",
16095
16095
  "path": "skills/salesforce/salesforce-apex-log-analyzer-skill",
16096
- "aggregate_sha256": "2dc74c299a51a80226817c326335eca74a0703a1acb9132b319dde91d781571e",
16096
+ "aggregate_sha256": "4b2d78e2bb92311c34d00bd077eee5d72e183a5b4270c2be5eb6d06230e797f6",
16097
16097
  "files": [
16098
16098
  {
16099
16099
  "path": "skills/salesforce/salesforce-apex-log-analyzer-skill/SKILL.md",
16100
- "sha256": "7ba1f9c37f1a21d24703bfac285d699e971356109d15b80ee026276cbf1c7d75",
16101
- "bytes": 15064
16100
+ "sha256": "278bc31b69cfa2de5dc2010188f463d3eb8632b8dea1ebfacb04a5a7ed4ae03d",
16101
+ "bytes": 15087
16102
16102
  },
16103
16103
  {
16104
16104
  "path": "skills/salesforce/salesforce-apex-log-analyzer-skill/metadata.json",
@@ -16189,12 +16189,12 @@
16189
16189
  {
16190
16190
  "id": "salesforce-apex-test-runner-skill",
16191
16191
  "path": "skills/salesforce/salesforce-apex-test-runner-skill",
16192
- "aggregate_sha256": "8e713288e2a065282f99f766af7e976d76c304e2a25f14853ac83b5337245496",
16192
+ "aggregate_sha256": "58b5db96582f9a45d5fcf7f8da3ff1797a9d85c0aef50a3918a01248ccf0ece1",
16193
16193
  "files": [
16194
16194
  {
16195
16195
  "path": "skills/salesforce/salesforce-apex-test-runner-skill/SKILL.md",
16196
- "sha256": "73485bf51862577bf88e54900aafafd157202f9347247e9544dc797531ff3bda",
16197
- "bytes": 14244
16196
+ "sha256": "788abd552e8397fd3caa9415a9ad710958ba375541b4fa223d8f03a46971400a",
16197
+ "bytes": 14246
16198
16198
  },
16199
16199
  {
16200
16200
  "path": "skills/salesforce/salesforce-apex-test-runner-skill/metadata.json",
@@ -16754,12 +16754,12 @@
16754
16754
  {
16755
16755
  "id": "salesforce-soql-explorer-skill",
16756
16756
  "path": "skills/salesforce/salesforce-soql-explorer-skill",
16757
- "aggregate_sha256": "bd81df1fee07cee811d894d1e21259df4127b13f8b68ff5f6727b25c7e45c56c",
16757
+ "aggregate_sha256": "ea59c236676db10d51bac129fa8de9f9228df8e03a7d36636181aefcace9b34d",
16758
16758
  "files": [
16759
16759
  {
16760
16760
  "path": "skills/salesforce/salesforce-soql-explorer-skill/SKILL.md",
16761
- "sha256": "fd91f2a3eb92397c56b4fe9cdf2342f4557f5f5dff30e1789eb507fdf788b346",
16762
- "bytes": 16240
16761
+ "sha256": "f313edf1aa2d0a431062d2b62ce1edb426e0529b5c78a5c34a1560a0ed515f55",
16762
+ "bytes": 16279
16763
16763
  },
16764
16764
  {
16765
16765
  "path": "skills/salesforce/salesforce-soql-explorer-skill/metadata.json",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raishin/vanguard-frontier-agentic",
3
- "version": "3.1.1",
3
+ "version": "3.2.0",
4
4
  "description": "Cloud and zero-trust agentic workflow marketplace for skills, agents, rules, MCP references, and compliance-aware architecture.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -45,8 +45,10 @@
45
45
  "validate:catalog": "python3 tests/validate-catalog.py",
46
46
  "validate:links": "python3 tests/validate-links.py --offline",
47
47
  "validate:allowed-tools": "python3 tests/validate-skill-allowed-tools.py",
48
+ "validate:skill-coherence": "python3 tests/validate-skill-coherence.py",
48
49
  "validate:skill-schema": "python3 tests/validate-skill-frontmatter-schema.py",
49
50
  "validate:agent-schema": "python3 tests/validate-agent-frontmatter-schema.py",
51
+ "validate:model-policy": "node scripts/model-policy.mjs check",
50
52
  "validate:asset-integrity": "python3 tests/validate-asset-integrity.py",
51
53
  "validate:mcp-trust-matrix": "python3 tests/validate-mcp-trust-matrix.py",
52
54
  "validate:no-lifecycle-scripts": "python3 tests/validate-no-lifecycle-scripts.py",
@@ -69,12 +71,15 @@
69
71
  "cursor-plugin:write": "node scripts/generate-cursor-plugin.mjs",
70
72
  "kiro-powers:write": "node scripts/generate-kiro-powers.mjs",
71
73
  "asset-integrity:write": "python3 tests/validate-asset-integrity.py --write",
74
+ "model-policy:check": "node scripts/model-policy.mjs check",
75
+ "model-policy:apply": "node scripts/model-policy.mjs apply",
76
+ "model-policy:report": "node scripts/model-policy.mjs report",
72
77
  "manifest:write:all": "npm run manifest:write & npm run plugin-manifest:write & npm run cursor-plugin:write & npm run kiro-powers:write & npm run asset-integrity:write & npm run readme-counts:write & wait",
73
78
  "test:copilot-bundling": "python3 tests/test-copilot-skill-bundling.py",
74
79
  "test:gemini-bundling": "python3 tests/test-gemini-skill-bundling.py",
75
80
  "test:cursor-kiro-notices": "node tests/export-cursor-kiro-skill-notice.test.mjs",
76
81
  "test:fuzz": "node tests/fuzz-properties.test.mjs",
77
- "validate": "npm run validate:catalog && npm run validate:aws && npm run manifest:check && npm run validate:allowed-tools && npm run validate:skill-schema && npm run validate:agent-schema && npm run validate:links && npm run validate:asset-integrity && npm run validate:mcp-trust-matrix && npm run validate:no-lifecycle-scripts && npm run validate:promotion-gatekeeper && npm run validate:install-coverage && npm run validate:maestro-routing && npm run validate:plugin-manifest && npm run validate:kiro-powers && npm run validate:multi-harness-marketplace && npm run validate:codex-marketplace && npm run validate:finops-fixtures && npm run validate:readme-counts && npm run validate:qa-cluster && npm run validate:frontend-security-detection",
82
+ "validate": "npm run validate:catalog && npm run validate:aws && npm run manifest:check && npm run validate:allowed-tools && npm run validate:skill-coherence && npm run validate:skill-schema && npm run validate:agent-schema && npm run validate:model-policy && npm run validate:links && npm run validate:asset-integrity && npm run validate:mcp-trust-matrix && npm run validate:no-lifecycle-scripts && npm run validate:promotion-gatekeeper && npm run validate:install-coverage && npm run validate:maestro-routing && npm run validate:plugin-manifest && npm run validate:kiro-powers && npm run validate:multi-harness-marketplace && npm run validate:codex-marketplace && npm run validate:finops-fixtures && npm run validate:readme-counts && npm run validate:qa-cluster && npm run validate:frontend-security-detection",
78
83
  "release:sbom": "command -v syft >/dev/null 2>&1 && syft scan dir:. -o spdx-json=sbom.spdx.json || echo 'syft not installed; SBOM is generated in CI by anchore/sbom-action'",
79
84
  "lint:md": "npx --yes markdownlint-cli2 \"**/*.md\" \"#node_modules\" \"#.git\" \"#.code-review-graph\" \"#CHANGELOG.md\"",
80
85
  "lint:spell": "codespell",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vanguard-frontier-agentic",
3
- "version": "3.1.1",
3
+ "version": "3.2.0",
4
4
  "description": "Curated marketplace for cloud and zero-trust AI workflows. 331 agents, 286 skills, and rules across AWS, Azure, OCI, GCP, Alibaba Cloud, Huawei Cloud, Kubernetes, and Terraform.",
5
5
  "author": {
6
6
  "name": "Raishin",