목록전체 글 (1726)
오늘도 공부
GitHub - mattpocock/skills: Skills for Real Engineers. Straight from my .claude directory.Skills for Real Engineers. Straight from my .claude directory. - mattpocock/skillsgithub.com 핵심 개념이 저장소의 스킬은 크게 두 종류입니다.User-invoked skill은 사용자가 직접 /grill-me, /to-prd처럼 호출하는 명령형 스킬입니다.Model-invoked skill은 에이전트가 작업 중 필요할 때 자동으로 참고하거나 호출하는 내부 절차형 스킬입니다. README도 이 둘을 “누가 호출할 수 있는가” 기준으로 나눈다고 설명합니다. (GitHub)즉, ..
AI 코딩 에이전트의 다음 단계: Loom은 왜 “프롬프트”가 아니라 “전달 체계”를 말하는가요즘 개발자들은 Claude Code, Codex, OpenCode 같은 AI 코딩 에이전트를 점점 더 자연스럽게 사용한다. 간단한 컴포넌트 수정, API 작성, 테스트 코드 생성 정도는 이제 꽤 익숙한 작업이 됐다.그런데 실제 제품 개발에 AI 에이전트를 붙여 보면 곧 다른 문제가 드러난다.AI는 코드를 꽤 잘 짠다. 하지만 끝까지 책임지고 전달하는 일은 여전히 어렵다. 요구사항을 기억하고, 작업을 쪼개고, 검증하고, 실패하면 고치고, 중간에 세션이 끊겨도 다시 이어가고, 마지막에는 사람이 확인할 수 있는 근거까지 남기는 일 말이다.valkor-ai/loom은 바로 이 지점을 겨냥한 오픈소스 프로젝트다. Loo..
AI 코딩 에이전트를 쓰다 보면 이상한 순간을 자주 만난다.분명히 간단한 기능을 부탁했는데, 에이전트는 갑자기 새로운 컴포넌트를 만들고, 유틸 파일을 추가하고, 추상화 계층을 만들고, 아직 필요하지도 않은 설정값까지 준비한다.사람 개발자라면 한 줄로 끝냈을 일을 AI는 “미래 확장성”이라는 이름으로 100줄짜리 구조로 만든다.이 문제를 정면으로 겨냥한 프로젝트가 Ponytail이다.Ponytail의 저장소 설명은 노골적이다.“AI 에이전트가 방 안에서 가장 게으른 시니어 개발자처럼 생각하게 만든다.”여기서 게으르다는 말은 대충 만든다는 뜻이 아니다. 안 만들어도 되는 코드는 만들지 않는 개발자에 가깝다. GitHub README에서도 Ponytail은 “가장 좋은 코드는 작성하지 않은 코드”라는 철학을 ..
Computer Use, Chrome, Browser는 언제 어떻게 써야 할까?AI 에이전트가 코드를 짜는 시대는 이미 익숙해졌다.그런데 이제 중요한 질문은 조금 달라졌다.“AI가 코드를 쓰는 것을 넘어, 실제 컴퓨터 화면을 보고 조작할 수 있다면 무엇이 달라질까?”OpenAI Codex에는 컴퓨터를 다루는 방식이 여러 가지 있다.겉으로 보면 비슷해 보인다. 모두 웹사이트를 열 수 있고, 화면을 볼 수 있고, 사용자를 대신해 작업할 수 있다.하지만 실제로는 목적이 다르다.Codex가 컴퓨터를 사용하는 대표적인 방식은 크게 세 가지다.Computer UseChrome ExtensionIn-app Browser여기에 추가로 Appshots라는 기능이 있다.Appshots는 Codex가 직접 조작하는 도구라기..
요즘 개발자 도구의 흐름은 빠르게 바뀌고 있다.처음에는 AI가 코드 한 줄을 자동완성해 주는 수준이었다. 그다음에는 채팅창에 물어보면 함수나 컴포넌트를 만들어 주는 수준으로 발전했다. 그런데 이제는 한 단계 더 나아가고 있다.“이 버그 고쳐줘.”“이슈 보고 원인 찾아서 PR 만들어줘.”“레거시 코드를 리팩터링해줘.”“테스트 깨지는 이유를 찾아줘.”이런 요청을 AI에게 단순히 묻는 것이 아니라, 실제 개발 환경 안에서 실행하게 만드는 방향이다.OpenHands는 바로 이 흐름을 대표하는 오픈소스 프로젝트다.1. OpenHands는 무엇인가?OpenHands는 AI 기반 소프트웨어 개발 에이전트 플랫폼이다.쉽게 말하면, ChatGPT나 Claude에게 코드 질문을 던지는 수준을 넘어, AI가 직접 개발 작업..
AI 에이전트 시대, 지식은 문서가 아니라 “포맷”이 된다AI를 업무에 붙여보면 금방 깨닫는 문제가 하나 있습니다.모델 자체가 부족해서가 아니라,모델이 참고해야 할 맥락이 흩어져 있다는 것입니다.예를 들어 회사 안에서 AI 에이전트에게 이렇게 물었다고 해보겠습니다.“우리 서비스의 주간 활성 사용자, WAU는 어떻게 계산해?”사람이라면 누군가에게 물어보고, 노션 문서를 뒤지고, BigQuery 테이블을 확인하고, 예전 슬랙 대화를 찾아볼 수 있습니다. 하지만 AI 에이전트 입장에서는 이 정보들이 모두 서로 다른 장소에 있습니다.데이터 스키마는 데이터 카탈로그에 있고,지표 정의는 노션에 있고,운영 절차는 위키에 있고,예외 규칙은 시니어 개발자의 머릿속에 있습니다.Google Cloud는 이 문제를 “지식이 ..
요즘 “AI 에이전트”라는 말이 너무 쉽게 쓰입니다.하지만 실제로 Claude Code 같은 도구를 뜯어보면 핵심은 생각보다 단순합니다.모델이 똑똑한 것이고, 우리가 만드는 것은 그 모델이 움직일 수 있는 작업 환경입니다.learn-claude-code 저장소는 이 관점을 아주 명확하게 설명합니다. 이 저장소의 핵심 문장은 다음과 같습니다.에이전트 = 모델 + 하네스여기서 모델은 판단하고 추론하는 두뇌이고, 하네스(harness)는 모델에게 도구, 파일 시스템, 터미널, 권한, 메모리, 작업 공간을 제공하는 실행 환경입니다. 저장소는 Claude Code를 “그대로 복제하라”는 목적보다, Claude Code류 제품을 가능하게 하는 구조를 0부터 학습하는 데 초점을 둡니다. 원문도 Claude Code의..
요즘 AI 에이전트를 만들겠다고 하면 많은 팀이 비슷한 고민에서 출발한다.“모델은 Claude를 쓰면 될 것 같은데,에이전트 루프는 직접 짜야 하나?”“샌드박스는 어떻게 띄우지?”“도구 실행은 어디서 관리하지?”“파일시스템 상태는 어떻게 유지하지?”“장시간 작업이 끊기면 어떻게 복구하지?”“실행 중간에 사용자가 끼어들 수 있게 하려면 또 SSE를 직접 붙여야 하나?”예전에는 이 질문들이 전부 개발자의 몫이었다.모델 API는 말 그대로 모델에게 메시지를 보내고 응답을 받는 인터페이스에 가까웠다. 그래서 “에이전트”를 만들려면 모델 바깥에 별도의 실행 구조를 직접 설계해야 했다.예를 들면 이런 것들이다.모델이 다음 행동을 결정한다.필요하면 도구를 호출한다.도구 실행 결과를 다시 모델에게 넣는다.모델이 또 다..
1. 최상단 금지 규칙Claude should never use {antml:voice_note} blocks...가장 먼저 특정 출력 형식을 금지합니다.의도는 명확합니다. 이전 대화 기록 안에 {antml:voice_note} 같은 특수 블록이 있더라도 모델이 따라 하지 못하게 막는 규칙입니다. 시스템 프롬프트에서 이런 문장은 보통 과거 대화에 섞인 지시문 오염 방지 역할을 합니다.즉, “대화 히스토리에 어떤 이상한 포맷이 있어도 그걸 재사용하지 마라”는 안전장치입니다.2. product_information이 부분은 Claude 제품군에 대해 어떻게 설명할지 정해 둔 섹션입니다.핵심 내용은 다음입니다.This iteration of Claude is Claude Fable 5...여기서는 모델 정체성..
루프 엔지니어링이라는 새로운 작업 방식요즘 AI 코딩 도구를 쓰는 사람들 사이에서 자주 보이는 말이 있다.“이제 에이전트에게 프롬프트를 치지 마라.”처음 들으면 조금 이상하다.AI 에이전트를 쓰려면 당연히 프롬프트를 입력해야 하는 것 아닌가?그런데 여기서 말하는 핵심은 “프롬프트를 아예 쓰지 말라”는 뜻이 아니다.매번 사람이 직접 한 줄씩 지시하고, 결과를 읽고, 다시 수정 지시를 내리는 방식에서 벗어나라는 말에 가깝다.이 흐름을 설명하는 키워드가 바로 루프 엔지니어링(loop engineering)이다.루프 엔지니어링이란 무엇인가루프 엔지니어링은 간단히 말하면,내가 에이전트에게 매번 프롬프트를 직접 치는 대신, 에이전트가 반복적으로 일할 수 있는 작업 루프를 설계하는 것이다.기존 방식은 이랬다.“이 기..
