@codyswann/lisa 2.322.3 → 2.322.4
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/dist/core/upstream-evidence-manifest.js +3 -3
- package/package.json +1 -1
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-remote-dispatch/scripts/dispatch.mjs +23 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/SKILL.md +16 -8
- package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +16 -7
- package/plugins/lisa/skills/lisa-remote-dispatch/scripts/dispatch.mjs +23 -1
- package/plugins/lisa/skills/lisa-setup-remote-env/SKILL.md +16 -8
- package/plugins/lisa/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +16 -7
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-agy/skills/lisa-remote-dispatch/scripts/dispatch.mjs +23 -1
- package/plugins/lisa-agy/skills/lisa-setup-remote-env/SKILL.md +16 -8
- package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +16 -7
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/skills/lisa-remote-dispatch/scripts/dispatch.mjs +23 -1
- package/plugins/lisa-copilot/skills/lisa-setup-remote-env/SKILL.md +16 -8
- package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +16 -7
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/skills/lisa-remote-dispatch/scripts/dispatch.mjs +23 -1
- package/plugins/lisa-cursor/skills/lisa-setup-remote-env/SKILL.md +16 -8
- package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +16 -7
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/src/base/skills/lisa-remote-dispatch/scripts/dispatch.mjs +23 -1
- package/plugins/src/base/skills/lisa-setup-remote-env/SKILL.md +16 -8
- package/plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +16 -7
|
@@ -13,8 +13,8 @@ Prepare a remote surface so a host project can execute there. Today that means *
|
|
|
13
13
|
The remote environment's own configuration fields stay **one line into the repository**. Nothing else is pasted into a vendor UI.
|
|
14
14
|
|
|
15
15
|
```text
|
|
16
|
-
setup: for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ]
|
|
17
|
-
maintenance: for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ]
|
|
16
|
+
setup: n=0; rc=0; for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ] || continue; n=$((n+1)); bash "$f" || rc=$?; done; [ "$n" -gt 0 ] || { echo "lisa-remote-env entrypoint not found under $PWD" >&2; exit 1; }; exit "$rc"
|
|
17
|
+
maintenance: n=0; rc=0; for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ] || continue; n=$((n+1)); bash "$f" || rc=$?; done; [ "$n" -gt 0 ] || { echo "lisa-remote-env entrypoint not found under $PWD" >&2; exit 1; }; exit "$rc"
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
**That line is identical for every project AND every surface.** Nothing in it names the
|
|
@@ -34,10 +34,18 @@ and neither mentions `$HOME`. An earlier version of this field used
|
|
|
34
34
|
the checkout is not under `$HOME` at all: the glob matches nothing and bash reports
|
|
35
35
|
`No such file or directory` for a path still containing a literal `*`.
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
**Every** match is prepared, not the first. A Claude Code web environment can hold more than
|
|
38
|
+
one checkout, and stopping at the first glob hit would prepare whichever repository sorts
|
|
39
|
+
first and silently ignore the rest — arbitrary rather than merely limited. Each script
|
|
40
|
+
anchors itself on its own repository root, and each project's secrets land under its own
|
|
41
|
+
`secrets.namespace`, so preparing several is well defined rather than a collision.
|
|
42
|
+
|
|
43
|
+
The exit status is the **first failure**, and every checkout is still attempted: one broken
|
|
44
|
+
repository must not hide the state of the others, and it must not report success either.
|
|
45
|
+
|
|
46
|
+
The explicit `exit 1` on `n=0` means a missing entrypoint says so rather than the field
|
|
47
|
+
silently succeeding — a `for` loop over a glob that matches nothing otherwise exits `0`,
|
|
48
|
+
which is the quiet failure this whole section exists to avoid.
|
|
41
49
|
|
|
42
50
|
They are the same command. A container may be built fresh or resumed from cache; every step is idempotent and version-aware, so running it twice is correct, and running it on resume is what picks up a rotated value, an edited note, or a changed version pin.
|
|
43
51
|
|
|
@@ -156,8 +164,8 @@ When emitting, produce exactly:
|
|
|
156
164
|
```text
|
|
157
165
|
Environment name: <project> remote executor
|
|
158
166
|
Repository: <org>/<repo> (must be the default checkout)
|
|
159
|
-
Setup script: for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ]
|
|
160
|
-
Maintenance: for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ]
|
|
167
|
+
Setup script: n=0; rc=0; for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ] || continue; n=$((n+1)); bash "$f" || rc=$?; done; [ "$n" -gt 0 ] || { echo "lisa-remote-env entrypoint not found under $PWD" >&2; exit 1; }; exit "$rc"
|
|
168
|
+
Maintenance: n=0; rc=0; for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; do [ -f "$f" ] || continue; n=$((n+1)); bash "$f" || rc=$?; done; [ "$n" -gt 0 ] || { echo "lisa-remote-env entrypoint not found under $PWD" >&2; exit 1; }; exit "$rc"
|
|
161
169
|
(identical for every project — the script finds the
|
|
162
170
|
checkout and installs from the committed lockfile)
|
|
163
171
|
Environment vars: LISA_SECRETS_SURFACE=codex-cloud
|
|
@@ -308,20 +308,29 @@ export function installAssets(cwd = process.cwd()) {
|
|
|
308
308
|
* at all — so a `$HOME` glob matched nothing there and bash was handed a path
|
|
309
309
|
* still containing a literal asterisk.
|
|
310
310
|
*
|
|
311
|
-
* Both candidates are therefore tried relative to cwd
|
|
312
|
-
*
|
|
313
|
-
*
|
|
314
|
-
*
|
|
315
|
-
*
|
|
311
|
+
* Both candidates are therefore tried relative to cwd, and EVERY match is
|
|
312
|
+
* prepared rather than the first. A Claude Code web environment can hold more
|
|
313
|
+
* than one checkout, so stopping at the first hit would prepare whichever
|
|
314
|
+
* repository sorts first and silently ignore the rest — arbitrary rather than
|
|
315
|
+
* merely limited. Each script anchors itself on its own repository root and
|
|
316
|
+
* each project materializes under its own `secrets.namespace`, so preparing
|
|
317
|
+
* several is well defined rather than a collision.
|
|
318
|
+
*
|
|
319
|
+
* The status is the first failure and every checkout is still attempted: one
|
|
320
|
+
* broken repository must neither hide the others nor report success. The
|
|
321
|
+
* explicit `exit 1` on no matches matters because a `for` loop over a glob that
|
|
322
|
+
* matches nothing otherwise exits 0 — the quiet success this guards against.
|
|
316
323
|
*
|
|
317
324
|
* A field that named the repository and package manager was a string a human
|
|
318
325
|
* had to get right, in a settings box with no review, no version history and no
|
|
319
326
|
* test — and the logic it encoded belongs in a file that has all three.
|
|
320
327
|
*/
|
|
321
328
|
export const SETUP_FIELD =
|
|
329
|
+
"n=0; rc=0; " +
|
|
322
330
|
"for f in scripts/lisa-remote-env/setup.sh */scripts/lisa-remote-env/setup.sh; " +
|
|
323
|
-
'do [ -f "$f" ]
|
|
324
|
-
'echo "lisa-remote-env entrypoint not found under $PWD" >&2; exit 1'
|
|
331
|
+
'do [ -f "$f" ] || continue; n=$((n+1)); bash "$f" || rc=$?; done; ' +
|
|
332
|
+
'[ "$n" -gt 0 ] || { echo "lisa-remote-env entrypoint not found under $PWD" >&2; exit 1; }; ' +
|
|
333
|
+
'exit "$rc"';
|
|
325
334
|
|
|
326
335
|
/**
|
|
327
336
|
* The settings block that wires the session-start hook into a repository.
|