Skip to content

Tools & Permissions

NeoCode uses tools to interact with your project. Read-only actions usually run automatically. File writes, edits, and risky commands ask for approval.

What the agent can do

CapabilityToolUsually asks?
Read filesfilesystem_read_fileNo
Search file contentfilesystem_grepNo
Search file pathsfilesystem_globNo
Write filesfilesystem_write_fileYes
Edit filesfilesystem_editYes
Run commandsbashDepends on risk
Fetch web pageswebfetchDepends on domain policy
Manage task listtodo_writeNo
Manage memorymemo_*No
Start subagentsspawn_subagentNo

MCP tools use names like mcp.<server-id>.<tool>. See MCP Tools.

Approval choices

text
Permission request: filesystem_write_file (write_file)
Target: src/main.go

Use Up/Down to choose, Enter to confirm (shortcuts: y=once, a=session, n=reject)
> Allow once    - Approve this request once
  Allow session - Approve similar requests for this session
  Reject        - Reject this request
ChoiceMeaningBest for
Allow onceApprove only this requestOne-off writes, a single test command, or step-by-step review
Allow sessionApprove similar requests for the current sessionConfirmed safe repeated edits or test runs
RejectBlock this requestWrong path, risky command, or uncontrolled scope

How to decide

ScenarioRecommendation
Reading and searching filesUsually allow
Small code or test editsCheck paths first, then use Allow once; use Allow session for trusted repeated operations
Existing test commandUsually allow
Deletes, Git reset, broad rewritesRequest an explanation first, then usually approve only a clearly safe single request with Allow once
Secrets or local configReject

WebFetch Domain Policy

webfetch fetches HTTP/HTTPS pages. The current recommended policy allows github.com and *.github.com by default. Other external domains trigger an approval prompt.

The tool also has its own safety boundary: it only supports http and https, blocks localhost, private-network, link-local, and similar targets, and blocks automatic redirects from bypassing validation. Approval decides whether an external domain may be fetched; the tool still rejects clearly unsafe targets.

Full Access

Ctrl+F opens the Full Access risk prompt. When enabled, tool approvals are auto-approved.

WARNING

Use Full Access only when you understand the task risk, trust the workspace, and accept file or command side effects.

Command risk

CategoryExamplesHandling
Read-onlygit status, git log, lsAuto-allow
Local changesgit commit, go buildNeeds approval
Remote interactiongit push, git fetchNeeds approval
Destructivegit reset --hard, rmNeeds approval
UnknownCompound commands, parse failuresNeeds approval

File scope

File operations are limited to the current workspace by default.

text
/cwd

Next steps

A compact docs entrypoint built from NeoCode's current implementation.