360 Secure SkillHub
360 安全技能中心

Aitun Tunnel

该 Skill 指导安装 aitun 客户端,先启动本地 Web 服务,再创建隧道把本地 HTTP 或 TCP 服务暴露到公网,返回可分享的公开网址,并提供免费临时隧道与注册自定义子域两种方式,最后给出停止隧道的清理步骤。

ctz168
ctz168
热度 46.05
最近更新 2026-06-23 23:40:32
分类:自动化依赖:代码执行 / 第三方 API应用场景:工作流 / 自动化脚本 / API 集成

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add aitun-tunnel
Metadata
name
aitun-tunnel
version
4.0.5
description
Expose local web pages and HTTP services to the public internet via secure tunnels. Perfect for AI agents that build websites locally and need to share them publicly.
metadata
{"openclaw":{"requires":{"bins":["python3"]},"envVars":[{"name":"AITUN_SERVER","required":false,"description":"AiTun server address (default: aitun.cc:6639)"},{"name":"AITUN_SUBDOMAIN","required":false,"description":"Custom subdomain to register (e.g., myapp)"}],"install":[{"kind":"pip","package":"aitun","bins":["aitun"]},{"kind":"uv","package":"aitun","bins":["aitun"]}],"emoji":"🚇","homepage":"https://aitun.cc","clawhub":"https://clawhub.ai/ctz168/aitun-tunnel"}}

AiTun Tunnel - Expose Local Web Pages to the Public Internet

When to Use

Use this skill when:

  • You've built a web page, dashboard, or web app locally and need to share it publicly
  • You need to test a local HTTP service from an external device
  • You want to demo a locally-running application to someone
  • You need a public webhook endpoint for an external service to call
  • You want to expose a local API for integration testing
  • You built a website for a user and they want to see it in their browser

Do NOT use this skill when:

  • The content only needs to be viewed locally
  • The user asks for a file download (use file sharing instead)

Instructions

Step 1: Install aitun

pip install aitun

Or install via one-line script (Linux/macOS):

curl -fsSL https://aitun.cc/install.sh | bash

Windows (PowerShell):

irm https://aitun.cc/install.ps1 | iex

Or if already installed, verify:

which aitun

Step 2: Start the local web service

Ensure the local web service is running on a port. For static HTML files:

# Serve a directory with a built HTML page
python3 -m http.server 8080 --directory /path/to/html/dir

For other frameworks, start their dev server:

  • Next.js: npm run dev -- -p 3000
  • Flask: flask run --port 5000
  • Any HTTP service on any port

Step 3: Create a tunnel

Option A: Free instant tunnel (no sign-up, 24-hour limit)

Free tunnels use proxy address mode (path-based routing). No subdomain is assigned — the public URL uses the format aitun.cc/<tunnel-code>. Simply run without a token:

aitun -p 8080 &
AITUN_PID=$!
sleep 3

The output will contain the public URL, e.g.:

  • https://aitun.cc/abc123

Option B: Custom subdomain (requires sign-in at aitun.cc)

Registered users can create custom subdomains with two domain levels:

  • Standard domain: myapp.t.aitun.cc (up to 5 subdomains)
  • Short domain: myapp.aitun.cc (up to 2 subdomains)
# Check availability
curl -s https://aitun.cc/aitun-api/subdomain/check/myapp

# Register via website: https://aitun.cc
# Then use your token:
aitun -p 8080 -k YOUR_TOKEN

Step 4: Share the public URL

Tell the user their website is now publicly accessible:

Your website is now live at: https://aitun.cc/abc123

This free tunnel expires in 24 hours.
For a permanent subdomain (e.g., myapp.aitun.cc), register at https://aitun.cc

Step 5: Clean up

When done, stop the tunnel:

kill $AITUN_PID 2>/dev/null

CLI Reference

The aitun command (installed via pip install aitun, or alternatively curl -fsSL https://aitun.cc/install.sh | bash / irm https://aitun.cc/install.ps1 | iex on Windows) accepts these flags:

Flag Description
-p PORT Local HTTP service port (optional; omit for TCP-only mode with --tcp-ports)
-k TOKEN Auth token for registered subdomain (omit for free tunnel)
--host HOST Local service address (default: localhost)
--tcp-ports PORTS TCP forwarding ports, comma-separated (e.g., 22,3306; requires -k). Use without -p for TCP-only mode
--p2p Enable P2P direct connection (default: enabled)
--no-p2p Disable P2P, force server relay mode
--daemon Run as background daemon
--stop Stop running daemon

Notes

  • The -p flag is optional. Omit it when using --tcp-ports only (TCP-only mode, e.g., SSH/RDP forwarding without HTTP)
  • When -p is specified, the local service must be running before starting aitun (the client checks port availability)
  • Free tunnels use proxy address mode (path-based URL like aitun.cc/abc123), NOT subdomains
  • Free tunnels expire after 24 hours, auto-renewed on restart
  • Registered subdomains remain active for 30 days of inactivity; use heartbeat to renew
  • Standard domain subdomains (xxx.t.aitun.cc): up to 5 per user
  • Short domain subdomains (xxx.aitun.cc): up to 2 per user
  • All traffic is encrypted end-to-end
  • Reserved subdomains (www, api, admin, test, etc.) cannot be registered