Lisa Implementation Review
This skill compares the current project's Lisa-managed files against Lisa's source templates to identify drift and offer to upstream improvements back to Lisa.
Prerequisites
This skill requires access to the Lisa installation directory. Either:
- •Start Claude Code with
--add-dir ~/lisa(or your Lisa path) - •Pass the Lisa directory as an argument:
/lisa-review-implementation ~/lisa
Instructions
Step 1: Locate Lisa Directory
First, determine the Lisa installation directory:
- •If an argument was provided, use that path
- •Otherwise, check if any
--add-dirpaths contain asrc/core/lisa.tsfile (Lisa's signature file) - •Common locations to check:
~/lisa,~/workspace/lisa,../lisa
If Lisa directory cannot be found, inform the user:
Unable to locate Lisa installation directory. Please either: 1. Start Claude Code with: claude --add-dir /path/to/lisa 2. Run this command with the path: /lisa-review-implementation /path/to/lisa
Step 2: Read the Manifest
Read the project's .lisa-manifest file to get the list of managed files.
Parse each line to extract:
- •
strategy: The copy strategy used (copy-overwrite, copy-contents, merge, create-only) - •
relativePath: The file path relative to project root
Skip:
- •Lines starting with
#(comments) - •Empty lines
- •Files with
create-onlystrategy (these are meant to be customized) - •Files with
mergestrategy (these are intentionally combined)
Step 3: Find Source Templates
For each managed file, locate its source in Lisa by checking these directories in order:
- •
npm-package/copy-overwrite/andnpm-package/copy-contents/ - •
cdk/copy-overwrite/andcdk/copy-contents/ - •
nestjs/copy-overwrite/andnestjs/copy-contents/ - •
expo/copy-overwrite/andexpo/copy-contents/ - •
typescript/copy-overwrite/andtypescript/copy-contents/ - •
all/copy-overwrite/andall/copy-contents/
The FIRST match wins (most specific type takes precedence).
Detect which project types apply by checking the project for:
- •
npm-package: package.json without"private": trueAND hasmain,bin,exports, orfiles - •
cdk: presence ofcdk.jsonoraws-cdkin dependencies - •
nestjs: presence ofnest-cli.jsonor@nestjsin dependencies - •
expo: presence ofapp.json,eas.json, orexpoin dependencies - •
typescript: presence oftsconfig.jsonortypescriptin dependencies
Only check type directories that match the project.
Step 4: Compare Files
For each file, compare the project version against the Lisa source:
- •Read both files
- •If identical, mark as "in sync"
- •If different, generate a diff summary
Use the Bash tool with diff to generate readable diffs:
diff -u "/path/to/lisa/source" "/path/to/project/file" || true
Step 5: Generate Report
Create a markdown report with these sections:
# Lisa Implementation Review **Project:** [project name from package.json] **Lisa Source:** [lisa directory path] **Generated:** [current date/time] ## Summary - **Total managed files:** X - **In sync:** X - **Drifted:** X - **Source not found:** X ## Drifted Files ### [relative/path/to/file] **Source:** [lisa-type]/copy-overwrite/[path] **Strategy:** copy-overwrite <details> <summary>View diff</summary> ```diff [diff output]
Recommendation: [Brief analysis of whether this change should be upstreamed]
[Repeat for each drifted file]
Files Not Found in Lisa
These files are in the manifest but their source templates couldn't be located:
- •[list of files]
In Sync Files
<details> <summary>X files are in sync with Lisa</summary>- •[list of files]
Step 6: Offer to Upstream Changes
After presenting the report, ask the user which drifted files they want to copy back to Lisa.
For each file the user wants to upstream:
- •Confirm the target path in Lisa (e.g.,
typescript/copy-overwrite/.github/workflows/ci.yml) - •Use the Write tool to copy the project's version to Lisa
- •Report success
Example prompt:
I found X files that have drifted from Lisa's templates. Which files would you like to copy back to Lisa? 1. .github/workflows/ci.yml - [brief description of changes] 2. .claude/settings.json - [brief description of changes] 3. All of the above 4. None - just show me the report Select an option (or list specific numbers):
Important Notes
- •Never auto-upstream without confirmation - always ask the user first
- •Preserve the most specific type directory - if a file exists in both
typescript/andall/, upstream to where it currently exists - •Handle binary files gracefully - skip comparison for non-text files
- •Respect .gitignore patterns - some generated files shouldn't be compared
- •For
copy-contentsfiles like.gitignore, the comparison is trickier since the project may have additional lines - highlight only if Lisa's required lines are missing
Example Usage
User: /lisa-review-implementation Claude: I'll review your project's Lisa-managed files against the Lisa source templates. [Locates Lisa directory] [Reads manifest] [Compares files] [Generates report] # Lisa Implementation Review **Project:** my-awesome-app **Lisa Source:** /Users/dev/lisa **Generated:** 2026-01-18 10:30:00 ## Summary - **Total managed files:** 45 - **In sync:** 42 - **Drifted:** 3 - **Source not found:** 0 ## Drifted Files ### .github/workflows/ci.yml **Source:** typescript/copy-overwrite/.github/workflows/ci.yml **Strategy:** copy-overwrite [diff details] **Recommendation:** This adds a new caching step that improves CI performance. Good candidate for upstreaming. --- I found 3 files that have drifted. Would you like to upstream any of these changes back to Lisa?