Skip to main content

AI Skills for APEX Deployment Tool

C

Claude is great at many things, but it does not know your tools. It knows Oracle, it knows APEX, it knows PL/SQL. But it does not know ADT. So when you ask it to create a patch, it will hallucinate the commands and you will waste time fixing them.

That is where skills come in. That is why I created ADT skills for you.


What are skills?

Skills are basically text files (SKILL.md) which you put in your project's ".claude/skills/" folder. When you ask Claude to do something, it reads these files first and follows the instructions. Think of it as a cheat sheet for Claude. You write the rules once and Claude will follow them every time.

You can write skills for anything. Coding standards, naming conventions, deployment procedures, formatting rules. If you can describe it, Claude can follow it.

I created two skills for ADT so far: adt and adt-setup. They are available on my AI_SKILLS repo. You can copy them to your project and adjust them to your needs.


The ADT skill

This is the main one. It describes all ADT commands with their flags, examples and typical workflows. When Claude reads this skill, it knows how to:

  • export database objects ("adt export_db")
  • export APEX applications, REST services and workspace files ("adt export_apex")
  • export table data with auto-generated MERGE statements ("adt export_data")
  • create and deploy patches from Git commits ("adt patch")
  • recompile invalid objects, search APEX components, search Git history
  • upload files directly to APEX during development ("adt live_upload")

It also covers the config structure, connection files, the typical developer workflow and the object ordering in patches. So when you ask Claude to help you create a patch for your task, it will generate the right command with the right flags. No more guessing.

The skill also documents the folder structure ADT expects, so Claude can navigate your repo and find the right files. If you ask it to check what changed in a specific package, it knows where to look.


The ADT setup skill

This one covers three things: installing ADT from scratch, creating database connections and updating dependencies.

Installation covers prerequisites (Git, Python 3.11+, Java, SQLcl, Oracle Instant Client) with platform-specific instructions for macOS and Windows. It walks through the whole process from cloning the repo to setting up the shell function and verifying with "adt config -version".

Database connections is the part where most people struggle. The skill describes how to edit the connection files directly (which is better than using "adt config -create" in most cases), how to set up wallets for OCI cloud databases, how to handle multiple schemas and how to encrypt passwords with "ADT_KEY".

Project initialization is a step people often skip or do wrong. The skill walks Claude through copying config templates ("config.yaml", patch folders) from the ADT installation into your project and setting up ".gitignore" with the right patterns to keep temp files, cached data and minified APEX assets out of version control. Without this, you end up committing things you should not or missing config files that ADT expects.

Updating dependencies covers how to keep oracledb, SQLcl and Instant Client current. Quick version: "adt config -autoupdate" pulls the latest ADT code from Git. For the rest, the skill has references for each component.

There is also a troubleshooting section for the classics like "adt: command not found" or the wonderful "zsh: no such word in event" error when your password contains an exclamation mark.


How to use them

Copy the skill folders into your project's ".claude/skills/" directory. That is it. Claude will pick them up automatically.

your_project/
  .claude/
    skills/
      adt/
        SKILL.md
      adt-setup/
        SKILL.md
        references/
          ...

Or just point Claude to my repo and let it add it for you.


Why bother?

Claude without context is like a junior developer who just joined your team. Smart, fast, but clueless about your tools and processes. Skills give it the context it needs to actually help you instead of generating plausible looking nonsense.


If you have ADT skills ideas or improvements, let me know.

More skills ahead, stay tuned!


Comments