@codyswann/lisa 2.321.0 → 2.321.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/dist/core/upstream-evidence-manifest.js +5 -5
- package/expo/package-lisa/package.lisa.json +2 -2
- package/package.json +3 -3
- 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-setup-remote-env/SKILL.md +2 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/assets/setup.sh +10 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +42 -8
- package/plugins/lisa/skills/lisa-setup-remote-env/SKILL.md +2 -0
- package/plugins/lisa/skills/lisa-setup-remote-env/assets/setup.sh +10 -0
- package/plugins/lisa/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +42 -8
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-agy/skills/lisa-setup-remote-env/SKILL.md +2 -0
- package/plugins/lisa-agy/skills/lisa-setup-remote-env/assets/setup.sh +10 -0
- package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +42 -8
- 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-setup-remote-env/SKILL.md +2 -0
- package/plugins/lisa-copilot/skills/lisa-setup-remote-env/assets/setup.sh +10 -0
- package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +42 -8
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/skills/lisa-setup-remote-env/SKILL.md +2 -0
- package/plugins/lisa-cursor/skills/lisa-setup-remote-env/assets/setup.sh +10 -0
- package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +42 -8
- 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-setup-remote-env/SKILL.md +2 -0
- package/plugins/src/base/skills/lisa-setup-remote-env/assets/setup.sh +10 -0
- package/plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +42 -8
- package/typescript/package-lisa/package.lisa.json +2 -2
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
rmSync,
|
|
38
38
|
writeFileSync,
|
|
39
39
|
} from "node:fs";
|
|
40
|
-
import { dirname, join, resolve } from "node:path";
|
|
40
|
+
import { basename, dirname, join, resolve } from "node:path";
|
|
41
41
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
42
42
|
|
|
43
43
|
import { assertPinned, extractVersion, planToolchain } from "./toolchain.mjs";
|
|
@@ -337,11 +337,12 @@ export function pinEnvironment(environmentId, cwd = process.cwd()) {
|
|
|
337
337
|
* settings page, no direct URL, and no endpoint. Emit is not a degraded option
|
|
338
338
|
* here, it is the only one — so the read-back in `verify-remote-env.mjs` is
|
|
339
339
|
* what makes the result trustworthy, exactly as it would be at any other tier.
|
|
340
|
-
* @param {{bootstrapKey: string|null, install: string}} options Project details.
|
|
340
|
+
* @param {{bootstrapKey: string|null, install: string, repoDir?: string}} options Project details.
|
|
341
341
|
* @returns {string} Text to show the operator.
|
|
342
342
|
*/
|
|
343
|
-
export function emitClaudeWeb({ bootstrapKey, install }) {
|
|
343
|
+
export function emitClaudeWeb({ bootstrapKey, install, repoDir = "lisa" }) {
|
|
344
344
|
const key = bootstrapKey ?? "<secrets.bootstrap.key is not configured>";
|
|
345
|
+
const setup = `cd ${shellQuote(repoDir)} && ${install} && bash scripts/lisa-remote-env/setup.sh`;
|
|
345
346
|
return [
|
|
346
347
|
"Provisioning tier: EMIT — and for this surface that is the only tier.",
|
|
347
348
|
" A Claude cloud environment is account-scoped configuration edited in the",
|
|
@@ -350,7 +351,8 @@ export function emitClaudeWeb({ bootstrapKey, install }) {
|
|
|
350
351
|
"",
|
|
351
352
|
"Paste into the environment dialog",
|
|
352
353
|
"---------------------------------",
|
|
353
|
-
" Network access:
|
|
354
|
+
" Network access: Custom plus your package registries, GitHub, cloud SDK",
|
|
355
|
+
" hosts, and the bootstrap credential manager API",
|
|
354
356
|
"",
|
|
355
357
|
" Environment variables:",
|
|
356
358
|
` ${key}=<read this from your credential manager>`,
|
|
@@ -362,11 +364,13 @@ export function emitClaudeWeb({ bootstrapKey, install }) {
|
|
|
362
364
|
" is why exactly one value needs to live here.",
|
|
363
365
|
"",
|
|
364
366
|
" Setup script:",
|
|
365
|
-
` ${
|
|
367
|
+
` ${setup}`,
|
|
366
368
|
"",
|
|
367
|
-
|
|
368
|
-
"
|
|
369
|
-
"
|
|
369
|
+
` Claude runs this field from $HOME, while the checkout is $HOME/${repoDir}.`,
|
|
370
|
+
" The `cd` must come first, and the install must run before the setup",
|
|
371
|
+
" script. On a fresh container node_modules is the only copy of the Lisa",
|
|
372
|
+
" skills present, because Claude receives them as an installed plugin",
|
|
373
|
+
" rather than as part of the clone.",
|
|
370
374
|
"",
|
|
371
375
|
"Commit to the repository",
|
|
372
376
|
"------------------------",
|
|
@@ -467,6 +471,35 @@ export function detectInstallCommand(cwd = process.cwd()) {
|
|
|
467
471
|
return "<your install command>";
|
|
468
472
|
}
|
|
469
473
|
|
|
474
|
+
/**
|
|
475
|
+
* Name the directory Claude creates under $HOME when it clones this repository.
|
|
476
|
+
*
|
|
477
|
+
* Claude cloud runs the environment setup field from $HOME, not from the
|
|
478
|
+
* checkout. The setup line therefore has to `cd` into the clone before running
|
|
479
|
+
* the project install. Prefer the configured GitHub repo name because it is the
|
|
480
|
+
* thing Claude clones; fall back to the current directory for non-GitHub tests
|
|
481
|
+
* and local dry runs.
|
|
482
|
+
* @param {string} [cwd] Repository root.
|
|
483
|
+
* @returns {string} Directory name to place after `cd`.
|
|
484
|
+
*/
|
|
485
|
+
export function detectRepositoryDirectory(cwd = process.cwd()) {
|
|
486
|
+
const path = join(cwd, ".lisa.config.json");
|
|
487
|
+
if (existsSync(path)) {
|
|
488
|
+
const repo = JSON.parse(readFileSync(path, "utf8")).github?.repo;
|
|
489
|
+
if (repo && !repo.includes("/") && !repo.includes("\0")) return repo;
|
|
490
|
+
}
|
|
491
|
+
return basename(cwd);
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
/**
|
|
495
|
+
* Quote a value for POSIX shell usage.
|
|
496
|
+
* @param {string} value Raw value.
|
|
497
|
+
* @returns {string} Single-quoted shell literal.
|
|
498
|
+
*/
|
|
499
|
+
function shellQuote(value) {
|
|
500
|
+
return "'" + String(value).replaceAll("'", "'\\''") + "'";
|
|
501
|
+
}
|
|
502
|
+
|
|
470
503
|
/**
|
|
471
504
|
* Read the bootstrap key name, which is the one value the operator must paste.
|
|
472
505
|
* @param {string} [cwd] Repository root.
|
|
@@ -519,6 +552,7 @@ async function main() {
|
|
|
519
552
|
emitClaudeWeb({
|
|
520
553
|
bootstrapKey: readBootstrapKey(),
|
|
521
554
|
install: detectInstallCommand(),
|
|
555
|
+
repoDir: detectRepositoryDirectory(),
|
|
522
556
|
})
|
|
523
557
|
);
|
|
524
558
|
return;
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
},
|
|
29
29
|
"resolutions": {
|
|
30
30
|
"@isaacs/brace-expansion": "^5.0.1",
|
|
31
|
-
"brace-expansion": ">=5.0.
|
|
31
|
+
"brace-expansion": ">=5.0.9",
|
|
32
32
|
"axios": ">=1.18.0",
|
|
33
33
|
"esbuild": ">=0.28.1",
|
|
34
34
|
"handlebars": ">=4.7.9",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
},
|
|
43
43
|
"overrides": {
|
|
44
44
|
"@isaacs/brace-expansion": "^5.0.1",
|
|
45
|
-
"brace-expansion": ">=5.0.
|
|
45
|
+
"brace-expansion": ">=5.0.9",
|
|
46
46
|
"axios": ">=1.18.0",
|
|
47
47
|
"esbuild": ">=0.28.1",
|
|
48
48
|
"handlebars": ">=4.7.9",
|