import type { Metadata } from "next"; import Link from "next/link"; import Reveal from "@/components/Reveal"; import Marquee from "@/components/Marquee"; import Counter from "@/components/Counter"; import SectionLabel from "@/components/SectionLabel"; import HeroComposition from "./_components/HeroComposition"; export const metadata: Metadata = { title: "연구실 소개 (Intro)", description: "QUIC, gRPC, A2A 기반 에이전트 통신 및 멀티에이전트 오케스트레이션을 연구하는 경북대학교 AI 에이전트 네트워크 연구실 (ANL) 소개.", }; // CUSTOMIZATION HOOK: the five research pillars (5 Pillars, Option A). const pillars = [ { no: "Pillar 01", tag: "Agent Eng", accent: "vermillion" as const, ko: "AI 에이전트 3대 핵심 엔지니어링", en: "Agent Core Engineering", desc: "프롬프트, 컨텍스트, 하네스 엔지니어링을 결합하여 대화 상태 보존, 외부 기억 바인딩, 도구 연동 인터페이스를 설계하고 자율 추론 경로를 최적화합니다.", points: [ "역할 페르소나 및 Few-shot 최적화", "동적 컨텍스트 윈도우 & Memory 바인딩", "물리적 도구(Tool Use) 하네스 연결", ], }, { no: "Pillar 02", tag: "MCP & SKILL", accent: "cobalt" as const, ko: "AI Agent 기능 확장 프로토콜", en: "Extensibility & Protocol", desc: "Anthropic MCP 통일 호환 규격 및 코드+스키마+Few-shot이 패키징된 SKILL 모듈을 통해 에이전트의 로컬/원격 역량을 자율적으로 동적 확장합니다.", points: [ "MCP (Model Context Protocol) 통일 규격", "자율 확장 SKILL 모듈 패키징", "CLI 기반 자율 코딩 에이전트 제어", ], }, { no: "Pillar 03", tag: "Orchestration", accent: "vermillion" as const, ko: "멀티 에이전트 협업 및 오케스트레이션", en: "Multi-Agent Systems", desc: "단일 에이전트의 환각과 컨텍스트 인지 한계를 극복하기 위해 역할 세분화(Role Specialization) 및 이종 모델 교차 검증과 오케스트레이션 인프라를 구축합니다.", points: [ "HERDR 백그라운드 프로세스 컨테이너 격리", "crewAI 역할/목표 기반 크루 프로세스", "LangGraph 상태 보존형 순환 그래프 제어", ], }, { no: "Pillar 04", tag: "A2A & ACP", accent: "cobalt" as const, ko: "에이전트 상호운용성 개방형 표준", en: "Interoperability Standards", desc: "Linux Foundation A2A 및 IBM ACP 오픈 표준 기반으로 이종 에이전트 간 서비스 발견, 태스크 위임, Agent Card 프로필 명세를 구현합니다.", points: [ "A2A (Agent-to-Agent) 통신 오픈 표준", "ACP 서비스 발견 & 태스크 위임", "Agent Card (/.well-known/agent-card.json)", ], }, { no: "Pillar 05", tag: "AIoT & gRPC", accent: "vermillion" as const, ko: "AIoT & 고성능 통신 백본", en: "High-Performance Backbone", desc: "스마트 팩토리/팜 엣지 자원 제약 환경에서 경량 프로토콜(MQTT/CoAP)과 HTTP/2·HTTP/3 gRPC/QUIC 양방향 스트리밍을 결합한 하이브리드 백본을 설계합니다.", points: [ "gRPC & QUIC 양방향 스트리밍 메시징", "Protobuf 바이너리 직렬화 최적화", "MQTT-gRPC 하이브리드 엣지 메쉬", ], }, ]; // CUSTOMIZATION HOOK: headline figures (animated counters). const figures = [ { value: 5, label: "연구 기둥 · Research Pillars", suffix: "", size: "display-sm" as const, static: false }, { value: 12, label: "에이전트 프로토콜 · Protocols", suffix: "", size: "display-sm" as const, static: false }, { value: 99.9, label: "가동률 % · Availability", suffix: "%", size: "display-sm" as const, static: false }, ]; // CUSTOMIZATION HOOK: research keyword ticker. const keywords = [ "A2A PROTOCOL", "MCP & SKILL", "HERDR PROCESS CONTAINER", "LANGGRAPH CYCLIC GRAPH", "QUIC & GRPC STREAMING", "MULTI-AGENT ORCHESTRATION", "AIOT EDGE CONTROL", "AGENT CARD SPEC", ]; const focusAreas = [ { ko: "에이전트 통신 프로토콜 (A2A)", en: "A2A & ACP Protocols" }, { ko: "멀티에이전트 오케스트레이션", en: "Multi-Agent Orchestration" }, { ko: "MCP & SKILL 기능 확장", en: "MCP & SKILL Engineering" }, { ko: "AIoT & gRPC/QUIC 백본", en: "AIoT & gRPC/QUIC Backbone" }, ]; export default function IntroPage() { return ( <> {/* ============ COVER SPREAD ============ */}
{/* Title & Masthead column */}

경북대학교 컴퓨터학부 · AI Agent Networking Lab (ANL)

에이전트 네트워크의
미래를 짓다

in Motion

메타버스 상호운용성(MCM)과 QUIC 기반 멀티에이전트 오케스트레이션. 국제 표준을 토대로 분산되고 이종적인 시스템이 동일한 의미로 데이터를 교환하고 협력하도록 설계합니다.

논문 보기 → 구성원
{/* Abstract illustration column */}

Fig. 01 — MCM 노드 메시 × QUIC 멀티스트림

{/* Keyword marquee band */} {/* ============ FIGURES / COUNTERS ============ */}
{figures.map((f, i) => (

{f.label}

))}
{/* ============ MISSION / PULL QUOTE ============ */}
“표준 적합성과 실증을 함께 추구하여, 연구가{" "} 실제 표준 문서와{" "} 오픈소스 구현으로 이어지게 한다.”

{/* CUSTOMIZATION HOOK: marginalia / footnote */} † 본 연구실은 차세대 에이전트 통신 프로토콜(A2A/ACP)과 멀티에이전트 오케스트레이션(HERDR/LangGraph) 기술을 토대로, 분산·이종 에이전트가 자율적으로 협력하고 고속으로 메시지를 교환할 수 있는 네트워크 인프라를 연구합니다.

{/* ============ FIVE RESEARCH PILLARS ============ */}
{pillars.map((p, i) => { const isVerm = p.accent === "vermillion"; return (
{p.no} {p.tag}

{p.ko}

{p.en}

{p.desc}

    {p.points.map((pt) => (
  • {pt}
  • ))}
); })}
{/* ============ FOCUS AREAS ============ */}
{focusAreas.map((f, i) => (
{String(i + 1).padStart(2, "0")}

{f.ko}

{f.en}

))}
); }