+1, This is awesome! We should catch up the trend :)
------------------ Yongzao On 2026/04/11 09:45:03 Yuan Tian wrote: > Hi all, > > I'd like to propose adding Claude Code [1] project-level configuration > to the IoTDB repository. The goal is to help developers who use Claude > Code (an AI coding assistant) get consistent, high-quality assistance > when working on IoTDB. > > PR: https://github.com/apache/iotdb/pull/17458 > > ## What is Claude Code? > > Claude Code is an AI-powered coding assistant by Anthropic that runs in > the terminal. It can read, write, and reason about code. Project-level > configuration files tell it how to build, test, and follow the > conventions of a specific codebase. > > ## What's being added? > > ### 1. `CLAUDE.md` — Project instruction file > > A comprehensive guide that Claude Code reads at the start of every > session. It covers: > > - Project overview and architecture (ConfigNode, DataNode, AINode, > dual data model) > - Build commands (full build, per-module, single test class/method) > - Integration test commands (all profiles: tree/table, simple/cluster) > - Code style rules (Spotless, Checkstyle, import order, license header) > - Key subsystem descriptions (queryengine, storageengine, schemaengine, > pipe, consensus, etc.) > - IDE setup instructions (Thrift/ANTLR generated sources) > - Common pitfalls (missing Thrift compiler, pre-existing compile errors, > Gson compatibility) > > This ensures any developer using Claude Code gets accurate, > IoTDB-specific guidance instead of generic answers. > > ### 2. `.claude/settings.json` — Shared project hooks > > Configures a PostToolUse hook that automatically runs > `mvn spotless:apply` on Java files after Claude Code edits them. > This guarantees all AI-generated code changes comply with our > Spotless formatting rules — no more format-violation build failures > from AI-assisted edits. > > ### 3. `.gitignore` refinement > > The previous `.gitignore` entry ignored the entire `.claude/` directory > and `CLAUDE.md`, which prevented sharing any configuration with the > team. The updated rules are more fine-grained: > > Ignored (machine-specific, ephemeral): > - `.claude/settings.local.json` — personal local settings > - `.claude/todos/` — session-level task tracking > - `.claude/worktrees/` — temporary git worktree directories > - `.claude/scheduled_tasks.json` — session-level scheduled tasks > > Committed (shared with team): > - `CLAUDE.md` — project instructions, benefits everyone > - `.claude/settings.json` — shared hooks (e.g., auto-formatting) > > ## Impact > > - These files have ZERO impact on the build, tests, or runtime behavior > of IoTDB. > - Developers who don't use Claude Code will not be affected at all. > - Developers who do use Claude Code will get better, more consistent > assistance out of the box. > > Please share your thoughts or concerns. If there are no objections, > I will merge this PR. > > [1] https://docs.anthropic.com/en/docs/claude-code > > Best regards, > ---------------- > Yuan Tian >
