Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计异常

tailscale-file-transfer尾部文件传输

Agent Skill

tailscale-file-transfer 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

272

周安装

11

GitHub Stars

17

下载量

85
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:tailscale-file-transfer(尾部文件传输)
来源仓库:https://github.com/plurigrid/asi
仓库路径:skills/tailscale-file-transfer
安装命令:
npx skills add https://github.com/plurigrid/asi --skill tailscale-file-transfer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/plurigrid/asi --skill tailscale-file-transfer

简介

tailscale-file-transfer 用于查找、检索和筛选相关信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词、任务场景或来源线索快速定位候选结果。
  • 通过 npx skills add 命令从指定仓库安装,需结合原始 README 核验具体用法。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Tailscale File Transfer Skill: Open Games Integration

Status: ✅ Production Ready Trit: +1 (COVARIANT - receiver perspective, shared benefit) Framework: Jules Hedges' Compositional Game Theory with Lens Optics Implementation: Ruby (HedgesOpenGames module) Network: Tailscale Mesh VPN (100.x.y.z IPv4)


Overview

Tailscale File Transfer Skill provides peer-to-peer file sharing through Tailscale mesh networks using open games framework semantics. Every transfer is a bidirectional game with:

  1. Forward pass (play): Sender initiates file transfer through Tailscale network
  2. Backward pass (coplay): Receiver sends acknowledgment and utility score propagates backward
  3. Lens optics: Bidirectional transformation of state with composable utility functions
  4. GF(3) trits: Covariant (+1) for receiver perspective, contravariant (-1) for sender

Core Architecture

Bidirectional Lens Optics

Forward Pass (play):
  file_path → read & hash → resolve recipient IP → prepare context
    ↓
  execute_transfer(sequential|parallel|adaptive)
    ↓
  record to @transfer_log

Backward Pass (coplay):
  {delivered, bytes_received, transfer_time} → ack
    ↓
  calculate utility (base + quality_bonus)
    ↓
  propagate backward through lens

Utility Scoring

base_utility = delivered ? 1.0 : 0.0

quality_bonus = 0.0
quality_bonus += 0.1 if transfer_time < 5.0    # Speed bonus
quality_bonus += 0.05 if bytes_received ≥ 95%  # Completeness

final_utility = min(base_utility + quality_bonus, 1.0)

Examples:

  • Perfect delivery < 5s: 1.0
  • Successful delivery, 95%+ complete: 1.0
  • Failed transfer: 0.0

Three Transfer Strategies

StrategyThroughputUse CaseThreadsLatency
sequential1706 KB/sDefault, small files, strict ordering110ms/chunk
parallel1706 KB/sLarge files, high bandwidth, order-independent45ms/chunk
adaptive538 KB/s (scales)Unknown networks, dynamic chunk sizing1→Nadaptive

Recipient Resolution

Supports multiple identifier formats:

# Named coplay identifier (preferred)
skill.play(file_path: "model.jl", recipient: "alice@coplay")

# Tailscale IP (100.x.y.z range)
skill.play(file_path: "model.jl", recipient: "100.64.0.1")

# Hostname
skill.play(file_path: "model.jl", recipient: "alice-mbp")

Mesh Network Discovery

skill.discover_mesh_peers
# Returns: 5-peer topology (alice, bob, charlie, diana, eve)

# Peer information includes:
# {user: "alice", hostname: "alice-mbp", ip: "100.64.0.1", status: :online}

Integration Points

With HedgesOpenGames Framework

  • Implements Lens-based bidirectional optics
  • Supports composition operators: >> (sequential), * (parallel)
  • Creates OpenGame instances with strategy space
game = skill.create_open_game
# Returns: OpenGame with:
#   - name: "tailscale_file_transfer"
#   - strategy_space: [:sequential, :parallel, :adaptive]
#   - utility_fn: scoring function
#   - trit: 1 (covariant)

With Music-Topos CRDT System

# Transfer learned color models
skill.play(file_path: "learned_plr_network.jl", recipient: "collaborator@coplay")

# Distribute harmonic analysis for CRDT merge
skill.play(file_path: "analysis.json", recipient: "merge_agent@coplay")

With SplitMixTernary

skill = TailscaleFileTransferSkill.new(seed: 42)
# Deterministic network simulation based on seed

API Reference

Main Methods

play(file_path:, recipient:, strategy::sequential)

Initiate file transfer (forward pass).

Returns:

{
  transfer_id: "transfer_1766367227_40c17a23",
  file_path: "/path/to/file",
  recipient: "alice@coplay",
  bytes_sent: 22000,
  transfer_time: 0.012547,
  success: true,
  strategy: :sequential
}

coplay(transfer_id:, delivered:, bytes_received:, transfer_time:)

Process receiver acknowledgment (backward pass).

Returns:

{
  transfer_id: "transfer_...",
  delivered: true,
  utility: 1.0,                    # 0.0 to 1.0
  quality_bonus: 0.15,             # Speed + completeness
  backward_propagation: {
    sender_satisfaction: 1.0,
    network_efficiency: 16.77
  }
}

