Claude Code Plugins

Community-maintained marketplace

Feedback

Get real-time weather information using web search. Use when user asks about weather, temperature, forecast, or climate conditions for any location. Supports voice input (microphone) and voice output (TTS). By default outputs BOTH text and voice.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name weather-voice
description Get real-time weather information using web search. Use when user asks about weather, temperature, forecast, or climate conditions for any location. Supports voice input (microphone) and voice output (TTS). By default outputs BOTH text and voice.

Weather Voice Assistant

Generated by Claude Code with Opus 4.5

A Claude Code skill that provides real-time weather information with voice input/output support.

Important: Latency

This is NOT real-time. Total latency is 15-40 seconds from speaking to hearing response.

Important: Voice Input Workflow

Users must TYPE first to trigger voice input. Claude Code is text-based and does not continuously listen.

Correct workflow:

  1. User TYPES: "Let me speak my weather question"
  2. Claude invokes skill with --mic flag
  3. User SPEAKS when prompted
  4. Claude returns weather with audio

Default Behavior

  • Voice + Text Output: Prints weather to terminal AND plays audio via TTS
  • Text Input: User types their query (default)
  • Voice Input: User can speak their query via microphone (must type trigger first)

Instructions

  1. For weather queries (default: voice + text output):

    cd .claude/skills/weather-voice && npx tsx src/index.ts "<user_query>"
    

    This will print the weather AND play it as audio.

  2. If user explicitly wants TEXT ONLY output (no audio), add --text-only flag:

    cd .claude/skills/weather-voice && npx tsx src/index.ts "<user_query>" --text-only
    

    Use this when user says: "text only", "no audio", "no voice", "silent", "just text"

  3. If user wants to SPEAK their question via microphone:

    cd .claude/skills/weather-voice && npx tsx src/index.ts --mic
    

    This records for 5 seconds by default. For longer recording:

    cd .claude/skills/weather-voice && npx tsx src/index.ts --mic --duration 10
    

    Use this when user says: "use my microphone", "let me speak", "voice input", "record my question"

  4. If user provides an audio file to transcribe:

    cd .claude/skills/weather-voice && npx tsx src/index.ts --input "<audio_path>"
    

Examples

  • "What's the weather in Paris?" → Default (voice + text output)
  • "Tokyo weather please" → Default (voice + text output)
  • "Weather in London, text only" → Add --text-only flag
  • "What's the forecast? no audio" → Add --text-only flag
  • "Let me speak my question" → Add --mic flag
  • "Use my microphone to ask about weather" → Add --mic flag
  • "Record my question for 10 seconds" → Add --mic --duration 10
  • "Listen to this audio and get weather" → Add --input flag with audio path

Requirements

  • OPENAI_API_KEY environment variable must be set
  • Node.js 18+ installed
  • Audio playback support (speakers, audio drivers)
  • For microphone input:
    • Windows: ffmpeg (winget install ffmpeg)
    • macOS: SoX (brew install sox)
    • Linux: arecord (sudo apt install alsa-utils)