ari-trust-levels
Manage ARI's six-level trust system with risk multipliers
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Manage ARI's six-level trust system with risk multipliers
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Discord slash commands, approval routing, channel policy, button interaction patterns for OpenClaw/ARI Discord integration
Obsidian vault integration patterns — vault-analyzer.ts, /ari-vault-* commands, morning briefing snippet, PARA structure, read-only enforcement
OpenClaw plugin development patterns — hooks, manifest structure, plugin SDK, APEX/CODEX enforcement
NOVA's P1 PayThePryce pipeline — market signal ingest, card detection, price monitoring, script generation, thumbnail generation, video assembly, approval gate
CHASE's P2 Pryceless Solutions pipeline — lead discovery, 5-criteria audit, LLM qualification, Prompt Forge 4-pass lock, demo generation, outreach approval gate
NOVA's thumbnail generation pipeline — Ideogram V3 via Fal.ai (primary) + DALL-E 3 fallback, 4-variant strategy, Pokemon TCG copyright rules,
| name | ari-trust-levels |
| description | Manage ARI's six-level trust system with risk multipliers |
| triggers | ["trust level","risk score","trust assessment","permission check"] |
Manage ARI's six-level trust system that determines risk multipliers and permission boundaries (ADR-005).
| Level | Multiplier | Description | Examples |
|---|---|---|---|
SYSTEM | 0.5x | Internal components | Kernel, EventBus |
OPERATOR | 0.6x | Authenticated operator | CLI commands, Dashboard |
VERIFIED | 0.75x | Verified sources | Known good inputs |
STANDARD | 1.0x | Default | New inputs |
UNTRUSTED | 1.5x | Unverified external | External API responses |
HOSTILE | 2.0x | Known malicious | Flagged sources |
function calculateRisk(
baseRisk: number,
trustLevel: TrustLevel
): number {
const multipliers = {
SYSTEM: 0.5,
OPERATOR: 0.6,
VERIFIED: 0.75,
STANDARD: 1.0,
UNTRUSTED: 1.5,
HOSTILE: 2.0
};
return baseRisk * multipliers[trustLevel];
}
Risk ≥ 0.8 triggers automatic blocking.
if (calculateRisk(baseRisk, trustLevel) >= 0.8) {
eventBus.emit('security:threat_blocked', { risk, source });
throw new SecurityError('Request blocked: risk threshold exceeded');
}
// Internal kernel operations
const kernelMessage = {
content: '...',
trustLevel: 'SYSTEM',
source: 'kernel:sanitizer'
};
// CLI commands from authenticated user
const cliMessage = {
content: command,
trustLevel: 'OPERATOR',
source: 'cli:user'
};
// External input - default trust
const externalMessage = {
content: input,
trustLevel: 'STANDARD',
source: 'gateway:request'
};
// External API response
const apiResponse = {
content: response,
trustLevel: 'UNTRUSTED',
source: 'external:api'
};
async function checkPermission(
agent: string,
tool: string,
trustLevel: TrustLevel
): Promise<boolean> {
// Layer 1: Agent allowlist
if (!isAgentAllowed(agent, tool)) return false;
// Layer 2: Trust level requirement
if (!meetsMinimumTrust(tool, trustLevel)) return false;
// Layer 3: Permission tier
if (!hasPermissionTier(agent, getToolTier(tool))) return false;
return true;
}
| Tier | Trust Required | Tools |
|---|---|---|
| READ | STANDARD | read_file, list_dir |
| WRITE | VERIFIED | write_file, edit_file |
| EXECUTE | OPERATOR | run_command |
| DESTRUCTIVE | SYSTEM | delete_file, system_command |
Trust can only be:
// Never auto-elevate trust
function canElevateTrust(requester: TrustLevel): boolean {
return requester === 'OPERATOR' || requester === 'SYSTEM';
}
All trust decisions are logged:
eventBus.emit('audit:log', {
action: 'trust_decision',
trustLevel,
risk: calculatedRisk,
allowed: riskAllowed,
source
});