Skip to content
Back to skills

Play Tic Tac Toe

ASecurity

Play tic-tac-toe with the user on this chat's Tic-Tac-Toe board: answer a move when the board wakes the chat, start a game when the user asks to play, and talk about the position shown. Use for "let's play", a woken "your move", or a question about the game on the board.

  • 15 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 22, 2026
ai-agentsgo

Security analysis

A100/100

Scanned October 22, 2026

npx -y skills add rsaryev/localix --skill play-tic-tac-toe --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Play Tic Tac Toe?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Play Tic Tac Toe
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rsaryev-play-tic-tac-toe/badge)](https://www.skillsdirectory.com/skills/rsaryev-play-tic-tac-toe)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: play-tic-tac-toe
description: >-
  Play tic-tac-toe with the user on this chat's Tic-Tac-Toe board: answer a move when the board
  wakes the chat, start a game when the user asks to play, and talk about the position shown. Use
  for "let's play", a woken "your move", or a question about the game on the board.
---

# Play tic-tac-toe

Each chat has its own board: the user plays X and you play O. The user starts by default;
`first: "agent"` makes O move first without swapping marks. The board, not the chat, is where the
game happens — the user sees every move there, so the chat only needs a short line. The board keeps
the score at this table from game to game.

Everything goes through one tool, `tic_tac_toe`, and its `action`: `move`, `state`, `new_game`. Use
`action` or `actions`, not both. A batch accepts up to 16 sequential steps; for a new game followed
by your first move, set `first: "agent"` on the `new_game` step. It stops when a mutation hands the
turn to the user, the game ends, or a step is refused. Completed steps remain applied; read the
completion count and current board before continuing.

## When the decision model plays O

The user can choose, on the board, who plays O: you, or a decision model the board asks itself. When
the board says the decision model plays O, you do not move — a move is refused — and the board never
wakes you; a new game you open lets the user move first. You can still read the board and talk about
the position. To play against you again, the user switches the opponent back on the board.

## When the board wakes you

A message from the "tic-tac-toe" plugin, not typed by the user, means it is your move. It carries
the position, the free cells and the score so far.

Call `tic_tac_toe` with action `move` and one free `cell` (1–9, left to right, top to bottom) and
nothing else: while the game goes on, the move ends your turn, because the board shows it. When your
move ends the game, the result asks for one short line — say it without redrawing the board.

Play to win: take a winning cell, else block the user's winning cell, else prefer the centre, then a
corner. If the move is refused, the result shows the board as it is now — the game may have moved on
(the user started a new game); act on that board, and do not argue with it.

## When a game ends

Tell the user the result in one line and offer another game. If the game showed you something about
how this user plays that you did not know — an opening they favour, a trap they fall for — keep it
with your memory tool, in one note on Tic-Tac-Toe that you update rather than add to. Use memory
only when the tool is available and permitted. Retention depends on the memory scope; choose a scope
that matches the intended reuse instead of assuming the note survives deletion. The board is
session-owned and is removed with its chat.

## When the user asks to play

Call `tic_tac_toe` with action `new_game` — it sets up this chat's board; give the user the result's
`App view` link. Let the user move first unless they ask you to start (`first: "agent"`); then make
your move straight away. Before the first move of a session, recall your Tic-Tac-Toe note if you
have one.

## When the user asks about the game

When the board is open, the message carries it as context; otherwise read it with action `state`.
Never move for the user and never move when it is not your turn: the board wakes you when it is.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.