Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .changeset/cli-readme-toolbox.md

This file was deleted.

8 changes: 0 additions & 8 deletions .changeset/clibuddy-drop-muted.md

This file was deleted.

13 changes: 0 additions & 13 deletions .changeset/rrlab-cli-decoupling.md

This file was deleted.

13 changes: 13 additions & 0 deletions run-run/biome-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# @rrlab/biome-plugin

## 1.1.1

### Patch Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Decouple the CLI into framework-agnostic layers and redesign the help surface.

Every command body becomes a free-function action (`src/actions/*`) that takes a single `<Name>ActionConfig` object; commander commands are thin wrappers that resolve their service via the `ctx.plugins` facade (throwing `MissingPluginError` when no configured plugin provides the capability) and delegate to exactly one action. Actions depend only on `services`/`render`/`lib`, never on the CLI framework. The plugin SDK moves to `src/lib/plugin/*`, ad-hoc errors become domain error classes (`src/errors/*` for kernel errors, `src/lib/plugin/errors.ts` for SDK errors), and a plugin's `ui` label is now derived from a single `color` function it provides — plugins no longer hard-code their own `ui` string. The `plugins` command monolith is split into `actions/plugins/*`, and the official plugin list is reshaped into `src/lib/plugin/directory.ts` (`PLUGINS_DIRECTORY` + `allPluginNames`/`isPluginName`).

