git-federation-searcher

TotalClaw 作者 totalclaw

搜索多个自托管 Git 实例,包括 Gitea、Forgejo、GitLab 和 Codeberg。聚合来自 Codeberg.org、Gitea.com、OpenDev、NotABug 和 Gitdab 的搜索结果。支持基于 API 的搜索,并通过 SearXNG 回退到 Web 搜索。允许添加具有 API 令牌支持的自定义私有实例。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw skills install shop:totalclaw:totalclaw~djswiss-git-federation-searcher
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~djswiss-git-federation-searcher/file -o djswiss-git-federation-searcher.md
## 概述(中文)

搜索多个自托管 Git 实例,包括 Gitea、Forgejo、GitLab 和 Codeberg。聚合来自 Codeberg.org、Gitea.com、OpenDev、NotABug 和 Gitdab 的搜索结果。支持基于 API 的搜索,并通过 SearXNG 回退到 Web 搜索。允许添加具有 API 令牌支持的自定义私有实例。

## 原文

# Git Federation Searcher

Search across multiple self-hosted Git instances in parallel.

## Overview

This tool searches across various Git hosting platforms (not just GitHub/GitLab) including:
- Codeberg
- Gitea.com
- NotABug
- Gitdab
- Self-hosted instances

## Features

- **Multi-Instance Search**: Search 5+ instances at once
- **Auto-Discovery**: Detects if instances are reachable
- **Add Custom Instances**: Add your own Gitea/GitLab instances
- **Fallback to Web**: Uses SearXNG if API search fails
- **Type Detection**: Auto-detects Gitea vs GitLab vs Forgejo
- **Results by Stars**: Sorted by popularity

## Default Instances

| Instance | Type | URL |
|----------|------|-----|
| Codeberg | Gitea | https://codeberg.org |
| Gitea.com | Gitea | https://gitea.com |
| OpenDev | Gitea | https://opendev.org |
| NotABug | Gogs | https://notabug.org |
| Gitdab | Forgejo | https://gitdab.com |

## Usage

### Command Line

```bash
# Search all instances
python3 git_federation_searcher.py "whisper"

# List configured instances
python3 git_federation_searcher.py --list

# Add custom instance
python3 git_federation_searcher.py --add MyGitea https://git.example.com gitea

# Remove instance
python3 git_federation_searcher.py --remove MyGitea
```

### Telegram Bot

```
/gitsearch whisper              # Search all instances
/gitinstances                   # List all configured
/gitadd Name URL Type           # Add custom instance
```

## Supported Git Types

| Type | API | Notes |
|------|-----|-------|
| Gitea | ✅ Full | Best support |
| Forgejo | ✅ Full | Gitea fork, same API |
| GitLab | ✅ Full | Uses v4 API |
| Gogs | ✅ Partial | Basic search only |

## Requirements

- Python 3.7+
- curl (for API calls)
- (Optional) SearXNG for web fallback