arc-skill

作者 pbshgthm已验证

An agent skill that plays ARC-AGI-3. One rule: say what an action will do before you spend it. Claude Code on Opus 5 finished all 25 public games at 100.00 RHAE in 7,645 actions.

72
Stars
3
Forks
Python
语言
2026/8/24
添加时间

⚠️ 第三方软件声明

本 Skill 为第三方开源软件,独立托管于 GitHub。SkillTip 仅为信息目录,不控制或维护底层仓库。所显示的安全检查为自动化且范围有限,安装前请自行审查源码。

阅读服务条款

安装

添加到你的 Claude Code skills 目录:

# Add to your Claude Code skills
git clone https://github.com/pbshgthm/arc-skill

快速入门

使用 arc-skill 等 Skills 的指南。

安全报告

已验证

上次扫描:—

{
  "status": "PASSED",
  "issues": []
}

README.md

arc-skill

An agent skill that plays ARC-AGI-3 — 25 video games that never explain their rules — from nothing but a game ID.

arc-skill.vercel.app is the full write-up: the method, the misses that mattered, and every run replayable board by board.

npx skills add pbshgthm/arc-skill

export ARC_API_KEY=...
claude "solve ARC-AGI-3 game lp85"

The result

Claude Code on Claude Opus 5, unmodified, with this skill installed and nothing else. Every recorded press was replayed through ARC's own servers afterwards; all 25 games reproduced, none diverged.

Games finished25 of 25
Levels finished183 of 183
RHAE100.00 — the benchmark's own score, and its ceiling
Actions7,645, where the median human needs 17,135
Verified byARC scorecard 24ddb219

The skill is 129 lines of instruction plus a 4,343-line command line tool. Neither one mentions a single one of those 25 games.

The rule

Before the agent may press a button, it writes down what the press will do to the grid — which cells change, and to what. The harness refuses a press that arrives without a prediction, then grades it against the frame that comes back.

arc act ACTION6 58 32 \
  --predict "cell 22,17=b; cell 10,17=4" \
  --because "right arrow: test if cursor moves one tile clockwise"

A prediction that holds means the model of the game is still standing. A miss is worth more: it dates the exact press where belief and reality came apart, and hands over the grid that broke it.

Across the campaign the agent wrote 7,627 graded predictions; 443 missed. Every one of the 25 games contained at least one.

Eight claim forms, joined with ;, each graded on its own — one wrong part is a miss:

FormMeaning
cell X,Y=Vthis cell will hold this colour
move X,Y DX,DYthis shape will shift by this much
region X0:X1,Y0:Y1something in this box will change
vanish X,Ythis shape will be gone
level+1 / winthis press finishes the level / the game
change / noopsomething / nothing will change

The grammar is deliberately small: every form describes something the next frame can contradict.

What the agent gets

Five kinds of instrument. None of them knows anything about any game.

SeeThe board as an image, the exact grid, any crop, what changed, and the animation of any past press.
PressOne button, with a prediction attached. A press without one is refused, and the refusal is free.
PlanA sequence where every step carries its own prediction. It halts at the first miss, so a wrong theory cannot burn the queue.
ComputeOffline Python over the grids already recorded — shape finding, lattice and line detection, motion tracing, pathfinding. It costs no actions.
ModelOptional. Write an executable model of the game, replay it against every recorded press, and A* search it for a plan.

One page of notes

A long game does not fit in a context window — Claude Code compacted its own context 115 times over this campaign. So each game keeps one short page: what is verified, what is still assumed, what to test next. The agent rewrites it as it plays. It is the only thing a compaction cannot take away.

Because the page cannot grow forever, observations have to become rules. The pages stayed at a median of 60 lines, and grew their own headings — one run kept a REFUTED section of eight dead beliefs next to the evidence that killed each one.

Tight rules, free thinking

Two rules pull against each other and both hold at once.

The gate is hard. A press without a falsifiable claim never reaches the game. Not a suggestion in a prompt — the harness refuses it.

The thinking is free. No representation is required. The same unedited skill produced a run that never wrote a line of Python and a run that built a fluid simulator, searched 16 versions of the physics until one reproduced every pour on record cell for cell, then placed 30 blocks in a single plan.

The escalation ladder the runs actually used:

  1. Sentences — prose in the notes file. One game finished eight levels with one missed prediction and no Python at all.
  2. Python — 24 of 25 games, 1,727 calls. Connected components, shortest paths, motion tracing. Free, because it runs on grids already recorded.
  3. A tool — write a simulator for the one mechanic that resists.
  4. A model of the world — the rules tier: an executable model of the whole game, fitted against every recorded press, searched with A*. Taken once, and it never fitted. The game was won on the rung above.

The skill also never says when a mechanic counts as verified — only to batch proven ones and never batch exploration. The agent drew that line itself, and the two modes came out far apart: single test presses missed 37.1% of the time, planned sequences 2.9%, and 91.6% of all presses went into plans.

Requirements

  • Python 3.12+, or uv — the launcher bootstraps a private runtime when the system Python is unsuitable (first use only)
  • Runtime dependencies, installed automatically: arc-agi==0.9.9, numpy>=2,<3, pillow>=10,<13
  • ARC_API_KEY — an ARC Prize API key. Needed once per game to download it into the durable local cache, and always for --mode competition. Runs on an already-cached game need no key and no network.

Install

With skills

The repo is laid out for npx skills, which discovers the skill under skills/, asks which agents to target, and links it into each one:

npx skills add pbshgthm/arc-skill

Useful flags: -g global instead of project-scoped, -a claude-code to skip the agent prompt, -l to list without installing, --copy if symlinks aren't available. pnpm dlx skills add ... works identically and keeps npm out of it.

By hand

Skills are auto-discovered from a per-platform directory. Symlink skills/arc-skill/ into it — or copy, if you don't want updates from this repo.

# Claude Code — one project (use ~/.claude/skills for every project)
mkdir -p .claude/skills && ln -s "$PWD/skills/arc-skill" .claude/skills/arc-skill

# Codex
mkdir -p .agents/skills && ln -s "$PWD/skills/arc-skill" .agents/skills/arc-skill

Anywhere else: point the agent at skills/arc-skill/SKILL.md and tell it to read the file completely before starting. Nothing in the skill depends on a particular agent.

Quickstart

Ask the agent to "solve ARC-AGI-3 game <GAME_ID>" and it takes over from here. To drive the harness yourself:

ARC="/path/to/arc-skill/skills/arc-skill/scripts/arc"

mkdir -p ~/runs/ls20 && cd ~/runs/ls20   # one directory = one run
"$ARC" start ls20                        # local simulator, competition semantics
"$ARC" act ACTION1 --predict "move 12,5 0,-1"
"$ARC" status                            # full picture + notes

start is idempotent and crash-safe: rerun it after any interruption and the run resumes, or is replayed exactly. Use --mode competition for the live remote server (single run, ~15-minute idle lease, no replay recovery).

Commands: start, status, view, act, commit, reset, python, and rules {help,init,replay,solve}. Every one has --help.

Layout

skills/arc-skill/
├── SKILL.md                    # the doctrine — what the agent reads
└── scripts/
    ├── arc                     # launcher: resolves a usable Python, execs the CLI
    ├── arc_cli.py              # entry point (PEP 723 deps for `uv run`)
    ├── broker_server.py        # per-run game-session process
    └── arc_skill/
        ├── cli.py              # subcommands, argument surface, `start` bootstrap
        ├── core.py             # run paths, append-only event log, atomic writes, lock
        ├── broker.py           # arc-agi adapter, game cache, remote lease
        ├── live.py             # act / commit / reset, crash replay, level archives
        ├── predictions.py      # the claim vocabulary: parsing and grading
        ├── perception.py       # transition stories, components, lattices, motion
        ├── analysis.py         # the `arc python` console: namespace, BFS, A*
        ├── inspect.py          # status and view: grid text, crops, nudges, banners
        ├── evidence.py         # board and frame rendering to PNG, history lines
        └── rules.py            # rules tier: contract, history replay, A* search

Doctrine and harness are co-designed: every rule in SKILL.md is one the harness can enforce or grade, and every harness feature exists to make one rule cheap to follow.

A run directory is anywhere you cd to; the harness owns .arc/ inside it (config, events.jsonl, rendered images, recordings, NOTES.md, level archives). Only .arc/NOTES.md is ever hand-edited.

Environment variables

VariableEffect
ARC_API_KEYARC Prize API key — game downloads and competition mode
ARC_SKILL_MODEDefault mode when --mode is absent (local | competition)
ARC_SKILL_CACHE_DIROverride the durable game cache (default ~/.cache/arc-skill/arcade)
XDG_CACHE_HOMECache base when ARC_SKILL_CACHE_DIR is unset
AA3_CACHE_DIROptional donor cache adopted on first use

By Poobesh Gowtham · @pbshgthm. August 2026. All 25 public games, Claude Code on Claude Opus 5, replayed and verified by ARC on scorecard 24ddb219.

常见问题

What is arc-skill?

arc-skill is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by pbshgthm. An agent skill that plays ARC-AGI-3. One rule: say what an action will do before you spend it. Claude Code on Opus 5 finished all 25 public games at 100.00 RHAE in 7,645 actions. It has 72 GitHub stars.

Is arc-skill safe to use?

Yes. arc-skill passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.

How do I install arc-skill?

Clone the repository with "git clone https://github.com/pbshgthm/arc-skill" and add it to your Claude Code skills directory (see the Installation section above).

What programming language is arc-skill written in?

arc-skill is primarily written in Python. It is open-source under pbshgthm on GitHub, so you can review or fork the full source.

Are there alternatives to arc-skill?

Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh arc-skill against similar tools.

评论 (0)

暂无评论,成为第一个分享想法的人!

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI 智能体ai-agentsbrainstorming
查看详情

hermes-agent

by NousResearch

10

The agent that grows with you

234,43747,175Python
AI 智能体ai-agentsagent-orchestration
查看详情

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI 智能体claude-codeai-tools
查看详情

claude-code

by anthropics

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

120,03119,897Shell
AI 智能体
查看详情

开发者还喜欢

基于喜欢此 Skill 的开发者投票和收藏

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI 智能体ai-agentsbrainstorming
查看详情

hermes-agent

by NousResearch

10

The agent that grows with you

234,43747,175Python
AI 智能体ai-agentsagent-orchestration
查看详情

n8n

by n8n-io

12

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

201,88160,308TypeScript
MCP 服务器apisai-tools
查看详情

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI 智能体claude-codeai-tools
查看详情