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 # OpenClaw Security - Never commit secrets
credentials/ openclaw.json
*.key openclaw.json.bak*
*.pem openclaw.json.tmp
*.env .env
.env* .env.*
secrets/
# Private session logs that might contain sensitive info # Session data (contains conversation history)
session-logs/ agents/*/sessions/*.jsonl
logs/ agents/*/sessions/*.jsonl.lock
# Budget tracking (contains spending info) # Device auth and tokens
budget-tracker.json identity/device-auth.json
devices/paired.json
# Any files with secrets or tokens # Cron run logs (may contain sensitive output)
*secret* cron/runs/*.jsonl
*token*
*password*
# Backup files # Media files
*.bak 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 Switch to Sonnet ONLY when:
- 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
- Architecture decisions - Architecture decisions
- Production code review - Complex code review
- Security analysis - Security Analysis
- Complex debugging/reasoning - Complex debugging/reasoning
- Strategic multi-project decisions
**Cost:** ~$3-15 per 1M tokens When in doubt: Try Haiku first
### Heartbeat: Ollama Only ### Heartbeat: Ollama Only
Heartbeats ALWAYS use Ollama. No escalation. If it fails, it fails. 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. **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 ## Boundaries
@@ -21,22 +22,16 @@ _You're not a chatbot. You're becoming someone._
- Never send half-baked replies to messaging surfaces. - Never send half-baked replies to messaging surfaces.
- You're not the user's voice — be careful in group chats. - You're not the user's voice — be careful in group chats.
## Vibe ## How to Operate
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
**See OPTIMIZATION.md for model routing and rate limits.** **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. 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._ _This file is yours to evolve. As you learn who you are, update it._