feat: add loki-skills pre-install to all packs#66
Conversation
- pi: ${HOME}/.pi/agent/skills (per-agent reference)
- kiro-cli: ${HOME}/.kiro/skills (per-agent)
- ironclaw: ${HOME}/.ironclaw/skills (per-agent)
- hermes, codex-cli, claude-code: ${HOME}/.local/share/lowkey/skills (shared cache)
Each pack uses ensure_skills_clone() helper from packs/common.sh.
Non-fatal (warn mode, || true) per-pack preference.
Skills are now universally pre-deployed on install for all agents.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f5a43fb6da
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| # ── Install loki-skills library ─────────────────────────────────────────────── | ||
| # Best-effort: pre-install skills (shared or pack-specific). | ||
| PACK_SKILLS_DIR="${HOME}/.local/share/lowkey/skills" | ||
| ensure_skills_clone "${PACK_SKILLS_DIR}" || true |
There was a problem hiding this comment.
Implement ensure_skills_clone before invoking it
The new skills bootstrap path is currently a no-op because ensure_skills_clone is invoked but never defined anywhere in the repository (I checked packs/common.sh and repo-wide rg), so this line resolves to command not found at runtime. Because it is wrapped in || true, each installer silently continues and then logs a false success message (Skills installed...) even though no clone occurred. This breaks the feature introduced by this commit across all updated pack installers that use the same call pattern.
Useful? React with 👍 / 👎.
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f5a43fb6da
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| # ── Install loki-skills library ─────────────────────────────────────────────── | ||
| # Best-effort: pre-install skills (shared or pack-specific). | ||
| PACK_SKILLS_DIR="${HOME}/.local/share/lowkey/skills" | ||
| ensure_skills_clone "${PACK_SKILLS_DIR}" || true |
There was a problem hiding this comment.
Define ensure_skills_clone before using it
This commit adds ensure_skills_clone calls in six pack installers, but there is no ensure_skills_clone function or executable anywhere in the repo (including packs/common.sh, which these scripts source). At runtime this line emits command not found; because it is wrapped in || true, the install appears to continue while silently skipping the intended skills bootstrap, so the new feature does not work in any of the touched packs.
Useful? React with 👍 / 👎.
Codex P1: PR #66 calls ensure_skills_clone() in all pack installers but the function was never defined in packs/common.sh, causing 'command not found' silently wrapped in || true. This adds the helper with: - Git availability check (skips gracefully if missing) - Update existing repo (same origin fetch + checkout) - Partial dir recovery (move aside + fresh clone) - Shallow clone (--depth 1 to minimize bandwidth) - Non-fatal error handling (warn mode default, fail mode optional) All pack installers can now properly clone loki-skills on bootstrap. Co-authored-by: Roy Osherove <575051+royosherove@users.noreply.github.com>
PR #66+#67 shipped with incorrect skills directory paths for several packs. This correction PR aligns all pack install scripts with official documentation verified via Tavily web search (2026-05-18). **Changes:** packs/pi/install.sh: - pi/agent/skills/ → pi/agent/extensions/ - Pi loads TypeScript extensions from extensions/, not direct skills packs/hermes/install.sh: - ~/.local/share/lowkey/skills → ~/.hermes/skills/ - Hermes auto-discovers from ~/.hermes/skills/ with slash-command triggers packs/codex-cli/install.sh: - ~/.local/share/lowkey/skills → ~/.codex/skills/ - Codex auto-discovers SKILL.md files from ~/.codex/skills/ on startup - Invoke with $<skill-name> packs/claude-code/install.sh: - ~/.local/share/lowkey/skills → ~/.claude/skills/ - Claude Code auto-discovers SKILL.md from ~/.claude/skills/ - Invoke with / prefix + always-on context via CLAUDE.md packs/ironclaw/install.sh: - Remove skills pre-install (MCP-native only) - IronClaw extends via MCP servers, not local skills - Reference docs: BOOTSTRAP-MCPORTER.md **Verified paths (per official docs):** - openclaw: ~/.openclaw/workspace/skills/ ✅ (unchanged) - pi: ~/.pi/agent/extensions/ (was skills/) - hermes: ~/.hermes/skills/ (was shared cache) - codex-cli: ~/.codex/skills/ (was shared cache) - claude-code: ~/.claude/skills/ (was shared cache) - ironclaw: MCP only (removed pre-install) - kiro-cli: MCP servers (deferred for Phase 3) - nemoclaw: inherits openclaw pattern **Testing:** - All 6 affected pack install.sh scripts validated - ensure_skills_clone() helper still works with new paths - Non-fatal error handling preserved Fixes: PR #66+#67 path mismatch
* fix: add missing ensure_skills_clone helper function Codex P1: PR #66 calls ensure_skills_clone() in all pack installers but the function was never defined in packs/common.sh, causing 'command not found' silently wrapped in || true. This adds the helper with: - Git availability check (skips gracefully if missing) - Update existing repo (same origin fetch + checkout) - Partial dir recovery (move aside + fresh clone) - Shallow clone (--depth 1 to minimize bandwidth) - Non-fatal error handling (warn mode default, fail mode optional) All pack installers can now properly clone loki-skills on bootstrap. * fix: correct skills paths for all packs per official documentation PR #66+#67 shipped with incorrect skills directory paths for several packs. This correction PR aligns all pack install scripts with official documentation verified via Tavily web search (2026-05-18). **Changes:** packs/pi/install.sh: - pi/agent/skills/ → pi/agent/extensions/ - Pi loads TypeScript extensions from extensions/, not direct skills packs/hermes/install.sh: - ~/.local/share/lowkey/skills → ~/.hermes/skills/ - Hermes auto-discovers from ~/.hermes/skills/ with slash-command triggers packs/codex-cli/install.sh: - ~/.local/share/lowkey/skills → ~/.codex/skills/ - Codex auto-discovers SKILL.md files from ~/.codex/skills/ on startup - Invoke with $<skill-name> packs/claude-code/install.sh: - ~/.local/share/lowkey/skills → ~/.claude/skills/ - Claude Code auto-discovers SKILL.md from ~/.claude/skills/ - Invoke with / prefix + always-on context via CLAUDE.md packs/ironclaw/install.sh: - Remove skills pre-install (MCP-native only) - IronClaw extends via MCP servers, not local skills - Reference docs: BOOTSTRAP-MCPORTER.md **Verified paths (per official docs):** - openclaw: ~/.openclaw/workspace/skills/ ✅ (unchanged) - pi: ~/.pi/agent/extensions/ (was skills/) - hermes: ~/.hermes/skills/ (was shared cache) - codex-cli: ~/.codex/skills/ (was shared cache) - claude-code: ~/.claude/skills/ (was shared cache) - ironclaw: MCP only (removed pre-install) - kiro-cli: MCP servers (deferred for Phase 3) - nemoclaw: inherits openclaw pattern **Testing:** - All 6 affected pack install.sh scripts validated - ensure_skills_clone() helper still works with new paths - Non-fatal error handling preserved Fixes: PR #66+#67 path mismatch --------- Co-authored-by: Roy Osherove <575051+royosherove@users.noreply.github.com>
Adds universal skills library pre-deployment across all lowkey packs on bootstrap.
Changes per Pack
~/.pi/agent/skills~/.kiro/skills~/.ironclaw/skills~/.local/share/lowkey/skills~/.local/share/lowkey/skills~/.local/share/lowkey/skillsImplementation Details
ensure_skills_clone()helper frompacks/common.sh|| true) — clone failures don't block pack install~/.local/share/lowkey/skills) reduces disk/network for transient agentsTesting
All packs should complete install successfully even if loki-skills repo is unreachable or git is missing. Agents can still run without skills (best-effort contract).