WR

writing-hashql-jexpr

Reference and syntax guide for HashQL J-Expr to define paths, function calls, and data structures in .jsonc query files.

Install

mkdir -p .claude/skills/writing-hashql-jexpr && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/2726" && unzip -o skill.zip -d .claude/skills/writing-hashql-jexpr && rm skill.zip

Installs to .claude/skills/writing-hashql-jexpr

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

HashQL J-Expr syntax for writing queries. Use when writing J-Expr code, using #literal/#struct/#list constructs, understanding function call syntax, or working with HashQL query files (.jsonc).
193 chars✓ has a “when” trigger
Advanced

Key capabilities

  • →Represent typed expressions using JSON primitives
  • →Construct data using #literal, #struct, #list, #tuple, #dict
  • →Define function calls as arrays
  • →Map strings to paths or identifiers
  • →Apply type annotations with #type

How it works

J-Expr uses JSON structures where strings represent paths, arrays represent function calls, and objects with specific # keys act as data constructors. It enforces strict typing by requiring primitives to be wrapped in #literal objects.

Inputs & outputs

You give it
HashQL query file (.jsonc)
You get back
Parsed J-Expr expression tree

When to use writing-hashql-jexpr

  • →Writing HashQL query expressions
  • →Parsing J-Expr syntax
  • →Constructing JSONC query files

About writing-hashql-jexpr

Explains J-Expr types, including how to structure paths as strings, function calls as arrays, and data constructors as objects within HashQL.

HashQL J-Expr syntax for writing queries. Use when writing J-Expr code, using #literal/#struct/#list constructs, understanding function call syntax, or working with HashQL query files (.jsonc).

When not to use it

  • →When writing standard JSON without HashQL requirements
  • →When using bare JSON numbers or booleans

Limitations

  • →Requires wrapping all primitives in #literal
  • →Strict distinction between #list and #tuple

How it compares

It provides a structured, typed expression syntax for JSON-based queries compared to writing raw, untyped JSON objects.

Compared to similar skills

writing-hashql-jexpr side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
writing-hashql-jexpr (this skill)24moNo flagsAdvanced
backend-development176moNo flagsIntermediate
laravel-specialist125moNo flagsIntermediate
supabase-python05moReviewAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

More by hashintel

View all by hashintel →

handling-rust-errors

hashintel

HASH error handling patterns using error-stack crate. Use when working with Result types, Report types, defining custom errors, propagating errors with change_context, adding context with attach, implementing Error trait, or documenting error conditions in Rust code.

46

exploring-rust-crates

hashintel

Generate Rust documentation to understand crate APIs, structure, and usage. Use when exploring Rust code, understanding crate organization, finding functions/types/traits, or needing context about a Rust package in the HASH workspace.

33

documenting-rust-code

hashintel

Rust documentation practices for HASH codebase. Use when writing doc comments, documenting functions/types/traits/modules, creating error sections, using intra-doc links, or following rustdoc conventions.

19

managing-cargo-dependencies

hashintel

Cargo.toml dependency management patterns for HASH workspace. Use when adding, updating, or removing dependencies, organizing Cargo.toml sections, configuring version pinning and default features, or managing public dependencies.

13

managing-git-workflow

hashintel

Git workflow for HASH including branch naming, PR creation, and PR reviews. Use when creating branches, making commits, opening pull requests, or reviewing PRs.

12

testing-hashql

hashintel

HashQL testing strategies including compiletest (UI tests), unit tests, and snapshot tests. Use when writing tests for HashQL code, using //~ annotations, running --bless, debugging test failures, or choosing the right testing approach.

11

Search skills

Search the agent skills registry