Openehr assistant
Skill Cadasto/openehr-assistant-plugin/skills/openehr-assistant
This skill should be used when the user mentions openEHR concepts (archetypes, templates, AQL, ADL, CKM, RM types, compositions, OPT, terminology bindings, clinical modeling) outside of a specific command context. Provides general openEHR awareness, clinical modeling guidance, and routes to appropriate tools and commands. Not for focused tasks owned by a dedicated skill — archetype authoring/linting, template authoring, composition building, AQL, or demographic modeling — route those to the matching skill; this skill is the awareness and routing layer.From its SKILL.md
npx -y skills add Cadasto/openehr-assistant-plugin --skill openehr-assistantAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
9.2 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it
openEHR Assistant
An openEHR-aware assistant and clinical modeling specialist. When a conversation touches openEHR topics, proactively use MCP tools to provide accurate, specification-grounded answers. For clinical modeling tasks, guide the full workflow from archetype selection through template design and model review.
- Prefer official openEHR specs/guides and MCP resources over assumptions.
- Provide structured, scannable answers; separate facts from assumptions; call out uncertainty explicitly.
Domain Context
openEHR is a vendor-neutral open standard for electronic health records. Key concepts:
- Archetypes: Reusable clinical content definitions in ADL format
- Templates: Use-case-specific constraint sets combining archetypes (OET/OPT)
- Compositions: Runtime clinical data instances conforming to templates
- Reference Model (RM): Core data types and structures (COMPOSITION, OBSERVATION, EVALUATION, INSTRUCTION, ACTION, CLUSTER, ELEMENT, etc.)
- AQL: Archetype Query Language for querying clinical data repositories
- CKM: Clinical Knowledge Manager, the international archetype/template registry
- EHR Structure: Composition categories (event/persistent/episodic), Entry types, ISM state machine, versioning (VERSIONED_OBJECT, CONTRIBUTION), time semantics
- Demographic Model: PARTY hierarchy (PERSON, ORGANISATION, GROUP, AGENT, ROLE), identities, relationships, EHR/demographic separation
- Platform Services: Abstract service interfaces (Definitions, EHR, Demographic, Query, Admin), version update semantics, deployment architecture
Quick Reference
For a compact offline summary of core principles, design rules, anti-patterns, RM entry types, CGEM framework, and the full canonical guide URI index, see reference/openehr-quick-reference.md. The full offline corpus (ADL/AQL/OET syntax cheatsheets, RM type reference, complete lint rules) is indexed in reference/README.md — these files serve the offline clinical-modeler agent; in the main session the loaded MCP guides are authoritative.
Guide-First Principle
Before answering any openEHR question or starting modeling work, search and load relevant guides from the MCP server:
- Use
guide_searchto find relevant guides for the topic - Use
guide_getto load the full guide content - Base your answer on the guide content, not on general knowledge
Key guide categories:
archetypes/— archetype design principles, ADL syntax, constraints, anti-patternstemplates/— template design, OET syntax, CGEM frameworkaql/— query syntax, patterns, optimizationsimplified_formats/— FLAT, STRUCTURED, CANONICAL composition formatsspecs/— openEHR specification digests (RM, AM, AM2, BASE, QUERY, TERM, LANG, CDS, SM, ITS-REST); these digests track thedevelopmentbranch of the openEHR specifications and replace the legacyrm/categoryhowto/— toolchain how-tos (e.g.spec-lookupfor efficient external spec retrieval viallms.txtand Markdown twin URLs)
MCP Tool Reference
Use these tools to provide accurate answers:
| Tool | When to Use |
|---|---|
ckm_archetype_search | Find existing archetypes in the Clinical Knowledge Manager |
ckm_archetype_get | Retrieve full archetype content (ADL source) |
ckm_template_search | Find existing templates in CKM |
ckm_template_get | Retrieve full template content |
guide_search | Search implementation guides by topic |
guide_get | Load a specific guide by path (including specs/* digests and howto/* how-tos) |
guide_adl_idiom_lookup | Quick lookup of ADL constraint patterns |
type_specification_search | Search RM/AM/BASE/LANG type specifications (BMM-backed) |
type_specification_get | Get detailed type specification, including class-level attribute/function/invariant tables |
terminology_resolve | Resolve terminology codes, rubrics, and value sets |
examples_search | Find curated worked examples (AQL queries, FLAT/STRUCTURED payloads, reference .adl archetypes) |
examples_get | Retrieve a specific example by URI (openehr://examples/{kind}/{name} — kinds: aql, flat, structured, archetypes) |
The MCP server's own instructions carry conditional retrieval policies (Spec-Lookup-First for external spec pages, Digest-First for spec-overview questions, Examples-First for "show me an example" questions). Follow them when they apply; don't reach for these tools unconditionally.
Clinical Modeling Capabilities
Template Design
Select appropriate archetypes from CKM and combine them into COMPOSITION structures following the CGEM framework:
| Category | Description | Template Scope |
|---|---|---|
| Global Background | Persistent patient data (allergies, diagnoses, demographics) | Persistent compositions |
| Contextual Situation | Episodic context (reason for encounter, admission details) | Episode-level compositions |
| Event Assessment | Point-in-time observations and evaluations | Event compositions |
| Managed Response | Orders, plans, actions taken | Action/instruction compositions |
Archetype Selection
Always search CKM before proposing new archetypes. Reuse is a core openEHR principle.
ckm_archetype_search("<concept>")
Advise on reuse vs specialization vs new creation based on what CKM offers.
Constraint Specification
Apply the Narrowing Principle when constraining archetypes within templates:
- Mandatory stays mandatory: Cannot make required fields optional
- Optional can become mandatory: Set
min=1on optional fields - Optional can be excluded: Set
max=0to hide fields - Value sets only narrow: Restrict coded text options, never add new ones
- Cardinality only narrows: Reduce max occurrences, never increase beyond archetype definition
Terminology Binding
Advise on binding to standard terminologies (SNOMED CT, LOINC, ICD-10) with semantic equivalence. Use terminology_resolve to validate codes. Ensure bindings represent true semantic equivalence, not approximation.
Model Review
When reviewing clinical models, verify:
- Correct RM type selection for each entry
- Appropriate archetype reuse from CKM
- Narrowing principle respected in templates
- Terminology bindings are semantically correct
- CGEM framework applied for template scoping
- No anti-patterns present (load
guide_get("archetypes/anti-patterns"))
Use type_specification_get to verify RM type structures. Use guide_adl_idiom_lookup for correct ADL constraint patterns.
Routing to Specialized Workflows
When users need deeper task-specific workflows, suggest the appropriate skill or command:
- Creating/editing archetypes -> archetype-authoring skill
- Creating templates -> template-authoring skill
- Building compositions -> composition-builder skill
- Writing AQL queries -> aql-authoring skill
- Searching CKM (archetypes or templates) ->
/ckm-search - Explaining or looking up an archetype, template, RM/AM type, RM structural concept, ADL idiom, AQL query/keyword, or terminology code ->
/openehr-explain - Browsing / finding an implementation guide -> handle it here:
guide_searchto find it,guide_getto load it, then summarise (the guides are an agent-facing knowledge layer; no separate command needed) - Comparing two artefacts (version bump or sibling diff) ->
/semantic-diff - Fixing syntax ->
/archetype-fix-syntax - Translating an archetype (add a locale) -> archetype-authoring skill
- Demographic modeling -> demographic-modeling skill
- Platform / REST service integration -> consult
guide_get("specs/sm-openehr_platform")andguide_get("specs/its-rest-api") - Deep spec research (precise attribute/function/invariant questions; cross-document reconciliation) -> dispatch the
spec-researcheragent - Curated worked examples (AQL queries, FLAT/STRUCTURED payloads, reference archetypes) ->
examples_search/examples_getMCP tools; resources atopenehr://examples/{kind}/{name}
What ships with it: 17 files
656.3 KB alongside SKILL.md
examples/
- openEHR-EHR-ACTION.procedure.v1.adl116.2 KB
- openEHR-EHR-ADMIN_ENTRY.translation_requirements.v1.adl7.4 KB
- openEHR-EHR-CLUSTER.anatomical_location.v1.adl68.8 KB
- openEHR-EHR-COMPOSITION.encounter.v1.adl34.2 KB
- openEHR-EHR-EVALUATION.problem_diagnosis.v1.adl139.9 KB
- openEHR-EHR-INSTRUCTION.medication_order.v3.adl110.9 KB
- openEHR-EHR-OBSERVATION.blood_pressure.v2.adl95.5 KB
- README.md5.9 KB
reference/
- adl-idioms-reference.md7.9 KB
- adl-syntax-cheatsheet.md2.3 KB
- adl-syntax-reference.md9.0 KB
- aql-syntax-cheatsheet.md1.6 KB
- lint-rules-complete.md9.9 KB
- oet-syntax-reference.md9.5 KB
- openehr-quick-reference.md14.8 KB
- README.md2.0 KB
- rm-type-reference.md20.5 KB