AInote

AInote AI 기반 크로스 플랫폼 스마트 노트 서비스입니다. 맥, 웹, 모바일, 텔레그램까지 어디서든 메모를 작성하고 AI의 도움을 받을 수 있습니다. Mac App macOS 네이티브 앱으로, 데스크톱 환경에 최적화된 경험을 제공합니다. 주요 기능 메뉴바 퀵 노트: 메뉴바에서 빠르게 메모 작성 글로벌 단축키: 어떤 앱에서든 단축키로 즉시 메모 Spotlight 통합: Spotlight에서 바로 노트 검색 iCloud 동기화: Apple 기기 간 자동 동기화 AI 어시스턴트: 텍스트 요약, 번역, 문법 교정 기술 스택 Swift / SwiftUI Core Data CloudKit Web App 브라우저에서 접근 가능한 웹 애플리케이션입니다. ...

2025-06-20 · 2분 소요 · Seunghan

Claude Code Channels 완전 가이드 — Telegram으로 로컬 AI 세션 원격 조종하기

2026년 3월 20일, Anthropic이 Claude Code Channels 리서치 프리뷰를 공개했다. 한마디로 요약하면, Telegram이나 Discord에서 메시지를 보내면 집에 있는 내 Mac의 Claude Code가 코드를 짜고 파일을 수정한 뒤 결과를 답장으로 보내주는 기능이다. 폰에서 “auth.py 버그 고쳐줘” 보내면 → 맥미니 Claude가 코드 파일 열고 수정하고 → “완료했습니다, 커밋했어요” 답장이 오는 식이다. 설정하면서 꽤 삽질을 했다. 이 글은 그 과정을 그대로 기록한 문서다. Claude Code Channels가 뭔가 기본 아키텍처 Claude Code Channels는 MCP(Model Context Protocol) 기반 플러그인이다. Claude Code 세션 안에 Telegram 또는 Discord와 연결된 MCP 서버를 서브프로세스로 띄우고, 외부 메시지를 세션 안으로 밀어넣는(push) 구조다. ...

2026-03-22 · 9분 소요 · Seunghan

CanonCode + LLM — 명세를 주면 코드가 정확해진다는 실험 결과

LLM에게 “에스크로 결제 구현해줘"라고 하면 무슨 일이 일어나는가? 일단 뭔가 만들어 준다. 트랜잭션도 넣고, 잔액 체크도 하고, 에러 핸들링도 한다. 그런데 “우리 프로젝트에서 에스크로가 정확히 어떤 규칙으로 동작하는지"는 모른다. 추측이 섞인다. 내 프로젝트의 에스크로는 포인트 기반인데, 카드 결제를 가정한 코드가 나온다든가. CanonCode를 만들면서 예상치 못한 이점을 발견했다. .lex 명세를 LLM의 컨텍스트로 제공하면, 추측이 사라진다. 이 글에서는 3가지 케이스에서 “명세 없이” vs “명세 있이” 코드 생성 결과를 비교한다. 실험 설계 조건 모델: Claude (Sonnet) 프로젝트: LaunchCrew (Rails 8 + Inertia.js + Svelte 5) 비교 A: 자연어 프롬프트만 제공 비교 B: .lex 명세 + 자연어 프롬프트 제공 평가: 생성된 코드가 실제 프로젝트 요구사항과 얼마나 일치하는지 3가지 케이스: ...

2026-03-20 · 6분 소요 · Seunghan
AI 에이전트 개발 과정

[개발일기] Rails 8로 AI 에이전트 리뷰 시스템 만들면서 삽질한 이야기

AI가 글을 검수해주는 시스템을 Rails 8로 만들고 있다. 4개의 AI 에이전트가 각자 관점에서 원고를 분석하고, 스토리 데이터베이스와 연동해서 일관성까지 체크하는 구조. 만들면서 꽤 많이 삽질했는데, 기록 안 해두면 까먹을 것 같아서 정리해본다. 1. AI 에이전트의 “톤"이 이렇게 중요할 줄이야 처음엔 에이전트 프롬프트를 이렇게 썼다: 당신은 편집 보조자입니다. 원고를 분석하고 문제점을 지적하세요. 테스트 유저한테 피드백을 받았는데, **“이건 도움이 아니라 채점이다”**라는 반응이 돌아왔다. 창작하는 사람 입장에서 “지적” 톤은 부담스럽다는 거였다. 업계 리서치를 해보니까 Sudowrite, NovelAI 같은 도구들도 “동료” 톤이 압도적으로 선호된다고 한다. ...

2026-03-12 · 7분 소요 · Seunghan

iOS 앱 배포 막히는 순간들 — Bundle ID 이전 불가·ITMS-90683·AI 아이콘 생성까지

Flutter 앱을 TestFlight에 올리는 과정에서 겪은 삽질들을 기록한다. Apple Developer 계정 전환, Bundle ID 등록, 권한 누락 에러, 그리고 AI로 아이콘과 스크린샷을 자동 생성하는 방법까지. 1. Apple Developer 계정이 다를 때 — Bundle ID 이전은 불가 앱을 A 계정(Team A)에서 개발하다가 B 계정(Team B)으로 배포하려고 했다. 기존 Bundle ID가 A 계정에 이미 등록되어 있어서 B 계정으로 등록하려 하면 409 Conflict 에러가 난다. { "errors": [{ "status": "409", "code": "ENTITY_ERROR.ATTRIBUTE.INVALID", "detail": "An App ID with Identifier 'com.xxx.yyy' is not available." }] } Bundle ID는 계정 간 이전이 불가능하다. 해결책은 두 가지다: ...

2026-03-08 · 4분 소요 · Seunghan
Telegram Bot Intent Classification Bugs

Telegram 봇 의도 분류 버그 3가지와 Inline Keyboard 확인 플로우 구현

Telegram 봇에 자연어로 할 일을 추가하는 기능을 운영하던 중 발생한 버그 3가지와, 사용자 경험 개선을 위한 inline keyboard 확인 플로우 구현 내용을 정리한다. 이 봇의 기본 동작 방식은 다음과 같다. 사용자가 자유 형식 문자열을 입력하면, Rails 백엔드가 먼저 정규식 기반 사전 필터를 거쳐 의도를 추측하고, 이후 Gemini AI를 호출해 최종 intent와 파라미터(날짜, 시간, 내용 등)를 추출한다. 이 2단계 구조에서 각 단계에 버그가 하나씩 숨어 있었고, 그 결과가 예상치 못한 방식으로 결합되어 사용자가 의도하지 않은 동작을 일으켰다. ...

2025-06-25 · 9분 소요 · Seunghan
개인정보처리방침 이용약관 면책조항 문의