Skip to main content

Files, git, shell and project

The primitive layer everything else builds on: 42 tools across five packs. They work directly on your local files and git repositories, so no API keys are needed.

PackToolsLoads
files9Always (core)
directory5Always (core)
command1Always (core)
project7Always (core)
git20On demand. Add it with causly-server toolsets add git

Every tool call goes through the safety layer: the optional workspace limit, the approval gate for HIGH and DESTRUCTIVE tools, and the activity log.

Files​

ToolLevelWhat it does
read_fileREADRead the full text of one file
read_multiple_filesREADRead several files in one call. A failure on one file does not stop the others
create_fileMEDIUMCreate a new file
write_fileMEDIUMCreate a file or completely overwrite it, creating parent folders as needed
edit_fileMEDIUMReplace an exact piece of text without rewriting the whole file
delete_fileDESTRUCTIVEDelete one file. Needs confirm: true
move_fileMEDIUMMove or rename a file or folder
copy_fileLOWCopy one file
get_file_infoREADSize, type, and created and modified times

edit_file needs the old text to match exactly, and to be unique unless replace_all is set. It is the cheapest way to change a large file.

Directories​

ToolLevelWhat it does
list_directoryREADList the files and folders directly inside a folder
directory_treeREADA recursive tree view. Skips node_modules and .git. max_depth defaults to 5
create_directoryLOWCreate a folder, including missing parents
delete_directoryDESTRUCTIVEDelete a folder, recursively by default. Needs confirm: true
search_filesREADFind files and folders whose name contains a pattern, case-insensitive

File and folder tools refuse to write or delete inside protected Windows system folders. See Protected paths.

Git​

20 tools for the full local git lifecycle. Load them with causly-server toolsets add git.

ToolLevelWhat it does
git_initLOWInitialize a repository
git_statusREADWorking tree status
git_addLOWStage files
git_commitMEDIUMCommit staged changes
git_pushMEDIUMPush commits to a remote
git_pullMEDIUMPull from a remote
git_logREADRecent commit history
git_diffREADUncommitted changes, optionally for one file
git_diff_statREADA summary of files, insertions and deletions instead of the full diff
git_branchREADList local branches and show the current one
git_create_branchLOWCreate a branch, optionally checking it out
git_checkoutMEDIUMCheck out an existing branch
git_mergeMEDIUMMerge a branch into the current one
git_resetHIGHReset the current branch to a ref. Needs confirm: true
git_stashLOWStash working changes
git_showREADDetails of a commit or object
git_remoteMEDIUMManage and inspect remotes
git_tagLOWManage tags
git_changed_filesREADChanged files with their change type
git_check_cleanREADWhether the working tree is clean

Commits stay local until you push. For a safe end-to-end flow that runs checks first, see ship_change.

Project intelligence​

7 tools that understand what kind of project a folder is and run its own commands, so your agent does not have to guess whether to run npm test, pytest or cargo test.

ToolLevelWhat it does
project_detectREADDetect the language, framework and package manager from manifest files
project_infoREADLanguage, framework, package manager, the resolved test, lint, typecheck and build commands, and the git branch and remotes
project_healthREADGit cleanliness and ahead or behind counts, whether dependencies are installed, and which env files exist
run_testsLOWDetect and run the project's test command. Returns stdout, stderr and the exit code
run_lintLOWDetect and run the lint command
run_typecheckLOWDetect and run the typecheck command
run_buildLOWDetect and run the build command

The same information is available as MCP resources, which a client can attach to a conversation.

Shell​

run_command runs a shell command in a folder you give it. It is a HIGH tool, so it needs confirm: true.

ArgumentNotes
commandThe command to run
cwdThe working folder. Must be inside your workspace if a limit is on
timeout_msDefault 60,000 (one minute)
confirmMust be true

Output is capped at 20,000 characters. On Windows, commands run through PowerShell, not cmd.exe, so PowerShell syntax works. Catastrophic commands are blocked and risky ones are flagged. See Command safety.

Commands inherit the server's environment, including your keys. See What is not protected.

Examples​

"Show me what changed since the last commit, then commit it as 'fix: handle empty response'."

Claude calls git_diff, git_add and git_commit.

"Run the tests and tell me what fails."

Claude calls project_info to learn the stack, then run_tests.