About mktemp-d
mktemp-d is a small agent skill that standardizes temporary-file handling in shell work. It directs workflows to create a private directory with `mktemp -d` instead of using fixed paths under `/tmp`.
Key features
- 01Creates private temporary directories
- 02Avoids hardcoded `/tmp` paths
- 03Provides shell substitutions for common operations
Use cases
- 01Choose safe locations for temporary files
- 02Extract archives into unique temporary directories
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ petr-korobeinikov/ skills --skill mktemp-dAfter installing, type/mktemp-din Claude Code to confirm it loaded.
Details
From the project READMEmktemp-d
Never create a temporary file or directory at a hardcoded path
under /tmp.
Always allocate a private directory with mktemp -d
and place all temporary artifacts inside it.
Why
mktemp -d returns a unique, private directory.
A hardcoded path under /tmp does not —
it collides with concurrent runs and any leftover state from prior runs.
Rule
One mktemp -d per logical scope, then build paths inside it:
tmpdir=$(mktemp -d)
cp something "$tmpdir/input"
do_work > "$tmpdir/output.log"
Direct substitutions
| Don't | Do |
|---|---|
mkdir /tmp/work | work=$(mktemp -d) |
touch /tmp/out.log | work=$(mktemp -d); : > "$work/out.log" |
cmd > /tmp/output | work=$(mktemp -d); cmd > "$work/output" |
tar xf x.tar -C /tmp | work=$(mktemp -d); tar xf x.tar -C "$work" |
If you encounter a hardcoded /tmp/... path while editing a file,
replace it with the mktemp -d idiom as part of the same edit.