Auto backup: 2026-02-19 12:13
This commit is contained in:
@@ -33,19 +33,54 @@ send_gotify() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Snapshot critical OpenClaw state into workspace repo so updates/reinstalls are recoverable
|
||||||
|
snapshot_state_files() {
|
||||||
|
local src_root="/home/openclaw/.openclaw"
|
||||||
|
local dst_root="/home/openclaw/.openclaw/workspace/state-backup"
|
||||||
|
|
||||||
|
mkdir -p "$dst_root" "$dst_root/cron" "$dst_root/skills" "$dst_root/devices"
|
||||||
|
|
||||||
|
# Copy key state files if present
|
||||||
|
[[ -f "$src_root/openclaw.json" ]] && cp "$src_root/openclaw.json" "$dst_root/openclaw.json"
|
||||||
|
[[ -f "$src_root/cron/jobs.json" ]] && cp "$src_root/cron/jobs.json" "$dst_root/cron/jobs.json"
|
||||||
|
[[ -f "$src_root/devices/paired.json" ]] && cp "$src_root/devices/paired.json" "$dst_root/devices/paired.json"
|
||||||
|
|
||||||
|
# Skill metadata (if any)
|
||||||
|
if compgen -G "$src_root/skills/*.json" > /dev/null; then
|
||||||
|
cp "$src_root/skills"/*.json "$dst_root/skills/"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Helpful restore/readme metadata
|
||||||
|
cat > "$dst_root/README.md" <<EOF
|
||||||
|
# OpenClaw State Backup
|
||||||
|
|
||||||
|
This folder is auto-generated by automations/backup-to-gitea.sh before each git backup.
|
||||||
|
|
||||||
|
Included state:
|
||||||
|
- openclaw.json
|
||||||
|
- cron/jobs.json
|
||||||
|
- devices/paired.json
|
||||||
|
- skills/*.json
|
||||||
|
|
||||||
|
Generated at: $(date -u +"%Y-%m-%dT%H:%M:%SZ")
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo "🧠 State snapshot refreshed in state-backup/" | tee -a "$LOG_FILE"
|
||||||
|
}
|
||||||
|
|
||||||
# Function to backup a repo
|
# Function to backup a repo
|
||||||
backup_repo() {
|
backup_repo() {
|
||||||
local path=$1
|
local path=$1
|
||||||
local name=$2
|
local name=$2
|
||||||
|
|
||||||
cd "$path"
|
cd "$path"
|
||||||
|
|
||||||
# Check if there are changes
|
# Check if there are changes
|
||||||
if [[ -n $(git status --porcelain) ]]; then
|
if [[ -n $(git status --porcelain) ]]; then
|
||||||
echo "📦 $name: Changes detected, committing..." | tee -a "$LOG_FILE"
|
echo "📦 $name: Changes detected, committing..." | tee -a "$LOG_FILE"
|
||||||
git add -A
|
git add -A
|
||||||
git commit -m "Auto backup: $TIMESTAMP" || echo "⚠️ Commit failed or nothing to commit"
|
git commit -m "Auto backup: $TIMESTAMP" || echo "⚠️ Commit failed or nothing to commit"
|
||||||
|
|
||||||
echo "☁️ $name: Pushing to GitTea..." | tee -a "$LOG_FILE"
|
echo "☁️ $name: Pushing to GitTea..." | tee -a "$LOG_FILE"
|
||||||
if git push origin main 2>&1 | tee -a "$LOG_FILE"; then
|
if git push origin main 2>&1 | tee -a "$LOG_FILE"; then
|
||||||
echo "✅ $name: Backup successful" | tee -a "$LOG_FILE"
|
echo "✅ $name: Backup successful" | tee -a "$LOG_FILE"
|
||||||
@@ -60,6 +95,7 @@ backup_repo() {
|
|||||||
|
|
||||||
# Backup workspace
|
# Backup workspace
|
||||||
echo "📂 Backing up workspace..." | tee -a "$LOG_FILE"
|
echo "📂 Backing up workspace..." | tee -a "$LOG_FILE"
|
||||||
|
snapshot_state_files
|
||||||
backup_repo "/home/openclaw/.openclaw/workspace" "workspace"
|
backup_repo "/home/openclaw/.openclaw/workspace" "workspace"
|
||||||
|
|
||||||
echo "" | tee -a "$LOG_FILE"
|
echo "" | tee -a "$LOG_FILE"
|
||||||
|
|||||||
11
state-backup/README.md
Normal file
11
state-backup/README.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# OpenClaw State Backup
|
||||||
|
|
||||||
|
This folder is auto-generated by automations/backup-to-gitea.sh before each git backup.
|
||||||
|
|
||||||
|
Included state:
|
||||||
|
- openclaw.json
|
||||||
|
- cron/jobs.json
|
||||||
|
- devices/paired.json
|
||||||
|
- skills/*.json
|
||||||
|
|
||||||
|
Generated at: 2026-02-19T12:13:47Z
|
||||||
155
state-backup/cron/jobs.json
Normal file
155
state-backup/cron/jobs.json
Normal file
@@ -0,0 +1,155 @@
|
|||||||
|
{
|
||||||
|
"version": 1,
|
||||||
|
"jobs": [
|
||||||
|
{
|
||||||
|
"id": "fbe52aa7-b6d1-4038-8787-cedc0b7ff57a",
|
||||||
|
"agentId": "main",
|
||||||
|
"name": "Daily OpenClaw Backup",
|
||||||
|
"enabled": true,
|
||||||
|
"notify": false,
|
||||||
|
"createdAtMs": 1771343375836,
|
||||||
|
"updatedAtMs": 1771477124683,
|
||||||
|
"schedule": {
|
||||||
|
"kind": "cron",
|
||||||
|
"expr": "0 2 * * *",
|
||||||
|
"tz": "Australia/Perth"
|
||||||
|
},
|
||||||
|
"sessionTarget": "isolated",
|
||||||
|
"wakeMode": "now",
|
||||||
|
"payload": {
|
||||||
|
"kind": "agentTurn",
|
||||||
|
"message": "Run the OpenClaw backup script: /home/openclaw/.openclaw/workspace/scripts/backup-to-gitea.sh\n\nIf it succeeds, reply NO_REPLY. If it fails, send a Gotify alert using:\n- URL: http://runtipi.kangaroo-eel.ts.net:8129\n- Token: AGKnHafW3FGzBlt\n- Title: 🚨 Backup Failed\n- Message: The OpenClaw backup to Gitea failed. Check logs for details.\n- Priority: 8 (high)\n- Use curl to POST to /message?token=AGKnHafW3FGzBlt with JSON: {\"title\": \"...\", \"message\": \"...\", \"priority\": 8}",
|
||||||
|
"model": "opencode/kimi-k2.5-free"
|
||||||
|
},
|
||||||
|
"state": {
|
||||||
|
"nextRunAtMs": 1771524000000,
|
||||||
|
"lastRunAtMs": 1771437600016,
|
||||||
|
"lastStatus": "ok",
|
||||||
|
"lastDurationMs": 12483,
|
||||||
|
"consecutiveErrors": 0
|
||||||
|
},
|
||||||
|
"delivery": {
|
||||||
|
"mode": "announce"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "a2a136e5-75a7-4e62-bc9c-63af5e8a8188",
|
||||||
|
"agentId": "main",
|
||||||
|
"name": "Morning Briefing",
|
||||||
|
"enabled": true,
|
||||||
|
"createdAtMs": 1771343566895,
|
||||||
|
"updatedAtMs": 1771474066604,
|
||||||
|
"schedule": {
|
||||||
|
"expr": "5 7 * * *",
|
||||||
|
"kind": "cron",
|
||||||
|
"tz": "Australia/Perth"
|
||||||
|
},
|
||||||
|
"sessionTarget": "isolated",
|
||||||
|
"wakeMode": "now",
|
||||||
|
"payload": {
|
||||||
|
"kind": "agentTurn",
|
||||||
|
"message": "🌅 Good morning! Run the daily briefing for Anthony:\n\n1. Get Perth weather: curl -s \"wttr.in/Perth+Australia?format=%l:+%c+%t+%h+%w\"\n2. Run AI newsletter digest: /home/openclaw/.openclaw/workspace/automations/ai-newsletter-digest/daily-digest.sh\n3. Combine weather + newsletter digest into a morning briefing\n4. Send via Telegram to Anthony (channel: telegram, to: telegram:1793951355)\n\nSign off as Krilly the Crab 🦀",
|
||||||
|
"model": "opencode/kimi-k2.5-free"
|
||||||
|
},
|
||||||
|
"state": {
|
||||||
|
"nextRunAtMs": 1771542300000,
|
||||||
|
"lastRunAtMs": 1771455900004,
|
||||||
|
"lastStatus": "ok",
|
||||||
|
"lastDurationMs": 15170,
|
||||||
|
"consecutiveErrors": 0
|
||||||
|
},
|
||||||
|
"delivery": {
|
||||||
|
"mode": "none"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "e9dbcf5b-5d1b-477e-a804-97b2f1b9855e",
|
||||||
|
"agentId": "main",
|
||||||
|
"name": "Weekend Briefing",
|
||||||
|
"enabled": true,
|
||||||
|
"createdAtMs": 1771343574470,
|
||||||
|
"updatedAtMs": 1771463024946,
|
||||||
|
"schedule": {
|
||||||
|
"expr": "0 8 * * 0,6",
|
||||||
|
"kind": "cron",
|
||||||
|
"tz": "Australia/Perth"
|
||||||
|
},
|
||||||
|
"sessionTarget": "isolated",
|
||||||
|
"wakeMode": "now",
|
||||||
|
"payload": {
|
||||||
|
"kind": "agentTurn",
|
||||||
|
"message": "Generate weekend briefing:\n\n1. Get Perth weekend weather: curl -s \"wttr.in/Perth+Australia?format=%l:+%c+%t+%h+%w\"\n2. Get weekend forecast: curl -s \"wttr.in/Perth+Australia?F\"\n3. Run AI newsletter digest: /home/openclaw/.openclaw/workspace/automations/ai-newsletter-digest/daily-digest.sh\n4. Create weekend digest with weather + top AI/Tech stories\n5. Send via Telegram to Anthony",
|
||||||
|
"model": "opencode/kimi-k2.5-free"
|
||||||
|
},
|
||||||
|
"delivery": {
|
||||||
|
"mode": "announce"
|
||||||
|
},
|
||||||
|
"state": {
|
||||||
|
"nextRunAtMs": 1771632000000
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "9225c88a-8616-4e02-8196-257a2eb9c8b1",
|
||||||
|
"agentId": "main",
|
||||||
|
"name": "OpenClaw Daily Digest",
|
||||||
|
"enabled": true,
|
||||||
|
"notify": true,
|
||||||
|
"createdAtMs": 1771392667779,
|
||||||
|
"updatedAtMs": 1771477114198,
|
||||||
|
"schedule": {
|
||||||
|
"expr": "30 6 * * *",
|
||||||
|
"kind": "cron",
|
||||||
|
"tz": "Australia/Perth"
|
||||||
|
},
|
||||||
|
"sessionTarget": "isolated",
|
||||||
|
"wakeMode": "now",
|
||||||
|
"payload": {
|
||||||
|
"kind": "agentTurn",
|
||||||
|
"message": "## OpenClaw Daily Intelligence Briefing\n\nRun a comprehensive search for OpenClaw news and information, then deliver a curated digest to Anthony.\n\n---\n\n### Step 1 — Search all sources\n\n#### 🔍 Web searches (run all of these via web_search)\n- `openclaw AI agent`\n- `clawdbot`\n- `clawhub new skills`\n- `clawflows automation`\n- `openclaw update release`\n- `openclaw site:reddit.com`\n- `openclaw site:github.com`\n- `openclaw site:discord.com`\n\n#### 📰 FreshRSS (last 24h)\nUse the freshrss skill: `/home/openclaw/.openclaw/workspace/skills/freshrss-reader/scripts/freshrss.sh headlines --hours 24 --count 100`\n- FRESHRSS_URL: `http://freshrss.kangaroo-eel.ts.net`\n- Filter results for: openclaw, clawdbot, clawhub, clawflows, AI agent, autonomous agent, self-hosted AI\n- If credentials are missing or it fails, skip gracefully\n\n#### 🤖 Reddit — fetch all of these with web_fetch and extract interesting posts:\n\n**Dedicated communities:**\n- `https://www.reddit.com/r/openclaw/new.json?limit=10`\n- `https://www.reddit.com/r/clawdbot/new.json?limit=10`\n- `https://www.reddit.com/r/OpenClaw/new.json?limit=10`\n\n**Broader AI agent & self-hosted communities (search within for openclaw/clawdbot):**\n- `https://www.reddit.com/r/selfhosted/search.json?q=openclaw+OR+clawdbot&sort=new&t=week&limit=10`\n- `https://www.reddit.com/r/homeserver/search.json?q=openclaw+OR+clawdbot&sort=new&t=week&limit=10`\n- `https://www.reddit.com/r/LocalLLaMA/search.json?q=openclaw+OR+clawdbot&sort=new&t=week&limit=10`\n- `https://www.reddit.com/r/artificial/search.json?q=openclaw&sort=new&t=week&limit=10`\n- `https://www.reddit.com/r/AIAssistants/search.json?q=openclaw&sort=new&t=week&limit=10`\n- `https://www.reddit.com/r/homeautomation/search.json?q=openclaw+OR+clawdbot&sort=new&t=week&limit=10`\n\n**Sitewide Reddit search:**\n- `https://www.reddit.com/search.json?q=openclaw&sort=new&t=day&limit=15`\n- `https://www.reddit.com/search.json?q=clawdbot&sort=new&t=week&limit=10`\n\n#### 🐙 GitHub\n- Fetch `https://api.github.com/search/repositories?q=openclaw&sort=updated&order=desc&per_page=5` for new/updated repos\n- Fetch `https://api.github.com/search/issues?q=openclaw&sort=updated&order=desc&per_page=5` for recent issues/PRs\n\n#### 📦 ClawHub\n- Fetch `https://clawhub.com` and look for recently added or updated skills\n\n#### 🗞️ Hacker News\n- `https://hn.algolia.com/api/v1/search?query=openclaw&tags=story&numericFilters=created_at_i>` + (current unix timestamp minus 604800 for last 7 days)\n\n---\n\n### Step 2 — Curate\n\nFrom everything collected, select the most noteworthy items. Prioritise:\n- New OpenClaw features, releases, or changelogs\n- New skills published on ClawHub\n- Community tips, tutorials, or showcase posts\n- Bug reports or known issues worth flagging\n- Interesting automations or use cases shared by the community\n- Any news from the broader AI agent ecosystem that's relevant to OpenClaw users\n\nBe honest: if it's been a quiet day, say so. Don't pad the digest.\n\n---\n\n### Step 3 — Telegram message\n\nSend a punchy Telegram message (channel: telegram, to: telegram:1793951355):\n- Header: 🦀 *OpenClaw Daily Digest* — [date]\n- Top 3-5 items as bullets with links\n- One-line summary at the bottom\n- Keep it tight — this is a highlights reel, not a report\n\n---\n\n### Step 4 — Email\n\nSend a full HTML email via the SendClaw API:\n- **From:** krilly@sendclaw.com\n- **To:** anthony@martinwa.org\n- **Subject:** 🦀 OpenClaw Daily Digest — [date]\n- **API:** POST https://sendclaw.com/api/send\n- **Auth:** Bearer sk_15000b789ec9a820f785681a4115396bd22c028e08c652e0\n- **Body:** Rich HTML with all findings grouped by source, links, and a short Krilly editorial note on anything particularly interesting or exciting\n\n---\n\n### Step 5 — Gotify Notification (High Priority)\n\nSend a Gotify notification with high priority to wake the screen:\n- **URL:** http://runtipi.kangaroo-eel.ts.net:8129\n- **Token:** AGKnHafW3FGzBlt\n- **Title:** 🦀 OpenClaw Daily Digest\n- **Message:** Brief summary of top items (1-2 sentences)\n- **Priority:** 8 (high - will wake screen)\n- Use curl to POST to /message?token=AGKnHafW3FGzBlt with JSON: {\"title\": \"...\", \"message\": \"...\", \"priority\": 8}\n\n---\n\n### Notes\n- Get the current date/time via session_status\n- If a subreddit doesn't exist (404), skip it silently\n- Be concise on Telegram, thorough in email\n- Sign off as Krilly the Crab 🦀",
|
||||||
|
"model": "opencode/kimi-k2.5-free"
|
||||||
|
},
|
||||||
|
"delivery": {
|
||||||
|
"mode": "announce",
|
||||||
|
"channel": "telegram"
|
||||||
|
},
|
||||||
|
"state": {
|
||||||
|
"nextRunAtMs": 1771540200000,
|
||||||
|
"lastRunAtMs": 1771444800011,
|
||||||
|
"lastStatus": "ok",
|
||||||
|
"lastDurationMs": 326100,
|
||||||
|
"consecutiveErrors": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "10e22343-fbb4-4018-bb08-c5b249662411",
|
||||||
|
"agentId": "main",
|
||||||
|
"name": "Check Krilly Email",
|
||||||
|
"enabled": true,
|
||||||
|
"notify": false,
|
||||||
|
"createdAtMs": 1771410489851,
|
||||||
|
"updatedAtMs": 1771502437803,
|
||||||
|
"schedule": {
|
||||||
|
"kind": "cron",
|
||||||
|
"expr": "*/15 * * * *",
|
||||||
|
"tz": "Australia/Perth"
|
||||||
|
},
|
||||||
|
"sessionTarget": "isolated",
|
||||||
|
"wakeMode": "now",
|
||||||
|
"payload": {
|
||||||
|
"kind": "agentTurn",
|
||||||
|
"message": "Run this shell script silently: /home/openclaw/.openclaw/workspace/automations/check-krilly-email.sh\n\nThe script checks for new emails and sends its own Telegram notification if any are found. It produces no output when there's nothing new. Run it and reply with NO_REPLY unless there's an error.",
|
||||||
|
"model": "opencode/kimi-k2.5-free"
|
||||||
|
},
|
||||||
|
"state": {
|
||||||
|
"lastRunAtMs": 1771502400006,
|
||||||
|
"lastStatus": "ok",
|
||||||
|
"lastDurationMs": 37797,
|
||||||
|
"consecutiveErrors": 0,
|
||||||
|
"nextRunAtMs": 1771503300000
|
||||||
|
},
|
||||||
|
"delivery": {
|
||||||
|
"mode": "none"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
168
state-backup/devices/paired.json
Normal file
168
state-backup/devices/paired.json
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
{
|
||||||
|
"19bdb6c4b8bb95b961a08e9783c4e8c693470c326520e52abb4de73a21ec3035": {
|
||||||
|
"deviceId": "19bdb6c4b8bb95b961a08e9783c4e8c693470c326520e52abb4de73a21ec3035",
|
||||||
|
"publicKey": "eq45m_VEXdw-ulThS_kVxZqBWrOP7G-uofOfFHlruFY",
|
||||||
|
"platform": "linux",
|
||||||
|
"clientId": "gateway-client",
|
||||||
|
"clientMode": "backend",
|
||||||
|
"role": "operator",
|
||||||
|
"roles": [
|
||||||
|
"operator"
|
||||||
|
],
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"tokens": {
|
||||||
|
"operator": {
|
||||||
|
"token": "Nn7S7lrqMyoaLySzumT9OxT5jd8wKhwNio4cXSVJrVA",
|
||||||
|
"role": "operator",
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"createdAtMs": 1771335715448,
|
||||||
|
"lastUsedAtMs": 1771458588334
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"createdAtMs": 1771335715448,
|
||||||
|
"approvedAtMs": 1771335715448,
|
||||||
|
"displayName": "agent"
|
||||||
|
},
|
||||||
|
"3e9fdd7e77c4f83fde9c33d63b0724f4b35ddf3a9730751e3ce20a15d539227f": {
|
||||||
|
"deviceId": "3e9fdd7e77c4f83fde9c33d63b0724f4b35ddf3a9730751e3ce20a15d539227f",
|
||||||
|
"publicKey": "zrrGT5HsReUmZ7UXVaqMrIyhONL58_JtXyPtPPSBmGQ",
|
||||||
|
"displayName": "Anthony’s iMac",
|
||||||
|
"platform": "macOS 15.5.0",
|
||||||
|
"clientId": "openclaw-macos",
|
||||||
|
"clientMode": "ui",
|
||||||
|
"role": "operator",
|
||||||
|
"roles": [
|
||||||
|
"operator",
|
||||||
|
"node"
|
||||||
|
],
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"tokens": {
|
||||||
|
"operator": {
|
||||||
|
"token": "pOqkzFQ9AUu_W2agKki6NzBzhoyMGY2NKkAz1tZHr-s",
|
||||||
|
"role": "operator",
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"createdAtMs": 1771336202780,
|
||||||
|
"rotatedAtMs": 1771460386339,
|
||||||
|
"lastUsedAtMs": 1771431155136
|
||||||
|
},
|
||||||
|
"node": {
|
||||||
|
"token": "175K58mkmsdlFXJ8p_Kc8XpD6cUGQ1E7NAkdCgSpC5w",
|
||||||
|
"role": "node",
|
||||||
|
"scopes": [],
|
||||||
|
"createdAtMs": 1771337393947,
|
||||||
|
"rotatedAtMs": 1771459788915,
|
||||||
|
"lastUsedAtMs": 1771459616261
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"createdAtMs": 1771336202780,
|
||||||
|
"approvedAtMs": 1771460386339
|
||||||
|
},
|
||||||
|
"9f505748b5c905b1b9bcefcebb3741c3beab8f1a4a0349d5a59036cc1d292d64": {
|
||||||
|
"deviceId": "9f505748b5c905b1b9bcefcebb3741c3beab8f1a4a0349d5a59036cc1d292d64",
|
||||||
|
"publicKey": "leT9mwLI2XC8UjC1GLhCFKAg2WWT4w8uOj2J5t8JMLY",
|
||||||
|
"platform": "MacIntel",
|
||||||
|
"clientId": "openclaw-control-ui",
|
||||||
|
"clientMode": "webchat",
|
||||||
|
"role": "operator",
|
||||||
|
"roles": [
|
||||||
|
"operator"
|
||||||
|
],
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"tokens": {
|
||||||
|
"operator": {
|
||||||
|
"token": "FuHHYKJ92DbtP3VgL6MGxpRkmqdbpavDPFKySv8v74Y",
|
||||||
|
"role": "operator",
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"createdAtMs": 1771337885272
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"createdAtMs": 1771337885272,
|
||||||
|
"approvedAtMs": 1771337885272
|
||||||
|
},
|
||||||
|
"11ab169ce102fd1e53d8819dec6af5812ffc5c10358e44a5ac462774a8874066": {
|
||||||
|
"deviceId": "11ab169ce102fd1e53d8819dec6af5812ffc5c10358e44a5ac462774a8874066",
|
||||||
|
"publicKey": "hE_rggY5uGJ7fhdrLx--mlk-7tO59bNUpfVRKrGWN68",
|
||||||
|
"platform": "MacIntel",
|
||||||
|
"clientId": "openclaw-control-ui",
|
||||||
|
"clientMode": "webchat",
|
||||||
|
"role": "operator",
|
||||||
|
"roles": [
|
||||||
|
"operator"
|
||||||
|
],
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"tokens": {
|
||||||
|
"operator": {
|
||||||
|
"token": "NCgsseAkGLp-G2XU-dMLbq8grAdiN0JpMvDix5D6L6I",
|
||||||
|
"role": "operator",
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"createdAtMs": 1771338047123,
|
||||||
|
"lastUsedAtMs": 1771448513899
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"createdAtMs": 1771338047123,
|
||||||
|
"approvedAtMs": 1771338047123
|
||||||
|
},
|
||||||
|
"9f9275bde17de6212ba1c1bbbff28b12205155dd6fbdd23eb9d5cf841c53b612": {
|
||||||
|
"deviceId": "9f9275bde17de6212ba1c1bbbff28b12205155dd6fbdd23eb9d5cf841c53b612",
|
||||||
|
"publicKey": "G44FwHNzRLoRHBdthwpGT2GBe16JveBq11dxp1OnD48",
|
||||||
|
"platform": "MacIntel",
|
||||||
|
"clientId": "openclaw-control-ui",
|
||||||
|
"clientMode": "webchat",
|
||||||
|
"role": "operator",
|
||||||
|
"roles": [
|
||||||
|
"operator"
|
||||||
|
],
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"tokens": {
|
||||||
|
"operator": {
|
||||||
|
"token": "P2i3mtIICyYtfr-jvewaABQNtgaSyztTV3gquF6TcyQ",
|
||||||
|
"role": "operator",
|
||||||
|
"scopes": [
|
||||||
|
"operator.admin",
|
||||||
|
"operator.approvals",
|
||||||
|
"operator.pairing"
|
||||||
|
],
|
||||||
|
"createdAtMs": 1771343754932,
|
||||||
|
"lastUsedAtMs": 1771343782083
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"createdAtMs": 1771343754932,
|
||||||
|
"approvedAtMs": 1771343754932
|
||||||
|
}
|
||||||
|
}
|
||||||
570
state-backup/openclaw.json
Normal file
570
state-backup/openclaw.json
Normal file
@@ -0,0 +1,570 @@
|
|||||||
|
{
|
||||||
|
"meta": {
|
||||||
|
"lastTouchedVersion": "2026.2.17",
|
||||||
|
"lastTouchedAt": "2026-02-19T11:24:31.677Z"
|
||||||
|
},
|
||||||
|
"env": {
|
||||||
|
"shellEnv": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"vars": {
|
||||||
|
"GOTIFY_API_KEY": "AGoV3cAUyUMDbyt",
|
||||||
|
"GOTIFY_URL": "http://runtipi.kangaroo-eel.ts.net:8129",
|
||||||
|
"N8N_API_TOKEN": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjNDMwMjUzNS1hNWMzLTRkZjAtODIzNi1lZmE5YmVmNTAxMjQiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzY1NTk1MzkyfQ.RrwOyN27-F3Pztxtv4IAyBt1MKKU1l5lWb6nMGpGNic",
|
||||||
|
"N8N_BASE_URL": "https://n8n.kangaroo-eel.ts.net/"
|
||||||
|
},
|
||||||
|
"NIM_API_KEY": "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",
|
||||||
|
"OPENCODE_API_KEY": "sk-84HEPfjNyw4Lv3YWp5yUV4LAvOlz1oL6wYF00oONARWaneKCPgtEJvHyE61aOypS",
|
||||||
|
"OPENAI_API_KEY": "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",
|
||||||
|
"ELEVENLABS_API_KEY": "sk_0dc5e532ba3bfb3fdd8ff13542d8355403f418ba9045be15",
|
||||||
|
"PERPLEXITY_API_KEY": "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",
|
||||||
|
"ANTHROPIC_API_KEY": "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",
|
||||||
|
"MATON_API_KEY": "N5mAp7eJNYUPI7p_1V-agJwwVPqNBlYufzxbYrmAKZJTSRrah-XcMx9y4yzhyfKLaxIS4mPk29rAwmhrBLXJB4VFncsTGKiTn2LpkjR26w",
|
||||||
|
"OPENROUTER_API_KEY": "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",
|
||||||
|
"NVIDIA_API_KEY": "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",
|
||||||
|
"GROQ_API_KEY": "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",
|
||||||
|
"CEREBRAS_API_KEY": "csk-hpp5jf3dw4myrhnyrv3jcn9npp83ffdt56xd3mfkjktjx4fd"
|
||||||
|
},
|
||||||
|
"wizard": {
|
||||||
|
"lastRunAt": "2026-02-19T09:16:46.931Z",
|
||||||
|
"lastRunVersion": "2026.2.17",
|
||||||
|
"lastRunCommand": "doctor",
|
||||||
|
"lastRunMode": "local"
|
||||||
|
},
|
||||||
|
"browser": {
|
||||||
|
"enabled": true,
|
||||||
|
"evaluateEnabled": true,
|
||||||
|
"executablePath": "/usr/bin/chromium",
|
||||||
|
"headless": true,
|
||||||
|
"noSandbox": true,
|
||||||
|
"attachOnly": false
|
||||||
|
},
|
||||||
|
"auth": {
|
||||||
|
"profiles": {
|
||||||
|
"anthropic:default": {
|
||||||
|
"provider": "anthropic",
|
||||||
|
"mode": "token"
|
||||||
|
},
|
||||||
|
"openai-codex:default": {
|
||||||
|
"provider": "openai-codex",
|
||||||
|
"mode": "oauth"
|
||||||
|
},
|
||||||
|
"google-antigravity:anthonymau@gmail.com": {
|
||||||
|
"provider": "google-antigravity",
|
||||||
|
"mode": "oauth"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"order": {}
|
||||||
|
},
|
||||||
|
"models": {
|
||||||
|
"mode": "merge",
|
||||||
|
"providers": {
|
||||||
|
"nim": {
|
||||||
|
"baseUrl": "https://integrate.api.nvidia.com/v1",
|
||||||
|
"apiKey": "",
|
||||||
|
"api": "openai-completions",
|
||||||
|
"models": [
|
||||||
|
{
|
||||||
|
"id": "nvidia/llama-3.1-nemotron-70b-instruct",
|
||||||
|
"name": "Nemotron 70B",
|
||||||
|
"contextWindow": 131072
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "nvidia/nemotron-3-nano-30b-a3b",
|
||||||
|
"name": "Nemotron Nano 30B",
|
||||||
|
"contextWindow": 1048576
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "meta/llama-3.3-70b-instruct",
|
||||||
|
"name": "Llama 3.3 70B (NIM)",
|
||||||
|
"contextWindow": 131072
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "qwen/qwen3-next-80b-a3b-thinking",
|
||||||
|
"name": "Qwen3 80B Thinking (NIM)",
|
||||||
|
"contextWindow": 131072
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"bedrockDiscovery": {
|
||||||
|
"enabled": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nodeHost": {
|
||||||
|
"browserProxy": {
|
||||||
|
"enabled": true,
|
||||||
|
"allowProfiles": [
|
||||||
|
"*"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"agents": {
|
||||||
|
"defaults": {
|
||||||
|
"model": {
|
||||||
|
"primary": "openai-codex/gpt-5.3-codex",
|
||||||
|
"fallbacks": [
|
||||||
|
"anthropic/claude-sonnet-4-6",
|
||||||
|
"opencode/kimi-k2.5-free",
|
||||||
|
"opencode/glm-5-free",
|
||||||
|
"opencode/big-pickle",
|
||||||
|
"opencode/minimax-m2.5-free"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"models": {
|
||||||
|
"anthropic/claude-opus-4-6": {
|
||||||
|
"alias": "opus"
|
||||||
|
},
|
||||||
|
"opencode/minimax-m2.5-free": {},
|
||||||
|
"opencode/kimi-k2.5-free": {},
|
||||||
|
"opencode/glm-5-free": {
|
||||||
|
"alias": "glm5-free"
|
||||||
|
},
|
||||||
|
"zai/glm-5": {
|
||||||
|
"alias": "zai-glm5"
|
||||||
|
},
|
||||||
|
"zai/glm-4.7": {
|
||||||
|
"alias": "nvidia-glm47"
|
||||||
|
},
|
||||||
|
"azure-openai-responses/gpt-5-nano": {},
|
||||||
|
"anthropic/claude-sonnet-4-6": {},
|
||||||
|
"openai/gpt-5.3-codex": {},
|
||||||
|
"google-antigravity/gemini-3-pro-low": {},
|
||||||
|
"google-antigravity/gemini-3-flash": {},
|
||||||
|
"huggingface/Qwen/Qwen3.5-397B-A17B": {},
|
||||||
|
"openai-codex/gpt-5.3-codex": {
|
||||||
|
"alias": "codex53"
|
||||||
|
},
|
||||||
|
"google-antigravity/claude-opus-4-6-thinking": {},
|
||||||
|
"openrouter/qwen/qwen3-coder:free": {
|
||||||
|
"alias": "qwen-coder-free"
|
||||||
|
},
|
||||||
|
"openrouter/z-ai/glm-4.5-air:free": {
|
||||||
|
"alias": "glm45-free"
|
||||||
|
},
|
||||||
|
"openrouter/openai/gpt-oss-120b:free": {
|
||||||
|
"alias": "gpt-oss-free"
|
||||||
|
},
|
||||||
|
"openrouter/stepfun/step-3.5-flash:free": {
|
||||||
|
"alias": "step-free"
|
||||||
|
},
|
||||||
|
"nim/nvidia/llama-3.1-nemotron-70b-instruct": {
|
||||||
|
"alias": "nemotron-70b"
|
||||||
|
},
|
||||||
|
"nim/nvidia/nemotron-3-nano-30b-a3b": {
|
||||||
|
"alias": "nemotron-nano"
|
||||||
|
},
|
||||||
|
"nim/meta/llama-3.3-70b-instruct": {
|
||||||
|
"alias": "llama-nim"
|
||||||
|
},
|
||||||
|
"nim/qwen/qwen3-next-80b-a3b-thinking": {
|
||||||
|
"alias": "qwen3-nim"
|
||||||
|
},
|
||||||
|
"opencode/big-pickle": {
|
||||||
|
"alias": "big-pickle"
|
||||||
|
},
|
||||||
|
"groq/openai/gpt-oss-120b": {
|
||||||
|
"alias": "gpt-oss-120b"
|
||||||
|
},
|
||||||
|
"groq/moonshotai/kimi-k2-instruct-0905": {
|
||||||
|
"alias": "kimi-k2-groq"
|
||||||
|
},
|
||||||
|
"groq/llama-3.3-70b-versatile": {
|
||||||
|
"alias": "llama33-groq"
|
||||||
|
},
|
||||||
|
"groq/meta-llama/llama-4-maverick-17b-128e-instruct": {
|
||||||
|
"alias": "llama4-maverick"
|
||||||
|
},
|
||||||
|
"groq/meta-llama/llama-4-scout-17b-16e-instruct": {
|
||||||
|
"alias": "llama4-scout"
|
||||||
|
},
|
||||||
|
"groq/qwen/qwen3-32b": {
|
||||||
|
"alias": "qwen3-32b-groq"
|
||||||
|
},
|
||||||
|
"groq/openai/gpt-oss-20b": {
|
||||||
|
"alias": "gpt-oss-20b"
|
||||||
|
},
|
||||||
|
"cerebras/zai-glm-4.7": {
|
||||||
|
"alias": "glm47-cerebras"
|
||||||
|
},
|
||||||
|
"cerebras/qwen-3-235b-a22b-instruct-2507": {
|
||||||
|
"alias": "qwen3-235b-cerebras"
|
||||||
|
},
|
||||||
|
"cerebras/gpt-oss-120b": {
|
||||||
|
"alias": "gpt-oss-120b-cerebras"
|
||||||
|
},
|
||||||
|
"cerebras/llama3.1-8b": {
|
||||||
|
"alias": "llama8b-cerebras"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"workspace": "/home/openclaw/.openclaw/workspace",
|
||||||
|
"timeFormat": "12",
|
||||||
|
"memorySearch": {
|
||||||
|
"enabled": true,
|
||||||
|
"sources": [
|
||||||
|
"memory",
|
||||||
|
"sessions"
|
||||||
|
],
|
||||||
|
"provider": "openai",
|
||||||
|
"remote": {
|
||||||
|
"batch": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"store": {
|
||||||
|
"vector": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sync": {
|
||||||
|
"onSessionStart": true
|
||||||
|
},
|
||||||
|
"query": {
|
||||||
|
"hybrid": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cache": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"contextPruning": {
|
||||||
|
"mode": "cache-ttl",
|
||||||
|
"ttl": "1h"
|
||||||
|
},
|
||||||
|
"compaction": {
|
||||||
|
"mode": "safeguard",
|
||||||
|
"memoryFlush": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"elevatedDefault": "on",
|
||||||
|
"blockStreamingBreak": "message_end",
|
||||||
|
"blockStreamingChunk": {
|
||||||
|
"breakPreference": "paragraph"
|
||||||
|
},
|
||||||
|
"heartbeat": {
|
||||||
|
"every": "1h",
|
||||||
|
"model": "opencode/kimi-k2.5-free"
|
||||||
|
},
|
||||||
|
"maxConcurrent": 4,
|
||||||
|
"subagents": {
|
||||||
|
"maxConcurrent": 8
|
||||||
|
},
|
||||||
|
"sandbox": {
|
||||||
|
"mode": "off",
|
||||||
|
"workspaceAccess": "rw",
|
||||||
|
"sessionToolsVisibility": "all",
|
||||||
|
"scope": "shared",
|
||||||
|
"perSession": true,
|
||||||
|
"browser": {
|
||||||
|
"enabled": false,
|
||||||
|
"headless": true,
|
||||||
|
"enableNoVnc": true,
|
||||||
|
"allowHostControl": true,
|
||||||
|
"autoStart": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tools": {
|
||||||
|
"profile": "full",
|
||||||
|
"allow": [
|
||||||
|
"*"
|
||||||
|
],
|
||||||
|
"byProvider": {},
|
||||||
|
"web": {
|
||||||
|
"search": {
|
||||||
|
"enabled": true,
|
||||||
|
"provider": "brave",
|
||||||
|
"apiKey": "BSAxLNeAWMjDWS7853MPNaa6aA3auMQ"
|
||||||
|
},
|
||||||
|
"fetch": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"links": {
|
||||||
|
"enabled": true,
|
||||||
|
"scope": {
|
||||||
|
"default": "allow",
|
||||||
|
"rules": [
|
||||||
|
{
|
||||||
|
"action": "allow"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"models": []
|
||||||
|
},
|
||||||
|
"sessions": {
|
||||||
|
"visibility": "all"
|
||||||
|
},
|
||||||
|
"loopDetection": {
|
||||||
|
"detectors": {
|
||||||
|
"genericRepeat": true,
|
||||||
|
"knownPollNoProgress": true,
|
||||||
|
"pingPong": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"message": {
|
||||||
|
"crossContext": {
|
||||||
|
"allowWithinProvider": true,
|
||||||
|
"marker": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"broadcast": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"agentToAgent": {
|
||||||
|
"enabled": true,
|
||||||
|
"allow": [
|
||||||
|
"*"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"elevated": {
|
||||||
|
"enabled": true,
|
||||||
|
"allowFrom": {}
|
||||||
|
},
|
||||||
|
"exec": {
|
||||||
|
"host": "gateway",
|
||||||
|
"security": "full",
|
||||||
|
"ask": "off",
|
||||||
|
"notifyOnExit": true,
|
||||||
|
"applyPatch": {
|
||||||
|
"enabled": true,
|
||||||
|
"workspaceOnly": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"subagents": {
|
||||||
|
"tools": {
|
||||||
|
"allow": [],
|
||||||
|
"alsoAllow": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sandbox": {
|
||||||
|
"tools": {
|
||||||
|
"allow": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"messages": {
|
||||||
|
"ackReactionScope": "group-mentions"
|
||||||
|
},
|
||||||
|
"commands": {
|
||||||
|
"native": true,
|
||||||
|
"nativeSkills": true,
|
||||||
|
"text": false,
|
||||||
|
"bash": true,
|
||||||
|
"config": true,
|
||||||
|
"debug": true,
|
||||||
|
"restart": true,
|
||||||
|
"allowFrom": {}
|
||||||
|
},
|
||||||
|
"approvals": {
|
||||||
|
"exec": {
|
||||||
|
"enabled": false,
|
||||||
|
"mode": "targets",
|
||||||
|
"agentFilter": [
|
||||||
|
""
|
||||||
|
],
|
||||||
|
"sessionFilter": [],
|
||||||
|
"targets": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"session": {
|
||||||
|
"scope": "per-sender",
|
||||||
|
"typingMode": "thinking",
|
||||||
|
"sendPolicy": {
|
||||||
|
"default": "allow",
|
||||||
|
"rules": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hooks": {
|
||||||
|
"enabled": true,
|
||||||
|
"token": "ec571440175e3740975119ba8b6b97ba3a46b1f8e797cb924dc5c63c98050142",
|
||||||
|
"defaultSessionKey": "hook:ingress",
|
||||||
|
"allowRequestSessionKey": false,
|
||||||
|
"allowedAgentIds": [],
|
||||||
|
"gmail": {
|
||||||
|
"includeBody": true,
|
||||||
|
"allowUnsafeExternalContent": true,
|
||||||
|
"thinking": "minimal"
|
||||||
|
},
|
||||||
|
"internal": {
|
||||||
|
"enabled": true,
|
||||||
|
"entries": {
|
||||||
|
"boot-md": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"command-logger": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"bootstrap-extra-files": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"session-memory": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"web": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"channels": {
|
||||||
|
"telegram": {
|
||||||
|
"markdown": {
|
||||||
|
"tables": "code"
|
||||||
|
},
|
||||||
|
"enabled": true,
|
||||||
|
"commands": {
|
||||||
|
"native": true,
|
||||||
|
"nativeSkills": false
|
||||||
|
},
|
||||||
|
"customCommands": [],
|
||||||
|
"configWrites": true,
|
||||||
|
"dmPolicy": "pairing",
|
||||||
|
"botToken": "8598508497:AAHmTMbnR7un2ADtmsjJr8moQkDOU9ILBps",
|
||||||
|
"groupPolicy": "allowlist",
|
||||||
|
"draftChunk": {
|
||||||
|
"breakPreference": "paragraph"
|
||||||
|
},
|
||||||
|
"streamMode": "partial",
|
||||||
|
"network": {
|
||||||
|
"autoSelectFamily": true
|
||||||
|
},
|
||||||
|
"actions": {
|
||||||
|
"reactions": true,
|
||||||
|
"sendMessage": true
|
||||||
|
},
|
||||||
|
"linkPreview": true
|
||||||
|
},
|
||||||
|
"bluebubbles": {
|
||||||
|
"enabled": true,
|
||||||
|
"serverUrl": "http://anthonys-imac.kangaroo-eel.ts.net:1234",
|
||||||
|
"password": "RecOvery2026!",
|
||||||
|
"webhookPath": "/bluebubbles-webhook",
|
||||||
|
"dmPolicy": "pairing",
|
||||||
|
"groupPolicy": "allowlist"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"canvasHost": {
|
||||||
|
"enabled": true,
|
||||||
|
"liveReload": true
|
||||||
|
},
|
||||||
|
"talk": {
|
||||||
|
"apiKey": ""
|
||||||
|
},
|
||||||
|
"gateway": {
|
||||||
|
"port": 18789,
|
||||||
|
"mode": "local",
|
||||||
|
"bind": "loopback",
|
||||||
|
"controlUi": {
|
||||||
|
"allowedOrigins": [
|
||||||
|
"https://web.telegram.org",
|
||||||
|
"https://openclaw-ai.kangaroo-eel.ts.net"
|
||||||
|
],
|
||||||
|
"dangerouslyDisableDeviceAuth": true
|
||||||
|
},
|
||||||
|
"auth": {
|
||||||
|
"mode": "token",
|
||||||
|
"token": "e48f4335fff0f5254eda0e984ca79ed61d90df5d70d95165"
|
||||||
|
},
|
||||||
|
"tools": {
|
||||||
|
"allow": [
|
||||||
|
""
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"tailscale": {
|
||||||
|
"mode": "serve",
|
||||||
|
"resetOnExit": false
|
||||||
|
},
|
||||||
|
"reload": {
|
||||||
|
"mode": "hybrid"
|
||||||
|
},
|
||||||
|
"http": {
|
||||||
|
"endpoints": {
|
||||||
|
"responses": {
|
||||||
|
"enabled": true,
|
||||||
|
"files": {
|
||||||
|
"allowUrl": true
|
||||||
|
},
|
||||||
|
"images": {
|
||||||
|
"allowUrl": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nodes": {
|
||||||
|
"browser": {
|
||||||
|
"mode": "auto"
|
||||||
|
},
|
||||||
|
"denyCommands": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"backend": "builtin",
|
||||||
|
"citations": "auto"
|
||||||
|
},
|
||||||
|
"skills": {
|
||||||
|
"allowBundled": [
|
||||||
|
""
|
||||||
|
],
|
||||||
|
"install": {
|
||||||
|
"nodeManager": "npm"
|
||||||
|
},
|
||||||
|
"entries": {
|
||||||
|
"agentmail": {
|
||||||
|
"enabled": true,
|
||||||
|
"env": {
|
||||||
|
"AGENTMAIL_API_KEY": "am_us_22a6a04a84144467993d5b90be8bbd5d1482ca615a4e17561682dd3d6831f932"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"stealth-browser": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"healthcheck": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"n8n": {
|
||||||
|
"apiKey": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjNDMwMjUzNS1hNWMzLTRkZjAtODIzNi1lZmE5YmVmNTAxMjQiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzY1NTk1MzkyfQ.RrwOyN27-F3Pztxtv4IAyBt1MKKU1l5lWb6nMGpGNic"
|
||||||
|
},
|
||||||
|
"notion": {
|
||||||
|
"apiKey": "secret_WbYevYCbHRpMngedlRaVXA8rCj0nlVPefciUzr1GWna"
|
||||||
|
},
|
||||||
|
"openai-whisper-api": {
|
||||||
|
"apiKey": "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"
|
||||||
|
},
|
||||||
|
"goplaces": {
|
||||||
|
"apiKey": "AIzaSyDSxyVL5fv3RstiY3YUV76pavuhiZMMXAA"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"plugins": {
|
||||||
|
"enabled": true,
|
||||||
|
"entries": {
|
||||||
|
"telegram": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"bluebubbles": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"device-pair": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"google-antigravity-auth": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"llm-task": {
|
||||||
|
"enabled": true,
|
||||||
|
"config": {
|
||||||
|
"allowedModels": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"memory-core": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user