FHIRPath

SkillDev tools

Work on FHIRPath parser, evaluator, CLI, HTTP server, expressions, terminology integration, or FHIRPath tests. Use for fhirpath-cli, fhirpath-server, FHIRPATH_* configuration, parser debug output, and expression evaluation behavior.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the FHIRPath skill

What this skill tells your AI

The instructions your AI receives, as published by heliossoftware/hfs in .agents/skills/work-with-fhirpath/SKILL.md and read by ahel’s review.

Use this when working in helios-fhirpath, helios-fhirpath-support, the FHIRPath CLI, or the FHIRPath HTTP server.

CLI Usage

# Basic expression evaluation
cargo run --bin fhirpath-cli -- -e "Patient.name.family" -r patient.json

# With context expression
cargo run --bin fhirpath-cli -- -c "Patient.name" -e "family" -r patient.json

# With variables
cargo run --bin fhirpath-cli -- -e "value > %threshold" -r observation.json --var threshold=5.0

# Parse debug tree, no resource needed
cargo run --bin fhirpath-cli -- -e "Patient.name.given.first()" --parse-debug-tree

# Read from stdin
cat patient.json | cargo run --bin fhirpath-cli -- -e "Patient.name.family" -r -

# Specify FHIR version
cargo run --bin fhirpath-cli -- --fhir-version R5 -e "Patient.name.family" -r patient.json

HTTP Server

The FHIRPath server is compatible with fhirpath-lab.

# Start with defaults, port 3000
cargo run --bin fhirpath-server

# Custom configuration
FHIRPATH_SERVER_PORT=8080 FHIRPATH_SERVER_HOST=0.0.0.0 cargo run --bin fhirpath-server
MethodURLDescription
POST/Evaluate FHIRPath and auto-detect FHIR version
POST/r4, /r4b, /r5, /r6Version-specific evaluation
GET/healthHealth check

Environment

VariableDefaultDescription
FHIRPATH_SERVER_PORT3000Server port
FHIRPATH_SERVER_HOST127.0.0.1Host to bind
FHIRPATH_LOG_LEVELinfoLog level
FHIRPATH_ENABLE_CORStrueEnable CORS
FHIRPATH_CORS_ORIGINS*Allowed origins
FHIRPATH_MAX_BODY_SIZE10485760Max request body size in bytes, measured after decompression
FHIRPATH_TERMINOLOGY_SERVERnoneTerminology server URL

Request bodies with gzip, deflate, br, or zstd Content-Encoding are decompressed before parsing. Unsupported encodings return 415. Responses are compressed when the client sends Accept-Encoding.

Tests

  • FHIRPath test cases live under crates/fhirpath/tests/.
  • Official FHIR test cases come from the fhir-test-cases repository.
  • Test expressions independently with fhirpath-cli before debugging broader server behavior.

Signals

GitHub stars
51
Forks
19
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
work-with-fhirpath
Source
github.com/heliossoftware/hfs
FHIRPath (work-with-fhirpath): Skill · ahel