Skip to main content
Glama
CHANGELOG.mdโ€ข4.33 kB
# ๋ณ€๊ฒฝ ์ด๋ ฅ (Changelog) ## [1.3.0] - 2025-01-16 ### โœจ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ - **Python ์ง€์› ์ถ”๊ฐ€** - Python ์ฝ”๋“œ ์‹œ๋งจํ‹ฑ ๋ถ„์„ (ํ•จ์ˆ˜, ํด๋ž˜์Šค, ๋ณ€์ˆ˜ ๊ฒ€์ƒ‰) - Cyclomatic ๋ณต์žก๋„ ๋ถ„์„ - Python AST ํŒŒ์„œ via subprocess - TypeScript/JavaScript + Python ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํ”„๋กœ์ ํŠธ ์ง€์› - **์Šค๋งˆํŠธ ์ปจํ…์ŠคํŠธ ์••์ถ•** - ๊ธด ๋Œ€ํ™”์—์„œ 50-70% ํ† ํฐ ์ ˆ๊ฐ - ์šฐ์„ ์ˆœ์œ„ ๊ธฐ๋ฐ˜ ์Šค์ฝ”์–ด๋ง (์ฝ”๋“œ > ๋‹ต๋ณ€ > ์งˆ๋ฌธ > ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ) - ๊ธด๊ธ‰๋„ ์ธ์‹ ์••์ถ• ๋ ˆ๋ฒจ (2K-6K ํ† ํฐ) - ์ž๋™ ์ €์šฐ์„ ์ˆœ์œ„ ์„น์…˜ ์ œ๊ฑฐ - **์ข…ํ•ฉ ํ…Œ์ŠคํŠธ ์Šค์œ„ํŠธ** - 71๊ฐœ ํ…Œ์ŠคํŠธ (100% ํ†ต๊ณผ) - Critical path ๊ฒ€์ฆ - MemoryManager, ContextCompressor, PythonParser, ProjectCache ๋‹จ์œ„ ํ…Œ์ŠคํŠธ - **๊ณตํ†ต ํƒ€์ž… ์ •์˜** - `src/types/tool.ts` ์ค‘์•™ํ™”๋œ ํƒ€์ž… ์‹œ์Šคํ…œ - 170์ค„ ์ค‘๋ณต ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ฑฐ - 34๊ฐœ ๋„๊ตฌ ์ „์ฒด ํƒ€์ž… ์ผ๊ด€์„ฑ ๊ฐœ์„  ### โšก ์„ฑ๋Šฅ ๊ฐœ์„  - **25๋ฐฐ ๋น ๋ฅธ ์ฝ”๋“œ ๋ถ„์„**: LRU ํ”„๋กœ์ ํŠธ ์บ์‹œ - 5 ํ”„๋กœ์ ํŠธ ์บ์‹œ, 5๋ถ„ TTL - ๋Œ€ํ˜• ํ”„๋กœ์ ํŠธ ๋ถ„์„: 8์ดˆ โ†’ 0.3์ดˆ - ์ž๋™ ์บ์‹œ ๋ฌดํšจํ™” ๋ฐ ์ œ๊ฑฐ - **80% ํ† ํฐ ์ ˆ๊ฐ**: ์••์ถ•๋œ ๋„๊ตฌ ์‘๋‹ต ๋ฐ ์„ค๋ช… - ๋„๊ตฌ ์„ค๋ช…: 8KB โ†’ 2KB (70% ๊ฐ์†Œ) - ๋„๊ตฌ ์‘๋‹ต: 200-500 ํ† ํฐ โ†’ 30-100 ํ† ํฐ (80% ๊ฐ์†Œ) - ๋ธŒ๋ผ์šฐ์ € ๋„๊ตฌ: ์ปดํŒฉํŠธ ์š”์•ฝ ํ˜•์‹ ### ๐Ÿ”„ ๋ณ€๊ฒฝ์‚ฌํ•ญ - **SQLite ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜**: JSON ํŒŒ์ผ ์ €์žฅ์†Œ๋ฅผ SQLite๋กœ ๊ต์ฒด - `memories.json` โ†’ `memories.db` ์ž๋™ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ - ๋ฐฑ์—… ์ƒ์„ฑ (`memories.json.backup`) - ์นดํ…Œ๊ณ ๋ฆฌ, ํƒ€์ž„์Šคํƒฌํ”„, ์šฐ์„ ์ˆœ์œ„ ์ธ๋ฑ์‹ฑ - ๋™์‹œ์„ฑ ์ œ์–ด ๋ฐ ํŠธ๋žœ์žญ์…˜ ์ง€์› ๊ฐœ์„  - **MemoryManager ๊ธฐ๋Šฅ ๊ฐ•ํ™”** - `getByPriority(priority)`: ์šฐ์„ ์ˆœ์œ„๋ณ„ ํ•„ํ„ฐ๋ง - `updatePriority(key, priority)`: ์šฐ์„ ์ˆœ์œ„ ์—…๋ฐ์ดํŠธ - `search(query)`: ํ‚ค/๊ฐ’ ์ „๋ฌธ ๊ฒ€์ƒ‰ ### ๐Ÿ› ์ˆ˜์ •์‚ฌํ•ญ - ProjectCache ๊ฒฝ๋กœ ์ •๊ทœํ™” (trailing slash ์ฒ˜๋ฆฌ) - ์ปจํ…์ŠคํŠธ ์••์ถ• ์—ฃ์ง€ ์ผ€์ด์Šค (๋นˆ ๋ฌธ์ž์—ด, ์งง์€ ํ…์ŠคํŠธ) - Python ํŒŒ์„œ ์ž„์‹œ ํŒŒ์ผ ์ •๋ฆฌ (์—๋Ÿฌ ์‹œ) - ๋ชจ๋“  ๋„๊ตฌ ์‘๋‹ต ํ˜•์‹ ์ผ๊ด€์„ฑ ### ๐Ÿ—๏ธ ์ธํ”„๋ผ - vitest ํ…Œ์ŠคํŒ… ํ”„๋ ˆ์ž„์›Œํฌ ์ถ”๊ฐ€ - ํ…Œ์ŠคํŠธ ์Šคํฌ๋ฆฝํŠธ: `test`, `test:watch`, `test:ui`, `test:coverage` - `tests/unit/` ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์ƒ์„ฑ - `vitest.config.ts` ์„ค์ • ์ถ”๊ฐ€ ### ๐Ÿ“ฆ ์˜์กด์„ฑ - `vitest@^4.0.9` (dev) - `@vitest/ui@^4.0.9` (dev) - `better-sqlite3@^12.4.1` - `@types/better-sqlite3@^7.6.13` - `glob@^11.0.3` - `@types/glob@^8.1.0` --- ## [1.1.0] - 2025-08-13 ### โœจ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ - **์‹œ๋งจํ‹ฑ ์ฝ”๋“œ ๋ถ„์„ ๋„๊ตฌ ์ถ”๊ฐ€** - `find_symbol`: ํ”„๋กœ์ ํŠธ ์ „์ฒด์—์„œ ํ•จ์ˆ˜, ํด๋ž˜์Šค, ๋ณ€์ˆ˜ ๋“ฑ ์‹ฌ๋ณผ ๊ฒ€์ƒ‰ - `find_references`: ์‹ฌ๋ณผ์˜ ๋ชจ๋“  ์ฐธ์กฐ ์œ„์น˜ ์ฐพ๊ธฐ - ts-morph ๊ธฐ๋ฐ˜ ์ •ํ™•ํ•œ AST ๋ถ„์„์œผ๋กœ ๋‹จ์ˆœ ํ…์ŠคํŠธ ๋งค์นญ๋ณด๋‹ค ์ •ํ™• - TypeScript, JavaScript, JSX, TSX ํŒŒ์ผ ์ง€์› ### ๐Ÿ› ๋ฒ„๊ทธ ์ˆ˜์ • - **๋ธŒ๋ผ์šฐ์ € ๋„๊ตฌ ์ˆ˜์ •** - `browserUtils.ts` ์ถ”๊ฐ€: PC์— ์„ค์น˜๋œ Chrome/Edge/Brave ์ž๋™ ํƒ์ง€ - `monitorConsoleLogs`, `inspectNetworkRequests` ๋„๊ตฌ๊ฐ€ ๋ธŒ๋ผ์šฐ์ € ์‹คํ–‰ ๊ฒฝ๋กœ๋ฅผ ์ž๋™์œผ๋กœ ์ฐพ๋„๋ก ๊ฐœ์„  - ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ฐพ์ง€ ๋ชปํ•  ๊ฒฝ์šฐ ๋ช…ํ™•ํ•œ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋ฐ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์ œ๊ณต - Windows/macOS/Linux ๋ชจ๋“  ํ”Œ๋žซํผ ์ง€์› ## [1.0.6] - 2025-07-10 ### ๐Ÿ› ๏ธ ์„ฑ๋Šฅ ์ตœ์ ํ™” - ts-morph `Project`๋ฅผ ์‹ฑ๊ธ€ํ„ด์œผ๋กœ ์žฌ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌยทCPU ์‚ฌ์šฉ๋Ÿ‰ ๊ฐ์†Œ - `allowJs: true`, `skipLibCheck: true` ์ ์šฉ โ†’ JavaScript ์ฝ”๋“œ ํŒŒ์‹ฑ ์†๋„ ๊ฐœ์„  - ๋Œ€์šฉ๋Ÿ‰ ์ฝ”๋“œ ๋ถ„์„ ์‹œ ์‘๋‹ต ์ง€์—ฐ ๊ฐ์†Œ(์ฒด๊ฐ 20~40%) --- ## [1.0.5] - 2025-07-10 ### โœจ ์ฃผ์š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ - **AST ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ๋ถ„์„ ๋„์ž…** - `analyze_complexity`: Cyclomatic / Cognitive / Halstead ๋ณต์žก๋„๋ฅผ AST๋กœ ์ •ํ™•ํ•˜๊ฒŒ ๊ณ„์‚ฐ - `check_coupling_cohesion`: ImportยทRequireยทํด๋ž˜์Šคยทํ•จ์ˆ˜ ๊ตฌ์กฐ๋ฅผ AST๋กœ ๋ถ„์„ํ•˜์—ฌ ๊ฒฐํ•ฉ๋„ยท์‘์ง‘๋„ ํ‰๊ฐ€ ํ–ฅ์ƒ - `break_down_problem`: ์ฝ”๋“œ ์ž…๋ ฅ ์‹œ AST๋กœ ํ•จ์ˆ˜ยทํด๋ž˜์Šคยท๋ณ€์ˆ˜๋ฅผ ์ž๋™ ๋ถ„ํ•ดํ•˜์—ฌ ํ•˜์œ„ ๋ฌธ์ œ ์ƒ์„ฑ - **์ƒˆ๋กœ์šด ์˜์กด์„ฑ**: `ts-morph`(v26) ์ถ”๊ฐ€ ### ๐Ÿ“ ๋ฌธ์„œ ์—…๋ฐ์ดํŠธ - README: AST ๊ธฐ๋ฐ˜ ๋ถ„์„ ๊ธฐ๋Šฅ ์†Œ๊ฐœ, ๋„๊ตฌ ์ˆ˜ 31๊ฐœ๋กœ ์—…๋ฐ์ดํŠธ - smithery.json: ๋„๊ตฌ ์ˆ˜ ๋ฌธ๊ตฌ(29โ†’31) ๋ฐ ๋ฒ„์ „ 1.0.5 ๋ฐ˜์˜ ### ๐Ÿ› ๏ธ ๊ธฐํƒ€ ๋ณ€๊ฒฝ - `package.json` ๋ฒ„์ „ 1.0.5 - ํ…Œ์ŠคํŠธ ์Šคํฌ๋ฆฝํŠธ ์ƒ์„ฑยท์‚ญ์ œ

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/su-record/hi-ai'

If you have feedback or need assistance with the MCP directory API, please join our Discord server