Consolidate copies: single source of truth in ~/.avault/avault #13

Open
opened 2026-02-27 14:07:33 +00:00 by nazim · 0 comments
Owner

Problem

avault code currently exists in 3 places:

  1. Forgejo repo nazim/avault (source of truth)
  2. ~/clawd/scripts/avault.py (deployed, symlinked to /usr/local/bin)
  3. ~/clawd/skills/avault/scripts/avault.py (skill copy)

These drift over time. The JS version was already divergent and got removed.

After install script (#10) is done

  1. Repo clones to ~/.avault/avault/
  2. avault symlinks to ~/.avault/avault/scripts/avault.py
  3. Remove ~/clawd/scripts/avault.py (it was a copy)
  4. Skill at ~/clawd/skills/avault/ becomes a thin pointer: SKILL.md references ~/.avault/avault/ for scripts and docs instead of bundling copies
  5. vault_helper.py stays in ~/clawd/scripts/ (it is workspace-specific glue, not part of avault itself)

Depends on

  • #10 (install script)

Acceptance criteria

  • Only one copy of avault.py on disk (in ~/.avault/avault/)
  • Skill SKILL.md points to installed location, does not bundle code
  • Update = cd ~/.avault/avault && git pull
## Problem avault code currently exists in 3 places: 1. **Forgejo repo** `nazim/avault` (source of truth) 2. **`~/clawd/scripts/avault.py`** (deployed, symlinked to /usr/local/bin) 3. **`~/clawd/skills/avault/scripts/avault.py`** (skill copy) These drift over time. The JS version was already divergent and got removed. ## After install script (#10) is done 1. Repo clones to `~/.avault/avault/` 2. `avault` symlinks to `~/.avault/avault/scripts/avault.py` 3. Remove `~/clawd/scripts/avault.py` (it was a copy) 4. Skill at `~/clawd/skills/avault/` becomes a thin pointer: SKILL.md references `~/.avault/avault/` for scripts and docs instead of bundling copies 5. `vault_helper.py` stays in `~/clawd/scripts/` (it is workspace-specific glue, not part of avault itself) ## Depends on - #10 (install script) ## Acceptance criteria - [ ] Only one copy of avault.py on disk (in `~/.avault/avault/`) - [ ] Skill SKILL.md points to installed location, does not bundle code - [ ] Update = `cd ~/.avault/avault && git pull`
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nazim/avault#13
No description provided.