Make Your Own Free Offline AI Copilot in 10 Minutes (No Cloud, No Drama)

:brain: Make Your Own Free Offline AI Copilot (That Actually Shuts Up and Works)

Tired of AI apps that ask for logins, cloud keys, or your kidney?
Cool. Let’s make one that runs locally, costs $0, and answers instantly when you hit a hotkey.
No cloud. No signup. No spying. Just vibes.


:light_bulb: Why Bother?

  • :locked: Private AF — Everything happens inside your PC. Not even your fridge knows what you typed.
  • :high_voltage: Fast AF — Runs like it had caffeine for breakfast.
  • :free_button: Free AF — No subscriptions, no tokens, no drama.
  • :keyboard: Hotkey Magic — Press one combo → boom, instant reply → auto-copied.

:toolbox: What You’re Making

You’ll end up with:

  1. A mini local AI brain (using Ollama).
  2. A hotkey to ask it anything.
  3. A bonus button to summarize text in your clipboard.

:magic_wand: Step 0: What You Need

  • A laptop with at least 8GB RAM (more = better).
  • You can open a terminal without crying.
  • You can install apps. That’s it.

:gear: Step 1: Get the Brain (Ollama)

:window: Windows:

Go to ollama.com, download it, install it, done.

:red_apple: macOS:

brew install --cask ollama

:penguin: Linux:

curl -fsSL https://ollama.com/install.sh | sh

Then make sure it’s running:

ollama serve

If it says “error,” you probably skipped the coffee part.


:robot: Step 2: Pick a Model (Your AI Personality)

Copy one of these and paste in terminal:

# Good all-rounder
ollama pull llama3

# Super fast, tiny brain but zippy
ollama pull phi3

Test it:

ollama run llama3 "Write a haiku about my offline privacy."

If it replies, congrats — you now have a free local ChatGPT.


:bullseye: Step 3: The Magic Hotkey Trick

You’ll make a tiny script that pops up, takes your question, and replies instantly.


:window: Windows Users:

Create a file called copilot.ps1, paste this in:

Add-Type -AssemblyName Microsoft.VisualBasic
Add-Type -AssemblyName System.Windows.Forms

$prompt = [Microsoft.VisualBasic.Interaction]::InputBox("Ask your AI:", "Local Copilot", "")
if ([string]::IsNullOrWhiteSpace($prompt)) { exit }

$body = @{model="llama3"; prompt=$prompt; stream=$false} | ConvertTo-Json
$resp = Invoke-RestMethod -Uri http://127.0.0.1:11434/api/generate -Method Post -ContentType 'application/json' -Body $body
$ans = $resp.response

[System.Windows.Forms.Clipboard]::SetText($ans)
[System.Windows.Forms.MessageBox]::Show($ans, "Answer (copied!)")

Save → right-click → Run with PowerShell.
Optional flex: make a shortcut and assign a hotkey (like Ctrl+Alt+A).


:red_apple: macOS Users:

Save this as copilot.sh and run:

chmod +x copilot.sh
./copilot.sh

Tip: Use Automator or Raycast to bind it to a hotkey.

#!/usr/bin/env bash
PROMPT=$(osascript -e 'display dialog "Ask your AI:" default answer "" buttons {"Ask"} default button "Ask"' -e 'text returned of result')
JSON=$(printf '{"model":"llama3","prompt":%s}' "$(printf %s "$PROMPT" | jq -Rs .)")
RESP=$(curl -s http://127.0.0.1:11434/api/generate -H 'Content-Type: application/json' -d "$JSON" | jq -r '.response')
osascript -e 'display dialog '"$(printf %s "$RESP" | jq -Rs .)"' buttons {"OK"} default button "OK" with title "Answer (copied)"'
printf %s "$RESP" | pbcopy

:penguin: Linux Users:

Same idea. Save as copilot.sh and run:

chmod +x copilot.sh
./copilot.sh
#!/usr/bin/env bash
PROMPT=$(zenity --entry --title="Local Copilot" --text="Ask your question:")
JSON=$(printf '{"model":"llama3","prompt":%s}' "$(printf %s "$PROMPT" | jq -Rs .)")
RESP=$(curl -s http://127.0.0.1:11434/api/generate -H 'Content-Type: application/json' -d "$JSON" | jq -r '.response')
printf %s "$RESP" | xclip -selection clipboard
zenity --info --title="Answer (copied!)" --text="$RESP"

Bind that script to any keyboard shortcut. Done.


:puzzle_piece: Step 4: Bonus — Summarize Whatever’s on Your Clipboard

Example (Windows):

Add-Type -AssemblyName System.Windows.Forms
$text = [System.Windows.Forms.Clipboard]::GetText()
if ([string]::IsNullOrWhiteSpace($text)) { exit }
$prompt = "Summarize this like a smart lazy person:\n" + $text
$body = @{model="llama3"; prompt=$prompt} | ConvertTo-Json
$resp = Invoke-RestMethod -Uri http://127.0.0.1:11434/api/generate -Method Post -Body $body -ContentType 'application/json'
[System.Windows.Forms.Clipboard]::SetText($resp.response)
[System.Windows.Forms.MessageBox]::Show($resp.response, "Summary (copied!)")

Now press your hotkey → instant summary → auto-copied.
Congrats, you’re now officially too efficient.


:brain: Step 5: Which Model to Use?

  • phi3 → small, fast, dumb but polite.
  • llama3 (8B) → smart, balanced.
  • mistral (7B) → strong, good memory, eats more RAM.

Start small, upgrade later when your ego demands it.


:magic_wand: Step 6: Power-Up Ideas

  • Add voice input (Whisper).
  • Make it read PDFs (RAG stuff).
  • Auto-summarize web pages.
  • Pretend it’s Jarvis and call it “Budget Iron Man.”

:fire_extinguisher: Step 7: If It Breaks

  • :cross_mark: “Connection refused”? → You forgot ollama serve.
  • :cross_mark: “Model not found”? → You didn’t pull the model, genius.
  • :cross_mark: Slow? → Close Chrome or pick phi3.
  • :cross_mark: Weird answers? → Add “Be concise” in your prompt.

:wrapped_gift: Final TL;DR

Install Ollama → pull llama3 → make tiny script → hit hotkey → AI answers instantly → auto copies to clipboard → works offline → all free.

You just made your own private AI Copilot.
No accounts. No data theft. No dumb “cloud waiting.”

You = boss. :laptop::fire:


6 Likes