@codyswann/lisa 2.133.4 → 2.134.1
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 +42 -3
- package/dist/cli/doctor.d.ts +35 -0
- package/dist/cli/doctor.d.ts.map +1 -0
- package/dist/cli/doctor.js +204 -0
- package/dist/cli/doctor.js.map +1 -0
- package/dist/cli/index.d.ts +12 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +53 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/setup-wiki.d.ts +21 -0
- package/dist/cli/setup-wiki.d.ts.map +1 -0
- package/dist/cli/setup-wiki.js +20 -0
- package/dist/cli/setup-wiki.js.map +1 -0
- package/dist/cli/update-cmd.d.ts +39 -0
- package/dist/cli/update-cmd.d.ts.map +1 -0
- package/dist/cli/update-cmd.js +105 -0
- package/dist/cli/update-cmd.js.map +1 -0
- package/dist/cli/version-cmd.d.ts +29 -0
- package/dist/cli/version-cmd.d.ts.map +1 -0
- package/dist/cli/version-cmd.js +74 -0
- package/dist/cli/version-cmd.js.map +1 -0
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- 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-agy/plugin.json +1 -1
- 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-cursor/.claude-plugin/plugin.json +1 -1
- 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-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
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { runUpdateCheck } from "./update-check.js";
|
|
2
|
+
import { getPackageVersion } from "./version.js";
|
|
3
|
+
/** Runtime collaborators for the version command. */
|
|
4
|
+
export interface VersionCommandDependencies {
|
|
5
|
+
/** Resolve the installed Lisa package version. */
|
|
6
|
+
getPackageVersion: typeof getPackageVersion;
|
|
7
|
+
/** Run Lisa's non-fatal latest-version check. */
|
|
8
|
+
runUpdateCheck: typeof runUpdateCheck;
|
|
9
|
+
/** Write user-facing output. */
|
|
10
|
+
write: (message: string) => void;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Resolve the installed package path for the running CLI.
|
|
14
|
+
* @returns Absolute package root when discoverable
|
|
15
|
+
*/
|
|
16
|
+
export declare function getCliInstallPath(): string;
|
|
17
|
+
/**
|
|
18
|
+
* Resolve the configured default harness for the current project.
|
|
19
|
+
* @param cwd - Project directory to inspect
|
|
20
|
+
* @returns Harness string used by Lisa when no flag overrides it
|
|
21
|
+
*/
|
|
22
|
+
export declare function readDefaultHarness(cwd?: string): Promise<string>;
|
|
23
|
+
/**
|
|
24
|
+
* Run `lisa version`.
|
|
25
|
+
* @param dependencies - Optional collaborators for tests
|
|
26
|
+
* @returns Promise that resolves after output is written
|
|
27
|
+
*/
|
|
28
|
+
export declare function runVersion(dependencies?: Partial<VersionCommandDependencies>): Promise<void>;
|
|
29
|
+
//# sourceMappingURL=version-cmd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/version-cmd.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,qDAAqD;AACrD,MAAM,WAAW,0BAA0B;IACzC,kDAAkD;IAClD,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,iDAAiD;IACjD,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,gCAAgC;IAChC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAuBD;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,SAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB7E;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,YAAY,GAAE,OAAO,CAAC,0BAA0B,CAAM,GACrD,OAAO,CAAC,IAAI,CAAC,CAiBf"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { existsSync } from "node:fs";
|
|
2
|
+
import { readFile } from "node:fs/promises";
|
|
3
|
+
import * as path from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { runUpdateCheck } from "./update-check.js";
|
|
6
|
+
import { getPackageVersion } from "./version.js";
|
|
7
|
+
const DEFAULT_DEPENDENCIES = {
|
|
8
|
+
getPackageVersion,
|
|
9
|
+
runUpdateCheck,
|
|
10
|
+
write: message => console.log(message),
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Find the nearest package.json above the current module path.
|
|
14
|
+
* @param startDir - Directory to start from
|
|
15
|
+
* @returns Absolute package.json path or null
|
|
16
|
+
*/
|
|
17
|
+
function findPackageJson(startDir) {
|
|
18
|
+
const candidate = path.join(startDir, "package.json");
|
|
19
|
+
if (existsSync(candidate)) {
|
|
20
|
+
return candidate;
|
|
21
|
+
}
|
|
22
|
+
const parent = path.dirname(startDir);
|
|
23
|
+
return parent === startDir ? null : findPackageJson(parent);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Resolve the installed package path for the running CLI.
|
|
27
|
+
* @returns Absolute package root when discoverable
|
|
28
|
+
*/
|
|
29
|
+
export function getCliInstallPath() {
|
|
30
|
+
const moduleDir = path.dirname(fileURLToPath(import.meta.url));
|
|
31
|
+
const packageJson = findPackageJson(moduleDir);
|
|
32
|
+
return packageJson ? path.dirname(packageJson) : moduleDir;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Resolve the configured default harness for the current project.
|
|
36
|
+
* @param cwd - Project directory to inspect
|
|
37
|
+
* @returns Harness string used by Lisa when no flag overrides it
|
|
38
|
+
*/
|
|
39
|
+
export async function readDefaultHarness(cwd = process.cwd()) {
|
|
40
|
+
for (const fileName of [".lisa.config.local.json", ".lisa.config.json"]) {
|
|
41
|
+
const configPath = path.join(cwd, fileName);
|
|
42
|
+
try {
|
|
43
|
+
const parsed = JSON.parse(await readFile(configPath, "utf8"));
|
|
44
|
+
if (typeof parsed.harness === "string" && parsed.harness !== "") {
|
|
45
|
+
return parsed.harness;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
// Missing or malformed project config falls back to the CLI default.
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return "claude";
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Run `lisa version`.
|
|
56
|
+
* @param dependencies - Optional collaborators for tests
|
|
57
|
+
* @returns Promise that resolves after output is written
|
|
58
|
+
*/
|
|
59
|
+
export async function runVersion(dependencies = {}) {
|
|
60
|
+
const deps = { ...DEFAULT_DEPENDENCIES, ...dependencies };
|
|
61
|
+
const localVersion = deps.getPackageVersion();
|
|
62
|
+
const updateResult = await deps.runUpdateCheck({
|
|
63
|
+
currentVersion: localVersion,
|
|
64
|
+
});
|
|
65
|
+
const latestVersion = updateResult.latest ?? "unavailable";
|
|
66
|
+
const harness = await readDefaultHarness();
|
|
67
|
+
deps.write([
|
|
68
|
+
`local: ${localVersion}`,
|
|
69
|
+
`latest: ${latestVersion}`,
|
|
70
|
+
`installPath: ${getCliInstallPath()}`,
|
|
71
|
+
`defaultHarness: ${harness}`,
|
|
72
|
+
].join("\n"));
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=version-cmd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-cmd.js","sourceRoot":"","sources":["../../src/cli/version-cmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAA0B,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAYjD,MAAM,oBAAoB,GAA+B;IACvD,iBAAiB;IACjB,cAAc;IACd,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;CACvC,CAAC;AAEF;;;;GAIG;AACH,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAC/C,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IAC1D,KAAK,MAAM,QAAQ,IAAI,CAAC,yBAAyB,EAAE,mBAAmB,CAAC,EAAE,CAAC;QACxE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAE3D,CAAC;YACF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;gBAChE,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qEAAqE;QACvE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,eAAoD,EAAE;IAEtD,MAAM,IAAI,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,YAAY,EAAE,CAAC;IAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC9C,MAAM,YAAY,GAAsB,MAAM,IAAI,CAAC,cAAc,CAAC;QAChE,cAAc,EAAE,YAAY;KAC7B,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,IAAI,aAAa,CAAC;IAC3D,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAE3C,IAAI,CAAC,KAAK,CACR;QACE,UAAU,YAAY,EAAE;QACxB,WAAW,aAAa,EAAE;QAC1B,gBAAgB,iBAAiB,EAAE,EAAE;QACrC,mBAAmB,OAAO,EAAE;KAC7B,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;AACJ,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { CommanderError } from "commander";
|
|
2
3
|
import { createProgram } from "./cli/index.js";
|
|
3
4
|
/**
|
|
4
5
|
* Run the Lisa CLI entrypoint.
|
|
@@ -10,7 +11,17 @@ import { createProgram } from "./cli/index.js";
|
|
|
10
11
|
*/
|
|
11
12
|
async function main() {
|
|
12
13
|
const program = createProgram();
|
|
13
|
-
|
|
14
|
+
program.exitOverride();
|
|
15
|
+
try {
|
|
16
|
+
await program.parseAsync();
|
|
17
|
+
}
|
|
18
|
+
catch (error) {
|
|
19
|
+
if (error instanceof CommanderError) {
|
|
20
|
+
process.exitCode = error.exitCode;
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
throw error;
|
|
24
|
+
}
|
|
14
25
|
}
|
|
15
26
|
main().catch(error => {
|
|
16
27
|
console.error("Error:", error instanceof Error ? error.message : String(error));
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;;;;;;GAOG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;;;;;;GAOG;AACH,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,OAAO,CAAC,YAAY,EAAE,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;YACpC,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;YAClC,OAAO;QACT,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;IACnB,OAAO,CAAC,KAAK,CACX,QAAQ,EACR,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
"lodash": ">=4.18.1"
|
|
84
84
|
},
|
|
85
85
|
"name": "@codyswann/lisa",
|
|
86
|
-
"version": "2.
|
|
86
|
+
"version": "2.134.1",
|
|
87
87
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
88
88
|
"main": "dist/index.js",
|
|
89
89
|
"exports": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.134.1",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.134.1",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, across Claude and Codex.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.134.1",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.134.1",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.134.1",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|