Skip to main content

InfoBIM

Project description

InfoBIM IFC

  _____        __      ____ _____ __  __
 |_   _|      / _|    |  _ \_   _|  \/  |
   | |  _ __ | |_ ___ | |_) || | | \  / |
   | | | '_ \|  _/ _ \|  _ < | | | |\/| |
  _| |_| | | | || (_) | |_) || |_| |  | |
 |_____|_| |_|_| \___/|____/_____|_|  |_|

Python License Status

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

Report Example

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:

File Search

Once scanned, the files are ready to be processed by other capabilities:

File List

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:

  1. Metadata: Name, version, description.
  2. Schema: Formal definition of Inputs (arguments) and Outputs (return data).
  3. 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.

🤖 For AI Agents

InfoBIM is Agent-First.

  • Discovery: run --json provides 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.

Proudly developed in Brazil 🇧🇷, so far

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

infobim-0.1.2.tar.gz (26.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

infobim-0.1.2-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

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

Hashes for infobim-0.1.2.tar.gz
Algorithm Hash digest
SHA256 fe3315ecb538d63b40234978c1de24883a88559037d901d984d8616a36ebdf70
MD5 9ab4db28f62ee8c9c597328d7cdb171a
BLAKE2b-256 aafbfd08ffdbcb54b400be46ff84810aae571f39bbb029d213f07aa86b40c661

See more details on using hashes here.

Provenance

The following attestation bundles were made for infobim-0.1.2.tar.gz:

Publisher: pypi-publish.yml on InfoBIM-Community/infobim-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for infobim-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 43d3cde85aea80736776f4b1c99959195372856a64fde2eb7342864357f7b85a
MD5 f0401c64bba09d30b2c52fa71078b73a
BLAKE2b-256 05e249bd695cd79365ec8d30f7bdb7061dca4cbf4a7869308261afe252f83ace

See more details on using hashes here.

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

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page