Fujimod
브라우저에서 카메라 펌웨어를 시험하고 Fujimod SD 부팅 파일을 만든다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기An agent that turns what you love into what you do. Built with Qloo and Claude for the Qloo Agentic Hackathon.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗An agent that turns what you love into what you do. Tap a few favorite shows, songs, books and games, swipe through a few activities, and Echo plans one real thing to do near you, matched to your taste with Qloo. It checks in afterwards and plans the next one better. It can also plan with friends, including friends who don't use Echo.
Built for the Qloo Agentic Hackathon.
People know their taste in media precisely and their taste in going out barely at all. "What should I do this weekend?" ends in the same three places, or a list of generic "top 10 things to do" that knows nothing about you. Picking up a new hobby is worse: you don't know where to start, what's nearby, or whether you'd like it.
Echo uses the one thing people can describe easily, what they love, and Qloo's cross-domain taste graph to answer the question they can't: where to go, and what to try.
| Onboarding in about a minute | Tap titles from a shuffled grid with real cover art; Qloo suggests more as you tap. Add anything missing by typing or speaking. Pick your area. Swipe through activities: want to try, already do, or not for me. |
| Your echo | A taste profile written from Qloo's analysis: a summary, traits you can confirm or dismiss, leanings, and picks across film, TV, books, music and podcasts, each with a "because you like…" reason. Shareable as an image. |
| One thing for you | Every day home proposes one concrete plan, such as "Tomorrow, 6pm: Halo Pottery". Say "I'm in" or ask for another. |
| Plans on request | Ask in your own words ("pottery Tuesday evening, somewhere quiet"). Watch the agent work: places appear as it finds them, and it says what it set aside and why. |
| The plan | One pick plus a backup you can swap, hours checked for that day, one-tap calendar (the event carries a check-in link), and a link friends can answer with "I'm in". |
| Check-ins | "Did you go?" with quick answers. Echo replies, notes what it learned ("prefers open studio over classes") and suggests what's next. |
| Six-week hobby plans | Turn a first visit into dated steps. Each step can find a place for itself, and after each one Echo rewrites the rest based on how it went. |
| With friends | Compare tastes (shared ground and differences from Qloo's Analysis Compare), then let each person's Echo talk it over and agree on a plan, scored for every person. Friends without Echo can be added from a few things they love. |
| Voice | Talk to Echo on home, in requests and in check-ins. After you speak, it answers out loud in a natural voice. |
| Use with AI | Copy your echo as a prompt for any assistant. |
Claude reasons and writes. Qloo supplies the places and the taste matching. Every recommendation traces back to a Qloo result; the model never invents a place.
Planning a mission (src/lib/plans/planner.ts). Claude Sonnet runs as a tool-using agent:
find_places calls Qloo Insights (filter.type=urn:entity:place, a category tag, the person's taste entities as signals, feature.explainability). It returns nearby places ranked by affinity, with why each one matches.search_categories calls Qloo Tags when a request names something outside the known categories.rule_out) and submits a plan (finish_plan).Every tool call is streamed to the screen as a step and a place card.
Elsewhere:
Models are chosen per agent in src/lib/ai/models.ts: Sonnet where reasoning matters, Haiku where speed and cost matter. Structured outputs are used throughout.
Browser (Next.js client) Vercel (Next.js API routes) Services
───────────────────────── ──────────────────────────── ─────────────────
Onboarding, home, plans, ──▶ guard: session, per-user limits, ──▶ Claude (Sonnet, Haiku)
friends, check-ins global daily spend cap Qloo API
localStorage + sync ──▶ planner / group / coach agents ──▶ OpenStreetMap (Overpass, Nominatim)
Web Speech (listen) Qloo client: cache, budget, OpenAI TTS (Echo's voice)
rate limiting ──▶ Supabase Postgres
src/lib/qloo): every response is cached in Postgres and shared across serverless instances. Live calls are spaced to Qloo's 5-per-second limit and retried once on errors, and identical concurrent requests share a call. A daily cap and a monthly reserve stop spending before the quota runs out. Without QLOO_LIVE=1 the client only serves the cache, so development never spends quota by accident.src/lib/api/guard.ts, src/lib/ai/spend.ts):
Requires Node 22+.
npm install
cp .env.local.example .env.local
npm run dev
Then fill in .env.local:
ANTHROPIC_API_KEYQLOO_API_KEY (hackathon keys work on https://hackathon.api.qloo.com)OPENAI_API_KEY for the natural voice (without it, the browser's voice is used)Live Qloo calls are off by default. Set QLOO_LIVE=1 to make them; with it off, Echo only uses cached responses and OpenStreetMap.
With Supabase configured, create the tables with:
npm run db:migrate
Checks:
npm test
npm run typecheck
Other scripts: npm run qloo:probe (exercises each Qloo endpoint once and saves responses locally), npm run qloo:seed (loads those responses into the local cache for offline work), npm run claude:check and npm run db:check.
Qloo response data stays out of the repo: results/ and .cache/ are gitignored.
src/app/ screens and API routes (onboarding, home, plan, friends, echo, api/*)
src/lib/qloo/ Qloo client, cache, budget, response normalization
src/lib/plans/ planner agent, group planning, coach, time and calendar helpers
src/lib/profile/ profile building, taste card, background re-checks
src/lib/places/ OpenStreetMap opening-hours parsing
src/lib/ai/ Anthropic client with metered spend, model choices, prices
src/lib/voice/ text-to-speech with its own budget
supabase/migrations Postgres schema, row-level security, RPCs
MIT