Agent Skills: x is - Value & Environment Validation

>

coreID: x-cmd/skill/x-is

Repository

x-cmdLicense: Apache-2.0
245

Install this agent skill to your local

pnpm dlx add-skill https://github.com/x-cmd/skill/tree/HEAD/data/x-cmd/x-is

Skill Files

Browse the full folder contents for x-is.

Download Skill

Loading file tree…

data/x-cmd/x-is/SKILL.md

Skill Metadata

Name
x-is
Description
>

x is - Value & Environment Validation

x is is x-cmd's value validation tool for checking if values or environment states meet specific criteria. Supports batch checking multiple values, ideal for robust Shell scripting.

Prerequisites

  1. Load x-cmd before use:
    . ~/.x-cmd.root/X
    

Core Usage

  • Type Check: x is int 42 100 -5 / x is float 3.14
  • Range Check: x is minmax 1 100 50 75
  • Compare: x is eq "a" "a" / x is within "ok" pending success
  • IP Check: x is ip 192.168.1.1
  • File Age: x is newest target src/*.c / x is oldest cache.txt /tmp/*.tmp
  • Variable Check: x is unset VAR1 VAR2
  • Environment Detection: x is interactive / x is wsl / x is termux

Subcommands

Type

| Command | Description | |---------|-------------| | int | Integer check, batch supported | | float | Float check (must contain decimal point) | | positive | Positive integer (≥0) | | negative | Negative integer (<0) | | minmax | Range check [MIN,MAX] |

Compare

| Command | Description | |---------|-------------| | eq | Multiple values equal | | within | First value in candidate list | | in | Colon-separated list member check | | in- | Dash-separated list | | in_ | Underscore-separated list | | in/ | Slash-separated list | | in\| | Pipe-separated list |

Network

| Command | Description | |---------|-------------| | ip | IPv4 address check |

File

| Command | Description | |---------|-------------| | newest | File newer than others (glob supported) | | oldest | File older than others (glob supported) |

Variable

| Command | Description | |---------|-------------| | unset | Variable is unset |

Environment

| Command | Description | |---------|-------------| | interactive | Interactive session | | interactive_tty | stdin is interactive TTY | | interactiveshell | Shell is interactive | | repl | REPL mode | | stdout2tty | stdout outputs to TTY | | wsl | WSL environment | | cygwin | Cygwin environment | | msys | MSYS/MinGW environment | | gitbash | Git Bash environment | | termux | Termux environment | | ish | iSH environment |

Suitability

| Command | Description | |---------|-------------| | suitable_pkg | Suitable for package installation | | suitable_advise_env | Suitable for advise feature | | suitable_advise_repl | Suitable for advise REPL |

Practical Examples

Batch Type Validation

x is int 1 2 3 4 5 && echo "All integers"
x is float 3.14 -2.5 .5 && echo "All floats"

Environment Conditional Branch

x is interactive && echo "Interactive session" || echo "Script mode"
x is wsl && echo "WSL environment" || echo "Not WSL"
x is termux && echo "Termux environment"

File Status Check

x is newest build.tar.gz src/*.c lib/*.h || echo "Rebuild needed"

Variable Cleanup Verification

x is unset TEMP_VAR1 TEMP_VAR2 && echo "Temp variables cleaned"

Script Pre-flight Check

x is suitable_pkg || { echo "Environment not suitable"; exit 1; }

Design Principles

  • Batch First: Check multiple values at once, all must pass
  • Exit Code Semantics: 0 = success, 1 = failure, perfect for &&/|| chains
  • Silent: Validation tool outputs nothing, only exit code indicates result

Get Help

x is --help