tine: Instructions file for Claude Code

CLAUDE.md

tine CLAUDE.md is an instructions file for Claude Code from smythp/tine. It costs 1,352 tokens per session, scanned A, original, Apache-2.0.

Developer instructions for Tine, a command-line tool that lets an AI agent read and control a Linux desktop running GNOME on Wayland. It uses accessibility information and screenshots to find interface elements, then sends keyboard and mouse input.

In plain words
What is it for?
Developing or debugging desktop automation, including reading visible controls, taking screenshots, selecting windows, typing, and moving the mouse.
Why use it?
They document the system architecture, important files, and design constraints for changing software that operates a real desktop.

Instructions file for Claude Code

Written for Claude Code: the file is CLAUDE.md. Also seen: mentions Claude Code; mentions Codex; built for aider.

This is smythp/tine's own configuration. It tells Claude Code how to work on tine itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything tine configures →

View source ↗ smythp/tine
Reuse

Borrowing it

Nothing to install: this file belongs to smythp/tine. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/smythp/tine/master/CLAUDE.md
Clone the repo
git clone --depth 1 https://github.com/smythp/tine

Made for: Claude Code.

Wrote 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.

agentmods badge for tine CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/smythp/tine/claude-md/github.svg)](https://agentmods.dev/instructions/smythp/tine/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/smythp/tine/claude-md"><img src="https://agentmods.dev/badge/instructions/smythp/tine/claude-md/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.

agentmods 80×15 button for tine CLAUDE.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/smythp/tine/claude-md"><img src="https://agentmods.dev/badge/instructions/smythp/tine/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 1,352 This file is loaded in full into every session.
When invoked 1,352 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.01352 $0.01352
Opus 5.5 $0.00541 $0.00541
Sonnet 5.5 $0.00270 $0.00270
Haiku 4.5 $0.00135 $0.00135

Measured 2mo ago against content hash 5139e9da5c04, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

tine CLAUDE.md 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 2mo 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.

CLAUDE.md · 83 lines

How it starts

The opening of the file, as written. The whole thing — 83 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Tine — Agent Guide

CLI tool that lets AI agents drive a GNOME Wayland desktop. Hybrid AT-SPI2 accessibility tree + vision approach.

This file is notes for agents (Claude Code, Codex, Aider, etc.) working inside this repo. For user-facing docs, see README.md.

What this is

Tine is the bridge between an AI coding agent and a physical Linux desktop. It reads the screen (screenshots + accessibility tree) and acts on it (keyboard/mouse injection). Think "Playwright for the desktop" but hybrid — structured accessibility data when available, vision fallback when not.

Architecture

Agent session (local or remote)
  └→ tine CLI (runs on target machine)
       ├→ AT-SPI2 (read UI element tree: roles, names, bounding boxes, states)
       ├→ GNOME Shell extension (screenshots, window enumeration, focus)
       ├→ python-evdev / uinput (keyboard + mouse injection, kernel level)
       └→ ref cache (element ID → bounding box mapping)

No portals, no consent dialogs. Input injection goes through /dev/uinput at the kernel level via python-evdev. Mouse uses EV_ABS, keyboard/typing use EV_KEY. Screenshots go through the bundled GNOME Shell extension's D-Bus API. AT-SPI2 is just D-Bus queries.

CLI surface

tine tree                      # AT-SPI2 tree with element refs
tine tree --app Firefox        # scoped to one app
tine screenshot                # full screen capture via extension
tine screenshot --annotate     # Set-of-Mark overlays
tine screenshot --grid         # labeled coordinate grid (default 5x3: A1..E3)
tine screenshot --grid 10x6    # denser grid — cols x rows
tine screenshot --annotate --grid
tine screenshot --ocr          # OCR text detection (ref_tN)
tine describe --ocr            # include OCR text refs in describe output
tine click ref_t3              # click center of OCR-detected text region
tine click ref_3               # click at ref_3's bounding box center
tine click B3                  # click center of grid cell B3
tine click 450,320             # click at pixel coordinates
tine type "hello world"        # type text via evdev key events
tine key ctrl+c                # key combo
tine activate ref_3            # invoke AT-SPI2 action (bypasses coordinate pipeline)
tine windows                   # list windows (title, position, size, focused)
tine focus Firefox             # raise + focus window via extension D-Bus
tine describe                  # screenshot + tree → combined context for agent

Read the full file on GitHub · 83 lines

Changes

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.

  1. 2mo ago First seen · 83 lines · 1,352 tokens per session scan A 5139e9da5c04

Subscribe to this mod's changes

tine CLAUDE.md is an instructions file published in the GitHub repository smythp/tine (23 stars, last pushed 17d ago), licensed Apache-2.0. It adds 1,352 tokens to every session, about $0.0054 per session on Opus 5.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.

Related

tine CLAUDE.md compared with instructions from other repositories

tine CLAUDE.md next to 6 instructions from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
tine CLAUDE.mdsmythp/tineInstructions file2317d agoApache-2.0A1,352Claude Code
vscode buildNext.instructions.mdmicrosoft/vscodeInstructions file195kyesterdayMITA9,719GitHub Copilot
next.js AGENTS.mdvercel/next.jsInstructions file143kyesterdayMITA7,461Codex, OpenCode
langchain AGENTS.mdlangchain-ai/langchainInstructions file149kyesterdayMITA4,680Codex, OpenCode
vscode oss-third-party-notices.instructions.mdmicrosoft/vscodeInstructions file195kyesterdayMITA5,516GitHub Copilot
vscode copilot-instructions.mdmicrosoft/vscodeInstructions file195kyesterdayMITA3,093GitHub Copilot
deepseek-harness AGENTS.mddeepseek-ai/deepseek-harnessInstructions file274k2d agoMITA4,313Codex, OpenCode