Skip to content

jesamkim/chrome-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

75 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

AI Assistant Chrome Extension

Amazon Bedrock ๊ธฐ๋ฐ˜ Side Panel AI ์–ด์‹œ์Šคํ„ดํŠธ - ์›น ํƒ์ƒ‰ ์ค‘์—๋„ ์ง€์†์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ AI ์ฑ„ํŒ…

์Šคํฌ๋ฆฐ์ƒท

Chrome Extension Side Panel

Side Panel UI: ๋ธŒ๋ผ์šฐ์ € ์ขŒ์ธก์—์„œ ์›นํŽ˜์ด์ง€์™€ ํ•จ๊ป˜ AI ๋Œ€ํ™”


์ฃผ์š” ๊ธฐ๋Šฅ (v2.2.0)

ํ•ต์‹ฌ ๊ธฐ๋Šฅ

Side Panel UI

  • ๋ธŒ๋ผ์šฐ์ € ์ขŒ์ธก ๊ณ ์ • ํŒจ๋„
  • ์›น ํƒ์ƒ‰ ์ค‘์—๋„ ๋Œ€ํ™” ์ง€์†
  • ํŒ์—…์ฒ˜๋Ÿผ ๋‹ซํžˆ์ง€ ์•Š์Œ

AI ๋Œ€ํ™” ๋ฐ ๋ถ„์„

  • ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…: ํ˜„์žฌ ํŽ˜์ด์ง€ ๋‚ด์šฉ ๊ธฐ๋ฐ˜ ๋Œ€ํ™”
  • ์š”์•ฝ: ๊ธด ํŽ˜์ด์ง€๋ฅผ ํ•ต์‹ฌ๋งŒ ์••์ถ•
  • ํ•ต์‹ฌ ํฌ์ธํŠธ: ์ค‘์š” ๋‚ด์šฉ๋งŒ ์ถ”์ถœ
  • ๋ฒˆ์—ญ ์ฑ—๋ด‡: ํ•œ๊ตญ์–ด/์˜์–ด ์ž๋™ ๊ฐ์ง€ ์–‘๋ฐฉํ–ฅ ๋ฒˆ์—ญ ์ฑ„ํŒ… ์ธํ„ฐํŽ˜์ด์Šค

๋‹ค์ค‘ AI ๋ชจ๋ธ

  • Claude Sonnet 4.6 (๊ธฐ๋ณธ, ์ตœ๊ณ ์˜ ์ฝ”๋”ฉ ๋ชจ๋ธ)
  • Claude Opus 4.6 (๊ฐ€์žฅ ๊นŠ์€ ์ถ”๋ก )
  • Claude Haiku 4.5 (๋น ๋ฆ„, ๋น„์šฉ ํšจ์œจ์ )

๊ณ ๊ธ‰ ๊ธฐ๋Šฅ

๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ์—”์ง„

  • ์ž๋™ ์ฒญํฌ ๋ถ„ํ• : ๊ธด ํŽ˜์ด์ง€๋ฅผ 2000 ํ† ํฐ ๋‹จ์œ„๋กœ ๋ถ„ํ• 
  • ๋™์‹œ ์ฒ˜๋ฆฌ: ์ตœ๋Œ€ 5๊ฐœ ์ฒญํฌ ๋ณ‘๋ ฌ ์‹คํ–‰
  • ์„ฑ๋Šฅ ํ–ฅ์ƒ: 50-70% ์ฒ˜๋ฆฌ ์‹œ๊ฐ„ ๋‹จ์ถ•
  • ์ง„ํ–‰ ์ƒํ™ฉ ํ‘œ์‹œ: ์‹ค์‹œ๊ฐ„ ์ง„ํ–‰๋ฅ  (์˜ˆ: "์ฒ˜๋ฆฌ ์ค‘... 3/5 (60%)")

