--- id: shyaml version: "0.6.2" license: BSD 3-Clause License license_treatment: permissive maintenance: aging --- # shyaml — YAML for command line License: permissive · Maintenance: aging · Downloads: 1.8M/mo ## What it is and what it does Shyaml is a command-line utility that reads YAML from stdin and exposes its structure and values through shell-friendly commands. It is designed for shell scripts and command pipelines that need to extract or inspect YAML data without writing separate parsing code. The tool supports nested key access using dot notation, type inspection, sequence indexing, and iteration over keys and values with optional null-termination for safe handling of values containing newlines. The package depends only on pyyaml and provides read-only access to YAML structures. It does not support write operations or all YAML specification subtleties, but handles common use cases like extracting configuration values, iterating over lists, and inspecting document structure. Output can be formatted for shell consumption, including null-terminated variants for robust piping. Use it for: - Extract configuration values from YAML files in shell scripts without external parsing logic. - Iterate over YAML sequences or object keys in bash loops with proper null-termination to handle special characters. - Inspect YAML document structure and data types from the command line for debugging or validation. - Query nested YAML paths using dot notation in one-liners within CI/CD pipelines or deployment scripts. - Convert YAML data into shell-friendly formats (newline or null-separated) for further processing with standard Unix tools. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Command-line tool for querying and extracting data from YAML files via stdin, supporting read-only access to nested values, keys, and sequences. Yes, if you need lightweight YAML querying in shell scripts. The package is stable, has low install friction, and carries no security vulnerabilities. However, the aging maintenance status (last release 2020-12-15) means it is unlikely to gain new features or adapt to future Python versions—install it for established use cases, not as a foundation for new tooling. ## Install pip install shyaml uv add shyaml poetry add shyaml ## Installing shyaml Before you install: Low install friction with a single runtime dependency (pyyaml). The package is aging—last release was 2020-12-15 and the repository shows no recent activity—but remains stable and archived-free, suggesting it is maintained in a minimal-change mode rather than actively developed. License in practice: BSD 3-Clause License (permissive) places no significant restrictions on use, modification, or distribution in most contexts. Quickstart: pip install shyaml cat data.yaml | shyaml get-value key.nested.path cat data.yaml | shyaml get-values sequence.items cat data.yaml | shyaml keys root_object Verify before relying: - Whether the package works reliably with modern Python versions beyond those listed in classifiers (3.7 is the highest listed). - Current status of libyaml C implementation support and whether it is automatically selected or requires manual configuration. ## Package facts - License: BSD 3-Clause License (permissive) - Python support: unspecified - Install friction: low - Maintenance: aging - Downloads: 1.8M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags yaml command line query, parse yaml from shell, yaml data extraction cli, read yaml in bash scripts, yaml key value lookup, yaml file inspection tool, shell yaml parser, cli-tool, yaml-parsing, shell-scripting [View on SkillFed](https://skillfed.io/packages/shyaml) · [View on PyPI](https://pypi.org/project/shyaml/)