原始内容
@maxedapps/pi-mdr
A Pi package that renders Markdown with the external MDR CLI. It registers the /mdr command and the render_markdown model tool.
Prerequisite
Install a current MDR release that supports --no-open and --out.
macOS or Linux:
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/maxedapps/mdr/releases/latest/download/mdr-installer.sh | sh
Windows PowerShell:
powershell -ExecutionPolicy Bypass -c "irm https://github.com/maxedapps/mdr/releases/latest/download/mdr-installer.ps1 | iex"
Restart Pi after installation so it sees the updated PATH. To use a binary outside PATH, set MDR_BIN to its path before launching Pi. See MDR releases.
This package does not download or bundle MDR. Installing the extension without MDR is safe: Pi continues to start normally, and /mdr or render_markdown shows installation instructions until MDR is available.
Install
pi install npm:@maxedapps/pi-mdr
/mdr
/mdr
/mdr README.md
/mdr @docs/guide.md
/mdr "docs/a guide.md"
/mdr https://example.com/guide.md
With no argument, /mdr renders the latest completed assistant response on the active branch. One argument is treated as a whole file path or HTTP(S) URL; this is intentionally not shell-style option parsing. A matching outer quote pair is removed and a leading Pi @ on paths is accepted.
The command uses MDR's deterministic temporary output and opens it in the default browser. It reports the generated absolute HTML path.
render_markdown tool
The tool accepts:
| Field | Required | Meaning |
|---|---|---|
source |
yes | latest_response, text, path, or url |
value |
for text, path, url |
Raw Markdown, a file path, or an HTTP(S) URL |
outputPath |
no | Exact HTML destination; relative paths resolve from Pi's working directory |
open |
no | Open the default browser; defaults to true |
Examples:
{ "source": "latest_response" }
{ "source": "text", "value": "# Preview" }
{ "source": "path", "value": "README.md", "open": false }
{ "source": "url", "value": "https://example.com/guide.md" }
{ "source": "text", "value": "# Publish", "outputPath": "public/preview.html", "open": false }
Without outputPath, MDR writes its deterministic cached output. With outputPath, MDR creates missing parent directories and atomically replaces that exact file. The tool returns the absolute HTML path and whether browser opening was requested.
Troubleshooting
If Pi says MDR is missing, install it using the platform command above, ensure mdr is on PATH, and restart Pi. Alternatively set MDR_BIN=/absolute/path/to/mdr. If Pi says MDR is incompatible, update MDR from the latest release; older releases may not provide the required flags.
Browser opening requires a graphical environment and configured default browser. Use "open": false for headless tool calls. If browser opening fails after rendering, the error retains the generated HTML path so it can be opened manually.