셸 명령과 코드를 실행하는 마크다운 노트 앱 Ledge.sh 공개
원제 Show HN: Ledge.sh – Runnable Markdown Notes
125 포인트댓글 53

Key Point
개발자와 DevOps가 명령을 노트에 저장하고 바로 실행할 수 있어 문서와 실행이 분리되지 않으며, 원격 서버와 멀티 호스트 지원으로 프로젝트 자동화와 인시던트 대응 워크플로우를 노트 안에서 완결할 수 있다.
핵심 요약
- 마크다운 노트에서 셸 명령, Python·Node·Ruby 같은 코드, SQL, AI 프롬프트를 직접 실행할 수 있는 Ledge.sh를 오픈소스로 공개했다.
- 각 노트마다 독립적인 셸이 유지되어 cd나 환경변수, virtualenv 같은 상태가 다음 실행에 보존되며, ⌘↩로 코드 블록을 실행하면 출력이 아래에 스트리밍된다.
- frontmatter의 cwd와 env로 노트의 작업 디렉토리와 환경변수를 설정할 수 있고, norun 옵션으로 실행 버튼을 숨길 수 있다.
- SSH 연결로 원격 서버에 노트를 저장하면 파일과 셸이 서버에서 실행되고, 웹이나 데이터베이스 계정 없이 SSH 키나 패스워드로만 접근한다.
- iPhone·iPad에서도 같은 서버의 노트를 볼 수 있으며, 탭을 실행하면 서버에서 명령이 실행되고 앱을 닫아도 계속 돌아간다.
- frontmatter의 host를 지정하면 노트는 원래 위치에 있으면서 SSH를 통해 다른 머신에서 코드를 실행할 수 있고, confirm 옵션으로 실행 전 확인 대화를 표시한다.
- 프로필 기능으로 API 키와 데이터베이스 URL 같은 비밀을 ~/.config/ledge/profiles에 저장하고, 노트는 이름만 참조해 시크릿이 노트 파일에 기록되지 않는다.
- ⌘D와 ⇧⌘D로 창을 좌우 또는 상하로 나누면 각 칸이 독립적인 셸을 가져 여러 작업 환경을 동시에 관리할 수 있다.
- Claude Code를 포함한 MCP 에이전트가 Ledge의 MCP 서버를 통해 노트를 읽고 편집하고 검색할 수 있으며, 프롬프트 블록은 에이전트로 전송 가능한 실행 블록이다.
- 노트 본문을 패스프레이즈로 암호화하는 잠금 기능이 있어 에이전트와 동기화 서비스로부터 보호하면서도 제목과 frontmatter는 검색과 링크가 계속 동작한다.
- plain Markdown 파일이라 iCloud Drive, Dropbox, git, Syncthing 등 기존 도구로 동기화할 수 있고, 여러 복제본 간 변경사항은 git 충돌처럼 처리된다.
- 일일 노트, 위키링크, 백링크, 태그, 템플릿({{date}} 토큰 지원)을 지원하며, 붙여넣기로 웹페이지나 Google Docs 내용이 자동으로 마크다운으로 변환된다.
- Python, Node, Ruby, PHP, TypeScript(Bun 번들), Redis, SQL 등 다양한 언어를 지원하고 Settings에서 한 줄 추가로 새 인터프리터를 등록할 수 있다.
- macOS(Apple Silicon), Windows 11(WSL), Linux와 iPhone·iPad(베타), Android(베타)에서 사용 가능하며, Apache 2.0 라이선스 오픈소스로 계정이나 외부 데이터베이스 없이 로컬 마크다운 파일로 동작한다.