docs: preserve us-cpa workspace virtualenv on sync

This commit is contained in:
Stefano Fiorini
2026-03-15 04:05:29 -05:00
parent 31ed267027
commit 12838f7449
3 changed files with 8 additions and 2 deletions

View File

@@ -26,7 +26,7 @@ To install the skill for OpenClaw itself, copy the repo skill into the workspace
1. Sync the repo copy into the workspace: 1. Sync the repo copy into the workspace:
```bash ```bash
rsync -a --delete \ rsync -a --delete --exclude '.venv' \
~/.openclaw/workspace/projects/stef-openclaw-skills/skills/us-cpa/ \ ~/.openclaw/workspace/projects/stef-openclaw-skills/skills/us-cpa/ \
~/.openclaw/workspace/skills/us-cpa/ ~/.openclaw/workspace/skills/us-cpa/
``` ```
@@ -50,6 +50,8 @@ python3 -m pip install -e '.[dev]'
The wrapper prefers `.venv/bin/python` inside the skill directory when present, so OpenClaw can run the workspace copy without relying on global Python packages. The wrapper prefers `.venv/bin/python` inside the skill directory when present, so OpenClaw can run the workspace copy without relying on global Python packages.
Keep the `--exclude '.venv'` flag on future syncs, otherwise `rsync --delete` will remove the workspace virtualenv.
## Current Milestone ## Current Milestone
Current implementation now includes: Current implementation now includes:

View File

@@ -19,7 +19,7 @@ Install the skill into the OpenClaw workspace copy, not only in the repo checkou
1. Sync the skill into the workspace: 1. Sync the skill into the workspace:
```bash ```bash
rsync -a --delete \ rsync -a --delete --exclude '.venv' \
~/.openclaw/workspace/projects/stef-openclaw-skills/skills/us-cpa/ \ ~/.openclaw/workspace/projects/stef-openclaw-skills/skills/us-cpa/ \
~/.openclaw/workspace/skills/us-cpa/ ~/.openclaw/workspace/skills/us-cpa/
``` ```
@@ -43,6 +43,8 @@ python3 -m pip install -e '.[dev]'
The wrapper now prefers `~/.openclaw/workspace/skills/us-cpa/.venv/bin/python` when present and falls back to `python3` otherwise. The wrapper now prefers `~/.openclaw/workspace/skills/us-cpa/.venv/bin/python` when present and falls back to `python3` otherwise.
Keep the `--exclude '.venv'` flag on future syncs, otherwise the workspace virtualenv will be deleted by `rsync --delete`.
## Run ## Run
Installed entry point: Installed entry point:

View File

@@ -52,11 +52,13 @@ class UsCpaCliSmokeTests(unittest.TestCase):
self.assertIn(".venv/bin/python", readme) self.assertIn(".venv/bin/python", readme)
self.assertIn("python3 -m ensurepip --upgrade", readme) self.assertIn("python3 -m ensurepip --upgrade", readme)
self.assertIn("python3 -m pip install --upgrade pip setuptools wheel", readme) self.assertIn("python3 -m pip install --upgrade pip setuptools wheel", readme)
self.assertIn("--exclude '.venv'", readme)
self.assertNotIn("/Users/stefano/", readme) self.assertNotIn("/Users/stefano/", readme)
self.assertIn("OpenClaw installation", operator_doc) self.assertIn("OpenClaw installation", operator_doc)
self.assertIn("rsync -a --delete", operator_doc) self.assertIn("rsync -a --delete", operator_doc)
self.assertIn("python3 -m ensurepip --upgrade", operator_doc) self.assertIn("python3 -m ensurepip --upgrade", operator_doc)
self.assertIn("python3 -m pip install --upgrade pip setuptools wheel", operator_doc) self.assertIn("python3 -m pip install --upgrade pip setuptools wheel", operator_doc)
self.assertIn("--exclude '.venv'", operator_doc)
self.assertIn("~/", operator_doc) self.assertIn("~/", operator_doc)
self.assertNotIn("/Users/stefano/", operator_doc) self.assertNotIn("/Users/stefano/", operator_doc)
self.assertIn("~/.openclaw/workspace/skills/us-cpa/scripts/us-cpa", skill_doc) self.assertIn("~/.openclaw/workspace/skills/us-cpa/scripts/us-cpa", skill_doc)