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
fix: bundle skills, dbt-tools, and altimate-setup in shipped npm binary (#316)
* fix: bundle skills, dbt-tools, and `altimate-setup` in shipped npm binary
Skills, `altimate-setup`, and `@altimateai/dbt-tools` were missing from the
shipped npm binary — causing 100% skill unavailability on Homebrew/AUR/Docker
and `altimate-dbt` not found for all npm users.
Changes:
- Embed skills in binary at build time via `OPENCODE_BUILTIN_SKILLS` define
(mirrors existing `OPENCODE_MIGRATIONS` pattern), with filesystem-first
fallback to preserve `@references` resolution for npm users
- Move `altimate-setup` from `packages/opencode/.opencode/skills/` to root
`.opencode/skills/` (consolidate split-brain)
- Bundle dbt-tools binary+dist in npm package via shared `copyAssets()` in
`publish.ts`, with postinstall symlinking and Windows `.cmd` shim
- Export `ALTIMATE_BIN_DIR` from both `bin/altimate` and `bin/altimate-code`
wrappers; prepend to PATH in `bash.ts` for agent tool discovery
- Handle `builtin:` location prefix in skill tool to avoid `Ripgrep.files()`
and `pathToFileURL()` crashes on synthetic paths
- Add dbt-tools build step to `release.yml` publish job
- Add 10 bundle-completeness assertions in `build-integrity.test.ts`
Closes#315
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: address CodeRabbit review findings
- Fail-fast on zero embedded skills in release builds (`Script.release` guard)
- Surface `altimate-dbt` setup failures with `console.warn` instead of
silently swallowing errors
- Use exact PATH-segment matching (`split(sep).some(e => e === binDir)`)
instead of substring `includes()` to avoid false-positive dedup
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: avoid empty PATH segment when PATH is unset
When `basePath` is empty, `${binDir}${sep}${basePath}` produces a trailing
separator that makes cwd searchable on POSIX — a subtle security risk.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0 commit comments