Skip to content

Navigation Menu

Sign in
Sign up

Repository files navigation

OAAS — Oracle Agent Application Specialist

OAAS — Oracle Agent Application Specialist

Battle-tested, evidence-based skills for Oracle Forms → APEX migration tooling, packaged for AI coding agents (and for humans).

Skills Format Oracle License


What this is

This repository is a curated set of Claude Skills — self-contained SKILL.md files — distilling hard-won, non-obvious knowledge about the Oracle Forms → Oracle APEX migration domain: the XML interchange format, the compiler toolchain, cost/risk assessment methodology, target-language code generation, CLI automation, and compliance concerns.

Every rule in every skill was verified against real tool output, real compiler errors, and real generated artifacts — not copied from documentation and not guessed. Where a rule is inferred rather than directly observed, the skill says so explicitly. Where the source material had a gap, the skill names the gap instead of quietly papering over it. That discipline — evidence before conclusion — is the actual point of this repository, not just the individual facts inside it.

If you're an AI coding agent (Claude Code, or any agent framework that understands the Skills format), point it at this repo and it will know when to reach for each skill from the description frontmatter. If you're a human doing Forms/APEX migration work, read them like you'd read a very opinionated, very specific internal wiki — because that's exactly what they are.

Why this exists

Forms → APEX migration knowledge is scattered across forum posts, decade-old blog entries, vendor documentation that describes intent rather than actual tool behavior, and — mostly — the scar tissue of people who hit an undocumented failure mode and figured it out the hard way. A huge fraction of that knowledge never gets written down at all; it just lives in one engineer's head until they change jobs.

This repo is an attempt to write down the parts that are the hardest to rediscover: the failures that are silent (no error, wrong result), the failures that are misleading (an error message that points at the wrong layer), and the rules that are asymmetric in a way that breaks any generator built on a "treat similar things similarly" assumption.

Skill index

Skill What it covers
oracle-forms-xml-format The Forms2XML/XML2Forms XML dialect — namespace, double-escaped newlines, the LovName case trap, structural ordering rules the XSD can't express, palette-name colors, the Bevel default, and the properties that pass XSD + converter + compiler and still fail at runtime (MaximumLength, Not Allowed check boxes, view blocks)
oracle-forms-compile-and-convert Locating any Forms toolchain layout (fixed candidates, then a jlib-keyed scan of C:\Oracle for the home the installer let someone name) and driving Forms2XML / XML2Forms / frmcmp / FSAL from the command line — including the silent ORA-12705 failure, the help=yes deadlock, and the GUI-subsystem frmcmp.exe that returns before it has compiled anything
forms-to-apex-assessment A defensible verdict/cost/risk model for scoping a migration — the closed-catalog principle, portfolio-level deduplication, and dependency-graph honesty rules
apexlang-generation Generating valid APEXlang for APEX 26.1 — item/label mapping (MultiLinetextarea, the honest textField fallback), the 12-column layout engine, a two-act case study on a bug that apex validate cannot catch, the ORDS render-time check, and byte-deterministic archives
sqlcl-apex-cli Driving SQLcl non-interactively — the mandatory -thin flag, why apex import/apex validate can exit 0 on a failed deploy, the password-resolution order and three-valued exit code a wrapper owes its pipeline, and where the APEXlang vocabulary actually lives
apex-runtime-verification Proving an imported application actually behaves — rendering as a temporary end user instead of making a page public, the wwv_flow.accept submit protocol (the pPageItemsProtected chunk trap and the per-item ck checksum), reading inline versus notification errors, the negative control that separates working rules from a page that rejects everything, and why the user reads the validation's errorMessage and never the ORA- it raises
forms-apex-cicd-pipeline Continuous delivery for Forms → APEX output — what a Forms repository commits versus what it builds, the four things that break a deterministic export, the export → validate → import gate, secrets → stdin credential flow, the pull-request structural-diff job, and what a green run still does not prove
sensitive-data-and-egress-policy Scanning client source for credentials/PII with check-digit validation, and classifying AI-provider egress by effective host, not vendor name
oracle-repo-hygiene What must never be committed in a Forms/APEX tooling repo (compiled .fmx and frmcmp logs included), idempotent DDL, a six-step audit — C2PA image manifests included — for open-sourcing a client-derived codebase, and release hygiene for a frozen engine that reports the version that was installed rather than the one in pyproject.toml

Each skill links to the others it builds on or feeds into — read the Related skills section at the bottom of any file to follow the thread.

How the rules are written

Every non-trivial rule in this repository follows the same three-part shape, adapted from the "evidence before conclusion" method this repo was built with:

  • Rule — the exact, actionable fact.
  • Why it matters — the failure mode you get if you don't know it, and why the rule exists rather than some other plausible-sounding alternative.
  • Evidence / calibration — what was actually observed (a real error message, a real compiler behavior, a real fixture result) that backs the rule up.

This is deliberate: a rule with no stated failure mode is easy to skim past and forget; a rule with no evidence is indistinguishable from a guess.

Honest gaps

This repository does not currently cover:

  • Oracle E-Business Suite (GL, concurrent programs, EBS integrations).
  • Oracle Database 23ai/26ai feature-specific content.
  • A PL/SQL coding-standards / style guide (the PL/SQL material here is about extracting and analyzing PL/SQL, and about idempotent DDL — not about how to write idiomatic PL/SQL day to day).
  • A vendored copy of forms.xsd — it's referenced as a validation target available inside any Forms install, not shipped here.
  • SQLcl project-based promotion (DEV → TEST → PROD) and exporting an application back from APEX after Page Designer edits — named as the next phase in forms-apex-cicd-pipeline, not yet backed by evidence.

If you have hard-won knowledge in any of these areas, that's exactly the kind of contribution this repo is looking for — see below.

Using these as Claude Skills

Drop this repository (or symlink it) into a location your agent scans for skills, and each SKILL.md's frontmatter description is enough for the agent to decide when it's relevant — no manual invocation required. Every skill is also plain, standalone Markdown: perfectly readable, and useful, on its own with no agent involved at all.

Contributing

Contributions are welcome, with one hard requirement: every rule needs evidence. A pull request that adds "I think this is how it works" without a concrete, reproducible observation behind it will be asked to bring one. Equally welcome: corrections to anything here that turns out to be wrong, version-specific, or narrower than currently stated — Oracle's own tooling changes behavior across releases, and a rule that was true on one version combination deserves a note about which one.

Please also scrub anything client-, employer-, or project-specific before opening a PR: no company names, no real hostnames, no credentials, no personal file paths. Use placeholders (<HOME>, <password>, <connect_string>) exactly as the existing skills do.

License

MIT — use this freely, attribution appreciated but not required.

About

Oracle Agent Application Specialist

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /