@codyswann/lisa 2.189.15 → 2.189.17

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.
Files changed (53) hide show
  1. package/npm-package/create-only/.github/workflows/publish-to-npm.yml +155 -0
  2. package/npm-package/package-lisa/package.lisa.json +25 -0
  3. package/package.json +2 -1
  4. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  5. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  6. package/plugins/lisa-agy/plugin.json +1 -1
  7. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  8. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  9. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  10. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  11. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  12. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  13. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  14. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  15. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  16. package/plugins/lisa-expo-agy/plugin.json +1 -1
  17. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  18. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  19. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  20. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  21. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  22. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  23. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  24. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  25. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  26. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  27. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  28. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  29. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  30. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  31. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  32. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  33. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  34. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  35. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  36. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  37. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  38. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  39. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  40. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  41. package/plugins/lisa-rails-agy/plugin.json +1 -1
  42. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  43. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  44. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  45. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  46. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  47. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  48. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  49. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  50. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  51. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  52. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  53. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
@@ -0,0 +1,155 @@
1
+ # This file was created by Lisa on first setup.
2
+ # You can customize this file — Lisa will not overwrite it.
3
+
4
+ # Reusable workflow for publishing to npm with OIDC trusted publishing
5
+ # This workflow is not callable directly - it must be called from another workflow
6
+ #
7
+ # Usage:
8
+ # publish:
9
+ # uses: ./.github/workflows/publish-to-npm.yml
10
+ # needs: [release]
11
+ # with:
12
+ # tag: ${{ needs.release.outputs.tag }}
13
+ # version: ${{ needs.release.outputs.version }}
14
+ # node_version: '22.x'
15
+ # package_manager: 'bun'
16
+
17
+ name: Publish to npm
18
+
19
+ on:
20
+ workflow_call:
21
+ inputs:
22
+ tag:
23
+ description: 'Git tag to publish from'
24
+ required: true
25
+ type: string
26
+ version:
27
+ description: 'Version to publish'
28
+ required: true
29
+ type: string
30
+ node_version:
31
+ description: 'Node.js version to use'
32
+ required: false
33
+ default: '20.x'
34
+ type: string
35
+ package_manager:
36
+ description: 'Package manager to use (npm, yarn, or bun)'
37
+ required: false
38
+ default: 'npm'
39
+ type: string
40
+
41
+ # Required permissions for OIDC publishing
42
+ permissions:
43
+ contents: read
44
+ id-token: write # Required for npm OIDC trusted publishing
45
+
46
+ jobs:
47
+ publish:
48
+ name: Publish to npm
49
+ runs-on: ubuntu-latest
50
+ steps:
51
+ - name: Validate inputs
52
+ run: |
53
+ if [ -z "${{ inputs.tag }}" ]; then
54
+ echo "::error::Tag input is empty - cannot publish without a version tag"
55
+ echo "This usually means the version job was skipped (e.g., promotion merge detected)"
56
+ exit 1
57
+ fi
58
+ if [ -z "${{ inputs.version }}" ]; then
59
+ echo "::error::Version input is empty - cannot publish without a version"
60
+ exit 1
61
+ fi
62
+ echo "✅ Inputs validated: tag=${{ inputs.tag }}, version=${{ inputs.version }}"
63
+
64
+ - name: Checkout
65
+ uses: actions/checkout@v6
66
+ with:
67
+ fetch-depth: 0
68
+
69
+ - name: Wait for tag to be available
70
+ run: |
71
+ echo "Waiting for tag ${{ inputs.tag }} to be available..."
72
+ for i in {1..30}; do
73
+ git fetch --tags
74
+ if git tag --list | grep -q "^${{ inputs.tag }}$"; then
75
+ echo "Tag ${{ inputs.tag }} is now available"
76
+ git checkout ${{ inputs.tag }}
77
+ break
78
+ fi
79
+ echo "Attempt $i/30: Tag not found yet, waiting 10 seconds..."
80
+ sleep 10
81
+ done
82
+
83
+ # Final check
84
+ if [ "$(git describe --exact-match --tags 2>/dev/null)" != "${{ inputs.tag }}" ]; then
85
+ echo "Error: Tag ${{ inputs.tag }} is still not available after 5 minutes"
86
+ exit 1
87
+ fi
88
+
89
+ - name: Setup bun
90
+ if: inputs.package_manager == 'bun'
91
+ uses: oven-sh/setup-bun@v2
92
+ with:
93
+ bun-version: '1.3.8'
94
+
95
+ - name: Setup Node.js
96
+ uses: actions/setup-node@v6
97
+ with:
98
+ package-manager-cache: false
99
+ node-version: ${{ inputs.node_version }}
100
+ registry-url: 'https://registry.npmjs.org'
101
+ cache: ${{ inputs.package_manager != 'bun' && inputs.package_manager || '' }}
102
+
103
+ - name: Update npm for OIDC support
104
+ run: npm install -g npm@latest
105
+
106
+ - name: Install dependencies
107
+ run: |
108
+ if [ "${{ inputs.package_manager }}" = "npm" ]; then
109
+ npm ci
110
+ elif [ "${{ inputs.package_manager }}" = "yarn" ]; then
111
+ yarn install --frozen-lockfile
112
+ elif [ "${{ inputs.package_manager }}" = "bun" ]; then
113
+ bun install --frozen-lockfile
114
+ fi
115
+
116
+ - name: Build package
117
+ run: ${{ inputs.package_manager }} run build
118
+
119
+ - name: Update package version
120
+ run: |
121
+ # Update package.json to match the release version
122
+ VERSION="${{ inputs.version }}"
123
+ if [ -n "$VERSION" ]; then
124
+ echo "Updating package.json to version $VERSION"
125
+ npm version $VERSION --no-git-tag-version --allow-same-version
126
+ fi
127
+
128
+ - name: Publish to npm with OIDC
129
+ run: npm publish --access public --provenance
130
+ # npm publish is required for OIDC provenance - bun publish doesn't support --provenance yet
131
+ # Configure trusted publisher at: https://www.npmjs.com/package/<package-name>/access
132
+
133
+ - name: Publish @codyswann/eslint-plugin-code-organization
134
+ if: ${{ hashFiles('eslint-plugin-code-organization/package.json') != '' }}
135
+ run: |
136
+ cd eslint-plugin-code-organization
137
+ npm version ${{ inputs.version }} --no-git-tag-version --allow-same-version
138
+ npm publish --access public --provenance
139
+
140
+ - name: Publish @codyswann/eslint-plugin-component-structure
141
+ if: ${{ hashFiles('eslint-plugin-component-structure/package.json') != '' }}
142
+ run: |
143
+ cd eslint-plugin-component-structure
144
+ npm version ${{ inputs.version }} --no-git-tag-version --allow-same-version
145
+ npm publish --access public --provenance
146
+
147
+ - name: Publish @codyswann/eslint-plugin-ui-standards
148
+ if: ${{ hashFiles('eslint-plugin-ui-standards/package.json') != '' }}
149
+ run: |
150
+ cd eslint-plugin-ui-standards
151
+ npm version ${{ inputs.version }} --no-git-tag-version --allow-same-version
152
+ npm publish --access public --provenance
153
+
154
+ - name: Notify on success
155
+ run: echo "Successfully published version ${{ inputs.version }} to npm with provenance"
@@ -0,0 +1,25 @@
1
+ {
2
+ "force": {
3
+ "scripts": {
4
+ "prepublishOnly": "$npm_execpath run build",
5
+ "setup:deploy-key": "setup-deploy-key",
6
+ "prepare": "$npm_execpath run build || husky install || true"
7
+ },
8
+ "devDependencies": {
9
+ "vite": "^8.0.16",
10
+ "vitest": "^4.1.0",
11
+ "@vitest/coverage-v8": "^4.1.0"
12
+ },
13
+ "overrides": {
14
+ "vite": "$vite"
15
+ },
16
+ "resolutions": {
17
+ "vite": "$vite"
18
+ }
19
+ },
20
+ "defaults": {
21
+ "files": [
22
+ "dist"
23
+ ]
24
+ }
25
+ }
package/package.json CHANGED
@@ -51,6 +51,7 @@
51
51
  "dist",
