{ "project_root": "/Users/xxx/Documents/code/Software Copyright/StudioAgent", "project_name": "StudioAgent", "software_name_candidate": "studio agent frontend", "package": { "name": "studio-agent-frontend", "path": "frontend/package.json", "version": "0.1.0", "scripts": { "dev": "next dev --turbopack", "build": "next build", "start": "next start", "lint": "next lint" }, "dependency_names": [ "@eslint/eslintrc", "@radix-ui/react-avatar", "@radix-ui/react-dialog", "@radix-ui/react-dropdown-menu", "@radix-ui/react-scroll-area", "@radix-ui/react-slot", "@radix-ui/react-tabs", "@radix-ui/react-tooltip", "@tailwindcss/postcss", "@tanstack/react-query", "@types/node", "@types/react", "@types/react-dom", "class-variance-authority", "clsx", "eslint", "eslint-config-next", "framer-motion", "lucide-react", "next", "postcss", "radix-ui", "react", "react-dom", "shadcn", "tailwind-merge", "tailwindcss", "tw-animate-css", "typescript", "zustand" ] }, "frameworks": [ "Next.js", "React" ], "language": "React、TypeScript、JavaScript", "source": { "file_count": 33, "line_count": 1738, "extension_counts": { ".css": 1, ".js": 1, ".ts": 8, ".tsx": 23 }, "category_counts": { "component": 12, "entry": 2, "page": 9, "source": 3, "state": 2, "style": 1, "utility": 4 }, "categorized_files": { "entry": [ "frontend/src/app/layout.tsx", "frontend/src/app/page.tsx" ], "page": [ "frontend/src/app/providers.tsx", "frontend/src/app/settings/page.tsx", "frontend/src/app/projects/page.tsx", "frontend/src/app/projects/[id]/page.tsx", "frontend/src/app/projects/[id]/settings/page.tsx", "frontend/src/app/asset-hub/page.tsx", "frontend/src/app/(auth)/register/page.tsx", "frontend/src/app/(auth)/login/page.tsx", "frontend/src/app/billing/page.tsx" ], "component": [ "frontend/src/components/ui/card.tsx", "frontend/src/components/ui/scroll-area.tsx", "frontend/src/components/ui/label.tsx", "frontend/src/components/ui/avatar.tsx", "frontend/src/components/ui/button.tsx", "frontend/src/components/ui/textarea.tsx", "frontend/src/components/ui/input.tsx", "frontend/src/components/agent/AgentStatusBar.tsx", "frontend/src/components/agent/MessageBubble.tsx", "frontend/src/components/agent/ChatPanel.tsx", "frontend/src/components/agent/ChatInput.tsx", "frontend/src/components/assets/AssetPanel.tsx" ], "state": [ "frontend/src/stores/conversation.ts", "frontend/src/stores/user.ts" ], "utility": [ "frontend/src/hooks/useCandidateSystem.ts", "frontend/src/hooks/useAgentStream.ts", "frontend/src/lib/utils.ts", "frontend/src/lib/api.ts" ], "style": [ "frontend/src/app/globals.css" ], "source": [ "frontend/next-env.d.ts", "frontend/postcss.config.js", "frontend/next.config.ts" ] } }, "routes": [ "/", "/login", "/projects", "/register" ], "readme_excerpt": "# StudioAgent\n多智能体 AI 视频制片平台。用户用自然语言描述创意想法,6 个专业 AI Agent 协作完成剧本、分镜、图像、视频和音频的生产——å\n¨ç¨‹æ”¯æŒäººæœºååŒæŽ§åˆ¶ã€‚\n## 架构\n```\n前端 (Next.js 15) ←SSE/REST→ 后端 (FastAPI + LangGraph) ←Celery→ 异步 Workers\n```\n**6 个 AI Agent**,通过 LangGraph Swarm 构建星形拓扑:\n| Agent | 职责 |\n|-------|------|\n| **Producer(制片人)** | 中枢节点——规划、协调、自主决策下一步行动 |\n| **Screenwriter(编剧)** | æ•\n事分析、角色提取、分集剧本生成 |\n| **Director(导演)** | 分镜设计、镜头编排、视觉连续性把控 |\n| **Camera(摄影师)** | 图像生成(角色、场景、分镜画面) |\n| **Editor(剪辑师)** | 视频组è£\n、转场、时间线编辑 |\n| **Sound(音效师)** | 对白、语音合成、音效、背景音乐 |\nProducer 是唯一的中枢——所有å\n¶ä»– Agent 完成任务后只能交回 Producer。\n## 技术栈\n| 层级 | 技术 |\n|------|------|\n| **前端** | Next.js 15、React 19、Tailwind CSS 4、Zustand、TanStack Query、Framer Motion |\n| **后端** | Python 3.12、FastAPI、LangGraph Swarm、SQLAlchemy 2.0、Celery |\n| **数据库** | PostgreSQL 16、Redis |\n| **LLM** | OpenRouter (Claude)、Google (Gemini)、VolcEngine (豆åŒ\n) |\n| **图像生成** | Seedream、Imagen、FLUX |\n| **视频生成** | Seedance、Veo、Kling |\n| **语音生成** | Qwen TTS、ElevenLabs |\n## 快速开始\n### 前置要求\n- Python 3.12+\n- Node.js 20+\n- Docker & Docker Compose\n### 安è£\n启动\n```bash\n# å\n‹éš†é¡¹ç›®\ngit clone https://github.com/your-org/StudioAgent.git\ncd StudioAgent\n# 复制环境变量文件并填å\n¥ä½ çš„密钥\ncp .env.example .env", "run_command_candidates": [ "npm run dev", "npm run start" ], "feature_candidates": [ "login", "projects", "register", "settings", "projects settings", "asset hub", "billing", "AgentStatusBar", "MessageBubble", "ChatPanel", "ChatInput", "AssetPanel" ] }