2P by GN⁺ 3시간전 | ★ favorite | 댓글 1개
  • 노트·문서·프로젝트·저널·습관·체크리스트·작업을 plain .md 파일로 저장하는 단순한 개인 지식 관리 앱
  • 로컬 우선으로 설치도 필요없고, 브라우저만 있으면 동작하며 오프라인 사용 가능한 PWA 구조
  • Cloud 폴더 동기화 지원: iCloud / Dropbox / Google Drive 기존 클라우드 폴더로 다기기 동기화, 서버 운영 필요없음
  • 셀프 호스트 서버도 가능: 단일 Go 바이너리로 자체 서버 운영, 완전한 제어 및 Telegram 봇 통합 가능
  • Hosted (app.files.md) 방식: 매니지드 서버 제공, 설정 없이 즉시 사용
  • 빠른 기록: 채팅창에 메시지를 던지면 모든 기기에 자동 동기화되고, 저장 위치는 즉시 선택하거나 나중에 정리 가능
    • 노트·작업·일기·체크리스트가 모두 같은 흐름으로 한 번에 처리됨. Enter만 누르면 저장 완료
  • Telegram Bot 은 이동 중 파일 접근과 저장을 위해 사용 가능, 다른 메신저 지원 예정
    • 인박스 항목은 안정적 콘텐츠 해시(fs.Hash) 로 식별되어, 다른 항목이 추가·삭제·완료되어도 버튼이 올바른 라인을 가리킴
  • 지식 관리 방식은 고급 템플릿·플러그인·AI 워크플로보다 직접 생각하기를 강조하며, 한 노트에 한 아이디어를 담고 관련 노트를 링크하고 다시 살펴보는 흐름을 권장
  • 파일 구조는 Chat.md, brain/Note.md, journal/2024.08 August.md, habits/*.md, media/*, config.json처럼 미리 정의돼 있지만 원하는 구조를 쓸 수도 있음
  • files.md/llms.txt에 구조 스키마가 제공되며, 이를 CLAUDE.mdAGENTS.md에 붙여 AI 에이전트가 파일 구조를 이해하게 할 수 있음
  • [로 파일 링크 삽입, Cmd/Ctrl+P로 파일 검색, Cmd/Ctrl+N으로 새 파일 생성 등 Markdown 파일 작업을 위한 단축키를 제공함
  • 코드베이스는 한 사람이나 LLM이 전체를 머릿속에 담을 수 있을 정도의 단순함을 목표로 하며, PR은 기능 추가보다 코드 제거와 단순화를 우선해야 함
  • 프런트엔드는 빌드 시스템 없이 /web/index.html이 오래 지나도 그대로 열리도록 하는 방향을 지향하고, 백엔드는 테스트·오류 래핑·의존성 최소화를 중시
  • 저장 형식과 이식성을 위해 모든 것은 일반 .md 파일에 저장되며, 표준 Markdown 링크를 사용해 GitHub 같은 다른 환경과의 호환성을 유지하려 함
  • MIT 라이선스

댓글과 토론

Hacker News 의견들
  • Obsidian이 오픈소스가 아니라는 사실을 새삼 깨달았지만, 이상하게도 오픈소스처럼 느껴지게 만드는 면이 있음
    찾아보면 아닌 게 분명한데도, 여전히 오픈소스여야 할 것 같은 느낌이 듦

    • 데이터는 열려 있고 Markdown 형식으로 저장되며, 플러그인은 오픈소스임
      핵심 제품은 오픈소스가 아니지만 그냥 Electron 앱이기도 해서, Obsidian은 오픈 코어 제품의 반대처럼 봐 왔음
    • 내 인상은 그렇지 않았지만, 플러그인 제작용 API는 꽤 열려 있음
      Obsidian 모델을 옹호하자면 전담 엔지니어링 팀이 있고, 도구는 무료이며, 노트는 독점 형식이 아니라 .md로 저장됨
      원하면 동기화 도구에 돈을 낼 수 있는데, 가격도 합리적이고 개발을 지원하는 좋은 방식이라고 봄
      제품도 계속 흥미로운 방향으로 개선되고 있고, 검증 정책을 갖춘 새 플러그인 마켓플레이스는 꽤 잘 만들어져서 지향점으로 삼을 만함
      어쨌든 이 프로젝트도 좋아 보이지만, 나는 Obsidian 전도사에 가깝긴 함
    • 공정하게 말하면 Obsidian은 난독화되지 않은 Electron 앱이라 코드를 가져오기가 꽤 쉬움
      앱을 못 믿겠다면 그렇게 해보라고 공식 Obsidian 팀이 지원 포럼에서 안내했던 기억도 있음
    • 몇 년 전에 이 프로젝트를 시작한 이유가 바로 그 점이었음
      AI 시대의 소프트웨어는 오픈소스로 배포되어야 한다고 봄
      투박한 플러그인 시스템을 거치는 게 아니라, 누구나 원하는 대로 고칠 수 있어야 함
    • 왜 오픈소스여야 하는지 모르겠음
      Obsidian은 사용자가 자기 데이터를 완전히 통제하게 해주고, 열린 표준으로 저장함
      개발자들이 왜 가난을 서약한 수도사처럼 행동해야 하는지 설명해줬으면 함
      개발자들이 가치 있는 것을 만들었으니 그로부터 이익을 얻어야 함
  • Qt6(QWidgets, C++)로 Obsidian의 네이티브 버전을 만들고 있음
    Markdown 편집기를 재현하는 데 시간이 꽤 걸림. 파일을 망가뜨리거나 렌더링된 Markdown 스타일을 잃는 방식이 너무 많기 때문임
    그래도 진척은 있고, 가볍게 동작해서 RAM은 약 15MB를 쓰며 GPU는 쓰지 않고, 커서나 스크롤이 움직일 때 CPU도 거의 쓰지 않음. 텍스트 편집기라면 이래야 한다고 봄
    기본적인 현대식 메모장으로 쓰려면 아직 위젯 테이블, 목록, 코드 블록 구문 강조 렌더링이 필요함
    오픈소스로 공개할지는 모르겠음. 요즘은 시간 낭비처럼 보이지만 무료로 쓸 수 있게 할 예정임
    https://i.imgur.com/ro9Zq9w.png
    https://i.imgur.com/pbJcTQF.gif

    • AI'm building이 오타가 아니라면, AI로 만들고 있다는 걸 정확히 주장하는 표현으로 꽤 마음에 듦
    • https://asnotes.io를 오픈소스로 공개했음
      Markdown 기반이고, 위키 링크, 작업 관리, 칸반 보드, 정적 사이트 출판을 지원함
      로컬에서 실행되고 Git과도 잘 맞음
      오래 버틸 가능성이 높은 형식과 기술로 뭔가를 만들려는 목적이었음
    • 정말 멋짐
      Qt를 쓰고 있다면, 내가 이해하기로는 앱을 폐쇄 소스로 배포하려 할 때 Qt 라이선스 비용을 내야 할 것임
    • 자유 소프트웨어가 될 예정인지 궁금함
      Obsidian과 완전히 호환되고 네이티브 앱인 자유 소프트웨어를 만든다면, 기꺼이 토큰으로 기여할 생각이 있음
  • 이걸 Obsidian의 대안으로 보여주지는 않을 것 같음
    Markdown 파일을 공유하고 둘 다 노트 작성용이라고는 하지만, Files.md는 사용자가 생각·노트·지식을 함께 다루는 자기만의 방식이 있어 보임
    “대안”이라고 읽었을 때는 기능 동등성과 API 호환성을 떠올렸는데, 실제로 본 것은 완전히 다르고 훨씬 더 흥미로웠음
    1년 동안 만든 작업을 한번 써보겠음

    • 좋은 관찰에 감사함
      실제로 Obsidian 대안으로 포지셔닝하지는 않고 있음. 아직 더 나은 소개 문구를 모르겠음
      나에게는 단순함, 게으르게 뭔가를 추가할 수 있는 흐름, 바로 쓸 수 있는 준비성에 가까움
      화려한 것이 아니라 실제로 작동하는 것에 집중하려는 것임
    • “완전히 소유하는 자가 호스팅 Markdown 노트”나 “개인 지식 서버” 같은 표현이 좋을 수 있음
      기능으로 Obsidian과 경쟁하기보다 소유권 측면을 강조하게 됨
    • “대안”이라는 단어를 읽자마자, 대안이 아닌 것들을 대안이라고 부르는 사람들에 대한 불평이 머릿속에서 바로 떠올랐음
  • Joplin은 오픈소스이고, 기기 간 동기화 설정은 Dropbox 로그인 한 번이면 되며 무료로 동작함
    Windows, macOS, Linux, iOS, Android용 네이티브 앱도 있고 플러그인도 꽤 있음
    동기화되는 Markdown 파일만 필요하다면 Obsidian Sync에 돈 내기보다 이걸 쓰면 됨
    Dropbox 무료 2GB 용량은 텍스트와 약간의 스크린샷에는 충분함. 물론 직접 호스팅할 수도 있음
    Git은 소스 코드에는 훌륭하지만 노트에는 번거로움

    • 다만 디스크에서 직접 편집할 수 있는 Markdown 파일이 아니라 SQLite에 저장함
    • Dropbox는 쓰지 않게 됐지만, 아직 그 정도 용량을 준다니 반가움
      나는 Git을 쓰고 있고 잘 동작하며, 노트가 사라지지 않을 거라는 안정감을 줌
      예전에는 모바일에서 더 어려워서 전용 앱을 썼지만, 이제는 Obsidian Git도 충분히 잘 동작함
      더 나아질 여지는 있지만 전반적으로 나에게는 충분함
      휴대폰의 일일 노트에 음성으로 내용을 넣고, 나중에 데스크톱에서 더 정리하는 식으로 씀
  • 일부 세컨드 브레인 버전에서는 “세컨드 브레인은 자라지만 퍼스트 브레인은 똑똑해지지 않는다”고 말하는 점이 흥미로움
    Tiago Forte가 자기식 세컨드 브레인 목표를 “아무것도 기억하지 않는 것”이라고 했던 게 기억남
    필요한 순간 세컨드 브레인이 정확한 맥락을 띄워주면 그것을 읽고 흡수하겠다는 방식인데, 그 말 때문에 그 브랜드에 흥미가 식었음
    “구글로 찾을 수 있으면 기억할 필요 없다”는 말처럼 들려서 별로임
    나는 세컨드 브레인을 이용해 퍼스트 브레인을 강화하려는 이 글쓴이의 비전이 훨씬 좋음

    • 모든 것을 기억하는 게 불가능하다는 건 알고 있음
      사람은 몇 분 전에 본 것도 정확히 떠올리는 능력이 형편없음
      그렇다고 아무것도 기억하지 않고 전부 세컨드 브레인에 버리면 지도도, 맥락도, 그 순간 필요한 것을 어떻게 찾아야 할지도 없어짐
      길거리의 아무 10대에게 전자공학 교과서를 쥐여주고 즉석에서 전원 공급 장치를 만들라고 하는 것과 비슷함
      결국 분명히 스펙트럼이 있고, 최적 지점에 대해서는 모두가 다르게 생각함. 거의 확실히 사람마다 크게 달라서 그럴 것임
      개인적으로는 처음부터 매우 상세한 노트를 쓰는 것만으로도 정보가 머릿속에 끈적하게 남고, 나중에 노트를 직접 참조할 필요 자체가 줄어들 가능성이 크게 높아졌음
      재미있는 작은 딜레마임
    • 고마움
      수년 동안 지식 베이스를 키워왔고 결과도 좋았음
      노트를 시작하는 데는 많은 것이 필요하지 않음
      기법도, 워크플로도 필요 없고 가장 단순한 설정이면 충분함
      다만 “Second Brain”은 사람들을 흥분시키는 표현임
      현실에서는 잘 작동하지 않지만, 판매에는 아주 좋음
  • 평문 파일로 된 데이터를 소유하는 것뿐 아니라, 그 파일을 여는 소프트웨어도 소유해야 한다고 봄
    그래야 파일과 도구가 세월이 지나도 완전히 내 소유 아래에서 함께 자랄 수 있음
    이 앱은 LLM으로 자기 필요에 맞게 쉽게 고칠 수 있게 되어 있고, 코드도 그에 맞춰 최적화되어 있음
    덧붙이면 Go는 이런 종류의 소프트웨어에 아주 잘 맞아 보임

  • 채팅 인터페이스라는 접근이 흥미로움
    AI 어시스턴트가 본격화된 지금은 실현 가능해 보임

  • Obsidian은 오픈소스가 아닐 수 있지만, 파일 형식은 Joplin보다 확실히 더 열려 있음
    그래서 Obsidian으로 옮겼음
    Syncthing으로 동기화하면 데스크톱과 스마트폰 모두에서 충분히 잘 동작함

  • 대부분의 Markdown 도구에서 여전히 아쉬운 것은 큰 아키텍처 문서와 Mermaid 다이어그램을 잘 렌더링하고 공유하는 기능임
    결국 직접 Markdown 파일 리더인 https://mdview.io를 만들었고, 일반적인 노트 앱보다 큰 다이어그램과 표를 훨씬 잘 처리함

    • Markdown 페이지를 HTML로 미리 보여주고 라이브 서버로 호스팅해서 동적으로 갱신하는 간단한 스크립트를 쓰고 있음
      Mermaid, 구문 강조 등을 렌더링함
      에이전트와 함께 소프트웨어를 계획할 때 매우 유용함
      작업 중 페이지가 동적으로 갱신되고 다이어그램이 보이는 것도 큰 도움이 됨
      요즘은 계획 단계나 필요한 시점에 다이어그램을 포함하도록 프롬프트를 훨씬 더 많이 넣고 있음
  • 그냥 LogSeq를 쓰면 됨: https://discuss.logseq.com/t/whats-new-with-logseq-db-may-16...

    • Markdown 미러 기능은 꽤 괜찮음
      나는 노트에 Trilium을 써왔고 앱 자체는 좋아하지만, 노트를 저장하고 보관하는 방식은 마음에 들지 않는 부분 중 하나임
      한때 모든 것을 Markdown으로 내보내 봤고 동작은 했음
      하지만 Trilium은 노트를 여러 위치에 둘 수 있게 해주는데, 백엔드에서는 본질적으로 해당 노트를 가리키는 포인터로 존재함
      그래서 내보내기가 좀 이상해졌고, 어떤 노트 인스턴스는 실제 내용이 없는 빈 껍데기만 생김
      결국 Markdown 파일이 올바른 위치에 가도록 노트를 옮겨가며 맞춰야 함
      그래도 이런 식으로 노트를 여러 위치에 둘 수 있는 점이 좋아서 결국 Trilium을 계속 쓰고 있음