mainframe-planning

SkillDev tools

Create a transformation guide for replacing mainframe-specific COBOL constructs with standard COBOL equivalents. Use when preparing COBOL code for local execution or migration.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the mainframe-planning skill

What this skill tells your AI

The instructions your AI receives, as published by openhands/extensions in plugins/cobol-modernization/skills/mainframe-planning/SKILL.md and read by ahel’s review.

Create a comprehensive transformation guide that maps each mainframe dependency to its standard COBOL replacement.

This guide is a prerequisite for the actual transformation — DO NOT modify any code, only create the guide.

Output Format

Document each mainframe-specific construct with:

  1. Pattern: The mainframe construct (e.g., EXEC CICS READ FILE(...))
  2. Replacement: The standard COBOL equivalent
  3. Error Handling: How to replicate the mainframe's error behavior
    • Map CICS RESP/RESP2 codes to FILE STATUS equivalents
    • Specify which FILE STATUS values to check (e.g., 00=success, 23=not found, 35=file not exists)
  4. Resource Cleanup: Any cleanup the replacement requires (CICS auto-manages resources; file I/O does not)
  5. Edge Cases: Behavior differences between mainframe and standard COBOL

Constructs to Address

Data Operations (CICS/IMS/VSAM)

  • READ, WRITE, REWRITE, DELETE operations
  • STARTBR, READNEXT, READPREV (browse operations)
  • CICS error handling: HANDLE CONDITION, RESP/RESP2 options
  • VSAM → sequential or indexed file I/O

UI/Terminal Operations (BMS maps, screens)

  • SEND MAP, RECEIVE MAP → these can be MOCKED or stubbed
  • Screen I/O is not needed for business logic validation
  • Document how to replace with simple ACCEPT/DISPLAY or test harness stubs
  • Focus on preserving the data flow, not the UI interaction

Other Mainframe Constructs

  • Mainframe data types (COMP-3 packed decimal, etc.)
  • JCL-embedded constructs
  • IMS calls (if present)

Critical Requirements

  • Every CICS command that can fail MUST have an error handling replacement documented
  • UI operations should be clearly marked as "mock/stub" so the agent doesn't get stuck on them
  • Prefer: file-based I/O over mainframe I/O, standard data types over mainframe types

Common Mappings Reference

FILE STATUS Codes

CodeMeaningCICS Equivalent
00SuccessNormal completion
23Record not foundNOTFND condition
35File does not existNOTOPEN condition
22Duplicate keyDUPREC condition
3xI/O errorsVarious IOERR conditions

CICS to Standard COBOL

CICS CommandStandard COBOL
EXEC CICS READ FILE(...)READ filename INTO...
EXEC CICS WRITE FILE(...)WRITE record-name FROM...
EXEC CICS REWRITE FILE(...)REWRITE record-name FROM...
EXEC CICS DELETE FILE(...)DELETE filename RECORD
EXEC CICS STARTBR FILE(...)START filename KEY...
EXEC CICS READNEXT FILE(...)READ filename NEXT INTO...

Signals

GitHub stars
143
Forks
83
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
mainframe-planning
Source
github.com/openhands/extensions