Rename Pdfs Exe
realspqrk/autorename-pdf
[Production] Rename PDF files using the compiled autorename-pdf-cli.exe.
Rename documents and files (PDFs, images, screenshots, etc.) by reading their content to extract the effective/publication date, then renaming them with a "YYYY-MM-DD - Clear descriptive title.ext"…
$ npx skills add kdeldycke/dotfiles --skill rename-with-dates -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kdeldycke/dotfiles rename-with-dates --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .claude/skills && cp -r skills-src/dotfiles/.agents/skills/rename-with-dates .claude/skills/rename-with-dates && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "rename-with-dates" agent skill from https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-dates into .claude/skills/rename-with-dates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rename-with-dates", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-datesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add kdeldycke/dotfiles --skill rename-with-dates -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kdeldycke/dotfiles rename-with-dates --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .agents/skills && cp -r skills-src/dotfiles/.agents/skills/rename-with-dates .agents/skills/rename-with-dates && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "rename-with-dates" agent skill from https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-dates into .agents/skills/rename-with-dates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rename-with-dates", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kdeldycke/dotfiles --skill rename-with-dates -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kdeldycke/dotfiles rename-with-dates --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/dotfiles/.agents/skills/rename-with-dates .cursor/skills/rename-with-dates && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "rename-with-dates" agent skill from https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-dates into .cursor/skills/rename-with-dates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rename-with-dates", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/kdeldycke/dotfiles.git --path dotfiles/.agents/skills/rename-with-dates--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add kdeldycke/dotfiles --skill rename-with-dates -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kdeldycke/dotfiles rename-with-dates --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/dotfiles/.agents/skills/rename-with-dates .gemini/skills/rename-with-dates && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "rename-with-dates" agent skill from https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-dates into .gemini/skills/rename-with-dates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rename-with-dates", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install kdeldycke/dotfiles rename-with-datesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add kdeldycke/dotfiles --skill rename-with-dates -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .github/skills && cp -r skills-src/dotfiles/.agents/skills/rename-with-dates .github/skills/rename-with-dates && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "rename-with-dates" agent skill from https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-dates into .github/skills/rename-with-dates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rename-with-dates", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kdeldycke/dotfiles --skill rename-with-dates -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kdeldycke/dotfiles rename-with-dates --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kdeldycke/dotfiles.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/dotfiles/.agents/skills/rename-with-dates .opencode/skills/rename-with-dates && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "rename-with-dates" agent skill from https://github.com/kdeldycke/dotfiles/tree/main/dotfiles/.agents/skills/rename-with-dates into .opencode/skills/rename-with-dates/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rename-with-dates", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
rename-with-datesRename documents and files (PDFs, images, screenshots, etc.) by reading their content to extract the effective/publication date, then renaming them with a "YYYY-MM-DD - Clear descriptive title.ext"…
Rename With Dates is an agent skill from kdeldycke/dotfiles. Rename documents and files (PDFs, images, screenshots, etc.) by reading their content to extract the effective/publication date, then renaming them with a "YYYY-MM-DD - Clear descriptive title.ext" format. Use when the user wants to organize files with date prefixes based on document content.
Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Designed for Claude Code. Recommended model: Opus.
It sits in Documents & Office, covering File organization. The repository describes itself as: 🍎 macOS dotfiles for Python developers. The licence is BSD-2-Clause.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 37173b9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
qpdfbrewpdftoppmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Designed for Claude Code. Recommended model: Opus.
From compatibility in the SKILL.md frontmatter.
Rename With Dates loads about 3.5k tokens when it runs. Until then it costs about 78 tokens; SKILL.md has 1,935 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from kdeldycke/dotfiles at commit 37173b9, republished under its BSD-2-Clause licence (© kdeldycke). 1,935 words, ~3,473 tokens.
.claude/skills/rename-with-dates/SKILL.md (or your agent's skills folder).Rename files in a folder by extracting the effective date from their content and giving them a clean, human-readable title.
YYYY-MM-DD - Clear descriptive title.extTitle casing: capitalize only the first word and proper nouns (title case), like a sentence.
Examples:
2023-11-01 - General terms and conditions.pdf2025-08-01 - Credit card fees and charges.pdf2025-12-01 - Key facts statement - Term deposits.pdf2024-06-15 - Rewards program earning structure.png2024-03-01 - Schedule of charges.pdfPeriod documents that cover a date range (statement exports, period reports) may extend the prefix to YYYY-MM-DD--YYYY-MM-DD - Title.ext — preserve that convention where a folder already uses it.
pdftoppm -png -r 30 and view those insteadScreenshot 2026-01-12 at 11.07.33.png → date is 2026-01-12).xlsx, read docProps/core.xml inside the zip (unzip -p file.xlsx docProps/core.xml) for dcterms:created; for Apple .numbers, the package often embeds a readable preview.jpg or preview.pdf. A stray .~lock.*# file next to a document is a LibreOffice lock: the document may be open somewhere (possibly on another synced machine); stale locks are trash candidatesIMG_1234.jpeg dumps) is an archive, not a document set — propose skipping it wholesale instead of dating each file. Rename a photo only when it acts as a document (appliance rating plate, meter photo, signed-form snapshot), dating it from EXIF DateTimeOriginal via exiftoolList files in the target directory (default: current working directory, or $ARGUMENTS if provided)
Skip files that already follow the YYYY-MM-DD - Title.ext pattern (but offer to clean up their titles if needed). A bare date with no title (like 2023-08-17.pdf) is not compliant — read the file and add the missing title (often just Invoice or Receipt inside a provider folder, where the folder name already gives context)
Read each file to find the effective date and understand the content:
V160701.1 reads as YYMMDD but may be template artwork — if the same code appears on documents with different effective dates, it is not a date. Reference codes (like CRN FRM021121) often embed a MMDDYY date and corroborate other evidence at month precisionLICDSO202600109568.pdf or bill-3733181.pdf) are almost always invoices or receipts — open them; the code itself rarely matters to the userScreenshot 2026-01-12 at ...)YYYY-MM-DD for exact dates, YYYY-MM for month-only, YYYY for year-onlyChoose a clear title:
KFS - Credit cards (Skywards, Cash+ and Live+) vs KFS - Credit cards (Private Bank, Premier and Advance))Brand Model - Doc type (like Gorenje WHT923E5XUK - Cooker hood manual); vendor doc codes often embed the publication date (Grohe …/02.19 = February 2019)Present a summary table showing current name, detected date, and proposed new name
Rename all files after presenting the plan. On case-insensitive filesystems (macOS APFS), a case-only rename fails with "are the same file" — do it in two steps through a temporary name
Post-rename analysis — after renaming, scan the folder for cleanup opportunities and present a report with three sections:
Duplicates: Compare files with similar titles using MD5 checksums (md5 -r). Files with identical hashes are exact duplicates. Propose keeping one and trashing the others. If an undated file is an exact duplicate of an already-compliant one, do not rename it into a name collision — leave its name untouched and propose trashing it. Also compare content when hashes differ but titles match: re-downloads of the same document often differ only in PDF metadata. Printed document numbers (invoice number, receipt number, DocuSign envelope ID) are reliable fingerprints for catching these content-duplicates.
Superseded documents: Identify files that are older versions of the same document type (e.g., "Personal banking general T&C" from 2023 vs 2025). The newer version supersedes the older. Propose trashing the older version.
Expired documents: For time-bound documents (campaigns, offers, promotions) that specify a validity period (e.g., "1 November 2025 – 31 December 2025"), check if the end date has passed relative to today. Propose trashing expired ones. Do not flag standing T&Cs, KFS documents, or privacy policies — only documents with explicit campaign/offer end dates.
Not applicable: documents covering products or services the user does not hold (other product tiers' T&C, KFS for products never subscribed, forms for other customer segments). Ask the user to confirm their actual holdings, then propose trashing the rest — documents for held products stay, as they are the contractual record of the terms in force.
When the user approves trashing, move the files into a dated subfolder like ~/.Trash/{folder} cleanup YYYY-MM-DD/ so the whole batch stays grouped and recoverable. Writing into ~/.Trash is typically blocked by the command sandbox — run that step outside the sandbox.
Verify by listing the final result with plain binaries — ls may be aliased (eza, lsd) and print nothing when piped — and run a compliance sweep: /usr/bin/find . -type f | sed 's|.*/||' | grep -Ev '^[0-9]{4}(-[0-9]{2})?(-[0-9]{2})?(--[0-9]{4}-[0-9]{2}-[0-9]{2})? - ' should return only intentionally held files
Many legal/banking documents repeat the same content translated across several languages, organized as consecutive blocks of pages (e.g., pages 1-10 in English, 11-20 in Arabic, 21-30 in Bulgarian). When detected, propose stripping to keep only English and French pages.
qpdf to extract only the desired pages into a new file (qpdf in.pdf --pages . 1-4 -- out.pdf)qpdf --show-npages must match the detected page total, and the stripped output must match the kept range length — skip the file on any mismatch~/.Trash/{folder} cleanup YYYY-MM-DD/pre-strip originals/) as a safety netThis skill depends on third-party CLI tools. At the start of execution, check if each is available and propose to install any that are missing via brew install.
| Tool | Brew package | Used for |
|---|---|---|
qpdf | qpdf | Extracting page ranges from PDFs (multi-language stripping), page counts (--show-npages) |
pdftoppm | poppler | Rendering PDF pages — the Read tool depends on it to view PDFs at all |
pdftotext | poppler | Extracting text per page for language detection in large PDFs |
exiftool | exiftool | Reading PDF metadata (CreationDate, ModDate) as date fallback |
mdls (macOS built-in) can also be used for metadata.
If a missing tool is needed for the current run, propose the install command and ask the user before proceeding. If the tool is not needed (e.g., no multi-language PDFs detected, so qpdf is not required), skip silently.
If the target folder contains any PDFs, install poppler first thing: without pdftoppm the Read tool cannot render PDF pages, so no PDF can be inspected at all. Note that brew install writes to /opt/homebrew and usually needs to run outside the command sandbox.
mdls or exiftool. Only use file system dates (modification date) as a last resortmv for renaming — never copy-and-delete© kdeldycke, BSD-2-Clause. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in dotfiles/.agents/skills/rename-with-dates of kdeldycke/dotfiles.
Open the folder on GitHubat commit 37173b9
Rename With Dates next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Rename With Dates this skillkdeldycke/dotfiles | 173 | — | ~3.5k | Automated safety check: Pass | BSD-2-Clause | |
| Rename Pdfs Exerealspqrk/autorename-pdf | 122 | — | ~529 | Automated safety check: Pass | MIT | |
| Rename Files Date Prefixpnp/sharepoint-skills | 133 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Tencent DocsLeoYeAI/openclaw-master-skills | 2.2k | — | ~3k | Automated safety check: Pass | MIT | |
| Rename Pdfsrealspqrk/autorename-pdf | 122 | — | ~541 | Automated safety check: Pass | MIT | |
| Create Simple Promptpnp/copilot-prompts | 893 | — | ~2.6k | Automated safety check: Pass | MIT |
realspqrk/autorename-pdf
[Production] Rename PDF files using the compiled autorename-pdf-cli.exe.
pnp/sharepoint-skills
Renames all files in a SharePoint document library (including subfolders) to prefix them with their created date in yyMMdd format (e.g., 251203-Status Report.pdf).
LeoYeAI/openclaw-master-skills
Tencent Docs - Provides complete Tencent Docs operations. An agent skill from LeoYeAI/openclaw-master-skills.
realspqrk/autorename-pdf
[Dev] Rename PDF files using AI (Python, requires venv). An agent skill from realspqrk/autorename-pdf.
pnp/copilot-prompts
This skill should be used when the user asks to "create a new prompt sample", "add a new prompt sample", "scaffold a new prompt sample", "create a prompt contribution", "add a prompt", or needs to…
WecomTeam/wecom-cli
Lists, searches, uploads, downloads and renames files on WeCom Disk (微盘) and creates folders there, through the wecom-cli tool.
kdeldycke/dotfiles
Audit and tune the configuration of coding agents across Claude Code and pi - settings files (settings.json, settings.local.json), permission rules, instruction files (CLAUDE.md, AGENTS.md), skill…
kdeldycke/dotfiles
Analyze a GitHub repository's issues and PRs to find unaddressed feature requests, dismissed ideas, maintenance signals, and opportunities relevant to the current project.
kdeldycke/dotfiles
Create project logo and banner SVGs, then export them to light and dark PNG variants.
kdeldycke/dotfiles
Fill a web form using data extracted from local documents (PDFs, images, spreadsheets).
kdeldycke/dotfiles
Choose what a repository's CI test matrix covers. An agent skill from kdeldycke/dotfiles.
kdeldycke/dotfiles
Compare and synchronize Sphinx documentation against the upstream kdeldycke/repomatic reference, or across sibling projects.
Categories
Rename documents and files (PDFs, images, screenshots, etc.) by reading their content to extract the effective/publication date, then renaming them with a "YYYY-MM-DD - Clear descriptive title.ext"…. Rename With Dates is an agent skill from kdeldycke/dotfiles.ext" format.
Rename With Dates fits situations like: the user wants to organize files with date prefixes based on document content; tasks that involve File organization.
Run `npx skills add kdeldycke/dotfiles --skill rename-with-dates -a claude-code`. Or copy the skill folder (dotfiles/.agents/skills/rename-with-dates in kdeldycke/dotfiles) into .claude/skills/rename-with-dates in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kdeldycke/dotfiles --skill rename-with-dates -a codex`. Or copy the skill folder (dotfiles/.agents/skills/rename-with-dates in kdeldycke/dotfiles) into .agents/skills/rename-with-dates in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kdeldycke/dotfiles --skill rename-with-dates -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rename-with-dates, .gemini/skills/rename-with-dates, .github/skills/rename-with-dates and .opencode/skills/rename-with-dates in your project.
Going by SKILL.md and its folder, Rename With Dates needs the command-line tools its instructions call (qpdf, brew and pdftoppm). Our summary lists: Python 3. Compatibility (from SKILL.md): Designed for Claude Code. Recommended model: Opus..
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Rename With Dates is published under the BSD-2-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Rename With Dates: Rename Pdfs Exe (realspqrk/autorename-pdf, 122 stars), Rename Files Date Prefix (pnp/sharepoint-skills, 133 stars), Tencent Docs (LeoYeAI/openclaw-master-skills, 2.2k stars) and Rename Pdfs (realspqrk/autorename-pdf, 122 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kdeldycke (a GitHub user) maintains it in kdeldycke/dotfiles, which has 173 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on October 9, 2026.
Source: kdeldycke/dotfiles on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.