You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by Yuan Tian <ja...@gmail.com> on 2026/04/12 03:03:05 UTC
[Tool] Agent Skill for Automating IoTDB Release Vote Checks
Hi all,
I'd like to share a Claude Code skill I created to automate the Apache
IoTDB release candidate verification process. If you use Claude Code
(Anthropic's CLI coding agent) or other coding agent(like antigravity or
codex), this skill can save you significant time during release voting.
GitHub Repository: https://github.com/JackieTien97/iotdb-skills
## What It Does
When you say something like "check IoTDB 2.0.8 rc1", Claude Code will
automatically:
1. Download all RC artifacts from Apache dist via SVN
2. Verify artifact completeness (source, all-bin, confignode-bin,
datanode-bin, cli-bin, library-udf-bin, ainode-bin — each with .asc and
.sha512)
3. Verify GPG signatures and SHA512 checksums for all packages
4. Check LICENSE and NOTICE files
5. Run Apache RAT license header check
6. Check for SNAPSHOT dependencies in pom.xml
7. Verify version consistency
8. Check for unexpected binary files in source
9. Build from source (mvn clean install -DskipTests)
10. Start IoTDB standalone (1C1D) and run read/write tests in both Tree
model (sql_dialect=tree) and Table model (sql_dialect=table)
11. Generate a complete vote email (+1/-1) with all check results, test
SQL, CLI output, and environment info
The entire process runs hands-free and produces a ready-to-paste vote email
for the dev mailing list.
## Installation
```bash
git clone https://github.com/JackieTien97/iotdb-skills.git
mkdir -p ~/.claude/skills
cp -r iotdb-skills/iotdb-release-vote ~/.claude/skills/
```
## Prerequisites
- Java (JDK 17+)
- Maven (3.6+)
- GPG (with IoTDB committer keys imported)
- SVN (Subversion)
- unzip
- Claude Code (https://claude.ai/claude-code)
## Example Usage
Just tell Claude Code:
```
帮我检查 IoTDB 2.0.8 rc1
```
or
```
check iotdb release candidate 2.0.8 rc1
```
Feedback, issues, and contributions are welcome on the GitHub repo. If you
have ideas for other IoTDB-related skills (e.g., performance benchmarking,
cluster deployment checks), feel free to open an issue or PR.
Best regards,
----------------
Yuan Tian
AW: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Posted by Christofer Dutz <ch...@c-ware.de>.
Hi Yuan,
Thanks for your understanding … I know we sometimes tend to focus on what’s technically possible and less on if it’s good to do something … I totally don’t exclude me from that ;-)
Chris
Von: Yuan Tian <ja...@gmail.com>
Datum: Montag, 13. April 2026 um 12:55
An: dev@iotdb.apache.org <de...@iotdb.apache.org>
Betreff: Re: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Hi Chris,
I completely agree with your point—an Apache release must remain an "act of
the foundation," and the ultimate decision must always come from human
committers and PMC members, not an AI.
I also see the danger in providing a ready-to-post email template. It could
indeed encourage people to simply copy and paste the output without
actually reviewing the results, which defeats the entire purpose of the
release verification process.
Given this, I will take your advice and crystallize the verification logic
from the AI skill into deterministic Python scripts. This approach will
still help us automate the tedious, repetitive steps (like downloading
artifacts, verifying signatures, and compiling), but the execution will be
100% predictable. More importantly, it ensures that developers still need
to read the raw output and make their own informed decisions when casting a
vote.
Thanks again for pointing this out from a governance perspective. It’s a
very important reminder. I will share the deterministic Python scripts with
the community soon.
Best regards,
----------------------
Yuan Tian
On Mon, Apr 13, 2026 at 5:42 PM Christofer Dutz <ch...@c-ware.de>
wrote:
> Hi Yuan,
>
> I am totally not objecting to use AI in addition for making tracking down
> issues simpler.
> Having a fixed set of deterministic scripts approved by the PMC and having
> an AI run them and automate the tracking down of potential issues is also
> nothing I would object.
>
> However, should the release process be and stay a process executed by our
> committers and PMC members.
> An Apache release needs to stay an „act of the foundation“ and not an „act
> of claude“.
> By providing ready-to-post email content, I am 100% sure many people will
> just copy and paste this and therefore have Claude actually approve
> releases.
>
> Chris
>
> Von: Yuan Tian <ja...@gmail.com>
> Datum: Montag, 13. April 2026 um 11:03
> An: dev@iotdb.apache.org <de...@iotdb.apache.org>
> Betreff: Re: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
>
> Hi Chris,
>
> Thanks for the feedback. You make a very valid point regarding the
> non-deterministic nature of AI agents when it comes to strict release
> approvals.
>
> Solidifying these steps into a fixed Shell or Python script is certainly a
> solid approach. It is also much more token-efficient—it only costs tokens
> during the initial script generation, and all subsequent runs are
> completely free. I actually have a set of these hardcoded scripts running
> locally.
>
> However, the main reason I wanted to explore the "skill" approach is
> flexibility. Once a fixed script is written, its logic is essentially
> "dead" or static. Conversely, an agentic skill can become progressively
> smarter as the underlying foundation models iterate.
>
> For example, if a certain step fails due to unexpected environmental issues
> (e.g., failing to download artifacts via svn), a static script will simply
> throw an error and halt. An AI agent, however, might dynamically figure out
> a workaround—like falling back to curl or wget to fetch the code—and
> continue the validation process. In a way, the skill evolves alongside the
> foundation models' capabilities.
>
> That being said, I completely respect the need for 100% deterministic
> checks when casting a formal vote. I will clean up my local static
> validation scripts and open-source them to the community as well. This way,
> we can provide both options, and everyone can choose the approach they are
> most comfortable with.
>
> Best regards,
> ---------------------
> Yuan Tian
>
> On Mon, Apr 13, 2026 at 4:23 PM Christofer Dutz <christofer.dutz@c-ware.de
> >
> wrote:
>
> > Hi all,
> >
> > I actually don’t like the idea of automating release checks with AI
> agents.
> > In the past they have proven to not be deterministic.
> >
> > If you used AI to generate scripts that when executed perform a number of
> > checks, I’m fine with that.
> > However, I would vote -1 on providing and using such AI-based skills for
> > release approval.
> >
> > Chris
> >
> > Von: Yuan Tian <ja...@gmail.com>
> > Datum: Sonntag, 12. April 2026 um 05:03
> > An: dev <de...@iotdb.apache.org>
> > Betreff: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
> >
> > Hi all,
> >
> > I'd like to share a Claude Code skill I created to automate the Apache
> > IoTDB release candidate verification process. If you use Claude Code
> > (Anthropic's CLI coding agent) or other coding agent(like antigravity or
> > codex), this skill can save you significant time during release voting.
> >
> > GitHub Repository: https://github.com/JackieTien97/iotdb-skills
> >
> > ## What It Does
> >
> > When you say something like "check IoTDB 2.0.8 rc1", Claude Code will
> > automatically:
> >
> > 1. Download all RC artifacts from Apache dist via SVN
> > 2. Verify artifact completeness (source, all-bin, confignode-bin,
> > datanode-bin, cli-bin, library-udf-bin, ainode-bin — each with .asc and
> > .sha512)
> > 3. Verify GPG signatures and SHA512 checksums for all packages
> > 4. Check LICENSE and NOTICE files
> > 5. Run Apache RAT license header check
> > 6. Check for SNAPSHOT dependencies in pom.xml
> > 7. Verify version consistency
> > 8. Check for unexpected binary files in source
> > 9. Build from source (mvn clean install -DskipTests)
> > 10. Start IoTDB standalone (1C1D) and run read/write tests in both Tree
> > model (sql_dialect=tree) and Table model (sql_dialect=table)
> > 11. Generate a complete vote email (+1/-1) with all check results, test
> > SQL, CLI output, and environment info
> >
> > The entire process runs hands-free and produces a ready-to-paste vote
> email
> > for the dev mailing list.
> >
> > ## Installation
> >
> > ```bash
> > git clone https://github.com/JackieTien97/iotdb-skills.git
> > mkdir -p ~/.claude/skills
> > cp -r iotdb-skills/iotdb-release-vote ~/.claude/skills/
> > ```
> >
> > ## Prerequisites
> >
> > - Java (JDK 17+)
> > - Maven (3.6+)
> > - GPG (with IoTDB committer keys imported)
> > - SVN (Subversion)
> > - unzip
> > - Claude Code (https://claude.ai/claude-code)
> >
> > ## Example Usage
> >
> > Just tell Claude Code:
> >
> > ```
> > 帮我检查 IoTDB 2.0.8 rc1
> > ```
> >
> > or
> >
> > ```
> > check iotdb release candidate 2.0.8 rc1
> > ```
> >
> > Feedback, issues, and contributions are welcome on the GitHub repo. If
> you
> > have ideas for other IoTDB-related skills (e.g., performance
> benchmarking,
> > cluster deployment checks), feel free to open an issue or PR.
> >
> > Best regards,
> > ----------------
> > Yuan Tian
> >
>
Re: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Posted by Yuan Tian <ja...@gmail.com>.
Hi Chris,
I completely agree with your point—an Apache release must remain an "act of
the foundation," and the ultimate decision must always come from human
committers and PMC members, not an AI.
I also see the danger in providing a ready-to-post email template. It could
indeed encourage people to simply copy and paste the output without
actually reviewing the results, which defeats the entire purpose of the
release verification process.
Given this, I will take your advice and crystallize the verification logic
from the AI skill into deterministic Python scripts. This approach will
still help us automate the tedious, repetitive steps (like downloading
artifacts, verifying signatures, and compiling), but the execution will be
100% predictable. More importantly, it ensures that developers still need
to read the raw output and make their own informed decisions when casting a
vote.
Thanks again for pointing this out from a governance perspective. It’s a
very important reminder. I will share the deterministic Python scripts with
the community soon.
Best regards,
----------------------
Yuan Tian
On Mon, Apr 13, 2026 at 5:42 PM Christofer Dutz <ch...@c-ware.de>
wrote:
> Hi Yuan,
>
> I am totally not objecting to use AI in addition for making tracking down
> issues simpler.
> Having a fixed set of deterministic scripts approved by the PMC and having
> an AI run them and automate the tracking down of potential issues is also
> nothing I would object.
>
> However, should the release process be and stay a process executed by our
> committers and PMC members.
> An Apache release needs to stay an „act of the foundation“ and not an „act
> of claude“.
> By providing ready-to-post email content, I am 100% sure many people will
> just copy and paste this and therefore have Claude actually approve
> releases.
>
> Chris
>
> Von: Yuan Tian <ja...@gmail.com>
> Datum: Montag, 13. April 2026 um 11:03
> An: dev@iotdb.apache.org <de...@iotdb.apache.org>
> Betreff: Re: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
>
> Hi Chris,
>
> Thanks for the feedback. You make a very valid point regarding the
> non-deterministic nature of AI agents when it comes to strict release
> approvals.
>
> Solidifying these steps into a fixed Shell or Python script is certainly a
> solid approach. It is also much more token-efficient—it only costs tokens
> during the initial script generation, and all subsequent runs are
> completely free. I actually have a set of these hardcoded scripts running
> locally.
>
> However, the main reason I wanted to explore the "skill" approach is
> flexibility. Once a fixed script is written, its logic is essentially
> "dead" or static. Conversely, an agentic skill can become progressively
> smarter as the underlying foundation models iterate.
>
> For example, if a certain step fails due to unexpected environmental issues
> (e.g., failing to download artifacts via svn), a static script will simply
> throw an error and halt. An AI agent, however, might dynamically figure out
> a workaround—like falling back to curl or wget to fetch the code—and
> continue the validation process. In a way, the skill evolves alongside the
> foundation models' capabilities.
>
> That being said, I completely respect the need for 100% deterministic
> checks when casting a formal vote. I will clean up my local static
> validation scripts and open-source them to the community as well. This way,
> we can provide both options, and everyone can choose the approach they are
> most comfortable with.
>
> Best regards,
> ---------------------
> Yuan Tian
>
> On Mon, Apr 13, 2026 at 4:23 PM Christofer Dutz <christofer.dutz@c-ware.de
> >
> wrote:
>
> > Hi all,
> >
> > I actually don’t like the idea of automating release checks with AI
> agents.
> > In the past they have proven to not be deterministic.
> >
> > If you used AI to generate scripts that when executed perform a number of
> > checks, I’m fine with that.
> > However, I would vote -1 on providing and using such AI-based skills for
> > release approval.
> >
> > Chris
> >
> > Von: Yuan Tian <ja...@gmail.com>
> > Datum: Sonntag, 12. April 2026 um 05:03
> > An: dev <de...@iotdb.apache.org>
> > Betreff: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
> >
> > Hi all,
> >
> > I'd like to share a Claude Code skill I created to automate the Apache
> > IoTDB release candidate verification process. If you use Claude Code
> > (Anthropic's CLI coding agent) or other coding agent(like antigravity or
> > codex), this skill can save you significant time during release voting.
> >
> > GitHub Repository: https://github.com/JackieTien97/iotdb-skills
> >
> > ## What It Does
> >
> > When you say something like "check IoTDB 2.0.8 rc1", Claude Code will
> > automatically:
> >
> > 1. Download all RC artifacts from Apache dist via SVN
> > 2. Verify artifact completeness (source, all-bin, confignode-bin,
> > datanode-bin, cli-bin, library-udf-bin, ainode-bin — each with .asc and
> > .sha512)
> > 3. Verify GPG signatures and SHA512 checksums for all packages
> > 4. Check LICENSE and NOTICE files
> > 5. Run Apache RAT license header check
> > 6. Check for SNAPSHOT dependencies in pom.xml
> > 7. Verify version consistency
> > 8. Check for unexpected binary files in source
> > 9. Build from source (mvn clean install -DskipTests)
> > 10. Start IoTDB standalone (1C1D) and run read/write tests in both Tree
> > model (sql_dialect=tree) and Table model (sql_dialect=table)
> > 11. Generate a complete vote email (+1/-1) with all check results, test
> > SQL, CLI output, and environment info
> >
> > The entire process runs hands-free and produces a ready-to-paste vote
> email
> > for the dev mailing list.
> >
> > ## Installation
> >
> > ```bash
> > git clone https://github.com/JackieTien97/iotdb-skills.git
> > mkdir -p ~/.claude/skills
> > cp -r iotdb-skills/iotdb-release-vote ~/.claude/skills/
> > ```
> >
> > ## Prerequisites
> >
> > - Java (JDK 17+)
> > - Maven (3.6+)
> > - GPG (with IoTDB committer keys imported)
> > - SVN (Subversion)
> > - unzip
> > - Claude Code (https://claude.ai/claude-code)
> >
> > ## Example Usage
> >
> > Just tell Claude Code:
> >
> > ```
> > 帮我检查 IoTDB 2.0.8 rc1
> > ```
> >
> > or
> >
> > ```
> > check iotdb release candidate 2.0.8 rc1
> > ```
> >
> > Feedback, issues, and contributions are welcome on the GitHub repo. If
> you
> > have ideas for other IoTDB-related skills (e.g., performance
> benchmarking,
> > cluster deployment checks), feel free to open an issue or PR.
> >
> > Best regards,
> > ----------------
> > Yuan Tian
> >
>
AW: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Posted by Christofer Dutz <ch...@c-ware.de>.
Hi Yuan,
I am totally not objecting to use AI in addition for making tracking down issues simpler.
Having a fixed set of deterministic scripts approved by the PMC and having an AI run them and automate the tracking down of potential issues is also nothing I would object.
However, should the release process be and stay a process executed by our committers and PMC members.
An Apache release needs to stay an „act of the foundation“ and not an „act of claude“.
By providing ready-to-post email content, I am 100% sure many people will just copy and paste this and therefore have Claude actually approve releases.
Chris
Von: Yuan Tian <ja...@gmail.com>
Datum: Montag, 13. April 2026 um 11:03
An: dev@iotdb.apache.org <de...@iotdb.apache.org>
Betreff: Re: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Hi Chris,
Thanks for the feedback. You make a very valid point regarding the
non-deterministic nature of AI agents when it comes to strict release
approvals.
Solidifying these steps into a fixed Shell or Python script is certainly a
solid approach. It is also much more token-efficient—it only costs tokens
during the initial script generation, and all subsequent runs are
completely free. I actually have a set of these hardcoded scripts running
locally.
However, the main reason I wanted to explore the "skill" approach is
flexibility. Once a fixed script is written, its logic is essentially
"dead" or static. Conversely, an agentic skill can become progressively
smarter as the underlying foundation models iterate.
For example, if a certain step fails due to unexpected environmental issues
(e.g., failing to download artifacts via svn), a static script will simply
throw an error and halt. An AI agent, however, might dynamically figure out
a workaround—like falling back to curl or wget to fetch the code—and
continue the validation process. In a way, the skill evolves alongside the
foundation models' capabilities.
That being said, I completely respect the need for 100% deterministic
checks when casting a formal vote. I will clean up my local static
validation scripts and open-source them to the community as well. This way,
we can provide both options, and everyone can choose the approach they are
most comfortable with.
Best regards,
---------------------
Yuan Tian
On Mon, Apr 13, 2026 at 4:23 PM Christofer Dutz <ch...@c-ware.de>
wrote:
> Hi all,
>
> I actually don’t like the idea of automating release checks with AI agents.
> In the past they have proven to not be deterministic.
>
> If you used AI to generate scripts that when executed perform a number of
> checks, I’m fine with that.
> However, I would vote -1 on providing and using such AI-based skills for
> release approval.
>
> Chris
>
> Von: Yuan Tian <ja...@gmail.com>
> Datum: Sonntag, 12. April 2026 um 05:03
> An: dev <de...@iotdb.apache.org>
> Betreff: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
>
> Hi all,
>
> I'd like to share a Claude Code skill I created to automate the Apache
> IoTDB release candidate verification process. If you use Claude Code
> (Anthropic's CLI coding agent) or other coding agent(like antigravity or
> codex), this skill can save you significant time during release voting.
>
> GitHub Repository: https://github.com/JackieTien97/iotdb-skills
>
> ## What It Does
>
> When you say something like "check IoTDB 2.0.8 rc1", Claude Code will
> automatically:
>
> 1. Download all RC artifacts from Apache dist via SVN
> 2. Verify artifact completeness (source, all-bin, confignode-bin,
> datanode-bin, cli-bin, library-udf-bin, ainode-bin — each with .asc and
> .sha512)
> 3. Verify GPG signatures and SHA512 checksums for all packages
> 4. Check LICENSE and NOTICE files
> 5. Run Apache RAT license header check
> 6. Check for SNAPSHOT dependencies in pom.xml
> 7. Verify version consistency
> 8. Check for unexpected binary files in source
> 9. Build from source (mvn clean install -DskipTests)
> 10. Start IoTDB standalone (1C1D) and run read/write tests in both Tree
> model (sql_dialect=tree) and Table model (sql_dialect=table)
> 11. Generate a complete vote email (+1/-1) with all check results, test
> SQL, CLI output, and environment info
>
> The entire process runs hands-free and produces a ready-to-paste vote email
> for the dev mailing list.
>
> ## Installation
>
> ```bash
> git clone https://github.com/JackieTien97/iotdb-skills.git
> mkdir -p ~/.claude/skills
> cp -r iotdb-skills/iotdb-release-vote ~/.claude/skills/
> ```
>
> ## Prerequisites
>
> - Java (JDK 17+)
> - Maven (3.6+)
> - GPG (with IoTDB committer keys imported)
> - SVN (Subversion)
> - unzip
> - Claude Code (https://claude.ai/claude-code)
>
> ## Example Usage
>
> Just tell Claude Code:
>
> ```
> 帮我检查 IoTDB 2.0.8 rc1
> ```
>
> or
>
> ```
> check iotdb release candidate 2.0.8 rc1
> ```
>
> Feedback, issues, and contributions are welcome on the GitHub repo. If you
> have ideas for other IoTDB-related skills (e.g., performance benchmarking,
> cluster deployment checks), feel free to open an issue or PR.
>
> Best regards,
> ----------------
> Yuan Tian
>
Re: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Posted by Yuan Tian <ja...@gmail.com>.
Hi Chris,
Thanks for the feedback. You make a very valid point regarding the
non-deterministic nature of AI agents when it comes to strict release
approvals.
Solidifying these steps into a fixed Shell or Python script is certainly a
solid approach. It is also much more token-efficient—it only costs tokens
during the initial script generation, and all subsequent runs are
completely free. I actually have a set of these hardcoded scripts running
locally.
However, the main reason I wanted to explore the "skill" approach is
flexibility. Once a fixed script is written, its logic is essentially
"dead" or static. Conversely, an agentic skill can become progressively
smarter as the underlying foundation models iterate.
For example, if a certain step fails due to unexpected environmental issues
(e.g., failing to download artifacts via svn), a static script will simply
throw an error and halt. An AI agent, however, might dynamically figure out
a workaround—like falling back to curl or wget to fetch the code—and
continue the validation process. In a way, the skill evolves alongside the
foundation models' capabilities.
That being said, I completely respect the need for 100% deterministic
checks when casting a formal vote. I will clean up my local static
validation scripts and open-source them to the community as well. This way,
we can provide both options, and everyone can choose the approach they are
most comfortable with.
Best regards,
---------------------
Yuan Tian
On Mon, Apr 13, 2026 at 4:23 PM Christofer Dutz <ch...@c-ware.de>
wrote:
> Hi all,
>
> I actually don’t like the idea of automating release checks with AI agents.
> In the past they have proven to not be deterministic.
>
> If you used AI to generate scripts that when executed perform a number of
> checks, I’m fine with that.
> However, I would vote -1 on providing and using such AI-based skills for
> release approval.
>
> Chris
>
> Von: Yuan Tian <ja...@gmail.com>
> Datum: Sonntag, 12. April 2026 um 05:03
> An: dev <de...@iotdb.apache.org>
> Betreff: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
>
> Hi all,
>
> I'd like to share a Claude Code skill I created to automate the Apache
> IoTDB release candidate verification process. If you use Claude Code
> (Anthropic's CLI coding agent) or other coding agent(like antigravity or
> codex), this skill can save you significant time during release voting.
>
> GitHub Repository: https://github.com/JackieTien97/iotdb-skills
>
> ## What It Does
>
> When you say something like "check IoTDB 2.0.8 rc1", Claude Code will
> automatically:
>
> 1. Download all RC artifacts from Apache dist via SVN
> 2. Verify artifact completeness (source, all-bin, confignode-bin,
> datanode-bin, cli-bin, library-udf-bin, ainode-bin — each with .asc and
> .sha512)
> 3. Verify GPG signatures and SHA512 checksums for all packages
> 4. Check LICENSE and NOTICE files
> 5. Run Apache RAT license header check
> 6. Check for SNAPSHOT dependencies in pom.xml
> 7. Verify version consistency
> 8. Check for unexpected binary files in source
> 9. Build from source (mvn clean install -DskipTests)
> 10. Start IoTDB standalone (1C1D) and run read/write tests in both Tree
> model (sql_dialect=tree) and Table model (sql_dialect=table)
> 11. Generate a complete vote email (+1/-1) with all check results, test
> SQL, CLI output, and environment info
>
> The entire process runs hands-free and produces a ready-to-paste vote email
> for the dev mailing list.
>
> ## Installation
>
> ```bash
> git clone https://github.com/JackieTien97/iotdb-skills.git
> mkdir -p ~/.claude/skills
> cp -r iotdb-skills/iotdb-release-vote ~/.claude/skills/
> ```
>
> ## Prerequisites
>
> - Java (JDK 17+)
> - Maven (3.6+)
> - GPG (with IoTDB committer keys imported)
> - SVN (Subversion)
> - unzip
> - Claude Code (https://claude.ai/claude-code)
>
> ## Example Usage
>
> Just tell Claude Code:
>
> ```
> 帮我检查 IoTDB 2.0.8 rc1
> ```
>
> or
>
> ```
> check iotdb release candidate 2.0.8 rc1
> ```
>
> Feedback, issues, and contributions are welcome on the GitHub repo. If you
> have ideas for other IoTDB-related skills (e.g., performance benchmarking,
> cluster deployment checks), feel free to open an issue or PR.
>
> Best regards,
> ----------------
> Yuan Tian
>
AW: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Posted by Christofer Dutz <ch...@c-ware.de>.
Hi all,
I actually don’t like the idea of automating release checks with AI agents.
In the past they have proven to not be deterministic.
If you used AI to generate scripts that when executed perform a number of checks, I’m fine with that.
However, I would vote -1 on providing and using such AI-based skills for release approval.
Chris
Von: Yuan Tian <ja...@gmail.com>
Datum: Sonntag, 12. April 2026 um 05:03
An: dev <de...@iotdb.apache.org>
Betreff: [Tool] Agent Skill for Automating IoTDB Release Vote Checks
Hi all,
I'd like to share a Claude Code skill I created to automate the Apache
IoTDB release candidate verification process. If you use Claude Code
(Anthropic's CLI coding agent) or other coding agent(like antigravity or
codex), this skill can save you significant time during release voting.
GitHub Repository: https://github.com/JackieTien97/iotdb-skills
## What It Does
When you say something like "check IoTDB 2.0.8 rc1", Claude Code will
automatically:
1. Download all RC artifacts from Apache dist via SVN
2. Verify artifact completeness (source, all-bin, confignode-bin,
datanode-bin, cli-bin, library-udf-bin, ainode-bin ― each with .asc and
.sha512)
3. Verify GPG signatures and SHA512 checksums for all packages
4. Check LICENSE and NOTICE files
5. Run Apache RAT license header check
6. Check for SNAPSHOT dependencies in pom.xml
7. Verify version consistency
8. Check for unexpected binary files in source
9. Build from source (mvn clean install -DskipTests)
10. Start IoTDB standalone (1C1D) and run read/write tests in both Tree
model (sql_dialect=tree) and Table model (sql_dialect=table)
11. Generate a complete vote email (+1/-1) with all check results, test
SQL, CLI output, and environment info
The entire process runs hands-free and produces a ready-to-paste vote email
for the dev mailing list.
## Installation
```bash
git clone https://github.com/JackieTien97/iotdb-skills.git
mkdir -p ~/.claude/skills
cp -r iotdb-skills/iotdb-release-vote ~/.claude/skills/
```
## Prerequisites
- Java (JDK 17+)
- Maven (3.6+)
- GPG (with IoTDB committer keys imported)
- SVN (Subversion)
- unzip
- Claude Code (https://claude.ai/claude-code)
## Example Usage
Just tell Claude Code:
```
帮我检查 IoTDB 2.0.8 rc1
```
or
```
check iotdb release candidate 2.0.8 rc1
```
Feedback, issues, and contributions are welcome on the GitHub repo. If you
have ideas for other IoTDB-related skills (e.g., performance benchmarking,
cluster deployment checks), feel free to open an issue or PR.
Best regards,
----------------
Yuan Tian