[단테랩스] Hermes × Codex 로 세우는 나만의 AI 가상 오피스 (8주 마스터 과정)
4분까지 앞에과정 잘 따라왔고, MacBookPro ~ % curl http://localhost:8644/health 명령어를 입력했을시에 curl: (7) Failed to connect to localhost port 8644 after 1 ms: Couldn't connect to server 이렇게 오류가 뜹니다. 재시작해도 그대로네요, 해결방법이 있을까요?
안녕하세요. 레브님이 이전에 올리신 [서비스기획 & 프로덕트 매니저(PM)의 첫걸음] 강의를 수강하고 이어서 이번 강의도 수강하고 있습니다. 레브님 강의를 통해 어떤 식으로 업무를 진행하는지 알게 되어 이번 강의도 수강하게 되었는데요, 레브님꼐서 설정하신 에이전트들과 만드신 스킬에 대해 공유 요청 드립니다. 클로드코드를 이용해서 기획 업무를 할 때 어떻게 하면 좋을지, 다른 직무 동료들과 어떻게 커뮤니케이션을 하면 좋을지에 대해 감이 잘 잡히지 않아서 레브님 자료를 보며 커스텀하려 합니다! 특히 직접 만드신 /screen-definition 스킬에 대해서도 흥미가 있어서 에이전트 자료와 함께 공유 부탁드립니다. halam.lee.lami@gmail.com 감사합니다!
강의 2강에 대한 노트에 대한 질문입니다. 💡 [CS 및 실무 적용 Point: MSA와 BFF 아키텍처] 현대의 마이크로서비스 아키텍처(MSA)에서 Node.js는 특히 BFF(Backend For Frontend) 패턴의 핵심 기술로 사용됩니다. 브라우저의 DOM을 다루던 언어적 특성을 살려 클라이언트(React, Vue 등)의 요청을 쉽게 파싱하고, 이식된 운영체제 제어 능력(http, fs)을 통해 백엔드의 여러 마이크로서비스(Java, Python 등)로 비동기 네트워크 요청을 뿌린 뒤, 그 결과를 모아 빠르게 클라이언트에게 반환하는 완벽한 미들웨어 역할을 수행합니다. 해당 설명에서 BFF로 NodeJs를 유용한 이유는 I/O 입출력 특출나기 때문에, BFF로 사용하면, API 요청을 받아서 마이크로 서비스에 통신 요청을 보내는 용도로 사용한다는 건가요? 한번 더 거쳐가면 더 성능이 안 좋은 거 아닌가요? 아니면 원래 SpringBoot로 개발되었던 웹 사이트를 NodeJs로 구현한다면 더 좋다는 의미일까요?
[단테랩스] Hermes × Codex 로 세우는 나만의 AI 가상 오피스 (8주 마스터 과정)
안녕하세요. 좋은 강의를 위해 노력해 주셔서 감사합니다. 이번 강의에서 OMW를 듣고 있는데, 저는 로컬 PC가 아니라 Hostinger VPS에 Hermes를 설치해서 사용하고 있습니다. OMW도 VPS의 Hermes 환경 안에서 사용 중입니다. 궁금한 점은, Obsidian으로 wiki를 관리하려면 Obsidian은 제 Windows PC에서 실행되고, OMW/Hermes는 VPS에서 실행되는 구조가 됩니다. 이 경우 선생님처럼 Obsidian에서 바로 OMW wiki 폴더를 열어서 사용할 수 있나요? 아니면 VPS의 OMW vault를 제 PC로 동기화하거나, Git/SSHFS 같은 방식으로 연결해야 하나요? Windows PC + VPS Hermes 환경에서 Obsidian과 OMW를 연결하는 권장 방식이 궁금합니다.
우선 이전 질문/답변을 통해서 eslint 설정 파일명이 바뀐것을 알게되었습니다. 문제는 강의의 코드와 저의 코드가 다르다는 점인데, 이정환 강사님께서 설정하신 그대로 따라간다면 rules: { "no-unused-vars": "off", "react-prop-types": "off", }, 이 코드만 추가하면되는걸까요? 강의에서는 rules 프로퍼티가 이미 있고 해당 객체 내부에 react-refresh/only-export-components ~가 있는데 제 코드에는 rules 자체가 없습니다. 26-07-01 기준 현재 vite 프로젝트의 eslint.config.js 파일 코드 export default defineConfig([ globalIgnores(["dist"]), { files: ["**/*.{js,jsx}"], extends: [ js.configs.recommended, reactHooks.configs.flat.recommended, reactRefresh.configs.vite, ], languageOptions: { globals: globals.browser, parserOptions: { ecmaFeatures: { jsx: true } }, }, }, ]);
"AI 딸깍의 시대" 원리로 돌파하는 Node.js와 CS Part 2 - 스트림 아키텍처와 하드웨어 통제기
// 3. 작업 종료 알림: end 이벤트를 통해 댐 바닥 확인 streamRead.on("end", async () => { console.log("\\n✅ [종료] 댐 바닥 도착. 모든 데이터 복사 완료!"); // 메서드: 더 보낼 물이 없다고 선언하고 파이프 닫기 절차 진입 // finish 이벤트: 쓰기 파이프가 논리적으로 완벽히 닫혔음을 보장 streamWrite.on("finish", async () => { // 쓰기 파일 디스크립터(번호표) 운영체제에 반환 (메모리 누수 방지) await fileHandleWrite.close(); console.timeEnd("복사_소요_시간"); console.log( `📊 요약: 총 ${chunkCount}회 펌프질, ${pauseCount}회 비상 정지(메모리 방어 성공)`, ); // 메서드: 실험용 임시 파일 삭제 클린업 (unlink) await fs.unlink(SOURCE_FILE); await fs.unlink(DEST_FILE); }); streamWrite.end(); // 메서드: 사용이 끝난 읽기 파일 디스크립터(번호표) 운영체제에 반환 await fileHandleRead.close(); 읽기 스트림과 쓰기 스트림을 종료하는 3번 단계에서 쓰기 스트림을 end 하기 전에 .on finish를 등록을 해야 콘솔에서 요약을 볼 수 있었습니다. 클로드는 레이스 컨디션이 발생해서 그렇다고 하는데 어떤 부분에서 경합이 일어났는지 잘 모르겠습니다.