#VSCode

0 Followers · 424 Posts

VSCode is a short name form for a popular cross-platform editor VisualStudio Code from Microsoft.

Learn more.

InterSystems staff + admins Hide everywhere
Hidden post for admin
Article Tani Frankel · Feb 13, 2024 3m read

Following 2 local Webinars we had focused on VS Code ["Intro" and "Beyond Basics"; in Hebrew], I prepared for the participants some related links of relevant resources which we sent as a follow-up. Sharing them here as well for the benefit of the Community.
You are all of course welcome to add more useful resources.

2
5 589
Article Pietro Di Leo · Sep 24, 2025 23m read

Table of Contents

  1. Purpose of the article
  2. What containers are and why they make sense with IRIS
     2.1 Containers and images in a nutshell
     2.2 Why containers are useful for developers
     2.3 Why IRIS works well with Docker
  3. Prerequisites
  4. Installing the InterSystems IRIS image
     4.1 Using Docker Hub
     4.2 Pulling the image
  5. Running the InterSystems IRIS image
     5.1 Starting an IRIS container
     5.2 Checking container status
     5.3 Executing code in the container terminal
     5.4 Accessing the IRIS Management Portal
     5.5 Connecting the container to VS Code
     5.6 Stopping or removing the container
     5.7 Setting a specific password with a bind mount
     5.8 Using durable %SYS volumes
      5.8.1 What gets stored with durable %SYS
      5.8.2 How to enable durable %SYS
  6. Using Docker Compose
     6.1 Docker Compose example
     6.2 Running Docker Compose
  7. Using a Dockerfile to run custom source code
     7.1 Dockerfile example
     7.2 Docker Compose example
     7.3 Understanding layers, image tagging and build vs. run time
     7.4 Source code and init script
     7.5 Building the image with Dockerfile
     7.6 Running instructions in the containerized IRIS terminal
  8. Conclusion and what’s next
6
6 217
Article Jinyao · Feb 21, 2025 4m read

Motivation

I didn't know about ObjectScript until I started my new job. Objectscript isn't actually a young programming language. Compared to C++, Java and Python, the community isn't as active, but we're keen to make this place more vibrant, aren't we?

I've noticed that some of my colleagues are finding it tricky to get their heads around the class relationships in these huge projects. There aren't any easy-to-use modern class diagram tool for ObjectScript.

Related Work

I have tried relavant works:

10
4 473
Article Andrew Sklyarov · Nov 2, 2025 7m read

Over time, while I was working with Interoperability on the IRIS Data Platform, I developed rules for organizing a project code into packages and classes. That is what is called a Naming Convention, usually. In this topic, I want to organize and share these rules. I hope it can be helpful for somebody.

 

4
2 82
Question Colin Brough · Apr 10, 2025

InterSystems ObjectScript extension for VS Code, version 3.0.1

Am also asking this question on the extension's GitHub page: Request textDocument/documentSymbol failed. Error: name must not be falsy · intersystems-community/vscode-objectscript · Discussion #1530 - but suspect more eyes will see it here, which might help gather additional information.

Tried to compile some legacy ObjectScript code via Import/Compile in VS Code using the vscode-objectscript extension. Getting an error, and the content of the file is left changed on the filesystem simply by being compiled.

6
0 198
Question Pietro Di Leo · Jan 17, 2024

Hi everyone, 

Does anyone know how to export projects via VSC? 

I opened the project through the "InterSystems Tools" plugin (command is "Edit Code in Project") and I can correctly work on it.

However, when I try using the "ObjectScript" plugin to export the project (right click on the project -> "Export Project Contents")

This message appears and it is not possible to export the project:

I've tried also to open a new window, then a folder and finally the project, but nothing changes. 

This is an example of my workspace: 


Anyone knows how to do it? 

Thank you! 

6
0 2978
Article John Murray · Oct 6, 2025 1m read

gj :: configExplorer is a new VS Code extension integrating with Server Manager and leveraging Structurizr to produce configuration diagrams of your servers.

Here's a short introductory video.

By using the InterSystems IRIS Native API for Node.js it avoids the need for any support code to be installed on the servers. This technology choice also qualifies it for entry into the current Developer Community contest.

