---
title: Command Deny-Lists
description: Policy enforcement and prohibited command lists in NIKI.
sidebar:
  order: 4
  label: Command Deny-Lists
---

## Command Deny-Lists & Security Policies

NIKI parses and validates every shell command generated by agents against a multi-layer security policy before execution.

---

## Global Deny-List

The following commands and patterns are strictly blocked across all agents and backend modes:

* **Destructive Filesystem Operations:** `rm -rf /`, `rm -rf ~`, `mkfs`, `dd`, `fdisk`
* **Force Git Mutations:** `git push --force`, `git push -f`, `git reset --hard origin/main`, `git branch -D main`
* **Untrusted Pipe Execution:** `curl | sh`, `curl | bash`, `wget | sh`, `wget | bash`
* **Bypassing Verification Hooks:** `git commit --no-verify`, `git push --no-verify`

---

## Role-Specific Access Policies

Different agent roles operate with distinct filesystem and shell privileges:

| Agent Role | Allowed Operations | Denied Operations |
|---|---|---|
| **Planner** | Read repository files, inspect manifests | File writes, deletions, shell commands |
| **Coder** | Edit workspace files, apply unified diffs | Direct git pushes, remote network access |
| **Tester** | Read files, execute designated test runner | Destructive file modifications outside test fixtures |
| **Reviewer** | Read-only inspection of diffs and reports | Code modifications, shell execution |
