feat(commands): more commands (#30)

- I wrote a scripts to copy and generate all commands missing in iris
from fig repo: https://github.com/withfig/autocomplete
- Add a new script to generate commands docs about which commands
currently are inside commands folder
377d4aac663590e504fe39a92eb4dac4cbd333b2
- Add more icons e64d4e70a1db61e62053460a882e093bd6373ab1
This commit is contained in:
VERSE
2026-07-04 22:08:36 +07:00
committed by GitHub
parent ffa336196a
commit 2ef3c90819
482 changed files with 22971 additions and 5 deletions
+70
View File
@@ -0,0 +1,70 @@
package ops
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "tailscale",
Description: "Connect to Tailscale, logging in if needed",
Subcommands: []core.Subcommand{
{Name: "up", Description: "Connect to Tailscale, logging in if needed"},
{Name: "down", Description: "Disconnect from Tailscale"},
{Name: "logout", Description: "Disconnect from Tailscale and expire current node key"},
{Name: "netcheck", Description: "Print an analysis of local network conditions"},
{Name: "ip", Description: "Show Tailscale IP addresses"},
{Name: "status", Description: "Show state of tailscaled and its connections"},
{Name: "ping", Description: "Ping a host at the Tailscale layer, see how it routed"},
{Name: "nc", Description: "Connect to a port on a host, connected to stdin/stdout"},
{Name: "ssh", Description: "SSH to a Tailscale machine"},
{Name: "version", Description: "Print Tailscale version"},
{Name: "web", Description: "Run a web server for controlling Tailscale"},
{Name: "file", Description: "Send or receive files"},
{Name: "cp", Description: "Copy file(s) to a host"},
{Name: "get", Description: "Move files out of the Tailscale file inbox"},
{Name: "bugreport", Description: "Print a shareable identifier to help diagnose issues"},
{Name: "cert", Description: "Get TLS certs"},
{Name: "help", Description: "Print help message"},
},
Options: []core.Option{
{Name: "--accept-dns", Description: "Accept DNS configuration from the admin panel"},
{Name: "--accept-routes", Description: "Accept routes advertised by other Tailscale nodes"},
{Name: "--advertise-exit-node", Description: "Offer to be an exit node for internet traffic for the tailnet"},
{Name: "--advertise-routes", Description: "Allow direct access to the local network when routing traffic via an exit node"},
{Name: "--force-reauth", Description: "Force reauthentication"},
{Name: "--host-routes", Description: "Install host routes to other Tailscale nodes"},
{Name: "--hostname", Description: "Hostname to use instead of the one provided by the OS"},
{Name: "--json", Description: "Output in JSON format"},
{Name: "--login-server", Description: "Login server to use"},
{Name: "--operator", Description: "Unix username to allow to operate on tailscaled without sudo"},
{Name: "--qr", Description: "Show QR code for login URLs"},
{Name: "--reset", Description: "Reset unspecified settings to their default values"},
{Name: "--shields-up", Description: "Don't allow incoming connections"},
{Name: "--ssh", Description: "Run an SSH server, permitting access per tailnet admin's declared policy"},
{Name: "--help", Description: "Show help message"},
{Name: "--every", Description: "If non-zero, do an incremental report with the given frequency"},
{Name: "--format", Description: "Output format"},
{Name: "--verbose", Description: "Verbose logs"},
{Name: "--1", Description: "Only print one IP address"},
{Name: "--4", Description: "Only print IPv4 address"},
{Name: "--6", Description: "Only print IPv6 address"},
{Name: "--active", Description: "Filter output to only peers with active sessions"},
{Name: "--browser", Description: "Open a browser in web mode"},
{Name: "--listen", Description: "Listen address for web mode; use port 0 for automatic (default 127.0.0.1:8384)"},
{Name: "--peers", Description: "Show status of peers"},
{Name: "--self", Description: "Show status of local machine"},
{Name: "--web", Description: "Run webserver with HTML showing status"},
{Name: "--c", Description: "Max number of pings to send"},
{Name: "--timeout", Description: "Timeout before giving up on a ping"},
{Name: "--tsmp", Description: "Do a TSMP-level ping (through IP + wireguard, but not involving host OS stack)"},
{Name: "--until-direct", Description: "Stop once a direct path is established"},
{Name: "--daemon", Description: "Also print local node's daemon version"},
{Name: "--cgi", Description: "Run as CGI script"},
{Name: "--cert-file", Description: "Stdout"},
{Name: "--key-file", Description: "Stdout"},
{Name: "--serve-demo", Description: "Show help message"},
{Name: "--socket", Description: "Path to tailscaled's unix socket"},
},
})
}