Skip to content

♻️ [refactor] install: shared .agents/ folder with per-host links - #71

Merged
EricTechPro merged 1 commit into
mainfrom
refactor/install-shared-agents
Oct 19, 2026
Merged

EricTechPro merged 1 commit into
mainfrom
refactor/install-shared-agents

Conversation

@EricTechPro

Copy link
Copy Markdown
Owner

Note

⏳ In review · round 1 · ✅ 6/6 AC · Closes #41 · head e7914f3

Problem

Solution

  • Files install once under .agents/ (skills/, bin/, workflows/, hooks/)
  • .claude/ always links in: one relative link per skill, one per file, so user files in bin/ or hooks/ stay
  • .codex/ / .opencode/ are linked only when that folder exists, a config host key or super-board-host.sh names it, or --hosts claude,codex,opencode (--hosts=… through get.sh) asks; unknown names exit 64 (Eric's decision, recorded on ♻️ [refactor] install: shared .agents/ folder with per-host links #41)
  • Upgrade: super-board's own real .claude/ entries become links; VERSION is read from .agents/ or the old .claude/ copy, so upgrade.json is recorded as before
  • A user's own link (elsewhere, dangling, misnamed, self-vendored) keeps the old write-through behaviour and its guards; a host folder already linked into .agents/ is left alone
  • No symlinks (e.g. Windows without symlink rights): the entry is copied and the grouped line says so
  • CLAUDE.md install contract and get.sh help updated

Acceptance criteria

  • Fresh install writes files under .agents/; .claude/ resolves skills/super-board/SKILL.md and bin/super-board-host.sh there; no .codex/ or .opencode/
    ↳ tests/test-install.sh scenario 13
  • --hosts or an existing .codex/ / .opencode/ / config host / Codex shell gives that host the same links; unknown host refused
    ↳ scenarios 14, 15
  • Upgrading a real-directory .claude/ install keeps every path resolving, leaves other-skill and user bin/hooks untouched, records upgrade.json
    ↳ scenarios 16, 12
  • Second run changes nothing; symlinked-skill and self-vendored cases still pass
    ↳ scenarios 17, 18, 2–4e
  • No symlinks: copies instead, every host path resolves
    ↳ scenario 19 (fake failing ln), test-get.sh case 9
  • bash tests/run-safety.sh passes
    ↳ 59/59 on python 3.9 and 3.12 (macOS)

Iteration history

Lane Done Time Details
🔨 builder ✅ Oct 19 e7914f3

Risk

🟡 Medium · changes every install's layout; old .claude/ paths keep resolving through links, and settings/run state do not move.

🤖 Generated with Claude Code

- Files install once under .agents/ (skills, bin, workflows, hooks)
- .claude/ always links in: one link per skill, one per file
- .codex/ and .opencode/ only when the folder exists, a config host key or super-board-host.sh names it, or --hosts asks
- Upgrade swaps super-board's own real .claude/ entries for links; user links and other files stay
- No symlinks (Windows): copies instead and says so
- Tests: fresh layout, --hosts, detection, upgrade, idempotent rerun, whole-folder links, no-ln fallback

Closes #41

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@qodo-code-review

Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@EricTechPro
EricTechPro merged commit f181359 into main Oct 19, 2026
13 checks passed
@EricTechPro
EricTechPro deleted the refactor/install-shared-agents branch October 19, 2026 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

♻️ [refactor] install: shared .agents/ folder with per-host links

1 participant