Deen Trace: 화면에서 벗어날 때를 아는 AI
요약
Deen Trace는 사용자의 일상 활동을 기록하고 성찰하는 개념의 오프라인 우선(offline-first) 무슬림 활동 일지 프로토타입입니다. 이 앱은 로컬 오픈-웨이트 모델을 활용하여, 사용자에게 화면에서 벗어나 할 수 있는 비판단적인 제안('Step Outside')을 생성함으로써 디지털 디톡스를 유도하는 것이 핵심 목표입니다.
핵심 포인트
- 오프라인 우선(offline-first) 설계로 데이터 프라이버시를 최우선합니다.
- 로컬 오픈-웨이트 모델(Qwen3, llama.cpp)을 사용하여 성찰 내용을 생성합니다.
- 사용자에게 화면에서 벗어나 할 수 있는 비판단적인 제안을 제공하는 것이 목표입니다.
- Flutter와 SQLite 등을 활용하여 크로스 플랫폼 프로토타입으로 구현되었습니다.
_이 글은 Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass에 제출하는 내용입니다.
제가 만든 것 (What I Built)
Deen Trace — 사용자가 길을 벗어날 때를 아는 AI.
Deen Trace는 다음과 같은 하나의 간단한 원칙을 기반으로 구축된, 사적인 오프라인 우선(offline-first) 무슬림 활동 일지 개념/프로토타입입니다:
기록 → 성찰 → 화면에서 벗어나기.
이 아이디어는 사용자가 살라(Salah), 꾸란(Qur'an), 지크르(Dhikr), 사다카(Sadaqah), 선행, 금식과 같은 일상 활동을 기록하고, 간단한 시각적 활동 그래프를 통해 자신의 이력을 검토할 수 있도록 하는 것입니다.
하지만 제가 Touch Grass를 위해 특별히 설계한 기능은 Step Outside라고 불립니다.
Deen Trace는 AI를 사용하여 사용자가 앱에 계속 머물도록 유도하는 대신, 로컬 오픈-웨이트 모델을 사용하여 활동 패턴을 분석하고, 화면에서 벗어나 할 수 있는 작고 비판단적인(non-judgmental) 제안을 생성합니다.
예를 들어:
Step Outside
휴대폰을 내려놓으세요.
짧게 산책하세요.
평소 지나치기 쉬운 무언가를 발견해 보세요.
그러면 앱은 사용자의 길에서 벗어납니다 (gets out of the way).
여기에는 야외 연속 기록(outdoor streaks), XP, 리더보드, 배지 또는 참여 루프가 없습니다.
앱은 심지어 사용자가 제안을 따랐는지 여부를 알 필요조차 없습니다.
목표는 화면이 경험의 가장 짧은 부분이 되도록 하는 것입니다.
데모 (Demo)
이 제출물은 현재 배포된 애플리케이션이라기보다는 프로토타입/개념 구현 계획입니다.
의도하는 데모 흐름은 다음과 같습니다:
- 일일 활동 기록.
- 활동 그래프 보기.
- Wi-Fi 또는 모바일 데이터 끄기.
- 로컬 AI 모델을 사용하여 성찰 내용 생성.
- 개인화된
로컬 데이터베이스는 기기의 진실 공급원(source of truth)입니다.
이 애플리케이션은 활동 추적이 네트워크 접근에 의존하지 않도록 설계되었으며, 클라우드 서비스는 인증과 동기화에만 제한됩니다.
구현 방법 (How I Built It)
제안된 구현에는 다음 기술들이 사용되었습니다:
- Flutter: 크로스 플랫폼 애플리케이션용
- SQLite: 로컬 우선(local-first) 활동 저장소용
- llama.cpp: 로컬 모델 추론용
- Qwen3: 로컬 성찰을 위한 오픈 가중치(open-weight) 모델
- 비즈니스 로직과 UI를 분리하는 작은 애플리케이션/도메인 계층
AI 파이프라인은 의도적으로 좁습니다:
Activity Data
+
Optional Good Deed Notes
...
모델은 요청된 성찰을 생성하는 데 필요한 정보만을 받습니다.
개인 활동 데이터는 원격 AI API로 전송되지 않습니다.
AI는 세 가지 모드를 가질 수 있습니다:
- Off (비활성화)
- Reports only (보고서만)
- Reports + personalized suggestions (보고서 + 개인화된 제안)
제안 시스템은 의도적으로 패턴 기반이며 비판적이지 않습니다(non-judgmental).
AI는 종교적 권위가 아닙니다. 이슬람 판결을 제공하거나, 누군가의 신앙심을 판단하거나, 영적인 가치를 부여하거나, 활동을 지어내거나, 사용자에게 근거 없는 주장을 해서는 안 됩니다.
기반 제품 아키텍처 역시 오프라인 우선(offline-first) 동작을 중심으로 설계되었습니다. 활동 생성, 편집, 기록 보기, 활동 그래프 보기는 모두 인터넷 연결 없이 작동해야 합니다.
오픈 혁신이 중요한 이유 (Why Does Open Innovation Matter?)
이 프로젝트는 매우 개인적인 데이터를 다룹니다.
개인의 예배 활동과 사적인 선행(Good Deed) 메모는 클라우드 API가 편리하다는 이유만으로 원격 AI 제공업체에게 보내고 싶은 종류의 데이터가 아닙니다.
로컬 오픈 가중치 추론이 이를 변화시킵니다.
의도된 아키텍처는 다음과 같습니다:
DEVICE
┌─────────────────────────────────┐
│ │
...
사용자의 개인 활동은 기기에 남아 있을 수 있습니다.
프라이버시 (Privacy)
AI가 호스팅된 AI 서비스에 개인 활동을 업로드할 필요는 없습니다.
오프라인 기능 (Offline capability)
모델이 설치되면 인터넷 연결 없이도 리플렉션 경험을 할 수 있습니다.
이는 특히 '자연 속으로 돌아가기(Touch Grass)'라는 테마와 관련하여 중요합니다. 즉, 신뢰할 수 있는 연결성이 없는 곳에 있더라도 애플리케이션이 유용해야 합니다.
모델의 자유도 (Model freedom)
AI 레이어는 의도적으로 교체 가능하도록 설계되었습니다.
애플리케이션은 단일 독점 API에 구조적으로 묶여서는 안 됩니다. 다양한 오픈 가중치(open-weight) 모델을 전체 제품을 재설계하지 않고도 테스트하거나, 최적화하거나, 대체할 수 있어야 합니다.
하지만 로컬 오픈 AI를 사용하는 가장 중요한 이유는 철학적인 측면 때문입니다.
저는 제가 이 AI와 대화하는 시간을 최대화하려고 노력하는 AI 비서가 필요하지 않습니다.
제가 활동을 살펴보고, 성찰하도록 돕고, 그리고 다음과 같이 말해주는 AI가 필요합니다:
휴대폰을 내려놓으세요.
이것이 이 프로젝트에서 로컬 오픈 AI를 의미 있게 만드는 부분입니다.
나의 에이전트 세션 (My Agent Session)
현재 이 프로토타입에는 DevRelay 에이전트 세션이 없습니다.
의도된 개발 워크플로우는 애플리케이션의 개인 활동 데이터를 모든 원격 AI 서비스와 분리하면서, 로컬 우선(local-first) 아키텍처를 구축하고 테스트하는 데 도움을 줄 수 있는 에이전트를 사용할 것입니다.
수상 부문 (Prize Categories)
오픈 소스 AI / 오픈 가중치 AI (Open-Source AI / Open-Weight AI)
이 프로젝트는 폐쇄형 호스팅 AI API보다는 오픈 가중치 로컬 모델과 로컬 추론(local inference)을 중심으로 설계되었습니다.
Deen Trace의 아이디어 배경
Deen Trace는 간단한 원칙을 기반으로 구축되었습니다:
실생활이 앱보다 우선한다.
활동 그래프는 영적인 점수가 아닙니다.
AI는 종교적 권위가 아닙니다.
앱은 사용자가 실제로 그 제안을 따랐는지 알 필요가 없습니다.
단지 성찰하도록 돕고—그리고 길에서 물러나야 할 뿐입니다.
기록(Log) → 성찰(Reflect) → 화면에서 벗어나기(Leave the screen).
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기