@codyswann/lisa 2.209.0 → 2.209.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/codex/scripts/install-pkgs.sh +17 -8
- 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/hooks/install-pkgs.sh +17 -8
- 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-copilot/hooks/install-pkgs.sh +17 -8
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/hooks/install-pkgs.sh +17 -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/.codex-plugin/skills/lisa-wiki-ingest/SKILL.md +9 -2
- package/plugins/lisa-wiki/.codex-plugin/skills/lisa-wiki-query/SKILL.md +10 -6
- package/plugins/lisa-wiki/skills/lisa-wiki-ingest/SKILL.md +9 -2
- package/plugins/lisa-wiki/skills/lisa-wiki-query/SKILL.md +10 -6
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/skills/lisa-wiki-ingest/SKILL.md +9 -2
- package/plugins/lisa-wiki-agy/skills/lisa-wiki-query/SKILL.md +10 -6
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/skills/lisa-wiki-ingest/SKILL.md +9 -2
- package/plugins/lisa-wiki-copilot/skills/lisa-wiki-query/SKILL.md +10 -6
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/skills/lisa-wiki-ingest/SKILL.md +9 -2
- package/plugins/lisa-wiki-cursor/skills/lisa-wiki-query/SKILL.md +10 -6
- package/plugins/src/base/hooks/install-pkgs.sh +17 -8
- package/plugins/src/wiki/skills/lisa-wiki-ingest/SKILL.md +9 -2
- package/plugins/src/wiki/skills/lisa-wiki-query/SKILL.md +10 -6
|
@@ -18,14 +18,23 @@ fi
|
|
|
18
18
|
link_primary_worktree_node_modules() {
|
|
19
19
|
[ ! -e "node_modules" ] && [ ! -L "node_modules" ] || return 1
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
21
|
+
# A linked worktree's --git-common-dir is <primary>/.git no matter where the
|
|
22
|
+
# worktree lives (.claude/worktrees, ~/.codex/worktrees, plain
|
|
23
|
+
# `git worktree add`), so derive the primary checkout from it. Fall back to
|
|
24
|
+
# the legacy .claude path parse on git <2.31 (no --path-format support).
|
|
25
|
+
git_common_dir="$(git rev-parse --path-format=absolute --git-common-dir 2>/dev/null || true)"
|
|
26
|
+
if [ -n "$git_common_dir" ]; then
|
|
27
|
+
primary_root="$(dirname "$git_common_dir")"
|
|
28
|
+
else
|
|
29
|
+
case "$repo_root" in
|
|
30
|
+
*/.claude/worktrees/*)
|
|
31
|
+
primary_root="${repo_root%%/.claude/worktrees/*}"
|
|
32
|
+
;;
|
|
33
|
+
*)
|
|
34
|
+
return 1
|
|
35
|
+
;;
|
|
36
|
+
esac
|
|
37
|
+
fi
|
|
29
38
|
|
|
30
39
|
[ "$primary_root" != "$repo_root" ] || return 1
|
|
31
40
|
[ -d "$primary_root/node_modules" ] || return 1
|
package/package.json
CHANGED
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
"ws": ">=8.20.1"
|
|
96
96
|
},
|
|
97
97
|
"name": "@codyswann/lisa",
|
|
98
|
-
"version": "2.209.
|
|
98
|
+
"version": "2.209.2",
|
|
99
99
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
100
100
|
"main": "dist/index.js",
|
|
101
101
|
"exports": {
|
|
@@ -11,14 +11,23 @@ link_primary_worktree_node_modules() {
|
|
|
11
11
|
[ ! -e "node_modules" ] && [ ! -L "node_modules" ] || return 1
|
|
12
12
|
|
|
13
13
|
repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
# A linked worktree's --git-common-dir is <primary>/.git no matter where the
|
|
15
|
+
# worktree lives (.claude/worktrees, ~/.codex/worktrees, plain
|
|
16
|
+
# `git worktree add`), so derive the primary checkout from it. Fall back to
|
|
17
|
+
# the legacy .claude path parse on git <2.31 (no --path-format support).
|
|
18
|
+
git_common_dir="$(git rev-parse --path-format=absolute --git-common-dir 2>/dev/null || true)"
|
|
19
|
+
if [ -n "$git_common_dir" ]; then
|
|
20
|
+
primary_root="$(dirname "$git_common_dir")"
|
|
21
|
+
else
|
|
22
|
+
case "$repo_root" in
|
|
23
|
+
*/.claude/worktrees/*)
|
|
24
|
+
primary_root="${repo_root%%/.claude/worktrees/*}"
|
|
25
|
+
;;
|
|
26
|
+
*)
|
|
27
|
+
return 1
|
|
28
|
+
;;
|
|
29
|
+
esac
|
|
30
|
+
fi
|
|
22
31
|
|
|
23
32
|
[ "$primary_root" != "$repo_root" ] || return 1
|
|
24
33
|
[ -d "$primary_root/node_modules" ] || return 1
|
|
@@ -11,14 +11,23 @@ link_primary_worktree_node_modules() {
|
|
|
11
11
|
[ ! -e "node_modules" ] && [ ! -L "node_modules" ] || return 1
|
|
12
12
|
|
|
13
13
|
repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
# A linked worktree's --git-common-dir is <primary>/.git no matter where the
|
|
15
|
+
# worktree lives (.claude/worktrees, ~/.codex/worktrees, plain
|
|
16
|
+
# `git worktree add`), so derive the primary checkout from it. Fall back to
|
|
17
|
+
# the legacy .claude path parse on git <2.31 (no --path-format support).
|
|
18
|
+
git_common_dir="$(git rev-parse --path-format=absolute --git-common-dir 2>/dev/null || true)"
|
|
19
|
+
if [ -n "$git_common_dir" ]; then
|
|
20
|
+
primary_root="$(dirname "$git_common_dir")"
|
|
21
|
+
else
|
|
22
|
+
case "$repo_root" in
|
|
23
|
+
*/.claude/worktrees/*)
|
|
24
|
+
primary_root="${repo_root%%/.claude/worktrees/*}"
|
|
25
|
+
;;
|
|
26
|
+
*)
|
|
27
|
+
return 1
|
|
28
|
+
;;
|
|
29
|
+
esac
|
|
30
|
+
fi
|
|
22
31
|
|
|
23
32
|
[ "$primary_root" != "$repo_root" ] || return 1
|
|
24
33
|
[ -d "$primary_root/node_modules" ] || return 1
|
|
@@ -11,14 +11,23 @@ link_primary_worktree_node_modules() {
|
|
|
11
11
|
[ ! -e "node_modules" ] && [ ! -L "node_modules" ] || return 1
|
|
12
12
|
|
|
13
13
|
repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
# A linked worktree's --git-common-dir is <primary>/.git no matter where the
|
|
15
|
+
# worktree lives (.claude/worktrees, ~/.codex/worktrees, plain
|
|
16
|
+
# `git worktree add`), so derive the primary checkout from it. Fall back to
|
|
17
|
+
# the legacy .claude path parse on git <2.31 (no --path-format support).
|
|
18
|
+
git_common_dir="$(git rev-parse --path-format=absolute --git-common-dir 2>/dev/null || true)"
|
|
19
|
+
if [ -n "$git_common_dir" ]; then
|
|
20
|
+
primary_root="$(dirname "$git_common_dir")"
|
|
21
|
+
else
|
|
22
|
+
case "$repo_root" in
|
|
23
|
+
*/.claude/worktrees/*)
|
|
24
|
+
primary_root="${repo_root%%/.claude/worktrees/*}"
|
|
25
|
+
;;
|
|
26
|
+
*)
|
|
27
|
+
return 1
|
|
28
|
+
;;
|
|
29
|
+
esac
|
|
30
|
+
fi
|
|
22
31
|
|
|
23
32
|
[ "$primary_root" != "$repo_root" ] || return 1
|
|
24
33
|
[ -d "$primary_root/node_modules" ] || return 1
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.209.
|
|
3
|
+
"version": "2.209.2",
|
|
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.209.
|
|
3
|
+
"version": "2.209.2",
|
|
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.209.
|
|
3
|
+
"version": "2.209.2",
|
|
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.209.
|
|
3
|
+
"version": "2.209.2",
|
|
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.209.
|
|
3
|
+
"version": "2.209.2",
|
|
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"
|
|
@@ -21,8 +21,15 @@ performs the shared, ordered pipeline.
|
|
|
21
21
|
|
|
22
22
|
## Step 0 — resolve the wiki root (once per run)
|
|
23
23
|
|
|
24
|
-
Before anything else, run
|
|
25
|
-
|
|
24
|
+
Before anything else, run the bundled resolver from the installed Lisa wiki plugin, not from the
|
|
25
|
+
consumer repository's `scripts/` directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use the returned `wikiRoot` as the base for the whole pipeline — never hardcode `wiki/`. This is
|
|
32
|
+
mode-agnostic by design:
|
|
26
33
|
|
|
27
34
|
- **Local wiki** (no `wiki.source` in `.lisa.config.json`) — resolves the in-repo wiki root instantly;
|
|
28
35
|
the branch sync below proceeds against **this** repo's remote, exactly as before.
|
|
@@ -8,12 +8,16 @@ description: "Answer a question from the LLM…"
|
|
|
8
8
|
Answer from the wiki, with citations, without changing it (by default).
|
|
9
9
|
|
|
10
10
|
## Workflow
|
|
11
|
-
0. **Resolve the wiki root.** Run
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
0. **Resolve the wiki root.** Run the bundled resolver from the installed Lisa wiki plugin, not from
|
|
12
|
+
the consumer repository's `scripts/` directory:
|
|
13
|
+
```bash
|
|
14
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
15
|
+
```
|
|
16
|
+
Use the returned `wikiRoot` as the base for every read below — never assume `wiki/`. A local wiki
|
|
17
|
+
resolves instantly (no-op); a wiki whose `.lisa.config.json` declares `wiki.source.url` is
|
|
18
|
+
mirrored and refreshed transparently first. The script is offline-tolerant (it proceeds with the
|
|
19
|
+
existing mirror and warns rather than blocking), so freshness is guaranteed here and the caller
|
|
20
|
+
never has to think about it.
|
|
17
21
|
1. Read `<wikiRoot>/index.md` to locate candidate pages; consult `<wikiRoot>/start-here.md` for orientation.
|
|
18
22
|
2. Drill into the relevant synthesis pages and their cited source notes.
|
|
19
23
|
3. Synthesize an answer. **Every claim cites its wiki page and/or source note.** If the wiki does not
|
|
@@ -21,8 +21,15 @@ performs the shared, ordered pipeline.
|
|
|
21
21
|
|
|
22
22
|
## Step 0 — resolve the wiki root (once per run)
|
|
23
23
|
|
|
24
|
-
Before anything else, run
|
|
25
|
-
|
|
24
|
+
Before anything else, run the bundled resolver from the installed Lisa wiki plugin, not from the
|
|
25
|
+
consumer repository's `scripts/` directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use the returned `wikiRoot` as the base for the whole pipeline — never hardcode `wiki/`. This is
|
|
32
|
+
mode-agnostic by design:
|
|
26
33
|
|
|
27
34
|
- **Local wiki** (no `wiki.source` in `.lisa.config.json`) — resolves the in-repo wiki root instantly;
|
|
28
35
|
the branch sync below proceeds against **this** repo's remote, exactly as before.
|
|
@@ -8,12 +8,16 @@ description: Answer a question from the LLM Wiki with citations. Reads the index
|
|
|
8
8
|
Answer from the wiki, with citations, without changing it (by default).
|
|
9
9
|
|
|
10
10
|
## Workflow
|
|
11
|
-
0. **Resolve the wiki root.** Run
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
0. **Resolve the wiki root.** Run the bundled resolver from the installed Lisa wiki plugin, not from
|
|
12
|
+
the consumer repository's `scripts/` directory:
|
|
13
|
+
```bash
|
|
14
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
15
|
+
```
|
|
16
|
+
Use the returned `wikiRoot` as the base for every read below — never assume `wiki/`. A local wiki
|
|
17
|
+
resolves instantly (no-op); a wiki whose `.lisa.config.json` declares `wiki.source.url` is
|
|
18
|
+
mirrored and refreshed transparently first. The script is offline-tolerant (it proceeds with the
|
|
19
|
+
existing mirror and warns rather than blocking), so freshness is guaranteed here and the caller
|
|
20
|
+
never has to think about it.
|
|
17
21
|
1. Read `<wikiRoot>/index.md` to locate candidate pages; consult `<wikiRoot>/start-here.md` for orientation.
|
|
18
22
|
2. Drill into the relevant synthesis pages and their cited source notes.
|
|
19
23
|
3. Synthesize an answer. **Every claim cites its wiki page and/or source note.** If the wiki does not
|
|
@@ -21,8 +21,15 @@ performs the shared, ordered pipeline.
|
|
|
21
21
|
|
|
22
22
|
## Step 0 — resolve the wiki root (once per run)
|
|
23
23
|
|
|
24
|
-
Before anything else, run
|
|
25
|
-
|
|
24
|
+
Before anything else, run the bundled resolver from the installed Lisa wiki plugin, not from the
|
|
25
|
+
consumer repository's `scripts/` directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use the returned `wikiRoot` as the base for the whole pipeline — never hardcode `wiki/`. This is
|
|
32
|
+
mode-agnostic by design:
|
|
26
33
|
|
|
27
34
|
- **Local wiki** (no `wiki.source` in `.lisa.config.json`) — resolves the in-repo wiki root instantly;
|
|
28
35
|
the branch sync below proceeds against **this** repo's remote, exactly as before.
|
|
@@ -8,12 +8,16 @@ description: Answer a question from the LLM Wiki with citations. Reads the index
|
|
|
8
8
|
Answer from the wiki, with citations, without changing it (by default).
|
|
9
9
|
|
|
10
10
|
## Workflow
|
|
11
|
-
0. **Resolve the wiki root.** Run
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
0. **Resolve the wiki root.** Run the bundled resolver from the installed Lisa wiki plugin, not from
|
|
12
|
+
the consumer repository's `scripts/` directory:
|
|
13
|
+
```bash
|
|
14
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
15
|
+
```
|
|
16
|
+
Use the returned `wikiRoot` as the base for every read below — never assume `wiki/`. A local wiki
|
|
17
|
+
resolves instantly (no-op); a wiki whose `.lisa.config.json` declares `wiki.source.url` is
|
|
18
|
+
mirrored and refreshed transparently first. The script is offline-tolerant (it proceeds with the
|
|
19
|
+
existing mirror and warns rather than blocking), so freshness is guaranteed here and the caller
|
|
20
|
+
never has to think about it.
|
|
17
21
|
1. Read `<wikiRoot>/index.md` to locate candidate pages; consult `<wikiRoot>/start-here.md` for orientation.
|
|
18
22
|
2. Drill into the relevant synthesis pages and their cited source notes.
|
|
19
23
|
3. Synthesize an answer. **Every claim cites its wiki page and/or source note.** If the wiki does not
|
|
@@ -21,8 +21,15 @@ performs the shared, ordered pipeline.
|
|
|
21
21
|
|
|
22
22
|
## Step 0 — resolve the wiki root (once per run)
|
|
23
23
|
|
|
24
|
-
Before anything else, run
|
|
25
|
-
|
|
24
|
+
Before anything else, run the bundled resolver from the installed Lisa wiki plugin, not from the
|
|
25
|
+
consumer repository's `scripts/` directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use the returned `wikiRoot` as the base for the whole pipeline — never hardcode `wiki/`. This is
|
|
32
|
+
mode-agnostic by design:
|
|
26
33
|
|
|
27
34
|
- **Local wiki** (no `wiki.source` in `.lisa.config.json`) — resolves the in-repo wiki root instantly;
|
|
28
35
|
the branch sync below proceeds against **this** repo's remote, exactly as before.
|
|
@@ -8,12 +8,16 @@ description: Answer a question from the LLM Wiki with citations. Reads the index
|
|
|
8
8
|
Answer from the wiki, with citations, without changing it (by default).
|
|
9
9
|
|
|
10
10
|
## Workflow
|
|
11
|
-
0. **Resolve the wiki root.** Run
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
0. **Resolve the wiki root.** Run the bundled resolver from the installed Lisa wiki plugin, not from
|
|
12
|
+
the consumer repository's `scripts/` directory:
|
|
13
|
+
```bash
|
|
14
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
15
|
+
```
|
|
16
|
+
Use the returned `wikiRoot` as the base for every read below — never assume `wiki/`. A local wiki
|
|
17
|
+
resolves instantly (no-op); a wiki whose `.lisa.config.json` declares `wiki.source.url` is
|
|
18
|
+
mirrored and refreshed transparently first. The script is offline-tolerant (it proceeds with the
|
|
19
|
+
existing mirror and warns rather than blocking), so freshness is guaranteed here and the caller
|
|
20
|
+
never has to think about it.
|
|
17
21
|
1. Read `<wikiRoot>/index.md` to locate candidate pages; consult `<wikiRoot>/start-here.md` for orientation.
|
|
18
22
|
2. Drill into the relevant synthesis pages and their cited source notes.
|
|
19
23
|
3. Synthesize an answer. **Every claim cites its wiki page and/or source note.** If the wiki does not
|
|
@@ -21,8 +21,15 @@ performs the shared, ordered pipeline.
|
|
|
21
21
|
|
|
22
22
|
## Step 0 — resolve the wiki root (once per run)
|
|
23
23
|
|
|
24
|
-
Before anything else, run
|
|
25
|
-
|
|
24
|
+
Before anything else, run the bundled resolver from the installed Lisa wiki plugin, not from the
|
|
25
|
+
consumer repository's `scripts/` directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use the returned `wikiRoot` as the base for the whole pipeline — never hardcode `wiki/`. This is
|
|
32
|
+
mode-agnostic by design:
|
|
26
33
|
|
|
27
34
|
- **Local wiki** (no `wiki.source` in `.lisa.config.json`) — resolves the in-repo wiki root instantly;
|
|
28
35
|
the branch sync below proceeds against **this** repo's remote, exactly as before.
|
|
@@ -8,12 +8,16 @@ description: Answer a question from the LLM Wiki with citations. Reads the index
|
|
|
8
8
|
Answer from the wiki, with citations, without changing it (by default).
|
|
9
9
|
|
|
10
10
|
## Workflow
|
|
11
|
-
0. **Resolve the wiki root.** Run
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
0. **Resolve the wiki root.** Run the bundled resolver from the installed Lisa wiki plugin, not from
|
|
12
|
+
the consumer repository's `scripts/` directory:
|
|
13
|
+
```bash
|
|
14
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
15
|
+
```
|
|
16
|
+
Use the returned `wikiRoot` as the base for every read below — never assume `wiki/`. A local wiki
|
|
17
|
+
resolves instantly (no-op); a wiki whose `.lisa.config.json` declares `wiki.source.url` is
|
|
18
|
+
mirrored and refreshed transparently first. The script is offline-tolerant (it proceeds with the
|
|
19
|
+
existing mirror and warns rather than blocking), so freshness is guaranteed here and the caller
|
|
20
|
+
never has to think about it.
|
|
17
21
|
1. Read `<wikiRoot>/index.md` to locate candidate pages; consult `<wikiRoot>/start-here.md` for orientation.
|
|
18
22
|
2. Drill into the relevant synthesis pages and their cited source notes.
|
|
19
23
|
3. Synthesize an answer. **Every claim cites its wiki page and/or source note.** If the wiki does not
|
|
@@ -11,14 +11,23 @@ link_primary_worktree_node_modules() {
|
|
|
11
11
|
[ ! -e "node_modules" ] && [ ! -L "node_modules" ] || return 1
|
|
12
12
|
|
|
13
13
|
repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
# A linked worktree's --git-common-dir is <primary>/.git no matter where the
|
|
15
|
+
# worktree lives (.claude/worktrees, ~/.codex/worktrees, plain
|
|
16
|
+
# `git worktree add`), so derive the primary checkout from it. Fall back to
|
|
17
|
+
# the legacy .claude path parse on git <2.31 (no --path-format support).
|
|
18
|
+
git_common_dir="$(git rev-parse --path-format=absolute --git-common-dir 2>/dev/null || true)"
|
|
19
|
+
if [ -n "$git_common_dir" ]; then
|
|
20
|
+
primary_root="$(dirname "$git_common_dir")"
|
|
21
|
+
else
|
|
22
|
+
case "$repo_root" in
|
|
23
|
+
*/.claude/worktrees/*)
|
|
24
|
+
primary_root="${repo_root%%/.claude/worktrees/*}"
|
|
25
|
+
;;
|
|
26
|
+
*)
|
|
27
|
+
return 1
|
|
28
|
+
;;
|
|
29
|
+
esac
|
|
30
|
+
fi
|
|
22
31
|
|
|
23
32
|
[ "$primary_root" != "$repo_root" ] || return 1
|
|
24
33
|
[ -d "$primary_root/node_modules" ] || return 1
|
|
@@ -21,8 +21,15 @@ performs the shared, ordered pipeline.
|
|
|
21
21
|
|
|
22
22
|
## Step 0 — resolve the wiki root (once per run)
|
|
23
23
|
|
|
24
|
-
Before anything else, run
|
|
25
|
-
|
|
24
|
+
Before anything else, run the bundled resolver from the installed Lisa wiki plugin, not from the
|
|
25
|
+
consumer repository's `scripts/` directory:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Use the returned `wikiRoot` as the base for the whole pipeline — never hardcode `wiki/`. This is
|
|
32
|
+
mode-agnostic by design:
|
|
26
33
|
|
|
27
34
|
- **Local wiki** (no `wiki.source` in `.lisa.config.json`) — resolves the in-repo wiki root instantly;
|
|
28
35
|
the branch sync below proceeds against **this** repo's remote, exactly as before.
|
|
@@ -8,12 +8,16 @@ description: Answer a question from the LLM Wiki with citations. Reads the index
|
|
|
8
8
|
Answer from the wiki, with citations, without changing it (by default).
|
|
9
9
|
|
|
10
10
|
## Workflow
|
|
11
|
-
0. **Resolve the wiki root.** Run
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
0. **Resolve the wiki root.** Run the bundled resolver from the installed Lisa wiki plugin, not from
|
|
12
|
+
the consumer repository's `scripts/` directory:
|
|
13
|
+
```bash
|
|
14
|
+
node "${PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-$(npm root)/@codyswann/lisa/plugins/lisa-wiki}}}/scripts/ensure-wiki.mjs" --json
|
|
15
|
+
```
|
|
16
|
+
Use the returned `wikiRoot` as the base for every read below — never assume `wiki/`. A local wiki
|
|
17
|
+
resolves instantly (no-op); a wiki whose `.lisa.config.json` declares `wiki.source.url` is
|
|
18
|
+
mirrored and refreshed transparently first. The script is offline-tolerant (it proceeds with the
|
|
19
|
+
existing mirror and warns rather than blocking), so freshness is guaranteed here and the caller
|
|
20
|
+
never has to think about it.
|
|
17
21
|
1. Read `<wikiRoot>/index.md` to locate candidate pages; consult `<wikiRoot>/start-here.md` for orientation.
|
|
18
22
|
2. Drill into the relevant synthesis pages and their cited source notes.
|
|
19
23
|
3. Synthesize an answer. **Every claim cites its wiki page and/or source note.** If the wiki does not
|