Back to Blog

Architecture

The Signal Engine: Real-Time Classification of Agent Actions

Every action an AI agent takes can be categorized by risk: reading a file is low risk, pushing to main is high risk, and most actions fall somewhere in between. Arcana's signal engine performs this classification in real-time, before each action executes.

The signal engine is the brain of Arcana's governance system. It is a real-time classifier that sits between every agent action and the permission system. Without it, the permission system would need to evaluate raw actions with no context. With it, the permission system receives a pre-classified action with risk level, confidence score, and supporting evidence.

This separation of concerns matters. The signal engine handles classification. The permission system handles policy. The file-edit guard handles user interface. Each system does one thing well, and they compose into a complete governance pipeline.

What It Does

The signal engine is a classifier that sits between the agent's intent and the permission system. When the agent proposes an action, the signal engine evaluates it and produces a risk assessment. This assessment feeds into the permission firewall, which decides whether to allow, gate, or block the action.

Classification Criteria

The engine evaluates multiple signals:

  • Action type. What kind of operation is this? File read, file write, network request, shell command, git operation.
  • Target. What is being acted on? A project file, a system file, an external API, a git branch.
  • Scope. How broad is the change? One line vs. an entire file vs. a directory.
  • History. Has the agent done similar things before in this session? Were they approved?
  • Trust level. What is the current workspace trust level?

Risk Levels

The engine produces a risk level for each action:

  • Low. Auto-allowed. Reading files, searching code, web fetches to known-safe domains.
  • Medium. Allowed based on trust level. Writing to project files, running commands in project scope.
  • High. Requires approval. Git push, network to unknown domains, deleting files, modifying config.
  • Critical. Requires explicit approval with justification. Destructive operations, operations outside workspace scope.

Integration with Governance

The signal engine is one piece of Arcana's governance stack. It provides the classification; the permission system provides the policy; the file-edit guard provides the UI. Together, they form a complete governance pipeline from agent intent to user approval to action execution.

Tuning

The signal engine's sensitivity is configurable via your Arcana config file:

  • Linux / macOS: ~/.arcana/config.json
  • Windows: %USERPROFILE%\.arcana\config.json

You can adjust thresholds, add custom rules, and override classifications for specific action types. This lets you tune the balance between automation (low friction) and safety (high oversight) for your workflow.

Common tuning patterns:

  • Aggressive automation. Lower the threshold for auto-allowing medium-risk actions. Useful when you trust the agent and want minimal friction.
  • High oversight. Raise the threshold so more actions require approval. Useful for production codebases or when working with sensitive data.
  • Custom rules. Add rules for specific file patterns or action types. For example, always require approval for changes to *.config files, even if the signal engine classifies them as low risk.

The signal engine learns from your approval patterns over time. Actions you consistently approve may be classified lower in future sessions. Actions you consistently reject may be classified higher. This adaptive behavior means the governance system becomes more attuned to your preferences the more you use it.