Skip to content

Streamline Windows installation process #15

@back1ply

Description

@back1ply

Problem

The installation process on Windows fails due to multiple issues:

1. Unicode/Emoji Encoding Errors

The scripts use emoji characters that fail on Windows' default cp1252 console encoding:

UnicodeEncodeError: 'charmap' codec can't encode character '\U0001f527' in position 0

Files affected:

  • scripts/run.py
  • scripts/setup_environment.py

Suggested fix: Add encoding configuration at the top of each script:

import sys
if sys.platform == 'win32':
    sys.stdout.reconfigure(encoding='utf-8', errors='replace')
    sys.stderr.reconfigure(encoding='utf-8', errors='replace')

2. Pip Upgrade Fails Silently

In setup_environment.py, the pip upgrade step fails but captures output, making debugging difficult:

subprocess.run(
    [str(self.venv_pip), "install", "--upgrade", "pip"],
    check=True,
    capture_output=True,  # Hides error details
    text=True
)

Suggested fix:

  • Make pip upgrade optional or skip if already recent
  • Don't use capture_output=True during setup so users can see what's happening
  • Or add fallback logic if upgrade fails

3. Multi-step Manual Recovery Required

When the automated setup fails, users must manually:

  1. Navigate to the skill directory
  2. Run pip install directly
  3. Install Chrome for Patchright separately

Suggested improvements:

  • Add a --verbose flag to show all output during setup
  • Add better error recovery - if pip upgrade fails, continue with existing pip
  • Consider a simpler install.bat / install.sh for first-time setup
  • Document manual installation steps in README for when automation fails

Environment

  • OS: Windows 11
  • Python: 3.14
  • Console: Windows Terminal (cp1252 default encoding)

Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions