You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 63c34fc
Browse filesBrowse the repository at this point in the historyBrowse files
authored
Load the user skills folder and write approved skills there (#442)
* User skills folder: design note (approved skills to ~/.codec/skills, loaded)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Load the user skills folder and write approved skills there
Every skill registry reads the built-in folder (SKILLS_DIR, the repo's skills/
on this Mac) and then the user folder (USER_SKILLS_DIR, ~/.codec/skills): a
built-in name always wins, user files are never trusted by the manifest so
every load runs the AST gate, and _ files and sub-folders are skipped.
/api/skill/approve (review-and-approve, Settings > Learning) writes to the
user folder (0700 folder, 0600 file, atomic) instead of the repo's built-in
folder; the built-in-name refusal and the AST gate are unchanged. Learning's
installed check and self-improve's name scan see user skills. The suite
points CODEC_USER_SKILLS_DIR at a temp folder and no longer imports the
owner's user skills. docs/USER-SKILLS-DIR-DESIGN.md.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* docs: approved-skills folder known issue fixed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Mickael Farina <farina.mickael@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Drop a `.py` file in `~/.codec/skills/` (user) or `skills/` (built-in). Restart `codec-dashboard` and the main `open-codec` process. Hot-reload is not currently supported.
301
301
302
+
**Two folders (2026-10-07, docs/USER-SKILLS-DIR-DESIGN.md).** Every registry reads the built-in folder (`codec_config.SKILLS_DIR`, the repo's `skills/` unless `config.json:skills_dir` says otherwise) and then the user folder (`codec_config.USER_SKILLS_DIR`: `config.json:user_skills_dir`, default `~/.codec/skills`). A built-in name always wins; a user file is never trusted by the manifest, so every load runs the AST gate; files starting with `_` and sub-folders are skipped. `/api/skill/approve` (review-and-approve, Settings > Learning) writes approved skills to the user folder (0700 folder, 0600 file), never the repo. The test suite points `CODEC_USER_SKILLS_DIR` at a temp folder (tests/conftest.py).
303
+
302
304
## 5. Memory contract
303
305
304
306
Single SQLite database at `~/.codec/memory.db`. Wrapper: `codec_memory.CodecMemory`.
<pclass="push-intro">Drafted by the self-improvement run when CODEC lacked a skill. Review shows the code; Approve and install writes it to your skills folder after the safety check, and CODEC loads it after the next restart.</p>
1035
+
<pclass="push-intro">Drafted by the self-improvement run when CODEC lacked a skill. Review shows the code; Approve and install writes it to your skills folder (~/.codec/skills) after the safety check, and CODEC loads it after the next restart.</p>
document.getElementById('learnWhat').textContent='Approve and install writes '+fname+' to your skills folder after the safety check; CODEC loads it after the next restart.'+
3005
+
document.getElementById('learnWhat').textContent='Approve and install writes '+fname+' to your skills folder (~/.codec/skills) after the safety check; CODEC loads it after the next restart.'+
3006
3006
(p.truncated ? ' The code is longer than shown here.' : '');
0 commit comments