Skip to content

Slow / Unstable Skill Download in China due to raw.githubusercontent.com #13

@Ruofei-personal

Description

@Ruofei-personal

Description

The current downloader implementation fetches files using:

response = self.session.get(raw_url)

While this works in some environments, it leads to significant performance and stability issues in certain regions, especially mainland China.

Problem

•	raw.githubusercontent.com is very slow and unstable in China
•	In practice, requests often:
•	take several seconds per file
•	or fail intermittently due to network issues
•	Since a skill may contain multiple files, the overall download becomes extremely slow or even unusable

Additionally, the current implementation:
• does not specify a timeout, so requests may hang indefinitely
• does not provide retry logic
• does not support fallback mirrors
• relies entirely on a single source: raw.githubusercontent.com

Suggested Improvements

  1. Add configurable timeout
  2. Add fallback mirrors
    When the primary source is slow or unavailable, try alternative mirrors such as:
    https://ghproxy.com/
    https://raw.gitmirror.com/
    or make it configurable (if possible)

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions