Skip to Main Content

SQLcl: MCP Server & SQL Prompt

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

SQLcl skills sync should support repository-local installs and granular subskill sync

Alexander KluevJun 5 2026 — edited Jun 5 2026

Environment:
- SQLcl 26.1.2
- SQLcl skills command
- Oracle public skills repository
- APEX / APEXlang skills
- Multiple projects that may target different APEX versions

Description:
The SQLcl skills command is useful, but the current shared/global installation model and skill granularity are awkward for real multi-project work.

Current behavior observed:
- skills sync --skill-name apex uses Oracle's public skills repository.
- SQLcl creates or updates skill content under $HOME/.dbtools.
- It then copies skills to shared agent locations such as:

  • $HOME/.copilot/skills
  • $HOME/.codex/skills
    - Skills are organized by broad domains such as apex and db.
    - Some domains contain useful subfolders that should be usable as standalone skills.

Enhancement request:
Please consider two related improvements.

  1. Suggestion 1: repository-local and versioned skill installation.

Add an option to install or sync SQLcl skills directly into the repository where the command is run.

For example:

skills sync --skill-name apex --local

or:

skills sync --skill-name apex --target .github/skills

Expected result for suggestion 1:

A project should be able to carry the exact skill version and instructions that match its APEX and SQLcl versions.

Why suggestion 1 matters:
One repository may target APEX 26.1, another may later target APEX 26.2, and another may still be on APEX 24.2. A single shared global APEX skill can become the wrong context for at least one of those projects.

Suggestion 2: slash-qualified subskill sync.

Allow skills sync --skill-name to accept slash-qualified skill names such as:

skills sync --skill-name apex/apexlang
skills sync --skill-name db/sqlcl
skills sync --skill-name db/performance
skills sync --skill-name db/monitoring

A domain-level skill name should still work as a bundle:

skills sync --skill-name apex
skills sync --skill-name db

Expected result for suggestion 2:
- skills sync --skill-name db should sync the whole db skill bundle.
- skills sync --skill-name db/sqlcl should sync only the sqlcl subskill from the db domain.
- skills sync --skill-name apex should sync all APEX skills.
- skills sync --skill-name apex/apexlang should sync only the APEXlang subskill.

Destination structure:
Please preserve the namespace in the destination skill folder. For example, syncing db/sqlcl should create a db/sqlcl skill structure in the target environment, not a flattened sqlcl folder.

Example:

$HOME/.codex/skills/db/sqlcl/

or, for a repository-local target:

.github/skills/db/sqlcl/

Why suggestion 2 matters:

The db domain can contain many different skill areas. If I only need the SQLcl or performance skill, copying the whole db skill tree can create unnecessary context noise and token usage for AI agents. Each meaningful subfolder under a domain should be usable as a standalone skill module while still keeping the domain namespace.

Impact:
Repository-local skill installation and granular subskill sync would make AI-assisted SQLcl, APEX, and database work more reproducible, easier to review, less token-heavy, and safer across projects with different tool and APEX versions.

Comments
Post Details
Added on Jun 5 2026
0 comments
196 views