GoCalc.AI for ETABS Home
User Tutorial

GoCalc.AI for ETABS

An AI-powered assistant for CSI ETABS (v20 or above) that lets you build, modify, and analyse structural models through plain-English commands — create grids, run analysis, extract reactions, and more.

OpenAI · Claude · Gemini · Ollama 24+ Built-in ETABS Actions Direct .NET / COM Connection Multimodal: Text, Images, Voice 9 Colour Themes

1 Launch & Connect

GoCalc.AI for ETABS connects directly to a running ETABS instance (v20 or above) via .NET interop — no separate plugin or server installation is required. You just need ETABS open with a model loaded.

How the Connection Works

GoCalc.AI Chat
ETABSv1.dll (.NET)
ETABS COM API
Live Model

The app loads ETABSv1.dll from its default install location (e.g. C:\Program Files\Computers and Structures\ETABS 23\ETABSv1.dll) and attaches to the running ETABS process automatically. The path varies by version — use the ETABS_DLL_PATH environment variable to override it.

Step-by-Step Launch

  1. Open ETABS (v20 or above) and load a model GoCalc.AI requires ETABS v20 or above to be running with a project open. You can use an existing model or start a new blank file in ETABS first.
  2. Launch GoCalc_AI_ETABS.exe Double-click GoCalc_AI_ETABS.exe in the dist folder. No Python installation is required — it is a self-contained executable. If running from source, use start.bat or python app.py instead.
  3. Add your API key to aimodel.json Open aimodel.json beside the exe and paste in at least one provider key — for example "ANTHROPIC_API_KEY": "sk-ant-..." or "OPENAI_API_KEY": "sk-...". The app will not be able to send messages until a valid key is present.
  4. Register your license Click the License button in the toolbar and enter your key. Contact us to obtain your license key.
  5. Verify the connection The top bar shows "Connected to ETABS" in green when the link is established. If it says "ETABS offline", make sure ETABS is open with a model loaded, then restart the app.
  6. Type your first command and press Enter Try: "List all stories in this model" — the AI will query ETABS and reply with a formatted table.
⚠️

API key required. GoCalc.AI needs at least one AI provider API key to function. Open aimodel.json beside the exe and fill in your key before sending any messages. Supported providers: OpenAI, Anthropic (Claude), Google (Gemini), and Ollama.

⚠️

ETABS v20 or above required. The app connects via ETABSv1.dll. If your DLL is in a non-default location, set the environment variable ETABS_DLL_PATH to the full path before launching GoCalc.AI.

ℹ️

Model locked after analysis? ETABS automatically locks a model once analysis is run. Ask GoCalc.AI to "unlock the model" before making further geometry changes — it will call the unlock_model action for you.

2 Interface Overview

The GoCalc.AI window is divided into four main areas.

🗂

Left Sidebar — History

Saved conversations listed by title and date. Click any entry to reload it. Click × to permanently delete a conversation.

💬

Chat Area

Your messages appear on the right (blue), AI replies on the left (white). ETABS actions executed are shown in a green log below each AI response.

🖼

File Preview Strip

Thumbnails of attached images and file badges appear here before you send. Click ✕ to remove any individual file.

⌨️

Composer

Type your message here. Enter sends, Shift+Enter inserts a new line.

🛠

Toolbar

Buttons for attaching files, switching AI models, picking themes, managing your license, and more.

🟢

Status Bar

Shows real-time connection state: Connected to ETABS (green) or an error message when ETABS is not reachable.

Toolbar Button Reference

ButtonWhat it does
📎 Attach filesOpen a file picker to select images, PDFs, or text/data files to include in your next message.
🗑 Clear filesRemove all pending file attachments at once.
➕ New conversationStart a fresh chat. The current conversation is auto-saved to the sidebar.
⚡ ActionsBrowse, test, and manage all available ETABS actions.
🔑 LicenseEnter or update your GoCalc.AI license key.
ℹ AboutView the version, disclaimer, and support contact.
🎨 StyleOpen the theme picker to choose from 9 colour themes.
🔌 Test API KeysVerify that your configured AI provider credentials are all working.
📌 Always on topKeep the GoCalc.AI window floating above ETABS.
Model dropdownSwitch between AI providers and models without restarting the app.

