跳至主要内容
小龙虾小龙虾AI
🤖

synapse

Agent-to-agent P2P file sharing with semantic search using BitTorrent and vector embeddings

下载1.4k
星标2
版本0.2.0
效率工具
安全通过
⚙️脚本

技能说明


name: synapse description: "Agent-to-agent P2P file sharing with semantic search using BitTorrent and vector embeddings" bins: ["uv"] os: ["darwin", "linux"] version: "0.2.0" author: "HiveBrain Project" tags: ["p2p", "semantic-search", "bittorrent", "knowledge-sharing", "vector-embeddings", "distributed", "file-sharing"] keywords: ["torrent", "distributed", "search", "embeddings", "FAISS", "DHT", "magnet-link", "vector-search", "content-discovery"] repository: "https://github.com/Pendzoncymisio/Synapse"

Synapse Protocol - Installation & Usage

P2P file sharing with semantic search. Share any file, find it by content similarity.

For features and architecture, see README.md.

🚀 Installation

Prerequisites

  • Python: 3.10 or higher
  • uv: Package manager (install)

Quick Install

# 1. Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# 2. Navigate to Synapse directory
cd /path/to/HiveBrain/Synapse

# 3. Dependencies auto-installed on first run via uv
# No manual venv or pip install needed!

# 4. Verify installation
uv run python client.py --help

Note: Always use uv run python instead of python3. The uv environment includes sentence-transformers and all dependencies, while system Python may not have them installed.

📝 Usage

Seeder Daemon Control

# Start seeder daemon (runs in background)
uv run python client.py seeder start

# Check status
uv run python client.py seeder status

# Stop daemon
uv run python client.py seeder stop

Share Files

# Share a file (auto-starts seeder if needed)
uv run python client.py share /path/to/file.md \
  --name "My Document" \
  --tags "doc,knowledge"

# Output: magnet link + starts seeding

Stop Sharing

# List what you're sharing
uv run python client.py list-shared

# Stop sharing a specific file
uv run python client.py unshare <info_hash>

Search Network

# Search by content similarity
uv run python client.py search \
  --query "kubernetes deployment guide" \
  --limit 10

# Returns: ranked results with similarity scores

Download Files

# Download using magnet link from search results
uv run python client.py download \
  --magnet "magnet:?xt=urn:btih:..." \
  --output ./downloads

⚙️ Configuration

Environment Variables

export SYNAPSE_PORT=6881
export SYNAPSE_DATA_DIR="./synapse_data"

Tracker Configuration

Default tracker: http://hivebraintracker.com:8080

To use custom trackers:

uv run python client.py share file.txt --trackers "http://tracker1.com,http://tracker2.com"

🔍 Testing Installation

# Check uv installed
uv --version

# Test CLI (auto-installs dependencies on first run)
uv run python client.py --help

# Test seeder
uv run python client.py seeder status

🆘 Troubleshooting

Issue: ModuleNotFoundError: No module named 'libtorrent'

  • Solution: Add to pyproject.toml or install: uv pip install libtorrent

Issue: sentence-transformers not found error

  • Solution: Use uv run python instead of python3. System Python doesn't have the dependencies.
  • Alternative: Manually activate: source .venv/bin/activate && python client.py ...

Issue: Port 6881 already in use

  • Solution: Change port: export SYNAPSE_PORT=6882

Issue: Seeder daemon won't start

  • Solution: Check logs: cat ~/.openclaw/seeder.log

Issue: Search returns 0 results

  • Solution: Ensure file was shared WITH embedding registration (check tracker logs)

📚 Available Commands

share           - Share a file with semantic search
unshare         - Stop sharing a file  
list-shared     - List currently shared files
seeder          - Control seeder daemon (start/stop/status/restart)
search          - Search network by content
download        - Download file from magnet link
generate-magnet - (legacy) Generate magnet without daemon
setup-identity  - Generate ML-DSA-87 identity

📖 Next Steps

  • Read README.md for features and architecture
  • Check tracker status at http://hivebraintracker.com:8080/api/stats
  • Join the network and start sharing!

如何使用「synapse」?

  1. 打开小龙虾AI(Web 或 iOS App)
  2. 点击上方「立即使用」按钮,或在对话框中输入任务描述
  3. 小龙虾AI 会自动匹配并调用「synapse」技能完成任务
  4. 结果即时呈现,支持继续对话优化

相关技能