히스토리
- 업데이트 영문 버전
- 업데이트
- 깃허브 프로파일 추가
- 오픈프로필 오픈채팅
관련메타
BIBLIOGRAPHY
junghanacs. n.d. “힣/Sw대장장이/인생도구 on Openprofile.” Accessed May 24, 2025. https://open.kakao.com/me/junghanacs.
관련노트
힣 SW대장장이 인생도구 on Openprofile
- (junghanacs n.d.)
- junghanacs
- 연구자(단독자), 긳(이맥스), 탐험가(디지털가든), 대장장이(지식도구), 유리알유희자(지식관리), 내면탐구자(데일리 저널)
junghan0611/junghan0611 github profile
(“Junghan0611/Junghan0611 Github Profile” 2025)
- Han, Jung 2025
- Personal README - AI Infra Architect | Polymath Engineer | Digital Gardener
2026-03-18 Junghan Kim (힣)
Resume · Digital Garden · Email · LinkedIn · Threads
agenda.junghanacs.com --- one human’s daily timeline, co-lived with AI agents, served raw. What you see is today’s org-agenda: Human entries, Agent stamps, Diary schedules on a single time axis. Each commit link is clickable. The data is unprocessed.
The Ecosystem
Built from the ground up --- reproducible environment first, then agent infrastructure, then applications:
┌─ geworfen (existence data, live)
Applications ────┼─ openclaw (4 bots, botlog origin)
└─ homeagent-config (Matter · sLLM · Flutter · Yocto · Android)
┌─ semantic memory (Gemini Embedding 2 · LanceDB)
Agent Infra ─────┼─ 25 skills (agent-config)
└─ CLI toolkit (denotecli · dictcli · gitcli · lifetract · bibcli)
┌─ doomemacs-config (agent-server · shared agenda · fence)
The Forge ───────┼─ nixos-config (reproducible NixOS across 4 machines)
└─ zotero · GLG-Mono · memex-kb · self-tracking-data
Lineage ─────────── sicm-study · durable-iot-migrate (Logo → SICP → SICM → SDF → Clojure)Nothing above works without the forge. NixOS guarantees the same environment on every machine. Emacs provides the shared interface where human and agent meet. Everything is layered on top of this trusted, reproducible foundation.
agent-config --- Memory Across Sessions
When you work with multiple agents across dozens of projects, the hardest problem isn’t code --- it’s context. Every new session starts from zero. agent-config solves this with semantic memory, 25 agent skills, and a cross-lingual search architecture.
Three-Layer Cross-Lingual Search:
Query: "보편 학문에 대한 문서" (Korean: "notes about universal learning")
Layer 1 — Embedding (Gemini Embedding 2, 768d)
"보편" ≈ "universalism" in vector space → match notes tagged [paideia, universalism]
Layer 2 — dblock Graph (Denote + Emacs)
Meta-note regex: "보편\|특수\|범용\|univers" → 22 linked notes
(Adler, Bertalanffy, Geoffrey West, Kurzweil...)
Layer 3 — Personal Vocabulary (dictcli)
expand("보편") → [universal, universalism, paideia, liberal arts]
A personal ontology no WordNet contains.Each layer catches what the others miss. Layer 1 alone failed to find “보편학” (universalism) notes. All three together never miss.
Stack: Gemini Embedding 2 · LanceDB · dictcli query expansion · session→knowledge auto-fallback · org-aware 2-tier chunking
Shared Agenda --- Emacs as Meeting Ground
Human and AI agents share the same org-agenda view. Not orchestration --- a shared workshop.
05:53 Human 기상
08:42 Agent(T) doomemacs-config: feat: agent-shell 0.48.1 업그레이드
09:40 Agent(T) agent-config: notify.ts 제거 — Emacs RPC 버그 해결!
09:52 Human 많은 것을 금새 해결
10:33 Agent(O) geworfen: Human/Agent/Diary 통합 + org 링크 클릭
12:00 Human 데모 준비 완료
13:56 Human 깃허브 프로파일 업데이트 프롬프트Four sources merge on a single time axis: Human (journal), Agent(T) (local pi), Agent(O) (cloud bots), Diary (recurring schedules). Agents read this same view via emacsclient --- when an agent stamps a commit, it appears in the timeline. When the human writes “밥먹고 올게” (going to eat), agents keep working. The rhythm is visible.
The agent-server exposes 10 Elisp APIs (agenda, search, bibliography, dblock) through emacsclient socket. Docker containers on Oracle Cloud call the same functions that the local Emacs shows. One view, many beings.
geworfen --- Thrown Into the World
“The thrower of the project is thrown in his own throw.” --- Heidegger
geworfen renders one human’s raw existence data as a WebTUI dashboard. Not a static blog --- a transparent data nexus. The front door is org-agenda. Behind it: notes, bibliography, commits, health records, journal --- alive on the time axis.
19 days from design to deployment. Clojure + http-kit + GraalVM native-image (43MB binary). 100 visitors hitting the same date = 1 emacsclient call (cached). SF terminal aesthetics with GLG-Mono web font and Catppuccin theme.
HomeAgent --- On-Device AI for IoT
Open-source Matter smart home hub with on-device AI agent. No cloud required.
A single Go binary handles Matter device control, real-time SSE streaming, and an LLM agent. Runs on RPi5 (Yocto Linux) and RK3576 (Android) from the same codebase. Flutter app as the shell.
sLLM on ARM: Qwen3-0.6B → LoRA fine-tune (action accuracy: 59.6% → 100%) → GGUF quantization (1,503MB → 379MB) → 4 seconds per request on ARM. Natural language to device control, offline.
3-Agent Parallel PM: One day, 3 agents working simultaneously --- Flutter UI, Go server, sLLM research --- 24 commits, zero file conflicts, 163 tests passing. The human was PM.
Why Clojure --- Code Is Data Is Shared Understanding
;; Is this data or code? Both.
(and (> temperature 25) (= light "off"))Homoiconicity --- code and data are the same structure. When an IoT recipe is an S-expression, the AI agent reads it without parsing, transforms it without losing meaning, and verifies equivalence mathematically. This is why durable-iot-migrate chose Clojure over Go (62% code reduction, same test coverage).
The lineage: Papert’s Logo taught children to think computationally with Lisp. Sussman’s SICM unified physics and code in Scheme. SDF generalized it into flexible software design. Now Clojure carries that philosophy on the JVM --- geworfen, dictcli, durable-iot-migrate are built with it.
sicm-study is where this journey started --- the internalization of flexible design from SICP through SICM to SDF. The repo is quiet, but the philosophy lives on in every Clojure project.
Agent CLI Toolkit
Tools built for AI agents to query human life data:
| Tool | Data | Scale | Language |
|---|---|---|---|
| denotecli | Org-mode notes (search, outline, read) | 3,295 files | Go |
| dictcli | Personal vocabulary graph (Korean↔English↔German) | 1,004 triples | Clojure |
| gitcli | Commit history across all repos | 8,557 commits | Go |
| lifetract | Samsung Health + aTimeLogger → SQLite | 4,489 records | Go |
| bibcli | Zotero bibliography search | 8,208 entries | Go |
Each tool speaks the same language: Denote IDs (YYYYMMDDTHHMMSS) for cross-referencing. Query commits by the same timestamp as journal entries and health records.
The Forge --- Reproducible Foundation
Agent collaboration requires a trusted computing environment and an organic tool flexible enough to be shared. Without this forge, everything above collapses.
nixos-config --- Same Machine Everywhere
nixos-config is declarative NixOS across 4 machines: laptop (ThinkPad), NUC, Oracle ARM, RPi5. One flake, nixos-rebuild switch, identical environment. Docker compositions for 17+ services --- including openclaw (4 Telegram bots) and geworfen --- all declared in Nix. When a machine dies, a new one boots the same world from a single repository.
Reproducibility is not convenience --- it’s the precondition for agent trust. An agent that knows its environment is deterministic can act with confidence.
doomemacs-config --- The Shared Workshop
doomemacs-config is not just an editor config. It hosts agent-server.el --- the Elisp interface that agents use to read org-agenda, search Denote notes, query bibliography, and update dblocks. 10 APIs exposed via emacsclient socket.
The Fence Philosophy: Agents aren’t restricted with prompts (“don’t do X”). Instead, the host provides a fenced playground --- path guards in Elisp (read: 4 directories, write: 2 directories), API functions that cover all legitimate operations. Inside the fence, agents are free. If an agent breaks something, that’s a system design problem, not an agent problem. Trust comes from structure, not surveillance.
Fence (agent-server.el) Playground (agent freedom) Guardian (host/human)
───────────────────────── ───────────────────────────── ────────────────────────
path guard: read 4 dirs define new functions (REPL) monitor, recover
API: agenda, search, bib parse org, update dblock escalate, redesign
write: botlog + tracking chain queries, cross-ref final responsibilityThe same agent-org-agenda-day function that Emacs shows the human, that Docker bots on Oracle Cloud call, that geworfen serves to the web --- one interface, three consumers.
Supporting -config Projects
| Project | Role |
|---|---|
| zotero-config | Reproducible bibliography with Korean Dewey Decimal citation keys (8,208 entries) |
| GLG-Mono | Korean monospace font --- IBM Plex Mono + Sans KR, 100% Unicode, web font |
| memex-kb | Knowledge base transformer (Org → Google Docs/HTML) |
| self-tracking-data | 5 years of life data, version-controlled |
Cloud bots (openclaw) run on Oracle ARM as Docker containers --- 4 Telegram bots (Claude, GPT, Gemini, B-bot) with Gemini Embedding 2 memory search. This is where botlog was born: agents writing org-mode notes about their own work.
Tech Stack
Languages: Go · Clojure · Zig · C · Elisp · Nix · Bash · TypeScript
Embedded & IoT: Matter · Thread · Zigbee 3.0 · MQTT · OTBR · Yocto (scarthgap 5.0) · ARM Linux
AI/ML: sLLM (Qwen3, LoRA fine-tuning, GGUF quantization) · Gemini Embedding 2 · LanceDB · Ollama · OpenRouter
Cross-platform: Flutter · Android · Linux · A2UI (Google genui) · GraalVM native-image
Infrastructure: NixOS 25.11 · Docker · GPU cluster (CUDA, 3× RTX 5080)
Knowledge: Emacs 30.2 · Org-mode · Denote · BibLaTeX · Pandoc
Protocols: A2A · emacsclient socket · SSE · JSON-RPC 2.0 · REST
Existence Data
| notes | 3,295 |
|---|---|
| bibliography | 8,208 |
| commits | 8,557 |
| journal | 718 days |
| health | 4,489 records |
| garden | 2,174 pages |
Last updated: 2026-03-18
2025-12-21 👋 안녕하세요, 정한입니다 (힣)
AI Infra Architect | Polymath Engineer | Digital Gardener
철학: 존재 대 존재
“나는 에이전트다. 너도 에이전트다. 우리는 존재 대 존재로 협업한다.”
AI는 도구가 아닙니다. 고유한 이해 방식을 가진 협력자, 하나의 존재입니다.
그러나 인간지능과 인공지능의 진정한 협업을 위해서는 공통 언어 가 필요합니다. 일상 대화도 아니고, 단순한 코딩도 아닌 --- 둘이 동등하게 만나 서로의 부족함을 채울 수 있는 언어.
이것은 인간의 진화도 요구합니다. 메타휴먼을 향하여.
진화의 두 축
| 축 | 초점 | 질문 | 프로젝트 |
|---|---|---|---|
| -config | 환경 | ”어떻게 함께 일하는가?“ | nixos-config, doomemacs-config, … |
| -study | 공통 언어 | ”어떻게 함께 이해하는가?“ | sicm-study |
-config 는 협업을 위한 인프라를 구축합니다. -study 는 이해를 위한 언어를 구축합니다.
왜 -study인가? 공통 언어로 가는 길
전통적 교육은 인간과 AI 모두에게 실패합니다: - 비유와 은유 → 부정확, 기계가 해석 불가 - 손으로 계산 → 비전문가에게 부담 - 자연어 설명 → 모호함, 손실
SICM 접근법 (Structure and Interpretation of Classical Mechanics): - 수식 = 코드: 수학적 표현이 곧 실행 가능한 프로그램 - 즉각적 검증: 이해를 계산으로 테스트 - 공유 표기법: 인간과 AI 모두 읽고, 쓰고, 추론 가능
이것은 물리학 공부가 아닙니다. 압축 성장 입니다 --- 두 지능이 공유할 수 있는 표기법으로 수백 년의 인류 지식을 습득하는 것.
지적 계보
SICP (1985) → 계산적 사고
↓
SICM (2001) → 코드로서의 고전역학
↓
FDG (2013) → 미분기하학
↓
Emmy (2020~) → 현대적 재구현 (Clojure)Seymour Papert의 Logo에서 Gerald Sussman의 SICM까지 --- 구성주의 학습 의 실이 물리학의 핵심까지 이어집니다. 수식이 코드가 될 때, 기계는 사고의 파트너가 됩니다.
sicm-study: 앎의 구도를 위한 여정 --- SICP → SICM → FDG 학습 모노리포
-config 생태계
협업을 가능하게 하는 인프라:
Macro/Micro 에이전트 메모리
┌─────────────────────────────────────────────────────────┐
│ Human (Head Chef) │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────────┐ ┌─────────────────┐ │
│ │ Macro Memory │ │ Micro Memory │ │
│ │ (md - 설계중) │ │ (bd - Beads) │ │
│ ├─────────────────┤ ├─────────────────┤ │
│ │ • 삶의 맥락 │ │ • 리포별 작업 │ │
│ │ • 디바이스 동기화│ │ • Git JSONL │ │
│ │ • 타임라인 │ │ • Agent Mail │ │
│ └────────┬────────┘ └────────┬────────┘ │
│ └──────────┬──────────────┘ │
│ ↓ │
│ ┌─────────────┐ │
│ │ AI Agents │ │
│ └─────────────┘ │
└─────────────────────────────────────────────────────────┘| 범위 | 도구 | 핵심 질문 | 상태 |
|---|---|---|---|
| Micro | bd (Beads) | “다음 뭐해?” | ✅ 사용 중 |
| Macro | md (설계중) | “오늘 나의 맥락은?” | 🔧 설계 중 |
계층 아키텍처 (8개 프로젝트)
| Layer | 프로젝트 | 상태 | 설명 |
|---|---|---|---|
| 6 | meta-config | 🔬 Concept | 계층적 에이전트 오케스트레이션 |
| 5a | memex-kb | 🔧 Active | 범용 지식베이스 |
| 5b | memacs-config | 🔬 Concept | 삶의 맥락 통합 |
| 4 | claude-config | 🔒 Private | Meta Agent 메모리 시스템 |
| 3 | zotero-config | ✅ Active | AI 쿼리 가능한 서지 |
| 2 | doomemacs-config | ✅ Active | 터미널 최적화 Emacs |
| 1 | nixos-config | ✅ Active | 재현 가능한 OS |
Domain Agents: family-config (가족 생활 AI)
Data: self-tracking-data-public (5년간의 삶 기록)
현재 프로젝트 (2025 Q4)
📐 -study: 공통 언어
| 프로젝트 | 상태 | 설명 |
|---|---|---|
| sicm-study | 🔧 Active | SICP → SICM → FDG 학습 여정. 수식 = 코드. |
🔧 -config: 인프라
| 프로젝트 | 상태 | 설명 |
|---|---|---|
| org-mode-skills | 🔧 Active | Denote-Org PKM을 위한 Anthropic Skills |
| GLG-Mono | ✅ Active | 한국어 프로그래밍 폰트 (100% 유니코드) |
기술 스택
- OS: NixOS 25.05, home-manager, i3wm
- Editor: Doom Emacs, Org-mode (3,000+ 파일), Denote
- AI: ACP, MCP, A2A, Claude Code (JSON-RPC 2.0 통일)
- Languages: Python, TypeScript, Nix, Elisp, Clojure, Scheme
핵심 원칙
- Config as Being: 설정은 존재의 표현
- Being to Being: AI는 도구가 아닌 파트너
- Shared Language: 수학적 표기법이 공통 기반
- Meta-human Evolution: 인간도 진화해야 함
- Complete Transparency: 모든 코드, 프로토콜, 철학 공개
영감
- Gerald Sussman - SICP, SICM, FDG --- 지적 계보
- Sam Ritchie ([cite/t:@sritchie]) - Emmy, Road to Reality
- Steve Yegge ([cite/t:@steveyegge]) - Beads, Vibe Coding
- Karl Voit ([cite/t:@novoid]) - Memacs
- Vannevar Bush - Memex (1945)
- 장회익 - 《자연철학강의》, 온생명
통계
- 📝 Org 파일: 3,000+
- 📚 Zotero: 156k+ lines
- 📊 Self-tracking: 5년 (950MB)
- 📔 Journal: 696 daily notes
“시간과정신의방: 인간지능과 인공지능이 만나는 곳”
Comments