metaschema-java-library

metaschema-java-library is a skill for Claude Code, Codex from metaschema-framework/claude-plugins. It costs 35 tokens per session (4,766 once invoked), scanned A, original, CC0-1.0.

A guide to the metaschema-java library, a Java framework for loading Metaschema modules, reading and writing XML or JSON, evaluating expressions, and validating constraints. It also describes the library’s main modules and interfaces.

In plain words
What is it for?
Use it when implementing or reviewing Metaschema Java code, including data binding, expression evaluation, constraint validation, and serialization.
Why use it?
It reduces the need to discover the library’s APIs and module structure from source code alone.

Skill for Claude CodeCodex

Part of the metaschema-tools plugin — 2 skills shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/metaschema-framework/claude-plugins/metaschema-java-library
Any agent
npx skills add metaschema-framework/claude-plugins --skill metaschema-java-library
Clone the repo
git clone --depth 1 https://github.com/metaschema-framework/claude-plugins

Made for: Claude Code, Codex.

Or install metaschema-tools, the plugin that ships this one along with the rest of its 2 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for metaschema-java-library

README.md
[![agentmods](https://agentmods.dev/badge/skills/metaschema-framework/claude-plugins/metaschema-java-library.svg)](https://agentmods.dev/skills/metaschema-framework/claude-plugins/metaschema-java-library)
Your own site
<a href="https://agentmods.dev/skills/metaschema-framework/claude-plugins/metaschema-java-library"><img src="https://agentmods.dev/badge/skills/metaschema-framework/claude-plugins/metaschema-java-library.svg" alt="Measured on agentmods" height="20"></a>
Per session 35 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,766 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00035 $0.04766
Opus 5 $0.00017 $0.02383
Sonnet 5 $0.00007 $0.00953
Haiku 4.5 $0.00003 $0.00477

Measured 3d ago against content hash fecfea4230b9, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

metaschema-java-library scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/metaschema-tools/skills/metaschema-java-library/SKILL.md · 691 lines

How it starts

The opening of the file, as written. The whole thing — 691 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Using the metaschema-java Library

This skill covers how to use the metaschema-java library for loading modules, evaluating Metapath expressions, validating constraints, and serializing/deserializing data.

Related skills from the metaschema plugin (install with claude plugin install metaschema-framework:metaschema):

  • metaschema-module-authoring - Module structure, definitions, data types
  • metaschema-constraints-authoring - Constraint types and validation patterns
  • metapath-expressions - Metapath syntax, operators, and functions

Module Structure

metaschema-framework (parent)
├── core                    - Core API, Metapath engine, model interfaces
├── databind                - Data binding, serialization, code generation
├── schemagen               - XML/JSON schema generation
├── databind-modules        - Metaschema binding modules
├── metaschema-maven-plugin - Maven plugin for code/schema generation
├── metaschema-testing      - Testing utilities
├── cli-processor           - CLI framework
└── metaschema-cli          - Command-line interface

Key Packages

Package Purpose
dev.metaschema.core.model Model interfaces (IModule, IAssemblyDefinition, etc.)
dev.metaschema.core.metapath Metapath expression engine
dev.metaschema.core.metapath.function Function library
dev.metaschema.core.metapath.item Item types (nodes, atomics)
dev.metaschema.core.model.constraint Constraint validation
dev.metaschema.databind Data binding context
dev.metaschema.databind.io Serialization/deserialization
dev.metaschema.databind.model.annotations Binding annotations (@BoundField, @BoundChoice, etc.)
dev.metaschema.databind.codegen Code generation from Metaschema modules

Annotation-Based Binding Model

The databind module provides annotation-based bindings that map Java classes to Metaschema definitions.

Core Binding Annotations

Annotation Purpose
@MetaschemaAssembly Marks a class as a bound assembly definition
@MetaschemaField Marks a class as a bound field definition
@BoundAssembly Marks a field as a bound assembly instance
@BoundField Marks a field as a bound field instance
@BoundFlag Marks a field as a bound flag instance
@BoundChoice Marks a field as part of a mutually exclusive choice
@BoundChoiceGroup Marks a field as a polymorphic collection with discriminator

Read the full file on GitHub · 691 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 691 lines · 35 tokens per session scan A fecfea4230b9

Subscribe to this mod's changes

metaschema-java-library is a skill published in the GitHub repository metaschema-framework/claude-plugins (10 stars, last pushed 6mo ago), licensed CC0-1.0. It adds 35 tokens to every session and 4,766 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

airflow-java-sdk

Guide for contributing to the Airflow Java SDK (AIP-108). Use this skill whenever a contributor is working in the java-sdk/ directory or on the Java coordinator in task-sdk/src/airflow/sdk/coordinators/java/ — whether they want to add a feature, write tests, fix a bug, understand the architecture, or prepare a PR.…

apache/airflow · 119 tokens

wxjava-module-selector

根据微信公众号、小程序、微信支付、企业微信、开放平台、视频号或微信小店、腾讯企点和微信智能对话等业务场景,为用户选择合适的 WxJava Maven 模块、BOM 和示例入口。适用于用户询问“该用哪个模块”、依赖坐标、产品边界或单/多账号 Starter 选择时。.

binarywang/WxJava · 86 tokens

tsp-type-override

Override TypeSpec types with Java-native types (e.g. OffsetDateTime, DayOfWeek) using @@alternateType in a client.java.tsp file. Use when a TypeSpec model field has an incorrect or too-generic type that should map to a specific Java type.

Azure/azure-sdk-for-java · 62 tokens

union-type-wrappers

Add typed getters and setters over BinaryData properties that represent TypeSpec union types in generated Java models. Use when generated classes expose BinaryData for union-typed fields and you need ergonomic, type-safe accessors instead.

Azure/azure-sdk-for-java · 49 tokens

search-m2

Search for Java classes inside Maven dependencies in /.m2. Use when the user asks to locate classes or inspect JARs. Cross-reference pom.xml files in the current directory to resolve dependency names/versions.

Azure/azure-sdk-for-java · 46 tokens

solid-principles

SOLID principles checklist with Java examples. Use when a class has too many responsibilities, an abstraction leaks, or a dependency points the wrong way, and when the user asks about Single Responsibility, Open/Closed, Liskov, Interface Segregation or Dependency Inversion. For naming, duplication and method length…

decebals/claude-code-java · 73 tokens