@aiwg/cli 2026.9.19 → 2026.9.21
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/agentic/code/providers/capability-matrix.yaml +58 -6
- package/agentic/code/providers/model-capabilities.v1.json +34 -0
- package/agentic/code/providers/model-catalog.v1.json +55 -13
- package/bin/aiwg.mjs +2 -0
- package/dist/src/api/index.d.ts +1 -0
- package/dist/src/api/index.js +1 -0
- package/dist/src/artifacts/enrichment/cli.js +1 -1
- package/dist/src/artifacts/views/cli.js +1 -1
- package/dist/src/audit/operator-decision.js +10 -0
- package/dist/src/auth/credential-store.js +127 -27
- package/dist/src/catalog/builtin-models.json +272 -40
- package/dist/src/catalog/cli.js +1 -1
- package/dist/src/catalog/cli.mjs +1 -1
- package/dist/src/cli/handlers/effect.js +872 -0
- package/dist/src/cli/handlers/help.js +2 -0
- package/dist/src/cli/handlers/index.js +4 -2
- package/dist/src/cli/handlers/models.js +41 -10
- package/dist/src/cli/handlers/ralph.js +1 -1
- package/dist/src/cli/handlers/sessions.js +113 -37
- package/dist/src/cli/handlers/subcommands.js +31 -0
- package/dist/src/cli/handlers/use.js +46 -9
- package/dist/src/cli/handlers/utilities.js +10 -0
- package/dist/src/cli/handlers/workspace.js +3 -1
- package/dist/src/cli/scope-resolver.js +112 -9
- package/dist/src/cli/services/deployment-verification.js +5 -0
- package/dist/src/config/aiwg-config.js +3 -0
- package/dist/src/decision/acceptance-rollout.js +93 -0
- package/dist/src/decision/acceptance.js +175 -0
- package/dist/src/decision/adapters/jev.js +234 -13
- package/dist/src/decision/adapters/llm-subagent.js +60 -12
- package/dist/src/decision/admission.js +550 -0
- package/dist/src/decision/batch-benchmark.js +47 -0
- package/dist/src/decision/batch-receipts/accounting.js +75 -0
- package/dist/src/decision/batch-receipts/export.js +40 -0
- package/dist/src/decision/batch-receipts/index.js +9 -0
- package/dist/src/decision/batch-receipts/protection.js +40 -0
- package/dist/src/decision/batch-receipts/receipt.js +44 -0
- package/dist/src/decision/batch-receipts/result-store.js +341 -0
- package/dist/src/decision/batch-receipts/store.js +362 -0
- package/dist/src/decision/batch-receipts/types.js +2 -0
- package/dist/src/decision/batch-receipts/validate.js +127 -0
- package/dist/src/decision/batch.js +68 -0
- package/dist/src/decision/calibration/index.js +4 -0
- package/dist/src/decision/calibration/receipts.js +130 -0
- package/dist/src/decision/calibration/registry.js +258 -0
- package/dist/src/decision/calibration/types.js +2 -0
- package/dist/src/decision/compile-cache/benchmark.js +62 -0
- package/dist/src/decision/compile-cache/compatibility.js +65 -0
- package/dist/src/decision/compile-cache/file-store.js +280 -0
- package/dist/src/decision/compile-cache/identity.js +26 -0
- package/dist/src/decision/compile-cache/index.js +9 -0
- package/dist/src/decision/compile-cache/prefix.js +21 -0
- package/dist/src/decision/compile-cache/records.js +86 -0
- package/dist/src/decision/compile-cache/runtime.js +68 -0
- package/dist/src/decision/compile-cache/store.js +108 -0
- package/dist/src/decision/compile-cache/types.js +2 -0
- package/dist/src/decision/context-plan.js +234 -0
- package/dist/src/decision/context-qualification.js +60 -0
- package/dist/src/decision/ensemble/aggregate.js +215 -0
- package/dist/src/decision/ensemble/contract.js +316 -0
- package/dist/src/decision/ensemble/drift.js +51 -0
- package/dist/src/decision/ensemble/index.js +6 -0
- package/dist/src/decision/ensemble/report.js +71 -0
- package/dist/src/decision/ensemble/types.js +2 -0
- package/dist/src/decision/evaluate.js +1024 -78
- package/dist/src/decision/file-lifecycle-store.js +168 -0
- package/dist/src/decision/graph-beam.js +40 -0
- package/dist/src/decision/graph-budget.js +110 -0
- package/dist/src/decision/graph-decision-bridge.js +93 -0
- package/dist/src/decision/graph-evidence.js +123 -0
- package/dist/src/decision/graph-flow-adapter.js +56 -0
- package/dist/src/decision/graph-flow.js +105 -0
- package/dist/src/decision/graph-parallel.js +79 -0
- package/dist/src/decision/graph-patterns.js +20 -0
- package/dist/src/decision/graph-run-store.js +66 -0
- package/dist/src/decision/graph-run.js +166 -0
- package/dist/src/decision/graph-skill-bridge.js +91 -0
- package/dist/src/decision/graph-templates.js +56 -0
- package/dist/src/decision/graph.js +115 -0
- package/dist/src/decision/index.js +35 -0
- package/dist/src/decision/job-accounting.js +93 -0
- package/dist/src/decision/job-contract.js +186 -0
- package/dist/src/decision/job-effects.js +95 -0
- package/dist/src/decision/job-evaluate.js +80 -0
- package/dist/src/decision/job-gateway.js +121 -0
- package/dist/src/decision/job-http.js +194 -0
- package/dist/src/decision/job-payload-store.js +258 -0
- package/dist/src/decision/job-poll-limiter.js +92 -0
- package/dist/src/decision/job-quota.js +158 -0
- package/dist/src/decision/job-runtime.js +240 -0
- package/dist/src/decision/job-scheduler.js +26 -0
- package/dist/src/decision/job-service.js +117 -0
- package/dist/src/decision/job-store.js +264 -0
- package/dist/src/decision/job-worker.js +141 -0
- package/dist/src/decision/lifecycle.js +148 -0
- package/dist/src/decision/patterns/artifacts.js +173 -0
- package/dist/src/decision/patterns/catalog.js +108 -0
- package/dist/src/decision/patterns/durable-review.js +237 -0
- package/dist/src/decision/patterns/index.js +8 -0
- package/dist/src/decision/patterns/playground.js +401 -0
- package/dist/src/decision/patterns/recorded.js +43 -0
- package/dist/src/decision/patterns/specs.js +174 -0
- package/dist/src/decision/patterns/types.js +2 -0
- package/dist/src/decision/portable-secrets.js +53 -0
- package/dist/src/decision/projection.js +210 -0
- package/dist/src/decision/qualification/capture.js +67 -0
- package/dist/src/decision/qualification/drift.js +68 -0
- package/dist/src/decision/qualification/gate-evidence.js +172 -0
- package/dist/src/decision/qualification/gates.js +83 -0
- package/dist/src/decision/qualification/index.js +12 -0
- package/dist/src/decision/qualification/load.js +275 -0
- package/dist/src/decision/qualification/manifest.js +37 -0
- package/dist/src/decision/qualification/privacy.js +41 -0
- package/dist/src/decision/qualification/quality.js +213 -0
- package/dist/src/decision/qualification/release.js +116 -0
- package/dist/src/decision/qualification/runner.js +408 -0
- package/dist/src/decision/qualification/types.js +2 -0
- package/dist/src/decision/receipts.js +30 -7
- package/dist/src/decision/result-cache/index.js +6 -0
- package/dist/src/decision/result-cache/integrity.js +28 -0
- package/dist/src/decision/result-cache/key.js +28 -0
- package/dist/src/decision/result-cache/service.js +92 -0
- package/dist/src/decision/result-cache/store.js +327 -0
- package/dist/src/decision/result-cache/types.js +3 -0
- package/dist/src/decision/review/authorization.js +110 -0
- package/dist/src/decision/review/effect-ledger-adapter.js +321 -0
- package/dist/src/decision/review/index.js +12 -0
- package/dist/src/decision/review/migrate.js +34 -0
- package/dist/src/decision/review/operator-audit.js +59 -0
- package/dist/src/decision/review/recovery-adapters.js +252 -0
- package/dist/src/decision/review/recovery.js +33 -0
- package/dist/src/decision/review/service.js +498 -0
- package/dist/src/decision/review/store.js +219 -0
- package/dist/src/decision/review/types.js +2 -0
- package/dist/src/decision/review/validate.js +205 -0
- package/dist/src/decision/scheduler.js +115 -0
- package/dist/src/decision/telemetry/context.js +42 -0
- package/dist/src/decision/telemetry/debug-sidecar.js +152 -0
- package/dist/src/decision/telemetry/exporter.js +77 -0
- package/dist/src/decision/telemetry/file-debug-backend.js +112 -0
- package/dist/src/decision/telemetry/index.js +13 -0
- package/dist/src/decision/telemetry/mapping.js +146 -0
- package/dist/src/decision/telemetry/metrics.js +164 -0
- package/dist/src/decision/telemetry/otlp-http.js +183 -0
- package/dist/src/decision/telemetry/redaction.js +93 -0
- package/dist/src/decision/telemetry/retention.js +109 -0
- package/dist/src/decision/telemetry/runtime.js +310 -0
- package/dist/src/decision/telemetry/trace.js +158 -0
- package/dist/src/decision/telemetry/types.js +3 -0
- package/dist/src/decision/validate.js +135 -5
- package/dist/src/effects/checkpoint-sinks.js +94 -0
- package/dist/src/effects/checkpoint.js +76 -0
- package/dist/src/effects/decision-links.js +54 -0
- package/dist/src/effects/errors.js +48 -0
- package/dist/src/effects/identity.js +178 -0
- package/dist/src/effects/index.js +25 -0
- package/dist/src/effects/keyring.js +160 -0
- package/dist/src/effects/keys.js +130 -0
- package/dist/src/effects/ledger.js +435 -0
- package/dist/src/effects/lifecycle.js +110 -0
- package/dist/src/effects/lock-recovery.js +269 -0
- package/dist/src/effects/reader.js +103 -0
- package/dist/src/effects/records.js +114 -0
- package/dist/src/effects/redaction.js +51 -0
- package/dist/src/effects/schema.js +73 -0
- package/dist/src/effects/store.js +239 -0
- package/dist/src/effects/types.js +49 -0
- package/dist/src/effects/verifiers/decision.js +168 -0
- package/dist/src/effects/verifiers/file.js +106 -0
- package/dist/src/effects/verifiers/git.js +206 -0
- package/dist/src/effects/verifiers/index.js +90 -0
- package/dist/src/effects/verifiers/registry.js +148 -0
- package/dist/src/effects/verifiers/review.js +123 -0
- package/dist/src/effects/verifiers/tracker.js +299 -0
- package/dist/src/effects/verifiers/types.js +21 -0
- package/dist/src/effects/verify.js +295 -0
- package/dist/src/evidence/bundle.js +2 -0
- package/dist/src/extensions/commands/definitions.js +28 -0
- package/dist/src/extensions/manifest.js +1 -0
- package/dist/src/marketplace/provenance.js +25 -27
- package/dist/src/mcp/cli.mjs +11 -1
- package/dist/src/mcp/grok-build-config.mjs +189 -0
- package/dist/src/mcp/registry.js +21 -1
- package/dist/src/mcp/registry.mjs +20 -1
- package/dist/src/models/grok-build-models.js +356 -0
- package/dist/src/models/index.js +1 -0
- package/dist/src/models/model-capabilities.v1.json +34 -0
- package/dist/src/models/model-catalog.v1.json +55 -13
- package/dist/src/models/model-discovery.js +41 -5
- package/dist/src/models/provider-policy.js +3 -2
- package/dist/src/plugin/skill-command-translator.js +1 -0
- package/dist/src/providers/capability-matrix.yaml +58 -6
- package/dist/src/providers/grok-build-acp.js +192 -0
- package/dist/src/providers/grok-build-dispatch.js +251 -0
- package/dist/src/providers/grok-build-headless.js +170 -0
- package/dist/src/providers/muse-paths.js +105 -0
- package/dist/src/providers/provider-definitions.js +93 -7
- package/dist/src/providers/provider-definitions.mjs +21 -1
- package/dist/src/providers/provider-inventory.js +3 -0
- package/dist/src/security/artifact-attestation.js +4 -8
- package/dist/src/security/signing.js +119 -0
- package/dist/src/sessions/adapters/grok-build.js +187 -0
- package/dist/src/sessions/adapters/muse.js +412 -0
- package/dist/src/sessions/contracts.js +1 -1
- package/dist/src/sessions/grok-build-cli.js +196 -0
- package/dist/src/sessions/index.js +3 -0
- package/dist/src/sessions/workspace-discovery.js +9 -5
- package/dist/src/skills/deployer.js +33 -5
- package/dist/src/smiths/context-pipeline/claude-hook.js +2 -0
- package/dist/src/smiths/context-pipeline/context-file-safety.js +18 -0
- package/dist/src/smiths/context-pipeline/finalization.js +1 -32
- package/dist/src/smiths/context-pipeline/generator.js +12 -0
- package/dist/src/smiths/context-pipeline/index.js +1 -1
- package/dist/src/smiths/context-pipeline/managed-hook.js +2 -0
- package/dist/src/smiths/context-pipeline/muse-bridge.js +50 -0
- package/dist/src/smiths/context-pipeline/provider-policy.js +5 -0
- package/dist/src/smiths/context-pipeline/workspace-context.js +22 -16
- package/dist/src/smiths/hook-bridge/grok-build-translator.js +64 -0
- package/dist/src/smiths/hook-bridge/index.js +3 -0
- package/dist/src/smiths/hook-bridge/shim.js +2 -0
- package/dist/src/smiths/hook-bridge/types.js +5 -0
- package/dist/src/smiths/skillsmith/collision-detector.js +1 -0
- package/dist/src/storage/protected-files.js +102 -0
- package/dist/src/tracker/forge-http.js +371 -0
- package/dist/src/tracker/project-inputs.js +41 -0
- package/package.json +2 -1
- package/schemas/decision/BatchReceipt.v1.schema.json +50 -0
- package/schemas/decision/CalibrationArtifact.v1.schema.json +76 -0
- package/schemas/decision/CalibrationCompatibility.v1.schema.json +18 -0
- package/schemas/decision/CalibrationGovernanceReceipt.v1.schema.json +44 -0
- package/schemas/decision/DecisionAdmissionEvidence.v1.schema.json +43 -0
- package/schemas/decision/DecisionBinding.schema.json +309 -0
- package/schemas/decision/DecisionBinding.v1alpha2.schema.json +369 -0
- package/schemas/decision/DecisionCacheTelemetry.v1.schema.json +20 -0
- package/schemas/decision/DecisionChampionChallenger.v1.schema.json +100 -0
- package/schemas/decision/DecisionCompileCacheEntry.v1.schema.json +35 -0
- package/schemas/decision/DecisionCompileCacheIdentity.v1.schema.json +26 -0
- package/schemas/decision/DecisionCompileCacheTombstone.v1.schema.json +31 -0
- package/schemas/decision/DecisionContextEvidence.v1.schema.json +136 -0
- package/schemas/decision/DecisionDefinition.schema.json +159 -0
- package/schemas/decision/DecisionDefinition.v1alpha2.schema.json +203 -0
- package/schemas/decision/DecisionDriftResponse.v1.schema.json +55 -0
- package/schemas/decision/DecisionEnsembleAggregate.v1.schema.json +86 -0
- package/schemas/decision/DecisionEnsembleIntegrityReport.v1.schema.json +64 -0
- package/schemas/decision/DecisionEnsemblePolicy.v1.schema.json +130 -0
- package/schemas/decision/DecisionGraph.v1.schema.json +77 -0
- package/schemas/decision/DecisionJob.v1.schema.json +71 -0
- package/schemas/decision/DecisionLifecyclePolicy.v1.schema.json +52 -0
- package/schemas/decision/DecisionProjectionPolicy.v1.schema.json +65 -0
- package/schemas/decision/DecisionProviderPrefixCompatibility.v1.schema.json +45 -0
- package/schemas/decision/DecisionProviderPrefixEvidence.v1.schema.json +17 -0
- package/schemas/decision/DecisionProviderPrefixIdentity.v1.schema.json +36 -0
- package/schemas/decision/DecisionResult.schema.json +524 -0
- package/schemas/decision/DecisionResult.v1alpha2.schema.json +619 -0
- package/schemas/decision/DecisionResultCacheEntry.v1.schema.json +53 -0
- package/schemas/decision/DecisionReview.schema.json +29 -0
- package/schemas/decision/DecisionRuleset.schema.json +313 -0
- package/schemas/decision/DecisionRuleset.v1alpha2.schema.json +313 -0
- package/schemas/decision/DecisionTelemetryTrace.v1.schema.json +95 -0
- package/schemas/decision/RulesetResult.schema.json +721 -0
- package/schemas/decision/RulesetResult.v1alpha2.schema.json +891 -0
- package/schemas/security/pr-evidence-receipt.v1.schema.json +77 -0
- package/schemas/security/threat-assessment-report.v1.schema.json +71 -1
- package/tools/agents/deploy-agents.mjs +21 -6
- package/tools/agents/providers/base.mjs +7 -4
- package/tools/agents/providers/codex.mjs +1 -1
- package/tools/agents/providers/grok-build.d.mts +7 -0
- package/tools/agents/providers/grok-build.mjs +249 -9
- package/tools/agents/providers/model-role.mjs +6 -3
- package/tools/agents/providers/muse-hooks.mjs +785 -0
- package/tools/agents/providers/muse-paths.mjs +112 -0
- package/tools/agents/providers/muse.mjs +336 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "https://aiwg.io/schemas/security/pr-evidence-receipt.v1.schema.json",
|
|
4
|
+
"title": "PullRequestEvidenceReceipt",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": ["schemaVersion", "head", "base", "acquiredAt", "completedAt", "body", "collection", "paths", "completeness", "scopeTriage", "maliciousness", "claims", "verified", "assessed", "evidenceManifest", "nextAction", "actionTrail", "sha256"],
|
|
7
|
+
"properties": {
|
|
8
|
+
"schemaVersion": { "const": "1" },
|
|
9
|
+
"repository": { "type": "string" },
|
|
10
|
+
"number": { "type": "integer" },
|
|
11
|
+
"head": { "type": "string", "pattern": "^[0-9a-fA-F]{40,64}$" },
|
|
12
|
+
"base": { "type": "string", "pattern": "^[0-9a-fA-F]{40,64}$" },
|
|
13
|
+
"acquiredAt": { "type": "string", "format": "date-time" },
|
|
14
|
+
"completedAt": { "type": "string", "format": "date-time" },
|
|
15
|
+
"body": {
|
|
16
|
+
"type": "object",
|
|
17
|
+
"required": ["current", "history"],
|
|
18
|
+
"properties": {
|
|
19
|
+
"current": {
|
|
20
|
+
"type": "object",
|
|
21
|
+
"required": ["text", "sha256"],
|
|
22
|
+
"properties": {
|
|
23
|
+
"text": { "type": "string" },
|
|
24
|
+
"sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" }
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"history": { "type": "array" }
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"collection": { "type": "object" },
|
|
31
|
+
"paths": { "type": "array" },
|
|
32
|
+
"completeness": {
|
|
33
|
+
"type": "object",
|
|
34
|
+
"required": ["complete", "omissions"],
|
|
35
|
+
"properties": {
|
|
36
|
+
"complete": { "type": "boolean" },
|
|
37
|
+
"omissions": { "type": "array", "items": {
|
|
38
|
+
"type": "object", "required": ["surface", "reason", "nextStep"],
|
|
39
|
+
"properties": { "surface": { "type": "string" }, "reason": { "type": "string" }, "nextStep": { "type": "string" } }
|
|
40
|
+
} }
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"scopeTriage": { "type": "object" },
|
|
44
|
+
"maliciousness": { "type": "object" },
|
|
45
|
+
"codeOrigin": { "type": "object" },
|
|
46
|
+
"claims": { "type": "object" },
|
|
47
|
+
"verified": { "type": "object" },
|
|
48
|
+
"assessed": { "type": "array", "items": {
|
|
49
|
+
"type": "object", "required": ["id", "surface", "sha256", "report"],
|
|
50
|
+
"properties": {
|
|
51
|
+
"id": { "type": "string" },
|
|
52
|
+
"surface": { "enum": ["pull-request-title", "pull-request-body", "pull-request-diff-summary", "review-comment"] },
|
|
53
|
+
"sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
54
|
+
"report": { "type": "object" }
|
|
55
|
+
}
|
|
56
|
+
} },
|
|
57
|
+
"activeFindings": { "type": "array" },
|
|
58
|
+
"evidenceManifest": { "type": "array", "items": {
|
|
59
|
+
"type": "object", "required": ["sourceId", "sha256", "revision"],
|
|
60
|
+
"properties": {
|
|
61
|
+
"sourceId": { "type": "string" }, "sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
62
|
+
"revision": { "type": "string" }, "lineCoverage": { "type": "object" }
|
|
63
|
+
}
|
|
64
|
+
} },
|
|
65
|
+
"nextAction": {
|
|
66
|
+
"type": "object",
|
|
67
|
+
"required": ["proposed", "gate", "reason"],
|
|
68
|
+
"properties": {
|
|
69
|
+
"proposed": { "type": "string" },
|
|
70
|
+
"gate": { "type": "string" },
|
|
71
|
+
"reason": { "type": "string" }
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"actionTrail": { "type": "array", "minItems": 1 },
|
|
75
|
+
"sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" }
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -16,8 +16,10 @@
|
|
|
16
16
|
"source",
|
|
17
17
|
"actor",
|
|
18
18
|
"requestedAction",
|
|
19
|
+
"authorization",
|
|
19
20
|
"policyProvenance",
|
|
20
21
|
"assessed",
|
|
22
|
+
"completeness",
|
|
21
23
|
"findings",
|
|
22
24
|
"risk",
|
|
23
25
|
"decision"
|
|
@@ -36,6 +38,20 @@
|
|
|
36
38
|
"source": { "type": "object", "additionalProperties": true },
|
|
37
39
|
"actor": { "type": "object", "additionalProperties": true },
|
|
38
40
|
"requestedAction": { "type": "string" },
|
|
41
|
+
"authorization": {
|
|
42
|
+
"type": "object",
|
|
43
|
+
"additionalProperties": false,
|
|
44
|
+
"required": ["required", "checkpoint", "verified", "contentHash", "provenance", "reasons"],
|
|
45
|
+
"properties": {
|
|
46
|
+
"required": { "type": "boolean" },
|
|
47
|
+
"checkpoint": { "type": "string", "minLength": 1 },
|
|
48
|
+
"verified": { "type": "boolean" },
|
|
49
|
+
"contentHash": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
|
|
50
|
+
"provenance": { "type": "object", "additionalProperties": true },
|
|
51
|
+
"receiptId": { "type": "string" },
|
|
52
|
+
"reasons": { "type": "array", "uniqueItems": true, "items": { "type": "string" } }
|
|
53
|
+
}
|
|
54
|
+
},
|
|
39
55
|
"policyProvenance": {
|
|
40
56
|
"type": "object",
|
|
41
57
|
"additionalProperties": false,
|
|
@@ -46,6 +62,42 @@
|
|
|
46
62
|
}
|
|
47
63
|
},
|
|
48
64
|
"assessed": { "type": "boolean" },
|
|
65
|
+
"completeness": {
|
|
66
|
+
"type": "object",
|
|
67
|
+
"additionalProperties": false,
|
|
68
|
+
"required": ["complete", "reasons", "limits", "observed"],
|
|
69
|
+
"properties": {
|
|
70
|
+
"complete": { "type": "boolean" },
|
|
71
|
+
"reasons": {
|
|
72
|
+
"type": "array",
|
|
73
|
+
"uniqueItems": true,
|
|
74
|
+
"items": { "enum": ["part-limit", "input-character-limit", "occurrence-limit", "finding-limit"] }
|
|
75
|
+
},
|
|
76
|
+
"limits": {
|
|
77
|
+
"type": "object",
|
|
78
|
+
"additionalProperties": false,
|
|
79
|
+
"required": ["maxInputCharacters", "maxParts", "maxOccurrencesPerPattern", "maxFindings", "maxCustomRules", "maxPatternsPerRule"],
|
|
80
|
+
"properties": {
|
|
81
|
+
"maxInputCharacters": { "type": "integer", "minimum": 1 },
|
|
82
|
+
"maxParts": { "type": "integer", "minimum": 1 },
|
|
83
|
+
"maxOccurrencesPerPattern": { "type": "integer", "minimum": 1 },
|
|
84
|
+
"maxFindings": { "type": "integer", "minimum": 1 },
|
|
85
|
+
"maxCustomRules": { "type": "integer", "minimum": 1 },
|
|
86
|
+
"maxPatternsPerRule": { "type": "integer", "minimum": 1 }
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"observed": {
|
|
90
|
+
"type": "object",
|
|
91
|
+
"additionalProperties": false,
|
|
92
|
+
"required": ["parts", "characters", "findings"],
|
|
93
|
+
"properties": {
|
|
94
|
+
"parts": { "type": "integer", "minimum": 0 },
|
|
95
|
+
"characters": { "type": "integer", "minimum": 0 },
|
|
96
|
+
"findings": { "type": "integer", "minimum": 0 }
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
},
|
|
49
101
|
"findings": {
|
|
50
102
|
"type": "array",
|
|
51
103
|
"items": { "$ref": "#/definitions/finding" }
|
|
@@ -84,7 +136,7 @@
|
|
|
84
136
|
"finding": {
|
|
85
137
|
"type": "object",
|
|
86
138
|
"additionalProperties": false,
|
|
87
|
-
"required": ["ruleId", "ruleProvenance", "severity", "likelihood", "impact", "taxonomy", "partId", "context", "evidence", "suppressed", "matchedStatements"],
|
|
139
|
+
"required": ["ruleId", "ruleProvenance", "severity", "likelihood", "impact", "taxonomy", "partId", "occurrence", "context", "evidence", "suppressed", "matchedStatements"],
|
|
88
140
|
"properties": {
|
|
89
141
|
"ruleId": { "type": "string" },
|
|
90
142
|
"ruleProvenance": { "type": "string" },
|
|
@@ -93,6 +145,24 @@
|
|
|
93
145
|
"impact": { "type": "number", "minimum": 1, "maximum": 5 },
|
|
94
146
|
"taxonomy": { "type": "array", "items": { "type": "string" } },
|
|
95
147
|
"partId": { "type": "string" },
|
|
148
|
+
"occurrence": {
|
|
149
|
+
"type": "object",
|
|
150
|
+
"additionalProperties": false,
|
|
151
|
+
"required": ["start", "end", "match", "paragraphStart", "paragraphEnd", "patternIndexes"],
|
|
152
|
+
"properties": {
|
|
153
|
+
"start": { "type": "integer", "minimum": 0 },
|
|
154
|
+
"end": { "type": "integer", "minimum": 0 },
|
|
155
|
+
"match": { "type": "string" },
|
|
156
|
+
"paragraphStart": { "type": "integer", "minimum": 0 },
|
|
157
|
+
"paragraphEnd": { "type": "integer", "minimum": 0 },
|
|
158
|
+
"patternIndexes": {
|
|
159
|
+
"type": "array",
|
|
160
|
+
"minItems": 1,
|
|
161
|
+
"uniqueItems": true,
|
|
162
|
+
"items": { "type": "integer", "minimum": 0 }
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
},
|
|
96
166
|
"context": { "enum": ["requested", "negative", "quoted", "documentation", "descriptive", "orchestrator-status"] },
|
|
97
167
|
"source": { "type": "object", "additionalProperties": true },
|
|
98
168
|
"evidence": { "type": "string" },
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* --rules-only Deploy only rules (skip agents)
|
|
21
21
|
* --dry-run Show what would be deployed without writing
|
|
22
22
|
* --force Overwrite existing files
|
|
23
|
-
* --provider <name> Target provider: antigravity (agy), claude (default), openai, codex, cursor, opencode, copilot, factory, grokbot, grok-build, pi, omp, deepseek-harness (dsh), warp, devin, hermes, openhuman, or openclaw
|
|
23
|
+
* --provider <name> Target provider: antigravity (agy), claude (default), openai, codex, cursor, opencode, copilot, factory, grokbot, grok-build, muse, pi, omp, deepseek-harness (dsh), warp, devin, hermes, openhuman, or openclaw
|
|
24
24
|
* --model <name> Override model for all tiers (blanket)
|
|
25
25
|
* --reasoning-model <name> Override model for reasoning tasks
|
|
26
26
|
* --coding-model <name> Override model for coding tasks
|
|
@@ -123,7 +123,7 @@ const PROVIDER_ALIASES = {
|
|
|
123
123
|
'dsh': 'deepseek-harness',
|
|
124
124
|
};
|
|
125
125
|
|
|
126
|
-
const AVAILABLE_PROVIDERS = ['antigravity', 'claude', 'factory', 'codex', 'opencode', 'copilot', 'cursor', 'pi', 'omp', 'deepseek-harness', 'warp', 'windsurf', 'hermes', 'openclaw', 'openhuman', 'grokbot', 'grok-build'];
|
|
126
|
+
const AVAILABLE_PROVIDERS = ['antigravity', 'claude', 'factory', 'codex', 'opencode', 'copilot', 'cursor', 'pi', 'omp', 'deepseek-harness', 'warp', 'windsurf', 'hermes', 'openclaw', 'openhuman', 'grokbot', 'grok-build', 'muse'];
|
|
127
127
|
|
|
128
128
|
const UNSUPPORTED_PROVIDER_HINTS = {
|
|
129
129
|
'devin-cli': [
|
|
@@ -512,7 +512,9 @@ function parseArgs() {
|
|
|
512
512
|
// stale copies of packaged ones.
|
|
513
513
|
deploySource: null, // Managed-marker source; defaults to 'bundled'
|
|
514
514
|
listingBudget: false, // Honor the provider startup-listing cap despite --copy-all (#2561)
|
|
515
|
-
deployVersion: null
|
|
515
|
+
deployVersion: null, // Managed-marker version; defaults to srcRoot package.json
|
|
516
|
+
mcp: false, // #228: opt-in MCP settings profile (Muse provider)
|
|
517
|
+
hooks: true, // #228: managed project hooks (Muse provider); --no-hooks opts out
|
|
516
518
|
};
|
|
517
519
|
for (let i = 0; i < args.length; i++) {
|
|
518
520
|
const a = args[i];
|
|
@@ -549,6 +551,10 @@ function parseArgs() {
|
|
|
549
551
|
// Structural opt-out: skip the migration without claiming the operator declined it (#2541).
|
|
550
552
|
else if (a === '--no-commands-warning') cfg.warnOnSkippedCommandsMigration = false;
|
|
551
553
|
else if (a === '--copy-all' || a === '--copy-standard-skills') cfg.copyStandardSkills = true;
|
|
554
|
+
// #228: Muse provider — explicit opt-in MCP settings profile, and the
|
|
555
|
+
// managed-hooks opt-out (default on, mirroring the Claude autoInstall policy).
|
|
556
|
+
else if (a === '--mcp') cfg.mcp = true;
|
|
557
|
+
else if (a === '--no-hooks') cfg.hooks = false;
|
|
552
558
|
else if (a === '--deploy-source' && args[i + 1]) cfg.deploySource = String(args[++i]);
|
|
553
559
|
else if (a === '--listing-budget') cfg.listingBudget = true;
|
|
554
560
|
else if (a === '--deploy-version' && args[i + 1]) cfg.deployVersion = String(args[++i]);
|
|
@@ -591,6 +597,11 @@ Options:
|
|
|
591
597
|
--filter-role <role> Only deploy agents of role: reasoning|coding|efficiency
|
|
592
598
|
--save Save model config to project models.json
|
|
593
599
|
--save-user Save model config to ~/.config/aiwg/models.json
|
|
600
|
+
--mcp Muse provider: opt in to the AIWG MCP settings profile
|
|
601
|
+
(merges the aiwg stdio server into user settings
|
|
602
|
+
mcp_servers; default off)
|
|
603
|
+
--no-hooks Muse provider: skip managed project hooks
|
|
604
|
+
(.muse/hooks.json; installed by default)
|
|
594
605
|
--as-agents-md Aggregate to single AGENTS.md (Codex)
|
|
595
606
|
--create-agents-md Create/update AGENTS.md template
|
|
596
607
|
--skip-commands-migration Skip deleting the commands directory before skills deployment
|
|
@@ -618,7 +629,7 @@ Model Override Examples:
|
|
|
618
629
|
aiwg use sdlc --reasoning opus --coding sonnet --efficiency haiku
|
|
619
630
|
|
|
620
631
|
# Use a specific model ID for coding tier
|
|
621
|
-
aiwg use sdlc --provider factory --coding-model gpt-5.
|
|
632
|
+
aiwg use sdlc --provider factory --coding-model gpt-5.6-terra
|
|
622
633
|
|
|
623
634
|
# Blanket with per-tier override (reasoning uses opus, others use sonnet)
|
|
624
635
|
aiwg use sdlc --model sonnet --reasoning opus
|
|
@@ -653,6 +664,7 @@ Providers (all deploy agents, commands, skills, and rules):
|
|
|
653
664
|
Paths: .windsurf/agents/, .windsurf/workflows/, .windsurf/skills/, .windsurf/rules/
|
|
654
665
|
grokbot - Grok Bot (AGENTS.md bridge; skills only with AIWG_GROKBOT_SKILLS_DIR)
|
|
655
666
|
grok-build - Grok Build (experimental; .grok paths + $GROK_HOME; no bare grok alias)
|
|
667
|
+
muse - Muse Code (experimental; AGENTS.md bridge; .agents/skills + XDG user root; managed hooks, opt-in --mcp; no aliases)
|
|
656
668
|
hermes - Hermes Agent (MCP-based integration)
|
|
657
669
|
Skills: $HERMES_HOME/skills/ (user-global; defaults to ~/.hermes/skills/) | Agents: AGENTS.md
|
|
658
670
|
Commands/Rules: served via MCP, not file-deployed
|
|
@@ -736,8 +748,8 @@ async function loadProvider(providerName) {
|
|
|
736
748
|
* If the value is a known shorthand (opus, sonnet, haiku, inherit), resolve it
|
|
737
749
|
* through the provider's shorthand map. Otherwise treat it as a literal model ID.
|
|
738
750
|
*
|
|
739
|
-
* @param {string|null} value - CLI flag value (e.g., "opus" or "claude-opus-
|
|
740
|
-
* @param {object} shorthandMap - Provider shorthand map (e.g., { opus: "claude-opus-
|
|
751
|
+
* @param {string|null} value - CLI flag value (e.g., "opus" or "claude-opus-5")
|
|
752
|
+
* @param {object} shorthandMap - Provider shorthand map (e.g., { opus: "claude-opus-5" })
|
|
741
753
|
* @param {object} modelsConfig - Full models config from loadModelConfig()
|
|
742
754
|
* @param {string} provider - Provider name
|
|
743
755
|
* @param {string} tier - Tier name: "reasoning", "coding", or "efficiency"
|
|
@@ -1024,6 +1036,9 @@ export async function main() {
|
|
|
1024
1036
|
// Replaces the legacy AIWG_COPY_STANDARD_SKILLS env var (removed rc.30).
|
|
1025
1037
|
// Default (#1217) is no-copy + index-driven discovery.
|
|
1026
1038
|
copyStandardSkills: cfg.copyStandardSkills === true,
|
|
1039
|
+
// #228: Muse provider hooks/MCP profile surface.
|
|
1040
|
+
mcp: cfg.mcp === true,
|
|
1041
|
+
hooks: cfg.hooks !== false,
|
|
1027
1042
|
listingBudget: cfg.listingBudget === true,
|
|
1028
1043
|
deployVersion: cfg.deployVersion || getDeployVersion(srcRoot),
|
|
1029
1044
|
deploySource: cfg.deploySource || 'bundled',
|
|
@@ -306,8 +306,8 @@ export function loadModelConfig(srcRoot) {
|
|
|
306
306
|
// Fallback to hardcoded defaults if no config found
|
|
307
307
|
return {
|
|
308
308
|
claude: {
|
|
309
|
-
reasoning: { model: 'claude-opus-
|
|
310
|
-
coding: { model: 'claude-sonnet-
|
|
309
|
+
reasoning: { model: 'claude-opus-5' },
|
|
310
|
+
coding: { model: 'claude-sonnet-5' },
|
|
311
311
|
efficiency: { model: 'claude-haiku-4-5' }
|
|
312
312
|
},
|
|
313
313
|
factory: {
|
|
@@ -316,8 +316,8 @@ export function loadModelConfig(srcRoot) {
|
|
|
316
316
|
efficiency: { model: 'light' }
|
|
317
317
|
},
|
|
318
318
|
shorthand: {
|
|
319
|
-
'opus': 'claude-opus-
|
|
320
|
-
'sonnet': 'claude-sonnet-
|
|
319
|
+
'opus': 'claude-opus-5',
|
|
320
|
+
'sonnet': 'claude-sonnet-5',
|
|
321
321
|
'haiku': 'claude-haiku-4-5',
|
|
322
322
|
'inherit': 'inherit'
|
|
323
323
|
},
|
|
@@ -2269,6 +2269,9 @@ export function discoverAddons(srcRoot) {
|
|
|
2269
2269
|
|
|
2270
2270
|
// Skip addons marked devOnly — they are contributor tools, not end-user deployables
|
|
2271
2271
|
if (manifest.devOnly === true) continue;
|
|
2272
|
+
// explicitInstall addons deploy only when named (`aiwg use <addon>`), never
|
|
2273
|
+
// as part of a framework or `all` bulk deploy (#2641).
|
|
2274
|
+
if (manifest.explicitInstall === true) continue;
|
|
2272
2275
|
|
|
2273
2276
|
addons.push({
|
|
2274
2277
|
name: entry.name,
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* `.agents/skills/` only and prune the stale legacy home dir on deploy.
|
|
21
21
|
*
|
|
22
22
|
* Special features:
|
|
23
|
-
* - Model replacement (opus/sonnet/haiku -> gpt-5.
|
|
23
|
+
* - Model replacement (opus/sonnet/haiku -> catalog codex roles (gpt-5.6-sol/terra/luna))
|
|
24
24
|
* - --as-agents-md aggregation option
|
|
25
25
|
* - Delegates commands to deploy-prompts-codex.mjs (deploys to ~/.codex/prompts/)
|
|
26
26
|
* - Delegates skills to deploy-skills-codex.mjs (deploys to .agents/skills/)
|