리뷰 지적에 답한 뒤 재요청과 상태 확인이 끊기면 PR은 쉽게 멈춘다. 답변·스레드 정리·재요청·감시를 한 라운드로 묶고, 종료 조건을 증거로 판정하는 작성자용 워크플로를 소개한다.
[Read More]
URL의 ID를 바꿔도 되는가: 프런트엔드 개발자의 BOLA 대응법
다른 사용자의 객체 ID를 넣었을 때 데이터가 보인다면 화면 문제가 아니라 서버의 객체 단위 인가 문제다. 프런트엔드 개발자가 BOLA 의심 지점을 발견하고 백엔드의 빠른 검증과 수정을 돕는 방법을 정리한다.
[Read More]
사실이 고정된 일은 맡기고, 움직이는 일은 지켜본다
에이전트에게 어디까지 맡길지는 작업의 난이도가 아니라 사실의 안정성으로 갈린다. 28개 앱 모노레포의 보안 패치를 함께 끝내고 그날 세션 기록을 세어 봤다. 자동 검사가 전부 통과한 뒤에 사람이 결함 세 건을 찾았고, 내 판단이 잠깐 꺼진 순간에는 예전에 적어 둔 규칙이 대신 판단했다.
[Read More]
설정을 복사하지 않고 AI 작업 환경을 다시 세우기
공개 스킬 저장소를 새 기기에서도 다시 쓸 수 있도록 사용자 규칙, 공용 스킬, 로컬 환경값을 분리했다. 설정 전체를 백업하는 대신 안전하게 작업 환경을 재구성하는 부트스트랩 계약을 정리한다.
[Read More]
Agent Skill Garden에 프론트엔드 리뷰 팩을 추가했다
PR의 현재 diff를 읽고 필요한 리뷰 관점만 선택하는 프론트엔드 리뷰 팩을 공개 저장소에 추가했다. 오케스트레이터와 React·TypeScript·Next.js·저장소 위생 리뷰가 어떻게 구성되는지 소개한다.
[Read More]
블로그 스킬을 공개했지만, 내 문체는 넣지 않았다
개인 블로그에서 잘 쓰던 스킬을 공개 저장소로 옮기면서 개인 설정 대신 재사용 가능한 워크플로와 초기화 절차를 남겼다. 각 사용자가 자기 블로그의 로컬 프로필을 만들고, 초안·점검·발행의 경계를 지키며 운영하는 구조를 정리한다.
[Read More]
내 사용 통계가 내 폴더 이름에 달려 있었다
AI 사용 기록을 분류하는 스크립트가 요청이 아니라 그 요청이 놓인 환경을 채점하고 있었다. 경로, 링크, 에디터가 붙인 컨텍스트, 그리고 도구 이름 자체가 카테고리를 결정했다. 무엇을 채점하면 안 되는지 정리한다.
[Read More]
E2E 검증을 설계와 실행으로 나눈 이유
브라우저 E2E는 실행보다 먼저 무엇을 확인하고 어떤 근거로 통과시킬지 정해야 한다. 테스트 설계와 실행을 두 스킬로 분리하고, 성공을 추정하지 않는 검증 계약을 공개 저장소에 추가했다.
[Read More]
빌드는 초록이었고, 컨테이너는 부팅하자마자 죽었다
타입 체크·빌드·배포 워크플로가 전부 성공했는데 컨테이너는 기동 직후 죽었다. 번들러가 복사한 파일과 런타임이 찾는 파일이 달랐기 때문이다. 자동화가 못 잡은 실패를 사람이 먼저 발견했고, 그다음에 지면 전수 검증을 자동화했다.
[Read More]
브랜치 2,001개 중 지우면 안 되는 건 3개였다
브랜치가 쌓여도 당장은 아프지 않아서 계속 미루게 된다. 공유 저장소와 로컬에서 각각 무엇이 나빠지는지 재보고, 안전하게 지우는 기준을 스킬로 굳힌 기록이다.
[Read More]
my-cursor는 잘 작동했지만, Agent Skill Garden으로 다시 시작했다
개인 AI 설정을 백업하고 동기화하는 방식은 도구가 바뀔수록 또 하나의 원본을 만들었다. 설정 파일이 아니라 반복 업무의 판단과 검증 절차를 공개 가능한 구조로 다시 설계한 과정을 정리한다.
[Read More]
그럴듯한 설명이 측정을 대신할 때
버그 제보가 개발자에게 도착했을 때 원인은 사라지고 해법만 남아 있었다. 나도 AI도 그 해법부터 구현했다. 방향을 되돌린 건 논증이 아니라 브라우저를 직접 몰아서 잰 숫자였다.
[Read More]