Survival LLM
인터넷 없이도 동작하는 무료 AI 어시스턴트와 150만 건 오프라인 자료를 제공, 답변 출처 표시, Mac·Windows 지원
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Design-engineering craft as an Agent Skill: motion, micro-interactions, and polish for AI coding assistants. npx skills add arjunlohan/finesse
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Design-engineering craft for interfaces that feel polished, fast, and physical: packaged as an Agent Skill for Claude Code, Cursor, Codex, Gemini CLI, and other skill-aware coding assistants.
Great interfaces are rarely one big thing. They're an accumulation of small, individually invisible details that compound: felt, not seen. finesse teaches your AI coding assistant those details as concrete, committed defaults: a motion-token system, interaction states, surfaces & depth, typography, layout & color, performance, and accessibility.
Live showcase: 15 UI components, each built twice by Opus 4.8 from the same prompt. The only variable was whether the agent read finesse first.
npx skills add arjunlohan/finesse # project-scoped
npx skills add arjunlohan/finesse -g # global: available in every project
Once installed it auto-triggers on UI / animation / "make it feel better" work, or you can invoke it manually with /finesse. Without installing, you can also just point any assistant at skills/finesse/SKILL.md.
Same prompt ("add a hover state to this card"), same assistant, with and without the skill loaded.
Before
.card { transition: all 0.3s ease; }
.card:hover { transform: scale(1.05); box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); }
After
:root {
--duration-fast: 150ms; /* micro: hover, press, color */
--ease-standard: cubic-bezier(0.2, 0, 0, 1); /* small in-place state changes */
}
.card {
transition:
transform var(--duration-fast) var(--ease-standard),
box-shadow var(--duration-fast) var(--ease-standard);
}
.card:hover {
transform: translateY(-2px);
box-shadow: 0 1px 2px rgb(0 0 0 / 0.06), 0 8px 24px rgb(0 0 0 / 0.10);
}
@media (prefers-reduced-motion: reduce) {
.card { transition-duration: 1ms; }
.card:hover { transform: none; }
}
Four things changed and none of them were a judgement call: named tokens instead of hand-picked numbers, compositor-only properties instead of all, easing chosen by the direction of travel, and a reduced-motion path that substitutes rather than deletes.
| File | Covers |
|---|---|
SKILL.md | The spine: the motion-token system, core principles, common mistakes, a review/output contract + checklist |
motion.md | Duration/easing/spring tokens, enter/exit, interruptibility, origin, stagger, when-not-to-animate, modern primitives (View Transitions, @starting-style, scroll-driven) |
interaction-states.md | Hover/active/focus-visible/disabled, loading & skeletons, empty/error states, optimistic UI, menus |
surfaces.md | Concentric radius, shadows vs borders & elevation, image outlines, optical alignment, hit areas |
typography.md | Wrapping, smoothing, tabular numbers, hierarchy, measure, line-height, fluid sizing |
layout-and-color.md | Spacing & grouping, alignment, near-black/white, functional color scales, depth |
performance.md | Compositor-only animation, will-change, FLIP, the tool ladder, 60fps/RAIL, perceived speed |
accessibility.md | prefers-reduced-motion policy, forced-colors, contrast, focus, semantics & ARIA |
motion/framer-motion) variants. It won't add an animation dependency that isn't already in your package.json.SKILL.md carries every number you need to act; the reference files are pulled in on demand for depth.prefers-reduced-motion policy (substitute, don't delete), forced-colors, focus, and contrast are baked in: not bolted on.MIT © Arjun Lohan