[00:00]
오늘은 Claude Code를 최대한 활용하는 방법의 첫 번째 편입니다. 여러분께 하나의
[00:02]
작은 비밀을 알려드리겠습니다. 바로 UltraThink라는 것입니다.
[00:06]
만약 여러분이
[00:07]
이 키워드를 사용하지 않고 있다면, 이것은
[00:09]
정말 특별한 비법이 될 것입니다.
[00:12]
우리가 다룰 내용은
[00:13]
이것과 함께 다른 것들, 플래닝 모드와 제가
[00:15]
현재 사용하고 있는 것들을 포함해서
[00:16]
사용하여
[00:17]
Claude Code로 몇 가지 기능을 현재 배포하고 있습니다.
[00:19]
이것을 실제로 좀 더 자세히
[00:21]
확인해보고 싶다면,
[00:22]
실제로 rayfernando.ai에 블로그 포스트를
[00:24]
작성해 두었습니다. 제목은
[00:25]
Getting the Most from Claude Code입니다.
[00:27]
그래서 이것을 읽어보고 싶으시다면
[00:28]
코드로 가보세요.
[00:28]
그냥 가서 확인해 보시거나
[00:29]
이것을 한번 살펴보시거나
[00:31]
저와 함께
[00:31]
따라 해보실 수 있습니다.
[00:33]
저와 함께요.
[00:34]
오늘 우리가 다룰 내용은
[00:36]
이 멋진 플래닝 모드 기능입니다.
[00:37]
그래서 우리는 플래닝 모드를 사용해서
[00:39]
제 앱의 몇 가지 버그를 수정하는 데 도움을 받을 것입니다.
[00:41]
저는 이미 기존 리포지토리를 가지고 있습니다.
[00:43]
현재 이것을 Cursor 안에서
[00:44]
사용하고 있습니다.
[00:44]
그래서 우리는 그것도 다룰 것입니다.
[00:47]
다음으로 우리가 다룰 것은
[00:48]
더 깊이 생각하기입니다.
[00:50]
더 깊이 생각하기에는 네 가지 다른 모드가
[00:51]
있는데, 여러분이 살펴봐야 할 것들입니다.
[00:53]
살펴보세요.
[00:53]
그리고 지금 높은 수준의 요약을 해보면,
[00:56]
UltraThink는 생각 토큰을 최대한 활용하는
[00:59]
가장 효과적인 방법입니다.
[01:02]
윈도우를 말이죠.
[01:02]
그리고 우리가 그것에 대해 좀 더 들어가면서
[01:04]
조금 더 설명해 드리겠습니다.
[01:05]
만약 여러분이 이 영상을 시청하실 거라면,
[01:07]
이것은 제가 Claude Code를 어떻게 사용하는지에 대한
[01:09]
정말 간단한 라이브스트림 입문서가 될 것입니다.
[01:11]
Claude Code를 어떻게 사용하는지에 대한.
[01:12]
그리고 여러분은 저와 함께 걸어갈 것입니다.
[01:14]
저는 여러분에게 이런 종류의 일을 라이브로 어떻게 하는지
[01:15]
보여드릴 것입니다.
[01:16]
그래서, 네, 만약 여러분이 어떤 댓글이 있다면,
[01:18]
아래에 남겨주세요.
[01:19]
맨 처음에 저는 이 정보를 전달하는 것을
[01:21]
확실히 하고, 그 다음에
[01:22]
그 다음에
[01:22]
조금 후에 댓글들을 확인하겠습니다.
[01:24]
그래서 지금 참여할 수 있는 모든 분들께 감사드립니다.
[01:25]
참여해 주신 모든 분들께
[01:26]
그리고 댓글도 남겨주세요. 저는 Christian Codes를 보고,
[01:29]
Elal도 보고, Madagir도
[01:31]
거기서 보고 있습니다.
[01:32]
그래서 자, 여러분, 시작해 보겠습니다.
[01:34]
시작해 보겠습니다.
[01:37]
그래서
[01:37]
Cursor에서 제가 이것을 로드한 방법은
[01:40]
이미 Claude가 여기 위에 설치되어 있고
[01:43]
만약 여러분이 이미
[01:44]
Claude Code가 설치되어 있다면, IDE에
[01:46]
설치되어 있으면 아마
[01:47]
보실 수 있을 것입니다.
[01:48]
실행하기 위해 여기 위에 무언가가 보일 것입니다.
[01:50]
그리고 지금 현재 실행 중이므로,
[01:52]
실제로 모든 것이 이미 설정되어 있습니다.
[01:55]
그리고 제가 Ray transcribes에서 제 앱으로
[01:57]
하려고 하는 것은, 기본적으로
[02:00]
제 앱이 하는 일은 여러분이 어떤 비디오든 업로드할 수 있게 하고
[02:02]
그러면 제가 번개처럼 빠른 속도로
[02:04]
여기 있는 몇 가지 공급업체를 사용해서 그것을 전사합니다.
[02:07]
그래서 제가 방금 수정한 앱의 최신 버전에서,
[02:09]
저는 이런 종류의 UI
[02:11]
레이아웃을 가지고 있는데, 이것을 조금 더
[02:14]
잘 고치거나 개선하는 데 도움을 받고 싶습니다. 제가 추가한
[02:16]
잘 고치거나 개선하는 데 도움을 받고 싶습니다. 제가 추가한
[02:18]
이 사용자 정의 사전이 있는데, 사용자 정의 사전을
[02:20]
사용할 수 있도록 사이드바 여기나 어딘가 옆에
[02:22]
배치하고 싶어서 사용자들이 앱을 사용할 때
[02:25]
더 나은 경험을 할 수 있도록 하고 싶습니다. 왜냐하면
[02:27]
지금 상태에서는 앱을 사용해서 사용자 정의 사전을
[02:30]
추가하려면 두 번째 단계를 거쳐야만
[02:32]
사용할 수 있기 때문입니다.
[02:34]
하지만 이 인터페이스는 정말 좋긴 하지만,
[02:38]
이런 형태가 아닌 독립적인 인터페이스를
[02:40]
만들 수 있다면 좋겠습니다. 사람들이 스스로
[02:42]
할 수 있도록 말이죠. 그래서 이걸 설명하거나
[02:44]
수정할 수 있을지 보고 싶습니다. 제가 보기에는
[02:46]
UI가 조금 어색한 것 같거든요. 이건 V1
[02:48]
프로토타입이고 스크린샷을 좀 보여줘서
[02:50]
개선해볼 수 있을지 보고 싶습니다.
[02:52]
먼저 스크린샷을 찍어서
[02:54]
Claude Code에 보여주겠습니다.
[02:58]
이렇게 하면 제가 달성하려는 것을
[03:01]
이해할 수 있을 것 같습니다.
[03:04]
그런 다음 플래닝 단계를 도와보겠습니다.
[03:06]
Shift-Tab을 누르고 다시 Shift-Tab을 누르면
[03:09]
화면 플래닝 모드 기능이 나타납니다.
[03:10]
그리고 파인더 창을 열어서
[03:12]
데스크탑에 있는 스크린샷들을 가져왔습니다.
[03:14]
두 개의 스크린샷이 있고, Cursor에서
[03:16]
이것들을 드래그해서 넣을 수 있습니다.
[03:17]
Shift 키를 누르고 있어야 합니다.
[03:19]
에디터에 드롭하려면 Shift를 누르라고 나오네요.
[03:19]
그러면 에디터에 드롭되는데, 파일이 하나만 드롭됐네요.
[03:22]
한 번에 하나씩만 드롭할 수 있나 보네요.
[03:24]
아쉽네요. 어떤 파일이 드롭됐나 보니
[03:24]
447이라고 되어 있는 파일이 드롭됐네요.
[03:27]
이제 두 번째 파일도 드롭해야 하니 Shift를 누르고
[03:29]
이제 두 파일이 모두 들어간 것을 볼 수 있습니다.
[03:32]
이런 작은 구분자로 나뉘어 있네요.
[03:34]
이제 명령어를 입력하고 싶으니 Shift Enter를
[03:36]
몇 번 누르겠습니다.
[03:38]
그리고 Claude가 해야 할 일을
[03:40]
지시해보겠습니다.
[03:43]
지금 상태로는 정말 확실한 레이아웃이 없어서
[03:45]
저는 정말 형편없는 디자이너입니다.
[03:48]
안목은 있지만 모델의 전문성을 활용해서
[03:50]
좀 더 생각해보고 싶습니다.
[03:52]
그래서 한번 대화해보고 어떤 결과가 나오는지 보겠습니다.
[03:54]
아래는 사용자들이 정보를 업데이트하고
[03:56]
추가하려고 할 때 사용하는 사전의 레이아웃입니다.
[03:57]
데스크탑 뷰에서 볼 수 있듯이 스크롤이 조금 있고
[03:59]
단순함이 사라져버렸습니다.
[04:00]
앱을 위한 더 나은 레이아웃을 만들어서
[04:02]
사용자들에게 좀 더 직관적이 되도록
[04:04]
할 수 있는지 보고 싶습니다.
[04:04]
좀 더 나은 레이아웃을 만들 수 있는지
[04:07]
확인해보겠습니다.
[04:09]
지금 상태로는 정말 확실한 레이아웃이 없고
[04:10]
저는 정말 형편없는 디자이너입니다.
[04:13]
하지만 안목은 있어서 모델의 전문성을 활용해
[04:16]
좀 더 생각해보고 싶습니다.
[04:19]
그래서 한번 대화해보고 어떤 결과가 나오는지 보겠습니다.
[04:20]
아래는 사용자들이 정보를 업데이트하고
[04:22]
추가하려고 할 때 사용하는 사전의 레이아웃입니다.
[04:24]
데스크탑 뷰에서 볼 수 있듯이 스크롤이 조금 있고
[04:25]
단순함이 사라져버렸습니다.
[04:26]
앱을 위한 더 나은 레이아웃을 만들어서
[04:28]
사용자들에게 좀 더 직관적이 되도록
[04:30]
할 수 있는지 보고 싶습니다.
[04:35]
사용자들이 정보를 업데이트하고 추가하려고 할 때
[04:39]
사용하는 사전의 레이아웃입니다.
[04:42]
데스크탑 뷰에서 볼 수 있듯이 스크롤이 조금 있고
[04:44]
단순함이 사라져버렸습니다.
[04:47]
앱을 위한 더 나은 레이아웃을 만들어서
[04:49]
사용자들에게 좀 더 직관적이 되도록
[04:52]
할 수 있는지 보고 싶습니다.
[04:55]
사용자들에게 좀 더 직관적이 되도록
[04:58]
사용자들이 이 단계에서 사용하기 쉽도록 말이죠. 두 번째로, 사용자들이
[05:01]
사전을 수정할 수 있는 방법도 있었으면 좋겠어요. 아마 사이드바에서요.
[05:04]
예를 들어, 사이드바를 선택해서
[05:07]
거기서 몇 가지 수정을 할 수 있도록 말이죠.
[05:10]
하지만 사실 이 기능은
[05:13]
그냥 제외하려고 해요. 좀
[05:16]
혼란스러울 것 같거든요. 일반 사용자라면
[05:19]
그냥 삭제를 누르면
[05:19]
이 모든 단어들을 삭제하는 데 너무 오래 걸릴 거예요.
[05:22]
할 수 있는 것 중 하나는
[05:24]
Ctrl E를 사용하는 거죠. Ctrl E는 기본적으로
[05:26]
어, 잠깐, Ctrl, 아 죄송해요, Option
[05:27]
Ctrl E, Ctrl W인데
[05:28]
잠깐, Ctrl W, 아 죄송해요, Ctrl W, 잠깐, 뭘 하고 있는 거죠?
[05:31]
Option Delete는 기본적으로
[05:35]
여기서 단어들을 다시 되돌아갈 수 있게 해줘요.
[05:37]
그리고 Ctrl U였던 것 같은데
[05:39]
제 키 명령어들이 지금 좀 엉망이네요.
[05:42]
하지만 Option을 누르고
[05:45]
Delete를 누르면, 기본적으로
[05:47]
단어들을 꽤 빠르게 삭제할 수 있어요.
[05:50]
이게 첫 번째 부분이에요. 기본적으로
[05:52]
제 스크린샷을 검토하고
[05:55]
더 나은 레이아웃을 만들어낼 수 있는지 보고 싶었어요.
[05:57]
그리고 제가 스크린샷을 검토할 때
[06:00]
당신이 UltraThink를 사용하기를 원해요.
[06:02]
UltraThink를 사용하고 병렬 서브 에이전트를 사용해서
[06:06]
코드를 검토해주세요.
[06:07]
코드. 코드. 좋아요. 그럼 진행해보겠습니다.
[06:14]
현재 여기에 있다고 생각하는 것 같은데
[06:21]
제 UI 레이아웃이 실제로는
[06:25]
이 특정 부분인 것 같아요. 이 특정 파일에 있을 때
[06:29]
보시면 이제 Claude Code의 컨텍스트가
[06:33]
여기에 있다는 것을 실제로 이해하고 있어요.
[06:35]
그래서 올바른 파일을 가리키고 있는지 확인하고 싶어요.
[06:38]
사용자 인터페이스에서 특정 파일들을 선택할 수도 있어서
[06:40]
이런 다른 파일들이 컨텍스트에 관련이 있다는 걸 알 수 있죠.
[06:43]
이게 도움이 될 수 있을 것 같아요.
[06:45]
그래서 그렇게 하고 싶어요.
[06:48]
그리고 도움이 될 수 있겠지만
[06:50]
Claude Code가 어떤 일을 할지 볼 수 있어요.
[06:53]
맥스 플랜을 사용하고 있으니까 엔터를 눌러보죠.
[06:56]
여기서 엔터를 누르면 좋겠어요.
[06:59]
이제 Claude가 작업하는 걸 지켜봅시다.
[07:02]
기본적으로 지금 하고 있는 일은
[07:04]
저는 여기서 UltraThink라는 키워드를 사용했고
[07:06]
병렬 에이전트라고 하는 다른 것도 사용했어요.
[07:08]
스크린샷을 읽을 수 있는지 확인하려고 해요.
[07:10]
데스크탑을 작업 디렉토리로 추가하겠습니다.
[07:12]
나중에 더 많은 스크린샷이 있을 거고
[07:15]
그것들을 전달하고 싶거든요.
[07:17]
여기서 일어날 일은
[07:19]
병렬 에이전트로 나누어서
[07:21]
다른 컨텍스트 윈도우에서 여러 파일을 읽으려고 할 거예요.
[07:23]
각각은 컨텍스트를 위한
[07:25]
자체 윈도우를 가지게 될 거예요.
[07:27]
보통 128에서 256k 토큰 정도인 것 같아요.
[07:29]
그리고 지금 생각하고 있어요.
[07:32]
실제로 스크린샷을 살펴보고 있어요.
[07:34]
이 커스텀 사전의 스크린샷을 볼 수 있어요.
[07:36]
지금 무엇을 생각하고 있는지 알려주고 있어요.
[07:39]
이제 전사 폼 레이아웃을 분석하고
[07:42]
병렬 에이전트를 사용해서 검토할 거예요.
[07:43]
병렬 에이전트를 사용해서
[07:44]
검토할 거예요.
[07:46]
병렬 에이전트를 사용해서
[07:50]
검토할 거예요.
[07:52]
스크린샷을 살펴보고 있어요.
[07:54]
스크린샷을 볼 수 있어요.
[07:54]
이 커스텀 사전의 스크린샷을 볼 수 있어요.
[07:56]
지금 무엇을 생각하고 있는지 알려주고 있어요.
[07:56]
지금 무엇을 생각하고 있는지 알려주고 있어요.
[07:57]
생각하고 있어요.
[07:58]
이제 전사 폼 레이아웃을 분석하고
[07:59]
병렬 에이전트를 사용해서 검토할 거예요.
[08:01]
코드의 다른 측면들을 분석하고 있습니다.
[08:03]
정말 멋지네요.
[08:04]
3개의 에이전트가 동시에 작동하고 있습니다. 하나는
[08:06]
UI 레이아웃을 검토하고, 다른 하나는
[08:08]
사전 컴포넌트를 분석하고,
[08:10]
또 다른 하나는 디자인 패턴을
[08:12]
연구하고 있습니다.
[08:12]
제가 이렇게 하는 이유 중 하나는
[08:14]
디자인 패턴 문서를 가지고 있고,
[08:16]
실제로 이미 찾았기 때문입니다.
[08:18]
그래서 하나의 특정 서브 에이전트가
[08:20]
전체 컨텍스트를 소모하지 않고도
[08:22]
메인 에이전트에게 어떤 정보를 전달해야 할지
[08:24]
이해하여 제가 전체적으로 파악할 수 있게 됩니다.
[08:27]
모든 것을 종합적으로 이해할 수 있죠.
[08:28]
기본적으로 하나의 프로젝트 매니저와
[08:30]
세 명의 엔지니어가 저를 위해
[08:33]
다른 작업들을 수행하는 것입니다.
[08:35]
정말 대단하지 않나요?
[08:36]
병렬로 실행되는 모습을 볼 수 있습니다.
[08:38]
작업 1, 작업 2, 작업 3이 동시에 진행되고,
[08:40]
그 다음에 결과를 가져올 것입니다.
[08:41]
다시 돌아오죠.
[08:42]
사용자 인터페이스에서 저에게는
[08:43]
아마도 두 개 또는 세 개의
[08:45]
다른 팝업들이 나타나서 승인하거나
[08:47]
다른 작업들을 할 수 있습니다.
[08:48]
조금 혼란스럽긴 하지만, 이것이
[08:50]
인터페이스의 작동 방식입니다.
[08:51]
꽤 흥미롭다고 생각합니다.
[08:53]
저희가 여기 있는 UI 파일로 시작했던 것을 기억합니다.
[08:56]
여기요.
[08:56]
이것이 제가 다른 모든 앱들로 가는
[08:58]
게이트웨이 드럭이라고 부르는 것입니다.
[08:59]
많은 것들이 이미 임포트되어 있고
[09:01]
무엇이 진행되고 있는지 이해하는 데
[09:03]
꽤 똑똑하기 때문입니다.
[09:04]
데스크톱에서 스크롤 문제를 해결하는 계획입니다.
[09:07]
전사 양식에 불필요하게 중첩된
[09:09]
스크롤 가능한 컨테이너들이 있습니다.
[09:11]
컨테이너들이요.
[09:12]
이것이 v1이라는 것을 알고 있습니다. 이 전체를
[09:14]
코딩했습니다. 이것이 우리가 런칭한 방식이고,
[09:17]
첫 번째 유료 고객을 얻은 방식입니다.
[09:19]
폼 컨테이너에는 이미 스크롤 가능한
[09:21]
기능이 있는 내부 요소가 있습니다.
[09:23]
이중 스크롤 바를 만들고 있죠.
[09:24]
좋아요, 스크롤 가능한 컨테이너를 제거하고
[09:26]
이것을 변경하여 이렇게 바꾸면
[09:28]
폼이 부모의 자연스러운 스크롤을
[09:30]
사용할 수 있게 됩니다. 사전 단어
[09:32]
길이를 이렇게 조정하고요. 그리고 저는
[09:34]
계속 계획을 세우고 싶습니다. 왜냐하면
[09:36]
모바일과 태블릿에서도 잘 작동하는지
[09:38]
확인하고 싶고, 거기서도 회귀 현상이
[09:40]
발생하지 않는지 확인하고 싶기 때문입니다.
[09:42]
그에 대한 언급이 없었거든요.
[09:44]
그래서 그것을 인식하고 있는지
[09:46]
확인하고 싶습니다. 폼이 이제 자연스럽게
[09:49]
흘러야 합니다.
[09:50]
예상 결과인 단일 스크롤 바라고
[09:52]
말하는지 확인하고 싶습니다.
[09:55]
정말 멋지네요.
[09:56]
기존 기능을 유지하면서
[09:58]
최소한의 변경으로 스크롤링이 가능합니다.
[09:59]
좋습니다. 아니오, 계속 계획을 세우겠습니다.
[10:01]
그렇게 하겠습니다.
[10:03]
또 다른 팝업 창이 나타나는 것을 볼 수 있고,
[10:05]
이것은 승인된 사전 레이아웃 계획을
[10:07]
검토하고 있습니다.
[10:08]
레이아웃 계획을요.
[10:08]
구현에 대한 분석을 바탕으로
[10:10]
특정 기회들을 구현하여
[10:12]
더 컴팩트하고 직관적인
[10:13]
레이아웃을 만들 수 있습니다.
[10:15]
여기 제 계획이 있습니다.
[10:16]
기본적으로 사전 선택이
[10:18]
내부에 포함되어 있는 형태로
[10:21]
이런 종류의 것들 말이에요.
[10:22]
구조는 이렇게 하고, 제목 카운트를
[10:25]
별도의 라인으로 결합해보겠습니다.
[10:28]
좋아요. 단어 목록을 결합하고, 단어 경험을
[10:33]
통합하고, 더 나은 시각적 계층구조를 만들어보겠습니다.
[10:37]
아니요, 계속 계획을 세워보겠습니다. 살펴보죠.
[10:42]
그리고 또 뭐가 있을까요? 마지막 에이전트가
[10:44]
다른 계획으로 돌아왔네요. 디자인
[10:46]
패턴이 사전 기능에 적용되었습니다.
[10:49]
사전 기능을 더 직관적이고
[10:51]
공간 효율적으로 만들 수 있는
[10:53]
디자인 패턴들을 찾았습니다.
[10:56]
사이드바에 motion div를 사용하고, 상태 표시를
[10:58]
압축하고, 진행 상황 표시 패턴을
[11:00]
디자인 결과로 보여줍니다. 이런 종류의
[11:03]
것들이 여기에 있어요. 다단계 명확한 진행
[11:05]
조사자들. 네, 이미 여기서
[11:08]
일어났네요.
[11:09]
기본적으로 축소된 상태로 두는 것.
[11:11]
여기서 말하는 것은 사용자가
[11:13]
상호작용하기 전까지는 축소된 상태로
[11:16]
유지하겠다는 뜻이고, 솔직히 말하면
[11:18]
저도 좋아해요.
[11:20]
팝오버 시트를 추가하고, 사전을
[11:23]
사이드 패널로 이동하기 위해
[11:26]
Shian의 시트를 설치하는 것. 별로 좋아하지 않아요.
[11:29]
단어 카운트를 추가하고, 플로팅 액션 바를
[11:32]
더 직관적으로 추가하거나 개선하는 것.
[11:35]
인라인 배지 표시가 폼을 깔끔하게
[11:40]
집중시켜줍니다. 사전 기능이 확장되어
[11:45]
표시됩니다.
[11:46]
인터페이스로 커스텀 사전 x 단어들.
[11:49]
이것을 실제로 해보니 실제로
[11:53]
시도해볼 수 있을 것 같아요.
[11:54]
이것은 정말 정말 멋질 것 같아요.
[11:56]
이것을 위해 브랜치를 설정하려고 했었는데
[11:59]
아직 실제로 하지 못했다는 것을 완전히 잊었네요.
[12:01]
지금 여전히 메인 브랜치에 있는 것 같아요.
[12:03]
그래서 계속 진행하고
[12:05]
이것을 위한 브랜치를 만들어서
[12:08]
실수로 코드를 메인 브랜치에
[12:10]
커밋하지 않도록 하겠습니다.
[12:12]
메인 브랜치에 코드를 커밋하면
[12:14]
바로 프로덕션으로 가는 것이고
[12:16]
사용자들에게 문제를 일으키고 싶지 않아요.
[12:18]
좋아요. 이 계획을 좋아해요.
[12:21]
네, 수동으로 편집을 승인하는 것이
[12:24]
꽤 흥미로울 것 같아요.
[12:25]
하지만 그 전에 올바른 브랜치로
[12:28]
이동했는지 확인하고 싶어요.
[12:31]
여기 왼쪽에 있는 것을 클릭하겠습니다.
[12:33]
이것을 클릭하겠습니다.
[12:34]
이것을 클릭하겠습니다.
[12:36]
우클릭.
[12:37]
앗.
[12:38]
이것은 필요 없을 것 같아요.
[12:39]
여기서 우클릭해서
[12:42]
브랜치 생성을 하겠습니다.
[12:43]
features slash dictionary layout fix라고
[12:50]
부르겠습니다.
[12:51]
좋아요.
[12:52]
훌륭해요.
[12:53]
브랜치를 퍼블리시해서
[12:55]
사용할 수 있게 하겠습니다.
[12:55]
그리고 이미 브랜치로
[12:57]
체크아웃되어 있을 것 같아요. 완벽해요.
[12:59]
좋아요, 멋져요.
[12:59]
좋아요, 이 계획을 좋아해요.
[13:02]
네, 수동으로 편집을 개선하겠습니다.
[13:05]
지금 일어나고 있는 것은 여전히
[13:08]
서브 에이전트 중 하나가
[13:10]
뭔가를 하고 다른 하나는 하지 않는 것 같아요.
[13:13]
그것이 여기서 약간 혼란스러운 부분이에요.
[13:16]
계획을 계속하기 전에
[13:19]
추가 컨텍스트를 조금 더
[13:22]
추가하겠습니다.
[13:24]
제안된 개선 사항 중 하나가
[13:27]
마음에 들었는데, 그것이 계획을 보여주는 것이었어요.
[13:31]
축소 및 확장이 가능했고 기본적으로
[13:35]
사전을 표시하고 또한 사용 가능한
[13:39]
단어가 X개 있다는 것을 보여줄 거예요.
[13:43]
이용 가능한.
[13:44]
또한 염두에 두고 싶었던 것은
[13:48]
계획을 개선해서 이것이
[13:51]
태블릿과 모바일에서도 작동하도록 하고 싶다는 것이었어요.
[13:55]
이런 사용자 경험에서 후퇴하고 싶지 않아요.
[13:59]
후퇴하지 않도록. 네, 완벽해요.
[14:02]
그래서 저는 단순히 ultra think를 사용해서
[14:06]
코드 변경을 진행하기 전에 상세한 계획을 세워달라고 요청할 거예요.
[14:10]
코드 변경을 진행하기 전에 말이죠.
[14:13]
좋아요, 이제 기본적으로 저는 단순히
[14:16]
말하고 있는 거예요. 저에게는 정말로
[14:18]
LLM이 무엇을 할 것인지 이해하는 것이
[14:20]
중요하고 또한 그것을 문서화하여
[14:22]
제가 직접 참조할 수 있도록 하는 것이 중요해요. 왜냐하면
[14:24]
때때로 화장실에 가거나 휴식을 취하고
[14:26]
다시 돌아오고 싶기 때문이에요. 또한
[14:28]
우리가 특정 것들을 구현하지 않았다는 것을 잊지 않도록
[14:31]
확실히 하고 싶어요. 이것은 꽤 중요해요.
[14:33]
특히 언어 모델에게 기능을 넘겨주는 경우
[14:35]
이것을 이해하는 것이 중요해요. 무엇을
[14:37]
작업하고 있는지? 무엇을 완료했고 무엇을
[14:39]
완료하지 않았는지 말이에요.
[14:42]
완료하지 않았는지를요.
[14:43]
가장 중요한 것은 완료되지 않은 것이
[14:45]
아마도 꽤 중요할 것 같아요.
[14:47]
또한 코드가 들어가기 전에 검토해서
[14:48]
무엇이 진행되고 있는지 이해하려고 노력해요.
[14:50]
여전히 세 개의 다른 서브 에이전트를 시작했고
[14:53]
제가 개선한 것 중 하나를 기반으로
[14:55]
그것을 추가하려고 할 것 같아요. 그래서 이것은
[14:57]
존재하지 않는다고 말해요.
[14:59]
존재하지 않는다고요.
[15:01]
또한 실제로 우리가 Tailwind v4를 사용하고 있는지
[15:02]
이해하고 있는지 모르겠어요.
[15:04]
그래야 할 텐데요.
[15:06]
축소 가능한 패턴을 찾고 있어요. 네. 작업이
[15:09]
이제 shadtn 컴포넌트를 확인하고 있어요. 네.
[15:13]
그리고 이제 제가 BunX를 사용하고 있다는 것을 이해해요.
[15:15]
그건 꽤 멋지네요. 그것은 모두 작성되어 있어요.
[15:17]
제 규칙 파일에 말이에요.
[15:18]
그것은 모두 그곳을 살펴보고 있어요.
[15:20]
네. 형, 프로덕션에 커밋해. 그건 좀...
[15:22]
그건 좀...
[15:27]
현재 계획을 위해 Opus를 사용하고 있나요?
[15:28]
네, 현재 Opus를 사용하고 있어요. 저는
[15:31]
최대 플랜을 가지고 있어요.
[15:31]
그리고 그것이 바로 그거예요. 제 월별
[15:34]
정기 수입이 지금 얼마나 되죠?
[15:37]
아벨, 다른 창에서 확인해보겠어요.
[15:39]
몇 명의 사용자가 있다는 것을 알아요.
[15:42]
12명의 유료 사용자가 있고 5명이 있다고
[15:44]
말하고 싶어요. 그리고 누군가가 방금
[15:46]
연간 플랜을 결제했어요. 리사에게
[15:48]
큰 감사를 전해요. 그녀는 정말 멋져요. 정말 좋은
[15:50]
채널 서포터예요. 그녀가
[15:53]
연간 플랜을 결제했어요. 그리고 저는 정말
[15:55]
감사해요. 그래서 곧 계산을 좀 해야겠어요.
[15:57]
대부분 가능한 한 빨리 피드백을 받고
[15:59]
반복해서 제 사용자들이
[16:01]
정말 좋은 경험을 할 수 있도록
[16:04]
집중해왔어요. 그러니까 이 간단한 계획을
[16:06]
빠르게 살펴보죠. 와.
[16:09]
좋아요, 그럼 봅시다. 좋아요, 여기에
[16:11]
Claude의 계획이 있어요. 반응형 디자인. 그래서
[16:13]
컨테이너 구조를 만들 거예요.
[16:15]
브레이크포인트. 좋아요, 타이틀 가시성은
[16:17]
꽤 좋아 보여요. 모바일에서는 숨겨져 있어요.
[16:19]
좋아요, 이건 좋아요. 그래서 이제 실제로
[16:22]
이 정보를 얻었어요. 이것은 좋아요. 이것은
[16:24]
이런 정보들을 얻었어요. 이게 좋은 점이에요. 이렇게 하면
[16:26]
여러 번 왔다갔다 하는 일을 방지할 수 있거든요.
[16:28]
이제 이걸 고쳐, 저걸 고쳐 하는 식으로 말이에요.
[16:31]
저는 처음부터 제대로 되길 바라는 거예요.
[16:33]
이게 제가 AI 에이전트들과 작업하는 방식이에요.
[16:36]
계속 스크롤이 내려가고 있네요.
[16:39]
아마 아직 실행 중인 하위 작업들이나
[16:40]
무언가가 있는 것 같아요.
[16:42]
계속 진행되고 있는 작업들이 있나 봐요.
[16:45]
다른 부분을 보면, 여기에 사전 섹션이 있고
[16:47]
이런 타입의 규칙을 따르게 될 거예요.
[16:50]
그리고 모델 선택 기능도 있어요.
[16:52]
패턴으로서 존재하는 것들이고
[16:54]
핵심 응답들도 마찬가지예요.
[16:56]
그리고 제가 또 중요하게 생각하는 건
[16:58]
디자인 시스템 규정 준수예요.
[17:01]
모르시는 분들을 위해 설명하면, RayFernando.ai에
[17:04]
제가 계획을 세워둔 게 있어요.
[17:06]
이게 제 규칙 중 하나이고, 실제로 이걸
[17:08]
계획을 실행하면서 찾아낸 거예요.
[17:10]
이래서 이런 방식으로 계획하는 게 중요해요.
[17:13]
여기에 디자인 검토라는 계획이 있어요.
[17:15]
커서와 LLM으로 UI 표준을 자동화하는
[17:17]
내용이에요. 여기에 정말 자세한 블로그가 있고
[17:19]
이 디자인 시스템에 대해서만 따로
[17:21]
라이브 스트림을 할 수도 있을 것 같아요.
[17:24]
하지만 여기에 이런 규칙들이 있어요.
[17:26]
여기 옆쪽을 보면 '규칙'이라고 되어 있어요.
[17:28]
이런 규칙들을 마크다운 파일로 만들어서
[17:30]
레포지토리 안에 넣어두면, Claude Code가
[17:33]
이것들을 찾아낼 거예요.
[17:36]
그리고 UI 변경을 요청하면
[17:38]
실제로 이걸 고려해서 작업할 거예요.
[17:40]
정말 놀라운 기능이에요.
[17:41]
실제로 여기 있는 8포인트 그리드 시스템에
[17:44]
대해 알려주고 있어요.
[17:46]
이미 그걸 파악했고, 이제
[17:48]
이걸 생각해보니 적용하겠다고
[17:49]
말하고 있어요.
[17:51]
정말 놀라워요.
[17:52]
제가 Claude Code를 이렇게 좋아하는 이유가
[17:54]
바로 이런 추가적인 것들을 정말 잘 찾아내서
[17:56]
컨텍스트에 포함시키고
[17:58]
우리가 정말 효과적으로
[17:59]
작업할 수 있게 해주기 때문이에요.
[18:02]
60-30-10 색상 규칙도 있어요.
[18:04]
여기 있는 게 바로 그거예요. 정말
[18:06]
자세한 블로그 포스트로
[18:08]
제가 어떻게 사용했는지, 왜 이런 게
[18:10]
정말 중요한지에 대해 다루고 있어요.
[18:12]
디자인 일관성을 위해서요. 그냥 LLM에게
[18:14]
UI를 생성하라고 하는 대신
[18:16]
이제 실제로 이런 패턴을 따라갈 거예요.
[18:18]
그래서 우리 UI는 이제 이런 아름다운
[18:20]
계층구조를 항상 가지게 될 거예요.
[18:22]
그냥 여기저기 랜덤한 클래스들을
[18:24]
생성하는 대신 말이에요.
[18:26]
이런 식으로 디자인에서 더 많은 일관성을
[18:28]
얻을 수 있어요.
[18:30]
모바일 태블릿 레이아웃
[18:33]
관찰 결과도 있어요.
[18:33]
그것도 살펴보고 있네요.
[18:35]
접을 수 있는 구현에 대한
[18:37]
권장사항도 있고요.
[18:38]
저는 '와, 이거 멋지다'라고 생각했어요.
[18:40]
지금 노란색으로 표시되고 있네요.
[18:42]
이 시점에서 '좋아 보인다'고 했어요.
[18:43]
그리고 이제 이게 두 번째 에이전트에서 나온
[18:45]
두 번째 계획이에요. 여기로 돌아와서
[18:46]
shad CNUI 접을 수 있는 컴포넌트를
[18:48]
추가하겠다고 말하고 있어요.
[18:49]
그래서 이런 명령어들을 실행할 거예요. 이런 명령어들은 제가 레포의 규칙 파일에도 넣어둔 것들입니다.
[18:51]
제가 여기에 디자인 리뷰를 넣어두었다고 하네요.
[18:54]
디자인, design.mtc로 가보면
[18:54]
이게 말 그대로 규칙 파일입니다.
[18:57]
여기에 제가 실제로 정리해둔 것들이 있는데, 보여드릴 수 있나 살펴보겠습니다.
[18:59]
이것도 규칙 관련 내용의 일부로
[19:01]
구현 방법에 대해 알려주는 역할을 합니다.
[19:03]
그리고 제가 파일을 직접 제공하지 않아도 됐다는 점이 정말 좋습니다.
[19:05]
아시다시피, 저는 커서에서 파일을 선택하는 데 많은 시간을 소비했었거든요.
[19:07]
적절한 컨텍스트를 제공하기 위해서 말이죠.
[19:08]
하지만 Claude Code가 대신 해줬습니다.
[19:10]
이게 제가 Claude Code를 사용하는 큰 이유 중 하나입니다.
[19:12]
그래서 여기에 실제로 project라는 항목이 있습니다.
[19:14]
여기 프로젝트 규칙에 저의 디자인 시스템에 대한 설명이 있고
[19:16]
UI 컴포넌트를 위해 ChatZN을 사용한다고 되어 있습니다.
[19:18]
그리고 특정 명령어를 사용해서 설치하는 방법도 나와 있어요.
[19:20]
그래서 여기 있는 규칙들을 기반으로 무엇을 해야 할지 알고 있는 거죠.
[19:20]
이게 바로 정말 훌륭한 점입니다.
[19:22]
좋아요, 이런 시스템들이 이런 것들을 파악해준다는 게 정말 흥미롭고
[19:24]
저는 이게 정말 마음에 듭니다.
[19:27]
자, 그러면 여러 개의 접을 수 있는 컴포넌트가 필요한 경우
[19:29]
어떤 걸 선택해야 할지에 대해 말하고 있네요.
[19:31]
아니면 Collapsible 컴포넌트를 사용할 수도 있고
[19:33]
두 컴포넌트 모두 완벽하게 통합될 것이라고 하는데
[19:36]
일단 YOLO로 가보겠습니다.
[19:38]
좋아요. 제 연구를 바탕으로 구현 계획을 세웠습니다.
[19:40]
기본적으로 사전 섹션을 별도 컴포넌트로 분리할 예정입니다.
[19:43]
아, 그리고 이것에 대해서도 하고 싶은 게 있는데
[19:45]
Convex 규칙을 따르도록 하고 싶습니다.
[19:47]
Convex 규칙 파일이 있거든요. 제 앱에 반응성 기능이 많이 있어서요.
[19:50]
그래서 확실히 하고 싶어서
[19:50]
계속 계획하지 말고 이렇게 하겠습니다.
[19:52]
이걸 드래그해서 넣을 거예요.
[19:53]
첨부된 Convex 규칙을 사용하도록 계획을 업데이트해주세요.
[19:54]
기본적으로 반응성을 설명하는 이 규칙 파일들을 사용하고 싶습니다.
[19:57]
Convex는 기본적으로 제 데이터베이스 프로바이더입니다.
[20:01]
Convex를 사용하는 큰 장점 중 하나는
[20:03]
모든 데이터가 백엔드에 있다는 점입니다.
[20:05]
그리고 프론트엔드에서는 제가 '윈도우'라고 부르는 것을 만들기만 하면 됩니다.
[20:08]
데이터베이스로의 윈도우 말이죠.
[20:11]
프론트엔드에서 변경사항을 만들면 즉시 데이터베이스에 푸시되고
[20:15]
실시간으로 볼 수 있습니다.
[20:15]
5개의 윈도우를 열어두고 하나의 사전을 추가하면
[20:17]
모든 윈도우에 나타날 것입니다.
[20:20]
지금 이게 어떻게 보이는지 빠르게 보여드릴게요.
[20:20]
상태 동기화를 처리하거나
[20:22]
한 곳에서 규칙이 업데이트되고 다른 곳에서는 안 될 때
[20:24]
무언가를 취소하는 것에 대해 걱정할 필요가 없어서 좋습니다.
[20:26]
제 앱에서 두 개의 다른 윈도우를 열어서
[20:31]
지금 이게 어떻게 보이는지 보여드릴게요.
[20:37]
app.ray로 가보겠습니다.
[20:38]
두 개의 다른 윈도우를 열고
[20:40]
지금 이게 어떻게 보이는지 보여드릴게요.
[20:42]
그래서 app.ray
[20:44]
트랜스크라이브를 다시 보겠습니다.
[20:46]
두 개의 다른 윈도우죠.
[20:48]
저에게는 코드도 적고 모든 것이 더 간단합니다.
[20:51]
그리고 나서 그들이
[20:53]
하나의 윈도우를 만들고
[20:55]
프론트엔드에서 변경사항을 만들면
[20:58]
즉시 데이터베이스에 푸시되고
[21:00]
실시간으로 볼 수 있습니다.
[21:02]
5개의 윈도우를 열어두고 하나의 사전을 추가하면
[21:04]
모든 윈도우에 나타날 것입니다.
[21:07]
지금 이게 어떻게 보이는지 빠르게 보여드릴게요.
[21:08]
모든 윈도우에 나타날 것입니다.
[21:10]
상태 동기화를 처리하거나 한 곳에서 규칙이 업데이트되고
[21:13]
다른 곳에서는 안 될 때 무언가를 취소하는 것에 대해
[21:15]
걱정할 필요가 없어서 좋습니다.
[21:16]
제 앱에서 두 개의 다른 윈도우를 열어서
[21:17]
지금 이게 어떻게 보이는지 보여드릴게요.
[21:19]
그래서 app.ray로 가보겠습니다.
[21:22]
트랜스크라이브를 다시 보겠습니다.
[21:22]
두 개의 다른 윈도우죠.
[21:25]
저에게는 코드도 적고 모든 것이 더 간단합니다.
[21:27]
그리고 나서 그들이
[21:27]
transcribes를 다시 살펴보죠. 두 개의 다른 창으로
[21:30]
나누어 보여드리겠습니다. 이렇게 하면 코드가 훨씬 적어지고
[21:32]
모든 게 간편해집니다. 그리고 이미
[21:33]
이런 유형의 작업에 대해 정말 좋은 경험을 가지고 있어서
[21:35]
별로 신경 쓸 필요가 없습니다.
[21:37]
걱정할 게 전혀 없어요.
[21:38]
그냥 파일을 선택하면 됩니다. 만약
[21:41]
하나를 추가한다면, 예를 들어 이걸 바꿔보겠습니다.
[21:44]
여기 위로 올라가서 YOLO로 스크롤해보겠습니다.
[21:47]
짜잔! 이미 업데이트되었습니다. 그리고
[21:50]
만약 여기서 이걸 그냥 삭제하고 삭제 버튼을 누르면
[21:53]
바로 삭제됩니다. 예를 들어, 만약
[21:56]
여기서 이 단어를 삭제하면 바로 사라집니다.
[22:00]
Groq처럼 말이죠.
[22:02]
그래서 충돌을 처리할 필요가 없습니다.
[22:03]
사용자에게 동기화가 안 되어서
[22:06]
페이지를 새로고침하라고 말할 필요도 없습니다.
[22:08]
모든 게 데이터베이스에서 처리됩니다.
[22:10]
캐싱에 대해서도 생각할 필요가 없습니다.
[22:12]
Convex가 모든 캐싱을 처리하고 있어서
[22:14]
프론트엔드에서 이 캐시를 무효화하고
[22:17]
백엔드에서 이걸 처리하라고 하는 추가 코드를
[22:19]
작성할 필요가 없습니다. 아니요, 그런 건
[22:21]
다룰 필요가 없습니다. 그냥 여기 내 것이 있으니
[22:23]
가져가라고 하면 됩니다.
[22:26]
계속 진행하세요.
[22:27]
Convex에는 정말 멋진 규칙들이 있어서
[22:29]
LLM이 따라할 수 있도록 어떻게 설정하는지
[22:31]
설명하고 있습니다. 그래서 LLM이 그에 맞게
[22:34]
코드를 생성할 수 있습니다. 이제 이 계획을 검토했으니
[22:36]
우리가 여기서 설정한 특정 규칙들을 사용해서
[22:39]
맞춤형 계획을 만들어나갈 겁니다.
[22:41]
여기서 토글한 규칙들을 사용해서 말이죠.
[22:43]
정말 자세한 정보가 다 있습니다. 우리가 원하는
[22:46]
상태 관리에 대해서도 얘기하고 있고
[22:48]
구현 단계들도 설명하고 있습니다.
[22:50]
좋습니다. 그럼 일단 YOLO로 가보죠, 친구들!
[22:53]
멋지네요!
[22:57]
요, Dazeen, 어떻게 지내? 대단해, 형!
[22:59]
스타일링 팁이 정말 많은 골칫거리를 줄여주네요.
[23:01]
말해주는데, 형, 이게 바로 해야 할 방법이에요.
[23:03]
하나의 라이브를 GenSpark의 슈퍼 에이전트
[23:06]
테스트에 전념하세요. 사실 Manus는
[23:08]
다시 사용하지 않고 있어요. 잘 모르겠네요.
[23:11]
지금은 그냥 제 앱들을 출시하는 데
[23:13]
집중하려고 하고 있어요. 만약 정말, 정말 좋은
[23:16]
뭔가가 제 레이더에 나타나면
[23:18]
한번 살펴봐야겠죠. Opus가 아직도
[23:20]
Grok4보다 낫다고 생각하세요?
[23:23]
지금 현재로서는 Opus가 킹이에요, 형.
[23:25]
Groq4는 뭔가 준비하고 있는 것 같고
[23:28]
아직 더 테스트를 해봐야 할 것 같아요.
[23:31]
하지만 현재로서는
[23:32]
코딩 에이전트가 아직 준비가 안 되었어요.
[23:35]
Groq4로 해왔던 작업들과
[23:37]
RepoPrompt와 함께 사용하는 방식은
[23:38]
괜찮았어요.
[23:40]
Groq4와 Cursor를 조금 사용해봤는데
[23:43]
그럭저럭 했지만
[23:44]
Cursor Ultra 플랜은 없어요.
[23:46]
그냥 월 20달러 프로 플랜을 사용하고 있어요.
[23:48]
솔직히 말해서
[23:49]
차라리 Claude Code를 사용하고 싶어요.
[23:51]
Claude Code가 지금 정말 엄청나게 좋거든요.
[23:53]
그리고 이미
[23:54]
Claude Code에 200달러를 지불하고 있어요.
[23:56]
제가 작업하고 있는 이런 류의 소스를 보셨죠.
[23:59]
이게 바로 제 워크플로우예요.
[24:01]
이걸 여러분께 소개하고 싶었어요.
[24:03]
이해할 수 있도록 말이죠. 그럼 지금까지
[24:06]
rayfernando에서 해왔던 것들을 간단히 요약해보면
[24:08]
지금까지 살펴본 내용들을 정리해보겠습니다.
[24:10]
Claude Code로 최대한 활용하기 파트 1
[24:12]
지금까지 제가 한 것은 플랜 모드를 광범위하게 사용해서
[24:15]
에이전트들이 계획을 세우고 준비될 수 있도록
[24:17]
확실히 해놓았습니다
[24:20]
제가 사용하는 두 번째 키워드는 울트라 씽크라고 불리는 것입니다
[24:24]
울트라 씽크는 특별한 키워드입니다
[24:28]
이런 키워드들 중에서 4개 중 하나죠
[24:30]
이것은 최소 32,000 토큰을 제공합니다
[24:34]
에이전트들이 확장된 사고를 위한 생각 창구를 말이죠
[24:37]
그리고 기술적으로 정확도가 훨씬 뛰어납니다
[24:40]
이 플래닝 모드에서 많은 경우에 저는
[24:41]
꽤 정확하게 만들고 싶습니다
[24:44]
그래서 이 에이전트에서 더 많은 성능을 얻을 수 있는 방법은
[24:46]
다음과 같이 말하는 것입니다
[24:49]
병렬로 몇 개의 서브 에이전트를 추가로 실행하고 싶다고 하면
[24:52]
각 에이전트가 자신만의
[24:56]
컨텍스트 창과 자신만의 사고 창을 가지게 되고
[24:58]
그것이 훨씬 더 정확한 결과를 가져다줍니다
[25:00]
그래서 우리는 그 세 개의 에이전트를 봤습니다
[25:03]
몇 개인지 말하지 않았는데도 스스로 알아냈죠
[25:06]
하나는 디자이너였고 모든 디자인 관련 작업을 처리했습니다
[25:08]
하나는 제 규칙 파일을 처리하고
[25:11]
다른 하나는 코드를 살펴보고
[25:12]
모든 다른 레이어에서 무슨 일이 일어나고 있는지 이해하려고 했습니다
[25:15]
각각이 다른 계획들을 보고했고
[25:19]
우리는 그것들을 반복적으로 수정하고
[25:21]
예, 아니요, 이런 종류의 변경사항을 만들자고 했습니다
[25:23]
우리는 추가적인 검토를 했고
[25:26]
마지막으로 코드를 작성하기 전에 큰 계획을 검토하라고 했습니다
[25:29]
이것은 특히 AI와 코딩을 할 때
[25:31]
요즘 시대에는 정말 중요합니다
[25:34]
그 계획을 올바르게 세우는 것 말이죠
[25:37]
그래서 Claude Code에게 넘길 수 있습니다
[25:38]
지금 Claude Code는 우리를 위해 작업하고 있고
[25:40]
저는 스트림에서 여러분들과 대화하면서 편히 쉬고 있죠
[25:42]
그래서 이것이 기본적으로 우리가 다뤄온 것들의 간단한 요약입니다
[25:44]
제대로 작동하는지 아닌지는 지켜봐야겠지만
[25:46]
전체 계획을 통해 작동하는 것을 보고 있고
[25:48]
이것이 제게는 정말 아름답습니다
[25:50]
제 규칙을 찾았고 디자인 관련 것들도 찾았습니다
[25:57]
시청하시는 분들을 위한 추가 보너스로
[25:59]
실제로 디자인 가이드가 있습니다
[26:02]
그리고 그게 뭔지 궁금한 분들을 위해
[26:05]
rayfredando.ai에 있습니다. 디자인 리뷰라고 되어 있고
[26:07]
AI 표준을 자동화한다고 되어 있어요
[26:09]
그래서 그 규칙 파일이 실제로 제 프로젝트에 있고
[26:11]
그것이 포착할 수 있었던 것입니다
[26:15]
그래서 생성될 코드는 이 특정 가이드라인을 따를 것입니다
[26:17]
여러분도 이것을 프로젝트에 추가하고 필요에 따라 조정할 수 있습니다
[26:19]
저는 Tailwind를 사용하고 있는데
[26:21]
모든 것이 통합되어 있는 방식 때문입니다
[26:23]
솔직히 말해서 이런 종류의 작업을 할 때
[26:25]
일관성을 얻기 위해서는 그것이 앞으로 나아갈 길이라고 생각합니다
[26:27]
이런 종류의 것들을 하는 데 있어서 말이죠
[26:32]
자, 이제 보니까 코드를 이동시키고 있는 것 같아요.
[26:34]
폼에서 코드를 빼내서
[26:36]
기본적으로 여기 코드를
[26:38]
리팩터링하고 있어요.
[26:40]
꽤 괜찮네요.
[26:41]
이제 펜슬을 만들겠다고 하고
[26:43]
할 일 목록을 따라가고 있어요.
[26:45]
반응형 동작 테스트, 모바일 레이아웃,
[26:48]
리파이어링과 어그레션이라고 되어 있고
[26:50]
이미 완료된 것 같아요.
[26:52]
왼쪽 diff 뷰를 보면
[26:54]
모든 변경사항을 볼 수 있어요.
[26:57]
지금까지 한 작업을 보면
[26:59]
기본적으로 여기 있던 코드를
[27:01]
빼내서 모든 코드를 제거하고
[27:03]
collapsible dictionary라는
[27:05]
새 파일을 만들었어요.
[27:09]
이건 접을 수 있는 딕셔너리를
[27:10]
처리하는 새로운 파일이에요.
[27:13]
정말 좋은 리팩터링이네요.
[27:16]
그리고 실제로 제가 만든 convex 규칙들도
[27:18]
사용하고 있어요.
[27:19]
실제로 use dictionary에서
[27:21]
제가 만든 훅들을 사용하고 있어요.
[27:23]
이 훅들은 convex에서 온 거예요.
[27:26]
여기서 보면 이것들은 모두
[27:28]
convex 데이터베이스에서 온 mutations이에요.
[27:30]
기본적으로 useQuery를 사용해서
[27:33]
호출을 하고 있어요.
[27:34]
이것들은 제 convex 데이터베이스의
[27:36]
특정 함수들이고
[27:37]
제 쿼리와 mutations의 기반이에요.
[27:39]
Claude Code가 이 모든 걸 작성했다는 게
[27:41]
정말 좋아요. 보시다시피 정말 잘 작성되어 있고
[27:44]
나중에 사용할 수 있도록 훅 자체로
[27:46]
설정되어 있어요.
[27:49]
이것이 소프트웨어의 복합적인 효과의
[27:51]
힘이라고 할 수 있어요.
[27:53]
이제 리팩터링을 할 수 있고
[27:56]
메인 컴포넌트에서 코드를 빼낼 수 있어요.
[27:58]
이건 말 그대로 프로토타입이거든요.
[28:00]
use dictionary나 collapsible dictionary용
[28:03]
자체 컴포넌트로 만들었어요.
[28:06]
뷰를 보는 방식을 바꾼 거죠.
[28:08]
데이터는 여전히 그대로 있고
[28:10]
이제 뷰로 변환되고 있어요.
[28:13]
그리고 collapsible을 위한 작은 UI
[28:15]
컴포넌트도 있어요.
[28:17]
이건 ChatCN을 사용해서 설치된
[28:20]
컴포넌트예요. 정말 멋지네요.
[28:22]
벌써 끝났나요? 네, 끝났네요.
[28:24]
구현이 모든 기존 기능을 유지하면서
[28:26]
특히 수직 공간이 소중한
[28:29]
모바일 디바이스에서 레이아웃을
[28:31]
개선했다고 하네요.
[28:34]
collapsible 패턴, 멋져요.
[28:36]
정말 좋아요. 이제 해야 할 일은
[28:39]
bun, bunX, convex dev를 실행하는 거예요.
[28:41]
아직 이 코드를 배포하고 싶지 않아요.
[28:44]
여기서 명령어를 실행해서
[28:47]
convex 함수를 변경했는지 확인해보려고요.
[28:50]
변경하지 않았을 것 같아요.
[28:52]
플러스 사인을 누르고
[28:55]
bun dev를 실행할게요.
[28:58]
이제 여기서 실행되고
[29:01]
클릭할 수 있어야 해요.
[29:03]
아, OpenWebUI를 열어두지 않았네요.
[29:07]
뭘 클릭했지? OpenWebUI가 없는 것 같아요.
[29:11]
어디에 있지? 아, 찾았어요.
[29:15]
네, 다른 걸 열어두고 있었네요.
[29:19]
프로세스를 죽여야 했습니다.
[29:24]
이제 기본적으로 앱에 로그인해서 실행시킬 수 있을 것 같습니다.
[29:28]
앱에 로그인해서 실행시킬 수 있을 것 같습니다.
[29:32]
지금 제가 하는 것은 이 작은 블러 컴포넌트를 설정했고
[29:34]
이제 너무 많은 비밀 정보를 노출하지 않고도
[29:36]
로그인할 수 있을 것 같습니다.
[29:38]
네, 이것은 꽤 멋지네요.
[29:40]
라이브 스트리밍의 즐거움이죠.
[29:42]
이 페이지를 찾을 수 없습니다.
[29:44]
몇 가지 문제가 있네요.
[29:46]
지금 제가 할 일은 캐시를 지우는 것입니다.
[29:49]
로컬 네트워크 작업을 할 때는
[29:51]
같은 환경을 사용하는 여러 앱을 작업하는 경우가 있어서
[29:53]
환경 설정 등 모든 것을 공유하게 됩니다.
[29:55]
localhost 3000을 사용할 때
[29:57]
localhost에서 이런 쿠키들이 모두 남아있게 됩니다.
[30:00]
다른 프로젝트를 작업하면서 생긴 쿠키들이요.
[30:02]
다른 프로젝트를 작업하면서 생긴 쿠키들이요.
[30:05]
쿠키들이 겹치게 되어서 별로 좋지 않습니다.
[30:09]
별로 좋지 않죠.
[30:11]
지금 앱이 로드되지 않는 문제가 있습니다.
[30:14]
그리고 아마도... 잘 모르겠네요.
[30:16]
잘 모르겠네요.
[30:17]
이 페이지를 찾을 수 없습니다. 왜죠?
[30:21]
왜 오류가 발생하는지 궁금하네요. 아, 이건
[30:25]
OpenWebUI로 가고 있네요. 왜죠?
[30:27]
아, 신경 쓰지 마세요. 네, 캐시를 지워야 했었고
[30:29]
모든 것을 지워야 했었습니다. 강제 새로고침을 했네요.
[30:32]
이제 다시 돌아왔습니다, 여러분.
[30:34]
좋네요. 이제 됐네요.
[30:37]
앱으로 돌아왔으니 모든 것을 볼 수 있을 것입니다.
[30:39]
이전에 보았던 것은 단지
[30:42]
여러 작업을 하면서 생긴 오류들이었습니다.
[30:44]
커스텀 딕셔너리가 있고, 이제 이런 식으로 작동하고 있네요.
[30:46]
모바일에서는 여기서 하고 싶은 것이 있습니다.
[30:49]
이런 종류의 것들을 하고 있는 것 같습니다.
[30:52]
모바일에서는 여기서 하고 싶은 것이 있습니다. 그래서 이것은
[30:55]
앱을 어느 정도 고쳐줍니다.
[30:57]
모바일 뷰를 말이죠. 하지만 여전히
[30:59]
여러 개의 스크롤 형태의 것들이 있는 것을 볼 수 있습니다.
[31:00]
이런 것들이 있네요.
[31:02]
그래서 한 부분만 구현했고
[31:04]
탭해서 탐색하라고 하지만 그냥
[31:07]
진행하겠습니다.
[31:07]
이 스크린샷을 제공하고
[31:09]
이것이 우리가 있는 지점이라고 말하겠습니다.
[31:11]
계속해봅시다.
[31:13]
여기서 반복하기 위해서요. 이것은 별로 좋아 보이지 않네요.
[31:16]
스크린샷을 끌어다 놓겠습니다.
[31:19]
그 다음에
[31:20]
어떤 스크린샷이 필요한지 말이죠.
[31:23]
모바일에서는 레이아웃이
[31:26]
레이아웃이
[31:26]
그냥 좀 웃기네요. 좋아요, 봅시다.
[31:31]
여기서 그 뷰를 잡아서 그냥 시프트하겠습니다.
[31:35]
보세요, 모바일에서는 레이아웃이 여전히...
[31:39]
레이아웃이 퇴보했습니다.
[31:44]
퇴보했습니다.
[31:45]
단어들이 겹치는 것을 볼 수 있고...
[31:51]
봅시다, 디자인이 더 직관적인가요?
[31:57]
음, 네, 멋지네요. 제 생각에는... 네.
[32:03]
네. 네. 그리고 UI는 여전히 하단에 공간이 있습니다.
[32:11]
여전히 있고, UI가 전체 상단과 하단을 차지하고 있다는 느낌이 들지 않습니다.
[32:19]
공간을 차지하고 있다는 느낌이 들지 않습니다.
[32:27]
그 공간을 말이죠.
[32:31]
어떻게 말해야 할지 모르겠네요.
[32:33]
아래쪽에 여전히 꽤 많은 공간이 있습니다.
[32:36]
사용할 수 있는 공간이 있습니다. 좋아요.
[32:39]
iPhone Pro, iPhone Pro Max로 하면, 네.
[32:41]
아, 아마 그것일 거예요. iPhone Pro, iPhone Plus. 좋아요.
[32:44]
좋아요.
[32:46]
아, 신경 쓰지 마세요. 그것은 그냥 제 UI 문제였던 것 같습니다.
[32:48]
iPhone Pro Max. 좋아요.
[32:51]
하지만 여전히 여러 개의 스크롤 바가 있어서
[32:55]
정말 보기 안 좋네요. 음, Control W를 눌러도
[32:59]
텍스트가 겹쳐서 보이고
[33:01]
UI도 별로고요. 그리고
[33:05]
모바일 최적화도 안 되어 있는 것 같아요. 그리고
[33:09]
데스크톱 화면에서는 피드백을 줄 수 있을 것 같은데
[33:13]
일단 새로고침부터 해보겠습니다.
[33:17]
새로고침하겠습니다.
[33:18]
처음에는 접혀있는 상태로 시작하고 싶어요.
[33:24]
collapsible set이 열려있는 것 같은데, useState를
[33:30]
false로 하면 열려있다는 뜻이고, true로 하면
[33:35]
반대로 되어야 할 것 같은데, 정확히 모르겠네요.
[33:42]
아니다, 아니다, 아니다. 내가 뭘 하고 있는지
[33:46]
모르겠네요. useState는 open 상태를 설정하는 것 같고
[33:50]
그래서 collapsible이 열려있으면 setIsOpen으로 설정하고
[33:56]
collapsible이 열리면 setIsOpen이 되고,
[33:59]
만약 열려있지 않으면 '펼치려면 탭하세요'라고 나오는데
[34:02]
반대로
[34:02]
하고 싶어요. 그리고 데스크톱에서는
[34:06]
그래, 데스크톱에서는... 아직도 좀 이상하네요.
[34:09]
아직도 좀 이상하네요.
[34:12]
그래서 이렇게 하겠습니다. 이 스크린샷을
[34:16]
보내겠습니다. 그리고 데스크톱에서는 여전히
[34:22]
보기가 화면 밖으로 나가는 것 같아서
[34:27]
이상하다고 말하겠습니다. 그 화면이
[34:33]
화면 밖으로 나가는 것 같아요.
[34:36]
collapsible 콘텐츠가 열려있어요.
[34:45]
그래서 처음에는 닫힌 상태로 시작하면 어떨까요?
[34:49]
좋습니다.
[34:50]
피드백으로 이렇게 해보겠습니다.
[34:52]
해당 스크린샷에 액세스하고 싶다고 나올 텐데
[34:54]
그러면 괜찮을 것 같아요.
[34:56]
좋습니다.
[34:57]
좋아요.
[34:58]
이제 스크린샷을 읽고
[35:01]
처리할 거예요. 네.
[35:03]
좋아요, 맞습니다. 이것도 추가할게요.
[35:06]
좋습니다. 이제 처리할 거예요.
[35:09]
좋습니다.
[35:11]
댓글을 좀 확인해보겠습니다.
[35:12]
Ultrathink에 대해 얘기하는 분이 계시네요.
[35:19]
브라우저에서 실행되는 Claude Code의
[35:21]
웹 UI 버전을 만들었는데
[35:24]
E2B를 사용해서 샌드박스에서 모든 것을 실행한다고 하네요.
[35:26]
E2B를 사용해서 샌드박스에서 모든 것을 실행한다고 하네요.
[35:28]
와, 그게 어떻게 작동하나요? 정말 멋질 것 같은데요?
[35:29]
정말 궁금해요. 어떻게 작동하는지
[35:31]
정말 보고 싶어요.
[35:32]
정말 보고 싶어요.
[35:33]
그래요.
[35:34]
안녕하세요, IO님?
[35:38]
Glycele님, 안녕하세요, 여러분!
[35:42]
스크린샷을 클립보드에 저장하도록 설정해서
[35:43]
클립보드에 저장하고
[35:44]
Max Showcut을 사용해서 Claude Code에 바로 붙여넣기 하면
[35:46]
Claude Code에 바로 붙여넣기 하면
[35:46]
Finder를 사용해서 드래그 앤 드롭으로 하면 어떨까요?
[35:48]
정말 좋은 아이디어네요. 그렇게 해야겠어요.
[35:50]
제가 좀...
[35:51]
제가 좀...
[35:53]
좋은 워크플로우를 찾아보겠습니다.
[35:55]
보시다시피 때로는 여러 개의 스크린샷을 찍어야 해서
[35:56]
여러 개의 스크린샷을 찍어야 해서
[35:57]
단순히 하나를 복사해서 붙여넣는 것이 아니라
[36:00]
여러 개를 복사해서 붙여넣어야 하거든요.
[36:02]
Claude Code가 너프됐다는 얘기를 많이 하시는데
[36:05]
모델이 더 멍청해지고 속도 제한에
[36:07]
더 빨리 걸린다고 느끼는 분들이 있나요?
[36:10]
저는 아직 그런 문제를 겪지 않았는데
[36:12]
무슨 일이 벌어지고 있는지 정말 궁금해요.
[36:15]
제 워크플로우는 말 그대로 먼저 계획을 세우고
[36:18]
그 다음에 진행하는 방식이에요.
[36:20]
보시다시피 말이죠. 그래서 잘 모르겠어요.
[36:23]
제가 계획을 많이 나누어서 하는 편이고
[36:26]
제가 계획을 많이 나누어서 하는 편이고
[36:27]
특정 워크플로우가 더 민감한지
[36:29]
정확히 잘 모르겠어요.
[36:32]
지금까지는 꽤 잘 작동하고 있어요.
[36:34]
웹이 아닌 다른 것도 작업하시나요? 지금은
[36:37]
웹 쪽에 더 집중하고 있지만,
[36:39]
네, 이전에 웹이 아닌 작업도 해봤어요.
[36:42]
전에요.
[36:42]
Claude Code가 약해졌다는 건 못 느끼겠지만,
[36:44]
Mac 구독이 확실히 덜 관대해졌어요.
[36:47]
특히 말이죠.
[36:48]
오, 정말 궁금하네요. 아직 이걸로
[36:51]
엄청 열심히 해보지는 않았거든요.
[36:53]
그러니까 어떻게 되는지 한 번 봅시다.
[36:55]
좋아요, 이제 여기서 기본적으로 확인해보겠어요.
[36:58]
모바일 오버랩이 이제 이 버튼을 재구성했고
[37:01]
기본 접기 상태도 만들었네요.
[37:03]
그러니까 모바일
[37:05]
깔끔하고 컴팩트한 헤더. 좋아요, 멋지네요.
[37:05]
한 번 봅시다. 좋아요, 그러면 살펴보죠. 오, 멋져요.
[37:10]
와. 이게 훨씬 깔끔하네요. 이해하기 훨씬 쉬워요.
[37:15]
무슨 말인지 아시겠죠.
[37:18]
그냥 새로고침하고 여기서 모든 걸 해보겠어요.
[37:20]
오, 그냥 다시 시작하겠어요.
[37:22]
다시 빌드해야 해요. 보통 이런 컴포넌트들을 할 때
[37:22]
다시 빌드해야 하거든요.
[37:25]
좋아요. 새로고침. 이제 사이트를 다시 빌드하고 있어요.
[37:28]
멋져요. 파일을 선택하고. 오, 멋져요.
[37:31]
좋아요, 이제 기본적으로 우리는
[37:34]
여기서 이런 작은 확장 가능한 것을 가지고 있어요.
[37:36]
사람들이 여기서 가지고 놀 수 있는,
[37:39]
정말 멋져요. 이건 훨씬 더 직관적이에요.
[37:42]
이 퇴행은 마음에 안 들지만, 뭐 어쨌든.
[37:45]
모바일로 가보겠어요.
[37:48]
오, 모바일 뷰를 리셋하겠어요. 이건
[37:51]
아이폰 iOS 버그인가 뭔가 그런 것 같아요.
[37:52]
좋아요, 최대 크기. 좋아요, 이거 좋아 보이네요.
[37:55]
위아래 사이에 간격이 조금 더 필요할 것 같지만
[37:59]
이미 이게 마음에 들어요. 훨씬 깔끔해요.
[38:03]
완전히 깔끔해요.
[38:07]
계층 구조는 이 모델을 선택하는 거고
[38:10]
그러면 만약 당신이 - 제가 여기서 생각하는 건
[38:13]
이게 커스텀 사전을 위한 고급 모드 같은 거라는 거예요.
[38:14]
사람들이 항상 커스텀 사전을 사용하길 기대하지 않기 때문에
[38:18]
이게 거기에 확장 가능한 형태로 있다고 생각해요.
[38:21]
궁금하다면 이걸 사용할 수 있고
[38:22]
그러면 사람들이 여기서 볼 수 있으니까
[38:25]
커스텀 사전은 고급 옵션이라고 할 수 있어요.
[38:27]
제가 더 선호하는 방식이고 너무 눈에 띄지 않아요.
[38:29]
이것들은 그렇지만요.
[38:31]
그래서 이게 정말 좋은 절충안이라고 생각해요.
[38:34]
사실 이거 정말 마음에 들어요.
[38:36]
좋아요, 멋져요. 이제 바로 이걸
[38:38]
제 브랜치에 커밋하겠어요. 이미 거기에 있으니까요.
[38:40]
트랜스크립트를 생성할 수 있는지 확인해 보겠어요.
[38:43]
이게 적어도 작동하는지 확인하기 위해서요.
[38:45]
야, 무슨 일이야? 퇴행이 생겼다는 얘기 들었어?
[38:47]
네, 무슨 일인지 모르겠어요. 스위치 때문에
[38:50]
앱이 좀 이상한 것 같아요. 빠르게 테스트해보겠어요.
[38:52]
좋아요, 여기 있네요. 멋져요. 네. 멋져요.
[38:55]
멋져요. 좋아요. 오, 멋져요. 네, 정말 빠르게 작동하네요.
[38:58]
좋아요. 마음에 들어요. 지금까지는
[39:01]
제가 이제 하는 일은 기본적으로, 앗, 잘못했네요.
[39:03]
그냥 확인하고 시작할 수 있는지 확인하겠어요.
[39:05]
트랜스크립트를 생성할 수 있는지 확인해 보겠어요.
[39:08]
이게 적어도 작동하는지 확인하기 위해서요.
[39:11]
야, 무슨 일이야? 퇴행이 생겼다는 얘기 들었어?
[39:12]
네, 무슨 일인지 모르겠어요. 스위치 때문에
[39:14]
앱이 좀 이상한 것 같아요. 빠르게 테스트해보겠어요.
[39:17]
좋아요, 여기 있네요. 멋져요. 네. 멋져요.
[39:19]
멋져요. 좋아요. 오, 멋져요. 네, 정말 빠르게 작동하네요.
[39:21]
좋아요. 마음에 들어요. 지금까지는
[39:22]
제가 이제 하는 일은 기본적으로, 앗, 잘못했네요.
[39:31]
멋져요. 좋아요. 오, 멋져요. 네, 정말 빠르게 작동하네요.
[39:35]
좋아요. 마음에 들어요. 지금까지는
[39:40]
제가 이제 하는 일은 기본적으로, 앗, 잘못했네요.
[39:40]
제가 이제 하는 일은 기본적으로, 앗, 잘못했네요.
[39:43]
창을 선택해서 이제 여기서 할 일은
[39:46]
설정을 할 거예요
[39:47]
여기서 이 기능을 설정하는데
[39:48]
변경사항을 커밋하려고 해요
[39:49]
그래서
[39:50]
여기서 하는 일은 기본적으로
[39:52]
커밋 메시지 생성을 누르는 거예요
[39:53]
그러면 기본적으로
[39:55]
커밋 메시지를 생성해 줄 거예요
[39:56]
그리고 여기서 플러스 기호를 누르면
[39:58]
모든 변경사항이 스테이징돼요
[40:00]
변경사항들이요
[40:00]
보니까 우리가 몇 가지 변경사항을 만들었네요
[40:03]
이 package JSON 접을 수 있는 기능을 추가했어요
[40:06]
그리고 실제 전사 폼을 위한
[40:09]
코드 변경사항들이 있어요
[40:11]
이미 일부를 검토했지만
[40:12]
기본적으로 여기서 제거하는 건
[40:14]
커스텀 딕셔너리
[40:15]
여기에 나열되어 있던 것들이에요
[40:17]
그리고 이걸 React 컴포넌트로
[40:18]
CollapsibleDictionary로 교체했어요
[40:20]
그리고 여기 CollapsibleDictionary는
[40:22]
우리가 사용하는 새로운 레이아웃이에요
[40:24]
모든 것에 대한
[40:25]
이 전체 컴포넌트를 위한 거예요
[40:26]
그래서 우리는 훅을 활용하고 있어요
[40:28]
Convex에서 모든 것을 가져오는
[40:30]
그 반응성을
[40:31]
모든 단어들에 대해 가지고 있는
[40:33]
반응성을요
[40:33]
그리고 그것이 내 UI로
[40:35]
끌어올려지는 방식이에요
[40:36]
그리고 여기 이 레이아웃이 기본적으로
[40:38]
우리가 이런 종류의 것을 다루는 방식이에요
[40:40]
Collapsible과 관련해서는, 이것은 ChatZN
[40:43]
컴포넌트로 Bunnex를 실행했을 때
[40:45]
설치된 거예요
[40:46]
그리고 모든 레이아웃 부분들이
[40:48]
꽤 괜찮아 보여요. 지금으로서는
[40:50]
우리가 작은 중단점을 만들기에는 충분하다고 생각해요
[40:52]
그리고 그냥 커밋을 진행하려고 해요
[40:54]
변경사항을 동기화하려고 해요
[40:56]
그러면 내 feature 브랜치에서 사용할 수 있을 거예요
[40:58]
그리고 빌드가 되는지 확인하고 싶어요
[41:00]
그래서 해야 할 일 중 하나는
[41:02]
bunX가 아니라 bun run build예요
[41:04]
그래서 빌드를 실행할 수 있는지
[41:06]
다른 타입 오류가 없는지 확인하고 싶어요
[41:08]
만약 오류가 있다면 보통
[41:10]
여기서 소리를 지르면서 '이 특정한 것을 빠뜨렸다'
[41:12]
규칙이나 특정 타입 같은 걸 말해줄 거예요
[41:15]
그리고 일반적으로 그게 꽤 도움이 돼요
[41:16]
버그를 수정하거나 Claude Code에게
[41:18]
수정하라고 말하는 데 말이에요
[41:20]
그래서 지금까지는
[41:21]
이런 종류의 것을 가지고 있지만
[41:23]
Claude Code가 고치라고 말하는 거예요. 지금까지는
[41:25]
이런 종류의 것이 있지만
[41:26]
내 UI가 완전히 만족스럽지 않아요
[41:28]
왜냐하면 추가적인 것이 필요하지 않기 때문이에요
[41:31]
상단에 패딩을요
[41:32]
그래서 마지막으로 한 번만 더 시도해 보고
[41:34]
실제로 그걸 찾을 수 있는지 보려고 해요
[41:37]
그래서
[41:37]
말하려고 하는 건 다시 드래그를 해서
[41:40]
붙여넣을 수 있는지 확인하는 거예요
[41:42]
그냥 할 수 있을까요
[41:43]
붙여넣기가 안 되네요
[41:46]
Control U를 해봐야겠어요. 네, 예전에는
[41:49]
있었는데
[41:50]
네, 그 단축키를 설정해야겠어요
[41:52]
왜냐하면 그게 정렬되어 있거든요
[41:54]
그래서
[41:54]
마지막으로 한 번만 더 말해보려고 해요
[41:57]
할 수 있나요... 변경사항들이
[41:59]
정말 훌륭해 보여요. 단지
[42:00]
데스크톱에서 사소한 문제가 하나 있어요
[42:02]
우리가 조금 더 필요한 것 같아요
[42:04]
패딩을 더 추가해야 해요
[42:05]
상단에 말이에요. 여기 스크린샷에서 보시는 것처럼
[42:08]
약간 잘려있는 상태입니다. 그리고 이제
[42:11]
우리가 가지고 있는 상태에서
[42:12]
이제 그냥 진행하도록 하겠습니다
[42:14]
알아서 작업하도록 하고, 시스템이
[42:16]
시도할 거예요
[42:16]
코드를 검토하고 수정하는 것을. 그래서
[42:19]
그게 바로 현재 상황입니다.
[42:20]
안녕하세요 Eddie Steve, 함께해 주셔서 감사합니다
[42:23]
친구. 나가야 하는 걸 알고 있어요. 사실 저도
[42:27]
나가야 해요
[42:27]
저도 1분 안에 나가야 하거든요
[42:29]
말 그대로. 그게 현재 상황입니다. 오
[42:32]
와, 뮤지컬
[42:33]
체어네요. 그렇습니다. 저는 걱정하고 있었어요
[42:35]
CC 사용량을 늘리는 것들에 대해서, 그들이
[42:38]
계속해서
[42:38]
그리고 C.C.
[42:39]
이런 일이 일어났다고 생각해요, 그들이
[42:43]
깨닫든 깨닫지 못하든 말이에요.
[42:44]
제게는 단순히 더 많은 것에 대한 것이었어요
[42:46]
사람들이 실제로 얼마나 많이 지출할지에 대한 깨달음
[42:48]
말이에요.
[42:49]
그리고 그것이 실제로 그들을 막지는 않는다고 생각해요.
[42:51]
단지 당신이 이해할 수 있게 해줄 뿐이라고 생각해요
[42:53]
이 모든 상황에서 당신이 어디에 서 있는지를
[42:55]
그리고 당신이 투자한 만큼의 가치를 얻고 있는지
[42:57]
아닌지를요.
[42:57]
그래서, 네, 그게 현재 상황입니다.
[42:59]
모든 댓글을 다 확인할 시간이 없었지만
[43:01]
확실히 앞으로 시도해보겠습니다
[43:03]
가능하다면 확인해보도록 하겠습니다.
[43:04]
많은 분들이 알고 있듯이, 계속
[43:06]
들어오고 계신 상황입니다. 그래서 지금 제가
[43:08]
나가기 전에, 말 그대로 몇 분
[43:10]
밖에 남지 않았어요. 먼저 멤버분들에게
[43:12]
인사드리고 싶습니다. 그리고 만약 당신이
[43:14]
멤버가 되고 싶다면, 언제든 편하게
[43:16]
RayFernando1337 유튜브에서 가입하세요. 그 작은
[43:18]
가입 버튼을 누르시면 되고
[43:20]
$6.99로 가입할 수 있습니다. 디스코드에 들어가게 되고, 저는
[43:22]
이미 60여명의 멤버를 보유하고 있습니다. 그래서 제가
[43:24]
100명에 도달하면, 처음 100명의 멤버들에게는
[43:26]
디스코드 접근과 멤버십을 위한 가격이
[43:28]
두 배로 오를 예정입니다.
[43:30]
그래서, 네, 이것이 두 번째가 될 것입니다
[43:33]
디스코드에 들어가는 티어가요.
[43:34]
디스코드, 정말 멋질 것 같습니다.
[43:36]
Eddie, 방금 라이브에서 봤어요. 기본적으로
[43:37]
제가 따르는 스케줄이
[43:38]
이번 달에 있는지요? 지금 현재로서는
[43:40]
기본적으로 매일 하고 있어요
[43:42]
말 그대로
[43:43]
7월과 8월 한 달 동안, 8월 대부분 동안
[43:45]
저는 이것을 스트리밍의 여름이라고 부릅니다.
[43:48]
그래서 시도하고 있어요
[43:48]
오전 9시에서 10시 사이에 나타나도록
[43:50]
태평양 일광 절약 시간으로. 보통
[43:53]
바로 이 시간대
[43:53]
정도입니다. 가족과 함께하는 일들을
[43:55]
잘 챙기고 싶고, 그리고
[43:57]
그러면 제가
[43:57]
잠시 스트림에 들어와서
[43:59]
참여할 수 있습니다. 그래서 만약 질문이
[44:00]
있으시면
[44:01]
언제든 들어오세요. 당신이
[44:03]
멤버이시니까, 디스코드 가입을 위한
[44:05]
게시물이 있습니다. 거기 있는
[44:06]
지침을 따라하시면 제가
[44:08]
디스코드에 초대해드리겠습니다. 멤버이시니까요.
[44:10]
그리고 우리는 채팅도 할 수 있습니다. 꽤
[44:12]
활발합니다. 몇 분이
[44:14]
오늘 아침에 질문을 하고 계세요. 저는
[44:16]
거기에도 갈 수 있도록 하겠습니다
[44:17]
네, 다른 멤버들도 있는지 확인해보겠습니다
[44:19]
다른 멤버 관련 내용들이 지속적으로 나오고 있네요.
[44:21]
지금까지 스트림에 참여해주신 모든 분들께 감사드립니다.
[44:23]
우리와 함께 할 수 있게 되어서 정말 좋습니다.
[44:25]
저는 bacon overflow를 정말 좋아하고,
[44:26]
여러분의 댓글이 있을 때마다 항상 좋아합니다.
[44:30]
Anthropic에서 100만 토큰이 5천만 달러라고 말할 수 있지만,
[44:32]
그게 실제 가격을 의미하는 건 아니죠. 정확히 그겁니다.
[44:35]
하지만 우리가 월 200달러 플랜에 대해 지불하는 것보다
[44:37]
더 많이 사용하고 있을 거라고 생각해요.
[44:39]
동감합니다. 그들의 데이터 센터 상황이
[44:42]
정확히 어떤지는 모르지만, 그렇습니다.
[44:44]
전사 폼의 경우, PT6에서 PT8로
[44:46]
패딩을 더 추가한 것 같네요.
[44:48]
좋은 변화이고, 그렇게 했어야 맞습니다.
[44:51]
잠깐 새로고침 해보겠습니다.
[44:53]
그게 문제일 수도 있고 아닐 수도 있어요.
[44:57]
그런데 코드의 특정 부분에 변경사항이 있을 때마다
[44:59]
기본적으로 사이트를 다시 실행해야 합니다.
[45:01]
여기서 이걸 고쳐보겠습니다. 알겠습니다.
[45:04]
정말로 가야 할 시간이에요.
[45:06]
1분 정도 늦을 것 같아요.
[45:09]
친구가 화낼 거지만, 괜찮아요.
[45:11]
여러분이 그만한 가치가 있거든요.
[45:13]
아니요, 실제로 고치지는 못했지만
[45:15]
정말 가야 합니다. 하지만 최소한
[45:18]
이것은 여기에 있어요.
[45:20]
아직 프로덕션에 체크인하지 않았습니다.
[45:22]
체크인하기 전에 더 많은 테스트를 하고 싶어요.
[45:27]
이제 막 참여하신 분들을 위해 간단히 요약하면,
[45:29]
이것은 Cursor 내에서 Claude Code와 함께
[45:31]
작업하는 방법에 대한 멀티 스텝 시리즈의
[45:33]
1부입니다. 그래서 우리는
[45:36]
계획 모드, 울트라 씽크 모드, 그리고
[45:38]
제가 실제 디자인 규칙을 따르도록
[45:40]
추가한 소스들을 활용할 수 있었습니다.
[45:42]
그리고 거기서 한 것은 제 코드를 살펴볼 수 있었고,
[45:44]
ChatCN이 설치되어 있다는 것을 확인했습니다.
[45:46]
이런 규칙 파일들 덕분에 Tailwind 4C가
[45:48]
설치되어 있다는 것도 확인했습니다.
[45:50]
그뿐만 아니라 제 디자인 가이드라인도
[45:52]
따라했는데, 이건 정말 대단한 일입니다.
[45:57]
모든 것을 확인하고 싶으시다면
[45:59]
블로그 포스트에 대해서는 rayfernando.ai에서
[46:02]
확인해보세요.
[46:03]
채널을 지원하기 위해 멤버가 되고 싶으시다면
[46:04]
정말 감사하겠습니다.
[46:06]
첫 100명의 멤버를 모으려고 하는데,
[46:07]
정말 대단한 일이 될 것 같습니다.
[46:09]
그러면 풀타임 에디터를 구할 수 있어서
[46:10]
이런 라이브 스트림들을 편집하기 시작할 수 있습니다.
[46:13]
멤버들의 시간을 많이 절약해드릴 수 있어요.
[46:15]
이런 짧은 라이브 스트림들은
[46:18]
멤버들에게 먼저 제공되고
[46:20]
나중에 일반 공개될 예정입니다.
[46:23]
전체 라이브 스트림을 시청하고 싶으시다면
[46:25]
그렇게 하실 수 있습니다.
[46:27]
라이브 스트림 후에 저는 C.C.를 처리하고
[46:28]
아래에 타임스탬프를 넣을 예정입니다.
[46:30]
언제든지 돌아가고 싶으시다면
[46:31]
그 타임스탬프들을 살펴보실 수 있어요.
[46:33]
필요한 것들을 안내해드릴 수 있습니다.
[46:36]
당연히 질문이 있으시면
[46:37]
궁금한 점이 있으시면 언제든지 댓글로 남겨주세요.
[46:38]
저는 여름 내내 매일 여기에 있습니다.
[46:40]
오전 9시, 10시쯤
[46:41]
태평양 일광 절약 시간 기준으로요.
[46:43]
그냥 여기에 들어오시면 됩니다.
[46:45]
기억하시면, 라이브 스트림에서 질문에 대한 답변을 먼저 받을 수 있어요.
[46:48]
라이브 스트림에서요.
[46:48]
가끔 너무 정신없어서 모든 분들의 질문을 다 다루지 못할 때가 있어서, 가능할 때 걸러서 답변드리려고 노력합니다.
[46:54]
시간이 될 때 말이죠.
[46:55]
하지만 댓글을 남기시면 나중에 읽어보거든요. 영상을 보면서 여러분의 댓글을 확인할 거예요.
[47:01]
그래서 참여해주셔서 정말 감사합니다. RayTranscribes를 확인해보고 싶으시다면 할인 코드를 드릴게요.
[47:06]
RayCooks라고 입력하시면 됩니다. R-A-Y-C-O-O-K-S, RayCooks라는 쿠폰 코드로 15달러 할인받으실 수 있어요.
[47:13]
RayTranscribes.com에 가셔서 이 코드를 입력하시면 RayTranscribes로 요리하는 비용을 조금 할인받으실 수 있습니다.
[47:20]
RayTranscribes.com에서 할인을 받으시는 거죠.
[47:23]
Ray와 함께하고 있고, 참여해주신 모든 분들께 감사드립니다.
[47:25]
여기에 가셔서 자막 작업을 시작하고 싶으시다면, 이 플랜들 중 어느 것이든 15달러 할인받으시고 적용하시면 됩니다.
[47:34]
어느 플랜이든 말이죠.
[47:36]
기본적으로 스타터 플랜으로 한 달 무료로 사용하실 수 있어요. 또는 베타 버전을 사용하고 싶으시다면
[47:39]
첫 달에 5달러만 내시면 베타에 참여할 수 있어요. 또는 총 15달러로 말이죠.
[47:41]
결제할 때 RayCooks 코드를 입력하시면 곧 여러분과 함께 요리할 수 있을 거예요.
[47:45]
안녕히 계세요, 여러분.
[47:51]
안녕히 계세요.
[47:55]
www.cdc.com.au