lintgpt
1.0.0
Lintgpt는 AI를 사용하여 버그에 대한 코드를 스캔합니다.
상태 : 알파 a
--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로 보내는 경우도 있습니다. 민감한 정보가 포함 된 파일에 사용하지 마십시오.