mesh-avatar-studio
Turn one illustration into an animated 2D mesh avatar with a coding agent and a local editor
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证针对独立开发者和中小团队的产品决策。 在 Cursor 中构建备选方案,观看 Grok Bot 的调查过程,选择最终发布的方案。
AI 翻译
Product decisions for solo builders and small to medium teams. Build alternatives in Cursor, watch Grok Bot investigate, choose what ships.
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
A new branch of thinking.
Built for solo builders and small to medium teams.
When a coding agent asks “How should this work?”, Fork turns the question into working alternatives, browser investigations, and a decision the agent can use. Explore product choices inside your development workflow, especially when you do not have a dedicated product team.
One question. Three working futures.
How should people find their next show? Browse, Ask and Guide share the same catalogue and mission. Each expresses a different product bet.
The show catalogue is the example. Fork is the workflow.查看完整 README ↗A new branch of thinking.
Built for solo builders and small to medium teams.
When a coding agent asks “How should this work?”, Fork turns the question into working alternatives, browser investigations, and a decision the agent can use. Explore product choices inside your development workflow, especially when you do not have a dedicated product team.
Visit Fork → · Try the demo → · Explore the evidence →
How should people find their next show? Browse, Ask and Guide share the same catalogue and mission. Each expresses a different product bet.
| Alternative | Interaction | Product bet |
|---|---|---|
| Browse | Visible cards and explicit filters | People want to see and control their choices. |
| Ask | Natural language with Grok | People want to describe what they need. |
| Guide | A short sequence of questions | People want help narrowing the decision. |
The show catalogue is the example. Fork is the workflow.
Use the same loop for checkout, onboarding, search, pricing or another product decision. Configure the question, build the working alternatives, define missions and personas, then let Grok Bot investigate before choosing what to ship.
This repo is a working show-discovery example. To adapt it, update fork.config.json, the variant implementations, domain fixtures and mission evaluators. The current catalogue and constraint rules are show-specific; changing domains requires adapting those components, rather than selecting a universal dropdown.
Nine real tickadoo show names and public artwork make the alternatives tangible. Cards link to their tickadoo source. Prices, times, ages and suitability are labelled demo scenarios, rather than live inventory.
Clone this repository, open the folder in Cursor, then in Agent chat select /fork and add your product question:
git clone https://github.com/Mark-Prethero/get-fork.git
This uses Cursor’s project command support. There is no one-click installer or marketplace extension; adapting this workflow to another existing product requires the configuration and domain changes described above.
/fork How should people find their next show? Compare browse, ask and a guided flow.
The repo includes the actual Cursor command and an always-on rule. The command tells Cursor to read prior decisions, propose a shortlist, build the approved alternatives, validate previews and generate the Grok Bot mission handoff. Fork does not automatically remote-control Cursor or dispatch into the Grok Bot app: the operator transfers the mission. After the investigation, the human choice becomes a Cursor handoff; authenticated recording and explicit adoption update repository context.
Open the one-minute pitch view. It tells the story with completed Bot findings; a fresh investigation is not needed on stage. The live alternatives, original Bot captures and decision handoff are available from that view for questions.
Optional working walkthrough:
/fork prompt on the homepage: Cursor frames and builds the alternatives.The Bot explored the updated tickadoo Browse demo and changed from Faulty Towers (£68 demo scenario) to The Play That Goes Wrong (£29) when the budget dropped to £50. It returned actual screenshots and a short trace.
Watch the fresh walkthrough → · Read the archived Bot report →
This public walkthrough is operator-archived, separate from the server-recorded comparison grid. It has no server constraint receipt or per-action timestamps.
| Grok Bot chat | Approach | Observation | Report |
|---|---|---|---|
| Fork — Speedrunner | Ask · 390 × 844 mobile emulation | Grok returned The Comedy About Spies (£50). The Bot found the next action below the artwork; the next build moves it above the artwork. | Actual reply and trace |
| Fork — Group Organiser | Guide · actual 1024 × 525 | Faulty Towers (£68) → The Mousetrap (£48) after the budget twist. The Bot confirmed a clear next step. | Actual final screenshot and trace |
Both explored captured build 2026-09-30.5 and returned reports in the Grok Bot app. These are public walkthroughs with no server run token or receipt; their original observations are preserved.
Grok Bot is the browser investigator. An operator queues a mission in Runs, copies its handoff into the real Grok Bot app, and the Bot explores the alternative in its browser. Screenshots, actions, outcome and constraint receipts are saved for replay. Remote dispatch from Fork to the Bot app is currently a manual handoff.
Grok powers Ask through the xAI API. That live conversation is a separate role from Grok Bot driving the browser. The server calls grok-4.20-0309-non-reasoning; keys remain on the Worker.
The original four investigations include two successful walkthroughs and two Ask failures caused by a missing API key. Those failures remain visible. New attempts never overwrite the original evidence. The current Ask integration is configured and has been verified live.
Agent walkthroughs are not real-user research. Unrun combinations remain “Not run”; phone frames are “Mobile emulation”. Original recordings retain their original build and catalogue. The archived catalogue prevents later artwork changes from rewriting history.
Product question → Working alternatives → Grok Bot investigation
↓
Cursor continues ← Adopted config ← Decision + evidence snapshot
node scripts/fork.mjs status
node scripts/fork.mjs queue
node scripts/fork.mjs record --action defer --reason "Need another mission"
node scripts/fork.mjs record --decision <saved-decision-id>
node scripts/fork.mjs adopt --variant guide --decision <saved-decision-id>
adopt requires a recorded choose decision. It updates src/config/show-search.ts only after the server accepts the adoption; deployment is a separate step. record --decision exports the existing saved snapshot without creating a duplicate decision.
Requires Node.js 22.
npm ci
cp .dev.vars.example .dev.vars
npm run setup
npm run dev
Open http://127.0.0.1:8787. Set ADMIN_KEY and BOT_INGEST_KEY in .dev.vars, and XAI_API_KEY for Ask. Without a key, Ask reports that it is unavailable. Never commit .dev.vars.
npm run check
This runs TypeScript checks, constraint tests, the production build and a Worker deployment dry run. GitHub Actions runs the same checks on pull requests and pushes to main.
| Layer | Implementation |
|---|---|
| UI | Vite + TypeScript; three independent alternatives |
| API | Hono on Cloudflare Workers |
| State | D1: runs, decisions and model-call reservations |
| Screenshots | Workers KV for new uploads; static assets for original captures |
| AI | Server-side xAI calls with visible failures and a bounded demo budget |
| Agent handoff | Grok Bot mission prompt + run-scoped ingestion token |
| Coding workflow | Fork CLI and a Cursor command |
| Hosting | Git-connected Cloudflare Pages landing + Worker application |
Useful entry points: SPEC.md, bot/FORK_BOT.md, .cursor/commands/fork.md, src/worker.ts, client/src, evidence.
The demo uses Northbound Studio's Cloudflare account. Pages builds landing/ from main. The Worker explicitly uses wrangler.worker.jsonc so Pages does not ingest the application's Worker configuration.
npm ci
npm run check
npx wrangler d1 migrations apply fork-demo --remote -c wrangler.worker.jsonc
npm run deploy
Set XAI_API_KEY, ADMIN_KEY and BOT_INGEST_KEY with wrangler secret put <name> -c wrangler.worker.jsonc. Generate binding types with:
npx wrangler types src/worker-bindings.d.ts -c wrangler.worker.jsonc \
--include-runtime=false --strict-vars=false --env-interface=WorkerBindings
Upstream model attempts are reserved before fetch and count toward the 40-call demo budget even on failure. The shared deadline is 20 seconds; the initial eight-second deadline expired before valid responses arrived. Rate limits and per-run limits also apply. No substitute recommendations hide an upstream failure.
Retry unsuccessful required runs from Runs after saving an admin session. Retries create linked attempts. Queuing is not Bot execution: the operator must complete the handoff.
Original exports retain build 2026-09-30.1. Snapshot fields were reconstructed from that build's committed source; missing capture and finish timestamps are not inferred. Current visual examples use catalogue 2026-09-30.3.
Built at the Prague hackathon, September 2026. Continued and verified by Mark Prethero · Codex · Mark MacBook.