ChatbotX
開源的 ManyChat 替代方案,為 AI 而建。跨平台行銷,支援 WhatsApp、TikTok、Facebook、Instagram、Telegram、Zalo、Email、API 與 Webchat 🤖
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗The problem. Brand partnership, licensing and expansion teams decide who to partner with and where to grow next using trend decks, consultant workshops and gut feel. It is slow, expensive and impossible to audit.
What Outbranch does. You type one brand, product, entertainment IP or website. An agent researches it, asks you to confirm what it found, maps what its audience loves with Qloo Taste AI, and returns a ranked shortlist of opportunities. Every idea shows:
Why Qloo matters. On identical inputs, 66% of the entities in Qloo-grounded ideas were real audience affinities, against 2% without Qloo (details).
| Screen | What it shows |
|---|---|
| Opportunity portfolio | Ranked ideas with category, evidence strength and the Qloo entities behind each |
| Cultural network | The brand at the centre, Qloo affinities around it, opportunities outside. Click an idea to trace its evidence back to the brand |
| Compare | Ideas side by side, including Qloo taste overlap between them |
| Deep dive | Market research, competition, financial assumptions (marked as estimates), risks, validation plan, next steps |
| Refine | Exclude ideas or narrow markets and categories, then rerun as a new iteration |
| Reports | Printable briefs and Markdown export |
| Research log | Each run drawn as a graph of its AI calls, web searches and Qloo requests |
Three kinds of knowledge are always kept apart: Qloo signals, sourced facts and AI hypotheses. Proposed partners are labelled as proposals, and no screen shows an invented market size or success probability.
flowchart LR
A[Brand, IP or URL] --> B[Identify<br/>Claude + web search]
B --> C[Research profile<br/>sourced claims]
C --> D{You confirm}
D --> E[Qloo /search + /v2/tags<br/>entities and themes]
E --> F[Qloo /v2/insights<br/>affinities + explainability]
F --> G[Hypotheses<br/>must cite Qloo]
G --> H[Commercial research<br/>web search + fetch]
H --> I[Ranking in code<br/>8 criteria]
Research runs as durable Inngest workflows, so every step is retried, cancellable and resumable, with live progress in the browser.
docs/evaluation/ablation.md gives the same model, prompt and confirmed profile to two arms, one with Qloo and one without.
| Liquid Death, measured | With Qloo | LLM only |
|---|---|---|
| Named entities that are real audience affinities | 66% (21 of 32) | 2% (1 of 48) |
| Ideas with at least one verifiable cultural link | 7 of 7 | 1 of 8 |
| Distinct verified cultural domains | 4 | 1 |
This measures groundedness, not commercial success; the write-up explains the limits. The ablation used Claude Sonnet 5.5 and can be rerun with scripts/ablation.ts.
| Layer | Tools |
|---|---|
| Cultural intelligence | Qloo Insights API: /search, /v2/tags, /v2/insights, /v2/analysis/compare |
| AI | Anthropic Claude Haiku 5.5 with server-side web search and fetch, zod-validated outputs |
| Agent runtime | Inngest durable workflows, Server-Sent Events for live progress |
| App | Next.js 16, React 19, TypeScript, Tailwind CSS 4, shadcn/ui, React Flow |
| Data and auth | PostgreSQL on Neon, Prisma 7, Auth.js (guest, email, GitHub) |
| Hosting and billing | Vercel, plata by mono |
| Quality | Vitest (89 tests), Playwright, GitHub Actions |
You need: Node 22+, Docker, an Anthropic API key and a Qloo API key.
cp .env.example .env # add ANTHROPIC_API_KEY, QLOO_API_KEY and AUTH_SECRET (npx auth secret)
docker compose up -d db # Postgres on localhost:5442
npm install
npx prisma migrate deploy
npm run dev # http://localhost:3000
npm run inngest # second terminal: runs the research jobs
Then open http://localhost:3000, choose Continue as guest and start New research.
PROVIDER_MODE=fixture. Cultural data is then synthetic and every screen shows a Simulated data badge.INNGEST_SIGNING_KEY set, jobs go to Inngest Cloud instead of your local dev server.npm run db:seed creates a clearly simulated showcase project.| Command | Purpose |
|---|---|
npm run check | Lint, typecheck, unit and integration tests |
npm run test:e2e | Playwright journey and accessibility tests (desktop and mobile) |
npx tsx --conditions=react-server scripts/ablation.ts <projectId> | Rerun the Qloo ablation for a finished project |
npx tsx --conditions=react-server scripts/showcase.ts <projectId> | Publish a finished project as the read-only showcase |
Integration tests use a separate database. Create it once:
docker exec outbranch-db-1 psql -U outbranch -c "CREATE DATABASE outbranch_test"
DATABASE_URL=postgresql://outbranch:outbranch@localhost:5442/outbranch_test npx prisma migrate deploy
Qloo responses are cached privately in Postgres for provenance and are never committed to this repository. API keys stay on the server and never reach the browser, logs or reports.