From iris-dev
Performs coordinated multi-file fixes in ObjectScript projects when a change in one class requires updates in dependent classes (e.g., method signature changes, renames).
How this skill is triggered — by the user, by Claude, or both
Slash command
/iris-dev:objectscript-repairThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill provides a procedure for handling ObjectScript repairs that span multiple files.
This skill provides a procedure for handling ObjectScript repairs that span multiple files.
When a change is made to a class member, identify all call sites before touching any file.
docs_introspect(class_name) — confirms the current method signature and shows the full class definition from %Dictionaryiris_symbols(query="ClassName.*") — lists all members of the classGrep (regex search across .cls files) — finds every reference to the old symbol nameClassMethod, Method, or Property change before writing any edits.Update the repair plan to include all affected files.
target_files list should contain the root cause file first, followed by all dependent files.Apply edits to all target files in a single pass.
Edit tool for each file in dependency order (definitions before callers).Always verify the workspace as a whole after the full patch is applied.
iris_compile(target="Package/SubPackage/ClassName.cls") — compile each changed file by path; fix any errors before proceeding to the next fileiris_testgit checkout -- <file> (via Bash) before starting the next attemptContext: A method signature is modified (parameters added, removed, or types changed). Discovery:
docs_introspect on the class to capture the current signature.Grep to find all callers of the method across .cls files.Context: A class name or a public property/method is renamed. Discovery:
Grep to find all occurrences of the old symbol name across the workspace.iris_symbols to confirm the old name no longer appears in the live IRIS namespace after renaming.
Transformation:##class(OldName) to ##class(NewName) everywhere.Context: An abstract class or interface is updated, requiring all subclasses to be updated. Discovery:
Grep to find all classes that Extends the modified class.docs_introspect on each subclass to see which methods they currently implement.
Transformation:iris_compile without a file path — always pass the .cls file path, not a wildcard.npx claudepluginhub intersystems-community/iris-agentic-devMaps ObjectScript codebases using MCP tools for symbol anchoring, dependency tracing, and hierarchical exploration. Bridges raw metadata and architectural understanding via iris_symbols and docs_introspect.
Safe refactoring workflow using trace-mcp — assess risk, find candidates, check impact, and rename symbols across all files without missing import sites or cross-file references.
Edits code via hash-anchored tilth MCP edits, replacing sed/awk/perl/patch and shell redirects. Supports surgical edits and ast-grep structural codemods spanning many files.