Skip to content

Safety & Control

Control what Ishi can do and when it needs your approval.

Ishi is designed around the Glass Box philosophy: you see everything, you control everything. This page explains how to set your comfort level with Ishi’s autonomy.


The Safety Slider

Think of permissions like trust levels with a new employee:

LevelNameHow It Works
🟢AllowClaw handles it automatically—no approval needed
🟡AskClaw shows you what it wants to do and waits for approval
🔴DenyIshi can’t do this action at all

By default, Claw asks for approval on sensitive operations. As you build trust, you can grant more autonomy.


What You Can Control

File Editing

Control whether Ishi can modify your files:

claw.json
{
"permission": {
"edit": "ask"
}
}
  • Allow: Claw edits files without asking
  • Ask: Claw shows the changes and waits for your “OK” (recommended to start)
  • Deny: Ishi can only suggest edits, not make them

Running Commands

Control whether Ishi can run commands on your system:

claw.json
{
"permission": {
"bash": "ask"
}
}

You can also set rules for specific commands:

claw.json
{
"permission": {
"bash": {
"open *": "allow",
"mv *": "ask",
"rm *": "deny"
}
}
}

This example:

  • Allows opening files and apps
  • 🟡 Asks before moving files
  • 🔴 Blocks file deletion entirely

Web Access

Control whether Ishi can fetch information from the web:

claw.json
{
"permission": {
"webfetch": "ask"
}
}

Files Outside Your Folder

By default, Claw asks before touching files outside your current project folder:

claw.json
{
"permission": {
"external_directory": "ask"
}
}

This prevents accidental changes to files you didn’t intend to work with.


Quick Setup: Conservative Start

New to Claw? Start with this “ask for everything” configuration:

claw.json
{
"permission": {
"edit": "ask",
"bash": "ask",
"webfetch": "ask",
"external_directory": "ask"
}
}

As you get comfortable, you can loosen specific permissions.


Quick Setup: Hands-Off Mode

Ready to let Claw handle routine tasks? Try this:

claw.json
{
"permission": {
"edit": "allow",
"bash": {
"*": "allow",
"rm *": "ask",
"sudo *": "deny"
},
"external_directory": "ask"
}
}

This allows most operations but:

  • 🟡 Asks before deleting files
  • 🔴 Blocks admin/system commands
  • 🟡 Asks before touching files outside your project

Session Approvals

When Claw asks for permission during a session, you’ll see three options:

  1. Accept — Allow this one time
  2. Accept Always — Allow this action for the rest of the session
  3. Deny — Block this action

“Accept Always” is useful when Ishi needs to do the same thing repeatedly (like opening multiple files).


Where to Put Your Settings

Save your permission settings in one of these locations:

LocationScope
~/.config/claw/claw.jsonAll your projects (global)
./claw.jsonThis project only

Project settings override global settings, so you can have stricter rules for sensitive projects.


Summary

PermissionWhat It ControlsRecommended Start
editModifying filesAsk
bashRunning commandsAsk
webfetchAccessing the webAsk
external_directoryFiles outside projectAsk

Start conservative, build trust, then adjust. That’s the Glass Box way. 🔍

Last updated: