This repository has been archived on 2026-07-19 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
737307d5a49c5ca8179b5c5c6b1a0a02a6a5d225
/opt/data on shira-hermes is now a Docker named volume on both dev and prod (added 2026-04-27 so learned skills/profiles/cases survive redeploys). Named volumes copy image content only on FIRST creation — after that the volume is opaque to image updates. So a new entry added to config/skills/ in the repo would never reach an instance that already has a populated volume. Fix: at FastAPI startup, walk /app/config/skills/ (baked into the image, outside the volume mount) and copy any directory whose name does not yet exist under /opt/data/skills/. Skills already present — whether learned by the model, edited by a user, or seeded earlier — are never touched. - skills.py: BAKED_SKILLS_DIR derived from __file__ so it stays correct regardless of WORKDIR; seed_skills_from_image() returns (added, skipped) - main.py: call after ensure_data_dirs() and log the result - Verified with a unit fixture: 2 new baked skills copied, 1 pre-existing skill with custom content left untouched Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
Archived from gitea.marcus1.com
Releases
1
Languages
Python
96.3%
PLpgSQL
3.5%
Dockerfile
0.2%