Tools Reference
Tools are the actions Amara can take on your behalf during a session. Each tool has a defined capability and a default permission level that determines whether Syntic Code runs it automatically or asks you first. This page lists the built-in tools; plugins and MCP servers can add more, which appear alongside these with their own permission rules.
Built-in tools
| Tool | Purpose | Default permission |
|---|---|---|
read | Read a file from the workspace. | Auto (no prompt) |
search | Search file contents and names across the repo. | Auto (no prompt) |
list | List directory contents. | Auto (no prompt) |
edit | Make a targeted edit to an existing file. | Ask |
write | Create or overwrite a file. | Ask |
bash | Run a shell command in the workspace. | Ask |
fetch | Retrieve the contents of a URL. | Ask |
events | Read or push external session events. | Ask |
task | Delegate a subtask to a sub-agent. | Auto (no prompt) |
Permission levels
Each tool call resolves to one of three outcomes. Auto tools run without interruption because they are read-only or otherwise safe. Ask tools pause for your approval before running, showing you exactly what will happen — the command, the file, or the URL. You can approve once, approve for the session, or deny. The session-wide --permission-mode flag shifts these defaults: auto approves everything, plan blocks all writes so Amara can only propose changes, and ask (the default) uses each tool’s own level.
Scoping access
You can tighten or loosen access per tool with --allow-tool and --deny-tool, or persist rules in settings:
# Let the agent run bash freely but never write files this session
syntic --allow-tool bash --deny-tool write
# Read-only exploration: propose changes, apply nothing
syntic --permission-mode plan "audit the auth module"Denied tools are invisible to the agent, so it plans around them rather than repeatedly requesting them. Combine tool scoping with hooks when you need conditional rather than blanket rules.