Production problem에서 시작한
Open Source Engineering Systems.
Kubernetes 플랫폼, 재사용 가능한 인프라 컴포넌트, 로컬 AI 실험, 그리고 공통 엔지니어링 표준을 하나의 생태계로 연결합니다. 마케팅 문구보다 source · test · release · operations evidence를 우선합니다.
프로젝트를 하나씩 보기 전에, 전체 연결 관계부터.
OpenForge 포트폴리오 대시보드에서 프로젝트 현황, 의존 관계, 도입률과 유지보수 범위를 한눈에 살펴보세요. 프로젝트를 선택하면 상세 정보와 연결된 저장소도 확인할 수 있습니다.
포트폴리오 대시보드 열기실시간 운영 지표가 아닌 공개된 포트폴리오 데이터 기준
역할이 다른 핵심 OSS를 먼저 봅니다.
Narwhal은 flagship platform, NFS Quota Agent는 독립 재사용 컴포넌트, KubeMetal은 cloud-native AI 방향을 검증하는 emerging project입니다.
Narwhal
재현 가능하고 검증 가능한 Kubernetes Internal Developer Platform
NFS Quota Agent
NFS 기반 Kubernetes PersistentVolume에 파일시스템 수준 Project Quota를 적용하는 에이전트
KubeMetal
Apple Silicon에서 Kubernetes Control Plane과 macOS MLX Compute를 결합하는 하이브리드 MLOps 데스크톱 앱
왜 만드는지 이해하기
Why OSS에서 저장소 뒤에 있는 engineering practice를 먼저 설명합니다.
시스템 살펴보기
Standards, Platform, Capability, Data, AI/Edge 프로젝트를 직접 살펴봅니다.
판단의 변화 따라가기
Engineering Story에서 Framework부터 AI-assisted Engineering까지 판단의 변화를 봅니다.
임의의 성숙도 점수 없이 포트폴리오의 흐름을 측정합니다.
활동·릴리스·기여자·저장소 연령은 빌드 시점 GitHub snapshot에서, 문서 커버리지는 사이트 content index에서 계산합니다. 인기나 품질 점수가 아니라 운영 신호입니다.
metadata snapshot 기준 7일 이내 push가 있는 저장소
GitHub Release가 1개 이상 존재하는 프로젝트
GitHub contributor가 2명 이상 집계된 저장소
저장소 생성 후 180일 이상 유지된 프로젝트
프로젝트 상세 문서 91개 section을 인덱싱
관찰 가능한 gap을 다음 유지보수 후보로 바꿉니다.
저장소·문서 snapshot에서 확인되는 사실 기반 유지보수 신호입니다. 기존 tracker는 실제 issue 상태를 표시하고, Untracked 신호에는 keyword가 일치하는 open issue를 Candidate로만 제안하며 자동 tracker로 승격하지 않습니다.
Untracked 신호를 새 이슈 생성 전에 영역별로 묶습니다.
아래 owner는 자동 배정된 이슈가 아니라 가장 가까운 canonical portfolio source 후보입니다. Candidate matching 역시 title/label keyword 기반 검토 힌트일 뿐 해당 issue가 gap을 소유한다는 증거가 아닙니다.
릴리스·SBOM·provenance·release evidence 공통 기준을 다루는 canonical checklist입니다.
합성 점수를 만들지 않고 공개 OSS readiness 신호를 비교합니다.
Governance·Security는 repository tree audit, Release·Community는 GitHub snapshot, Docs는 사이트 index, Adoption은 명시적 evidence registry만 사용합니다. Tracker 상태와 candidate issue match는 검토 보조 신호일 뿐 현재 repository evidence를 덮어쓰지 않습니다.
| Project | Governance | Release | Docs | Security | Community | Adoption evidence |
|---|---|---|---|---|---|---|
| Narwhal → audit 미인덱싱 | 미인덱싱 | 확인됨 | 9 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| Narwhal Portal → audit 미인덱싱 | 미인덱싱 | 확인됨 | 5 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| NFS Quota Agent → audit 미인덱싱 | 미인덱싱 | 확인됨 | 7 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| ldapium → audit 미인덱싱 | 미인덱싱 | 확인됨 | 5 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| Kube-Ready-Box → audit 미인덱싱 | 미인덱싱 | 확인됨 | 5 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| ClusterDeck → audit 미인덱싱 | 미인덱싱 | 확인됨 | 3 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| Beluga → audit 미인덱싱 | 미인덱싱 | 확인됨 | 9 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| KubeMetal → audit 미인덱싱 | 미인덱싱 | 확인됨 | 5 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
| OpenForge → audit 미인덱싱 | 미인덱싱 | GitHub Release 없음 | 40 docs | 미인덱싱 | 2+ contributors | 미인덱싱 |
reported 또는 verified 외부 사용 근거가 1개 이상 있는 프로젝트
외부 사용·downstream integration으로 검토된 명시적 source
명시적 보고는 있으나 추가 검증이 필요한 source
gap과 같은 저장소에서 keyword로 탐지된 open issue 후보
Adoption evidence는 external adopter, downstream 사용이 확인된 external contributor, user report, public deployment, downstream integration만 허용하며 모든 항목에 source URL이 필요합니다. star·fork·clone 수·단순 contributor 집계는 의도적으로 제외합니다.
누락된 evidence를 검토 가능한 action queue로 바꿉니다.
각 항목은 audit 또는 snapshot에서 명시적으로 확인되지 않은 근거로부터 생성됩니다. Canonical tracker가 기준이며, 같은 저장소의 keyword-matched open issue는 검토용 Candidate로만 표시합니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
root/.github SECURITY 근거를 확인하지 못했습니다.
repository tree에서 SBOM/SPDX/CycloneDX 근거 경로를 확인하지 못했습니다.
Repository audit, issue candidate matching, adoption discovery 모두 보수적으로 동작하며 Candidate 신호는 tracker나 adoption evidence로 자동 승격되지 않습니다.
개발 현황과 프로젝트 영향도를 하나의 데이터로 관리합니다.
각 OSS가 검증된 상태를 OpenForge에 PR로 제안하고, merge된 registry가 이 화면의 공식 source-of-truth가 됩니다.
OpenForge에 PR로 병합되어 검증까지 완료된 프로젝트만 표시합니다.
외부 사용 가능 신호를 evidence로 승격하기 전에 검토합니다.
Pages 빌드 시 GitHub code search가 정확한 repository URL 언급을 candidate로 추가할 수 있지만 intake는 readiness evidence와 분리됩니다. 자동 후보는 source 검토와 승격 전까지 Adoption readiness를 변경하지 않습니다.
source 발견, 검토 대기
명시적 보고, 추가 검증 대기
검토 완료 외부 사용 근거
검토했으나 adoption evidence로 부적합
승격 규칙: source가 실제 사용을 명시해야 candidate → reported, source와 프로젝트 관계를 검토한 뒤에만 reported → verified로 올립니다. 동일 source URL에 대한 수동 검토 기록이 자동 후보보다 우선하므로 rejected 판단도 이후 discovery에서 유지됩니다.
Pages 빌드 시 갱신되는 GitHub snapshot 기준 OSS 활동입니다.
Standards에서 Workload까지 한 흐름으로 읽습니다.
OpenForge의 공통 practice를 공유하지만 각 프로젝트는 독립 설치·검증·릴리스를 지향합니다. 아래 지도는 런타임 의존성이 아니라 engineering practice와 실제 사용 시나리오의 연결입니다.
역할·성숙도·검증과 실제 저장소 활동을 한 화면에서 봅니다.
역할·검증 경계는 문서 기반으로 유지하고, commit·release·contributor·최근 push는 Pages 빌드 시 갱신되는 GitHub metadata snapshot을 사용합니다.
| Project | Role / Stage | Verification | Repository pulse | Freshness | Independence |
|---|---|---|---|---|---|
| Narwhal → dasomel/narwhal | Flagship Platform Active platform | Regression + live checks | 1,209 commits · 5 releases 3 contributors · latest v1.3.0 | active · 0d 2026-10-22 | Platform root |
| Narwhal Portal → dasomel/narwhal-portal | Platform Experience Layer Active UI layer | Build + in-cluster workflow | 416 commits · 6 releases 2 contributors · latest v1.0.17 | active · 6d 2026-10-15 | Narwhal-coupled |
| NFS Quota Agent → dasomel/nfs-quota-agent | Reusable Component Reusable component | Filesystem + operational checks | 646 commits · 16 releases 3 contributors · latest v0.5.0 | recent · 10d 2026-10-12 | Independent |
| ldapium → dasomel/ldapium | Identity Infrastructure Prototype | Helm test + supply-chain evidence | 510 commits · 5 releases 2 contributors · latest v0.3.0 | active · 0d 2026-10-21 | Independent |
| Kube-Ready-Box → dasomel/kube-ready-box | Node Foundation Reusable foundation | OS readiness validation | 291 commits · 6 releases 2 contributors · latest v1.1.0 | recent · 18d 2026-10-04 | Independent |
| ClusterDeck → dasomel/clusterdeck | Workstation Access Layer MVP / early | SSH + kubeconfig + API | 285 commits · 5 releases 2 contributors · latest v0.4.1 | active · 0d 2026-10-22 | Independent |
| Beluga → dasomel/beluga | Data Platform Reference Reference platform | 2 E2E data paths | 802 commits · 1 releases 2 contributors · latest v0.1.0 | active · 0d 2026-10-22 | Reference environment |
| KubeMetal → dasomel/kubemetal | Emerging / Cloud-native AI Emerging | Measured local baseline | 453 commits · 2 releases 2 contributors · latest v0.2.0 | active · 0d 2026-10-21 | Independent lab system |
| OpenForge → dasomel/openforge | Engineering Foundation Standards system | Standards → reference loop | 279 commits · 0 releases 3 contributors · latest — | active · 0d 2026-10-22 | Cross-project |
OSS 프로젝트를 반복 가능하게 만들고, 로컬 Kubernetes 노드·접속 경로·공급망 기준을 표준화하는 기반 프로젝트
OpenForge
OSS Blueprint를 넘어 Engineering Operating Model, Executable Governance, Agent Security와 Portfolio Control Plane을 제공하는 오픈소스 엔지니어링 기반
OSS가 늘어날수록 repository별 문서·CI·보안·Agent 지침·릴리스·유지보수 상태가 서로 다른 방식으로 진화해 실제 구현 상태와 설명, 검증 근거가 쉽게 어긋남
Kube-Ready-Box
Kubernetes를 위한 Ubuntu 24.04/26.04 LTS Vagrant Base Box · ARM64/AMD64 · ext4/XFS
로컬 Kubernetes 클러스터를 반복해서 만들 때 OS 튜닝, kernel modules, networking, storage prerequisites를 매번 준비해야 하고 ARM64/AMD64와 provider별 차이까지 별도로 관리해야 함
ClusterDeck
변하는 VM·Kubernetes 환경을 Profile 중심으로 발견하고 SSH·kubeconfig 연결을 자동화하는 macOS 데스크톱 도구
로컬 VM과 Kubernetes 실습·개발 환경을 자주 생성·삭제하면 IP가 바뀌고 SSH alias, Bastion/ProxyJump, 원격 kubeconfig, context 이름을 매번 수동으로 다시 연결해야 함
Kubernetes 기반 플랫폼, 관리 포털, 스토리지 enforcement, directory infrastructure를 구성하는 프로젝트
Narwhal
재현 가능하고 검증 가능한 Kubernetes Internal Developer Platform
수십 개 Cloud Native 프로젝트를 개별적으로 설치하면 DNS, TLS, identity, networking, startup order, version compatibility 같은 integration seam에서 반복적인 장애가 발생하고 업그레이드 때 다시 검증해야 함
Narwhal Portal
Narwhal Kubernetes Internal Developer Platform을 위한 운영·개발자 워크벤치
Kubernetes IDP를 구성하는 GitOps, SSO, 모니터링, 스토리지, 보안 컴포넌트는 각각의 UI를 제공하지만 플랫폼 전체 상태와 사용자 작업 흐름을 하나의 운영 화면에서 이해하기 어려움
NFS Quota Agent
NFS 기반 Kubernetes PersistentVolume에 파일시스템 수준 Project Quota를 적용하는 에이전트
Kubernetes의 NFS 기반 PersistentVolume은 PVC 용량이 파일시스템의 실제 사용량 제한으로 자동 연결되지 않아 하나의 워크로드가 공유 저장소를 소진할 수 있음
ldapium
업스트림 OpenLDAP 소스를 직접 빌드하는 Kubernetes 디렉터리 스택 · 서버 · 관리 UI · Helm
기존 OpenLDAP Kubernetes 이미지와 Helm 선택지의 오래된 버전, 비일관적인 패키징, 기본 credential 위험, ARM64/air-gap 지원 부족으로 유지 가능한 표준 배포 경로를 만들기 어려움
CDC부터 lakehouse, query, orchestration까지 데이터 lifecycle을 통합하고 운영하는 프로젝트
Apple Silicon 기반 local MLOps와 simulation-to-edge Physical AI infrastructure를 검증하는 프로젝트
KubeMetal
Apple Silicon에서 Kubernetes Control Plane과 macOS MLX Compute를 결합하는 하이브리드 MLOps 데스크톱 앱
Apple Silicon의 Metal GPU 연산을 Linux VM 내부 Kubernetes Pod로 직접 전달하기 어렵기 때문에 일반적인 '모든 것을 Kubernetes 안에서 실행'하는 MLOps 구조가 로컬 Mac에서는 하드웨어를 제대로 활용하지 못함
Siqoq
Simulation에서 edge hardware까지 동일한 semantic event와 action contract를 유지하는 Physical AI infrastructure 실험
시뮬레이터, 노트북, 실제 센서와 actuator가 서로 다른 API와 실행 환경을 사용하면 perception-to-action 흐름을 재사용하고 검증하기 어려움
코드만 늘지 않고 문서도 함께 확장됩니다.
README에서 끝내지 않습니다.
Problem · Architecture · Decision · Verification · Operations · Troubleshooting · ADR을 분리해 구현 결과와 판단 근거가 함께 남도록 합니다.