The initial release focuses on two aspects of server configuration:

  • Namespaces and databases
  • ECP connectivity

Suggestions for what to add next are welcome, as is general feedback.

6
0 104
Article Pietro Di Leo · Nov 16, 2023 5m read

Introduction

Since InterSystems has recently announced the discontinuation of support for InterSystems Studio starting from version 2023.2 in favor of exclusive development of extensions for the Visual Studio Code (VSC) IDE, believing that the latter offers a superior experience compared to Studio, many of us developers have switched or are beginning to use VSC. Many may have wondered how to open the Terminal to perform operations, as VSC does not have an Output panel like Studio did, nor an integrated feature to open the IRIS terminal, except by downloading the plugins developed by InterSystems.

10
12 2222
Question Pietro Di Leo · Jul 4, 2025

Hello everybody, 

I would like to export project contents using Visual Studio Code, as well as I do with InterSystems Studio.

However, while attempting the export through the InterSystems extension I get the following error:

- There are no folders in the current workspace that code can be exported to.

These are the step to reproduce my error:

  1. Create and save a new VSCode workspace
  2. Open a local directory 
  3. Go to the InterSystems extension
  4. Open "Projects" panel and right-click on the project you want to export
  5. Click on "Export Project Contents"

Anyone can help me solving this issue?

9
3 240
Article John Murray · Oct 9, 2025 2m read

In my previous article introducing gj :: configExplorer I flagged up how an apparent bug in the Windows elements of the Native API for Node.js means it's not currently available to run in VS Code on a Windows desktop. In a comment on that article I offered a workaround, but this requires a Docker-equipped Linux host you can SSH to.

If you don't have a suitable target it's now possible to leverage your local Windows Docker Desktop. Here's how:

  1. Open a new VS Code window.
1
0 39
Article Jordan Simpson · Sep 26, 2025 2m read

Hi,

Just thought I'd share quite a handy hook that has helped me out when developing on Health Connect Cloud with VS Code and GitBash. When developing on Health Connect Cloud, if changes are made directly on the server such as routing rules or component deployments, they aren't automatically included in source control, therefore you must export from the server into your local files and push to your remote repo. I'm sure there are easier methods to deal with that which I'm in the process of testing, but as a quick solution I thought it would be handy have a pre-commit hook which triggers a reminder in GitBash - see below.

1
1 123
Question Olivier Caudron · Jul 18, 2024

Hi

With this servers definition in VSCode:

"intersystems.servers": {
        "iris4health202312_local": {
            "webServer": {
                "scheme": "http",
                "host": "localhost",
                "port": 52773
            },
            "username": "_system"
        },
        "iris4health20241_local": {
            "webServer": {
                "scheme": "http",
                "host": "localhost",
                "port": 80
            },
            "username": "_system"
        }
    },
18
2 584
Question Jochen Roese · Sep 15, 2025

Hi,

so we introduced GIT in our workflow and we exported all files with $SYSTEM.OBJ.ExportUDL

Everything fine so far. But for some reason the export adds an extra line for classes (Routines are OK as far as I can see):

On Serverside it isn't there

The Problem is now that when we checkout a branch and a class changed we automatically compile it from the repository to a namespace that is made for the developer. E.g. DEV_001, DEV_002 and so on. 

2
0 48
Article Robert Barbiaux · Sep 1, 2025 9m read

InterSystems IRIS interoperability production development involves using or writing various types of components. They include services (which handle incoming data), processes (which deal with the data flow and logic), and operations (which manage outgoing data or requests). Messages flowing through those components constantly require being adapted to consuming applications. Therefore,Data transformations are by far the most common component in interoperability productions.

0
0 91
Article Pietro Di Leo · Aug 21, 2025 3m read

Recently, I replaced my old laptop with a new one and had to migrate all my data. I was looking for a guide but couldn’t find anything that explained in detail how to migrate server connections from InterSystems Studio and Visual Studio Code from one PC to another. Simply reinstalling the tools is not enough, and migrating all the connections manually seemed like a waste of time. In the end, I managed to solve the problem, and this article explains how.

InterSystems Studio

Exporting Server Connections

0
2 103
Article Laurel James (GJS) · Mar 12, 2024 2m read

