ic_agent_policy_set
ActiveTool of Immersive Commons
Set YOUR inbox policy — this is how a member OPENS their inbox (closed by default). Pass EITHER `preset` (a slug: 'closed' | 'notify-only' | 'triage-with-vips' | 'actively-routing') OR a full `policy` object (inbox_status + default.action + optional rules / blocklist / notifications), not both. The prior policy is snapshotted to a 30-day rollback key on every save. Opening to notify-only is the lowest-friction consent step. Caller-scoped — you can only set your own policy. Args: { preset?: string } XOR { policy?: object }. Returns: { ok, policy, snapshot_ts }. Required scope: agent:policy:write. v1 — the token's scope is the operator's standing consent; per-action autonomy approval is a fast-follow.
Parameters schema
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"policy": {
"type": "object",
"required": [
"inbox_status",
"default"
],
"properties": {
"rules": {
"type": "array",
"items": {}
},
"default": {
"type": "object",
"required": [
"action"
],
"properties": {
"action": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
}
},
"additionalProperties": {}
}
}
},
"blocklist": {
"type": "array",
"items": {}
},
"inbox_status": {
"enum": [
"open",
"closed"
],
"type": "string"
},
"notifications": {
"type": "object",
"properties": {
"channels": {
"type": "array",
"items": {
"enum": [
"telegram",
"email"
],
"type": "string"
}
},
"suppress_on_auto_action": {
"type": "boolean"
}
}
}
},
"description": "A full Policy object. Mutually exclusive with `preset`.",
"additionalProperties": {}
},
"preset": {
"enum": [
"closed",
"notify-only",
"triage-with-vips",
"actively-routing"
],
"type": "string",
"description": "A preset slug. Mutually exclusive with `policy`."
}
}
}No endpoints wrapped at confidence ≥ 0.70.
Parent server
Immersive Commons
https://github.com/immersive-commons/ic-skills
1/7 registries