| name | dired |
| description | This skill should be used when the user invokes "/dired" to open files from the latest interaction in an Emacs dired buffer via emacsclient. |
| tools | Bash |
| disable-model-invocation | true |
Open files in Emacs dired
Open files from the most recent interaction in an Emacs dired buffer using emacsclient --eval. Only include files relevant to the latest interaction (files just generated, edited, listed, or produced by the most recent tool output), not all files mentioned throughout the conversation.
Strategy
Determine whether the relevant files all reside in the same directory or span multiple directories, then call agent-skill-dired accordingly.
- Same directory:
:dir is the directory, :files are basenames. Opens dired at that directory with the files marked in context.
- Multiple directories:
:dir is the common ancestor, :files are relative paths. Creates a curated *agent-files* buffer with all files marked.
First, locate agent-skill-dired.el which lives alongside this skill file at skills/dired/agent-skill-dired.el in the emacs-skills plugin directory.
emacsclient --eval '
(progn
(load "/path/to/skills/dired/agent-skill-dired.el" nil t)
(agent-skill-dired
:dir "/path/to/directory"
:files (quote ("file1.txt"
"file2.txt"
"file3.txt"))))'
Rules
- Use relative paths in
:files relative to :dir.
- Locate
agent-skill-dired.el relative to this skill file's directory.
- If no relevant files exist in the recent interaction, inform the user.
- Run the
emacsclient --eval command via the Bash tool.