The help surface is rebuilt on commander's native formatter instead of a bespoke help class: the root program is a `RunRunCmd` subclass that groups commands (`Code quality:` / `Build:` / `Maintenance:` / `Meta:`) and attaches a banner and an installed/available plugins footer via `addHelpText`. Unknown commands now use commander's native `showSuggestionAfterError` "Did you mean?" output. `--about` credits, per-command `Powered by:` / `See also:` lines (auto-derived from each command's declared capabilities by the `Cmd` base class in `src/program/base.ts`), the installed/available plugins footer (`render/footer.ts`), a `rr config` plugins table (package + version), and a small table/line builder (`render/lines.ts`) round out the rendering layer.

- Updated dependencies [[`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50)]:
- @vlandoss/clibuddy@0.7.1

## 1.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion run-run/biome-plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rrlab/biome-plugin",
"version": "1.1.0",
"version": "1.1.1",
"description": "Biome plugin for @rrlab/cli — provides lint, format, and jsc capabilities.",
"homepage": "https://github.com/variableland/dx/tree/main/run-run/biome-plugin#readme",
"bugs": {
Expand Down
19 changes: 19 additions & 0 deletions run-run/cli/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# @rrlab/cli

## 1.2.0

### Minor Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Decouple the CLI into framework-agnostic layers and redesign the help surface.

Every command body becomes a free-function action (`src/actions/*`) that takes a single `<Name>ActionConfig` object; commander commands are thin wrappers that resolve their service via the `ctx.plugins` facade (throwing `MissingPluginError` when no configured plugin provides the capability) and delegate to exactly one action. Actions depend only on `services`/`render`/`lib`, never on the CLI framework. The plugin SDK moves to `src/lib/plugin/*`, ad-hoc errors become domain error classes (`src/errors/*` for kernel errors, `src/lib/plugin/errors.ts` for SDK errors), and a plugin's `ui` label is now derived from a single `color` function it provides — plugins no longer hard-code their own `ui` string. The `plugins` command monolith is split into `actions/plugins/*`, and the official plugin list is reshaped into `src/lib/plugin/directory.ts` (`PLUGINS_DIRECTORY` + `allPluginNames`/`isPluginName`).

The help surface is rebuilt on commander's native formatter instead of a bespoke help class: the root program is a `RunRunCmd` subclass that groups commands (`Code quality:` / `Build:` / `Maintenance:` / `Meta:`) and attaches a banner and an installed/available plugins footer via `addHelpText`. Unknown commands now use commander's native `showSuggestionAfterError` "Did you mean?" output. `--about` credits, per-command `Powered by:` / `See also:` lines (auto-derived from each command's declared capabilities by the `Cmd` base class in `src/program/base.ts`), the installed/available plugins footer (`render/footer.ts`), a `rr config` plugins table (package + version), and a small table/line builder (`render/lines.ts`) round out the rendering layer.

### Patch Changes

- [#237](https://github.com/variableland/dx/pull/237) [`b761f03`](https://github.com/variableland/dx/commit/b761f037024ec1e9aa09d8efff334409d9098839) Thanks [@rqbazan](https://github.com/rqbazan)! - Refresh the README for the microkernel model.

Drop the stale, hand-maintained `Toolbox` section (it still listed `rimraf`, which isn't a plugin) and fold the tool list into the `Plugins` section as the single source of truth. The official plugins are now named there — `biome`, `oxc`, `ts`, `tsdown` — each linked to the tool it wraps, framed as capabilities added via plugins rather than a flat bag of tools.

- Updated dependencies [[`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50)]:
- @vlandoss/clibuddy@0.7.1

## 1.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion run-run/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rrlab/cli",
"version": "1.1.0",
"version": "1.2.0",
"description": "The CLI toolbox to fullstack common scripts in Variable Land",
"homepage": "https://github.com/variableland/dx/tree/main/run-run/cli#readme",
"bugs": {
Expand Down
13 changes: 13 additions & 0 deletions run-run/oxc-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# @rrlab/oxc-plugin

## 1.1.1

### Patch Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Decouple the CLI into framework-agnostic layers and redesign the help surface.

Every command body becomes a free-function action (`src/actions/*`) that takes a single `<Name>ActionConfig` object; commander commands are thin wrappers that resolve their service via the `ctx.plugins` facade (throwing `MissingPluginError` when no configured plugin provides the capability) and delegate to exactly one action. Actions depend only on `services`/`render`/`lib`, never on the CLI framework. The plugin SDK moves to `src/lib/plugin/*`, ad-hoc errors become domain error classes (`src/errors/*` for kernel errors, `src/lib/plugin/errors.ts` for SDK errors), and a plugin's `ui` label is now derived from a single `color` function it provides — plugins no longer hard-code their own `ui` string. The `plugins` command monolith is split into `actions/plugins/*`, and the official plugin list is reshaped into `src/lib/plugin/directory.ts` (`PLUGINS_DIRECTORY` + `allPluginNames`/`isPluginName`).

The help surface is rebuilt on commander's native formatter instead of a bespoke help class: the root program is a `RunRunCmd` subclass that groups commands (`Code quality:` / `Build:` / `Maintenance:` / `Meta:`) and attaches a banner and an installed/available plugins footer via `addHelpText`. Unknown commands now use commander's native `showSuggestionAfterError` "Did you mean?" output. `--about` credits, per-command `Powered by:` / `See also:` lines (auto-derived from each command's declared capabilities by the `Cmd` base class in `src/program/base.ts`), the installed/available plugins footer (`render/footer.ts`), a `rr config` plugins table (package + version), and a small table/line builder (`render/lines.ts`) round out the rendering layer.

- Updated dependencies [[`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50)]:
- @vlandoss/clibuddy@0.7.1

## 1.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion run-run/oxc-plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rrlab/oxc-plugin",
"version": "1.1.0",
"version": "1.1.1",
"description": "oxc plugin for @rrlab/cli — provides lint (oxlint) and format (oxfmt) capabilities.",
"homepage": "https://github.com/variableland/dx/tree/main/run-run/oxc-plugin#readme",
"bugs": {
Expand Down
13 changes: 13 additions & 0 deletions run-run/ts-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# @rrlab/ts-plugin

## 1.1.1

### Patch Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Decouple the CLI into framework-agnostic layers and redesign the help surface.

Every command body becomes a free-function action (`src/actions/*`) that takes a single `<Name>ActionConfig` object; commander commands are thin wrappers that resolve their service via the `ctx.plugins` facade (throwing `MissingPluginError` when no configured plugin provides the capability) and delegate to exactly one action. Actions depend only on `services`/`render`/`lib`, never on the CLI framework. The plugin SDK moves to `src/lib/plugin/*`, ad-hoc errors become domain error classes (`src/errors/*` for kernel errors, `src/lib/plugin/errors.ts` for SDK errors), and a plugin's `ui` label is now derived from a single `color` function it provides — plugins no longer hard-code their own `ui` string. The `plugins` command monolith is split into `actions/plugins/*`, and the official plugin list is reshaped into `src/lib/plugin/directory.ts` (`PLUGINS_DIRECTORY` + `allPluginNames`/`isPluginName`).

The help surface is rebuilt on commander's native formatter instead of a bespoke help class: the root program is a `RunRunCmd` subclass that groups commands (`Code quality:` / `Build:` / `Maintenance:` / `Meta:`) and attaches a banner and an installed/available plugins footer via `addHelpText`. Unknown commands now use commander's native `showSuggestionAfterError` "Did you mean?" output. `--about` credits, per-command `Powered by:` / `See also:` lines (auto-derived from each command's declared capabilities by the `Cmd` base class in `src/program/base.ts`), the installed/available plugins footer (`render/footer.ts`), a `rr config` plugins table (package + version), and a small table/line builder (`render/lines.ts`) round out the rendering layer.

- Updated dependencies [[`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50)]:
- @vlandoss/clibuddy@0.7.1

## 1.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion run-run/ts-plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rrlab/ts-plugin",
"version": "1.1.0",
"version": "1.1.1",
"description": "TypeScript plugin for @rrlab/cli — provides the tsc capability.",
"homepage": "https://github.com/variableland/dx/tree/main/run-run/ts-plugin#readme",
"bugs": {
Expand Down
13 changes: 13 additions & 0 deletions run-run/tsdown-plugin/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# @rrlab/tsdown-plugin

## 1.1.1

### Patch Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Decouple the CLI into framework-agnostic layers and redesign the help surface.

Every command body becomes a free-function action (`src/actions/*`) that takes a single `<Name>ActionConfig` object; commander commands are thin wrappers that resolve their service via the `ctx.plugins` facade (throwing `MissingPluginError` when no configured plugin provides the capability) and delegate to exactly one action. Actions depend only on `services`/`render`/`lib`, never on the CLI framework. The plugin SDK moves to `src/lib/plugin/*`, ad-hoc errors become domain error classes (`src/errors/*` for kernel errors, `src/lib/plugin/errors.ts` for SDK errors), and a plugin's `ui` label is now derived from a single `color` function it provides — plugins no longer hard-code their own `ui` string. The `plugins` command monolith is split into `actions/plugins/*`, and the official plugin list is reshaped into `src/lib/plugin/directory.ts` (`PLUGINS_DIRECTORY` + `allPluginNames`/`isPluginName`).

The help surface is rebuilt on commander's native formatter instead of a bespoke help class: the root program is a `RunRunCmd` subclass that groups commands (`Code quality:` / `Build:` / `Maintenance:` / `Meta:`) and attaches a banner and an installed/available plugins footer via `addHelpText`. Unknown commands now use commander's native `showSuggestionAfterError` "Did you mean?" output. `--about` credits, per-command `Powered by:` / `See also:` lines (auto-derived from each command's declared capabilities by the `Cmd` base class in `src/program/base.ts`), the installed/available plugins footer (`render/footer.ts`), a `rr config` plugins table (package + version), and a small table/line builder (`render/lines.ts`) round out the rendering layer.

- Updated dependencies [[`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50)]:
- @vlandoss/clibuddy@0.7.1

## 1.1.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion run-run/tsdown-plugin/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rrlab/tsdown-plugin",
"version": "1.1.0",
"version": "1.1.1",
"description": "tsdown plugin for @rrlab/cli — provides the pack capability for building TS libraries.",
"homepage": "https://github.com/variableland/dx/tree/main/run-run/tsdown-plugin#readme",
"bugs": {
Expand Down
8 changes: 8 additions & 0 deletions shared/clibuddy/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# @vlandoss/clibuddy

## 0.7.1

### Patch Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Drop the `muted` token from `palette` and route its callers through `palette.dim`.

`muted` (a fixed `#a8afb5` gray) overlapped with `dim` for the secondary-text role it was used in (`$` command prefix, `v<version>`, the `vland init` "Next steps" / source path). Consolidating on `dim` keeps a single secondary tone and lets it follow the terminal's dim attribute. `@vlandoss/vland`'s banner, `--usage` hint, and `init` output move to `dim` accordingly.

## 0.7.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion shared/clibuddy/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@vlandoss/clibuddy",
"version": "0.7.0",
"version": "0.7.1",
"description": "A helper library to create CLIs in Variable Land",
"homepage": "https://github.com/variableland/dx/tree/main/shared/clibuddy#readme",
"bugs": {
Expand Down
11 changes: 11 additions & 0 deletions vland/cli/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# @vlandoss/vland

## 0.3.2

### Patch Changes

- [#235](https://github.com/variableland/dx/pull/235) [`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50) Thanks [@rqbazan](https://github.com/rqbazan)! - Drop the `muted` token from `palette` and route its callers through `palette.dim`.

`muted` (a fixed `#a8afb5` gray) overlapped with `dim` for the secondary-text role it was used in (`$` command prefix, `v<version>`, the `vland init` "Next steps" / source path). Consolidating on `dim` keeps a single secondary tone and lets it follow the terminal's dim attribute. `@vlandoss/vland`'s banner, `--usage` hint, and `init` output move to `dim` accordingly.

- Updated dependencies [[`c82191d`](https://github.com/variableland/dx/commit/c82191d8b450eaf551c5c488858193a385a48a50)]:
- @vlandoss/clibuddy@0.7.1

## 0.3.1

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion vland/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@vlandoss/vland",
"version": "0.3.1",
"version": "0.3.2",
"description": "The CLI to init a new project in Variable Land",
"homepage": "https://github.com/variableland/dx/tree/main/vland/cli#readme",
"bugs": {
Expand Down