@kvell007/embed-labs-cli 0.1.0-alpha.29 → 0.1.0-alpha.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -41,12 +41,22 @@ public SDK until a versioned API contract is approved.
41
41
  Current experimental npm install:
42
42
 
43
43
  ```bash
44
- npm install -g @kvell007/embed-labs-cli@alpha
44
+ npm install -g embedlabs@latest
45
45
  embedlabs --help
46
46
  embedlabs help getting-started
47
+ embedlabs local toolchain list
48
+ embedlabs plugin update check
47
49
  embedlabs plugin install all
48
50
  ```
49
51
 
52
+ Clean reinstall:
53
+
54
+ ```bash
55
+ npm uninstall -g embedlabs embedlabs-cli embedboard embedboard-cli @kvell007/embed-labs-cli
56
+ npm install -g embedlabs@latest
57
+ embedlabs plugin install all --force
58
+ ```
59
+
50
60
  Future organization-scope install after final release approval:
51
61
 
52
62
  ```bash
package/dist/index.js CHANGED
@@ -1877,6 +1877,7 @@ async function pluginUpdateCheck(parsed) {
1877
1877
  return ok({
1878
1878
  release_url: pluginReleaseBaseUrl(parsed),
1879
1879
  latest_version: manifest.version,
1880
+ release_notes: normalizedReleaseNotes(manifest.release_notes),
1880
1881
  plugins: [
1881
1882
  await pluginUpdateItem({
1882
1883
  id: "codex",
@@ -1899,6 +1900,14 @@ async function pluginUpdateCheck(parsed) {
1899
1900
  ]
1900
1901
  });
1901
1902
  }
1903
+ function normalizedReleaseNotes(notes) {
1904
+ if (!Array.isArray(notes)) {
1905
+ return [];
1906
+ }
1907
+ return notes
1908
+ .filter((item) => typeof item === "string" && item.trim().length > 0)
1909
+ .map((item) => item.trim());
1910
+ }
1902
1911
  async function pluginUpdate(parsed) {
1903
1912
  const unknownFlag = firstUnknownFlag(parsed, ["release-url", "target", "codex-target", "opencode-target", "json"]);
1904
1913
  if (unknownFlag) {
@@ -1932,7 +1941,6 @@ async function pluginUpdateItem(input) {
1932
1941
  else {
1933
1942
  notes.push("Plugin is up to date for the selected release channel.");
1934
1943
  }
1935
- notes.push("Release manifest does not yet carry detailed changelog entries; use the release version and package files as the update summary.");
1936
1944
  return {
1937
1945
  id: input.id,
1938
1946
  display_name: input.displayName,
@@ -6207,6 +6215,12 @@ function renderPluginUpdateCheck(result) {
6207
6215
  `release_url=${result.release_url}`,
6208
6216
  result.latest_version ? `latest_version=${result.latest_version}` : ""
6209
6217
  ].filter(Boolean);
6218
+ if (result.release_notes.length > 0) {
6219
+ lines.push("release_notes:");
6220
+ for (const note of result.release_notes) {
6221
+ lines.push(` - ${note}`);
6222
+ }
6223
+ }
6210
6224
  for (const plugin of result.plugins) {
6211
6225
  lines.push("");
6212
6226
  lines.push(`${plugin.display_name} (${plugin.id})`);