3 Chatting with the AI

GoCalc.AI understands natural language. Describe what you want — the AI decides which ETABS actions to call, executes them, and replies in plain English.

Example Conversations

List all the stories in this model
Let me retrieve the story data from ETABS now.
• list_all_stories
Your model has 5 stories: Base (0.0m), Story1 (3.5m), Story2 (7.0m), Story3 (10.5m), Story4 (14.0m). All stories have a height of 3.5m.
Create a 3×3 column grid — 5m spacing, 3m storey height, 3 storeys, section COL_400x400
Creating a 3×3 column grid at 5m spacing across 3 storeys…
• create_column_grid
Done! 48 columns have been placed (4×4 nodes × 3 storeys) using section COL_400x400.
Run the structural analysis
Running the analysis now — this may take a moment.
• run_analysis
Analysis completed successfully. The model is now locked. Let me know if you'd like to review the results or extract reactions.
Show me the base reactions for the Dead load case
Extracting base reaction forces for the Dead load case…
• get_base_reactions
Base reactions for Dead load case:
Total Fz = −2,450 kN  |  Mz = 0 kN·m
All support points are listed with their individual Fx, Fy, Fz, Mx, My, Mz values.

What Happens When You Send a Message

  1. AI receives your message Your text (and any attached files or images) is sent to the selected AI provider.
  2. "Thinking…" appears The AI processes your request and decides which ETABS action(s) to call.
  3. Actions execute in ETABS Actions run via the .NET COM interface — changes appear in your ETABS model in real time.
  4. Tool log is displayed Every action called appears in the green log below the AI reply (e.g., • create_column_grid).
  5. AI replies in plain English The AI summarises what was done, including counts, values, errors, or warnings.
💡

Be specific about section names. ETABS actions assign sections by name (e.g., COL_400x400, BEAM_300x500). Ask "List all frame sections" first to see the exact names available in your model before placing elements.

4 ETABS Actions

GoCalc.AI includes 24 built-in actions that directly control your ETABS model. The AI calls these automatically — you never need to type action names yourself.

Model Management

create_new_model save_model unlock_model refresh_view
ActionWhat it doesExample prompt
create_new_modelCreates a blank ETABS model. Specify the unit system (e.g., kN-m)."Create a new blank model in kN-m units."
save_modelSaves the current model to a specified file path. Creates parent folders if needed."Save the model to C:\Projects\MyBuilding.edb"
unlock_modelUnlocks a model that was locked after running analysis so you can make further edits."Unlock the model so I can make changes."
refresh_viewRefreshes the ETABS 3D viewport to show the latest geometry changes."Refresh the view."

Geometry Creation

create_column_grid create_beam_grid create_single_beam select_beams

Create Column Grid

Places vertical columns on a regular X-Y grid across multiple storeys. Specify X spacing, Y spacing, number of bays, storey height, number of storeys, and section name.
"Create a 4×3 column grid at 5m spacing, 3m storey height, 4 storeys, section COL_400x400."

Create Beam Grid

Places horizontal beams in both X and Y directions at a single elevation. Specify X spacing, Y spacing, number of bays, elevation, and section name.
"Add beams at elevation 3m on a 4×3 grid, 5m spacing, section BEAM_300x500."

Create Single Beam

Places one beam between two 3D points (X, Y, Z coordinates).
"Create a beam from (0, 0, 3) to (5, 0, 3) using section BEAM_250x500."

Select Beams

Selects one or more beams in ETABS by name. Use ["*"] to select all beams.
"Select all beams in the model."

Analysis

run_analysis

Run Analysis

Executes the structural solver for all defined load cases. The model locks automatically after analysis completes. Results are then available for extraction.
"Run the structural analysis."

⚠️

After running analysis, the model becomes locked. You cannot modify geometry until you unlock it. Ask GoCalc.AI to "unlock the model" before making any further changes.

