uselink-publishlisted
Install: claude install-skill compilet-dev/agent-skill-uselink
# Publish to Uselink
Publishes Markdown or HTML files to uselink and returns the shareable URL.
## Prerequisites
Before publishing, verify both conditions:
1. **CLI installed** -- `which uselink` must resolve. If missing, tell the user to run `npm install -g uselink`.
2. **CLI configured** -- `~/.uselink/config.json` must exist with `api_key` and `api_url`. If missing, tell the user to run `uselink login` (interactive -- Claude cannot run it).
Do not proceed past prerequisites until both pass. The user must fix these themselves.
## Publishing
### When the user gives a file path
```bash
uselink publish <file> --title "Title Here" --format markdown
```
- `--format` is `markdown` or `html`. Infer from extension: `.md` -> `markdown`, `.html`/`.htm` -> `html`.
- `--title` defaults to the filename stem if the user doesn't specify one.
- `--project <uuid>` is optional -- only pass it if the user provides a project/workspace ID.
### When the user says "publish this" about generated content
1. Write the content to a temp file: `/tmp/uselink-publish-<timestamp>.md` (or `.html`).
2. Publish the temp file.
3. Do not clean up the temp file -- the user may want to re-publish after edits.
### After publishing
The CLI prints the public URL to stdout. Extract it and return it to the user as the primary output.
## Format Detection
| Extension | Format flag |
|-----------|-------------|
| `.md`, `.mdx`, `.markdown` | `--format markdown` |
| `.html`, `.htm` | `--format html` |
| N