์ฑ„ํŒ… ํžˆ์Šคํ† ๋ฆฌ ๊ด€๋ฆฌ

  • ์˜๊ตฌ ์ €์žฅ: ๋ธŒ๋ผ์šฐ์ € ์žฌ์‹œ์ž‘ ํ›„์—๋„ ๋Œ€ํ™” ์œ ์ง€
  • ์„ธ์…˜ ๊ด€๋ฆฌ: ํŽ˜์ด์ง€๋ณ„ ์ž๋™ ๋ถ„๋ฆฌ
  • ์„ธ์…˜ ๊ฒ€์ƒ‰: ์ด์ „ ๋Œ€ํ™” ๋น ๋ฅด๊ฒŒ ์ฐพ๊ธฐ
  • ๊ฐ€์ƒ ์Šคํฌ๋กค: 50๊ฐœ ์ด์ƒ ๋ฉ”์‹œ์ง€๋„ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ

์‚ฌ์šฉ์ž ์„ค์ •

  • ๋™์‹œ์„ฑ ์ œ์–ด: 1-5๋‹จ๊ณ„ ์กฐ์ ˆ (๋น ๋ฆ„ vs ์•ˆ์ •)
  • ๋ฒˆ์—ญ ์–ธ์–ด: ํ•œ๊ตญ์–ด, ์˜์–ด, ์ผ๋ณธ์–ด, ์ค‘๊ตญ์–ด, ์ŠคํŽ˜์ธ์–ด, ํ”„๋ž‘์Šค์–ด, ๋…์ผ์–ด
  • ํ† ํฐ ์ˆ˜: 100-8000 ์กฐ์ ˆ
  • Temperature: ์ฐฝ์˜์„ฑ ์ˆ˜์ค€ ์กฐ์ ˆ

์„ฑ๋Šฅ ์ตœ์ ํ™”

  • API ์ธ์ฆ ์บ์‹ฑ: 5๋ถ„ TTL (ํ˜ธ์ถœ 83% ๊ฐ์†Œ)
  • ํ•œ๊ธ€ IME ์ตœ์ ํ™”: ์กฐํ•ฉ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ
  • ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ: ๊ฐ€์ƒ ์Šคํฌ๋กค๋กœ 70% ์ ˆ๊ฐ

์„ฑ๋Šฅ ๋น„๊ต

ํŽ˜์ด์ง€ ํฌ๊ธฐ v1.0 (์ˆœ์ฐจ) v2.2 (๋ณ‘๋ ฌ) ๊ฐœ์„ ์œจ
10,000์ž ~8์ดˆ ~5์ดˆ 37.5%
20,000์ž ~15์ดˆ ~8์ดˆ 46.7%
30,000์ž ~22์ดˆ ~10์ดˆ 54.5%
50,000์ž ~35์ดˆ ~15์ดˆ 57.1%

์„ค์น˜ ๋ฐฉ๋ฒ•

1. ์ €์žฅ์†Œ ํด๋ก 

git clone https://github.com/jesamkim/chrome-ai.git
cd chrome-ai

2. ์˜์กด์„ฑ ์„ค์น˜

npm install

3. Chrome Extension ๋กœ๋“œ

  1. Chrome ๋ธŒ๋ผ์šฐ์ €์—์„œ chrome://extensions/ ์ด๋™
  2. ์šฐ์ธก ์ƒ๋‹จ "๊ฐœ๋ฐœ์ž ๋ชจ๋“œ" ํ™œ์„ฑํ™”
  3. "์••์ถ•ํ•ด์ œ๋œ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์„ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค" ํด๋ฆญ
  4. ํด๋ก ํ•œ ํ”„๋กœ์ ํŠธ ํด๋” ์„ ํƒ

4. API Key ์„ค์ •

  1. Extension ์•„์ด์ฝ˜ ํด๋ฆญ -> Side Panel ์—ด๋ฆผ
  2. ์„ค์ • ๋ฒ„ํŠผ ํด๋ฆญ
  3. AWS Bedrock API Key ์ž…๋ ฅ
  4. "์ €์žฅ" ํด๋ฆญ -> ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ™•์ธ

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

๊ธฐ๋ณธ ์‚ฌ์šฉ

  1. ์›นํŽ˜์ด์ง€ ๋ฐฉ๋ฌธ
  2. Extension ์•„์ด์ฝ˜ ํด๋ฆญ -> Side Panel ์—ด๋ฆผ
  3. ๋น ๋ฅธ ์ž‘์—… ์„ ํƒ:
    • ์š”์•ฝ
    • ํ•ต์‹ฌ ํฌ์ธํŠธ
    • ๋ฒˆ์—ญ (ํ•œ๊ตญ์–ด/์˜์–ด ์–‘๋ฐฉํ–ฅ ์ฑ—๋ด‡)
    • ์ฑ„ํŒ…

์ฑ„ํŒ… ์‚ฌ์šฉ

  1. Side Panel์—์„œ "์ฑ„ํŒ…" ํด๋ฆญ
  2. ํŽ˜์ด์ง€ ๋‚ด์šฉ์ด ์ž๋™์œผ๋กœ AI์—๊ฒŒ ์ „๋‹ฌ๋จ
  3. "์ด ๋‚ด์šฉ์ด ๋ญ์•ผ?" ๊ฐ™์€ ์งˆ๋ฌธ
  4. AI๊ฐ€ ํŽ˜์ด์ง€ ๊ธฐ๋ฐ˜ ๋‹ต๋ณ€

์„ค์ • ์ปค์Šคํ„ฐ๋งˆ์ด์ง•

  1. ์„ค์ • ํŽ˜์ด์ง€ ์—ด๊ธฐ
  2. ๋™์‹œ์„ฑ: 1(๋А๋ฆผ/์•ˆ์ •) ~ 5(๋น ๋ฆ„) ์กฐ์ ˆ
  3. ๋ฒˆ์—ญ ์–ธ์–ด: ์›ํ•˜๋Š” ์–ธ์–ด ์„ ํƒ
  4. AI ๋ชจ๋ธ: ์†๋„ vs ํ’ˆ์งˆ ์„ ํƒ
  5. ์ €์žฅ -> ์ฒดํฌ๋งˆํฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํ™•์ธ

์ง€์› ๋ชจ๋ธ

๋ชจ๋ธ ์ œ๊ณต์ž ์ตœ๋Œ€ ์ปจํ…์ŠคํŠธ ์ตœ๋Œ€ ์ถœ๋ ฅ ํŠน์ง•
Claude Sonnet 4.6 Anthropic 200K ํ† ํฐ (1M ํ™•์žฅ) 64K ํ† ํฐ ์ตœ๊ณ ์˜ ์ฝ”๋”ฉ ๋ชจ๋ธ (๊ธฐ๋ณธ) - ๋น ๋ฅด๊ณ  ๊ฐ•๋ ฅํ•œ ์ถ”๋ก , 1M ํ™•์žฅ ์ปจํ…์ŠคํŠธ
Claude Opus 4.6 Anthropic 200K ํ† ํฐ (1M ํ™•์žฅ) 64K ํ† ํฐ ๊ฐ€์žฅ ๊นŠ์€ ์ถ”๋ก  - ๋ณต์žกํ•œ ์—ฐ๊ตฌ/๋ถ„์„, 1M ํ™•์žฅ ์ปจํ…์ŠคํŠธ
Claude Haiku 4.5 Anthropic 200K ํ† ํฐ 64K ํ† ํฐ ๊ฐ€์žฅ ๋น ๋ฅธ ๋ชจ๋ธ - ๋น„์šฉ ํšจ์œจ์ , ์ผ์ƒ์ ์ธ ๋ถ„์„์— ์ตœ์ 

๋ชจ๋ธ ์„ ํƒ ๊ฐ€์ด๋“œ:

  • ์ผ๋ฐ˜์ ์ธ ์‚ฌ์šฉ (๊ถŒ์žฅ): Claude Sonnet 4.6 - ๋น ๋ฅด๊ณ  ๊ฐ•๋ ฅํ•œ ์ถ”๋ก , ์ฝ”๋”ฉ๊ณผ ๋ถ„์„์— ์ตœ์ 
  • ์ตœ๊ณ  ์ˆ˜์ค€ ์ถ”๋ก : Claude Opus 4.6 - ๊ฐ€์žฅ ๊นŠ์€ ์ถ”๋ก , ๋ณต์žกํ•œ ์—ฐ๊ตฌ์™€ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„
  • ๋น ๋ฅธ ์‘๋‹ต: Claude Haiku 4.5 - ๋น„์šฉ ํšจ์œจ์ , ๊ฐ„๋‹จํ•œ ์งˆ๋ฌธ๊ณผ ๋น ๋ฅธ ๋ถ„์„

