{
  "report_info": {
    "version": "9.0.1",
    "generated_at": "2026-06-28T11:16:35Z",
    "binary_name": "online-info-switch"
  },
  "binary": {
    "name": "online-info-switch",
    "path": "/opt/kodachi/dashboard/hooks/online-info-switch",
    "timestamp": "2026-06-28T11:16:35Z",
    "file_info": {
      "size": 6546624,
      "sha256": "dbb452059b5f82cbe96aa200eaba6832bb2a674b8c825a6e9460eef9a44f9984"
    },
    "flag_n": {
      "command": "info",
      "data": {
        "author": "Warith Al Maawali",
        "copyright": "© 2026 Linux Kodachi",
        "description": "Online information hub for Kodachi OS - RSS feeds, paste services, freshness proofs, and connectivity status",
        "features": [
          "Online/offline status checking via health-control",
          "RSS feed aggregation from security news sources",
          "Public paste service integration",
          "Proof of freshness with current news and blockchain data"
        ],
        "license": "Proprietary",
        "name": "online-info-switch",
        "securityFeatures": {
          "authentication": "Not provided by cli-core (see online-auth)",
          "encryption": "Not provided by cli-core",
          "inputValidation": "Argument parsing via clap; per-command validation is the consumer's responsibility",
          "rateLimiting": "Not provided by cli-core"
        },
        "systemRequirements": {
          "dependencies": [
            "OpenSSL",
            "libcurl"
          ],
          "os": "Linux (Debian-based)",
          "privileges": "root/sudo for system operations"
        },
        "version": "9.8.4 (build 319)",
        "website": "https://www.digi77.com"
      },
      "errors": [],
      "metadata": {
        "executionTime": 1,
        "hostname": "REDACTED-BUILD-HOST",
        "user": "REDACTED-BUILD-USER"
      },
      "status": "success",
      "timestamp": "2026-06-28T11:16:35.351006940Z",
      "version": "9.8.4 (build 319)",
      "warnings": []
    },
    "flag_v": {
      "command": "version",
      "data": {
        "buildDate": "REDACTED-BUILD-TIME",
        "gitCommit": "unknown",
        "name": "online-info-switch",
        "rustVersion": "1.82.0",
        "version": "9.8.4 (build 319)"
      },
      "errors": [],
      "metadata": {
        "executionTime": 1,
        "hostname": "REDACTED-BUILD-HOST",
        "user": "REDACTED-BUILD-USER"
      },
      "status": "success",
      "timestamp": "2026-06-28T11:16:35.427648543Z",
      "version": "9.8.4 (build 319)",
      "warnings": []
    },
    "flag_h": {
      "command": "help",
      "data": {
        "commandCategories": [
          {
            "category": "Commands",
            "commands": [
              {
                "description": "Show current online/offline status",
                "name": "status",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch status [OPTIONS]"
              },
              {
                "description": "Fetch RSS feeds from security news sources",
                "name": "rss",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch rss [OPTIONS]"
              },
              {
                "description": "Upload content to public paste services",
                "name": "paste",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch paste [OPTIONS]"
              },
              {
                "description": "Show proof of system freshness",
                "name": "freshness",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch freshness [OPTIONS]"
              },
              {
                "description": "Check cryptocurrency and precious metals prices",
                "name": "price",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch price [OPTIONS]"
              },
              {
                "description": "Check Bitcoin wallet balance",
                "name": "balance",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch balance [OPTIONS]"
              },
              {
                "description": "Check Kodachi release information",
                "name": "releases",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch releases [OPTIONS]"
              },
              {
                "description": "Fetch Kodachi cloud infrastructure statistics",
                "name": "cloud-stats",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch cloud-stats [OPTIONS]"
              },
              {
                "description": "Check Kodachi network connection status",
                "name": "knet-status",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch knet-status [OPTIONS]"
              },
              {
                "description": "Check VPS Tor exit IP through SOCKS5 proxy",
                "name": "vps-tor-check",
                "options": [],
                "requires_sudo": false,
                "usage": "online-info-switch vps-tor-check [OPTIONS]"
              }
            ]
          }
        ],
        "description": "Online information hub for Kodachi OS - RSS feeds, paste services, freshness proofs, and connectivity status",
        "environmentVariables": [
          {
            "default": "info",
            "description": "Set logging level",
            "name": "RUST_LOG",
            "values": "error|warn|info|debug|trace"
          },
          {
            "default": "unset",
            "description": "Disable all colored output when set",
            "name": "NO_COLOR",
            "values": "1|true|yes (any value disables color)"
          }
        ],
        "exitCodes": {
          "0": "Success",
          "1": "General error",
          "2": "Invalid arguments",
          "3": "Permission denied",
          "4": "Network error",
          "5": "File not found"
        },
        "globalOptions": [
          {
            "description": "Print help information",
            "flag": "-h, --help"
          },
          {
            "description": "Print version information",
            "flag": "-v, --version"
          },
          {
            "description": "Display detailed information",
            "flag": "-n, --info"
          },
          {
            "description": "Show usage examples",
            "flag": "-e, --examples"
          },
          {
            "description": "Output in JSON format",
            "flag": "--json"
          },
          {
            "description": "Force output format (text|json)",
            "flag": "-o, --output-format <FORMAT>"
          },
          {
            "description": "Pretty-print JSON output with indentation",
            "flag": "--json-pretty"
          },
          {
            "description": "Enhanced JSON output with improved formatting (like jq)",
            "flag": "--json-human"
          },
          {
            "description": "Select specific fields to include in output (comma-separated)",
            "flag": "--fields <FIELD_LIST>"
          },
          {
            "description": "Limit number of results returned",
            "flag": "--limit <NUMBER>"
          },
          {
            "description": "Skip first N results (for pagination)",
            "flag": "--offset <NUMBER>"
          },
          {
            "description": "Working directory (defaults to auto-detected base directory)",
            "flag": "-d, --work-dir <PATH>"
          },
          {
            "description": "Set custom port number (1024-65535)",
            "flag": "--port <PORT>"
          },
          {
            "description": "Set log level (error|warn|info|debug)",
            "flag": "--log-level <LEVEL>"
          },
          {
            "description": "Enable verbose output",
            "flag": "--verbose"
          },
          {
            "description": "Suppress non-essential output",
            "flag": "--quiet"
          },
          {
            "description": "Disable colored output",
            "flag": "--no-color"
          },
          {
            "description": "Use custom configuration file",
            "flag": "--config <FILE>"
          },
          {
            "description": "Set operation timeout in seconds (optional; no default applied)",
            "flag": "--timeout <SECS>"
          },
          {
            "description": "Retry attempts (optional; no default applied)",
            "flag": "--retry <COUNT>"
          }
        ],
        "name": "online-info-switch",
        "usage": "online-info-switch [OPTIONS] [COMMAND] [ARGS]"
      },
      "errors": [],
      "metadata": {
        "executionTime": 1,
        "hostname": "REDACTED-BUILD-HOST",
        "user": "REDACTED-BUILD-USER"
      },
      "status": "success",
      "timestamp": "2026-06-28T11:16:35.504814063Z",
      "version": "9.8.4 (build 319)",
      "warnings": []
    },
    "flag_e": {
      "command": "examples",
      "data": {
        "categories": [
          {
            "description": "Common operations for online information services",
            "examples": [
              {
                "command": "online-info-switch status",
                "description": "Check online/offline status",
                "expectedOutput": "System is online/offline"
              },
              {
                "command": "online-info-switch rss",
                "description": "Fetch security RSS feeds",
                "expectedOutput": "Latest security news"
              },
              {
                "command": "online-info-switch freshness",
                "description": "Generate freshness proof",
                "expectedOutput": "Time verification with news and blockchain"
              }
            ],
            "id": "basic",
            "title": "Basic Usage"
          },
          {
            "description": "Different output format options",
            "examples": [
              {
                "command": "online-info-switch status --json",
                "description": "JSON output",
                "expectedOutput": "Compact JSON format"
              },
              {
                "command": "online-info-switch status --json-pretty",
                "description": "Pretty JSON",
                "expectedOutput": "Indented JSON format"
              },
              {
                "command": "online-info-switch status --json-human",
                "description": "Colored JSON",
                "expectedOutput": "Colorized JSON output"
              }
            ],
            "id": "output",
            "title": "Output Formats"
          },
          {
            "description": "Fetch and display security news from RSS feeds",
            "examples": [
              {
                "command": "online-info-switch rss",
                "description": "Fetch all RSS feeds",
                "expectedOutput": "Latest security news"
              },
              {
                "command": "online-info-switch rss --random",
                "description": "Fetch from random source",
                "expectedOutput": "News from random feed"
              },
              {
                "command": "online-info-switch rss --sources \"darkreading,wired\"",
                "description": "Fetch from specific sources",
                "expectedOutput": "News from specified sources"
              },
              {
                "command": "online-info-switch rss --max-items 5",
                "description": "Limit to 5 items",
                "expectedOutput": "Top 5 news items"
              },
              {
                "command": "online-info-switch rss --json-pretty",
                "description": "RSS feeds in JSON",
                "expectedOutput": "JSON formatted RSS data"
              }
            ],
            "id": "rss",
            "title": "RSS Feed Operations"
          },
          {
            "description": "Upload content to public paste services (paste.rs, dpaste.com, catbox.moe). termbin.com requires --allow-termbin-plaintext (plaintext TCP, bypasses Tor/proxy).",
            "examples": [
              {
                "command": "echo \"Hello World\" | online-info-switch paste",
                "description": "Paste from stdin to all default services (HTTPS only, Tor/proxy-safe)",
                "expectedOutput": "URLs from paste.rs, dpaste.com, catbox.moe"
              },
              {
                "command": "online-info-switch paste \"Sample content\"",
                "description": "Paste text directly to default HTTPS services",
                "expectedOutput": "Paste URLs from default services"
              },
              {
                "command": "online-info-switch paste --file /path/to/file.txt",
                "description": "Paste from file",
                "expectedOutput": "Paste URLs"
              },
              {
                "command": "online-info-switch paste \"test\" --services \"paste.rs\"",
                "description": "Paste to paste.rs only",
                "expectedOutput": "paste.rs URL"
              },
              {
                "command": "online-info-switch paste \"test\" --services \"termbin.com\" --allow-termbin-plaintext",
                "description": "Paste to termbin.com (WARNING: plaintext TCP, bypasses Tor/proxy — explicit opt-in required)",
                "expectedOutput": "termbin.com URL",
                "notes": "termbin.com sends data over unencrypted TCP port 9999 which bypasses Tor and any proxy, exposing your real IP address. Only use on trusted networks when anonymity is not required."
              },
              {
                "command": "online-info-switch paste \"test\" --services \"catbox.moe\"",
                "description": "Paste to catbox.moe only",
                "expectedOutput": "catbox.moe URL"
              },
              {
                "command": "online-info-switch paste \"test\" --services \"dpaste.com,catbox.moe,paste.rs\"",
                "description": "Paste to multiple specific services",
                "expectedOutput": "URLs from selected services"
              },
              {
                "command": "online-info-switch paste \"test\" --json-pretty",
                "description": "Paste results in JSON",
                "expectedOutput": "JSON formatted paste results"
              }
            ],
            "id": "paste",
            "title": "Paste Service Operations"
          },
          {
            "description": "Generate proof of system freshness with current data",
            "examples": [
              {
                "command": "online-info-switch freshness",
                "description": "Show freshness proof",
                "expectedOutput": "Current time and latest news"
              },
              {
                "command": "online-info-switch freshness --json-pretty",
                "description": "Freshness in JSON format",
                "expectedOutput": "JSON formatted freshness data"
              },
              {
                "command": "online-info-switch freshness --json",
                "description": "Compact freshness JSON",
                "expectedOutput": "Compact JSON freshness data"
              }
            ],
            "id": "freshness",
            "title": "Freshness Proof Operations"
          },
          {
            "description": "Check cryptocurrency prices, precious metals prices, and Bitcoin wallet balances",
            "examples": [
              {
                "command": "online-info-switch price btc",
                "description": "Check Bitcoin price",
                "expectedOutput": "Current BTC price in USD"
              },
              {
                "command": "online-info-switch price eth",
                "description": "Check Ethereum price",
                "expectedOutput": "Current ETH price in USD"
              },
              {
                "command": "online-info-switch price xmr",
                "description": "Check Monero price",
                "expectedOutput": "Current XMR price in USD"
              },
              {
                "command": "online-info-switch price azero",
                "description": "Check Aleph Zero price",
                "expectedOutput": "Current AZERO price in USD"
              },
              {
                "command": "online-info-switch price near",
                "description": "Check NEAR Protocol price",
                "expectedOutput": "Current NEAR price in USD"
              },
              {
                "command": "online-info-switch price gold",
                "description": "Check Gold spot price",
                "expectedOutput": "Current XAU price in USD"
              },
              {
                "command": "online-info-switch price silver",
                "description": "Check Silver spot price",
                "expectedOutput": "Current XAG price in USD"
              },
              {
                "command": "online-info-switch price xau",
                "description": "Check Gold spot price (symbol)",
                "expectedOutput": "Current XAU price in USD"
              },
              {
                "command": "online-info-switch price xag",
                "description": "Check Silver spot price (symbol)",
                "expectedOutput": "Current XAG price in USD"
              },
              {
                "command": "online-info-switch price all",
                "description": "Check all crypto and metals prices",
                "expectedOutput": "BTC, ETH, XMR, NEAR, AZERO, GOLD, SILVER prices"
              },
              {
                "command": "online-info-switch balance 34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo",
                "description": "Check Bitcoin wallet balance",
                "expectedOutput": "BTC balance for the address"
              },
              {
                "command": "online-info-switch balance bc1ql49ydapnjafl5t2cp9zqpjwe6pdgmxy98859v2",
                "description": "Check Segwit address balance",
                "expectedOutput": "BTC balance for Segwit address"
              }
            ],
            "id": "crypto",
            "title": "Cryptocurrency & Metals Operations"
          },
          {
            "description": "Check Kodachi OS release information for different editions",
            "examples": [
              {
                "command": "online-info-switch releases",
                "description": "Check all Kodachi releases",
                "expectedOutput": "Release info for all editions"
              },
              {
                "command": "online-info-switch releases binary_pack",
                "description": "Check Binary Pack release",
                "expectedOutput": "Release and installation info"
              },
              {
                "command": "online-info-switch releases terminal",
                "description": "Check Terminal edition release",
                "expectedOutput": "Terminal ISO release info"
              },
              {
                "command": "online-info-switch releases desktop",
                "description": "Check Desktop edition release",
                "expectedOutput": "Desktop ISO release info"
              },
              {
                "command": "online-info-switch releases --json-pretty",
                "description": "Get releases in JSON format",
                "expectedOutput": "Pretty JSON with all releases"
              }
            ],
            "id": "releases",
            "title": "Release Information"
          },
          {
            "description": "Check Kodachi cloud infrastructure and network status",
            "examples": [
              {
                "command": "online-info-switch cloud-stats",
                "description": "Fetch cloud infrastructure statistics",
                "expectedOutput": "Cloud stats with users, challenges, and infrastructure"
              },
              {
                "command": "online-info-switch cloud-stats --json-pretty",
                "description": "Cloud stats in JSON format",
                "expectedOutput": "Pretty JSON with cloud statistics"
              },
              {
                "command": "online-info-switch knet-status",
                "description": "Check Kodachi network connection status",
                "expectedOutput": "knet: On/Off status"
              },
              {
                "command": "online-info-switch knet-status --json-pretty",
                "description": "knet status in JSON format",
                "expectedOutput": "Pretty JSON with knet status"
              },
              {
                "command": "online-info-switch vps-tor-check",
                "description": "Check Tor exit IP (auto-detects local Tor SOCKS5: probes 9050, 9150, and Kodachi multi-instance pool 10000-10019)",
                "expectedOutput": "Tor exit IP, country, and the SOCKS port that was picked",
                "notes": "Pass --socks-port or --socks-host to override auto-detection."
              },
              {
                "command": "online-info-switch vps-tor-check --socks-host 192.168.1.100 --socks-port 9051",
                "description": "Check Tor exit with custom SOCKS5 proxy",
                "expectedOutput": "Tor exit IP through custom proxy"
              },
              {
                "command": "online-info-switch vps-tor-check --json-pretty",
                "description": "Tor exit check in JSON format",
                "expectedOutput": "Pretty JSON with exit IP and proxy info"
              }
            ],
            "id": "cloud",
            "title": "Cloud Infrastructure Operations"
          }
        ],
        "description": "Usage examples for online-info-switch",
        "name": "online-info-switch",
        "quickReference": [
          "sudo online-info-switch --help",
          "sudo online-info-switch --version",
          "sudo online-info-switch --info --json",
          "sudo online-info-switch --examples --json"
        ]
      },
      "errors": [],
      "metadata": {
        "executionTime": 1,
        "hostname": "REDACTED-BUILD-HOST",
        "user": "REDACTED-BUILD-USER"
      },
      "status": "success",
      "timestamp": "2026-06-28T11:16:35.648564395Z",
      "version": "9.8.4 (build 319)",
      "warnings": []
    }
  }
}
