Arc Skill logo

Arc Skill

Community
pbshgthm
arc-skill

Solve an interactive hidden-rule ARC-AGI-3 game from its game ID. Contains the complete playing doctrine (predict before every action, graded claims, one-page notes, optional executable-rules search) plus the `arc` harness the agent drives. Use whenever asked to solve, play, or continue an ARC-AGI-3 game.

Overview

Publisherpbshgthm
Repositoryarc-skill
Skill namearc-skill
Stars
89
Forks
4
Bundled files
14
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 14 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by pbshgthm on GitHub. Read the source before you install it.

Installation

Install the Arc Skill AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/pbshgthm/arc-skill/tree/main/skills/arc-skill
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/pbshgthm/arc-skill.git /tmp/arc-skill
mkdir -p .claude/skills
cp -r /tmp/arc-skill/skills/arc-skill .claude/skills/arc-skill
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Arc Skill in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Arc Skill on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Arc Skill is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Arc skill

Set the launcher once, work inside one directory per game, then start or resume:

bash
ARC="<this-skill-directory>/scripts/arc"   # absolute path
mkdir -p <run-dir> && cd <run-dir>         # one directory = one run
"$ARC" start <GAME_ID>

start defaults to a local simulator with competition semantics: one logical run, append-only history, paid resets, completed levels never lost. It is crash-safe — after any interruption, rerun "$ARC" start <GAME_ID> and the run is resumed or replayed exactly. Use --mode competition (live remote server, ~15-minute idle lease, no replay recovery) only when the user explicitly asks. Never create a second run for the same game, never inspect the game's source or private state, and never edit .arc/ by hand except NOTES.md.

The game

A 64×64 board of 16 colors, hidden rules, several levels. Interface priors (not guarantees): ACTION1/2/3/4 = up/down/left/right, ACTION5 = interact, ACTION6:x,y = click at x=column y=row, ACTION7 = undo. Availability can change after every action.

Finish first. Historically every lost point came from unfinished games, not from extra actions. Early levels are usually cheap tutorials: a wrong action that teaches a mechanic beats a minute of deliberation. Act early, act often, learn from every grade. Efficiency only matters once finishing is likely.

The loop — look, predict, act, compare, note

  1. Look: open the printed IMAGE; read the worded TRANSITION story.
  2. Predict + act: every action requires --predict; the harness grades it:
bash
"$ARC" act ACTION1 --predict "move 12,5 0,-1"
"$ARC" act ACTION6 3 14 --predict "cell 3,14=9; region 0:8,10:20" --because "test button"
  1. Compare: read the ✓/✗ grade, the worded TRANSITION story, and the cell-exact DIFF before/after masks in the result (arc view re-renders them for any event). A ✗ is the most valuable thing that can happen — reality just corrected you for one action.
  2. Note: keep .arc/NOTES.md to one page with three sections — Verified (cite event ids), Assumed / open questions, Plan. After a ✗, fix the notes before the next action. arc status prints the file in full, so it is also your recovery story after any context loss.

Claim vocabulary (full reference: "$ARC" act --help): noop, change, cell X,Y=V, move X,Y DX,DY, vanish X,Y, region X0:X1,Y0:Y1, level+1, win; several separated by ;. Coordinates are x=column, y=row, like ACTION6. Free text is allowed and merely claims "something changes" — prefer one specific claim; it grades sharper and teaches more.

Batching proven mechanics

Once a mechanic is verified, stop paying one command per step — batch with a claim on every step; execution halts at the first miss so a wrong theory cannot burn the rest of the queue:

bash
"$ARC" commit \
  --step "ACTION4 :: move 12,5 1,0" \
  --step "ACTION4 :: move 13,5 1,0" \
  --step "ACTION1 :: level+1"

Batch only movement you can predict cell-exactly or level-exactly; never batch exploration.

Levels, consumables, reset

  • Completing a level archives your notes to .arc/levels/. The new level may reuse mechanics — treat every earlier Verified claim as Assumed until it survives one test on the new board (status reminds you until the notes change).
  • An object that vanished and never came back is a consumable. Spend consumables last, after reversible probes; before an irreversible-looking action, prefer ACTION7 (undo) tests when available.
  • "$ARC" reset --because "<why this board is unrecoverable>" rewinds only the current level, for the price of one action. After GAME_OVER the reason may be omitted. Completed levels and history are never lost.

When a level resists — the rules tier (optional)

Status nudges you after many actions or repeated misses on one level. Then, and only then, escalate from prose to executable rules: write a plain rules.py (grounding, step, actions, goal), verify it against the entire recorded history, and let A* search find the plan. Each plan step carries its own prediction, so live execution still halts on the first surprise.

bash
"$ARC" rules help      # the compact contract
"$ARC" rules init      # template; then edit rules.py
"$ARC" rules replay    # must fit or gap on every recorded transition
"$ARC" rules solve     # writes .arc/plan.json
"$ARC" commit @.arc/plan.json

Model only verified mechanics; mark everything else Unknown("why") — replay reports gaps honestly instead of pretending a fit. This tier is never required and never worth it before the game has taught you its mechanics.

Evidence tools

bash
"$ARC" status                       # full picture + notes; run after context loss
"$ARC" view --grid                  # exact 0-f pixels
"$ARC" view --crop 8:24,10:30       # exact half-open crop
"$ARC" view --event 12 --frames     # animation frames of a past action
"$ARC" python 'connected_components(grid)'
"$ARC" python 'shortest_path((r0,c0),(r1,c1), passable_mask)'

arc python preloads every settled board (grid, previous, frames, transitions, actions), NumPy, perception helpers, BFS, and A* — free offline computation; use it for parsing and pathfinding instead of paid probing.

Install location

This folder is agent-agnostic. Copy it into the platform's auto-discovered skill directory (Claude Code: .claude/skills/arc-skill/, Codex: .agents/skills/arc-skill/). From an unrecognized location, instruct the agent to read this SKILL.md completely before starting.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Arc Skill AI skill do?

Solve an interactive hidden-rule ARC-AGI-3 game from its game ID. Contains the complete playing doctrine (predict before every action, graded claims, one-page notes, optional executable-rules search) plus the `arc` harness the agent drives. Use whenever asked to solve, play, or continue an ARC-AGI-3 game.

Why use Arc Skill on TypingMind?

Because you install it once and use it with any model. Arc Skill is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Arc Skill in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/pbshgthm/arc-skill/tree/main/skills/arc-skill. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Arc Skill?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Arc Skill?

As many as you like. As long as a model supports skills, you can use Arc Skill with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Arc Skill AI skill free?

It is published on GitHub by pbshgthm. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