Dotlottie Web
LottieFiles/dotlottie-web
Implement Lottie animations using dotLottie runtimes (@lottiefiles/dotlottie-web and @lottiefiles/dotlottie-react).
A skill your agent uses when an AI agent (or any external script) needs to play-test a running Pixi'VN game end-to-end in a real browser — starting the game, advancing/branching the story, answering…
$ npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install DRincs-Productions/pixi-vn pixi-vn-testing --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/DRincs-Productions/pixi-vn.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/testing .claude/skills/pixi-vn-testing && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "pixi-vn-testing" agent skill from https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testing into .claude/skills/pixi-vn-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pixi-vn-testing", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testingType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install DRincs-Productions/pixi-vn pixi-vn-testing --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DRincs-Productions/pixi-vn.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/testing .agents/skills/pixi-vn-testing && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "pixi-vn-testing" agent skill from https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testing into .agents/skills/pixi-vn-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pixi-vn-testing", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install DRincs-Productions/pixi-vn pixi-vn-testing --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DRincs-Productions/pixi-vn.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/testing .cursor/skills/pixi-vn-testing && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "pixi-vn-testing" agent skill from https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testing into .cursor/skills/pixi-vn-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pixi-vn-testing", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/DRincs-Productions/pixi-vn.git --path skills/testing--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install DRincs-Productions/pixi-vn pixi-vn-testing --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DRincs-Productions/pixi-vn.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/testing .gemini/skills/pixi-vn-testing && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "pixi-vn-testing" agent skill from https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testing into .gemini/skills/pixi-vn-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pixi-vn-testing", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install DRincs-Productions/pixi-vn pixi-vn-testingInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/DRincs-Productions/pixi-vn.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/testing .github/skills/pixi-vn-testing && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "pixi-vn-testing" agent skill from https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testing into .github/skills/pixi-vn-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pixi-vn-testing", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install DRincs-Productions/pixi-vn pixi-vn-testing --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DRincs-Productions/pixi-vn.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/testing .opencode/skills/pixi-vn-testing && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "pixi-vn-testing" agent skill from https://github.com/DRincs-Productions/pixi-vn/tree/main/skills/testing into .opencode/skills/pixi-vn-testing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "pixi-vn-testing", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
pixi-vn-testingA skill your agent uses when an AI agent (or any external script) needs to play-test a running Pixi'VN game end-to-end in a real browser — starting the game, advancing/branching the story, answering…
Pixi Vn Testing is an agent skill from DRincs-Productions/pixi-vn. Use when an AI agent (or any external script) needs to play-test a running Pixi'VN game end-to-end in a real browser — starting the game, advancing/branching the story, answering input prompts, going back, and reading/writing storage — via Game.testing, the opt-in devtools bridge exposed on window. Load this before wiring up automated/agent-driven playtesting, not for authoring story content itself (see pixi-vn-narration).
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Media & Creative, covering Text to speech and voice. It works with React and JavaScript. The repository describes itself as: Create visual novels with a modern 2D rendering engine and your favorite JavaScript framework.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 01c19cb. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are javascript and typescript).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Pixi Vn Testing loads about 3.8k tokens when it runs. Until then it costs about 112 tokens; SKILL.md has 1,524 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from DRincs-Productions/pixi-vn at commit 01c19cb, republished under its LGPL-2.1 licence (© DRincs-Productions). 1,524 words, ~3,776 tokens.
.claude/skills/pixi-vn-testing/SKILL.md (or your agent's skills folder).Use this skill when the task is to play the game from the outside — driving it like a player
would, but from a script or an AI agent evaluating JavaScript in the page, instead of clicking UI. Typical
asks this covers: "start the game and play through label X", "verify choice B leads to ending Y",
"check that this bug repros after going back three steps", "seed storage with gold: 100 and confirm the
shop unlocks", "run this game headless as a regression test".
This assumes the game's dev server (or a build served on a URL) and a browser are already
running/reachable — starting either one is outside this skill; it only covers the game-control API
itself. Do not use this skill for writing story content (pixi-vn-narration), save-file persistence
(pixi-vn-saves), or the go-back UI/internals (pixi-vn-history) — those are the modules this skill
drives, not what it teaches.
narration.continue({}) from the consolenarration.continue, .call, .jump, narration.choices.select, and stepHistory.back all take a
props argument typed as StepLabelProps — the exact object a real game passes from its UI layer.
Most real projects augment StepLabelProps (via TS module augmentation, see pixi-vn-getting-started)
with app-specific fields: a router navigate, an i18n t, a toast, etc. (the official React
template does exactly this — see pixi-vn-narration section 9). If a step calls props.navigate(...)
or props.t(...), passing {} from a console/script call throws immediately.
Game.testing solves this once: the app pushes its real, live props to it (via setProps, see below)
wherever it already builds them, and every action it exposes merges those in before delegating — so
agent-driven calls behave exactly like a real player action, with no need to reconstruct or fake the
app's props shape.
Game.testing is opt-in and disabled by default, and nothing about it depends on any particular
bundler (Vite, Webpack, or none at all). Two independent pieces make it work:
window bridge on/off — Game.testing.enable(options?) / .disable().Game.testing.setProps(props).If the project uses @drincs/pixi-vn/vite's vitePluginPixivn, this is already handled: its
testing option defaults to true, auto-enabling Game.testing for as long as vite dev keeps
running (by injecting a small module into index.html) — never during vite build, regardless of
the option. No app code needed for this part:
// vite.config.ts — this is already the default, shown here just to make it explicit
vitePluginPixivn({ testing: true }); // or { testing: { windowKey: "myGameTesting" } }, or false to opt outPass testing: false if you don't want this — e.g. a dev server shared with other people that you
don't want remote-controllable.
Without the Vite plugin (a different bundler, or no bundler-level integration at all), call it yourself, gated behind your own dev-only check:
import { Game } from "@drincs/pixi-vn";
if (import.meta.env.DEV) {
// or process.env.NODE_ENV !== "production", a Webpack DefinePlugin flag, etc.
Game.testing.enable();
}options.windowKey (default "pixiVN") — the property name the API is attached under on window.window[windowKey], in case you want to keep a direct
reference instead of going through window.enable again (e.g. on hot reload) replaces the previous session instead of stacking.Game.testing.disable() tears it down (detaches from window, stops capturing errors).Game.testing.isEnabled() reports whether a session is currently active.Only enable this when you actually want the game remote-controllable. It hands out full control over game state (see §4) to anything that can run JavaScript in that page — treat it like any other devtools/debug backdoor.
setPropsCall Game.testing.setProps(props) unconditionally, wherever your app already builds its
StepLabelProps — it's a cheap assignment, safe to call whether or not testing happens to be enabled
right now, and every Game.testing action reads through whatever was passed here most recently:
import { Game, type StepLabelProps } from "@drincs/pixi-vn";
function useGameProps(): StepLabelProps {
// ... build props the same way your app always has ...
const props = { navigate, t, toast /* ... */ };
Game.testing.setProps(props); // [!code focus]
return props;
}The official React template's useGameProps() (src/lib/hooks/props-hooks.ts — see
pixi-vn-narration section 9) already ends with exactly that Game.testing.setProps(props) call, and
vite.config.ts's vitePluginPixivn(...) call needs no extra option — testing defaults to true.
Since useGameProps() already runs on every render of every component that needs game props, this is
the only line the template needs: no dedicated bridge component, no manual enable() call.
setActionsMost real apps don't call narration.continue/stepHistory.back/etc. straight from a "next" button —
they wrap them in their own functions that also handle UI-only concerns a test session should trigger
too: a loading indicator, refusing to advance while a menu/dialog is open, refreshing cached interface
data after the step resolves, and so on. By default Game.testing's actions skip all of that and call
narration/stepHistory directly, so an agent driving the game through window.pixiVN can get out of
sync with what the real UI would have done (e.g. it never sees the loading state, or advances past a
guard the real "next" button respects).
Game.testing.setActions(actions) fixes this: register the app's own functions once, and
continue()/goBack()/selectChoice()/start()/jump()/call() call them instead. Any action left
out keeps calling narration/stepHistory directly, so this is opt-in per action:
import { Game } from "@drincs/pixi-vn";
Game.testing.setActions({
continue: () => goNext(),
back: () => goBack(),
selectChoice: (item) => selectChoice(item),
start: (label, props) => async () => {
await props.navigate("/game");
return await startNewGame(label, props);
},
jump: (label, props) => jump(label, props),
call: (label, props) => call(label, props),
});Mount that hook once near the app root (same idea as useGameProps() always calling setProps) and
window.pixiVN.continue() now runs the exact same code path as a player clicking "next".
A few things follow from continue/back taking no arguments themselves:
extraProps/options a caller passes to window.pixiVN.continue(...) /
window.pixiVN.goBack(...) are ignored once an override is registered — the override manages its
own props (typically via setProps) and usually has no notion of { steps, runNow }. Drive those
through window.pixiVN.props/narration/stepHistory directly if you need that level of control.selectChoice's override receives the already-resolved choice item (the same shape as
getState().choices[i]), not the raw choiceIndex — the lookup (and the "no open choice with that
index" error) still happens before the override runs.setActions is safe to call whether or not testing is enabled yet, safe to call again to update the
registered functions, and persists across disable()/enable() — same as setProps.Every action below reads through window.pixiVN (or your custom windowKey), evaluated in the page —
e.g. via a browser automation tool's "evaluate script" capability, or by pasting into the devtools
console by hand. If the Chrome DevTools MCP server is available, prefer it over any other browser
automation for this: evaluate_script runs the snippets below directly in the page, navigate_page/
click/take_snapshot drive UI the game itself doesn't expose through window.pixiVN (e.g. a login
screen), take_screenshot lets you actually look at the canvas instead of only trusting getState(),
and list_console_messages surfaces errors/warnings a script-only check would miss — checking console
output after every meaningful step, not just at the end, has caught real bugs (e.g. a framework
deprecation warning) that a headless script relying only on errors/return values missed. Fall back to
a Playwright/chromium-cli script, or another MCP browser tool, only when Chrome DevTools MCP isn't
available. All of the actions below are async except setInput, closeCurrentLabel/
closeAllLabels, and getState.
// Start the game from a label (id or Label object). Clears all game data first, like a real "New Game".
await window.pixiVN.start("start");
// Advance one step (same guard a "next" button uses — see canContinue in getState() below).
await window.pixiVN.continue();
// Call a sub-label (returns to the caller when it runs out of steps) / jump to another label (no return).
await window.pixiVN.call("some_label");
await window.pixiVN.jump("some_label");
// Pick an open choice by its choiceIndex (see getState().choices below for what's available).
await window.pixiVN.selectChoice(0);
// Answer a pending input prompt, then continue like the player pressing confirm would.
window.pixiVN.setInput("Liam");
await window.pixiVN.continue();
// Go back one (or more) steps.
await window.pixiVN.goBack();
await window.pixiVN.goBack({}, { steps: 3 });
// Close the current label / close every open label (can end the game — see pixi-vn-narration).
window.pixiVN.closeCurrentLabel();
window.pixiVN.closeAllLabels();Every action accepts an optional second extraProps argument (first argument for selectChoice's
props is its second argument, continue/goBack's is first) that's shallow-merged on top of the
live props for that one call — useful to override just one field (e.g. a fake navigate to observe
where the game tried to go) without touching the app's real wiring:
await window.pixiVN.continue({
navigate: (to) => console.log("would navigate to", to),
});Don't act blindly — read getState() first to see what's actually on screen and what actions are
valid right now:
window.pixiVN.getState();
// {
// dialogue: { text: "What do you choose?", character: {...} } | undefined,
// dialogueGlue: false,
// choices: [{ text: "A", choiceIndex: 0, ... }, { text: "Close", choiceIndex: 1, ... }] | undefined,
// input: { isRequired: false, type: undefined, value: undefined },
// canContinue: true,
// canGoBack: true,
// labelsOpened: [...], // narration.labels.opened
// currentLabelId: "choice_label",
// stepCounter: 12,
// }choices is set, call selectChoice(choiceIndex) — don't call continue(), it won't advance
past an open choice menu.input.isRequired is true, call setInput(value) before the next continue().canContinue is false for any other reason, a step is mid-flight (e.g. an async transition) —
wait and re-check rather than firing another action immediately.window.pixiVN.props is the same live object setProps was last called with — whatever your
app's StepLabelProps augmentation defines. Most projects put a navigate function there (see
pixi-vn-getting-started and the wiki's "Navigate/switch between UI screens" page) so labels can
switch screens; that same function is reachable here for full control over what's on screen, not just
the story — e.g. opening a settings screen, jumping to a main menu, or checking where a bugged label
tried to send the player, all without going through a choice/label:
window.pixiVN.props.navigate("/settings");Anything else the app's StepLabelProps happens to expose (a toast, a t translator, ...) is
reachable the same way. If your project doesn't augment StepLabelProps with a navigation function at
all, this simply isn't available — driving screen navigation is then whatever mechanism the app itself
uses outside of Pixi'VN (e.g. calling the router directly from the evaluated script).
Beyond the guided actions above, the API also exposes the underlying singletons directly, for anything not covered by a dedicated method — most commonly storage, to set up a scenario without replaying the whole story to reach it, or to assert on state a dialogue doesn't surface:
// Arrange: seed state before starting/continuing.
window.pixiVN.storage.set("gold", 100);
window.pixiVN.storage.flags.set("met_liam", true);
// Assert: read state after driving the story forward.
window.pixiVN.storage.get("gold"); // 100
// Reset between test scenarios.
window.pixiVN.storage.clear(); // back to storage.default
window.pixiVN.Game.clear(); // wipes storage + narration + history + canvas + sound
// Snapshot / restore full game state instead of replaying steps to get back to a scenario.
const snapshot = window.pixiVN.Game.exportGameState();
// ... drive the game further, try something risky ...
await window.pixiVN.Game.restoreGameState(snapshot);window.pixiVN.narration and window.pixiVN.stepHistory are the same narration/stepHistory
singletons documented in pixi-vn-narration and pixi-vn-history — anything those skills document
(narration.dialogue, narration.labels.current, stepHistory.narrativeHistory, ...) is reachable
the same way here, read-only or not.
An automated/agent-driven session can't "notice" a red error toast the way a human tester would.
Game.testing.enable registers its own Game.addOnError handler for as long as it's active, so
errors raised anywhere in the game (including inside steps) are captured instead of only surfacing in
the UI:
window.pixiVN.errors;
// [{ error: Error("..."), timestamp: 1730000000000 }, ...]
window.pixiVN.clearErrors(); // e.g. between test cases, so failures don't bleed across scenariosThis is in addition to, not a replacement for, whatever Game.addOnError handlers the app itself
registers (e.g. drawCanvasErrorHandler()) — both run.
pixi-vn-getting-started, pixi-vn-narration, pixi-vn-storage, pixi-vn-history, pixi-vn-saves
© DRincs-Productions, LGPL-2.1. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/testing of DRincs-Productions/pixi-vn.
Open the folder on GitHubat commit 01c19cb
Pixi Vn Testing next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Pixi Vn Testing this skillDRincs-Productions/pixi-vn | 149 | — | ~3.8k | Automated safety check: Pass | LGPL-2.1 | |
| Dotlottie WebLottieFiles/dotlottie-web | 892 | — | ~3.5k | Automated safety check: Pass | MIT | |
| Anything2explainerVincentwei1021/anything2explainer | 2.4k | — | ~2.7k | Automated safety check: Pass | Custom licence | |
| Speech To Texttadaspetra/loop | 296 | 2 repos | ~2k | Automated safety check: Pass | MIT | |
| Edit Timeline StudioMartinDelophy/ai-video-editor | 905 | — | ~7k | Automated safety check: Pass | MIT | |
| Explainroovincentsch/explainroo | 515 | — | ~439 | Automated safety check: Pass | MIT |
LottieFiles/dotlottie-web
Implement Lottie animations using dotLottie runtimes (@lottiefiles/dotlottie-web and @lottiefiles/dotlottie-react).
Vincentwei1021/anything2explainer
给一个主题,产出一条黑底 MG 风格(幕底可选星点或点阵波)、有配音字幕章节进度条的科普讲解视频(中文或英文;Remotion 代码动画;时长由用户定,常用 3–5 分钟)。内含可编译模板、图元库、配音/分镜/渲染工具、风格与动效规范、多 agent 分工协议与 QC 判据,以及一条完整样片(《RAG 与知识库》)作为质量标尺。Turn any topic into a narrated…
tadaspetra/loop
Transcribe audio to text using ElevenLabs Scribe v2. An agent skill from tadaspetra/loop.
MartinDelophy/ai-video-editor
Analyze images, video, speech, motion, products, and websites; route local vision, audio, depth, tracking, matting, identity, and restoration models; auto-edit, replicate, enhance, caption, voice…
vincentsch/explainroo
Make an explainer video (MP4) with a voice-over using explainroo.
oneworks-ai/avatar
Creates, refines and exports editable OneWorks 3D geometric avatars for mascots, bots or agents, keeping one shared scene state across preview, share link and export.
DRincs-Productions/pixi-vn
A skill your agent uses when adding, organizing, registering, or loading non-code files (images, audio, video) in a Pixi'VN project — local assets processed by PixiJS AssetPack vs.
DRincs-Productions/pixi-vn
A skill your agent uses when defining visual novel characters for a @drincs/pixi-vn game — creating a character with a name, color, icon and other props, registering it so it can be looked up by id…
DRincs-Productions/pixi-vn
A skill your agent uses when implementing "go back" / "rewind" / step-navigation features in a Pixi'VN game, or when you need to read the player-facing dialogue/choice history (e.g.
DRincs-Productions/pixi-vn
A skill your agent uses when adding a minigame (snake, quiz, puzzle, timing/reaction game, ...) to a Pixi'VN visual novel — the useMinigame lifecycle hook pattern, using PixiJS directly on its own…
DRincs-Productions/pixi-vn
A skill your agent uses when writing or editing Pixi'VN story content — defining labels (scenes) with newLabel, writing dialogue steps, adding player choices with…
DRincs-Productions/pixi-vn
A skill your agent uses when implementing save/load in a Pixi'VN game — Game.exportGameState()/restoreGameState()/jsonToGameState(), what the exported GameState contains, and how to persist it (save…
Works with
Categories
A skill your agent uses when an AI agent (or any external script) needs to play-test a running Pixi'VN game end-to-end in a real browser — starting the game, advancing/branching the story, answering…. Pixi Vn Testing is an agent skill from DRincs-Productions/pixi-vn.testing, the opt-in devtools bridge exposed on window.
Pixi Vn Testing fits situations like: an AI agent (or any external script) needs to play-test a running PixiVN game end-to-end in a real browser — starting the game; advancing/branching the story; answering input prompts; reading/writing storage — via Game.testing.
Run `npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a claude-code`. Or copy the skill folder (skills/testing in DRincs-Productions/pixi-vn) into .claude/skills/pixi-vn-testing in your project. Claude Code loads it when a task matches its description.
Run `npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a codex`. Or copy the skill folder (skills/testing in DRincs-Productions/pixi-vn) into .agents/skills/pixi-vn-testing in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add DRincs-Productions/pixi-vn --skill pixi-vn-testing -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pixi-vn-testing, .gemini/skills/pixi-vn-testing, .github/skills/pixi-vn-testing and .opencode/skills/pixi-vn-testing in your project.
SKILL.md names no scripts, command-line tools or credentials: Pixi Vn Testing is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Pixi Vn Testing is published under the LGPL-2.1 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Pixi Vn Testing: Dotlottie Web (LottieFiles/dotlottie-web, 892 stars), Anything2explainer (Vincentwei1021/anything2explainer, 2.4k stars), Speech To Text (tadaspetra/loop, 296 stars) and Edit Timeline Studio (MartinDelophy/ai-video-editor, 905 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
DRincs-Productions (a GitHub organization) maintains it in DRincs-Productions/pixi-vn, which has 149 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 1, 2026.
Source: DRincs-Productions/pixi-vn on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.