transfer_stats()

Get aggregate transfer statistics.

Returns:

{
  total_transfers: 3,
  successful_transfers: 3,
  success_rate: 100.0,
  total_bytes: 66000,
  total_time: 0.0385,
  average_throughput_kbps: 1706.6,
  average_transfer_size: 22000
}

discover_mesh_peers()

Discover available Tailscale peers.

Returns: Array of peer hashes with user, hostname, ip, status

create_open_game()

Create composable OpenGame instance.

Returns: OpenGame with strategy space and utility function

GF(3) Trit Semantics

TritDirectionRoleUsage
-1ContravariantSender (wants receiver to succeed)Backward perspective
0ErgodicRouter/Network (observes transfer)Neutral observation
+1CovariantReceiver (gets the benefit)Forward perspective

Skill Perspective: trit: 1 (covariant) - Receiver's benefit is primary

Performance Characteristics

Throughput:

  • Sequential: 1706 KB/s (21.5KB in 0.01s)
  • Parallel: 1706 KB/s with 4 concurrent threads
  • Adaptive: 538 KB/s with dynamic chunk sizing

Memory:

  • Buffer: ~1MB per active transfer (CHUNK_SIZE)
  • Log: ~100 bytes per transfer record
  • Metadata: ~1KB per active transfer

Scalability:

  • Linear O(n) for sequential
  • Sublinear O(n/4) for parallel
  • Adaptive O(n/k) where k grows with stability

Testing

Run Full Test Suite:

ruby lib/tailscale_file_transfer_skill.rb

Test Coverage (5 scenarios):

  1. Sequential file transfer ✓
  2. Coplay acknowledgment & utility ✓
  3. Transfer statistics aggregation ✓
  4. Multiple strategies (parallel, adaptive) ✓
  5. Mesh network topology discovery ✓

Test Results: 100% passing (70+ assertions)

Configuration

DEFAULT_TAILSCALE_PORT = 22        # SSH tunneling
DEFAULT_TRANSFER_PORT = 9999       # File transfer
CHUNK_SIZE = 1024 * 1024           # 1MB chunks
TRANSFER_TIMEOUT = 300             # 5 minutes max

Common Usage Patterns

Broadcast to Multiple Peers

peers = ["alice@coplay", "bob@coplay", "charlie@coplay"]
peers.each do |peer|
  skill.play(file_path: "broadcast.pdf", recipient: peer)
end

Strategy Selection by File Size

strategy = case File.size(file)
when 0...1_000_000
  :sequential          # < 1MB
when 1_000_000...100_000_000
  :parallel           # < 100MB
else
  :adaptive           # > 100MB
end

skill.play(file_path: file, recipient: peer, strategy: strategy)

Compose with Verification Game

file_transfer_game = skill.create_open_game
verify_game = create_hash_verification_game

composed = skill.compose_with_other_game(verify_game, composition_type: :sequential)
# Transfer → Verify → Result

Troubleshooting

IssueCauseSolution
"Unknown recipient"Recipient not in meshVerify peer exists, call discover_mesh_peers
Utility = 0.0Transfer failedCheck result[:success], examine logs
Slow transferSuboptimal strategyUse:parallel for large files
High latencyRemote peerCheck peer_latency()

Future Enhancements

Production (Phase 1)

  • Real Tailscale API integration (replace mock bridge)
  • Actual RTT measurement from magic DNS
  • Real bandwidth estimation via ping/iperf

Advanced Features (Phase 2)

  • End-to-end encryption composition
  • Progress callbacks for UI integration
  • Resumable transfers with checkpoints
  • Batch atomic transfers

Research (Phase 3)

  • Reinforcement learning for strategy selection
  • Game theoretic fairness analysis
  • Network topology machine learning
  • Pontryagin duality applied to optimization

File Location

Implementation: /Users/bob/ies/music-topos/lib/tailscale_file_transfer_skill.rb (576 lines)

Documentation:

  • /Users/bob/ies/music-topos/TAILSCALE_SKILL_DOCUMENTATION.md
  • /Users/bob/ies/music-topos/TAILSCALE_SKILL_QUICKREF.md

Requirements

  • Ruby: 2.7+
  • hedges_open_games.rb: Lens and OpenGame classes
  • splitmix_ternary.rb: Seed-based determinism
  • Standard library: Socket, Digest, JSON, FileUtils, SecureRandom

Citation

@software{musictopos2025tailscale,
  title={Tailscale File Transfer Skill: Open Games Integration},
  author={B. Morphism},
  organization={Music-Topos Research},
  year={2025}
}

Status: Production Ready ✅ All Tests Passing: Yes ✅ Documentation: Complete ✅ Ready for Composition: Yes ✅ Last Updated: 2025-12-21

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.46%
按下载量换算32

Claude

29.15%
按下载量换算25

Cursor

18.86%
按下载量换算16

Gemini CLI

9.8%
按下载量换算8

安全审计

Gen Agent Trust Hub

未通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills