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 kennyzir/7deer_skills --skill itchio-new-game-huntgit clone --depth 1 https://github.com/kennyzir/7deer_skillsWrote 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/kennyzir/7deer_skills/itchio-new-game-hunt)<a href="https://agentmods.dev/skills/kennyzir/7deer_skills/itchio-new-game-hunt"><img src="https://agentmods.dev/badge/skills/kennyzir/7deer_skills/itchio-new-game-hunt/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/kennyzir/7deer_skills/itchio-new-game-hunt"><img src="https://agentmods.dev/badge/skills/kennyzir/7deer_skills/itchio-new-game-hunt.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00045 | $0.05179 |
| Opus 5 | $0.00023 | $0.02589 |
| Sonnet 5 | $0.00009 | $0.01036 |
| Haiku 4.5 | $0.00005 | $0.00518 |
Grade A, and why
itchio-new-game-hunt 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 4d 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.
How it starts
The opening of the file, as written. The whole thing — 423 lines — stays where its author put it; the contents beside it link to each section on GitHub.
itch.io New Game Hunt → SEO Arbitrage Discovery
核心理念
itch.io 新游套利的黄金窗口:游戏刚上线 → Google 索引不完整 → 搜索竞争低 → 第一时间建站截获流量。本 skill 专注发现环节:从 itch.io 新游列表中筛选出「有 SEO 套利价值」的游戏。
筛选漏斗(4 层)
itch.io /newest (36/page)
↓ 第 1 层: Play in browser
~20 games
↓ 第 2 层: 详情页信号扫描 + 评分
~5-8 games
↓ 第 2.5 层: Google Trends 搜索需求验证
~3-5 games(砍掉搜不到的)
↓ 第 3 层: 竞品度评估
1-3 高价值候选
Phase 1:列表页批量发现
目标 URL
https://itch.io/games/newest/platform-web/free
注意:itch.io 有 Cloudflare 安全验证。如果被拦截,回退到
/games/newest然后靠 CSS 选择器过滤 "Play in browser"。
提取方法
在 /games/newest 页面的浏览器 console 执行:
(() => {
const cells = document.querySelectorAll('.game_cell');
return [...cells].map(cell => {
const titleEl = cell.querySelector('.title, .game_title');
const title = titleEl ? titleEl.textContent.trim() : '';
const link = cell.querySelector('a[data-action="game_grid"], a.thumb_link');
const url = link ? link.getAttribute('href') : '';
const dataText = cell.querySelector('.game_cell_data')?.textContent || '';
const hasPlayInBrowser = /Play in browser/i.test(dataText);
const genreEl = cell.querySelector('.game_genre');
const genre = genreEl ? genreEl.textContent.trim() : '';
const authorEl = cell.querySelector('.game_author a');
const author = authorEl ? authorEl.textContent.trim() : '';
const imgEl = cell.querySelector('img');
const thumbUrl = imgEl ? (imgEl.src || imgEl.getAttribute('data-lazy_src') || '') : '';
return { title, url, author, genre, thumbUrl, hasPlayInBrowser };
}).filter(g => g.hasPlayInBrowser && g.title);
})()
关键过滤:
- ✅
hasPlayInBrowser === true→ 才能建站内嵌 - ❌ 游戏名为空 → 跳过
- ❌ 标题含
[WIP]/[Demo]/[Prototype]→ 未完成品,跳过 - ⚠️ 标题是非英语(如纯中文/阿拉伯语)→ 英语搜索流量有限,标注
NON_EN
输出: 第一轮筛选列表(通常 15-22 个/页)
Phase 2:详情页信号扫描(逐个)
对 Phase 1 的每个候选游戏,进入详情页提取信号。
重要:避免每次点击 Embed 按钮
Embed 按钮触发 modal dialog,太低效。改用以下方式:
方法 A:直接拼接 embed URL(推荐)
itch.io game_id 在页面 HTML 中有多处出现:
// 在详情页 console 提取 game_id
const embedLink = document.querySelector('a[href*="/embed/"]');
const dataGameId = document.body.getAttribute('data-game_id');
const pageScripts = [...document.querySelectorAll('script')]
.find(s => s.textContent.includes('"id":'))?.textContent;
const idMatch = pageScripts?.match(/"id":(\d+)/);
const gameId = dataGameId || (embedLink?.href?.match(/\/embed\/(\d+)/)?.[1]) || (idMatch?.[1]);
// embed URL = `https://itch.io/embed/${gameId}`
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.
- 4d ago Changed · -5 lines b45aa63c051a
- 13d ago First seen · 428 lines · 45 tokens per session scan A 2de5491cdc4b
itchio-new-game-hunt is a skill published in the GitHub repository kennyzir/7deer_skills (313 stars, last pushed 4d ago), licensed MIT. It adds 45 tokens to every session and 5,179 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
design-lenses
Critique a game's design through Schell's lenses, MDA and systems thinking, ranking findings by severity with fixes. Design-level review, not bugs or feel tuning.
teach-me
Teach the user to build browser games themselves across sessions, by building real games together. Not for building a game for them.
roblox-audio
Roblox audio — the modern modular audio graph (AudioPlayer, AudioEmitter, AudioListener, Wire, AudioTextToSpeech) and the legacy Sound/SoundGroup system. Covers 2D vs 3D audio, spatial attenuation, effects (Equalizer, Compressor, Reverb, Echo, Distortion), TTS/STT, acoustic simulation, asset permissions and the 2022…
roblox-open-cloud
Roblox Open Cloud REST API for accessing data stores, assets, universes, places, users, groups, subscriptions, and Luau execution from outside the engine or via HttpService. Covers authentication (API keys, OAuth 2.0, avoiding legacy cookie auth), scopes and least-privilege, IP allowlists, key rotation and the 60-day…
roblox-animation
Modern Roblox animation and tweening — Animator/AnimationTrack over deprecated Humanoid:LoadAnimation, IKControl for procedural posing, marker-driven events, and TweenService for UI and 3D properties. Covers priorities, caching, the Animation Editor workflow, UI scale/AnchorPoint best practices, typewriter effects…
roblox-datastores
Safety-oriented Roblox DataStore guidance for reducing data loss, throttling, races, and quota exhaustion. Covers DataStore vs OrderedDataStore, UpdateAsync for atomic writes, versioning and metadata for recovery, budgets and rate limits, player profile and session-locking patterns, leaderboards, RTBF, and integration…