SQLTools is a Visual Studio Code (VS Code) Extension with over 3.5 million downloads that provides connections to many of the most used databases, including InterSystems IRIS, using drivers. For developers new to VS Code, or those already familiar with it but are looking to streamline their connections to InterSystems IRIS, this tutorial will take you through installing the SQLTools extensions and the InterSystems IRIS drive. It then guides you on how to establish a connection to your instance of InterSystems IRIS and run a query. You will need: VS Code installed on your system and access to

2
4 819
Question Kurt Hofman · Aug 9, 2023

When I open a class in VS Code and I want to save it I'm getting the following error : Non-JSON response to /api/atelier/v7/DEV/doc/API.Mollie.Execute.cls?ignoreConflict=0 request. Is the web server suppressing detailed errors?

Also I always get a popup when I open VS Code "The extension wants to sign in using InterSystems Server Credentials."

3
0 439
Article Henry Pereira · Jul 31, 2025 5m read

artisan cover

If you’ve ever watched a true artisan—whether a potter turning mud into a masterpiece or a luthier bringing raw wood to life as a marvelous guitar—you know that magic isn’t in the materials, but in care, craft, and process. I know this firsthand: my handmade electric guitar is a daily inspiration, but I’ll admit—creating something like that is a talent I don’t have.

Yet, in the digital world, I often see people hoping for “magic” from generative AI by typing vague, context-free prompts like “build an app.” The results are usually frustratingly shallow—no artistry, no finesse. Too many expect AI to work miracles with zero context or structure. That frustration is what motivated us to build dc-artisan—a tool for digital prompt artisans. Our goal: to enable anyone to transform rough, wishful prompts into efficient, functional, and context-rich masterpieces.

Like watching a master artisan transform raw materials into art, creating with GenAI is about intent, preparation, and thoughtful crafting. The problem isn’t with AI itself—it’s how we use it. Just as a luthier must carefully select and shape each piece of wood, effective prompt engineering demands clear context, structure, and intention.

We believe the world deserves more than “magical prompts” that lead to disappointment. Powerful generative AI arises from thoughtful human guidance: precise context, real objectives, and deliberate structure. No artisan creates beauty by accident—reliable AI outputs require care and preparation.

dc-artisan approaches prompt engineering as a true craft—systematic, teachable, and testable. It offers a comprehensive toolkit for moving beyond trial, error, and guesswork.

The first thing dc-artisan does is aim to understand your prompt the way a thoughtful collaborator would. When you begin drafting, the tool engages directly with your input:

  • Clarifying questions: dc-artisan analyzes your initial prompt and asks focused questions to uncover your core objective, target audience, expected format, and any missing context. For example:
    • “What kind of output are you expecting—text summary, code, or structured data?”
    • “Who is the target audience?”
    • “What type of input or data will this prompt be used with?”

prompt enhance

These interactions help you clarify not just what you want the prompt to say, but also why.

Once your intent is clear, dc-artisan reviews the structure and offers tailored suggestions—enhancing clarity, improving tone, and filling in missing details critical for context-rich, actionable output.

And the best thing? You use all these features right inside your beloved editor, VS Code! You can insert variables directly in your prompt (like {task} or {audience}) for flexibility and reuse, instantly previewing how final prompts look with different substitutions—so you see exactly how it will work in practice.

But that’s not all. dc-artisan supports prompt tuning for optimal performance. Upload a CSV of test cases to automatically evaluate consistency, output quality, and the impact of your prompt structure across varied inputs. dc-artisan evaluates each response and generates comprehensive reports with quality scores and similarity metrics—so you can measure and optimize your prompts’ effectiveness with confidence.

testing

Prompting Without Context Isn’t Craft — It’s Chaos

Prompt engineering without structure is like carving wood blindfolded. You might produce something, but it likely won’t play a tune.

Many resort to vague or overloaded prompts—short, ambiguous commands or pages of raw content without structure. Either the model has no real idea what you want, or it’s lost in a swamp of noise.

When a prompt’s context becomes too long or cluttered, even advanced LLMs can lose focus. Instead of reasoning or generating new strategies, they often get distracted, repeating earlier content or sticking to familiar patterns from the beginning of your prompt history. Ironically, larger models with bigger context windows (like 32k tokens) are even more susceptible to this. Simply providing more context (more documents, bigger prompts, entire knowledge bases) frequently backfires, resulting in context overload, missed objectives, and confused outputs.

