Skip to content

Commit 822e9e7

Browse files
docs: fix documentation drift — tools field marked reserved but fully functional (#56)
* Initial plan * docs: fix documentation drift — tools field documented as not implemented but is fully functional Co-authored-by: jamesadevine <4742697+jamesadevine@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: jamesadevine <4742697+jamesadevine@users.noreply.github.com>
1 parent 34fc26d commit 822e9e7

1 file changed

Lines changed: 44 additions & 3 deletions

File tree

AGENTS.md

Lines changed: 44 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,9 @@ repositories: # a list of repository resources available to the pipeline (for pr
120120
name: my-org/another-repo
121121
checkout: # optional list of repository aliases for the agent to checkout and work with (must be subset of repositories)
122122
- reponame # only checkout reponame, not another-repo
123-
# tools: # RESERVED: tool configuration (not yet implemented)
124-
# bash: ["cat", "ls", "grep"] # bash command allow-list
125-
# edit: true # enable file editing tool
123+
tools: # optional tool configuration
124+
bash: ["cat", "ls", "grep"] # bash command allow-list (defaults to safe built-in list)
125+
edit: true # enable file editing tool (default: true)
126126
# env: # RESERVED: workflow-level environment variables (not yet implemented)
127127
# CUSTOM_VAR: "value"
128128
mcp-servers:
@@ -279,6 +279,47 @@ schedule:
279279
- release/*
280280
```
281281

282+
### Tools Configuration
283+
284+
The `tools` field controls which tools are available to the agent. Both sub-fields are optional and have sensible defaults.
285+
286+
#### Default Bash Command Allow-list
287+
288+
When `tools.bash` is omitted, the agent can invoke the following shell commands:
289+
290+
```
291+
cat, date, echo, grep, head, ls, pwd, sort, tail, uniq, wc, yq
292+
```
293+
294+
#### Configuring Bash Access
295+
296+
```yaml
297+
# Default: safe built-in command list (bash field omitted)
298+
tools:
299+
edit: true
300+
301+
# Unrestricted bash access (use with caution)
302+
tools:
303+
bash: [":*"]
304+
305+
# Explicit command allow-list
306+
tools:
307+
bash: ["cat", "ls", "grep", "find"]
308+
309+
# Disable bash entirely (empty list)
310+
tools:
311+
bash: []
312+
```
313+
314+
#### Disabling File Writes
315+
316+
By default, the `edit` tool (file writing) is enabled. To disable it:
317+
318+
```yaml
319+
tools:
320+
edit: false
321+
```
322+
282323
### Target Platforms
283324

284325
The `target` field in the front matter determines the output format and execution environment for the compiled pipeline.

0 commit comments

Comments
 (0)