Installing Software Remotely with Ohlala SmartOps in Microsoft Teams

Real example of installing software on Windows EC2 instances using Ohlala SmartOps Microsoft Teams AI bot. Complete walkthrough showing VS Code installation through natural language, approval cards, intelligent error handling, and AWS SSM automation.

5 min read
Microsoft Teams AI AWS

Installing Software Remotely with Ohlala SmartOps

Traditional approach to installing software on remote Windows servers:

  1. RDP into the server
  2. Download the installer manually
  3. Click through the installation wizard
  4. Verify it installed correctly
  5. Document what you did

With Ohlala SmartOps in Microsoft Teams:

Type: “install vscode on the instance with tag name Windows2022”

That’s it. The AI bot handles everything else - finding the instance, generating the installation script, showing you what it will do, executing remotely via AWS SSM, and reporting back with complete details.

This article shows a real example with actual screenshots from Ohlala SmartOps, including an error that occurred and how the AI automatically fixed it.

TLDR

What happened:

  • Sent “install vscode on the instance with tag name Windows2022” in Microsoft Teams
  • Ohlala SmartOps generated PowerShell installation script and showed approval card
  • First execution failed with PowerShell syntax error
  • AI analyzed the error, identified the issue, generated corrected script
  • Retry succeeded - VS Code 1.105.1 installed and verified

Key insight: AI-generated code can fail, but with proper error feedback loops, the AI can diagnose and fix its own mistakes automatically. The approval workflow ensures humans stay in control while the AI handles the execution details.

Time: ~6 minutes total (including the error and retry)

The Workflow

I sent this message in Microsoft Teams:

install vscode on the instance with tag name Windows2022

Ohlala SmartOps immediately queried EC2 for instances with that tag, found i-05e85c61817d90df2, and generated a PowerShell installation script.

Approval Card

Instead of blindly executing, Ohlala SmartOps presented an approval card showing exactly what it would do:

Ohlala SmartOps approval card in Microsoft Teams Ohlala SmartOps approval card showing the SSM command and PowerShell script

The card includes:

  • Operation type (Send Command via SSM)
  • Target instance ID
  • Complete PowerShell script that will execute
  • 15-minute approval expiration

Full transparency before any action.

Installation Plan

Ohlala SmartOps explained what the installation would include:

Installation details from Ohlala SmartOps Ohlala SmartOps showing exactly what VS Code installation includes

  • Latest stable VS Code from Microsoft
  • System PATH integration
  • Context menu integration (right-click files/folders)
  • File associations
  • Automatic cleanup

And the complete installation process:

Full PowerShell script in Ohlala SmartOps approval card Complete PowerShell script visible in Ohlala SmartOps

The script checks admin privileges, tests network connectivity, downloads from Microsoft’s CDN, installs silently, verifies the installation, and cleans up temporary files.

First Attempt - Error

I clicked Confirm, and Ohlala SmartOps sent the command via AWS Systems Manager:

Command confirmed by Ohlala SmartOps Ohlala SmartOps confirms the SSM command was sent

A minute later:

Command failed - error detected by Ohlala SmartOps Ohlala SmartOps showing the PowerShell parsing error

The installation failed with a PowerShell syntax error: The string is missing the terminator: ".

AI Error Analysis

This is where Ohlala SmartOps gets interesting. Instead of just reporting the error, it analyzed what went wrong:

Ohlala SmartOps error analysis Ohlala SmartOps providing complete root cause analysis

The analysis identified:

  • Root cause: PowerShell string termination error at line 112
  • Impact: No installation attempted, no files downloaded, no system changes
  • Problem: Quote character not properly escaped in the output message section
  • Recommendation: Fix the script and retry

Ohlala SmartOps explained the issue in plain language and offered to retry with a corrected script.

Automatic Fix and Retry

Ohlala SmartOps generated a new approval card with the fixed script:

Second approval card with fixed script from Ohlala SmartOps Ohlala SmartOps retry approval card with corrected PowerShell

And explained what was fixed:

Script improvements explained by Ohlala SmartOps Ohlala SmartOps showing what was corrected in the new script

Changes made:

  1. Removed all semicolons - each command on its own line
  2. Added comprehensive error handling
  3. Added verification steps
  4. Added detailed logging
  5. Added prerequisite checks
  6. Added cleanup step

