OpenMetadata CLAUDE.md

A project guide for OpenMetadata, a platform for finding, monitoring, and governing data. It explains the project structure, technologies, setup steps, and where to find deeper architecture and development documentation.

In plain words
What is it for?
Use it to understand the repository layout, prepare a development session, locate architecture and build instructions, and follow the correct process for entities and connectors.
Why use it?
It gives the coding agent the background needed to work in a large project with Java, React and TypeScript, Python, Maven, and Docker components.

Instructions file

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 instructions/open-metadata/openmetadata/claude-md
Clone the repo
git clone --depth 1 https://github.com/open-metadata/OpenMetadata
Per session 3,225 This file is loaded in full into every session.
When invoked 3,225 The same file — it is already loaded in full.
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.03225 $0.03225
Opus 5 $0.01613 $0.01613
Sonnet 5 $0.00645 $0.00645
Haiku 4.5 $0.00323 $0.00323

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

Security

Grade A, and why

OpenMetadata CLAUDE.md 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 yesterday.

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.

CLAUDE.md · 183 lines

How it starts

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

CLAUDE.md

Always-loaded guidance for every session. Language- and path-specific rules live in .claude/rules/*.md (auto-loaded when you touch matching files); procedures live in skills (loaded on invoke). This file is the map — see the pointer index at the bottom. Read ARCHITECTURE.md for the system map (modules, the request/ingestion/search paths, the invariants that hold); read DEVELOPER.md for how to build, test, and add an entity or connector (deep dives + end-to-end checklists). Consult docs/index.md — the knowledge index — to find existing design, plan, and reference docs for whatever area you're working on.

About OpenMetadata

OpenMetadata is a unified metadata platform for data discovery, observability, and governance — a multi-module project with a Java backend, a React/TypeScript frontend, a Python ingestion framework, and Docker infrastructure.

Stack at a glance

  • Backend: Java 21 + Dropwizard, multi-module Maven.
  • Frontend: React + TypeScript, built with Vite (dev server on :3000); component library openmetadata-ui-core-components — the UntitledUI + Tailwind v4 (tw: prefix, react-aria-components) go-forward design system; legacy stack is Ant Design + Less (deprecated). Machine-readable design-system specs: openmetadata-ui/src/main/resources/ui/specs/ (read specs/README.md before UI work).
  • Ingestion: Python (>=3.10, no pinned ceiling; CI runs 3.10) + Pydantic 2.x, 75+ connectors.
  • Database: MySQL (default) or PostgreSQL. Search: Elasticsearch 7.17+ or OpenSearch 2.6+.
  • Infrastructure: Apache Airflow for ingestion orchestration.

Environment setup (every session)

  • Python venv is REQUIRED before any Python work, make generate, or make install_dev*:
    source env/bin/activate          # first time: python3.11 -m venv env
    python --version                 # expect 3.10.x/3.11.x
    
    In a Claude Code worktree the venv is NOT copied — create one (python3.11 -m venv env && source env/bin/activate && cd ingestion && make install_dev) or symlink the main repo's (ln -s /path/to/main-repo/env env).
  • One-call setup (macOS + Linux): make dev_setup (or ./scripts/dev_setup.sh) does everything below — toolchain, venv, generation, UI deps, pre-commit — and is idempotent. make dev_check diagnoses an existing checkout without changing it. See the dev-setup skill.
  • First-time bootstrap (from the repo rootmake generate is a root-only target; it does not exist under ingestion/):
    make prerequisites
    source env/bin/activate && cd ingestion && make install_dev_env && cd ..
    make generate                    # regenerate models after any schema change
    make yarn_install_cache
    make install_test precommit_install   # activate the commit-time format/license gate (pre-commit)
    
    The last line installs the pre-commit hooks (.pre-commit-config.yaml): on git commit they run Java format (spotless), Python format (ruff), UI format (prettier), design-token, and Apache-2.0 license checks on your changed files, matching CI. Do not skip them with --no-verify.
  • Java: Java 21; use mvn. Frontend: use yarn (never npm); frontend root is openmetadata-ui/src/main/resources/ui/.
  • Docker dev services: docker compose -f docker/development/docker-compose.yml up -d.

Read the full file on GitHub · 183 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. yesterday First seen · 183 lines · 3,225 tokens per session scan A cde159611f6c

Subscribe to this mod's changes

OpenMetadata CLAUDE.md is an instructions file published in the GitHub repository open-metadata/OpenMetadata (15,032 stars, last pushed yesterday), licensed Apache-2.0. It adds 3,225 tokens to every session, about $0.0161 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-30.