์ฐธ๊ณ ์‚ฌํ•ญ:

  • Sonnet 4.6๊ณผ Opus 4.6์€ 1M ํ† ํฐ ํ™•์žฅ ์ปจํ…์ŠคํŠธ ์ง€์›
  • ๋ชจ๋“  ๋ชจ๋ธ์€ global. prefix๋ฅผ ์‚ฌ์šฉํ•œ Cross-Region Inference ํ™œ์šฉ

๊ฐœ๋ฐœ

ํ…Œ์ŠคํŠธ

npm test                  # ์ „์ฒด ํ…Œ์ŠคํŠธ
npm run test:unit         # ๋‹จ์œ„ ํ…Œ์ŠคํŠธ
npm run test:integration  # ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

chrome-ai/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ background/       # Service Worker
โ”‚   โ”‚   โ”œโ”€โ”€ background.js
โ”‚   โ”‚   โ”œโ”€โ”€ bedrock-client.js
โ”‚   โ”‚   โ”œโ”€โ”€ chunk-processor.js      # ์ฒญํฌ ๋ถ„ํ• 
โ”‚   โ”‚   โ”œโ”€โ”€ parallel-analyzer.js    # ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ
โ”‚   โ”‚   โ””โ”€โ”€ text-context-manager.js
โ”‚   โ”œโ”€โ”€ sidepanel/        # Side Panel UI
โ”‚   โ”‚   โ”œโ”€โ”€ sidepanel.html
โ”‚   โ”‚   โ”œโ”€โ”€ sidepanel.css
โ”‚   โ”‚   โ””โ”€โ”€ sidepanel.js
โ”‚   โ”œโ”€โ”€ content/          # Content Script
โ”‚   โ”‚   โ”œโ”€โ”€ content.js
โ”‚   โ”‚   โ””โ”€โ”€ dom-manager.js          # ๋ฒˆ์—ญ์šฉ DOM ๊ด€๋ฆฌ
โ”‚   โ”œโ”€โ”€ popup/            # ๋ ˆ๊ฑฐ์‹œ Popup (ํ˜ธํ™˜์„ฑ)
โ”‚   โ””โ”€โ”€ options/          # ์„ค์ • ํŽ˜์ด์ง€
โ”œโ”€โ”€ tests/                # ํ…Œ์ŠคํŠธ
โ””โ”€โ”€ manifest.json         # Extension ๋งค๋‹ˆํŽ˜์ŠคํŠธ

๋ฒ„์ „ ํžˆ์Šคํ† ๋ฆฌ

v2.2.0 (์ตœ์‹ )

  • ์ปจํ…์ŠคํŠธ ๋ฉ”๋‰ด ์ œ๊ฑฐ (์šฐํด๋ฆญ ๋ฉ”๋‰ด ์ •๋ฆฌ)
  • ์ €์žฅ ๋ฒ„ํŠผ ์‹œ๊ฐ์  ํ”ผ๋“œ๋ฐฑ (ํ† ์ŠคํŠธ ์•Œ๋ฆผ)
  • ๋ฒˆ์—ญ ๋ฒ„ํŠผ ๋™์  ํ…์ŠคํŠธ (์„ค์ • ์–ธ์–ด ๋ฐ˜์˜)
  • Select ๋“œ๋กญ๋‹ค์šด ์ƒ‰์ƒ ์ˆ˜์ •