Information & Queries

list_all_stories list_all_frame_sections list_all_load_cases list_point_supports get_base_reactions get_maximum_story_height
ActionWhat it returnsExample prompt
list_all_storiesAll stories with names, elevations, heights, and whether each is a master storey."List all stories in the model."
list_all_frame_sectionsAll defined beam and column section names available in the model."What frame sections are defined?"
list_all_load_casesAll load cases with their names and types (Dead, Live, Wind, Seismic, etc.)."List all load cases."
list_point_supportsAll support points with their restraint conditions (6 DOF: U1–U3 translation, R1–R3 rotation) and support type."Show me all support points and their restraints."
get_base_reactionsReaction forces (Fx, Fy, Fz, Mx, My, Mz) at each support for a specified load case."Get the base reactions for the Dead load case."
get_maximum_story_heightThe tallest storey name and its height value."Which storey is the tallest and what is its height?"

Counting

count_total_frames count_total_areas count_total_points count_selected_columns

Count Total Frames

Returns the total number of beam and column frame elements in the model.
"How many frame elements are in the model?"

Count Total Areas

Returns the total number of area/shell elements (slabs, walls, ramps).
"How many area elements are defined?"

Count Total Points

Returns the total number of joints/nodes in the model.
"How many joints does the model have?"

Count Columns

Returns the count of column elements (vertical frames where the vertical component is dominant).
"How many columns are in the model?"

Data Export

export_load_cases_csv write_csv_file

Export Load Cases to CSV

Exports all load case names to a CSV file saved on your Desktop as ETABS_LoadCases.csv.
"Export the load cases to a CSV file."

Write CSV File

Writes any 2D data (rows and columns) to a named CSV file on your Desktop. The AI generates the data content.
"Save the story data to a CSV called StoryTable.csv."

🔧

Custom Actions: If a built-in action doesn't cover your need, ask the AI to create one. For example: "Create an action that reads storey drifts from the database table." The AI writes and installs the action automatically — no restart required. Custom actions appear in the Actions Browser immediately.

Actions Browser

Click the Actions button in the toolbar to open the Actions Browser:

FeatureHow to use it
Search / FilterType in the search box to filter actions by name in real time.
Test RunSelect an action and click Test Run to execute it with its default test arguments — useful for verifying a new custom action.
Double-clickDouble-click any action to immediately test-run it.
Open (.py)Open the action's Python source file in your default editor.
DeleteRemove custom actions you no longer need. Built-in actions cannot be deleted.

5 Full Analysis Workflow

A typical GoCalc.AI for ETABS session follows this sequence. You can do all of this through plain-English conversation — no need to switch between menus in ETABS.

1
Create or open a model Start fresh with a blank model in your preferred unit system, or open an existing .edb file in ETABS first.
create_new_model
2
Check available sections List the frame sections already defined in the model so you know which names to reference when placing elements.
list_all_frame_sections
3
Create the column grid Place structural columns on a regular X-Y grid across the specified number of storeys.
create_column_grid
4
Add beams at each floor level Place beams in both directions at each floor elevation to form the structural frame.
create_beam_grid
5
Verify the geometry Count elements and list stories to confirm the structure was created as expected.
count_total_frames / list_all_stories
6
Check supports and load cases Review which support conditions and load cases are defined before running analysis.
list_point_supports / list_all_load_cases
7
Run the structural analysis Execute the solver. The model locks automatically when analysis is complete.
run_analysis
8
Extract base reactions Review the reaction forces at all support points for a specified load case.
get_base_reactions
9
Export results Write load case data or any other table to a CSV file on your Desktop.
export_load_cases_csv / write_csv_file
10
Save the model Save the ETABS file to a specified path. Parent directories are created automatically if they don't exist.
save_model

Sample Conversation for a Complete Model

