Install PodSaid with Claude Code
If your dev workflow includes Claude Code (or any Claude Agent SDK app), skip the hand-written install and let the agent do it. PodSaid ships an install skill that auto-detects your framework, edits the right file, wires TypeScript types, and verifies the widget renders.
One-line install
macOS / Linux / WSL
curl -sfL https://console.podsaid.com/install-skill.sh | bash Windows PowerShell
iwr -useb https://console.podsaid.com/install-skill.ps1 | iex Both scripts drop the skill into ~/.claude/skills/podsaid-embed (or $env:USERPROFILE\.claude\skills\podsaid-embed on Windows). No git dependency, no npm dependency — just curl + tar (both native on macOS, Linux, and Windows 10+).
Prefer to inspect before running? Download first, read, then execute:
curl -sfL https://console.podsaid.com/install-skill.sh > install-skill.sh
less install-skill.sh
bash install-skill.sh What the skill does
Once installed, invoke with /podsaid-embed or by asking Claude Code in plain English (“add PodSaid to my site”). The agent:
- Detects your framework. Reads
package.json, config files, and directory layout to identify Next.js / SvelteKit / Vue 3 / Angular / React 19 / React ≤ 18 / WordPress / Astro / Hugo / Jekyll / Nuxt / React Native / plain HTML. - Confirms the placement intent. Asks whether to inject site-wide (shared layout), section (specific page/route), or inline (specific component).
- Edits the right file. For each framework, the skill knows the correct injection point —
app/layout.tsxfor Next.js App Router,src/routes/+layout.sveltefor SvelteKit,functions.phpor a block for WordPress, and so on. - Wires framework-specific config. For Vue: adds
compilerOptions.isCustomElement. For Angular: addsCUSTOM_ELEMENTS_SCHEMA. For React 18: uses the string-tag workaround. For React 19: relies on native Web Component support. - Wires TypeScript types (if the project uses TS) so
<ask-pod-widget>has attribute autocomplete and typed refs. - Registers your local dev origin — walks you through the Console → Allowed Origins step so you don’t hit a CORS 403 on
http://localhost:PORT. - Verifies the widget renders — runs your dev server, opens the page, checks the DOM for
<ask-pod-widget>with a#shadow-root (open)child.
Prefer to install by hand?
Every framework the skill supports has a hand-written install recipe under Embed. The skill just executes those recipes automatically — you can always read them and do the edits yourself if you prefer.
What it doesn’t do
- Doesn’t set up your account or feed. You still create your feed and get your
pk_live_key via Console → Settings first. - Doesn’t touch production. The skill edits your local checkout and runs your local dev server. Deploying to prod is on you — same git-commit + push flow you’d use for any other change.
- Doesn’t send your code anywhere. The skill is a set of markdown instructions that guide the local Claude Code agent. Your code stays in your project; only your prompts + selected file contents go through your Claude Code’s normal Claude API calls.
Updating
Re-run the same install command — it overwrites the existing skill with the current version.
Uninstalling
rm -rf ~/.claude/skills/podsaid-embed On Windows:
Remove-Item -Recurse -Force "$env:USERPROFILE.claudeskillspodsaid-embed" Troubleshooting
- “Command not found: curl” / “tar” — macOS and every mainstream Linux distribution include these by default. On Windows 10+,
taris native. If your system lacks them, install via your package manager (brew install curl,apt install curl tar, etc.). - “podsaid-embed directory not found in archive” — the GitLab archive endpoint changed shape. Report this in the PodSaid ui repo issues.
- Claude Code doesn’t see the skill after install — you must restart Claude Code; skills are loaded at startup.
/podsaid-embedcommand not showing — check the skill installed to the right directory (~/.claude/skills/podsaid-embed/SKILL.mdmust exist). If you use a customCLAUDE_SKILL_DIR, pass it as the first argument to the installer.
Under the hood
The install script downloads a subset of the ui monorepo via GitLab’s archive endpoint (?path=packages/widget/skills/podsaid-embed), extracts it into a temp directory, then copies the podsaid-embed folder into your Claude Code skills directory. Nothing is compiled, nothing is executed except the copy — you can read the script before running (see the “prefer to inspect” note above).