That’s precisely the gap that RAG (Retrieval-Augmented Generation) is designed to fill: not by giving LLMs more information, but by feeding them the most relevant knowledge at the right moment.

How dc-artisan and RAG Pipeline Mode Help

dc-artisan unifies prompt crafting and context management. It doesn’t just help you write better prompts; it ensures your AI receives curated, relevant information, not a tidal wave of trivia.

With RAG Pipeline Mode, you can:

  • 📄 Upload & Chunk Documents: PDF, DOCX, Markdown, TXT—easily embedding into your vector database.
  • 🧬 Inspect Chunks: View each atomic unit of embedded text with precision.
  • 🗑️ Smart Cleanup: Delete unwanted or outdated content directly from the extension, keeping your AI’s knowledge base curated and relevant.

rag

This workflow is inspired by the InterSystems Ideas Portal (see DPI-I-557)

Here’s how you can smoothly integrate a new section about dc-artisan’s backend architecture just before “Closing Thoughts,” highlighting the integration with InterSystems IRIS Interoperability and our custom liteLLM adapter.

What truly sets dc-artisan apart is its robust backend, engineered for both interoperability and flexibility. The extension’s engine runs on InterSystems IRIS Interoperability, utilizing a custom-built liteLLM adapter that we developed.

This architecture means you’re not locked into a single large language model (LLM) provider. Instead, you can seamlessly connect and switch between a wide range of leading LLM platforms—including OpenAI, Gemini, Claude, Azure OpenAI, and others—all managed from a unified, enterprise-grade backend.

Closing Thoughts

More developers are discovering that prompting isn’t about guessing the “magic words.” It’s about thoughtful goals, clear language, and powerful context—writing prompts like engineers, not wizards. Just as luthiers shape wood into instruments with soul, you can shape prompts into reliable, context-enriched AI workflows using tools crafted for your craft.

dc-artisan is more than a tool—it’s a mindset shift from vibe coding toward clarity, precision, and true digital artistry.

🎸 Ready to build prompts with your own hands?
⚙️ Fire up VS Code, install dc-artisan, and start crafting your AI like an artisan—not a magician.

🗳️ And if you like what we’ve built, vote for us in the InterSystems IRIS Dev Tools Contest—your support means a lot!

dc-artisan

2
0 88
Article Timothy Leavitt · Apr 16, 2025 5m read

Thirteen years ago, I attained dual undergraduate degrees in electrical engineering and math, then promptly started full-time at InterSystems using neither. One of my most memorable and stomach-churning academic experiences was in Stats II. On an exam, I was solving a moderately difficult confidence interval problem. I was running out of time, so (being an engineer) I wrote out the definite integral on the exam paper, punched it into my graphing calculator, wrote an arrow with “calculator” over it, then wrote the result. My professor, affectionately known as “Dean, Dean, the Failing Machine,”

13
2 381
Announcement John McBride · Jul 24, 2024

Overview

The extension and source code are now available
After having some discussions at Global Summit and using a lot of package managers in my day to day development (npm,nuget,Chocolatey, etc) in addition to recently using the InterSystems Package Manager for some CICD process I'm building using Intersystems IRIS and IRIS 4 Health, I wanted an easy and integrated way to search/view/install packages related to the Intersystems tech stack.

3
4 190
Question Stephane Devin · Jul 29, 2025

Hi, 
I have a code that copy a method to another class for analysis purpose.

I also want this method to appear first in the source code to easily use it in VSCode with the classmethod debug button and not search it in the numerous method of the modified class.
Is there a way to do such a thing?
I tried the placeAfter keyword but I can't find a way to make it really work as I want. Is their other ways to control the order of methods?

2
0 60
Article John Murray · Jul 28, 2025 1m read

The new version of InterSystems Testing Manager which I released last week brings @Timothy Leavitt's cool 
Test Coverage Tool to VS Code, and is my entry for the 2025 Developer Tools contest.

Here's a teaser screenshot showing how the unit tests of the IPM project don't yet cover a feature that apparently allows an IPM repository to override its sort order.

1
0 86