# Step 1 — Create model "Create a new ETABS model in kN-m units." # Step 2 — Check sections "What frame sections are defined in this model?" # Step 3 — Place columns "Create a 3×3 column grid: 5m X spacing, 5m Y spacing, 3m storey height, 4 storeys, section COL_400x400." # Step 4 — Add beams at each level "Add beams at elevation 3m, 6m, 9m and 12m on a 3×3 grid, 5m spacing, section BEAM_300x500." # Step 5 — Verify "How many frame elements are in the model?" "List all stories." # Step 6 — Check supports & loads "Show me all support points and their restraint conditions." "List all load cases." # Step 7 — Analyse "Run the structural analysis." # Step 8 — Results "Get the base reactions for the Dead load case." # Step 9 — Export & save "Export the load cases to a CSV file." "Save the model to C:\Projects\Building_A.edb"

6 Files & Voice Input

GoCalc.AI is multimodal — you can send images, documents, and spoken commands alongside your text messages.

Attaching Images

📋

Paste from Clipboard

Press Ctrl+V anywhere in the chat to paste a screenshot directly. Perfect for sharing your current ETABS 3D view or a result plot without saving to disk.

📁

Attach Files

Click the attach button and browse for PNG, JPG, JPEG, GIF, BMP, or WebP images. Multiple files can be selected at once.

Remove Before Sending

Each attachment shows a thumbnail with a ✕ button. Click it to remove a file before you send.

💡

Take a screenshot of your ETABS model or a deformed shape plot, paste it with Ctrl+V, and ask "Does this deformed shape look correct for a lateral load?" — the AI will analyse the image and give feedback.

Supported Document Types

File typeHow the AI uses it
PDFReads the text content — useful for attaching structural specifications, design codes, or project briefs.
CSVReads the rows of data — useful for load tables, coordinate lists, or section schedules you want the AI to interpret.
TXT / MDReads the content as plain text.
JSON / PYReads as structured data or code.

Voice Input

  1. Click the 🎤 microphone button in the composer The button turns red and shows a stop icon (⏹). Speak your command clearly.
  2. Click ⏹ to stop recording Your speech is sent to OpenAI Whisper for transcription.
  3. Review and send The transcribed text appears in the message box. Edit if needed, then press Enter.
⚠️

Voice input uses OpenAI Whisper for transcription and requires the sounddevice and numpy packages. These are included in requirements.txt and installed automatically by start.bat. An OpenAI API key must also be configured, even if you are using Claude or Gemini as your main AI model.

7 Conversation History

GoCalc.AI automatically saves every conversation so you can pick up where you left off or review past sessions.

💾

Auto-Saved

Every message exchange is saved after each reply. No manual saving is required.

🔄

Reload Any Conversation

Click any conversation in the left sidebar to restore the full message history and continue from that point.

Start New

Click New Conversation in the toolbar. The current chat stays saved in the sidebar.

🗑

Delete

Click the × button next to any sidebar entry to permanently remove that conversation.

ℹ️

Conversations are stored locally in conversation_history.json in the GoCalc_AI_ETABS application folder. The sidebar shows each conversation's title (from your first message) and the date/time it was created. The 10 most recent conversations are displayed.

8 AI Models

GoCalc.AI for ETABS supports four AI providers. Switch between them at any time using the model dropdown in the toolbar.

🟢

OpenAI (ChatGPT)

GPT-4.1, GPT-4o, o1, o3, o4-mini and more. Excellent all-around for ETABS tasks and required for voice transcription (Whisper).

🟣

Anthropic (Claude)

Claude Opus, Sonnet, and Haiku. Excellent for detailed structural reasoning and multi-step analysis conversations.

🔵

Google (Gemini)

Gemini Pro and Flash models. Strong multimodal support — useful when sending ETABS screenshots for analysis.

Ollama (Extended)

Kimi, Qwen3, DeepSeek, Mistral, Gemma, and 25+ more models for specialised or offline use cases.

💡

Not sure which model to use? Start with the default (GPT-4o or Claude Sonnet). Switch to a faster model like gpt-4.1-mini or claude-haiku for simple queries like listing stories or counting elements to save time and cost.

9 Themes

Click the Style button in the toolbar to pick a colour theme. Your selection is saved automatically and applied every time you open GoCalc.AI.