v2.1.0

  • ์›Œ์ปค ํ’€ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ๊ตฌํ˜„
  • ์ง„ํ–‰ ์ƒํ™ฉ ํ”„๋กœ๊ทธ๋ ˆ์Šค ๋ฐ”
  • ๋™์‹œ์„ฑ ์‚ฌ์šฉ์ž ์„ค์ • (1-5)
  • ์ „์ฒด ์›นํŽ˜์ด์ง€ ๋ฒˆ์—ญ (chrome-trans ํ†ตํ•ฉ)
  • 7๊ฐœ ์–ธ์–ด ์ง€์›

v2.0.0

  • Side Panel UI ์ „ํ™˜
  • ์ฑ„ํŒ… ํžˆ์Šคํ† ๋ฆฌ ์˜๊ตฌ ์ €์žฅ
  • ์„ธ์…˜ ๊ด€๋ฆฌ UI
  • ํ•œ๊ธ€ IME ์ž…๋ ฅ ๋ฌธ์ œ ํ•ด๊ฒฐ
  • API ์ธ์ฆ ์บ์‹ฑ (83% ํ˜ธ์ถœ ๊ฐ์†Œ)
  • ๊ฐ€์ƒ ์Šคํฌ๋กค (๋ฉ”๋ชจ๋ฆฌ 70% ์ ˆ๊ฐ)

v1.0.0

  • ์ดˆ๊ธฐ Popup ๋ฒ„์ „

ํŠน์ง•

์‚ฌ์šฉ์ž ๊ฒฝํ—˜

  • ์ฆ‰์‹œ ์‹œ์ž‘: API Key๋งŒ ์ž…๋ ฅํ•˜๋ฉด ๋ฐ”๋กœ ์‚ฌ์šฉ
  • ์‹ค์‹œ๊ฐ„ ํ”ผ๋“œ๋ฐฑ: ์ง„ํ–‰ ์ƒํ™ฉ, ์ €์žฅ ํ™•์ธ, ํ† ์ŠคํŠธ ์•Œ๋ฆผ
  • ์ง€์†์„ฑ: Side Panel์ด ๋‹ซํžˆ์ง€ ์•Š์•„ ๋Œ€ํ™” ์œ ์ง€
  • ๋ฉ€ํ‹ฐํƒœ์Šคํ‚น: ์›น ํƒ์ƒ‰ํ•˜๋ฉด์„œ AI์™€ ๋Œ€ํ™”

๊ธฐ์ˆ ์  ์šฐ์ˆ˜์„ฑ

  • Manifest V3: ์ตœ์‹  Chrome Extension ํ‘œ์ค€
  • Promise ๊ธฐ๋ฐ˜: Web Workers ์—†์ด ํšจ์œจ์  ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ
  • ์žฌ์‹œ๋„ ๋กœ์ง: Exponential backoff (1์ดˆ, 2์ดˆ, 4์ดˆ)
  • ๋ถ€๋ถ„ ์‹คํŒจ ํ—ˆ์šฉ: ์ผ๋ถ€ ์ฒญํฌ ์‹คํŒจํ•ด๋„ ๊ฒฐ๊ณผ ์ œ๊ณต

๋ณด์•ˆ

  • API Key ์•”ํ˜ธํ™” ์ €์žฅ: Chrome Storage API ์ž๋™ ์•”ํ˜ธํ™”
  • XSS ๋ฐฉ์ง€: HTML ์ด์Šค์ผ€์ดํ”„ ์ฒ˜๋ฆฌ
  • ์ตœ์†Œ ๊ถŒํ•œ ์›์น™: ํ•„์š”ํ•œ ๊ถŒํ•œ๋งŒ ์š”์ฒญ
  • HTTPS ๊ฐ•์ œ: ๋ชจ๋“  API ํ†ต์‹  ์•”ํ˜ธํ™”
  • ์˜์กด์„ฑ ๊ด€๋ฆฌ: ์ •๊ธฐ ๋ณด์•ˆ ์—…๋ฐ์ดํŠธ

๋ผ์ด์„ ์Šค

MIT License


๋งŒ๋“ ์ด

Jesam Kim (AWS SA)


About

AI-powered Chrome extension for intelligent webpage analysis using Amazon Bedrock Claude models. Chat with AI about any webpage content, get summaries, translations, and key insights instantly.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors