intersystems-community/iris-agentic-dev/irispython-connector
Claude Code and agent skill by intersystems-community/iris-agentic-dev
- community
Checking that the SKILL.md file is still in the repository.
Connect Python to IRIS from outside IRIS over TCP — DB-API, SQLAlchemy, and pandas. Covers the port confusion, keyword-arg segfault, FETCH FIRST crash, and type normalization blockers that trip up every first-time user.
Install
npx vskill@latest install intersystems-community/iris-agentic-dev/irispython-connectorSKILL.md
This skill vs. iris-embedded-python
| This skill | iris-embedded-python | ||
|---|---|---|---|
| Python location | External process, connects over TCP | Inside IRIS (Embedded Python) | |
| Import | intersystems_irispython.dbapi | import iris | |
| Connection | Superserver port (default 1972) | In-process, no network | |
| Use when | Running .py scripts, notebooks, external services | ObjectScript calls Python, or Python calls iris.sql |
If you see import iris in the code, use the iris-embedded-python skill instead.
Connection — which port
Always use the superserver port, not the web port.
Run check_config to see both ports:
Look for iris_port (superserver, default 1972), not web_port (default 52773/52780).
Docker example: -p 11975:1972 → superserver port on the host is 11975.
Install
DB-API — positional args only
SQLAlchemy
Crash-triggering patterns — avoid all three
| Pattern | Symptom | Fix | |
|---|---|---|---|
dbapi.connect(hostname=..., port=...) keyword args | SIGSEGV / exit 139 | Use positional args: connect("host", port, "ns", "user", "pass") | |
SELECT ... FETCH FIRST n ROWS ONLY | SIGSEGV in C extension | Use SELECT TOP n ... instead | |
pd.read_sql(query, conn) | SIGSEGV on some queries | Use cursor.execute(); cursor.fetchall() |
These are not edge cases — all three crash hard with no Python traceback. If you see exit 139 or SIGSEGV, check this table first.
Type normalization
DB-API does not normalize aggregate return types. COUNT, AVG, SUM may return Decimal, str, or float depending on the query. Cast explicitly:
IRISINSTALLDIR warning suppression
If you see a warning about IRISINSTALLDIR not being set, it is cosmetic. Suppress it before the import:
IRIS SQL dialect differences
| SQL feature | IRIS behavior | |
|---|---|---|
| Row limit | SELECT TOP n ... — FETCH FIRST n ROWS ONLY causes SIGSEGV | |
| Reserved words | COUNT, HOUR, YEAR, DATE, TIME cannot be used as column aliases | |
| Schema discovery | INFORMATION_SCHEMA available and standard | |
| Aggregates | COUNT, SUM, AVG, MIN, MAX work | |
| Standard functions | COALESCE, CASE, ROUND, NULLIF all work |
Quick-start (10 lines)
Minimal working example against the local dev container (iris-dev-iris, superserver port 11975):
Swap 11975 for whatever iris_port shows in check_config output for your environment.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/skills/irispython-connector/SKILL.md
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
[](https://verified-skill.com/skills/intersystems-community/iris-agentic-dev/irispython-connector)