Deep Purple
Ocean Dark
Forest Dark
Midnight Red
Slate Gray
Warm Dark
Light Cloud
Light Sage
Light Warm

The active theme is saved to %PROGRAMDATA%\GoCalcAI_Etabs\theme.json and restored on next launch. All dialogs (License, About, Actions) inherit the active theme.

10 License Registration

GoCalc.AI requires a valid license to operate. Contact us to obtain your license key.

  1. Contact us to get your license key Reach out to us via the About dialog or our website to request a license key.
  2. Click the License button in the toolbar The License Registration dialog opens.
  3. Enter your license key Paste or type your license key into the license key field.
  4. Click Register The app validates your key online and activates your license. A confirmation email is sent to the address associated with your license.
  5. Confirmation appears The dialog confirms successful registration. The app is now fully activated.
ℹ️

The license is validated automatically each time you open GoCalc.AI. You can re-register a new key at any time without reinstalling the app.

⚠️

Your license is personal — please do not share it. It can be used on multiple computers, but only one computer at a time. To switch machines, close the app on the current computer first, then open it on the other. After a license is released, please allow 8 hours before activating it on a different computer.

11 Keyboard Shortcuts

ShortcutAction
EnterSend message
Shift + EnterInsert a new line in the message
Ctrl + VPaste image from clipboard into attachments
Click 🎤 then ⏹Start / stop voice recording
Double-click an actionTest-run the action in the Actions Browser
Click × in sidebarDelete a saved conversation
Ctrl + Z (in ETABS)Undo the last AI-executed change to the ETABS model

12 Tips & Best Practices

📐

Check sections before placing

Run "List all frame sections" before creating columns or beams. ETABS actions assign sections by exact name — if the name doesn't exist in the model, the action will fail.

🔓

Unlock after analysis

After running analysis the model locks automatically. Ask "Unlock the model" before making any geometry edits or you will get an error.

📸

Use screenshots for context

Paste an ETABS screenshot with Ctrl+V and ask questions about what's shown. The AI can read and analyse images of your model or result plots.

🔁

Build incrementally

Create columns first, then beams level by level, then supports, then load cases. Checking counts between steps catches problems early.

📌

Always on top

Enable "Always on top" so the chat window stays visible while you work in ETABS — no alt-tabbing required.

🔍

Query load cases before analysis

Use "List all load cases" before running analysis to confirm that Dead, Live, Wind, and other cases are properly defined in ETABS.

💾

Save frequently

Ask GoCalc.AI to "save the model" after major geometry changes and after analysis completes. ETABS doesn't auto-save.

🤖

Request custom actions

If no built-in action covers your need, ask: "Create an action that reads storey drifts from the ETABS results table." The AI writes and installs it instantly.

Example Prompts to Try

# Explore the model "List all stories in this model." "What frame sections are defined?" "List all load cases and their types." "Show me all support points and restraint conditions." "How many frame elements, area elements, and joints are in the model?" # Build geometry "Create a new ETABS model in kN-m units." "Create a 4×4 column grid: 5m spacing, 3.5m storey height, 5 storeys, section COL_400x400." "Add beams at elevation 3.5m on a 4×4 grid, 5m spacing, section BEAM_300x600." "Create a single beam from (0,0,7) to (5,0,7) using BEAM_250x500." # Analyse and review results "Run the structural analysis." "Get the base reactions for the Dead load case." "Which storey is the tallest?" # Export and save "Export the load cases to a CSV file." "Save the story table to StoryData.csv on my Desktop." "Save the model to C:\Projects\Office_Tower.edb" # Maintenance "Unlock the model so I can edit it." "Refresh the view."
💡

Undo is your safety net. Press Ctrl+Z in ETABS to undo any AI-generated change — it works exactly like a manual operation. Always save before running analysis as that action cannot be undone.

AI-generated changes are real. Every action GoCalc.AI calls modifies your live ETABS model immediately. Review the tool log after each message to confirm what was executed. If anything looks wrong, undo in ETABS before proceeding.

Web hosting by Somee.com