AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Analyze Oracle Schema

skill-wfukatsu-nexus-architect-analyze-oracle-schema · by wfukatsu

Analyzes Oracle database schema and generates a comprehensive Markdown report for sharing. Use when you need to document Oracle schema objects including tables, triggers, custom types, PL/SQL code, and object dependencies.

— No reviews yet
0 installs
34 views
0.0% view→install

Install

$ agentstack add skill-wfukatsu-nexus-architect-analyze-oracle-schema

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • ✓ Prompt-injection patterns
  • ✓ Secret / credential exfiltration
  • ✓ Dangerous shell & filesystem operations
  • ✓ Untrusted network calls
  • ✓ Known-malicious package signatures

What it can access

  • ✓ Network access No
  • ✓ Filesystem access No
  • ✓ Shell / process execution No
  • ● Environment & secrets Used
  • ✓ Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-wfukatsu-nexus-architect-analyze-oracle-schema)

Reliability & compatibility

✓ Security review passed
0 installs to date
— no reviews yet
● 2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Analyze Oracle Schema? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Oracle Database Schema Analysis Skill

Purpose

Generate a comprehensive Markdown report (oracle_schema_report.md) documenting an Oracle database schema. This report is the primary deliverable for sharing with users, stakeholders, or migration teams.

Output

Files are written to the configured OUTPUT_DIR (from .env):

| File | Purpose | |------|---------| | oracle_schema_report.md | Main deliverable - Human-readable report to share | | raw_schema_data.json | Reference file used to build the report |

Note: The OUTPUT_DIR must be an absolute path matching Skill 2's .env for seamless integration.


Workflow

Oracle Database  ──►  raw_schema_data.json  ──►  oracle_schema_report.md
                      (intermediate)              (deliverable)

Step 1: Collect Data

Run the Python script to extract schema metadata from Oracle:

cd skills/analyze-oracle-schema/scripts
python oracle_db_extractor.py

Options:

  • --test - Test database connection only
  • --include-source - Include full PL/SQL source code in output

This produces raw_schema_data.json in the configured OUTPUT_DIR.

Step 2: Generate Report

Claude reads the JSON and generates the Markdown report following the template in analyze-oracle-dbms_report.md.

Rules for report generation:

  • Follow the template structure exactly
  • Use the JSON field references indicated in each section
  • Skip sections entirely if no data exists (no empty tables, no "N/A")
  • Calculate summary metrics for the Executive Summary from actual data

Files in This Skill

| File | Description | |------|-------------| | SKILL.md | This file - skill documentation | | analyze-oracle-dbms_report.md | Template for the Markdown report with JSON field mappings | | requirements.txt | Python dependencies | | scripts/oracle_db_extractor.py | Single extraction script |

Configuration file (in .claude/configuration/): | databases.env | Consolidated database configuration (Oracle, MySQL, PostgreSQL) |


Configuration

Centralized Configuration

Configuration is stored in the centralized configuration file:

Location: .claude/configuration/databases.env

This single file contains all database configuration (Oracle, MySQL, PostgreSQL) for both schema analysis and migration skills.

# Oracle Database Connection
ORACLE_HOST=your_host
ORACLE_PORT=1521
ORACLE_SERVICE=your_service
ORACLE_USER=your_user
ORACLE_PASSWORD=your_password
ORACLE_SCHEMA=YOUR_SCHEMA  # Optional, defaults to connected user

# Output directory (ABSOLUTE PATH - shared with migration skill)
OUTPUT_DIR=/absolute/path/to/shared/output

# Report filename
REPORT_FILENAME=oracle_schema_report.md

# ScalarDB migration namespace
SCALARDB_NAMESPACE=your_namespace

# Include PL/SQL source code (true/false)
INCLUDE_PLSQL_SOURCE=false

Configuration Search Order:

  1. .claude/configuration/databases.env (consolidated - recommended)
  2. Project root directory
  3. Current working directory

Data Collected

The script queries Oracle data dictionary views to collect:

Tables & Constraints

  • Tables (regular, partitioned, temporary, IOT, external)
  • Columns (including identity, virtual columns)
  • Partitions and subpartitions
  • LOB columns
  • Constraints (PK, FK, UK, Check)
  • Table DDL via DBMS_METADATA

Indexes

  • All index types (B-tree, bitmap, function-based)
  • Index columns and expressions
  • Partitioned indexes

Views

  • Standard views with source SQL
  • Materialized views with refresh settings
  • Editioning views

PL/SQL Objects

  • Procedures, Functions, Packages
  • Triggers (DML, DDL, system)
  • Arguments/Parameters
  • Source code and DDL
  • Compilation errors

Miscellaneous

  • Sequences
  • Synonyms (private and public)
  • Database links
  • Scheduler jobs, programs, schedules
  • Directories
  • XMLType, JSON, Spatial columns
  • Advanced Queuing objects

Security

  • Object privileges
  • System privileges
  • Role privileges
  • VPD policies
  • FGA policies

Dependencies

  • Object dependencies
  • External dependencies (other schemas)
  • SYS package dependencies
  • Invalid objects
  • Foreign key dependencies
  • Suggested migration order

JSON Output Structure

The script produces raw_schema_data.json with this structure:

{
  "metadata": {
    "generated_at": "ISO timestamp",
    "schema": "SCHEMA_NAME",
    "database_name": "SERVICE_NAME"
  },
  "types": {
    "object_types": [...],
    "type_attributes": [...],
    "type_methods": [...],
    "collection_types": [...],
    "type_dependencies": [...]
  },
  "tables": {
    "tables": [...],
    "columns": [...],
    "identity_columns": [...],
    "virtual_columns": [...],
    "partitioned_tables": [...],
    "partitions": [...],
    "constraints": [...],
    "foreign_key_details": [...],
    "table_ddl": { "TABLE_NAME": "DDL..." }
  },
  "indexes": {
    "indexes": [...],
    "index_columns": [...],
    "index_expressions": [...],
    "partitioned_indexes": [...]
  },
  "views": {
    "views": [...],
    "view_source": [...],
    "materialized_views": [...],
    "mview_query": [...]
  },
  "plsql": {
    "procedures": [...],
    "functions": [...],
    "packages": [...],
    "triggers": [...],
    "arguments": [...],
    "source": [...],
    "procedure_ddl": {...},
    "function_ddl": {...},
    "package_ddl": {...},
    "trigger_ddl": {...}
  },
  "security": {
    "object_privileges": [...],
    "system_privileges": [...],
    "role_privileges": [...],
    "vpd_policies": [...]
  },
  "misc": {
    "sequences": [...],
    "synonyms": [...],
    "db_links": [...],
    "scheduler_jobs": [...]
  },
  "dependencies": {
    "dependencies": [...],
    "invalid_objects": [...],
    "external_dependencies": [...],
    "sys_dependencies": [...],
    "migration_order": [...]
  }
}

Prerequisites

  • Python 3.12
  • python-dotenv package (pip install -r requirements.txt)
  • SQL*Plus client (Oracle Instant Client)
  • Network access to Oracle database

Usage Example

# Navigate to scripts folder
cd skills/analyze-oracle-schema/scripts

# Test connection first
python oracle_db_extractor.py --test

# Run full extraction
python oracle_db_extractor.py

# Include PL/SQL source code
python oracle_db_extractor.py --include-source

After extraction, ask Claude: > "Generate oracleschemareport.md from rawschemadata.json following the template"

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.