Security Model

Phoenix Agent is designed with security as a first-class concern. Every action is controlled, logged, and reversible.

Trust Mode

The central security mechanism. Two states:

StateBehavior
OFF (default)All destructive actions are blocked. Commands are shown but not executed. User must explicitly enable trust.
ONActions execute automatically. All operations are still logged to the audit trail.
Important: Even with trust ON, every action is recorded in the decision journal with reasoning. You can always review what the agent did and why.

Granular Permissions

PermissionDefaultControls
file_readGRANTEDRead files and directories
file_writeDENIEDCreate/modify/delete files
shell_executeDENIEDRun shell commands
mouse_controlDENIEDControl mouse cursor
keyboard_controlDENIEDSimulate keyboard input
screen_captureDENIEDTake screenshots
network_accessGRANTEDMake HTTP requests
install_packagesDENIEDInstall system packages

API Key Encryption

All API keys are encrypted at rest using Fernet (AES-128-CBC + HMAC-SHA256):

Audit Logging

Every security-relevant action is logged with:

{
  "timestamp": "2025-01-15T10:30:00Z",
  "action": "executed_command",
  "details": {
    "command": "mkdir C:\\Users\\...\\test",
    "exit_code": 0
  }
}

Decision Journal

Beyond simple logging, the decision journal records why the agent made each choice:

{
  "decision": "executed_command",
  "reason": "User requested directory creation",
  "alternatives": ["manual creation"],
  "context": {"command": "mkdir test"}
}

Best Practices