super-ux 0.30.1 → 0.30.2
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/CHANGELOG.md +14 -1
- package/bin/super-ux.js +26 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.30.
|
|
3
|
+
## 0.30.2 — 2026-08-05
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- **The installer offers the family routing block.** After `npx super-ux
|
|
7
|
+
--cursor`, it delegates to `npx --no-install sshlg-skills routers --member
|
|
8
|
+
super-ux`, which writes the `super-ux` and `copywriting` routers into the
|
|
9
|
+
global agent instructions so both engage by default in every project.
|
|
10
|
+
Delegated rather than reimplemented: the block carries a precedence table
|
|
11
|
+
describing what the machine actually has, and a lone member rendering it
|
|
12
|
+
would list routers nobody installed. When the launcher is absent the
|
|
13
|
+
installer prints the one command instead of failing, and `--no-install`
|
|
14
|
+
keeps it from downloading a package nobody asked for.
|
|
15
|
+
|
|
16
|
+
— 2026-08-05
|
|
4
17
|
|
|
5
18
|
### Fixed
|
|
6
19
|
- **`templates/brand/voice.md` told projects to write `PER-NN` where the UX
|
package/bin/super-ux.js
CHANGED
|
@@ -331,6 +331,31 @@ async function menu() {
|
|
|
331
331
|
if (keys.includes('skills')) installSkillsCli();
|
|
332
332
|
}
|
|
333
333
|
|
|
334
|
+
/**
|
|
335
|
+
* Ask the launcher to write the family's routing block.
|
|
336
|
+
*
|
|
337
|
+
* Delegated rather than reimplemented. The block lists several routers and a
|
|
338
|
+
* precedence table describing what this machine actually has, so a lone
|
|
339
|
+
* member rendering it would produce a table for routers nobody installed.
|
|
340
|
+
* `--no-install` keeps this from silently downloading a package the user did
|
|
341
|
+
* not ask for; when the launcher is absent we print the one command instead.
|
|
342
|
+
*/
|
|
343
|
+
function offerRouters() {
|
|
344
|
+
const { spawnSync } = require('child_process');
|
|
345
|
+
const r = spawnSync(
|
|
346
|
+
'npx',
|
|
347
|
+
['--no-install', 'sshlg-skills', 'routers', '--member', 'super-ux'],
|
|
348
|
+
{ stdio: 'inherit', shell: process.platform === 'win32' }
|
|
349
|
+
);
|
|
350
|
+
if (r.status !== 0) {
|
|
351
|
+
console.log(
|
|
352
|
+
'\nЧтобы скилы включались по умолчанию во всех проектах, допиши блок\n' +
|
|
353
|
+
'роутинга в глобальные инструкции агента:\n\n' +
|
|
354
|
+
' npx --yes sshlg-skills routers --member super-ux\n'
|
|
355
|
+
);
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
|
|
334
359
|
function main() {
|
|
335
360
|
const args = process.argv.slice(2);
|
|
336
361
|
if (args[0] === '--help' || args[0] === '-h') {
|
|
@@ -349,6 +374,7 @@ function main() {
|
|
|
349
374
|
const force = args.includes('--force');
|
|
350
375
|
const dirArg = args[1] && args[1] !== '--force' ? args[1] : '.';
|
|
351
376
|
installCursor(path.resolve(dirArg), force);
|
|
377
|
+
offerRouters();
|
|
352
378
|
}
|
|
353
379
|
|
|
354
380
|
main();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "super-ux",
|
|
3
|
-
"version": "0.30.
|
|
3
|
+
"version": "0.30.2",
|
|
4
4
|
"description": "Scenario-driven UI development for AI agents (Claude Code, Cursor, 70+ agents): a versioned design chain in docs/ux/, a scenario-first hard rule, a deterministic drift linter, and evidence-backed UX audits. This package is the installer CLI.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"super-ux": "bin/super-ux.js"
|