InfoBIM Core
_____ __ ____ _____ __ __ |_ _| / _| | _ \_ _| \/ | | | _ __ | |_ ___ | |_) || | | \ / | | | | '_ \| _/ _ \| _ < | | | |\/| | _| |_| | | | || (_) | |_) || |_| | | | |_____|_| |_|_| \___/|____/_____|_| |_|
The Capability Engine for BIM Automation
Turn your BIM scripts into standardized, agent-ready capabilities.
InfoBIM IFC is a modular runtime environment for Engineering Automation. It decouples the execution logic (how to run scripts, handle dependencies, manage Docker) from the business logic (validating pipes, counting doors, auditing models).
Whether you are a human running commands in the terminal or an AI Agent planning a complex workflow, InfoBIM provides the standard interface to interact with BIM data.
Overview
- CLI:
infobim | check | run | list - Engines: supports
venvandcolabvia OntoBDC configuration - IFC Support: built on top of IfcOpenShell for openBIM workflows
🚀 Quick Start
1. Install
InfoBIM is designed to require as little setup as possible to get started. You can currently use InfoBIM locally (Python venv) or in Google Colab, depending on your needs.
Local Installation
Local installation requires Python 3.10+ with pip and venv available. To create and activate a virtual environment, go to the project directory and run:
python -m venv .venv
source .venv/bin/activate
Then:
pip install infobim
To verify the installation, run:
infobim --version
And, welcome to InfoBIM world!
Google Colab Mode (Optimized for Notebooks)
All current InfoBIM features are available in Colab. You can check the example notebook here:
2. Run a Capability
Capabilities are the core of InfoBIM. They define the actions that can be performed on IFC models. When you execute a capability, InfoBIM will:
- Check whether the capability is available in the current environment.
- Execute the capability with the provided parameters.
- Return the execution results.
For this reason, only capabilities whose required parameters are satisfied are shown in the runtime menu. When you run:
infobim run
Interactive mode (terminal menu) shows a UI to select an available capability. Most InfoBIM capabilities require an IFC file path, so you will usually pass --ifc-path when running by ID.
3. List available capabilities
Lists all capabilities discovered in the current environment (after initialization and checks).
infobim list
4. System Health & Maintenance
InfoBIM includes self-diagnostic tools to ensure your environment is correctly configured.
Run System Check: Verifies if all dependencies (Python, Git, Venv, Docker) and project structures are in place.
./infobim check
Auto-Repair: If a check fails, you can try the repair mode, which attempts to fix common issues automatically (e.g., recreating venv, installing missing requirements).
./infobim check --repair
🧩 IFC Capabilities
A Capability is the atomic unit of work in InfoBIM. It wraps your Python scripts with:
- Metadata: Name, version, description.
- Schema: Formal definition of Inputs (arguments) and Outputs (return data).
- Docs: Embedded documentation for both humans and LLMs.
Thus, InfoBIM IFC acts as a lightweight runtime layer for BIM automation, turning scripts into discoverable and repeatable capabilities.
- Runtime: Handles the environment (Python, Docker, IFCOpenShell).
- Registry: Discovers and registers available Capabilities.
- Interfaces:
- CLI: Direct execution (
./infobim run --id <capability_id> --ifc-path ./path/to/model.ifc). - TUI: Interactive Text User Interface (
./infobim run --ifc-path ./path/to/model.ifc).
- CLI: Direct execution (
Examples:
| ID | Name | Description | Key parameters |
|---|---|---|---|
org.infobim.domain.ifc.capability.list_elements |
List IFC Elements | Lists IFC elements by IFC class | --ifc-path, --ifc-class, --start, --limit |
org.infobim.domain.ifc.capability.list_property_sets |
List IFC Property Sets | Lists Psets and properties of an element | --ifc-path, --global-id |
org.infobim.domain.ifc.capability.inspect_element |
Inspect IFC Element | Inspects attributes and properties of an element | --ifc-path, --global-id |
org.infobim.domain.ifc.capability.list_buildings |
List IFC Buildings | Lists IfcBuildings and their Storeys | --ifc-path |
infobim run --id org.infobim.domain.ifc.capability.list_buildings --ifc-path ./path/to/model.ifc
infobim run --id org.infobim.domain.ifc.capability.list_property_sets --ifc-path ./path/to/model.ifc --global-id '2T$yW1JQv9FQ0kqP8m9qXb'
infobim run --id org.infobim.domain.ifc.capability.inspect_element --ifc-path ./path/to/model.ifc --global-id '2T$yW1JQv9FQ0kqP8m9qXb'
🤖 For AI Agents
InfoBIM is Agent-First.
- Discovery:
infobim list --jsonprovides the tool definitions (compatible with OpenAI/Claude function calling). - Deterministic Execution: Agents don't "guess" geometry; they call Capabilities that return precise data.
- Structured Output: All capabilities return strict JSON data, making it easy for LLMs to reason about the results.
📄 License
This project is part of the InfoBIM Community. Licensed under Apache 2.0.
Metadata
Release files for infobim 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| infobim-0.3.0.tar.gz | 518.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| infobim-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.1 MB
Release files / infobim-0.3.0.tar.gz
| Download URL | infobim-0.3.0.tar.gz |
|---|---|
| Size | 518.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d3865bba5c7b8aa2193ed506b71ae15a939fe8c746ab1c1b7ad9f25f371ffa4f
|
|
BLAKE2b-256 checksum How to use checksums |
d446957bf19b72367a9a9eb9c264dfeffbb273fed5b48cc73412572aed5c9834
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 29, 2026.
Transparency logRelease files / infobim-0.3.0-py3-none-any.whl
| Download URL | infobim-0.3.0-py3-none-any.whl |
|---|---|
| Size | 559.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1a6f6643cc31fc7fea9f33e9bdf1db1eeba3fcdccce621ed914dd6661918ecdc
|
|
BLAKE2b-256 checksum How to use checksums |
d68d461c0bd99cca672456630ecf8fa1288490de1b99b8f14ac5db863bec73dc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 29, 2026.
Transparency log