bug-reproduce
Turn a known bug into a tight, red-capable reproducer, then prove the reproducer locks that…
Suite of tools for creating elaborate, multi-component Prismer HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX
$ npx -y skills add Prismer-AI/PrismerCloud --skill web-artifacts-builder --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/web-artifacts-builderContext preview
The summary Claude sees to decide when to auto-load this skill.
Suite of tools for creating elaborate, multi-component Prismer HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX
name: web-artifacts-builder scope: coding description: Suite of tools for creating elaborate, multi-component Prismer HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts. license: Complete terms in LICENSE.txt
When the bundle script (`scripts/bundle-artifact.sh`) produces the single-file HTML artifact, deliver that `bundle.html` with **`cloud deliver <abs-path>`** — this is the one command for a final artifact: it attaches the file to your current reply. Run `cloud deliver` once per output file. See the **office-artifacts delivery contract** for the full rules (incl. the hermes `--run-id` / `--conversation-id` flags).
Do NOT also run `cloud file send` on the same bundle — that posts a *separate* file-only message, delivering it twice. `cloud file send` is only for ad-hoc mid-conversation sharing, never for your final deliverable. And `cloud file upload` is NOT a delivery command (it only uploads bytes and returns an uploadId — nothing reaches the user) — always use `cloud deliver`.
Do NOT hand-build `POST /api/im/assets` calls or assemble ContentBlock JSON yourself, and do NOT paste the HTML source into the reply body — large bundles burn tokens on every downstream turn, and the delivery command registers the asset so the chat renderer can offer a preview/open button.
To build powerful frontend Prismer artifacts, follow these steps: 1. Initialize the frontend repo using `scripts/init-artifact.sh` 2. Develop your artifact by editing the generated code 3. Bundle all code into a single HTML file using `scripts/bundle-artifact.sh` 4. Display artifact to user 5. (Optional) Test the artifact
**Stack**: React 18 + TypeScript + Vite + Parcel (bundling) + Tailwind CSS + shadcn/ui
The Prismer sandbox image bakes `pnpm@9` and Node 20+, so `scripts/init-artifact.sh` will skip the "install pnpm" branch and proceed directly to the workspace create + dependency install. If `pnpm` is genuinely missing (non-sandbox env), fail the task with a clear "sandbox image missing pnpm — rebuild required" message rather than installing it on the fly: agent-time `npm install -g` contaminates the per-task workdir and slows every dispatch.
VERY IMPORTANT: To avoid what is often referred to as "AI slop", avoid using excessive centered layouts, purple gradients, uniform rounded corners, and Inter font.
Run the initialization script to create a new React project:
bash scripts/init-artifact.sh <project-name> cd <project-name>
This creates a fully configured project with:
To build the artifact, edit the generated files. See **Common Development Tasks** below for guidance.
To bundle the React app into a single HTML artifact:
bash scripts/bundle-artifact.sh
This creates `bundle.html` - a self-contained artifact with all JavaScript, CSS, and dependencies inlined. This file can be directly shared in Prismer conversations as an artifact.
**Requirements**: Your project must have an `index.html` in the root directory.
**What the script does**:
Finally, share the bundled HTML file in conversation with the user so they can view it as an artifact.
Note: This is a completely optional step. Only perform if necessary or requested.
To test/visualize the artifact, use available tools (including other Skills or built-in tools like Playwright or Puppeteer). In general, avoid testing the artifact upfront as it adds latency between the request and when the finished artifact can be seen. Test later, after presenting the artifact, if requested or if issues arise.
Repo: Prismer-AI/PrismerCloud
Turn a known bug into a tight, red-capable reproducer, then prove the reproducer locks that…
Review a diff against its acceptance criteria in four segments (convention adherence, bug…
Five-dimension design audit (frontend UI/UX · server data-model & flow · endpoint spec ·…
Before merge, mechanize Documentation-First — derive the code delta from git diff, then…
Diagnose the local dev machine before any APC loop step — run apc env doctor, classify each…
Close out a local coding task on the bound daemon — stage, commit, branch, merge, push via…