Agent tools
Agent BuildingAgent tools is an Agent Skill for agent building published in the carbon-language/carbon-lang repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Guidelines and restrictions on shell commands and file manipulation tools for AI assistants.
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Inspect the Agent Skill at https://github.com/carbon-language/carbon-lang/blob/HEAD/.agents/skills/agent_tools/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/agent-tools, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
Agent tools
AI assistants working on the Carbon repository MUST NOT use legacy or generic UNIX shell search/edit commands when specialized environment tools exist.
Command line tools restrictions
- DO NOT USE:
cat,less,grep,sed, or other shell utilities for viewing, searching, or modifying files. - DO NOT USE:
patchto write and apply patch files. - DO NOT USE: Writing custom scripts in other languages to circumvent this limitation.
- DO USE: High-fidelity semantic API tools:
- Viewing: Use
view_fileinstead ofcat/less. - Searching: Use
grep_search/find_by_nameinstead ofgrep/find. - Modifying: Use
replace_file_content,multi_replace_file_content, orwrite_to_fileinstead ofsed/patch/pythonedits.
- Viewing: Use
You may only write and run temporary programs to modify source code if no semantic tool is applicable or when performing complex, systematic transforms across many codebase directories simultaneously.
Temporary files management
Temporary files and scratchpad test scripts created by the assistant during analysis, experiments, or debugging:
- MUST reside within the
tmp/subdirectory under the workspace root. - MUST be periodically cleaned out and deleted before ending your turn to preserve a clean git workspace.