Tools¶
Atomsh carries two sets of tools in one schema. The model does not need to know which side a tool lives on.
Code tools¶
Run locally, in your workspace.
| Tool | What it does |
|---|---|
read_file |
Read a file with line numbers, optionally a range |
write_file |
Create a file or overwrite one |
edit_file |
Replace exact text. The match must be unique unless replace_all is set |
list_dir |
List a directory |
glob_files |
Find files by pattern, newest first |
grep_files |
Search file contents by regular expression |
bash |
Run a shell command in the workspace |
edit_file refuses an ambiguous match rather than guessing, and refuses text
it cannot find. Both refusals are returned to the model as readable errors, so
it re-reads the file and retries rather than corrupting it.
Directories like .git, node_modules, __pycache__ and .venv are skipped
by the search tools.
Materials tools¶
Loaded by default, from the AtomGPT tool server, authenticated with the same credential. Six dispatchers, each reaching a family of AtomGPT apps.
| Tool | Covers |
|---|---|
explore |
JARVIS-DFT queries, materials search, literature |
build |
Supercells, surfaces, vacancies, substitutions, interfaces |
predict |
ALIGNN properties, force-field relaxation, MD, phonons, transport |
characterize |
XRD generation, analysis and refinement, Raman, spectra |
apply |
Batteries, superconductors, solar, catalysis, MOFs |
validate |
Reference and hallucination checks |
Each is self-describing. Called with no arguments it lists the apps in its
category; with app="/path" it reports that app's parameters; with arguments
it runs the app.
› bandgap of silicon JVASP-1002 from JARVIS-DFT
· explore(app=/jarvis_dft/query, params={"jid": "JVASP-1002"})
OptB88vdW 0.731 eV, mBJ 1.277 eV, HSE 1.22 eV
--no-materials leaves them out. Worth doing for pure coding work, where a
narrower tool surface is easier for the model to aim.
Long-running calculations
A relaxation or band structure can take a minute or more. Atomsh waits, but very large cells may exceed the server's request timeout. Start small.
Caching¶
The materials tool list is cached in ~/.local/share/atomsh/ and refreshed
daily, and the connection to the tool server is opened on first use, so
carrying these tools costs nothing at startup. Delete the cache file to force a
refresh after new apps are added.