Windows Integration
Aartiq for Windows
Windows Integration
aartiq:// URL scheme handler for Windows 10/11. Source: src/lib/platform/WindowsIntegration.ts. Provides programmatic access to AI chat, web search, PDF generation, shell execution, system control, and Copilot integration.
Windows Shortcuts
aartiq:// URL scheme triggered from any Windows application. Source: src/lib/platform/WindowsIntegration.ts. Compatible with Power Automate, Task Scheduler, and other Windows automation tools.
URL Scheme
aartiq://Register the URL scheme in Windows Registry to enable deep linking from any application.
AI Chat
Send a message to the AI assistant for processing
aartiq://chatShow Example
aartiq://chat?message=Explain%20quantum%20computing&stream=trueSmart Search
Perform a web search with AI-powered results
aartiq://searchShow Example
aartiq://search?query=Windows%2012%20features&safe=trueCreate PDF
Generate a PDF document with customizable templates
aartiq://create-pdfShow Example
aartiq://create-pdf?content=Hello%20World&title=My%20Report&template=professionalNavigate
Open a URL in the Aartiq browser
aartiq://navigateShow Example
aartiq://navigate?url=https://github.com&newTab=trueRun Command
Execute a PowerShell or CMD command
aartiq://run-commandShow Example
aartiq://run-command?command=Get-Process&shell=powershell&confirm=trueSchedule Task
Schedule an automation task with cron expression
aartiq://scheduleShow Example
aartiq://schedule?task=Daily%20report&cron=0%208%20*%20*&action=pdfSet Volume
Adjust system volume level
aartiq://volumeShow Example
aartiq://volume?level=75&mute=falseOpen App
Launch a Windows application
aartiq://open-appShow Example
aartiq://open-app?appName=notepad&args=c:\temp\notes.txtScreenshot
Capture a screenshot of the screen or window
aartiq://screenshotShow Example
aartiq://screenshot?mode=region&save=trueAsk & Speak
Ask AI and get spoken audio response
aartiq://ask-aiShow Example
aartiq://ask-ai?prompt=What%20is%20the%20weather&speak=true&voice=DavidCopilot Query
Send query to Microsoft Copilot and get response
aartiq://copilotShow Example
aartiq://copilot?prompt=Help%20me%20write%20a%20function&mode=preciseOCR Scan
Perform OCR on screen region or image
aartiq://ocrShow Example
aartiq://ocr?mode=screen&lang=engPowerShell Usage
# Open Aartiq with chat message
Start-Process "aartiq://chat?message=Hello%20AI"
# Search with Windows PowerShell
Start-Process "aartiq://search?query=powershell%20tutorials"
# Create PDF
$content = "My Report Content"
Start-Process "aartiq://create-pdf?content=$content&title=Report"
# Run command and get output via HTTP API
$response = Invoke-WebRequest -Uri "http://localhost:3000/api/commands" -Method POST -Body (@{
action = "chat"
message = "List running processes"
} | ConvertTo-Json) -ContentType "application/json"
Write-Host $response.ContentWindows Voice Control
Voice control via Windows Speech Recognition and PowerShell TTS. Source: src/lib/platform/WindowsIntegration.ts. Works when the browser window is minimized.
Speech Recognition
Windows Speech Recognition or PowerShell speech module to listen for voice commands and trigger Aartiq actions.
# PowerShell Speech Recognition Setup
# Install required module
Install-Module -Name SpeechRecognition -Force
# Import module
Import-Module SpeechRecognition
# Start continuous recognition
Start-SpeechRecognition -Language en-US -Callback {
param($text, $confidence)
Write-Host "Heard: $text (Confidence: $confidence%)"
# Map to Aartiq commands
if ($text -match "ask about (.+)") {
$query = $matches[1]
Start-Process "aartiq://chat?message=$query"
}
elseif ($text -match "search for (.+)") {
$query = $matches[1]
Start-Process "aartiq://search?query=$query"
}
elseif ($text -match "create pdf (.+)") {
$content = $matches[1]
Start-Process "aartiq://create-pdf?content=$content"
}
}Text-to-Speech
Aartiq speaks responses using Windows SAPI voices. Select from Microsoft David, Zira, or install additional voices.
# Text-to-Speech with Windows Voices
Add-Type -AssemblyName System.Speech
# Create synthesizer
$synth = New-Object System.Speech.Synthesis.SpeechSynthesizer
# Get available voices
$synth.GetInstalledVoices() | ForEach-Object {
Write-Host $_.VoiceInfo.Name
}
# Set voice (choose from available)
$synth.SelectVoice("Microsoft David")
# Speak text
$synth.Speak("Hello! I'm Aartiq. How can I help you today?")
# Speak with custom rate and volume
$synth.Rate = 0 # -10 to 10
$synth.Volume = 100 # 0 to 100
$synth.SpeakAsync("This is a voice response from Aartiq")
# Speak and wait for completion
$synth.Speak("Processing complete")Voice Command Phrases
"Hey Aartiq, ask about..."Send a question to AI
Example: Hey Aartiq, ask about machine learning
"Hey Aartiq, search for..."Perform a web search
Example: Hey Aartiq, search for Windows 12 release date
"Hey Aartiq, create PDF"Generate a PDF document
Example: Hey Aartiq, create PDF with my meeting notes
"Hey Aartiq, run command..."Execute a PowerShell command
Example: Hey Aartiq, run command Get-EventLog
"Hey Aartiq, schedule..."Schedule a task
Example: Hey Aartiq, schedule daily report at 8am
"Hey Aartiq, set volume to..."Adjust system volume
Example: Hey Aartiq, set volume to 50 percent
"Hey Aartiq, open..."Launch an application
Example: Hey Aartiq, open Visual Studio Code
"Hey Aartiq, take screenshot"Capture screen
Example: Hey Aartiq, take screenshot of active window
"Hey Aartiq, speak the answer"Voice chat with AI
Example: Hey Aartiq, what's the weather? Speak the answer
"Hey Aartiq, ask Copilot..."Query Microsoft Copilot
Example: Hey Aartiq, ask Copilot to explain async/await
"Hey Aartiq, OCR this"Extract text from screen
Example: Hey Aartiq, OCR this region
"Hey Aartiq, automate..."Create automation workflow
Example: Hey Aartiq, automate my backup process
Voice Activation Setup
"Hey Aartiq" wake word detection via VoiceAttack or Windows Speech Recognition.
# Windows Voice Activation via VoiceAttack
# 1. Download VoiceAttack (free/paid)
# 2. Create new profile
# 3. Add voice command: "Hey Aartiq"
# In the command action:
# - Execute: External Program
# - Path: "C:\Program Files\Aartiq\aartiq.exe"
# - Arguments: "aartiq://chat?message={Hwnd}"
# Alternative: Use Windows Speech Recognition
# Enable in Settings > Privacy & Security > Speech
# Create VBS script for wake word detection
Set speechRecognizer = CreateObject("SAPI.SpSharedRecognizer")
Set context = speechRecognizer.CreateRecoContext
Set grammar = context.CreateGrammar("AartiqCommands")
# Configure the grammar to listen for "Hey Aartiq"
grammar.DictationSetState 0
Do While True
' Wait for speech input
Sleep(100)
LoopMicrosoft Copilot Integration
Dual AI workflow between Aartiq and Microsoft Copilot. Source: src/lib/platform/WindowsIntegration.ts. Compare answers, chat with both AI assistants simultaneously, or use Copilot for code-specific tasks.
Open Copilot Panel
aartiq://copilot-panelOpen Microsoft Copilot sidebar
Ask Copilot
Ask a questionSend prompt to Copilot and get response
Code Assist
Copilot:explainExplain selected code with Copilot
Refactor Code
Copilot:refactorRefactor selected code
Generate Tests
Copilot:testsGenerate unit tests
Document Code
Copilot:docGenerate documentation
Chat with Both
aartiq://dual-chatChat with both Aartiq and Copilot
Compare Answers
aartiq://compareCompare Aartiq and Copilot responses
Dual AI Workflow
Keyboard Shortcuts
Ctrl + Shift + CCtrl + DCtrl + Shift + PPower Automate Integration
Microsoft Power Automate integration. Source: src/lib/platform/WindowsIntegration.ts. Trigger Aartiq actions via HTTP requests from Power Automate Desktop flows.
Web Scraping Flow
Trigger Aartiq to scrape websites on schedule.
Document Generation
Auto-generate reports, invoices, and documents from email attachments or SharePoint.
Scheduled Tasks
Daily briefings, weekly reports, monthly summaries via cron scheduling.
Power Automate Desktop Flow
Use Power Automate Desktop to create flows that interact with Aartiq via HTTP requests or launch URLs.
# Power Automate Desktop Flow Setup
# 1. Open Power Automate Desktop
# 2. Create new flow: "Aartiq_Automation"
# 3. Add HTTP request action to trigger Aartiq
# HTTP Request URL:
# http://localhost:3000/api/commands
# JSON Body:
# {
# "action": "chat",
# "message": "Your prompt here",
# "stream": false
# }
# Add "Run PowerShell Script" action:
# Use Invoke-RestMethod with the Aartiq API endpoint
$body = @{"action"="search","query"="latest news"} | ConvertTo-Json
$response = Invoke-RestMethod -Uri "http://localhost:3000/api/commands" -Method Post -ContentType "application/json" -Body $body
Write-Host $response.resultHTTP API Endpoints
Setup Guide
Register aartiq:// protocol handler on Windows. Source: src/lib/platform/WindowsIntegration.ts.
Register URL Scheme
Add aartiq:// to Windows Registry to enable deep linking from any application.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\aartiq]
@="URL:Aartiq Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\aartiq\DefaultIcon]
@="C:\\Program Files\\Aartiq\\aartiq.exe,0"
[HKEY_CLASSES_ROOT\aartiq\shell]
[HKEY_CLASSES_ROOT\aartiq\shell\open]
[HKEY_CLASSES_ROOT\aartiq\shell\open\command]
@="\"C:\\\\Program Files\\\\Aartiq\\\\aartiq.exe\" \"%1\""Enable Speech Recognition
Turn on Windows Speech Recognition for voice commands. Go to Settings > Privacy and Security > Speech and enable "Online Speech Recognition".
Configure Power Automate (Optional)
Download Power Automate Desktop from Microsoft Store and create flows that trigger Aartiq actions via HTTP requests.
Test Integration
Run these commands to verify everything is working.
# Test URL scheme
Start-Process "aartiq://chat?message=Hello"
# Test voice (requires microphone)
# Say "Hey Aartiq, ask about artificial intelligence"
# Test Power Automate
# Open Power Automate Desktop > Run your flowConfiguration Options
| Parameter | Type | Required | Description |
|---|---|---|---|
| voice.enabled | boolean | Optional | Enable voice control |
| voice.wakeWord | string | Optional | Custom wake word (default: Hey Aartiq) |
| voice.voice | string | Optional | TTS voice name |
| voice.rate | number | Optional | Speech rate (-10 to 10) |
| copilot.enabled | boolean | Optional | Enable Copilot integration |
| copilot.defaultMode | string | Optional | Default Copilot mode |
| automate.httpPort | number | Optional | HTTP API port |
| automate.authToken | string | Optional | API authentication token |