@codyswann/lisa 2.190.2 → 2.190.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/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/inject-rules.sh +9 -2
- 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/inject-rules.sh +9 -2
- 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-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/hooks/inject-rules.sh +9 -2
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/hooks/inject-rules.sh +9 -2
- 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/hooks/inject-rules.sh +9 -2
- package/plugins/src/rails/hooks/inject-rules.sh +9 -2
- package/scripts/build-plugins.sh +6 -4
- package/scripts/check-plugins-sync.sh +3 -2
package/package.json
CHANGED
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
"ws": ">=8.20.1"
|
|
96
96
|
},
|
|
97
97
|
"name": "@codyswann/lisa",
|
|
98
|
-
"version": "2.190.
|
|
98
|
+
"version": "2.190.4",
|
|
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": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# Reads all .md files from the plugin's rules/eager/ directory and injects them
|
|
3
|
-
# into the session context via additionalContext.
|
|
3
|
+
# into the session context via hookSpecificOutput.additionalContext.
|
|
4
4
|
# Used by SessionStart and SubagentStart hooks.
|
|
5
5
|
#
|
|
6
6
|
# The split between eager and reference rules is documented in
|
|
@@ -9,6 +9,13 @@
|
|
|
9
9
|
# eager breadcrumb points to them.
|
|
10
10
|
set -euo pipefail
|
|
11
11
|
|
|
12
|
+
INPUT=$(cat 2>/dev/null || true)
|
|
13
|
+
if [ -n "$INPUT" ]; then
|
|
14
|
+
HOOK_EVENT=$(printf '%s' "$INPUT" | jq -r '.hook_event_name // "SessionStart"' 2>/dev/null || echo "SessionStart")
|
|
15
|
+
else
|
|
16
|
+
HOOK_EVENT="SessionStart"
|
|
17
|
+
fi
|
|
18
|
+
|
|
12
19
|
RULES_DIR="${CLAUDE_PLUGIN_ROOT}/rules/eager"
|
|
13
20
|
|
|
14
21
|
# Backward compatibility: if the eager subdir is absent (older Lisa install),
|
|
@@ -30,4 +37,4 @@ done
|
|
|
30
37
|
[ -n "$CONTEXT" ] || exit 0
|
|
31
38
|
|
|
32
39
|
# Output as JSON — jq handles escaping
|
|
33
|
-
jq -n --arg ctx "$CONTEXT" '{"additionalContext": $ctx}'
|
|
40
|
+
jq -n --arg event "$HOOK_EVENT" --arg ctx "$CONTEXT" '{"hookSpecificOutput": {"hookEventName": $event, "additionalContext": $ctx}}'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# Reads all .md files from the plugin's rules/eager/ directory and injects them
|
|
3
|
-
# into the session context via additionalContext.
|
|
3
|
+
# into the session context via hookSpecificOutput.additionalContext.
|
|
4
4
|
# Used by SessionStart and SubagentStart hooks.
|
|
5
5
|
#
|
|
6
6
|
# The split between eager and reference rules is documented in
|
|
@@ -9,6 +9,13 @@
|
|
|
9
9
|
# eager breadcrumb points to them.
|
|
10
10
|
set -euo pipefail
|
|
11
11
|
|
|
12
|
+
INPUT=$(cat 2>/dev/null || true)
|
|
13
|
+
if [ -n "$INPUT" ]; then
|
|
14
|
+
HOOK_EVENT=$(printf '%s' "$INPUT" | jq -r '.hook_event_name // "SessionStart"' 2>/dev/null || echo "SessionStart")
|
|
15
|
+
else
|
|
16
|
+
HOOK_EVENT="SessionStart"
|
|
17
|
+
fi
|
|
18
|
+
|
|
12
19
|
RULES_DIR="${CLAUDE_PLUGIN_ROOT}/rules/eager"
|
|
13
20
|
|
|
14
21
|
# Backward compatibility: if the eager subdir is absent (older Lisa install),
|
|
@@ -30,4 +37,4 @@ done
|
|
|
30
37
|
[ -n "$CONTEXT" ] || exit 0
|
|
31
38
|
|
|
32
39
|
# Output as JSON — jq handles escaping
|
|
33
|
-
jq -n --arg ctx "$CONTEXT" '{"additionalContext": $ctx}'
|
|
40
|
+
jq -n --arg event "$HOOK_EVENT" --arg ctx "$CONTEXT" '{"hookSpecificOutput": {"hookEventName": $event, "additionalContext": $ctx}}'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.190.
|
|
3
|
+
"version": "2.190.4",
|
|
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.190.
|
|
3
|
+
"version": "2.190.4",
|
|
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.190.
|
|
3
|
+
"version": "2.190.4",
|
|
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.190.
|
|
3
|
+
"version": "2.190.4",
|
|
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.190.
|
|
3
|
+
"version": "2.190.4",
|
|
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,9 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# Reads all .md files from the plugin's rules/ directory and injects them
|
|
3
|
-
# into the session context via additionalContext.
|
|
3
|
+
# into the session context via hookSpecificOutput.additionalContext.
|
|
4
4
|
# Used by SessionStart and SubagentStart hooks.
|
|
5
5
|
set -euo pipefail
|
|
6
6
|
|
|
7
|
+
INPUT=$(cat 2>/dev/null || true)
|
|
8
|
+
if [ -n "$INPUT" ]; then
|
|
9
|
+
HOOK_EVENT=$(printf '%s' "$INPUT" | jq -r '.hook_event_name // "SessionStart"' 2>/dev/null || echo "SessionStart")
|
|
10
|
+
else
|
|
11
|
+
HOOK_EVENT="SessionStart"
|
|
12
|
+
fi
|
|
13
|
+
|
|
7
14
|
RULES_DIR="${CLAUDE_PLUGIN_ROOT}/rules"
|
|
8
15
|
|
|
9
16
|
# Bail silently if no rules directory
|
|
@@ -19,4 +26,4 @@ done
|
|
|
19
26
|
[ -n "$CONTEXT" ] || exit 0
|
|
20
27
|
|
|
21
28
|
# Output as JSON — jq handles escaping
|
|
22
|
-
jq -n --arg ctx "$CONTEXT" '{"additionalContext": $ctx}'
|
|
29
|
+
jq -n --arg event "$HOOK_EVENT" --arg ctx "$CONTEXT" '{"hookSpecificOutput": {"hookEventName": $event, "additionalContext": $ctx}}'
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# Reads all .md files from the plugin's rules/ directory and injects them
|
|
3
|
-
# into the session context via additionalContext.
|
|
3
|
+
# into the session context via hookSpecificOutput.additionalContext.
|
|
4
4
|
# Used by SessionStart and SubagentStart hooks.
|
|
5
5
|
set -euo pipefail
|
|
6
6
|
|
|
7
|
+
INPUT=$(cat 2>/dev/null || true)
|
|
8
|
+
if [ -n "$INPUT" ]; then
|
|
9
|
+
HOOK_EVENT=$(printf '%s' "$INPUT" | jq -r '.hook_event_name // "SessionStart"' 2>/dev/null || echo "SessionStart")
|
|
10
|
+
else
|
|
11
|
+
HOOK_EVENT="SessionStart"
|
|
12
|
+
fi
|
|
13
|
+
|
|
7
14
|
RULES_DIR="${CLAUDE_PLUGIN_ROOT}/rules"
|
|
8
15
|
|
|
9
16
|
# Bail silently if no rules directory
|
|
@@ -19,4 +26,4 @@ done
|
|
|
19
26
|
[ -n "$CONTEXT" ] || exit 0
|
|
20
27
|
|
|
21
28
|
# Output as JSON — jq handles escaping
|
|
22
|
-
jq -n --arg ctx "$CONTEXT" '{"additionalContext": $ctx}'
|
|
29
|
+
jq -n --arg event "$HOOK_EVENT" --arg ctx "$CONTEXT" '{"hookSpecificOutput": {"hookEventName": $event, "additionalContext": $ctx}}'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# Reads all .md files from the plugin's rules/eager/ directory and injects them
|
|
3
|
-
# into the session context via additionalContext.
|
|
3
|
+
# into the session context via hookSpecificOutput.additionalContext.
|
|
4
4
|
# Used by SessionStart and SubagentStart hooks.
|
|
5
5
|
#
|
|
6
6
|
# The split between eager and reference rules is documented in
|
|
@@ -9,6 +9,13 @@
|
|
|
9
9
|
# eager breadcrumb points to them.
|
|
10
10
|
set -euo pipefail
|
|
11
11
|
|
|
12
|
+
INPUT=$(cat 2>/dev/null || true)
|
|
13
|
+
if [ -n "$INPUT" ]; then
|
|
14
|
+
HOOK_EVENT=$(printf '%s' "$INPUT" | jq -r '.hook_event_name // "SessionStart"' 2>/dev/null || echo "SessionStart")
|
|
15
|
+
else
|
|
16
|
+
HOOK_EVENT="SessionStart"
|
|
17
|
+
fi
|
|
18
|
+
|
|
12
19
|
RULES_DIR="${CLAUDE_PLUGIN_ROOT}/rules/eager"
|
|
13
20
|
|
|
14
21
|
# Backward compatibility: if the eager subdir is absent (older Lisa install),
|
|
@@ -30,4 +37,4 @@ done
|
|
|
30
37
|
[ -n "$CONTEXT" ] || exit 0
|
|
31
38
|
|
|
32
39
|
# Output as JSON — jq handles escaping
|
|
33
|
-
jq -n --arg ctx "$CONTEXT" '{"additionalContext": $ctx}'
|
|
40
|
+
jq -n --arg event "$HOOK_EVENT" --arg ctx "$CONTEXT" '{"hookSpecificOutput": {"hookEventName": $event, "additionalContext": $ctx}}'
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# Reads all .md files from the plugin's rules/ directory and injects them
|
|
3
|
-
# into the session context via additionalContext.
|
|
3
|
+
# into the session context via hookSpecificOutput.additionalContext.
|
|
4
4
|
# Used by SessionStart and SubagentStart hooks.
|
|
5
5
|
set -euo pipefail
|
|
6
6
|
|
|
7
|
+
INPUT=$(cat 2>/dev/null || true)
|
|
8
|
+
if [ -n "$INPUT" ]; then
|
|
9
|
+
HOOK_EVENT=$(printf '%s' "$INPUT" | jq -r '.hook_event_name // "SessionStart"' 2>/dev/null || echo "SessionStart")
|
|
10
|
+
else
|
|
11
|
+
HOOK_EVENT="SessionStart"
|
|
12
|
+
fi
|
|
13
|
+
|
|
7
14
|
RULES_DIR="${CLAUDE_PLUGIN_ROOT}/rules"
|
|
8
15
|
|
|
9
16
|
# Bail silently if no rules directory
|
|
@@ -19,4 +26,4 @@ done
|
|
|
19
26
|
[ -n "$CONTEXT" ] || exit 0
|
|
20
27
|
|
|
21
28
|
# Output as JSON — jq handles escaping
|
|
22
|
-
jq -n --arg ctx "$CONTEXT" '{"additionalContext": $ctx}'
|
|
29
|
+
jq -n --arg event "$HOOK_EVENT" --arg ctx "$CONTEXT" '{"hookSpecificOutput": {"hookEventName": $event, "additionalContext": $ctx}}'
|
package/scripts/build-plugins.sh
CHANGED
|
@@ -30,11 +30,12 @@ build_plugin() {
|
|
|
30
30
|
local src_name="$1"
|
|
31
31
|
local out_name="$2"
|
|
32
32
|
local src="$SRC_DIR/$src_name"
|
|
33
|
+
local out="$PLUGINS_DIR/$out_name"
|
|
33
34
|
if [ ! -d "$src" ]; then
|
|
34
|
-
|
|
35
|
+
rm -rf "$out"
|
|
36
|
+
echo "Removed plugins/$out_name (no source at plugins/src/$src_name)"
|
|
35
37
|
return 0
|
|
36
38
|
fi
|
|
37
|
-
local out="$PLUGINS_DIR/$out_name"
|
|
38
39
|
rm -rf "$out"
|
|
39
40
|
mkdir -p "$out"
|
|
40
41
|
cp -r "$src/." "$out/"
|
|
@@ -57,11 +58,12 @@ build_per_agent_variant() {
|
|
|
57
58
|
local src_name="$2"
|
|
58
59
|
local out_name="$3"
|
|
59
60
|
local src="$PLUGINS_DIR/$src_name"
|
|
61
|
+
local out="$PLUGINS_DIR/$out_name"
|
|
60
62
|
if [ ! -d "$src" ]; then
|
|
61
|
-
|
|
63
|
+
rm -rf "$out"
|
|
64
|
+
echo "Removed per-agent variant $out_name (no plugins/$src_name source)"
|
|
62
65
|
return 0
|
|
63
66
|
fi
|
|
64
|
-
local out="$PLUGINS_DIR/$out_name"
|
|
65
67
|
node "$ROOT_DIR/scripts/generate-${agent}-plugin-artifacts.mjs" "$src" "$out" "$VERSION"
|
|
66
68
|
}
|
|
67
69
|
|
|
@@ -24,11 +24,12 @@ fi
|
|
|
24
24
|
|
|
25
25
|
bun run build:plugins >/dev/null
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
plugin_status="$(git status --porcelain -- plugins/)"
|
|
28
|
+
if [ -n "$plugin_status" ]; then
|
|
28
29
|
echo "✗ Generated plugin artifacts are out of sync with plugins/src." >&2
|
|
29
30
|
echo "" >&2
|
|
30
31
|
echo " Files that changed after rebuilding from source:" >&2
|
|
31
|
-
|
|
32
|
+
printf "%s\n" "$plugin_status" | sed 's/^/ /' >&2
|
|
32
33
|
echo "" >&2
|
|
33
34
|
echo " plugins/lisa and plugins/lisa-* are GENERATED from plugins/src by" >&2
|
|
34
35
|
echo " 'bun run build:plugins'. Never edit them directly — the next build" >&2
|