Risk and Compliance pack
Risk and Compliance pack template, control assistant on fictitious data with a simulated grc connector.
Reference
| Field | Value |
|---|---|
| Name | risk-compliance |
| Version | 1.0.0 |
| Licence | MIT |
| Type | Template |
format | pack |
domain | risk-compliance |
| Category | risk-compliance |
namespace | enterprise-ai-packs |
publisher | Enterprise AI reference packs |
owner | enterprise-ai-packs |
compatibility.platform | >=1.0.0 <2.0.0 |
compatibility.sdk | >=1.0.0 <2.0.0 |
compatibility.runtimes | navin |
dependencies | None |
| Source | packs/templates/risk-compliance/plugin.yaml |
| Documentation | packs/templates/risk-compliance/docs/en/README.md, packs/templates/risk-compliance/docs/fr/README.md |
Capabilities
| Kind | Name |
|---|---|
tool | risk-compliance-search |
tool | risk-compliance-update-status |
connector | risk-compliance-grc |
policy | risk_compliance |
Requested permissions
The administrator grants a subset at install time; only the granted scopes are enforced.
| Scope | Sensitive | Classification | Reason |
|---|---|---|---|
risk-compliance.controls.read | No | confidential | Read control records to answer questions. |
risk-compliance.controls.write | Yes | confidential | Change the status of a control after a human approval. |
Data protection
| Field | Value |
|---|---|
classification_max | confidential |
pii | false |
residency | eu-west-1 |
retention_days | 30 |
dlp | mask |
fictitious_data | true |
piiDetectionRequired | true |
maskingPolicy | mask |
externalExportDefault | deny |
Approvals
Required for: install, upgrade, sensitivePermissions, production, externalExport, resume.
| Gate | Quorum | Roles |
|---|---|---|
install | 1 | tenant_admin, security_officer |
sensitive | 2 | tenant_admin, security_officer |
production | 2 | tenant_admin, security_officer |
Security and test flags
| Field | Value |
|---|---|
security.signedArtifactRequired | true |
security.sandboxRequired | true |
security.dynamicAuthorization | true |
security.auditRequired | true |
testFlags.sdkConformance | true |
testFlags.authorization | true |
testFlags.security | true |
Configuration
Properties of spec.configSchema, set by the administrator at install time:
| Name | Type | Constraints |
|---|---|---|
model_id | string | {"minLength": 3} |
mcp_servers | object | {"additionalProperties": {"additionalProperties": false, "properties": {"url": {"pattern": "^https?://", "type": "string"}}, "required": ["url"], "type": "object"}} |
Components
| Kind | Name | Version | Description | Details | Path |
|---|---|---|---|---|---|
| Agent | risk-compliance-assistant | 1.0.0 | Answers questions on control records and prepares status changes for a human approval. | risk_level: limited, autonomy.level: supervised, tools tool:risk-compliance-search, tool:risk-compliance-update-status | packs/templates/risk-compliance/agents/risk-compliance-assistant.yaml |
| Subagent | risk-compliance-reviewer | 1.0.0 | Reviews a proposed control status change against the rules before the human approval. | risk_level: minimal, autonomy.level: assisted, tools tool:risk-compliance-search | packs/templates/risk-compliance/subagents/risk-compliance-reviewer.yaml |
| Prompt | risk-compliance-summary | - | Summary of a control record for a business user. | variables record_id, audience, language | packs/templates/risk-compliance/prompts/risk-compliance-summary.yaml |
| MCP server | risk-compliance-mcp | - | MCP server of the Risk and Compliance pack (official MCP Python SDK, MIT licence). | transport: streamable_http, tools risk_compliance_search, risk_compliance_update_status | packs/templates/risk-compliance/mcp/servers/risk-compliance-mcp.yaml |
| MCP tool | risk-compliance-search | 1.0.0 | Search fictitious control records through the pack MCP server. | action: read, scopes risk-compliance.controls.read, risk_level: limited, requires_approval: false | packs/templates/risk-compliance/mcp/tools/risk-compliance-search.yaml |
| MCP tool | risk-compliance-update-status | 1.0.0 | Change the status of a fictitious control record, idempotent, after a human approval. | action: write, scopes risk-compliance.controls.write, risk_level: high, requires_approval: true | packs/templates/risk-compliance/mcp/tools/risk-compliance-update-status.yaml |
| Connector | risk-compliance-grc | 1.0.0 | grc connector of the Risk and Compliance pack. Simulated on fictitious data until the tenant configures it. | system: grc, auth.type: api_key, scopes risk-compliance.controls.read, risk-compliance.controls.write | packs/templates/risk-compliance/connectors/risk-compliance-grc.yaml |
| Workflow | risk-compliance-status-change | - | Status change of a control with a review and a four eyes approval. | steps search, review, approval, apply, on_failure: stop | packs/templates/risk-compliance/workflows/risk-compliance-status-change.yaml |
| Knowledge base | risk-compliance-knowledge | - | Knowledge base template of the Risk and Compliance pack (fictitious documents). | classification: internal | packs/templates/risk-compliance/rag/config.yaml |
| Skill | risk-compliance-guidelines | 1.0.0 | How the Risk and Compliance assistant handles control records. | scopes risk-compliance.controls.read, data_classification_max: confidential | packs/templates/risk-compliance/skills/risk-compliance-guidelines/SKILL.md |
Evaluations and tests
| Name | Type | Path | Threshold |
|---|---|---|---|
risk-compliance-answers | promptfoo | evaluations/promptfoo.yaml | 1.0 |
risk-compliance-retrieval | ragas | evaluations/ragas.jsonl | 0.8 |
| Kind | Path |
|---|---|
unit | tests/unit |
integration | tests/integration |
authz | tests/authz |
security | tests/security |
opa | policies/opa |
Files
| Kind | Path |
|---|---|
| Rules | packs/templates/risk-compliance/rules/risk-compliance-rules.md |
| Policies | packs/templates/risk-compliance/policies/opa/risk_compliance.rego, packs/templates/risk-compliance/policies/opa/risk_compliance_test.rego, packs/templates/risk-compliance/policies/openfga/model.fga, packs/templates/risk-compliance/policies/openfga/tests.fga.yaml |
| Observability | packs/templates/risk-compliance/observability/alerts/risk-compliance.yaml |
| Knowledge base documents | packs/templates/risk-compliance/rag/documents/guide.md |
Install it
Validate, build, sign and publish the pack, then install it from the Marketplace: the preflight checks the capabilities and the configuration before the installation.
enterprise-ai plugin validate packs/templates/risk-compliance
enterprise-ai plugin build packs/templates/risk-compliance --out /tmp/risk-compliance-dist
COSIGN_PASSWORD=... enterprise-ai plugin sign packs/templates/risk-compliance --out /tmp/risk-compliance-dist --key cosign.key --signer <publisher>
enterprise-ai plugin publish packs/templates/risk-compliance --out /tmp/risk-compliance-dist --key cosign.key \
--oci <registry>/packs/risk-compliance:1.0.0
cosign.key: signing key of your organization. <publisher>: publisher name registered in the Marketplace. <registry>: OCI registry of the Marketplace. Then call POST /v1/marketplace/preflight and POST /v1/marketplace/installations, see the Marketplace guide.