chore: agent DX improvements#458
Conversation
✅ Deploy Preview for lando-core ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
- adds typescript and @types/lodash as devDependencies - adds allowJs, noEmit, skipLibCheck, ignoreDeprecations to jsconfig.json - adds npm run typecheck (source errors only) and typecheck:full - updates AGENTS.md with typecheck docs and consolidated gotchas
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
Autofix Details
Bugbot Autofix prepared a fix for 1 of the 2 issues found in the latest run.
- ✅ Fixed:
jsconfig.jsoninclude omits key source directories and root files- Added missing source directories (app.js, index.js, bin/, experimental/, inits/, messages/, packages/) to jsconfig.json include array to match pkg.scripts.
Or push these changes by commenting:
@cursor push 856c32ab5f
Preview (856c32ab5f)
diff --git a/jsconfig.json b/jsconfig.json
--- a/jsconfig.json
+++ b/jsconfig.json
@@ -11,10 +11,17 @@
"resolveJsonModule": true
},
"include": [
+ "app.js",
+ "index.js",
+ "bin/**/*.js",
"builders/**/*.js",
"components/**/*.js",
+ "experimental/**/*.js",
"hooks/**/*.js",
+ "inits/**/*.js",
"lib/**/*.js",
+ "messages/**/*.js",
+ "packages/**/*.js",
"plugins/**/*.js",
"renderers/**/*.js",
"sources/**/*.js",You can send follow-ups to the cloud agent here.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Autofix Details
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Postinstall script breaks npm install on Windows
- Replaced POSIX-only commands with cross-platform Node.js script using child_process.execSync and fs.symlinkSync that gracefully handles errors with try/catch.
Or push these changes by commenting:
@cursor push 8834b3038f
Preview (8834b3038f)
diff --git a/package.json b/package.json
--- a/package.json
+++ b/package.json
@@ -39,7 +39,7 @@
"all": true
},
"scripts": {
- "postinstall": "command -v claude >/dev/null 2>&1 && ln -sf AGENTS.md CLAUDE.md || true",
+ "postinstall": "node -e \"try { require('child_process').execSync('claude --version', {stdio: 'ignore'}); require('fs').symlinkSync('AGENTS.md', 'CLAUDE.md', 'file'); } catch {}\"",
"coverage": "nyc report --reporter=text-lcov | coveralls",
"docs:build": "VPL_MVB_VERSION=$(git describe --tags --always --abbrev=1 --match=\"v[0-9].*\") vitepress build docs && npm run docs:rename-sitemap",
"docs:dev": "VPL_BASE_URL=http://localhost:5173 VPL_MVB_VERSION=$(git describe --tags --always --abbrev=1 --match=\"v[0-9].*\") vitepress dev docs",You can send follow-ups to the cloud agent here.
05b4a33 to
f72a458
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
There are 2 total unresolved issues (including 1 from previous review).
Autofix Details
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Typecheck script uses grep unavailable on Windows
- Replaced grep command with cross-platform Node.js script that filters node_modules lines from TypeScript compiler output.
Or push these changes by commenting:
@cursor push 78091d6151
Preview (78091d6151)
diff --git a/package.json b/package.json
--- a/package.json
+++ b/package.json
@@ -51,7 +51,7 @@
"test:unit": "nyc --reporter=html --reporter=text mocha --timeout 5000 test/**/*.spec.js",
"test:leia": "leia \"examples/**/README.md\" -c 'Destroy tests' --stdin",
"test": "npm run lint && npm run test:unit",
- "typecheck": "tsc --project jsconfig.json 2>&1 | grep -v '^node_modules/' || true",
+ "typecheck": "tsc --project jsconfig.json 2>&1 | node scripts/filter-typecheck.js || true",
"typecheck:full": "tsc --project jsconfig.json || true"
},
"pkg": {
diff --git a/scripts/filter-typecheck.js b/scripts/filter-typecheck.js
new file mode 100644
--- /dev/null
+++ b/scripts/filter-typecheck.js
@@ -1,0 +1,15 @@
+#!/usr/bin/env node
+
+const readline = require('readline');
+
+const rl = readline.createInterface({
+ input: process.stdin,
+ output: process.stdout,
+ terminal: false,
+});
+
+rl.on('line', line => {
+ if (!line.startsWith('node_modules/')) {
+ console.log(line);
+ }
+});You can send follow-ups to the cloud agent here.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Autofix Details
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed:
postinstallprints confusing message to downstream consumers- Added a check for the 'test' directory (excluded from published packages) to ensure the postinstall script only runs in development environments.
Or push these changes by commenting:
@cursor push 6a46b4e8f7
Preview (6a46b4e8f7)
diff --git a/package.json b/package.json
--- a/package.json
+++ b/package.json
@@ -39,7 +39,7 @@
"all": true
},
"scripts": {
- "postinstall": "node -e \"try{require('fs').statSync('CLAUDE.md')}catch{console.log('Tip: symlink CLAUDE.md -> AGENTS.md for Claude Code support:\\n Unix: ln -sf AGENTS.md CLAUDE.md\\n Windows: mklink CLAUDE.md AGENTS.md')}\"",
+ "postinstall": "node -e \"try{if(require('fs').existsSync('test')){try{require('fs').statSync('CLAUDE.md')}catch{console.log('Tip: symlink CLAUDE.md -> AGENTS.md for Claude Code support:\\n Unix: ln -sf AGENTS.md CLAUDE.md\\n Windows: mklink CLAUDE.md AGENTS.md')}}}catch{}\"",
"coverage": "nyc report --reporter=text-lcov | coveralls",
"docs:build": "VPL_MVB_VERSION=$(git describe --tags --always --abbrev=1 --match=\"v[0-9].*\") vitepress build docs && npm run docs:rename-sitemap",
"docs:dev": "VPL_BASE_URL=http://localhost:5173 VPL_MVB_VERSION=$(git describe --tags --always --abbrev=1 --match=\"v[0-9].*\") vitepress dev docs",You can send follow-ups to the cloud agent here.
Co-authored-by: Aaron Feledy <AaronFeledy@users.noreply.github.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Stale
hasInstallScriptflag in lockfile without install script- Regenerated package-lock.json with npm install to remove the stale hasInstallScript flag that had no corresponding install scripts in package.json.
Or push these changes by commenting:
@cursor push bfddc78d2c
Preview (bfddc78d2c)
diff --git a/package-lock.json b/package-lock.json
--- a/package-lock.json
+++ b/package-lock.json
@@ -7,7 +7,6 @@
"": {
"name": "@lando/core",
"version": "3.26.3",
- "hasInstallScript": true,
"license": "MIT",
"dependencies": {
"@lando/argv": "^1.2.0",You can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit 5d3c5ea. Configure here.
Applied via @cursor push command



Adds AGENTS.md and jsconfig.json to improve agent and editor DX.
AGENTS.mdat repo root: commands, architecture, config, TypeScript migration pattern, gotchasexamples/AGENTS.md: Leia spec conventions and CI workflow guidancejsconfig.json: enablescheckJsacross all source directories for JSDoc type validationtypescript+@types/lodashadded as devDependenciesnpm run typecheck/typecheck:fullscripts for local type-checking viatsc --project jsconfig.jsonNote
Low Risk
Primarily adds documentation and developer tooling (TypeScript-based
checkJs) with no runtime behavior changes; main risk is new local typecheck noise or minor devDependency churn.Overview
Improves contributor/agent and editor DX by adding repo guidance (
AGENTS.mdplusexamples/AGENTS.md) and ignoringCLAUDE.mdin.gitignore.Introduces
jsconfig.jsonwithcheckJsfor JSDoc-based validation across source directories, addstypescriptand@types/lodashas devDependencies, and wires upnpm run typecheck/typecheck:fullscripts to runtsclocally.Reviewed by Cursor Bugbot for commit fa30718. Bugbot is set up for automated code reviews on this repo. Configure here.