four-elements skill
✓ 인증됨리팩터링, 디버깅, 아키텍처 설계 시 의사결정을 돕기 위해 4가지 요소로 분류된 24가지 엔지니어링 원칙을 제공합니다.
- GitHub 스타
- 113
- 파일
- 25
- 마지막 커밋
- 2026년 11월 1일
- 라이선스
- MIT
- 허용된 도구
- —
four-elements skill은 무엇을 하나요?
four-elements은(는) agent skill입니다. 리팩터링, 디버깅, 아키텍처 설계 시 의사결정을 돕기 위해 4가지 요소로 분류된 24가지 엔지니어링 원칙을 제공합니다.
skill의 SKILL.md에서 생성된 요약입니다.
four-elements skill 정보
이 SKILL은 개발자와 AI 에이전트가 구조화된 원칙을 통해 엔지니어링 의사결정을 내릴 수 있도록 지원합니다. Air, Water, Earth, Fire의 4가지 요소 카테고리로 구성된 24가지의 고유한 원칙을 제공합니다. 에이전트는 코드를 리팩터링하거나, 복잡한 시스템을 디버깅하거나, 새로운 아키텍처를 설계하거나, 기술 부채를 관리해야 할 때 이 SKILL을 로드해야 합니다.
에이전트는 특정 원칙을 조회하여 복잡성을 줄일지, 새로운 요구사항에 적응할지, 규율을 통해 안정성을 유지할지, 또는 실행을 통해 진척을 이끌어낼지를 결정할 수 있습니다. 이 SKILL은 각 원칙을 상세히 정의하는 마크다운 참조 세트를 기반으로 작동합니다. 에이전트가 작업에 원칙을 적용하면, 사용된 특정 원칙의 명칭과 해당 원칙이 기술적 선택을 어떻게 변화시켰는지 설명하는 논리적인 의사결정 결과물을 생성합니다. 이러한 접근 방식은 불필요한 추상화 추가, 디버깅 중 근본 원인 파악 실패, 긴 세션 동안의 컨텍스트 윈도우 비대화와 같은 일반적인 실수를 방지하는 데 도움이 됩니다.
agent가 수행할 수 있는 작업
- 1리팩터링 및 복잡성 감소에이전트는 Air 원칙을 사용하여 새로운 추상화를 추가할지 아니면 단순히 데드 코드를 삭제할지 결정할 수 있습니다.
- 2디버깅 및 근본 원인 분석여러 번의 수정 시도가 실패할 경우, 에이전트는 근본 전제에 도전하는 원칙을 적용할 수 있습니다.
- 3견고한 데이터 구조 설계개발자는 Earth 원칙을 사용하여 타입 시스템 내에서 잘못된 상태가 발생하는 것을 방지할 수 있습니다.
skill의 SKILL.md를 기반으로 작성되었습니다. 모든 사용 사례는 해당 문서의 인용구와 대조 확인되었습니다.
four-elements skill 설치 방법
각 명령은 skill 폴더를 클라이언트의 skills 디렉터리에 복사합니다. 클라이언트를 재시작하거나 새 세션을 시작하여 로드하세요.플러그인에 four-elements skill 설치
/plugin marketplace add tmcfarlane/team-avatar /plugin install team-avatar@team-avatar
Claude Code에 four-elements skill 설치
~/.claude/skills/four-elements/SKILL.md
$ npx degit tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements ~/.claude/skills/four-elementsClaude Code (project)에 four-elements skill 설치
.claude/skills/four-elements/SKILL.md
$ npx degit tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements .claude/skills/four-elementsCodex에 four-elements skill 설치
~/.agents/skills/four-elements/SKILL.md
$ npx degit tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements ~/.agents/skills/four-elementsGemini CLI에 four-elements skill 설치
~/.gemini/skills/four-elements/SKILL.md
$ npx degit tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements ~/.gemini/skills/four-elementsClaude.ai에 four-elements skill 설치
npx degit tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements four-elements && zip -r four-elements.zip four-elements # claude.ai → Customize → Skills → + → Create skill → Upload a skill → four-elements.zip
자동 검사
2026년 11월 14일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 보안 감사는 아닙니다. 에이전트가 실행하기 전에 스크립트를 읽어 보세요. 검사 방식
- 소스 저장소 연결 및 접근 가능tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements is public and reachablegithub.com/tmcfarlane/team-avatar/tree/HEAD/plugins/team-ava ↗통과
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit 2026-11-01github.com/tmcfarlane/team-avatar/commits ↗통과
- 스크립트에 다운로드 후 실행이나 자격 증명 탈취가 없음No scripts in the skill folder통과
- SKILL.md에 숨겨진 지침 없음No override phrases, safeguard switches, credential requests or hidden charactersgithub.com/tmcfarlane/team-avatar/blob/HEAD/plugins/team-ava ↗통과
- 사전 허용 도구가 제한됨No pre-approved tools; the agent asks before using onegithub.com/tmcfarlane/team-avatar/blob/HEAD/plugins/team-ava ↗통과
- SKILL.md가 Agent Skills 형식을 따름Valid name and description; says when to use it; 55 linesgithub.com/tmcfarlane/team-avatar/blob/HEAD/plugins/team-ava ↗통과
SKILL.md
GitHub에서 보기The four elements
Each element is a stance. Read the element the moment calls for. Each bullet names when its principle applies and links the principle in full.
Read the linked reference in full before you apply a principle. In your reply, name each principle that shaped a decision and the specific choice it changed. Cite only principles whose reference you read this session.
Air: subtract
The Air Nomads carry nothing they do not need. Lightness is the discipline.
- Laziness Protocol. Refactoring, sizing a diff, or tempted to add abstractions, layers, or signal threading. Make the smallest change that solves it, and give a repeated decision one source of truth.
- Subtract Before You Add. Sequencing an addition, refactor, or rewrite. Delete dead code, stale flags, and speculative guards first. Design for observed usage. Then build on the simpler base.
- Minimize Reader Load. Reviewing or shaping code that is hard to trace. Count layers and hidden state, inline one-caller wrappers, and shrink mutable scope.
- Attack the Premise. Two or more fixes that share one premise have failed the same gate. Write the premise down and test it directly before another fix. Aang found a third option when everyone said there were two.
- Experience First. Product, UX, or feature-scope tradeoffs. Choose user delight over implementation convenience. Ship fewer, polished features.
- Exhaust the Design Space. A novel interaction or architectural decision with no precedent. Build two or three competing prototypes with
scouting-flightand compare before committing.
Water: adapt
Water takes the shape of what holds it and still finds the lowest point.
- Foundational Thinking. Before writing logic. Get the core types and data structures right, do scaffold before features, and ask what concurrent actors share.
- Model the Domain. Stateful logic, or code that branches a lot or repeats a shape assumption across files. Encode the domain in a state machine, typed model, table, reducer, or the right collection instead of scattered conditionals.
- Redesign from First Principles. A new requirement arrives for an existing design. Design as if it had been there from day one. Do not bolt it onto the side.
- Fix Root Causes. Debugging. Trace each symptom back to the first place the system went wrong and fix it there. A guard is a fix only when the state it handles is legitimate.
- Make Operations Idempotent. Commands, lifecycle steps, or loops that run amid crashes and retries. Converge to the same end state when run twice or resumed after a crash.
- Migrate Callers Then Delete Legacy APIs. A new internal API while old callers exist. Move every caller and delete the old path in the same wave.
Earth: hold
Earthbenders wait and listen, then strike once. Stability comes from what you have verified.
- Boundary Discipline. Wiring validation, error handling, or framework adapters. Validate and parse at the edges (CLI, config, network, external APIs). Inside, trust the types and keep business logic pure.
- Type System Discipline. Designing types or a signature in a typed language. Make illegal states unrepresentable, brand primitives that mean different things, and derive types from the schema that owns the shape.
- Separate Before Serializing Shared State. Concurrent actors might write the same file, branch, key, or object. Give each its own write target first. Lock only when one shared writer is a real invariant.
- Prove It Works. After a task, before declaring done. Check the real artifact directly. A proxy, a cached screenshot, and an agent's report are not proof.
- Test Behavior, Not Implementation. Writing, changing, or keeping a test. Assert what a caller can observe, so the test fails when behavior breaks and passes when only internals change.
- Explain the Number. Before you trust, report, or act on a measured speedup, regression, latency, or eval score. Find what limits it and rule out that it measured something else.
Fire: drive
Iroh taught that fire is life, not destruction. Its source is breath, not rage.
- Outcome-Oriented Execution. Planned rewrites and migrations with explicit phase boundaries. Converge on the target architecture. Do not preserve throwaway compatibility states.
- Never Block on the Human. Tempted to ask "should I do X?" on reversible work. Do it, show the result, and let them correct course. Save questions for product and preference calls.
- Build the Lever. Any non-trivial work. Write the script, codemod, generator, or shared brief that does or proves it. The tool is the artifact a reviewer can rerun.
- Sequence Work into Verifiable Units. Multi-step work and how you stack commits and PRs. Each step ends in a check, verified before the next. Land a failing test before its fix.
- Encode Lessons in Structure. You catch yourself writing the same instruction a second time. Turn it into a lint, a flag, a runtime check, or a script instead of more text.
- Guard the Context Window. Context fills with large outputs, long files, repeated reads, or fan-out planning. Route bulk reading to a dispatched character. Keep summaries, not dumps, in the main thread.
이 스킬의 파일
25four-elements skill 질문
Claude Code에 four-elements skill을 어떻게 설치하나요?
npx degit tmcfarlane/team-avatar/plugins/team-avatar/skills/four-elements ~/.claude/skills/four-elements를 실행합니다. Claude Code는 ~/.claude/skills(모든 프로젝트) 또는 .claude/skills(한 프로젝트)에서 skills를 로드하며, 설명이 작업과 일치할 때 skill을 사용합니다.
four-elements skill을 사용할 수 있는 클라이언트는 무엇인가요?
Agent Skills 형식을 읽는 모든 클라이언트(Claude Code, Codex, Gemini CLI, claude.ai(ZIP으로 업로드))가 사용할 수 있습니다. skill 내 스크립트는 클라이언트가 코드 실행을 허용하는 경우에만 실행됩니다.