14 KiB
Denote-Org Skills for Claude
Anthropic Life Sciences 패러다임을 삶 전반으로 확장합니다
Claude AI를 위한 포괄적인 Denote PKM 시스템 지원. 3,000개 이상의 org 파일로 검증된 실제 운영 시스템입니다.
Denote 중심. Org-mode 기반. 삶의 규모로 증명됨.
🌟 비전: Life Sciences → Life Everything
Anthropic은 도메인 컨텍스트 + AI = 전문가 수준 협업을 Life Sciences(PubMed, Benchling, 10x Genomics)로 증명했습니다.
이 프로젝트는 그 패러다임을 **생명과학(Biology)**에서 **삶(Living)**으로 확장합니다:
Life Sciences (생명과학) → Life Everything (삶 전반)
Claude가 PubMed 컨텍스트로 과학자가 되듯이, Denote 컨텍스트로 당신의 개인 지식 파트너가 됩니다.
패턴 비교
| 영역 | 컨텍스트 | 결과 |
|---|---|---|
| Anthropic | PubMed (수백만 논문) + Claude | 과학 연구 AI |
| 이 프로젝트 | Denote (3,000+ org 파일) + Claude | 개인 지식 AI |
같은 방법론. 다른 도메인. 보편적 패러다임.
왜 Skills인가? 단순 프롬프트가 아닌 이유
Anthropic Skills 철학:
"Skills는 Claude를 범용 에이전트에서 절차적 지식을 갖춘 전문 에이전트로 변환시킵니다. 이는 어떤 모델도 완전히 가질 수 없는 지식입니다."
PDF/XLSX Skills와 동일한 패턴:
- PDF Skill: 복잡한 Forms 처리 (8개 Python 스크립트로 bounding box, 검증...)
- XLSX Skill: 공식 유지 (LibreOffice 연동 recalc.py)
- Denote-Org Skill: 3,000 파일 지식 그래프 (finder, graph builder, silo manager)
Skills는 프롬프트가 아닙니다. 운영 시스템입니다.
해결하는 문제
Skills 없이
❌ Claude가 Denote 파일명을 모름: 20251021T105353--제목__태그.org
❌ 3,000개 파일 검색에 매번 토큰 소모
❌ 지식 그래프 탐색이 느리고 오류 발생
❌ Literate programming (:tangle, :results)이 org 구조 깨뜨림
❌ 여러 silo (~/org/, ~/claude-memory/) 혼란
Skills 있으면
✅ Denote 도메인 지식 내장 (파일명, frontmatter, links) ✅ Python 스크립트로 효율적 연산 (finder, graph, executor) ✅ 지식 그래프 캐싱 및 재사용 ✅ 안전한 코드 실행 (org-babel 호환) ✅ Silo 관리 (여러 지식 도메인)
파일 변환기가 아닙니다. 운영 가능한 지식 시스템입니다.
🎯 Denote란?
Denote는 Emacs를 위한 단순하지만 강력한 노트 작성 시스템입니다:
- 파일명 규칙:
YYYYMMDDTHHMMSS--제목__태그1_태그2.org - 지식 그래프:
[[denote:TIMESTAMP]]링크 - Silo 개념: 다양한 지식 도메인을 위한 별도 디렉토리
- Org-mode 기반: Heading, property, timestamp, code block
제작자: Protesilaos Stavrou
📊 규모: 실제 운영으로 검증됨
이 Skill은 실제 PKM 시스템을 위해 만들어졌습니다 (장난감 예제 아님):
- ✅ 3,000개 이상 org 파일 (대규모 검증)
- ✅ 여러 silo (
~/org/,~/claude-memory/, 프로젝트docs/) - ✅ Denote 지식 그래프 (수천 개의
[[denote:ID]]링크) - ✅ 매일 사용 (Claude Code와 함께)
- ✅ 9개 레이어 "Tools for Life" 시스템의 일부
🏗️ 9개 레이어 시스템의 일부
이 Skill은 완전한 AI-인간 협업 아키텍처에서 Layer 3 (지식 이해)를 담당합니다:
Layer 7: 지식 퍼블리싱 (notes.junghanacs.com)
Layer 6: 에이전트 오케스트레이션 (meta-config)
Layer 5a: 마이그레이션 (memex-kb)
Layer 5b: 삶의 타임라인 (memacs-config)
Layer 4: AI 메모리 (claude-config)
Layer 3.5: RAG/Vector DB (embedding-config)
Layer 3: 지식 관리 (Zotero, denote-org 🆕)
Layer 2: 개발 환경 (Doom Emacs)
Layer 1: 인프라 (NixOS)
연관 프로젝트:
- claude-config - PARA 방법론 AI 메모리 시스템
- memex-kb - 범용 KB 마이그레이션 (Google Docs, Dooray...)
- embedding-config - Vector RAG (9,477 블록, 85% 해결률)
철학: Anthropic Life Sciences와 동일 - AI는 파트너, 도구가 아님
🚀 실제 사용 사례
사례 1: 지식 그래프 탐색
사용자: "20251021T105353와 연결된 모든 파일 찾아줘"
Claude: denote_graph.py 사용
결과: 1초 이내 연결 파일 반환 (반복 토큰 검색 아님)
사례 2: 3,000 파일 중 태그 검색
사용자: "2025년 10월 llmlog 파일 전부"
Claude: denote_finder.py --tags llmlog --date 202510* 사용
결과: 메타데이터와 함께 즉시 반환
사례 3: Silo 관리
사용자: "이게 ~/org/에 있나 ~/claude-memory/에 있나?"
Claude: denote_silo.py find_in_silos() 사용
결과: 자동으로 모호함 해결
사례 4: Literate Programming
사용자: "org 파일 코드 블록 실행해줘"
Claude: org_execute.py 사용 (org-babel 호환)
결과: 안전한 실행, 구조 보존, :results 업데이트
사례 5: Denote 링크 해결
파일 내용: [[denote:20251021T105353]]
Claude: denote_links.py resolve_link() 사용
결과: ~/org/llmlog/20251021T105353--전체-파일명.org
💡 기능
Denote 핵심
- ✅ 파일명:
20251021T105353--제목__태그1_태그2.org - ✅ Frontmatter 파싱 (title, date, filetags, identifier)
- ✅ 링크 해결 (
[[denote:ID]]) - ✅ 태그 기반 검색
- ✅ Silo 관리 (여러 지식 도메인)
- ✅ 지식 그래프 (3,000+ 파일 검증)
Org-mode 기반
- ✅ Heading/property 파싱
- ✅ 코드 블록 실행 (literate programming)
- ✅ Timestamp 처리
- ✅ Export (markdown, PDF, HTML)
- ✅ Table 연산
성능
- ✅ Python 스크립트 (토큰 생성 아님)
- ✅ 반복 연산 캐싱
- ✅ 효율적인 그래프 탐색
- ✅ 배치 처리 지원
📦 설치
사전 요구사항
# Python 3.8+
pip install orgparse pypandoc pyyaml
# Pandoc (export용)
# 패키지 매니저로 설치
Claude Code
git clone https://github.com/junghan0611/orgmode-skills.git
cd orgmode-skills
/plugin add .
Claude API
# Skills API 통합 문서 참조
import anthropic
client = anthropic.Client(api_key="your-api-key")
# Skills API 사용법
🔧 빠른 시작
예제 1: Denote 파일 찾기
from scripts.denote_finder import find_denote_file
# ID로 찾기
filepath = find_denote_file("20251021T105353", silos=["~/org/"])
# 반환: ~/org/llmlog/20251021T105353--전체-파일명.org
# 태그로 찾기
files = find_by_tags(["llmlog", "denote"], silo="~/org/")
예제 2: 지식 그래프 추출
from scripts.denote_graph import build_knowledge_graph, get_connected_nodes
# 그래프 구축 (캐싱됨)
graph = build_knowledge_graph("~/org/")
# 연결된 파일 가져오기
connected = get_connected_nodes("20251021T105353", hops=2)
예제 3: Org 코드 블록 실행
from scripts.org_execute import execute_org_blocks
# 모든 코드 블록 실행 (:tangle, :results 준수)
results = execute_org_blocks("file.org")
📂 프로젝트 구조
orgmode-skills/
├── README.md # 영어 버전
├── README-KO.md # 한글 버전 (이 파일)
├── LICENSE # Apache 2.0
├── SKILL.md # Claude용 메인 가이드
├── docs/ # 개발 로그 (Denote 형식)
│ └── 20251021T113500--*.org
├── denote-core.md # Denote 명세
├── denote-silo.md # Silo 관리
├── denote-knowledge-graph.md # 그래프 연산
├── orgmode-base.md # Org-mode 기능
├── literate.md # Literate programming
├── export.md # Export 기능
└── scripts/
├── denote_finder.py # 파일 검색
├── denote_links.py # 링크 해결
├── denote_silo.py # Silo 관리
├── denote_graph.py # 지식 그래프
├── org_parser.py # Org 파싱
├── org_execute.py # 코드 실행
├── org_export.py # Export
└── requirements.txt
🗺️ 0.1 버전 로드맵
Phase 1: 핵심 (현재)
- 프로젝트 설정
- README.md, README-KO.md
- 개발 로그 (docs/)
- SKILL.md (Denote 중심)
Phase 2: Denote 핵심
- denote_finder.py (파일 검색)
- denote_links.py (링크 해결)
- denote_silo.py (silo 관리)
- denote-core.md 문서화
Phase 3: Org-mode 기반
- org_parser.py (orgparse)
- org_execute.py (코드 블록)
- orgmode-base.md 문서화
Phase 4: 0.1 릴리즈
- 3,000+ 파일 테스트
- 예제 추가
- Public 공개
🤝 기여
이 프로젝트는 실제 3,000개 이상 파일을 운영하는 Denote PKM 시스템으로 검증되었습니다. Denote 사용자 환영합니다!
📖 철학: Tools for Life (인생 도구)
제작자의 말:
"저에게 필요한 것은 경쟁력 있는 지식 노동자로 살 수 있는 방법이었습니다."
"도구는 존재에 녹아든다"
"삶이 나에게 질문하고 있었다"
이 Skill은 "Tools for Life" 철학을 구현합니다 - Anthropic의 Life Sciences 접근을 생명과학 연구에서 개인 지식 작업으로 확장합니다.
Life Sciences (생명과학) → Life Everything (삶 전반)
🧠 Skills의 본질 이해
Anthropic이 밝힌 Skills의 4가지 목적
- 컨텍스트 관리 - 번들 파일을 통해 "사실상 무제한" 컨텍스트
- 재사용성 - "조합 가능한 리소스"로 팀 간 공유
- 코드 실행 효율 - 토큰 생성 대신 스크립트 실행
- 조직 지식 캡처 - "신입 사원을 위한 온보딩 가이드"
Denote-Org Skills가 필요한 구체적 이유
문제 1: Denote 파일명 = 특수 도메인 지식
20251021T105353--프로젝트-제목__llmlog_denote_orgmode.org
│ │ │
│ │ └─ 태그 (underscore)
│ └─ 한글 제목 (hyphen)
└─ Timestamp (Denote ID)
Skills 없이: Claude가 매번 파일명 파싱 로직 생성 → 토큰 낭비
Skills 있으면: denote_parser.py 한 번 작성, 재사용
문제 2: 3,000 파일 검색 = 복잡한 절차
Skills 없이: 매번 find ~/org -name "*ID*" 실행 → 느림
Skills 있으면: denote_finder.py 캐싱 → 즉시 반환
문제 3: 지식 그래프 = 복잡도 폭발
Skills 없이: 각 링크마다 파일 찾기, 2-hop 연결? → 토큰 폭발
Skills 있으면: denote_graph.py 한 번 구축, 캐싱 → 즉시 반환
문제 4: Literate Programming = Emacs 동작 재현
Skills 없이: Claude가 :tangle 옵션 수동 파싱 → 구조 깨질 위험
Skills 있으면: org_execute.py Emacs org-babel 재현 → 안전
🏗️ 9개 레이어 "시간과정신의방" 생태계
이 프로젝트는 완전한 인간-AI 협업 시스템의 일부입니다:
Layer 7: 지식 퍼블리싱
- notes.junghanacs.com (Quartz)
- 1,400+ org → markdown
- Public Digital Garden
Layer 6: 에이전트 오케스트레이션
- meta-config
- 계층적 에이전트 (Meta ↔ Domain Agents)
- ACP + A2A + MCP (JSON-RPC 2.0)
Layer 5a: 마이그레이션
- memex-kb
- Backend 중립 (Google Docs, Dooray, Confluence...)
- Denote 형식으로 통합
Layer 5b: 삶의 타임라인
- memacs-config
- 시간 기반 통합 (수면, 작업, Git...)
- Memex 실현
Layer 4: AI 메모리
- claude-config
- PARA 방법론
- Git 버전 관리
Layer 3.5: RAG/Vector DB
- embedding-config
- Notion CS 9,477 블록
- 홈카메라 85% 해결률
Layer 3: 지식 관리 (이 프로젝트!)
- Zotero (156k+ lines 서지)
- denote-org Skills (3,000+ 파일) 🆕
Layer 2: 개발 환경
- dotdoom-starter
- 터미널 최적화
- 크로스 플랫폼 (Ubuntu/NixOS/Termux)
Layer 1: 인프라
- nixos-config
- 선언적 환경
- 재현성 100%
🎓 연관 프로젝트
시간과정신의방 (Hyperbolic Time Chamber) 생태계:
- nixos-config - 선언적 인프라
- doomemacs-config - 터미널 최적화 Emacs
- zotero-config - AI 쿼리 가능한 서지 (156k+ lines)
디지털 가든: notes.junghanacs.com
📚 리소스
- Denote 패키지 by Protesilaos Stavrou
- Anthropic Skills 문서
- Agent Skills 엔지니어링 블로그
- Org-mode
📄 라이선스
Apache 2.0 (Anthropic Skills 생태계와 호환)
🙏 감사
- Anthropic - Agent Skills 패러다임과 Life Sciences 청사진
- Protesilaos Stavrou - Denote 제작
- Org-mode 커뮤니티 - 기반 기술
- AIONS 클럽 인터내셔널 - 집단지성 비전
상태: 🟡 개발 중 (0.1 public 릴리즈 목표) 관리자: @junghan0611 생성일: 2025-10-21