InfoBIM
Project description
InfoBIM IFC
_____ __ ____ _____ __ __ |_ _| / _| | _ \_ _| \/ | | | _ __ | |_ ___ | |_) || | | \ / | | | | '_ \| _/ _ \| _ < | | | |\/| | _| |_| | | | || (_) | |_) || |_| | | | |_____|_| |_|_| \___/|____/_____|_| |_|
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.
🚀 Quick Start
1. Install
# 1. Install via pip
pip install infobim
# 2. Verify installation
infobim --help
# 3. (Optional) Run a command
infobim run --ifc-path ./data/model.ifc --global-id 1VB9G8xuL3MArqCPoqhS3L
2. Run a Capability
Execute a specific task directly without opening the full UI:
# List all sewage pipes (validating against NBR 8160)
infobim run --id org.infobim.domain.ifc.capability.inspect_element --ifc-path ./data/model.ifc --global-id 1VB9G8xuL3MArqCPoqhS3L
3. Agent Discovery (New!)
Are you an LLM or building an Agent? Get the full machine-readable catalog of available tools:
infobim run --json
4. File Discovery & Scanning
Automatically scan and index IFC files located in the data/incoming directory. This is the first step to bring your BIM models into the InfoBIM environment.
./infobim ifc scan
The system will search for .ifc files and display them in the terminal:
Once scanned, the files are ready to be processed by other capabilities:
5. 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
🧩 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.
Included Capabilities
| ID | Description |
|---|---|
org.infobim.domain.ifc.capability.list_elements |
Lists IFC elements with basic properties (GlobalId, Name, Type). |
org.infobim.domain.ifc.capability.list_property_sets |
Lists all Property Sets and properties for a specific element. |
org.infobim.domain.ifc.capability.list_buildings |
Lists Buildings and their Storeys with elevations. |
org.infobim.domain.ifc.capability.inspect_element |
Detailed inspection of an element, including attributes, hierarchy and property sets. |
🏗️ Architecture
InfoBIM is a modular CLI framework for BIM data processing.
- Core: Provides the execution runtime and capability management.
- Modules: Extend functionality (e.g., IFC processing, validation).
- Interfaces:
- CLI: Direct execution (
infobim run ...). - JSON Output: Machine-readable output for integration with other tools/agents.
- CLI: Direct execution (
🤖 For AI Agents
InfoBIM is Agent-First.
- Discovery:
run --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.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file infobim-0.1.2.tar.gz.
File metadata
- Download URL: infobim-0.1.2.tar.gz
- Upload date:
- Size: 26.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe3315ecb538d63b40234978c1de24883a88559037d901d984d8616a36ebdf70
|
|
| MD5 |
9ab4db28f62ee8c9c597328d7cdb171a
|
|
| BLAKE2b-256 |
aafbfd08ffdbcb54b400be46ff84810aae571f39bbb029d213f07aa86b40c661
|
Provenance
The following attestation bundles were made for infobim-0.1.2.tar.gz:
Publisher:
pypi-publish.yml on InfoBIM-Community/infobim-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
infobim-0.1.2.tar.gz -
Subject digest:
fe3315ecb538d63b40234978c1de24883a88559037d901d984d8616a36ebdf70 - Sigstore transparency entry: 1155035604
- Sigstore integration time:
-
Permalink:
InfoBIM-Community/infobim-core@baa48bcc2d071a6889948b7fd89a6a9bb75e2b69 -
Branch / Tag:
refs/tags/0.1.2 - Owner: https://github.com/InfoBIM-Community
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@baa48bcc2d071a6889948b7fd89a6a9bb75e2b69 -
Trigger Event:
release
-
Statement type:
File details
Details for the file infobim-0.1.2-py3-none-any.whl.
File metadata
- Download URL: infobim-0.1.2-py3-none-any.whl
- Upload date:
- Size: 33.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
43d3cde85aea80736776f4b1c99959195372856a64fde2eb7342864357f7b85a
|
|
| MD5 |
f0401c64bba09d30b2c52fa71078b73a
|
|
| BLAKE2b-256 |
05e249bd695cd79365ec8d30f7bdb7061dca4cbf4a7869308261afe252f83ace
|
Provenance
The following attestation bundles were made for infobim-0.1.2-py3-none-any.whl:
Publisher:
pypi-publish.yml on InfoBIM-Community/infobim-core
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
infobim-0.1.2-py3-none-any.whl -
Subject digest:
43d3cde85aea80736776f4b1c99959195372856a64fde2eb7342864357f7b85a - Sigstore transparency entry: 1155035607
- Sigstore integration time:
-
Permalink:
InfoBIM-Community/infobim-core@baa48bcc2d071a6889948b7fd89a6a9bb75e2b69 -
Branch / Tag:
refs/tags/0.1.2 - Owner: https://github.com/InfoBIM-Community
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@baa48bcc2d071a6889948b7fd89a6a9bb75e2b69 -
Trigger Event:
release
-
Statement type: