agent-robot-avatar 0.3.1 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +170 -111
- package/LICENSE +21 -21
- package/README.md +186 -446
- package/agent-robot-avatar.js +28 -25
- package/docs/README.de.md +186 -166
- package/docs/README.es.md +186 -225
- package/docs/README.fr.md +186 -225
- package/docs/README.ja.md +186 -225
- package/docs/README.ko.md +186 -225
- package/docs/README.pt.md +186 -225
- package/docs/README.ru.md +186 -0
- package/docs/README.zh-CN.md +190 -396
- package/docs/README.zh-TW.md +186 -227
- package/index.d.ts +128 -108
- package/package.json +77 -77
- package/src/agent-robot-avatar-actions.js +400 -400
- package/src/agent-robot-avatar-antenna-flash.js +127 -127
- package/src/agent-robot-avatar-antenna.js +152 -152
- package/src/agent-robot-avatar-core.js +1155 -1135
- package/src/agent-robot-avatar-extension-host.js +78 -78
- package/src/agent-robot-avatar-failure.js +131 -131
- package/src/agent-robot-avatar-geometry.js +40 -40
- package/src/agent-robot-avatar-gestures.js +161 -0
- package/src/agent-robot-avatar-head-roundness.js +103 -103
- package/src/agent-robot-avatar-inspect.js +242 -242
- package/src/agent-robot-avatar-love.js +226 -0
- package/src/agent-robot-avatar-random.js +272 -0
- package/src/agent-robot-avatar-runtime.js +905 -875
- package/src/agent-robot-avatar-version.js +3 -3
- package/src/agent-robot-avatar-waiting.js +130 -121
- package/src/agent-robot-avatar-wrap.js +66 -0
package/docs/README.ko.md
CHANGED
|
@@ -1,225 +1,186 @@
|
|
|
1
|
-
# Agent Robot Avatar
|
|
2
|
-
|
|
3
|
-
<p align="center">
|
|
4
|
-
<img src="../assets/readme/agent-robot-avatar-header.jpg" alt="Agent Robot Avatar">
|
|
5
|
-
</p>
|
|
6
|
-
|
|
7
|
-
[English](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/README.md) | [简体中文](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.zh-CN.md) | [
|
|
8
|
-
|
|
9
|
-
   
|
|
12
|
-
|
|
13
|
-
AI
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
Agent Robot Avatar는
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
-
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
45
|
-
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
avatar
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
avatar.
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
avatar.play('
|
|
105
|
-
|
|
106
|
-
avatar.play('
|
|
107
|
-
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
##
|
|
111
|
-
|
|
112
|
-
```
|
|
113
|
-
avatar
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
`demo/index.html`에는 모든 공개 상태, 포인터 추적, 젤리 드래그, waiting 라이프사이클, 머리 둥글기 조절, 색상 / 동작 설정, Agent 대화 시뮬레이션이 포함됩니다. Demo 전용 JavaScript는 `demo/`에 분리되어 재사용 가능한 npm runtime에는 포함되지 않습니다.
|
|
188
|
-
|
|
189
|
-
## 프로젝트 구조
|
|
190
|
-
|
|
191
|
-
```text
|
|
192
|
-
agent-robot-avatar.js 공개 컴포넌트 엔트리
|
|
193
|
-
src/ 재사용 가능한 runtime 및 표정 모듈
|
|
194
|
-
demo/ 인터랙티브 Demo와 전용 스크립트
|
|
195
|
-
examples/ 최소 통합 예제
|
|
196
|
-
assets/support/ 후원 / 결제 QR 자산
|
|
197
|
-
docs/ 다국어 문서
|
|
198
|
-
README.md 영어 기본 문서
|
|
199
|
-
CHANGELOG.md 공개 릴리스 기록
|
|
200
|
-
CONTRIBUTING.md 기여 가이드
|
|
201
|
-
package.json 패키지 메타데이터
|
|
202
|
-
LICENSE MIT License
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
## 배포 및 호환성
|
|
206
|
-
|
|
207
|
-
패키지는 `agent-robot-avatar` 이름으로 npm에 공개되며 액션, 이벤트 및 공개 메서드에 대한 TypeScript 타입 선언을 포함합니다. ES Modules, Custom Elements, SVG, Pointer Events, Web Animations API를 지원하는 최신 브라우저를 대상으로 합니다.
|
|
208
|
-
|
|
209
|
-
## 기여
|
|
210
|
-
|
|
211
|
-
Issue와 Pull Request를 환영합니다. 제출 전 [`CONTRIBUTING.md`](../CONTRIBUTING.md)를 확인해 주세요.
|
|
212
|
-
|
|
213
|
-
## 프로젝트 상태
|
|
214
|
-
|
|
215
|
-
v0.3.1은 현재 공개 버전입니다. v0.1.0은 첫 공개 버전으로 계속 제공됩니다. 향후 `1.0.0` 안정성 약속 이전에 신중하게 발전시킬 수 있도록 공개 API를 의도적으로 작게 유지하고 있습니다.
|
|
216
|
-
|
|
217
|
-
Agent Robot Avatar는 독립적으로 개발된 오픈 소스 프로젝트이며 특정 AI 플랫폼이나 브랜드와 제휴하거나 공식 승인을 받은 프로젝트가 아닙니다.
|
|
218
|
-
|
|
219
|
-
## License
|
|
220
|
-
|
|
221
|
-
MIT License. 자세한 내용은 [`LICENSE`](../LICENSE)를 참조하세요.
|
|
222
|
-
|
|
223
|
-
## 커피 한 잔으로 후원하기
|
|
224
|
-
|
|
225
|
-
<a href='https://ko-fi.com/P0E625WIOI' target='_blank'><img height='36' style='border:0px;height:36px;' src='https://storage.ko-fi.com/cdn/kofi6.png?v=6' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>
|
|
1
|
+
# Agent Robot Avatar
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="../assets/readme/agent-robot-avatar-header.jpg" alt="Agent Robot Avatar">
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
[English](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/README.md) | [简体中文](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.zh-CN.md) | [Español](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.es.md) | [Русский](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.ru.md) | [Français](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.fr.md) | [Português](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.pt.md) | [Deutsch](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.de.md) | [日本語](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.ja.md) | [한국어](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.ko.md) | [繁體中文](https://github.com/CX-ArtLab/agent-robot-avatar/blob/main/docs/README.zh-TW.md)
|
|
8
|
+
|
|
9
|
+
 [](../LICENSE) [](https://github.com/CX-ArtLab/agent-robot-avatar/actions/workflows/validate.yml) [](https://ko-fi.com/P0E625WIOI)
|
|
10
|
+
|
|
11
|
+
   
|
|
12
|
+
|
|
13
|
+
AI Agent와 인터랙티브 애플리케이션을 위한 가볍고 표현력 있는 로봇 아바타 Web Component입니다.
|
|
14
|
+
|
|
15
|
+
AI 어시스턴트, Agent 인터페이스, 데스크톱 컴패니언, 가상 펫, 디지털 마스코트, 챗봇 아바타 등 다양한 인터랙티브 캐릭터 경험에 사용할 수 있습니다.
|
|
16
|
+
|
|
17
|
+
ChatGPT, Claude, Codex, Cursor, Grok Bot, Gemini CLI, OpenCode와 유사한 제품 및 경험을 포함한 AI 어시스턴트와 Agent 인터페이스에 적합합니다.
|
|
18
|
+
|
|
19
|
+
SVG와 순수 JavaScript로 만들어졌으며 네이티브 Custom Element로 동작하고 런타임 의존성이 없습니다.
|
|
20
|
+
|
|
21
|
+
Agent Robot Avatar는 AG-UI 스타일 Agent 인터페이스를 위한 시각적 피드백 레이어로도 사용할 수 있습니다.
|
|
22
|
+
|
|
23
|
+
<p align="center">
|
|
24
|
+
<img src="../assets/demo/agent-robot-avatar-demo.gif" alt="Agent Robot Avatar 인터랙티브 애니메이션 데모" width="560">
|
|
25
|
+
</p>
|
|
26
|
+
|
|
27
|
+
## 라이브 데모
|
|
28
|
+
|
|
29
|
+
[인터랙티브 데모 열기](https://cx-artlab.github.io/agent-robot-avatar/?lang=ko)
|
|
30
|
+
|
|
31
|
+
## 주요 특징
|
|
32
|
+
|
|
33
|
+
- 네이티브 Web Component
|
|
34
|
+
- SVG 렌더링 + 순수 JavaScript
|
|
35
|
+
- 런타임 의존성 0
|
|
36
|
+
- 자동 눈 깜빡임과 은은한 idle 동작
|
|
37
|
+
- 포인터를 따라가는 눈과 관성 있는 머리 움직임
|
|
38
|
+
- 젤리 스타일의 국소 드래그 변형과 탄성 복귀
|
|
39
|
+
- 길게 누르는 압축과 드래그 가능한 스프링 안테나
|
|
40
|
+
- 프로그램으로 제어할 수 있는 Agent 상태와 표정
|
|
41
|
+
- waiting, success, failure, warning, review, blocked, system error 피드백
|
|
42
|
+
- Reduced Motion 지원
|
|
43
|
+
- 설정 가능한 수면 동작
|
|
44
|
+
- 조절 가능한 머리 둥글기
|
|
45
|
+
- 선택 가능한 안테나 상태 점멸
|
|
46
|
+
- TypeScript 선언 포함
|
|
47
|
+
|
|
48
|
+
## 설치
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
npm install agent-robot-avatar
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
```js
|
|
55
|
+
import 'agent-robot-avatar';
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
저장소 소스를 직접 불러올 수도 있습니다.
|
|
59
|
+
|
|
60
|
+
```html
|
|
61
|
+
<script type="module" src="./agent-robot-avatar.js"></script>
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
그다음 컴포넌트를 추가합니다.
|
|
65
|
+
|
|
66
|
+
```html
|
|
67
|
+
<agent-robot-avatar id="avatar"></agent-robot-avatar>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
별도의 초기화 코드는 필요하지 않습니다. 아바타는 자동으로 기본 idle 상태로 들어갑니다.
|
|
71
|
+
|
|
72
|
+
## 기본 사용법
|
|
73
|
+
|
|
74
|
+
```js
|
|
75
|
+
const avatar = document.querySelector('#avatar');
|
|
76
|
+
|
|
77
|
+
avatar.play('success');
|
|
78
|
+
avatar.play('warning');
|
|
79
|
+
avatar.play('error');
|
|
80
|
+
|
|
81
|
+
avatar.reset();
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
사용 가능한 액션:
|
|
85
|
+
|
|
86
|
+
`idle` · `bored` · `waiting` · `waiting-wrap` · `input` · `send` · `success` · `failure` · `warning` · `inspect` · `blocked` · `error` · `surprise` · `love` · `random` · `sleep` · `wake`
|
|
87
|
+
|
|
88
|
+
`failure`는 작업이 완료되었지만 실패한 경우에 사용하고, `error`는 연결·서비스·시스템 오류에 사용합니다.
|
|
89
|
+
|
|
90
|
+
`love`는 호감이나 감사를 표현합니다. 두 눈이 서로 기울어 하나의 하트가 되고, 세 번 뛴 뒤 원래대로 돌아옵니다.
|
|
91
|
+
|
|
92
|
+
`random`은 슬롯머신 회전을 재생합니다. 각 눈이 드럼 위를 굴러가다가 먼저 왼쪽 눈이 감속해 튕기며 멈추고, 이어서 오른쪽 눈이 멈춥니다. `slot`은 별칭입니다.
|
|
93
|
+
|
|
94
|
+
일반적인 Agent 요청 흐름:
|
|
95
|
+
|
|
96
|
+
```js
|
|
97
|
+
avatar.startWaiting();
|
|
98
|
+
|
|
99
|
+
// 두 번째 대기 동작: 눈이 한쪽으로 빠져나갔다가 반대쪽에서 돌아옵니다.
|
|
100
|
+
avatar.startWaiting({ variant: 'wrap' });
|
|
101
|
+
|
|
102
|
+
try {
|
|
103
|
+
const result = await runAgentRequest();
|
|
104
|
+
await avatar.play(result.ok ? 'success' : 'failure');
|
|
105
|
+
} catch (error) {
|
|
106
|
+
await avatar.play('error');
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## 자주 쓰는 옵션
|
|
111
|
+
|
|
112
|
+
```html
|
|
113
|
+
<agent-robot-avatar
|
|
114
|
+
size="160"
|
|
115
|
+
color="#08090b"
|
|
116
|
+
auto-sleep="30000"
|
|
117
|
+
wake-on="activity"
|
|
118
|
+
motion="auto">
|
|
119
|
+
</agent-robot-avatar>
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
| 속성 | 용도 |
|
|
123
|
+
| --- | --- |
|
|
124
|
+
| `size` | 아바타 크기(px) |
|
|
125
|
+
| `color` | 아바타 기본 색상 |
|
|
126
|
+
| `auto-sleep` | 자동 수면까지의 유휴 시간; `0`이면 비활성화 |
|
|
127
|
+
| `wake-on` | 자동 깨우기 정책: `activity`, `interaction`, `manual` |
|
|
128
|
+
| `motion` | 모션 정책: `auto`, `reduce`, `full` |
|
|
129
|
+
| `press-squeeze` | 중앙을 길게 눌러 압축; `false`로 비활성화 |
|
|
130
|
+
| `antenna-drag` | 안테나 드래그, 스프링 복귀, 화난 반응; `false`로 비활성화 |
|
|
131
|
+
|
|
132
|
+
자주 쓰는 런타임 제어:
|
|
133
|
+
|
|
134
|
+
```js
|
|
135
|
+
avatar.setPointerFollow(false);
|
|
136
|
+
avatar.setHeadRoundness(75);
|
|
137
|
+
avatar.setAntennaFlash(true);
|
|
138
|
+
avatar.setPressSqueeze(true);
|
|
139
|
+
avatar.setAntennaDrag(true);
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
중앙을 길게 누르면 압축이 시작됩니다. 4 CSS 픽셀을 넘게 움직이면 같은 포인터 제스처가 기존 머리 드래그로 전환됩니다. 안테나는 머리 드래그와 같은 거리 제한을 사용하며 복귀 후 기존 화난 반응이 이어집니다.
|
|
143
|
+
|
|
144
|
+
## 이벤트와 통합
|
|
145
|
+
|
|
146
|
+
컴포넌트는 시각 상태 변경에 `face-state`, 의미 기반 액션 라이프사이클 변경에 `action-state`를 발생시킵니다.
|
|
147
|
+
|
|
148
|
+
호스트 애플리케이션 통합과 접근성 상태 텍스트에는 `action-state` 사용을 권장합니다. 실행 가능한 요청 라이프사이클 예시는 [`examples/accessibility.html`](../examples/accessibility.html)을 참고하세요.
|
|
149
|
+
|
|
150
|
+
최소 통합 예시는 [`examples/basic.html`](../examples/basic.html)에 있습니다.
|
|
151
|
+
|
|
152
|
+
## 호환성
|
|
153
|
+
|
|
154
|
+
ES Modules, Custom Elements, SVG, Pointer Events, Web Animations API, `IntersectionObserver`, `ResizeObserver`, `matchMedia`를 지원하는 최신 브라우저를 대상으로 합니다.
|
|
155
|
+
|
|
156
|
+
자동 브라우저 테스트는 Chromium, Firefox, WebKit을 포함합니다.
|
|
157
|
+
|
|
158
|
+
## 기여
|
|
159
|
+
|
|
160
|
+
Issue와 Pull Request를 환영합니다. 변경 사항을 제출하기 전에 [`CONTRIBUTING.md`](../CONTRIBUTING.md)를 확인하세요.
|
|
161
|
+
|
|
162
|
+
## 프로젝트 상태
|
|
163
|
+
|
|
164
|
+
**현재 공개 버전: v0.5.2**
|
|
165
|
+
|
|
166
|
+
공개 API는 향후 `1.0.0` 안정성 약속을 향해 발전하는 동안 의도적으로 간결하게 유지합니다.
|
|
167
|
+
|
|
168
|
+
Agent Robot Avatar는 독립적으로 개발되며 어떤 AI 플랫폼이나 브랜드와도 제휴, 보증 또는 공식적인 관계가 없습니다.
|
|
169
|
+
|
|
170
|
+
## 캐릭터 디자인과 비주얼 아이덴티티
|
|
171
|
+
|
|
172
|
+
Agent Robot Avatar 캐릭터의 로봇 외형과 비주얼 아이덴티티는 CX ArtLab의 오리지널 디자인입니다.
|
|
173
|
+
|
|
174
|
+
MIT License는 소프트웨어와 소스 코드에 적용됩니다. 애플리케이션의 일부로 아바타를 사용·수정·배포할 수 있지만 Agent Robot Avatar의 이름, 캐릭터 정체성 또는 비주얼 아이덴티티의 소유권을 이전하지 않으며, 이를 다른 주체의 오리지널 캐릭터나 독립 브랜드로 표시할 권리를 부여하지 않습니다.
|
|
175
|
+
|
|
176
|
+
이 프로젝트에 언급된 제3자 제품명은 가능한 사용 사례를 설명하기 위한 것이며 제휴나 보증을 의미하지 않습니다.
|
|
177
|
+
|
|
178
|
+
## 라이선스
|
|
179
|
+
|
|
180
|
+
MIT License. 자세한 내용은 [`LICENSE`](../LICENSE)를 참고하세요.
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
이 프로젝트가 유용하다면 커피 한 잔을 사 주셔도 좋습니다.
|
|
185
|
+
|
|
186
|
+
<a href='https://ko-fi.com/P0E625WIOI' target='_blank'><img height='36' style='border:0px;height:36px;' src='https://storage.ko-fi.com/cdn/kofi6.png?v=6' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>
|