Lintgpt сканирует ваш код на наличие ошибок с помощью AI.
Статус: Альфа ⚡
--fix .npm install lintgpt для установки.$OPENAI_API_KEY , которую вы можете создать здесь. Ниже приведен пример пользовательского класса в TypeScript. Он проходит проверку типов, и нет ошибок в стиле Eslint. Тем не менее, эта программа все еще содержит несколько ошибок:
export class User {
constructor ( readonly firstName : string , readonly lastName : string , readonly age : number ) {
}
getFirstName ( ) : string {
return this . firstName
}
getLastName ( ) : string {
return this . firstName
}
getFullName ( ) : string {
return this . firstName + this . lastName
}
isLegalDrinkingAge ( ) : boolean {
return this . age > 10
}
} Использование lintgpt может понять намерения и ловить логические ошибки, которые трудно обнаружить с помощью других инструментов:
$ npx lintgpt user.ts
✘ getLastName method returns firstName instead of lastName
user.ts:10:12
10 │ return this.firstName
│ ~~~~~~~~~~~~~~
✘ getFullName method does not include a space between firstName and lastName
user.ts:14:12
14 │ return this.firstName + this.lastName
│ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
✘ isLegalDrinkingAge method checks if age is greater than 10, not the legal drinking age in most countries
user.ts:18:23
18 │ return this.age > 10
│ ~~
Found 3 problems in user.ts.
Вы даже можете пройти --fix для автоматического применения предлагаемых изменений в ваши файлы.
$ npx lintgpt user.ts --fix
✔ getLastName method returns firstName instead of lastName
user.ts:10:12
10 │ return this.firstName
│ ~~~~~~~~~~~~~~
Fixed:
│ return this.lastName
✔ getFullName method does not include a space between firstName and lastName
user.ts:14:12
14 │ return this.firstName + this.lastName
│ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Fixed:
│ return this.firstName + ' ' + this.lastName
✔ isLegalDrinkingAge method checks if age is greater than 10, not the legal drinking age in most countries
user.ts:18:23
18 │ return this.age > 10
│ ~~
Fixed:
│ return this.age > 21
Для получения дополнительных вариантов см. lintgpt --help .
GPT не идеален, и часто сообщает о вещах, которые не являются ошибками, или предлагает неправильные исправления. Берегите себя при использовании опции --fix для просмотра любых изменений.
Хороший способ подумать о Lintgpt - это команда стажеров в старших классах, которые только что закончили свой первый курс компьютерных наук. Попросите их просмотреть ваш код, и они могут найти несколько вещей, но возьмите свои результаты с зерном соли.
Пожалуйста, также помните, что Lintgpt отправляет файлы, которые вы передаете их в OpenAI. Не используйте его в файлах, содержащих конфиденциальную информацию.