본문으로 건너뛰기
LVIS AI

Server · Marketplace

LVIS Marketplace — FastAPI + SQLAlchemy 2.0 monorepo

단일 Plugin 모델 + plugin_type discriminator (plugin · agent · mcp · skill) 로 4가지 카탈로그를 통합 운영. Ed25519 서명 검증, lvis:// deeplink 설치, lvis-publish CLI 까지 갖춘 monorepo (server + web + cli).

FastAPI 0.115+
SQLAlchemy 2.0 async
Ed25519
react-router 7
마켓플레이스 — 로그인

실제 stack (verbatim)

# server/pyproject.toml
fastapi>=0.115, uvicorn[standard]>=0.32, sqlalchemy>=2.0
aiosqlite>=0.20, asyncpg>=0.29, alembic>=1.13
pydantic>=2.9, slowapi>=0.1.9, cryptography>=42

# web/package.json
react + react-router (createBrowserRouter)
vite + typescript + tailwind + shadcn-style ui + tanstack/query

# cli/package.json
@lvis-marketplace/cli  bin: lvis-publish

사용자 페르소나

  • End user — Storefront / PluginDetail / “설치” 버튼 (lvis:// deeplink) 사용.
  • Publisher — PublisherDashboard / PublishPage / lvis-publish publish CLI 로 업로드.
  • Admin — AdminPage 4탭 (Catalog · Approvals · Manage · API Keys) + role guard <RequireRole role="admin">.
agents / mcp / skills 는 별도 endpoint 가 없다
모든 카탈로그 데이터는 단일 Plugin 모델 + plugin_type 컬럼 (마이그레이션ad207acc8dae_add_plugin_type) 으로 묶여 있고, GET /api/v1/catalog?plugin_type=… 으로 필터링됩니다. 본 docs 의 “Agents / MCP / Skills” 페이지는 UI 분류 관점의 설명일 뿐, 별도 REST 리소스를 의미하지 않습니다.