flawless-ui-ux 0.2.0 → 0.3.0

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 CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  ## Unreleased
6
6
 
7
+ ## 0.3.0
8
+
9
+ ### Changed
10
+
11
+ - Made CLI install project-local by default. A bare install copies the skill for both agents into the current project; user-wide installation now requires explicit --global.
12
+ - Retained --project <directory> for another project, mutually exclusive with --global. Existing local and global installations are preserved.
13
+ - Updated help, README setup, contract, and package-level tests for the new default. The legacy Bash alternative retains its own explicit --project option.
14
+
7
15
  ## 0.2.0
8
16
 
9
17
  ### Added
package/README.md CHANGED
@@ -8,7 +8,7 @@ flawless-ui-ux helps coding agents create, redesign, and refine web interfaces w
8
8
 
9
9
  ## Setup
10
10
 
11
- Choose your package manager to install the skill for **Codex and OpenCode globally**. The CLI requires **Node 22.12+**; no checkout or Bash is needed.
11
+ From your project directory, choose your package manager to install the skill for **Codex and OpenCode in that project**. The CLI requires **Node 22.12+**; no checkout or Bash is needed.
12
12
 
13
13
  ```bash
14
14
  npx flawless-ui-ux@latest install
@@ -20,14 +20,14 @@ Run one of these commands. The examples below use `npx`; replace it with `pnpm d
20
20
 
21
21
  ### Choose an agent and scope
22
22
 
23
- For a specific agent, or a project-local installation:
23
+ For a specific agent, or an installation across projects:
24
24
 
25
25
  ```bash
26
26
  npx flawless-ui-ux install --codex
27
- npx flawless-ui-ux install --opencode --project .
27
+ npx flawless-ui-ux install --opencode --global
28
28
  ```
29
29
 
30
- The default is both agents globally. Use `--codex`, `--opencode`, or `--all-agents` to select targets. `--project <directory>` installs only in that project; `--global` makes the default scope explicit. Start a new agent session if needed for discovery.
30
+ The default is both agents in the current project. Use `--codex`, `--opencode`, or `--all-agents` to select targets. `--global` explicitly installs in your user profile; `--project <directory>` selects another project. Start a new agent session if needed for discovery.
31
31
 
32
32
  Existing installations are never overwritten, including links and local changes. All selected destinations are checked before copying. Review or remove an existing installation yourself before reinstalling. Global paths honor `CODEX_HOME` and `XDG_CONFIG_HOME`; project paths are `.agents/skills/flawless-ui-ux` for Codex and `.opencode/skills/flawless-ui-ux` for OpenCode.
33
33
 
@@ -35,11 +35,11 @@ Existing installations are never overwritten, including links and local changes.
35
35
  <summary>Alternative: install from a checkout with Bash</summary>
36
36
 
37
37
  ```bash
38
- bash ./install.sh --codex
39
- bash ./install.sh --opencode
38
+ bash ./install.sh --codex --project
39
+ bash ./install.sh --opencode --project
40
40
  ```
41
41
 
42
- Use `--all-agents` for both. For project-local installation, run `bash /path/to/flawless-ui-ux/install.sh --all-agents --project` from the target project's directory. On Windows, the Bash alternative requires Git Bash or WSL.
42
+ Run these from the target project's directory, using the script's absolute path when the checkout is elsewhere. Use `--all-agents` for both. The legacy Bash script requires `--project` for local installation and otherwise installs globally. On Windows, this alternative requires Git Bash or WSL.
43
43
 
44
44
  </details>
45
45
 
@@ -19,7 +19,8 @@ try {
19
19
  [--timeout MS] [--browser-executable FILE] [--format text|json]
20
20
  verify RUN_JSON [--output NEW_DIR] [--browser-executable FILE] [--format text|json]
21
21
 
22
- install defaults to both agents globally. Existing installations are preserved.
22
+ install defaults to both agents in the current project. Use --global for user-wide installation.
23
+ Existing installations are preserved.
23
24
  inspect requires a source or URL. Defaults: 1440x900 and 390x844, 15000 ms.
24
25
  Inspection does not start servers, download browsers, edit sources, or submit forms.
25
26
  FLAWLESS_BROWSER_EXECUTABLE explicitly selects an installed Chromium executable.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flawless-ui-ux",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "A UI/UX skill and local inspection CLI for coding agents to build and refine product-specific interfaces.",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/src/install.js CHANGED
@@ -58,7 +58,7 @@ async function rollback(created) {
58
58
  export async function install(options, runtime = {}) {
59
59
  const env = runtime.env || process.env;
60
60
  const home = runtime.home || os.homedir();
61
- const project = options.project ? await projectRoot(options.project) : null;
61
+ const project = options.global ? null : await projectRoot(options.project || '.');
62
62
  const agent = options.agent || 'all';
63
63
  if (!['all', 'codex', 'opencode'].includes(agent)) throw new Error('Unknown installation agent.');
64
64
  if (!(await fs.stat(path.join(bundledSkill, 'SKILL.md'))).isFile()) throw new Error('The package does not contain an installable skill.');
package/src/options.js CHANGED
@@ -42,7 +42,7 @@ export function parse(argv) {
42
42
  continue;
43
43
  }
44
44
  seen.add(name);
45
- if (operation === 'install' && name === 'global') continue;
45
+ if (operation === 'install' && name === 'global') { options.global = true; continue; }
46
46
  const value = argv.shift();
47
47
  if (!value || value.startsWith('--')) throw new Error(`Missing value for ${flag}`);
48
48
  if (name === 'source') options.sources.push(value);