Skip to content

chore(release): config merging#26

Merged
nejcm merged 19 commits into
masterfrom
develop
May 11, 2026
Merged

chore(release): config merging#26
nejcm merged 19 commits into
masterfrom
develop

Conversation

@nejcm
Copy link
Copy Markdown
Owner

@nejcm nejcm commented May 11, 2026

No description provided.

nejcm added 19 commits May 3, 2026 17:34
Introduces extensions.yaml config concept: per-platform installable
extensions executed via a package runner (npx/bunx). Mirrors the
skills.yaml shape so users get consistent autocomplete and merge
semantics. Adds optional 'runner' field to config.yaml.

Phase 1 of larger feature; install-pipeline wiring follows.
Loads extensions.yaml (with preset merge), resolves a runner via
precedence (--runner flag > config.yaml runner > auto-detect bunx
or npx), and runs each entry after files/plugins/skills for its
platform. Failures warn-and-continue, mirroring the existing skills
behavior. Adds --runner and --no-extensions flags to ulis install.

Phase 2 of larger feature; init scaffolding + schema gen follow.
…nd reference generators

ulis init now writes a stub extensions.yaml alongside skills.yaml/etc.
Both gen:schemas and gen:reference pick up the new schema so VS Code
autocomplete and docs/REFERENCE.md stay current.

Phase 3 of larger feature; TUI count + docs follow.
…count to TUI validate

- README: extensions section with runner precedence and skip flag
- docs/SPEC.md: schema, install-order semantics, third file alongside
  plugins.yaml/skills.yaml in section 3.4
- docs/CLI.md: --runner and --no-extensions flags in install
- src/tui/actions.ts: TUI validate summary now reports extension count

Phase 4 of larger feature; integration tests + verification follow.
…lding

- resolveRunner: flag wins, then config, then bunx auto-detect with npx fallback
- runInstall: installExtensions:false short-circuits before any 'Will run' log
- initCmd: assert extensions.yaml is scaffolded with the expected stub

Phase 5 of larger feature; full lint+test+build pass (257 tests).
Only Claude consumed plugins config and the multi-platform schema buckets
were dead code. Removing the feature entirely until there's a real need.

- Delete plugins schema, parser, scaffold template, fixtures, example
- Remove PluginsConfig from ParsedProject, ProjectBundle, install context
- Strip enabledPlugins / extraKnownMarketplaces from claude settings.json
- Remove installClaudePlugins from install pipeline
- Drop plugins.yaml from init scaffolding
- Update REFERENCE/SPEC/README/CLI/guides accordingly
@nejcm nejcm self-assigned this May 11, 2026
@nejcm nejcm merged commit 9a6dfff into master May 11, 2026
1 check passed
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.

1 participant