I approved the retry:

Second confirmation in Ohlala SmartOps Confirming the retry command in Ohlala SmartOps

Successful Installation

Ohlala SmartOps provided real-time status updates:

Installation executing - Ohlala SmartOps status Ohlala SmartOps showing installation progress

The status update showed:

  • Prerequisites check: ✓ Complete
  • Network test: ✓ Complete
  • Download: In progress
  • Installation: Pending
  • Verification: Pending
  • Cleanup: Pending

Expected timeline: 3-5 minutes

Complete Success Report

A few minutes later, Ohlala SmartOps delivered a comprehensive success report:

VS Code installation success report from Ohlala SmartOps Complete installation analysis from Ohlala SmartOps

The report included:

  • Success rate: 100% (1/1 instances)
  • Version installed: VS Code 1.105.1 (latest stable)
  • Installation path: C:\Program Files\Microsoft VS Code\Code.exe
  • Download size: 115.5 MB
  • Installation type: System-wide for all users

Plus verification that all steps completed successfully:

  • Prerequisites check ✅
  • Network validation ✅
  • Download phase ✅
  • Silent installation ✅
  • Post-install verification ✅
  • Cleanup ✅

The code command is now available system-wide.

Key Takeaways

AI can fix itself with the right feedback loop

The first script had a PowerShell syntax error. Traditional automation would have stopped there - you’d need to debug the script, find the error, fix it, and re-run manually.

With the AI feedback loop:

  1. Script executes and fails
  2. Error message gets returned to the AI
  3. AI analyzes the error (PowerShell parser rejection, line 112)
  4. AI understands what went wrong (quote escaping issue)
  5. AI generates corrected version
  6. User approves retry
  7. Script succeeds

This pattern works because:

  • Error messages are structured - PowerShell provides clear error output
  • AI has context - Remembers the original script it generated
  • Human stays in control - Approval required before retry
  • Feedback is immediate - No delay between error and correction

The AI didn’t just fix the syntax error - it improved the entire script with better error handling and verification steps.

What this means for automation

Traditional automation: Write perfect scripts or debug endlessly.

AI-powered automation: Generate good-enough scripts, let the AI iterate based on execution results.

You’re not eliminating errors - you’re building systems that can recover from them automatically.

Ideas to experiment with

If you have access to Ohlala SmartOps or similar tools, try:

Start simple:

  • “Install Python on dev-server-01”
  • “Check disk space on all Windows servers”
  • “Show me installed software on instance i-abc123”

Let it fail:

  • Ask for installations that might have prerequisites
  • Request operations on instances that are stopped
  • Try ambiguous requests to see how it handles clarification

Test the feedback loop:

  • Intentionally request operations that might fail first try
  • See how the AI handles different types of errors
  • Notice what it improves when it generates corrected scripts

Push the boundaries:

  • “Install VS Code and configure it with these extensions: Python, Docker, GitLens”
  • “Update all outdated software on this instance”
  • “Install Node.js version 18 and configure it for production use”

The more you experiment, the better you’ll understand where AI automation works well and where it needs human intervention.

The Technology Stack

This workflow combines several AWS and Microsoft services:

Amazon Bedrock with Claude - Handles natural language understanding, generates PowerShell/Bash scripts, analyzes error messages, and suggests fixes

AWS Systems Manager (SSM) - Executes commands remotely on EC2 instances without requiring RDP or SSH access

Microsoft Teams Bot Framework - Provides the chat interface and approval card system

Ohlala SmartOps - Orchestrates these components and maintains conversation context

The approval workflow architecture is detailed here: Teaching an AI Agent to Ask for Permission

Getting Started

Ohlala SmartOps provides this capability out-of-the-box:

  • AI-powered operations in Microsoft Teams
  • Pre-built approval workflows
  • AWS EC2 and SSM integration
  • Support for Windows and Linux
  • $199/month flat rate

Start on AWS Marketplace →

Questions?


Related Articles:

Ready to Automate Your EC2 Management?

Get 24/7 AI-powered infrastructure assistance in Microsoft Teams. SmartOps helps your team manage, monitor, and optimize EC2 instances for just $199/month.