Tailscale mesh VPN file transfer with open games semantics (play/coplay) and bidirectional lens optics
Status: ✅ Production Ready Framework: Jules Hedges' Compositional Game Theory Language: Ruby (HedgesOpenGames module) Integration: Amp, Codex, Music-Topos CRDT Trit: +1 (Covariant - receiver perspective)
require 'tailscale_file_transfer'
# Create skill
skill = TailscaleFileTransferSkill.new
# Send file to collaborator
result = skill.play(
file_path: "learned_model.jl",
recipient: "alice@coplay",
strategy: :parallel
)
# Receive acknowledgment
ack = skill.coplay(
transfer_id: result[:transfer_id],
delivered: true,
bytes_received: result[:bytes_sent],
transfer_time: result[:transfer_time]
)
puts "Transfer complete. Utility: #{ack[:utility]}"
| File | Purpose |
|------|---------|
| SKILL.md | Skill registration (frontmatter + documentation) |
| INSTALL.md | Installation guide for amp, codex, music-topos |
| README.md | This file - quick overview |
cp /Users/bob/ies/music-topos/lib/tailscale_file_transfer_skill.rb \
~/.local/share/amp/skills/
cp /Users/bob/ies/music-topos/lib/tailscale_file_transfer_skill.rb \
~/.topos/codex/codex-rs/core/src/skills/
Already located at: lib/tailscale_file_transfer_skill.rb
| Metric | Value | |--------|-------| | Sequential Throughput | 1706 KB/s | | Parallel Throughput | 1706 KB/s (4 threads) | | Adaptive Throughput | 538 KB/s (dynamic) | | Test Coverage | 5 scenarios, 100% passing | | Code Size | 576 lines (production) + 540+ (documentation) |
With HedgesOpenGames:
With Music-Topos:
With SplitMixTernary:
cd /Users/bob/ies/music-topos
ruby lib/tailscale_file_transfer_skill.rb
# Output: ✓ All tests completed
For detailed information, see:
INSTALL.md - Installation and setupTAILSCALE_SKILL_DOCUMENTATION.md - Complete API referenceTAILSCALE_SKILL_QUICKREF.md - Quick reference guideskill.play(file_path: "network.jl", recipient: "collaborator@coplay", strategy: :parallel)
peers.each do |peer|
skill.play(file_path: "analysis.json", recipient: "#{peer}@coplay")
end
game = skill.create_open_game
verify_game = create_verification_game
composed = skill.compose_with_other_game(verify_game, composition_type: :sequential)
stats = skill.transfer_stats
puts "Success Rate: #{stats[:success_rate]}%"
puts "Avg Throughput: #{stats[:average_throughput_kbps]} KB/s"
For issues or questions:
INSTALL.md troubleshooting sectionTAILSCALE_SKILL_QUICKREF.md common patternsruby lib/tailscale_file_transfer_skill.rbskill.transfer_history.inspectTo improve this skill:
lib/tailscale_file_transfer_skill.rbruby lib/tailscale_file_transfer_skill.rbPart of music-topos project. See LICENSE file.
Last Updated: 2025-12-21 Version: 1.0 (Production) Status: Ready for Deployment ✅
npx skills add plurigrid/tailscale-file-transfer下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer