intersystems-community/iris-agentic-dev/objectscript-tdd

Claude Code and agent skill by intersystems-community/iris-agentic-dev

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Compile-test-fix loop for ObjectScript development. Use when writing or modifying ObjectScript classes.

Install

npx vskill@latest install intersystems-community/iris-agentic-dev/objectscript-tdd

SKILL.md

Purpose

Close the feedback loop: write → compile → fix errors → run tests → fix failures → done.

Process Flow

  1. Write the class
  2. Review — run objectscript-review skill first
  3. Compile — run the compile command for this project
  4. If compile errors: read the error, identify the line, fix it. Return to step 3.
  5. Run tests — run the unit test suite
  6. If test failures: read the failure message, fix the code or the test. Return to step 3.
  7. Done when: compiles clean + all tests pass

Compile Command

Use the objectscript MCP tool when available (check /mcp):

text
iris_doc(mode="put", name="MyPackage.MyClass.cls", content="...", compile=true, namespace="USER")

Fallback when MCP is unavailable:

bash
iris session IRIS -U USER "Do $System.OBJ.Load(\"<ClassName>.cls\",\"ck\")"

Key Principle

Never present code to the user that hasn't compiled. If you can't compile (no IRIS access), flag this explicitly:

⚠️ No IRIS connection available — code is unverified. Recommend compiling before use.

A class that compiles clean has not been tested. The compiler does not check that a local is set before it is read, and it cannot check a method name built at runtime. Both of these compile with no error and fail when called:

objectscript
ClassMethod Total(pA As %Integer, pB As %Integer) As %Integer
{
Set tSum = pA + pB
Quit tSun // <UNDEFINED> tSun at runtime
}
ClassMethod Dyn() As %String
{
Quit $CLASSMETHOD("MyPackage.MyClass", "Nope") // <METHOD DOES NOT EXIST> at runtime
}

A literal ..Nope() is caught at compile time, but a dynamic call is not. Call every method you changed at least once, through iris_execute or a test, before you call it done.

Common Compile Errors and Fixes

ErrorCauseFix
#1043: QUIT argument not allowedQuit <val> inside TRY/CATCHChange to Return <val>
<COMMAND> at runtimeQuit <val> inside a For/While blockChange to Return <val>
Expected a compilable classMissing Class keyword or malformed headerCheck class declaration line
Method does not existIntra-class call without ..Add .. prefix
<UNDEFINED> at runtimeVariable used before SETInitialize variable before use
Expected white spaceMissing space after command keywordAdd space: Set x=1 not Setx=1

Related skills

  • objectscript-review — run before compiling to catch common mistakes early
  • objectscript-unit-test — writing %UnitTest scaffolding
  • objectscript-coverage — measuring whether your test suite exercises the code (requires merged toolset)
  • objectscript-debugging — when a test fails with a runtime error

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/intersystems-community/iris-agentic-dev/objectscript-tdd/badge)](https://verified-skill.com/skills/intersystems-community/iris-agentic-dev/objectscript-tdd)

Something wrong with this skill or its page? Tell us.