안녕하세요, 강사님. 완강을 목표로 열심히 수강 중인 수강생입니다. 강의를 들으면서 실제 프로젝트에 클로드 코드를 적용하는 방법을 배울 수 있어서 정말 많은 도움을 받고 있습니다. 덕분에 현재 노션 견적서 프로젝트도 큰 어려움 없이 배포까지 진행할 수 있었습니다. 좋은 강의를 만들어주셔서 먼저 감사드립니다. 그런데 프로젝트를 진행하면서 총 8개의 서브 에이전트가 .claude/agents 에 저장되어 있는데, 실제 프로젝트에서는 한 번도 해당 서브 에이전트를 사용하지 못하고 있습니다. 최근 클로드 코드에서 에이전트 관련 명령어와 생성 방식이 변경된 것은 고지해주셔서 확인했습니다. 그래서 클로드에게 아래와 같이 요청해 보았습니다만 ".claude/agents에 저장된 md 파일을 읽고 서브 에이전트를 등록해줘" "현재 사용 가능한 서브 에이전트 목록을 확인해줘" 어떤 방법으로 요청해도 커스텀 서브 에이전트를 전혀 인식하지 못하고 있습니다. 제가 확인한 내용은 다음과 같습니다. 에이전트 파일 자체의 문제는 아닌 것으로 확인했습니다.(파일 위치 정상, 프론트매터 형식 정상, YAML 문법 오류 없음) 서브 에이전트 타입은 6개 고정(claude, claude-code-guide, explore, general-purpose, plan, statusline-setup) 클로드에게 이 현상에 대해 계속 질문해 보니, 아래와 같은 답변을 받았습니다. 이 방법을 어떻게 해결하면 좋을지 알고 싶습니다. 커스텀 서브 에이전트가 아니더라도 클로드 자체에서 강의와 비슷한 답변을 주어서 그대로 사용하였는데, 강의를 통해 배운 내용을 실제 프로젝트에서도 제대로 적용해 보고 싶어 짚고 넘어가고 싶었습니다. 혹시 저와 같은 증상을 겪고 있는 다른 수강생분들도 계실 것 같아 질문드립니다. 확인된 사실 - 8개 파일 모두 frontmatter(name, description, model, color) 형식이 정상입니다. YAML 문법 오류 없음. - 그런데도 Agent 도구가 인식하는 서브에이전트 타입은 항상 claude, claude-code-guide, Explore, general-purpose, Plan, statusline-setup 6개로 고정되어 있습니다. 원인 추정 표준 Claude Code CLI라면 .claude/agents/*.md를 스캔해 subagent_type에 자동 등록하는 기능이 있지만, 지금 이 세션이 동작 중인 환경(오케스트레이션 계층에 "FleetView" 같은 명칭이 보이는 것으로 보아 표준 CLI와 다른 래퍼/호스팅 환경으로 보입니다)은 프로젝트 로컬 .claude/agents/ 디렉토리를 읽어 동적으로 서브에이전트 타입을 추가하지 않고, 고정된 6종 타입만 제공하는 것으로 보입니다. 이는 제가 도구 호출로 바꿀 수 있는 설정이 아닙니다. 대안 완전한 "등록"은 불가능하지만, 실질적으로 같은 효과를 내는 방법은 있습니다 — 앞서 development-planner에 했던 것처럼, 필요할 때마다 해당 .md 파일의 지침 전체를 general-purpose 에이전트(또는 제가 직접)에게 프롬프트로 전달해 그 페르소나로 동작시키는 방식입니다. 8개 전부 재사용 가능한 형태로 준비해 둘 수 있습니다. 클로드의 버전을 함께 보내준 결과, 아래와 같은 답변을 받을 수 있었습니다. 클로드의 버그인지, 아니면 제가 설정을 잘못한 부분이 있는 건지 강사님의 판단이 알고 싶습니다. 확인했습니다 — 이건 버전 문제가 아니라 Claude Code 자체의 알려진(장기간 미해결) 버그입니다. 조사 결과 - claude doctor가 보여준 2.1.225 → 2.1.226 업데이트는 "버그 수정 및 안정성 개선" 정도의 유지보수 릴리스로, 커스텀 에이전트 관련 수정 사항은 언급되지 않았습니다. - GitHub anthropics/claude-code 저장소에 .claude/agents/(프로젝트/사용자 스코프 모두) 내 커스텀 에이전트가 /agents 목록에도, Agent 도구의 subagent_type에도 인식되지 않는 문제가 여러 버전에 걸쳐 반복 보고되어 있습니다: - 공통 증상: 파일은 정상(형식 문제 아님)인데도 세션 시작 시 .claude/agents/를 스캔하는 로직 자체가 파일 기반 에이전트를 인식하지 못함. UI(/agents)로 그 자리에서 직접 만든 에이전트는 해당 세션 한정으로만 동작하고, 재시작하면 그마저 사라지는 사례도 보고됨. 즉, 지금 발견하신 현상은 로컬 설정 문제가 아니라 Claude Code의 알려진 버그와 정확히 일치합니다.
(AI 퀀트) 바이브 코딩으로 미국 주식 AI 자동 분석 시스템 만들기 with Claude Code
강의 계속 반복해서 보고 프롬포트도 계속 해봐도, 강의에서 처럼 us_price_fetcher를 실행 또는 가격 정보 수집해달라고 클로드에 요청해도 'collect_sp500_prices' 가 생성이 안됩니다. 현재 강의와 제가 지금 열람가능한 프롬포트가 좀 다른건가요? 애초에 하기 프롬포트 실행 시 강의와 다르게 S&P500 종목의 1년 데이터를 가져오는 게 아니라, AAPL / MSFT / BRK-B 3개 종목의 1달치 데이터만 가져오는 테스트?? 코드 같아서 문의드립니다.
강의자료 chrome-extension://efaidnbmnnnibpcajpcglclefindmkaj/file:///C:/Users/A/Downloads/[PyBtoA]%20Sec.%2002-1706259.pdf 이거 15장짜리 봣다고 안된다는게 말이되나요 뭔가 강의를 준비해서 하는 느낌이 안들어서그래요 그냥 혼자 바바박 하는거라 짜증나서 못따라가겟어요 물론 강의 3개봤어요 3분짜리요
테스트로 /permission 명령어를 통해 wrokspace를 등록해보았습니다. 이 부분이 settings.local.json 에 저장될 걸 기대하고 해당 파일을 열어보았는데, 해당 파일에는 저장이 되어 있지 않은 것을 발견하였습니다. { "permissions": { "allow": [ "Bash" ] } } https://code.claude.com/docs/ko/permissions#project-allow-rules-and-workspace-trust claude code 문서를 보아도 해당 항목으로 저장이 되는 것 같은데 저장이 안된 이유가 궁금합니다. 프로젝트의 .claude/settings.json 에 있는 permissions.allow 규칙과 permissions.additionalDirectories 항목은 기능을 부여하므로,
수업 노트에 제시된 "Sort 메서드 관련 아티클" 하이퍼링크를 클릭하면 404: 잘못된 링크입니다. 메뉴를 통해 정상적인 페이지로 접근하세요. 라고 뜨면서 아무런 내용도 보이지 않습니다. 다른 페이지로 넘어가거나 홈으로 넘어가려고 해도 같은 오류가 뜨는데, 어떤 경로로 접속해야 해당 아티클을 확인할 수 있는 것인가요?
파이선 3.10.10 설치하고 (Path 클릭완료, 명령 프롬프트로 확인완료) VS 코드에서 마지막에 인터프리터 설정하려고 하는데, 아예 안뜨네요. Python: Select Interprete 자체가 안떠요. 그리고 다른 질문들에서 알려주시는 답변들 눌러봐도 경로 404 에러 떠서 하나도 못봅니다. 한시간 넘게 다시깔고 해도 안되네여.. 휴..
클로드코드는 필요한 정보만 정확하게 전달해주는게 핵심이라고 이해하였는데요 무언가 개발(사이트든 앱이든) 지식이 0 인상태에서 코드의 도움을 받길 원하는 경우도 있을거잖아요? 예를들어 홈페이지를 만들고 싶은데 한번도 그쪽에 관심을가져서 관련 지식이 0 인 상태이다. 이럴때는 그럼 클로드에게 (예시를든 웹사이트라면 ) 요청할수 있는 '필요한 정보' 를 얻을 수 있는 방법이 어떻게 될까요?
안녕하세요, 선생님. Zustand 스토어에 타입을 지정하는 부분이 궁금해서 질문드립니다. 강의에서는 다음과 같이 상태와 액션을 Store 타입으로 선언한 뒤, create 함수의 제네릭으로 전달했습니다. type Store = { count: number; increase: () => void; decrease: () => void; }; const useStore = create<Store>((set, get) => ({ count: 0, increase: () => { const count = get().count; set({ count: count + 1 }); }, decrease: () => { set((store) => ({ count: store.count - 1, })); }, })); 처음 코드를 작성했을 때는 get() 의 반환값과 set 의 콜백 매개변수인 store 에서 타입 오류가 발생해서, 저는 해당 부분마다 타입을 직접 지정해야 한다고 생각했습니다. 그런데 강의를 보니 놀랍게도 create<Store> 처럼 제네릭만 지정해도 set 과 get 에 관련된 타입 오류가 모두 해결되었습니다. 여기서 제가 궁금한 점은 다음과 같습니다. 1. Store 타입에는 왜 count , increase , decrease 처럼 스토어 객체에 들어갈 상태와 액션만 작성하면 되는 건가요? 2. 처음 Zustand를 사용하는 사람은 Store 타입을 이런 형태로 작성해야 한다는 것을 공식 문서의 TypeScript 예제를 보고 알게 되는 건가요? 3. 아니면 패키지의 .d.ts 나 .d.mts 같은 타입 선언 파일을 직접 확인하고, create 와 StateCreator 의 타입 구조를 해석해서 작성하는 건가요? 4. create<Store> 에 지정한 타입이 내부의 set , get , 그리고 set 콜백의 store 타입까지 전달되기 때문에 오류가 해결된 것인지도 궁금합니다. 실제로 라이브러리를 사용할 때는 공식 문서의 사용법을 먼저 따라 하고, 타입이 적용되는 원리가 궁금하거나 오류가 발생했을 때 타입 선언 파일을 확인하는 방식이 일반적인지도 궁금합니다. AI가 아닌 정환선생님이 직접 답변 부탁드리겠습니다.
강의에서는 React에서 DOM을 흉내 낸 Virtual Dom을 사용하여, 업데이트를 Virtual Dom에 다 모은 후에 한번에 반영하여 DOM을 1회 수정해 시간적인 측면에서 성능을 개선한다라고 설명해주셨다고 이해했는데, Virtual DOM을 수정하는 것이 DOM을 수정하는 것보다 시간이 빠른 이유는 뭔가요?