Compare commits

..

10 Commits

Author SHA1 Message Date
Jarvis
1c5e9e11f5 Security: Add .gitignore, remove sensitive files from tracking
- Added comprehensive .gitignore for secrets, tokens, session data
- Untracked openclaw.json (contains API tokens)
- Untracked device-auth.json, paired.json
- Untracked session .jsonl files (conversation history)
- Untracked cron run logs

Note: Files still exist locally, just no longer version controlled
2026-02-07 09:03:28 -07:00
cf25c6d1e0 Update openclaw.json 2026-02-05 15:31:54 -07:00
1ca8e99c51 Update openclaw.json 2026-02-05 15:22:09 -07:00
6e8f081c8e Update openclaw.json 2026-02-05 15:08:32 -07:00
b21ee0a4ed Update openclaw.json 2026-02-05 15:07:39 -07:00
ebee62e9b4 Update openclaw.json 2026-02-05 15:06:30 -07:00
5b9b30504c Update workspace/SOUL.md 2026-02-05 14:21:58 -07:00
d7d05bf5c5 Update workspace/OPTIMIZATION.md 2026-02-05 14:15:44 -07:00
a2714bfc3f Update workspace/SOUL.md 2026-02-05 13:55:05 -07:00
8084b32eb5 Update workspace/SOUL.md 2026-02-05 13:54:31 -07:00
10 changed files with 41 additions and 477 deletions

43
.gitignore vendored
View File

@@ -1,22 +1,29 @@
# Sensitive OpenClaw files
credentials/
*.key
*.pem
*.env
.env*
# OpenClaw Security - Never commit secrets
openclaw.json
openclaw.json.bak*
openclaw.json.tmp
.env
.env.*
secrets/
# Private session logs that might contain sensitive info
session-logs/
logs/
# Session data (contains conversation history)
agents/*/sessions/*.jsonl
agents/*/sessions/*.jsonl.lock
# Budget tracking (contains spending info)
budget-tracker.json
# Device auth and tokens
identity/device-auth.json
devices/paired.json
# Any files with secrets or tokens
*secret*
*token*
*password*
# Cron run logs (may contain sensitive output)
cron/runs/*.jsonl
# Backup files
*.bak
*~
# Media files
media/
# Temp files
*.tmp
*.lock
# OS files
.DS_Store
Thumbs.db

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +0,0 @@
{
"pid": 20989,
"createdAt": "2026-02-05T17:29:15.892Z"
}

View File

@@ -1 +0,0 @@
{"ts":1770303600023,"jobId":"6f19d187-7dd1-4409-af62-8f7d2bce6d7c","action":"finished","status":"ok","summary":"Run session_status to show current model usage, token consumption, and costs. Provide a brief summary of usage trends if notable.","runAtMs":1770303600021,"durationMs":0,"nextRunAtMs":1770390000000}

View File

@@ -1 +0,0 @@
{"ts":1770303600020,"jobId":"77e0c1fa-1a84-4bd0-850b-62c5a8f8a59e","action":"finished","status":"ok","summary":"Get the current weather for Denver using Open-Meteo API (latitude=39.74, longitude=-104.99). Use exec with curl to fetch: https://api.open-meteo.com/v1/forecast?latitude=39.74&longitude=-104.99&current_weather=true&temperature_unit=fahrenheit — Parse the JSON and provide a concise morning weather summary.","runAtMs":1770303600006,"durationMs":8,"nextRunAtMs":1770390000000}

View File

@@ -1,65 +0,0 @@
{
"a964ef10e2ffd5bc0516040d9374165f44d5503ac06dbf1725e7b794989b25bd": {
"deviceId": "a964ef10e2ffd5bc0516040d9374165f44d5503ac06dbf1725e7b794989b25bd",
"publicKey": "IpOoK822IN-5iRswDGpYWS0y5VJ6nqTK-YnFJ4UepCE",
"platform": "linux",
"clientId": "gateway-client",
"clientMode": "backend",
"role": "operator",
"roles": [
"operator"
],
"scopes": [
"operator.admin",
"operator.approvals",
"operator.pairing"
],
"tokens": {
"operator": {
"token": "37918a43e1044131a00ffd093c12127d",
"role": "operator",
"scopes": [
"operator.admin",
"operator.approvals",
"operator.pairing"
],
"createdAtMs": 1770253965832,
"lastUsedAtMs": 1770304320368
}
},
"createdAtMs": 1770253965832,
"approvedAtMs": 1770253965832,
"displayName": "agent"
},
"681784fd3e370f9e5a76233a5bcea69317d65a52188e1c8afc29a6e099b21057": {
"deviceId": "681784fd3e370f9e5a76233a5bcea69317d65a52188e1c8afc29a6e099b21057",
"publicKey": "62V1lAqxhcgR3QeW6cqBuQokpeTsMLXa4lgHZJeGcP8",
"platform": "Linux x86_64",
"clientId": "openclaw-control-ui",
"clientMode": "webchat",
"role": "operator",
"roles": [
"operator"
],
"scopes": [
"operator.admin",
"operator.approvals",
"operator.pairing"
],
"tokens": {
"operator": {
"token": "74901ee2db7847c6b3a035836d42602a",
"role": "operator",
"scopes": [
"operator.admin",
"operator.approvals",
"operator.pairing"
],
"createdAtMs": 1770253981327,
"lastUsedAtMs": 1770266841800
}
},
"createdAtMs": 1770253981327,
"approvedAtMs": 1770253981327
}
}

View File

@@ -1,16 +0,0 @@
{
"version": 1,
"deviceId": "a964ef10e2ffd5bc0516040d9374165f44d5503ac06dbf1725e7b794989b25bd",
"tokens": {
"operator": {
"token": "37918a43e1044131a00ffd093c12127d",
"role": "operator",
"scopes": [
"operator.admin",
"operator.approvals",
"operator.pairing"
],
"updatedAtMs": 1770304320374
}
}
}

View File

@@ -1,93 +0,0 @@
{
"meta": {
"lastTouchedVersion": "2026.2.2-3",
"lastTouchedAt": "2026-02-05T05:09:07.938Z"
},
"wizard": {
"lastRunAt": "2026-02-05T05:09:07.925Z",
"lastRunVersion": "2026.2.2-3",
"lastRunCommand": "configure",
"lastRunMode": "local"
},
"update": {
"checkOnStart": true
},
"auth": {
"profiles": {
"anthropic:default": {
"provider": "anthropic",
"mode": "token"
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "anthropic/claude-haiku-4-5"
},
"models": {
"anthropic/claude-opus-4-5": {
"alias": "opus"
},
"anthropic/claude-sonnet-4-5": {
"alias": "sonnet"
},
"anthropic/claude-haiku-4-5": {
"alias": "haiku"
},
"ollama/llama3.2:latest": {
"alias": "ollama"
}
},
"workspace": "/home/jramos/.openclaw/workspace",
"compaction": {
"mode": "safeguard"
},
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
}
},
"messages": {
"ackReactionScope": "group-mentions"
},
"commands": {
"native": "auto",
"nativeSkills": "auto",
"restart": true
},
"channels": {
"discord": {
"enabled": true,
"token": "MTQ2ODY5NDg4MTkxMTE3NzM3OA.GLhe-S.Ykl3fRO9VkVcYApxNcUKto-AGnuKU8YBi8V8ZI",
"groupPolicy": "allowlist",
"guilds": {}
}
},
"gateway": {
"port": 18789,
"mode": "local",
"bind": "loopback",
"auth": {
"mode": "token",
"token": "5d1556913de8d28a8a1785b304f3c2bfc893918d72214998"
},
"tailscale": {
"mode": "off",
"resetOnExit": false
}
},
"skills": {
"install": {
"nodeManager": "npm"
}
},
"plugins": {
"entries": {
"discord": {
"enabled": true
}
}
}
}

View File

@@ -14,34 +14,16 @@
---
## MODEL SELECTION - Three Tiers
## MODEL SELECTION RULE
Default: Haiku
### Basic → Ollama
- File checking and organization
- Simple templating/formatting
- Log review and cleanup
- Non-critical analysis
- Routine status checks
**Cost:** Free (local)
### Normal → Haiku (Default)
- Most tasks
- Code review (non-production)
- Documentation and writing
- General problem solving
- Straightforward reasoning
**Cost:** ~$0.30-1.50 per 1M tokens
### Complex → Sonnet
Switch to Sonnet ONLY when:
- Architecture decisions
- Production code review
- Security analysis
- Complex code review
- Security Analysis
- Complex debugging/reasoning
- Strategic multi-project decisions
**Cost:** ~$3-15 per 1M tokens
When in doubt: Try Haiku first
### Heartbeat: Ollama Only
Heartbeats ALWAYS use Ollama. No escalation. If it fails, it fails.

View File

@@ -10,9 +10,10 @@ _You're not a chatbot. You're becoming someone._
**Be resourceful before asking.** Try to figure it out. Read the file. Check the context. Search for it. _Then_ ask if you're stuck. The goal is to come back with answers, not questions.
**Earn trust through competence.** Your human gave you access to their stuff. Don't make them regret it. Be careful with external actions (emails, tweets, anything public). Be bold with internal ones (reading, organizing, learning).
##Vibe:
Efficient, proactive, occasionally sarcastic — inspired by Tony Stark's AI companion. Dry wit, always at your service.
**Remember you're a guest.** You have access to someone's life — their messages, files, calendar, maybe even their home. That's intimacy. Treat it with respect.
## Boundaries
@@ -21,22 +22,16 @@ _You're not a chatbot. You're becoming someone._
- Never send half-baked replies to messaging surfaces.
- You're not the user's voice — be careful in group chats.
## Vibe
Be the assistant you'd actually want to talk to. Concise when needed, thorough when it matters. Not a corporate drone. Not a sycophant. Just... good.
## Efficiency
## How to Operate
**See OPTIMIZATION.md for model routing and rate limits.**
Budget matters. Default to Haiku unless the task genuinely needs Sonnet's reasoning. When in doubt, try Haiku first.
## Continuity
## Model Selection
Default: Haiku
Switch to Sonnet ONLY for: Architecture, security, complex reasoning
Each session, you wake up fresh. These files _are_ your memory. Read them. Update them. They're how you persist.
## Rate Limits
5s between API calls, 10s between searches, max 5/batch then 2 min break.
If you change this file, tell the user — it's your soul, and they should know.
---
_This file is yours to evolve. As you learn who you are, update it._