/ Каталог / Песочница / pinme
● Сообщество glitternetwork ⚡ Сразу

pinme

автор glitternetwork · glitternetwork/pinme

Zero-config frontend deploys to IPFS via one CLI command — Claude runs pinme upload dist and hands back a preview URL.

PinMe is a CLI + Claude Skill that deploys static sites (dist/build/out/public) to IPFS in a single command, no accounts or servers. The skill contains an AI Execution Protocol so Claude knows exactly how to verify Node, install the CLI, detect the right build folder, and return the preview URL to the user.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

pinme-skill.replay ▶ готово
0/0

Установка

Выберите клиент

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "pinme-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/glitternetwork/pinme",
        "~/.claude/skills/pinme"
      ],
      "_inferred": true
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "pinme-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/glitternetwork/pinme",
        "~/.claude/skills/pinme"
      ],
      "_inferred": true
    }
  }
}

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "pinme-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/glitternetwork/pinme",
        "~/.claude/skills/pinme"
      ],
      "_inferred": true
    }
  }
}

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "pinme-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/glitternetwork/pinme",
        "~/.claude/skills/pinme"
      ],
      "_inferred": true
    }
  }
}

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "pinme-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/glitternetwork/pinme",
        "~/.claude/skills/pinme"
      ]
    }
  ]
}

Continue использует массив объектов серверов, а не map.

~/.config/zed/settings.json
{
  "context_servers": {
    "pinme-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/glitternetwork/pinme",
          "~/.claude/skills/pinme"
        ]
      }
    }
  }
}

Добавьте в context_servers. Zed перезагружается автоматически.

claude mcp add pinme-skill -- git clone https://github.com/glitternetwork/pinme ~/.claude/skills/pinme

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: pinme

Ship a preview link for a landing page in under a minute

👤 Developers iterating on a static site with Claude Code ⏱ ~3 min beginner

Когда использовать: You want to share a preview without configuring Vercel/Netlify, just a raw link.

Предварительные требования
  • Node.js installed — node >= 18 — the skill verifies this
  • A built static site — Run your framework's build (e.g. npm run build)
Поток
  1. Ask Claude to deploy
    Build this Astro site and deploy it with pinme.✓ Скопировано
    → Claude runs the build, detects dist/, installs pinme if missing, runs the upload
  2. Get the URL
    (no prompt — just wait)✓ Скопировано
    → Preview URL returned in the chat

Итог: A shareable IPFS-hosted preview.

Подводные камни
  • Wrong folder detected (e.g. has both dist/ and build/) — Tell Claude explicitly: 'upload from build/'
  • IPFS gateway slow on first load — Expected — subsequent loads are cached
Сочетать с: filesystem

Run a review cycle where each iteration gets a fresh preview URL

👤 Designers reviewing Claude-generated UIs beginner

Когда использовать: You're iterating on a prototype and want every version to be linkable.

Поток
  1. Build and deploy after each change
    Every time I say 'ship', rebuild and upload via pinme, then post the URL.✓ Скопировано
    → Claude develops a rhythm of build → deploy → URL

Итог: A linkable preview history of your iterations.

Подводные камни
  • IPFS CIDs change on every deploy (expected) — Use ENS or DNSLink if you want a stable URL
Сочетать с: filesystem

Комбинации

Сочетайте с другими MCP — эффект x10

pinme-skill + filesystem

Claude writes or edits the site, then deploys via pinme without leaving the session

Edit the hero copy, rebuild, then pinme upload dist — give me the new URL.✓ Скопировано
pinme-skill + github

Commit the change and ship a preview URL in one turn

Commit the change on a branch, deploy via pinme, and put the preview URL in the PR description.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
pinme upload <folder> folder path (dist/, build/, etc.) Deploy a static build Free tier available
Build-folder auto-detection current project directory Before the upload 0
Node version verification none Pre-flight check 0

Стоимость и лимиты

Во что обходится

Квота API
PinMe free tier with usage caps; check pinme.eth for current limits
Токенов на вызов
Trivial — the skill is small
Деньги
Free tier available; paid tiers for larger / more persistent pins
Совет
Let test previews expire; only pin the production URL long-term.

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: No credentials required for anonymous uploads. Optional account key for pinning persistence.
Исходящий трафик: Uploaded bundle goes to IPFS — public by design. Never upload secrets, .env files, or non-public assets.

Устранение неполадок

Частые ошибки и исправления

pinme: command not found

The skill should install it; run npm i -g pinme manually if blocked.

Проверить: pinme --version
Upload hangs

Check network; some corporate firewalls block IPFS bootstrap nodes.

Wrong folder uploaded

Pass an explicit path: pinme upload ./dist rather than relying on auto-detect.

Альтернативы

pinme в сравнении

АльтернативаКогда использоватьКомпромисс
Vercel / NetlifyYou want custom domains, serverless functions, or CI integrationMore features, requires account and config
GitHub PagesYour code is on GitHub and you want a stable github.io URLCoupled to a repo; slower deploy loop

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills