Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Kevin-Liu-01/Agent-Machines --skill playcanvas-enginegit clone --depth 1 https://github.com/Kevin-Liu-01/Agent-MachinesWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/kevin-liu-01/agent-machines/playcanvas-engine)<a href="https://agentmods.dev/skills/kevin-liu-01/agent-machines/playcanvas-engine"><img src="https://agentmods.dev/badge/skills/kevin-liu-01/agent-machines/playcanvas-engine/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/kevin-liu-01/agent-machines/playcanvas-engine"><img src="https://agentmods.dev/badge/skills/kevin-liu-01/agent-machines/playcanvas-engine.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00093 | $0.05859 |
| Opus 5 | $0.00046 | $0.02929 |
| Sonnet 5 | $0.00019 | $0.01172 |
| Haiku 4.5 | $0.00009 | $0.00586 |
Grade A, and why
playcanvas-engine scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to playcanvas-engine — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 1,063 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PlayCanvas Engine Skill
Lightweight WebGL/WebGPU game engine with entity-component architecture, visual editor integration, and performance-focused design.
When to Use This Skill
Trigger this skill when you see:
- "PlayCanvas engine"
- "WebGL game engine"
- "entity component system"
- "PlayCanvas application"
- "3D browser games"
- "online 3D editor"
- "lightweight 3D engine"
- Need for editor-first workflow
Compare with:
- Three.js: Lower-level, more flexible but requires more setup
- Babylon.js: Feature-rich but heavier, has editor but less mature
- A-Frame: VR-focused, declarative HTML approach
- Use PlayCanvas for: Game projects, editor-first workflow, performance-critical apps
Core Concepts
1. Application
The root PlayCanvas application manages the rendering loop.
import * as pc from 'playcanvas';
// Create canvas
const canvas = document.createElement('canvas');
document.body.appendChild(canvas);
// Create application
const app = new pc.Application(canvas, {
keyboard: new pc.Keyboard(window),
mouse: new pc.Mouse(canvas),
touch: new pc.TouchDevice(canvas),
gamepads: new pc.GamePads()
});
// Configure canvas
app.setCanvasFillMode(pc.FILLMODE_FILL_WINDOW);
app.setCanvasResolution(pc.RESOLUTION_AUTO);
// Handle resize
window.addEventListener('resize', () => app.resizeCanvas());
// Start the application
app.start();
2. Entity-Component System
PlayCanvas uses ECS architecture: Entities contain Components.
// Create entity
const entity = new pc.Entity('myEntity');
// Add to scene hierarchy
app.root.addChild(entity);
// Add components
entity.addComponent('model', {
type: 'box'
});
entity.addComponent('script');
// Transform
entity.setPosition(0, 1, 0);
entity.setEulerAngles(0, 45, 0);
entity.setLocalScale(2, 2, 2);
// Parent-child hierarchy
const parent = new pc.Entity('parent');
const child = new pc.Entity('child');
parent.addChild(child);
3. Update Loop
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 1,063 lines · 93 tokens per session scan A 5b4abe83ccc3
playcanvas-engine is a skill published in the GitHub repository Kevin-Liu-01/Agent-Machines (29 stars, last pushed today), licensed MIT. It adds 93 tokens to every session and 5,859 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to playcanvas-engine, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
okx-cex-portfolio
This skill should be used when the user asks about 'account balance', 'how much USDT do I have', 'my funding account', 'show my positions', 'open positions', 'position P&L', 'unrealized PnL', 'closed positions', 'position history', 'realized PnL', 'account bills', 'transaction history', 'trading fees', 'fee tier'…
maya-import-to-scene
Pipeline stage — structured asset import. Consume an AssetDescriptor produced by maya-asset-source and import the asset (FBX, OBJ, USD) into the current Maya scene via cmds.file(). Handles axis/unit conversion, MaterialMode, PlacementHint, and optional target collection grouping. Returns an ImportToSceneResult with…
rpgmaker-mv-mcp
Use when building, editing or reasoning about an RPG Maker MV game through the RpgMakerMVUltimate MCP server (tools prefixed rpgmaker / the 13 consolidated tools: querydatabase, createdatabaseentry, generatemap, managemapevent, analyzeproject, etc.). Covers the correct workflow so maps, NPCs, chests, shops, doors…
maya-rigging
Authoring stage — character / prop rigging: joints, IK, skin clusters, deformers, blend shapes, control curves, skin weights, constraints, and optional rig framework detection. Use when constructing rigs. Not for keyframe animation (maya-animation), pose libraries (maya-pose-library), or final scene assembly…
maya-dynamics
Authoring stage - classic Maya dynamics primitives: rigid bodies, force fields, and field connections. Use for small simulation setup steps before baking with maya-animation. Not for keyframe editing (maya-animation), mesh modeling (maya-mesh-ops), or viewport output (maya-render).
maya-pose-library
Authoring stage — save / load / mirror character poses as JSON presets. Use for reusable pose libraries on rigged characters. Not for keyframe animation (maya-animation) or rigging setup (maya-rigging).