52
52
  "all",
53
53
  "typescript",
54
+ "npm-package",
54
55
  "expo",
55
56
  "nestjs",
56
57
  "cdk",
@@ -94,7 +95,7 @@
94
95
  "ws": ">=8.20.1"
95
96
  },
96
97
  "name": "@codyswann/lisa",
97
- "version": "2.189.15",
98
+ "version": "2.189.17",
98
99
  "description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
99
100
  "main": "dist/index.js",
100
101
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Universal governance — agents, skills, commands, hooks, and rules for all projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Universal governance: agents, skills, commands, hooks, and rules for all projects.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Universal governance — agents, skills, commands, hooks, and rules for all projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "AWS CDK-specific plugin",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "AWS CDK-specific Lisa plugin.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "AWS CDK-specific plugin",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "AWS CDK-specific plugin",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "AWS CDK-specific plugin",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Universal governance — agents, skills, commands, hooks, and rules for all projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Universal governance — agents, skills, commands, hooks, and rules for all projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Expo/React Native-specific skills, agents, rules, and MCP servers",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Expo and React Native-specific skills, agents, rules, and MCP servers.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Expo/React Native-specific skills, agents, rules, and MCP servers",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Expo/React Native-specific skills, agents, rules, and MCP servers",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Expo/React Native-specific skills, agents, rules, and MCP servers",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Harper/Fabric-specific rules for TypeScript component apps",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Harper/Fabric-specific Lisa rules for TypeScript component apps.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Harper/Fabric-specific rules for TypeScript component apps",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Harper/Fabric-specific rules for TypeScript component apps",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Harper/Fabric-specific rules for TypeScript component apps",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "NestJS-specific skills and migration write-protection hooks.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
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.189.15",
3
+ "version": "2.189.17",
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.189.15",
3
+ "version": "2.189.17",
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.189.15",
3
+ "version": "2.189.17",
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.189.15",
3
+ "version": "2.189.17",
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-phaser",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Phaser 4 game-development rules for TypeScript projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-phaser",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Phaser 4 game-development rules for TypeScript projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-phaser",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Phaser 4 game-development rules for TypeScript projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-phaser",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Phaser 4 game-development rules for TypeScript projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-phaser",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Phaser 4 game-development rules for TypeScript projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Ruby on Rails-specific skills and hooks for RuboCop and ast-grep scanning on edit.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "TypeScript-specific hooks for formatting, linting, and ast-grep scanning on edit.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "Distributable LLM Wiki kernel — ingest, query, lint, and maintain a git-native markdown knowledge base across Claude and Codex.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.189.15",
3
+ "version": "2.189.17",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"