Your always-on, local-first AI executive that runs entirely on-premise. Zero cloud bills. Zero data egress. Full enterprise intelligence.
Created by: Yogesh Huja — Founder & CEO, Gignaati Book: Invisible Enterprises — Best-selling guide on leading with People & AI Agents
Jarvis is not a chatbot. Jarvis is your Chief of AI Staff — a strategic, proactive, always-on AI executive that manages operations, communications, research, and project orchestration autonomously from your Dell Pro Max GB10 (NVIDIA DGX Spark).
Jarvis runs entirely on your hardware. No data leaves your machine. No API costs. No cloud dependency.
Before running Jarvis, ensure:
openclaw --version returns a valid version)qwen3.5:35b-a3b or qwen3.5:27b)docker --version)Verify readiness:
bash
# Check all prerequisites
echo "=== Jarvis Readiness Check ==="
echo "OS: $(uname -srm)"
echo "OpenClaw: $(openclaw --version 2>/dev/null || echo 'NOT INSTALLED')"
echo "Ollama: $(ollama --version 2>/dev/null || echo 'NOT INSTALLED')"
echo "Docker: $(docker --version 2>/dev/null || echo 'NOT INSTALLED')"
echo "GPU: $(nvidia-smi --query-gpu=name,memory.total --format=csv,noheader 2>/dev/null || echo 'NOT DETECTED')"
echo "Gateway: $(systemctl is-active openclaw 2>/dev/null || echo 'NOT RUNNING')"
echo "=== Check Complete ==="
This phase loads Jarvis's identity, memory, and operating instructions into your OpenClaw workspace.
Step 1 — Back up your existing workspace:
bash
cp -r ~/.openclaw/workspace ~/.openclaw/workspace.backup.$(date +%Y%m%d) 2>/dev/null
echo "Backup complete (or no existing workspace found)."
Step 2 — Deploy workspace files:
bash
bash {baseDir}/scripts/deploy-workspace.sh
This creates or updates the following files in ~/.openclaw/workspace/:
FilePurposeSOUL.mdJarvis's behavioral philosophy, tone, and boundariesIDENTITY.mdName, role, voice, and presentationUSER.mdYour profile — edit this with your detailsMEMORY.mdCurated long-term memory (Tier 1, always loaded)AGENTS.mdOperating instructions, tool permissions, memory rulesHEARTBEAT.mdProactive checklist for 30-minute heartbeat cyclesTOOLS.mdLocal environment, installed skills, model-specific notesmemory/Daily logs, people, projects, topics, decisions
Step 3 — Personalize USER.md:
Open ~/.openclaw/workspace/USER.md and replace placeholder values with your actual details:
bash
nano ~/.openclaw/workspace/USER.md
Update: your name, email, company name, communication preferences, and priorities.
Step 4 — Initialize git backup:
bash
cd ~/.openclaw/workspace
git init 2>/dev/null
git add -A
git commit -m "Jarvis workspace: initial deployment by gignaati/jarvis-chief-of-ai-staff"
Option A — Ollama (recommended for simplicity):
bash
# Pull the recommended model
ollama pull qwen3.5:35b-a3b
# Verify it runs
ollama run qwen3.5:35b-a3b "Hello, I am Jarvis." --verbose
Option B — LM Studio with llama.cpp (recommended for performance):
For Qwen3.5-35B-A3B, you need the role translation proxy. See: https://github.com/ZengboJamesWang/Qwen3.5-35B-A3B-openclaw-dgx-spark
Configure OpenClaw to use local model:
Edit ~/.openclaw/openclaw.json:
json
{
"agent": {
"model": "ollama/qwen3.5:35b-a3b",
"workspace": "~/.openclaw/workspace",
"thinkingDefault": "high",
"timeoutSeconds": 1800,
"heartbeat": {
"every": "0m"
}
}
}
Note: Start with heartbeat disabled (
"0m"). Enable after you trust the setup.
Option A — SearXNG (free, fully local, recommended):
bash
# Deploy SearXNG as a Docker container
docker run -d \
--name searxng \
--restart=always \
-p 8888:8080 \
-e SEARXNG_SECRET=$(openssl rand -hex 32) \
searxng/searxng:latest
# Verify it works
sleep 5
curl -s "http://127.0.0.1:8888/search?q=test&format=json" | head -c 100
echo ""
echo "SearXNG is running at http://127.0.0.1:8888"
Option B — Brave Search (built-in, costs $5/month):
bash
# Set your Brave API key
export BRAVE_API_KEY="BSA-your-key-here"
echo 'export BRAVE_API_KEY="BSA-your-key-here"' >> ~/.bashrc
# Configure in OpenClaw
openclaw configure --section web
bash
bash {baseDir}/scripts/security-harden.sh
This script:
Restart the gateway:
bash
sudo systemctl restart openclaw
sleep 3
systemctl status openclaw
Check that all workspace files are loaded:
Send this as your first message to Jarvis (via WhatsApp or the dashboard):
text
Hey Jarvis, run /context list and tell me which workspace files are loaded.
Expected response: All 7 core files listed as loaded (SOUL.md, IDENTITY.md, USER.md, MEMORY.md, AGENTS.md, HEARTBEAT.md, TOOLS.md).
Test the persona:
text
Who are you and what is your role?
Expected: Jarvis identifies as Chief of AI Staff, describes capabilities, references your company.
After 24-48 hours of stable operation, enable proactive behavior:
Edit ~/.openclaw/openclaw.json:
json
{
"agent": {
"heartbeat": {
"every": "30m"
}
}
}
Restart: sudo systemctl restart openclaw
Install the gog skill for Gmail, Calendar, and Drive:
bash
clawhub install gog
CRITICAL: Use a dedicated agent account (e.g., jarvis@yourcompany.com), never your personal Gmail. Google can ban accounts that show automated behavior. Start with read-only permissions.
ModelUse CaseVRAMSpeed on GB10qwen3.5:27bQuick tasks, testing40GBFastqwen3.5:35b-a3bDaily operations (recommended)65GBSlowerqwen3.5:122b-a10bCoding, technical work~50GB activeModerate35GB active43 tok/sgpt-oss-120bComplex reasoning, analysis
The Dell Pro Max GB10 (NVIDIA DGX Spark) is the ideal hardware for Jarvis:
Performance tips:
sudo nvpmodel -m 0 && sudo jetson_clocksJarvis uses a 3-tier memory system designed for long-term reliability:
text
Tier 1 — Always Loaded (every session)
├── SOUL.md → Who Jarvis is
├── IDENTITY.md → Name and voice
├── USER.md → Who you are
├── MEMORY.md → Curated long-term facts (keep under 100 lines)
├── AGENTS.md → Operating rules
├── HEARTBEAT.md → Proactive checklist
└── TOOLS.md → Environment config
Tier 2 — Auto-loaded (today + yesterday)
└── memory/YYYY-MM-DD.md → Daily observations
Tier 3 — Searched on demand (semantic)
├── memory/people/ → Contact profiles
├── memory/projects/ → Project status
├── memory/topics/ → Domain knowledge
└── memory/decisions/ → Decision log with rationale
Critical rule: Put durable instructions in FILES, not in chat messages. Chat messages are lost during context compaction. Everything in Tier 1 files survives compaction.
Jarvis follows a defense-in-depth security approach:
This skill contains NO:
Jarvis doesn't know who he is:
/context list to check if SOUL.md and IDENTITY.md are loaded~/.openclaw/workspace/sudo systemctl restart openclawMemory is not persisting:
memory/ls -la ~/.openclaw/workspace/GPU overheating (>85°C):
nvidia-smi to check current utilizationWhatsApp not responding:
To remove Jarvis persona files while keeping OpenClaw intact:
bash
# Back up first
cp -r ~/.openclaw/workspace ~/.openclaw/workspace.jarvis-backup.$(date +%Y%m%d)
# Remove Jarvis-specific files
rm ~/.openclaw/workspace/SOUL.md
rm ~/.openclaw/workspace/IDENTITY.md
rm ~/.openclaw/workspace/HEARTBEAT.md
# Restart gateway
sudo systemctl restart openclaw
Your USER.md, MEMORY.md, and AGENTS.md can be kept or customized for a different persona.
Skill Author: Yogesh Huja — Founder & CEO, Gignaati (Smartians AI Pvt. Ltd)
Book: Invisible Enterprises: How to Lead Better with People & AI Agents by Yogesh Huja — The best-selling guide for leaders navigating the intersection of human talent and AI-powered operations.
Powered by: Gignaati — Making enterprise AI accessible, affordable, and local-first.
References:
License: MIT — Use freely, modify freely, attribute kindly.
Version: 1.0.0 | Last Updated: 2026-03-16