# TomWright/dasel

Unified querying, transformation, and modification of JSON, TOML, YAML, XML, INI, HCL, KDL and CSV.

Repository: https://github.com/TomWright/dasel
Canonical: https://ross.abutalabs.com/products/dasel
Homepage: https://daseldocs.tomwright.me
Language: Go
License: MIT
License Family: permissive
Topics: json, yaml, configuration, selector, data-structures, config, parser, yaml-processor, json-processing, devops-tools, golang, cli, toml, query, update, xml, go, data-processing, data-wrangling, hcl2
Last push: 2026-08-16T19:25:05+00:00

## Health v2 (maintenance only)
Score: 96/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 90, longevity 100
- inputs: {"age_days": 2171, "days_push": 17, "days_rel": 67, "gap_med": 1, "n_releases_24m": 26}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 8027, forks 176 (observed 2026-08-28T04:10:11.927886+00:00)

## What it is
Dasel is a command-line tool and Go library for querying, modifying, and transforming structured data across JSON, YAML, TOML, XML, CSV, INI, HCL, and KDL formats using a unified query syntax. It supports in-place file editing, format conversion, and shell-script-friendly pipelines.

## Use cases
- query values from a yaml config file from the command line
- convert  to yaml or toml to
- update a field in a toml file in place
- extract fields from  in a shell script like jq
- modify kubernetes yaml manifests from ci pipelines
- query hcl terraform files
- parse csv and xml with one unified syntax

## When to choose
- you need one tool to query and edit many structured data formats
- you want a jq/yq alternative with a consistent syntax across formats
- you need format conversion between , yaml, toml, xml, and csv
- you want a Go library for structured data manipulation

## When to avoid
- you only work with JSON and prefer jq's mature ecosystem
- you need streaming processing of very large files
- you need a GUI or interactive data exploration tool

## Facets
- artifact type: cli-tool
- maturity: active
- function: parser, developer-tools, cli, yaml, csv, data-science
- domain: developer-tools, files
- platform: windows, go, cli, cross-platform
- tags: data-wrangling, query-language, toml, xml, hcl, kdl, ini, format-conversion, jq-alternative, yq-alternative, command-line, devops, data-engineering, linux, macos, docker

## Member repositories
- TomWright/dasel (main) score 96

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:11.927886+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:31:48.395858+00:00, confidence not recorded.
  - readme: https://github.com/TomWright/dasel (fetched 2026-08-28T04:10:11.927886+00:00, sha 3967c4433e29)
  - homepage: https://daseldocs.tomwright.me (fetched 2026-08-29T08:29:20.271442+00:00, sha 5a78ddb042b2)
  - site_page: https://daseldocs.tomwright.me/getting-started/installation (fetched 2026-08-29T08:29:20.607333+00:00, sha f087a890a8ff)
  - site_page: https://daseldocs.tomwright.me/getting-started/shell-completion (fetched 2026-08-29T08:29:20.616447+00:00, sha 1e6747ce0616)
  - site_page: https://daseldocs.tomwright.me/getting-started/man-page (fetched 2026-08-29T08:29:20.618503+00:00, sha 2147e901bc40)
  - site_page: https://daseldocs.tomwright.me/getting-started/usage-from-go (fetched 2026-08-29T08:29:20.620321+00:00, sha dc624758a417)
  - site_page: https://daseldocs.tomwright.me/getting-started (fetched 2026-08-29T08:29:20.624201+00:00, sha bbe9bafc6642)
- Data as of 2026-08-30T08:39:29.467469+00:00.
