Skip to main content
AI/MLdiegomarino

trim-md

Trim markdown for LLM consumption — remove token waste, normalize structure

Stars
56
Source
diegomarino/claude-toolshed
Updated
2026-04-08
Slug
diegomarino--claude-toolshed--trim-md
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/diegomarino/claude-toolshed/HEAD/plugins/trim-md/skills/trim-md/SKILL.md -o .claude/skills/trim-md.md

Drops the SKILL.md into .claude/skills/trim-md.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

/trim-md

User request: "$ARGUMENTS"

Task

Trim and optimize markdown files for LLM/agent consumption. Run the trim-md script on the given paths, then present the output.

Opt-out

Files containing <!-- trim-md:disable --> on its own line are excluded. The comment must be a standalone line — inline mentions in prose or code blocks are ignored.

Process

Step 1: Resolve skill directory

SKILL_DIR="$(find "$HOME/.claude/plugins/cache" -type d -name "trim-md" -path "*/skills/trim-md" 2>/dev/null | head -1)"
[[ -z "$SKILL_DIR" ]] && SKILL_DIR="$(find "$HOME" -maxdepth 8 -type d -name "trim-md" -path "*/skills/trim-md" 2>/dev/null | head -1)"
echo "SKILL_DIR=$SKILL_DIR"

If SKILL_DIR is empty, stop with: "Could not locate the trim-md skill directory. Ensure the plugin is installed."

Step 2: Ensure dependencies

bash "$SKILL_DIR/scripts/ensure-deps.sh"

If the script exits with an error, show the missing dependency message to the user and stop.

Step 3: Run trim-md

Parse $ARGUMENTS for paths and the dry-run flag.

Dry-run detection: If $ARGUMENTS contains any of these tokens (case-insensitive): dry, dry-run, --dry-run, dryrun — pass --dry-run to the script. Remove the token from the path list.

Remaining arguments are the target paths. If no paths remain, use . (current directory).

bash "$SKILL_DIR/scripts/trim-md.sh" [--dry-run] <paths>

Step 4: Present output

Show the script output to the user as-is. No additional commentary needed unless there were errors.