/ ディレクトリ / プレイグラウンド / skills
● コミュニティ zaferayan ⚡ 即起動

skills

作者 zaferayan · zaferayan/skills

Expo + React Native skill for Claude Code — scaffolds screens, wires navigation, and respects the Expo way instead of reinventing it.

An Expo-flavored skill for Claude Code. Teaches Claude to build mobile apps the Expo way: expo-router for navigation, proper EAS config, Expo SDK modules over random npm packages. Avoids the common trap of LLMs suggesting outdated RN-CLI patterns.

なぜ使うのか

主な機能

ライブデモ

実際の動作

skills-skill-7.replay ▶ 準備完了
0/0

インストール

クライアントを選択

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

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

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

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

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

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

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

Claude Desktop と同じ形式。Windsurf を再起動して反映。

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

Continue はマップではなくサーバーオブジェクトの配列を使用。

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

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add skills-skill-7 -- git clone https://github.com/zaferayan/skills ~/.claude/skills/skills

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: skills

Spin up a new Expo app with tabs and auth in one session

👤 Devs starting a new mobile app who want the boring parts done ⏱ ~45 min beginner

使うタイミング: Day zero of a new project — you want tabs, stack, and a sign-in flow without reading three blog posts.

前提条件
  • Node 20+, Xcode or Android Studio — Standard Expo requirements
  • Skill installed — git clone https://github.com/zaferayan/skills ~/.claude/skills/skills
フロー
  1. Create the app
    Use the Expo skill. Start a new app 'TaskFlow' with expo-router, TypeScript, and the tabs template. Include a login screen with email/password.✓ コピーしました
    → npx create-expo-app run, then file structure with app/(tabs)/ and app/(auth)/
  2. Add state
    Wire up Zustand for the auth store and persist to SecureStore.✓ コピーしました
    → stores/auth.ts with zustand + persist middleware using expo-secure-store
  3. Test on device
    Start the dev server and give me the QR code to scan.✓ コピーしました
    → npx expo start output

結果: A running app on your phone with tabs, auth, and persistence in under an hour.

注意点
  • Claude suggests react-native-cli patterns — Explicitly say 'Expo SDK, expo-router only' in prompts
組み合わせ: filesystem

Configure EAS Build for iOS and Android

👤 Teams ready to ship TestFlight / Play internal ⏱ ~30 min intermediate

使うタイミング: First time submitting to TestFlight/Play.

フロー
  1. Generate eas.json
    Use the Expo skill. Generate eas.json with preview (internal) and production profiles, correct bundle identifier patterns, and env var injection.✓ コピーしました
    → Valid eas.json with both profiles
  2. Wire secrets
    Add my Sentry DSN and API base URL as EAS secrets for preview and production separately.✓ コピーしました
    → eas secret:create commands listed
  3. Trigger the build
    Now trigger a preview build for iOS.✓ コピーしました
    → eas build --profile preview --platform ios command

結果: EAS builds running, secrets managed.

注意点
  • Committing app.json with secrets inline — Secrets go in EAS env, not app.json; let Claude use expo-constants to read them

Integrate a native module using Expo config plugins

👤 Devs adding functionality that requires native code (camera, biometrics, push) ⏱ ~20 min intermediate

使うタイミング: You need functionality beyond JS, but don't want to eject.

フロー
  1. Identify the right package
    Use the Expo skill. I need biometric auth. What's the right Expo SDK module and how do I configure it?✓ コピーしました
    → expo-local-authentication named with config plugin entries
  2. Wire config plugin
    Add the config plugin entries and required iOS usage strings.✓ コピーしました
    → app.json diff with plugins array and NSFaceIDUsageDescription

結果: Native module integrated via managed workflow.

注意点
  • Adding raw native code and breaking managed workflow — Prefer Expo SDK modules and config plugins; eject only if truly needed

組み合わせ

他のMCPと組み合わせて10倍の力を

skills-skill-7 + filesystem

Bulk-apply Expo idioms across an existing RN project

Migrate my RN-CLI app to Expo managed workflow; point at the source tree.✓ コピーしました
skills-skill-7 + git

Commit each step separately so EAS setup changes are auditable

Commit the EAS config changes as a distinct commit before adding secrets.✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
expo_scaffold app name, template, features Starting a new app 0
eas_config profiles needed Setting up builds 0
config_plugin_wire native module name Adding native features 0

コストと制限

運用コスト

APIクォータ
None built-in
呼び出しあたりのトークン
Moderate
金額
Expo is free; EAS Build has a free tier with paid scaling
ヒント
Use EAS local builds during dev; cloud builds only for preview/prod.

セキュリティ

権限、シークレット、影響範囲

認証情報の保管: No direct creds; EAS secrets are managed by Expo
データ送信先: None from skill itself

トラブルシューティング

よくあるエラーと対処法

Metro can't find module after install

Run npx expo install rather than npm install so SDK-compatible versions are picked

確認: npx expo-doctor
Build fails with 'unrecognized bundle identifier'

Bundle ID mismatch between app.json and Apple Developer portal; align them

Native module not found at runtime

Config plugin didn't run; rebuild with eas build or npx expo prebuild --clean

代替案

skills 他との比較

代替案代わりに使う場面トレードオフ
React Native CLIYou need maximum native control and don't mind managing Xcode/GradleMuch more setup burden
FlutterCross-platform with DartDifferent language, different ecosystem

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る