[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-82764":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":15,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":33,"readmeContent":34,"aiSummary":35,"trendingCount":16,"starSnapshotCount":16,"syncStatus":36,"lastSyncTime":37,"discoverSource":38},82764,"pai-pro","Utopai-Research\u002Fpai-pro","Utopai-Research","Local AI filmmaking studio — skills, canvas, timeline — driven from your coding agent.","",null,"JavaScript",293,27,10,1,0,198,227,4,76.34,"Other",false,"main",true,[26,27,28,29,30,31,32],"agent-skills","ai-filmmaking","claude-code","coding-agent","docker","filmmaking","react-flow","2026-06-12 04:01:38","\u003Cdiv align=\"center\">\n\n# PAI-Pro\n\n**The local AI filmmaking studio, driven from your coding agent.**\n\n[简体中文](README.zh-CN.md) · [English](README.md)\n\n[![Utopai Studios](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FUtopai_Studios-4285F4?style=flat&logo=data%3Aimage\u002Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAXeSURBVHgB7VdpSJVpFD5edTSzzWnTMiWXaBHHomUoarSoTLJ%2B9KOBghZqSutHA6E\u002FIqmpoYggiakgKhuKYkBIEqOgZaaMImghmjbNxBZiTMXUTK\u002F3zPMc7\u002F241U0dmOhPB16%2B977b2Z7zvO8V%2BSpfWIJ6OB%2BBljVixIjsxMTEpF69ekU0NDQ037t3rwLfYsyVonV413rkf5JgtG8HDRpUc\u002FHiRY%2BqeiAaSM6fP6%2BjR4%2BuwvpU775Ajri8fVdPleedPn2aGjsg2pXQMLfbrZcvX3ZjX\u002FkHinxR\u002FGPdunV14eHh8dJN5Kn89\u002Fb2djcP7Urevn2rb968sdbc3Kytra0cbj916pTyDLRQKIxD6v4ZP358x9atW3Xu3LkVGA\u002FvSvmv7k4J6Cmlrq5OYaBevXrVlNbW1urhw4c1KytLp0yZovPnz9cTJ064IyIicsaMGaNBQUHEhY3TaPRjAylnWGJgvedTngNwWlNTY4a8fv1aN2\u002FerPCQCnjoR23hwoUKwHb4fl%2B4cEGrq6v1U967%2Bvbte5M5D6S8srLSvCYezp07p2FhYepyuQIq9rW8vDynDyP\u002FwjcD7ScJAERD7pEjR9QHOEbh3bt31p80aZKWlpba3NixY00xvfb3PFAUQkJCHCO9xkT4RbvTa%2B%2B3gwdkZGS4EV4bePnypWCzDBw4UJBHQSglODhYHjx4IFwDu2TAgAGyZcsWOX78uMyaNUugsPNQV%2BexcEJ2794tkZGRcu3atY7U1NRmrNfMzMxqTP\u002FmH4lkbPJcuXJFb926pYsXL9a9e\u002FfqtGnTtKWlRefMmeN47fP20KFDBsBHjx4pUK4PHz7UGzdu6IsXLzQ7O9uJQklJifbv39%2BigRRrQkKCnjlzxqLqn4JQ5pTWURkV9OnTR58\u002Ff26H79%2B\u002F\u002F71QA926Z8%2BeT4Z\u002F9erVztiaNWtM2YQJE0z5smXLDMTetU4ImO\u002FcAwcOyNOnT20AvwVlJqtWrRIc5ljK0N%2B5c0eKioqccPfr108QCZtjuMvKyqxPuXTpktTX18vjx48FkZC4uDgBZ3Cqzd8ANw4p4ERjY6Pluq2tTZKTkyUmJkYqKiqcvDLvT548sdxTVq5cKQipJCUlyYoVKwwHoO9OpMFwYgnRFZCVGREfH29OonwbuSbE5xmUtnCSoHv16pUUFhbK0qVL5fbt25Kenm7AQxXYgcOGDZP79%2B\u002FLsWPHZOTIkWY0PT169Kjk5uYKytX2UZBC7mvFuU2jRo2KxL4wRCQI%2BCnxxwA9bN61a5flBh5oVFSURkdHW%2BnBa4WBTo5nzpxpYOvdu7eCYhUh16FDh1neiRkoctbOmzePZxXJx\u002FIeF4QSWEQr6ZIbUSr2JdMRVAQSK8HfEDZS7fbt2\u002FXs2bMG4okTJ743n5%2Bfz%2B%2BP0o24kKef6QGwoCdPnnQYcMeOHQ6pbNy4UdPS0uw3jdm0aZNev35dgRcjLl5CBQUFjpE8b%2B3atSSW6K6UB%2BGwQix2g%2Bc9LBtuZgrI9T7ZsGGD1THyp8CILliwwNYBD4qqUHLI3bt3FTm28YMHD\u002FLrmTp1aq109\u002FCBAQ3Dhw\u002F3AEx2MIX5ffbsmfV58fiEngNodinxBsT1arUNkFmaFi1a5HDAvn37%2BE2Qbh4hnEz0crabB5GUfGGkkA3pGe\u002F8nJwciw7nUNNaXFxsfbyIdMmSJbpz507dtm2bLl%2B%2BnJcXw\u002F%2BL9EBoxDdU7LOeFUD0sz99%2BnRTVFVVZcb4hAj3GYn7wCh8yJAhDgBDQ0P5zZQePsNkxowZleJHrQQeD6ExsbGxOnjwYAUPWAky7KyO8vJySxUfI4zM7NmzCTzr4z3gWb9%2BfX1XOoM%2BiILP%2BnS0fKTlh3Hjxn2DfAsMMSLCi0YQBYFBAjIxguJv3nxkQZIQx8impGX8Tmlqavpb\u002FuNr%2BUPDvkMj995EXbeCSu1xwhIkWFNSUowvGDFGj6RER3Ch\u002FSmfUaLQvocB%2BZMnTy5DvxIGtODdYEYwbbhH0qT7\u002Fx6fTcKkp%2BD7Kl9S\u002FgWQAm5AIYveoQAAAABJRU5ErkJggg%3D%3D&logoColor=white)](https:\u002F\u002Fwww.utopaistudios.com\u002F)\n[![Discord][discord-shield]][discord-url]\n[![Follow @UtopaiStudios](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FFollow-%40UtopaiStudios-000000?style=flat&logo=x&logoColor=white)](https:\u002F\u002Fx.com\u002FUtopaiStudios)\n\u003Cbr \u002F>\n[![Claude Code supported](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FClaude_Code-supported-2EA44F?style=flat&labelColor=D97757&logo=anthropic&logoColor=white)][claude-code-url]\n[![Codex supported](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCodex-supported-2EA44F?style=flat&labelColor=111111&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NCA2NCI%2BPGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmZmIiBzdHJva2Utd2lkdGg9IjUuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMzIgOGM2LjIgMCAxMS40IDMuMiAxNC4zIDguMUwzMiAyNC40IDE3LjcgMTYuMUMyMC42IDExLjIgMjUuOCA4IDMyIDhaIi8%2BPHBhdGggZD0iTTUwLjIgMTguM2M1LjQgMy4xIDguMSA4LjggNy44IDE0LjVsLTE0LjMtOC4zVjguMWMyLjUgMS4yIDQuOCAzLjEgNi41IDEwLjJaIiB0cmFuc2Zvcm09InJvdGF0ZSg2MCAzMiAzMikiLz48cGF0aCBkPSJNNTAuMiAxOC4zYzUuNCAzLjEgOC4xIDguOCA3LjggMTQuNWwtMTQuMy04LjNWOC4xYzIuNSAxLjIgNC44IDMuMSA2LjUgMTAuMloiIHRyYW5zZm9ybT0icm90YXRlKDEyMCAzMiAzMikiLz48cGF0aCBkPSJNNTAuMiAxOC4zYzUuNCAzLjEgOC4xIDguOCA3LjggMTQuNWwtMTQuMy04LjNWOC4xYzIuNSAxLjIgNC44IDMuMSA2LjUgMTAuMloiIHRyYW5zZm9ybT0icm90YXRlKDE4MCAzMiAzMikiLz48cGF0aCBkPSJNNTAuMiAxOC4zYzUuNCAzLjEgOC4xIDguOCA3LjggMTQuNWwtMTQuMy04LjNWOC4xYzIuNSAxLjIgNC44IDMuMSA2LjUgMTAuMloiIHRyYW5zZm9ybT0icm90YXRlKDI0MCAzMiAzMikiLz48cGF0aCBkPSJNNTAuMiAxOC4zYzUuNCAzLjEgOC4xIDguOCA3LjggMTQuNWwtMTQuMy04LjNWOC4xYzIuNSAxLjIgNC44IDMuMSA2LjUgMTAuMloiIHRyYW5zZm9ybT0icm90YXRlKDMwMCAzMiAzMikiLz48L2c%2BPC9zdmc%2B&logoColor=white&logoWidth=16)][codex-url]\n\n[discord-shield]: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-Join-green?style=flat&logo=discord&logoColor=white\n[discord-url]: https:\u002F\u002Fdiscord.gg\u002FCfjRGGwK\n[claude-code-url]: https:\u002F\u002Fcode.claude.com\u002Fdocs\u002Fen\u002Foverview\n[codex-url]: https:\u002F\u002Fdevelopers.openai.com\u002Fcodex\u002Fcli\n\n\u003Cimg src=\"docs\u002Fassets\u002Fcanvas_view.webp\" alt=\"PAI-Pro canvas view\" width=\"100%\" \u002F>\n\n\u003C\u002Fdiv>\n\n## What's PAI-Pro?\n\nPAI-Pro is a local-first AI filmmaking workspace built around four things:\n\n- **Your own [Claude Code][claude-code-url] or [Codex][codex-url]**, capable agents connected to local project files, persistent context, and customized filmmaking skills. ([Setup and agents](docs\u002Fsetup.md))\n- **End-to-end filmmaking skills** for scripts, images, videos, and voice. ([More skill details](docs\u002Fskills.md))\n- **A visual canvas and timeline** for designing scenes, managing assets, arranging shots, and keeping larger productions organized.\n- **One API service for story media** across image, video, and voice, so productions do not need separate providers for each step. ([API service details](docs\u002Fapi_service.md))\n\n## Quick start\n\nUse Claude Code or Codex to install PAI-Pro for you. Paste this into your agent:\n\n> Clone [`https:\u002F\u002Fgithub.com\u002FUtopai-Research\u002Fpai-pro`](https:\u002F\u002Fgithub.com\u002FUtopai-Research\u002Fpai-pro), read the setup docs in [README.md](README.md) and [docs\u002Fsetup.md](docs\u002Fsetup.md), then install PAI-Pro for my current agent. Ask me for my `PAI_KEY`, use Docker unless I ask for local development, and start the app when setup is complete.\n\n| Choose | Commands |\n| --- | --- |\n| \u003Cimg src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fnpm\u002Fsimple-icons\u002Ficons\u002Fanthropic.svg\" alt=\"Anthropic\" width=\"16\" height=\"16\" \u002F> **[Claude Code][claude-code-url]** | Docker: `.\u002Fscripts\u002Fdocker-start.sh`\u003Cbr \u002F>Local: if ports are busy, run `.\u002Fscripts\u002Fstop.sh` first; then `.\u002Fscripts\u002Fsetup --agent claude` and `.\u002Fscripts\u002Fstart.sh` |\n| \u003Cimg src=\"https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fglincker\u002Fthesvg@main\u002Fpublic\u002Ficons\u002Fopenai\u002Flight.svg\" alt=\"OpenAI\" width=\"16\" height=\"16\" \u002F> **[Codex][codex-url]** | Docker: `PAI_DEFAULT_AGENT_ID=codex .\u002Fscripts\u002Fdocker-start.sh`\u003Cbr \u002F>Local: if ports are busy, run `.\u002Fscripts\u002Fstop.sh` first; then `.\u002Fscripts\u002Fsetup --agent codex` and `PAI_DEFAULT_AGENT_ID=codex .\u002Fscripts\u002Fstart.sh` |\n\nOpen Docker at \u003Chttp:\u002F\u002Flocalhost:7588> or local at \u003Chttp:\u002F\u002Flocalhost:7443>.\n\n## API Service\n\n`PAI_KEY` gives each production one service for image, image pro, video, and voice, without separate provider keys for each step. Use the \u003Ca href=\"https:\u002F\u002Fpai-pro.utopaistudios.com\u002Fkeys\" target=\"_blank\" rel=\"noopener noreferrer\">PAI Pro Developer Platform\u003C\u002Fa> to manage keys, tasks, balance, and credits. It also supports less restrictive video moderation via asset preupload and helps support this project. Paid generations are staged first; for BYOK and exact payloads, see [API Service](docs\u002Fapi_service.md).\n\n| Capability | Quality | Time | # of references | Estimated price |\n|---|---|---|---|---|\n| [`generate_image`](server\u002Fcli\u002Fgenerate_image.js) | Great | ~10-30s | 16 imgs | $0.07 \u002F $0.10 \u002F $0.15 for 1K \u002F 2K \u002F 4K |\n| [`generate_image_pro`](server\u002Fcli\u002Fgenerate_image_pro.js) | Best | ~3-6 min | 32 imgs | $0.26 \u002F $0.45 \u002F $0.77 for 1K \u002F 2K \u002F 4K |\n| [`generate_video`](server\u002Fcli\u002Fgenerate_video.js) | Best | ~3-6 min | 9 imgs \u002F 3 vids \u002F 3 auds | $0.08\u002Fs \u002F $0.20\u002Fs \u002F $0.44\u002Fs for 480p \u002F 720p \u002F 1080p |\n| [`generate_voice`](server\u002Fcli\u002Fgenerate_voice.js) | Good | ~5-15s | N\u002FA | $0.01 per 500 input characters, rounded up |\n\n## Resources\n\n- 💬 [Discord][discord-url] — questions, ideas, support, and show & tell\n- ⚙️ [API Service](docs\u002Fapi_service.md) — developer platform notes, BYOK counterparts, and exact media JSON payloads\n- 🎬 [Skills reference](docs\u002Fskills.md) — how filmmaking skills route agent requests\n- 🚀 [Setup and agents](docs\u002Fsetup.md) — choose Docker or host mode, configure Claude\u002FCodex, and understand ports, auth, and permissions\n- 🏗 [Architecture](docs\u002Farchitecture.md) — viewer, CLI, canvas, and project-file layout\n- ❓ [FAQ](docs\u002Ffaq.md) — common setup and generation issues\n- 🐛 [Issues](https:\u002F\u002Fgithub.com\u002FUtopai-Research\u002Fpai-pro\u002Fissues) — bug reports only\n- 🤝 [Contributing](CONTRIBUTING.md) — contribution guide, proprietary-skills carve-out, and CLA flow\n\n## License\n\nPAI-Pro is released under the [PAI PRO Sustainable Use License](LICENSE.md), which permits personal use, non-commercial research, and internal business use. Commercial use of PAI-Pro Skills or enterprise-designated source code\u002FSkills requires an explicit agreement; [enterprise licenses](mailto:enterprise@utopaistudios.com) are available.\n","PAI-Pro 是一个本地AI电影制作工作室，通过编码代理驱动，提供技能、画布和时间线功能。项目使用JavaScript开发，并支持Docker部署，结合了React Flow等技术来实现流畅的用户界面与交互体验。它适合需要利用AI技术进行创意内容生成的场景，如独立电影制作者、小型工作室或教育机构的教学演示等，能够显著提高创作效率和质量。",2,"2026-06-11 04:09:09","CREATED_QUERY"]