From 47d007b50b7dff7b156b344d0539c062629863cf Mon Sep 17 00:00:00 2001 From: KHA Entertaiment Date: Sat, 21 Mar 2026 21:57:31 -0700 Subject: [PATCH 1/3] docs: Add 'minimal' scope to backup command documentation Adds the missing 'minimal' scope option to SKILL.md: - Added 'minimal' to backup command scope parameter - Added 'minimal' to native-backup command scope parameter - Added scope behavior table with all four scopes and descriptions - Included minimal scope description explaining its use for checkpoint markers without duplicating data Closes #10 Co-Authored-By: Claude Opus 4.6 --- SKILL.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/SKILL.md b/SKILL.md index 27fb728..164158d 100644 --- a/SKILL.md +++ b/SKILL.md @@ -20,20 +20,24 @@ Create a backup of OpenClaw configuration. ``` **Parameters:** -- `--scope ` - Backup scope: `config`, `config+session`, `config+session+workspace` +- `--scope ` - Backup scope: `config`, `config+session`, `config+session+workspace`, `minimal` - `--source ` - Backup source: `direct` or `native` - `--reason ` - Optional reason for the backup +**Scope behavior:** + +| Scope | Description | +|-------|-------------| +| `config` | Configuration only (openclaw.json, credentials) | +| `config+session` | Configuration + sessions directory | +| `config+session+workspace` | Full backup including workspace | +| `minimal` | Minimal — smallest footprint backup with essential metadata only | + **Source behavior:** - `direct` reads OpenClaw files directly into OCBS chunk storage - `native` runs `openclaw backup create`, extracts the archive, then imports it into OCBS chunk storage - If the native CLI is unavailable, OCBS falls back to the direct source -**Scope notes:** -- `config` backs up OpenClaw configuration and credentials. -- `config+session` adds OpenClaw session state. -- `config+session+workspace` includes the full workspace. - ### restore Restore from a backup or checkpoint. @@ -121,7 +125,7 @@ Run OpenClaw native backup (tar.gz archive with manifest) via OCBS skill. ``` **Parameters:** -- `--scope ` - Backup scope: `config`, `config+session`, `config+session+workspace` +- `--scope ` - Backup scope: `config`, `config+session`, `config+session+workspace`, `minimal` - `--verify` - Verify archive after creation - `--output ` - Custom output directory (default: current directory) From 961d949ea1ec2afe559d1a8398195eede44c2b25 Mon Sep 17 00:00:00 2001 From: "coderabbitai[bot]" <136622811+coderabbitai[bot]@users.noreply.github.com> Date: Thu, 26 Mar 2026 23:52:15 +0000 Subject: [PATCH 2/3] fix: apply CodeRabbit auto-fixes Fixed 2 file(s) based on 2 unresolved review comments. Co-authored-by: CodeRabbit --- SKILL.md | 6 +++--- pyproject.toml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/SKILL.md b/SKILL.md index 164158d..a625370 100644 --- a/SKILL.md +++ b/SKILL.md @@ -31,7 +31,7 @@ Create a backup of OpenClaw configuration. | `config` | Configuration only (openclaw.json, credentials) | | `config+session` | Configuration + sessions directory | | `config+session+workspace` | Full backup including workspace | -| `minimal` | Minimal — smallest footprint backup with essential metadata only | +| `minimal` | Metadata-only checkpoint (stores backup ID, timestamp, scope, reason in SQLite; no file contents) — intended as a lightweight marker for tracking operations rather than a restorable backup | **Source behavior:** - `direct` reads OpenClaw files directly into OCBS chunk storage @@ -125,7 +125,7 @@ Run OpenClaw native backup (tar.gz archive with manifest) via OCBS skill. ``` **Parameters:** -- `--scope ` - Backup scope: `config`, `config+session`, `config+session+workspace`, `minimal` +- `--scope ` - Backup scope: `config`, `config+session`, `config+session+workspace` - `--verify` - Verify archive after creation - `--output ` - Custom output directory (default: current directory) @@ -227,4 +227,4 @@ ocbs integration setup-heartbeat --enabled --timeout 30 This was fixed in v0.1.0 with batch processing. Restore now handles large backups (13,000+ files) without hitting file descriptor limits. ### Schema mismatch -The `serve_records` table uses `checkpoint_id` (not `backup_id`) to match checkpoint table schema. +The `serve_records` table uses `checkpoint_id` (not `backup_id`) to match checkpoint table schema. \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index c64cdb8..d7aa674 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ dependencies = [ ] [project.optional-dependencies] -clawhub = "clawhub>=0.1.0" +clawhub = ["clawhub>=0.1.0"] [project.scripts] ocbs = "ocbs.cli:main" @@ -32,4 +32,4 @@ dev = [ [tool.pytest.ini_options] testpaths = ["tests"] -python_files = ["test_*.py"] +python_files = ["test_*.py"] \ No newline at end of file From 71bbbb4f85325c966df22dbd79b1306bb4124dd7 Mon Sep 17 00:00:00 2001 From: Billy Brenner <43256680+KHAEntertainment@users.noreply.github.com> Date: Thu, 26 Mar 2026 16:59:35 -0700 Subject: [PATCH 3/3] Update pyproject.toml Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index d7aa674..96e85bf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -32,4 +32,4 @@ dev = [ [tool.pytest.ini_options] testpaths = ["tests"] -python_files = ["test_*.py"] \ No newline at end of file +python_files = ["test_*.py"]