tink

tink is a skill for Claude Code from dotoricode/tink-harness. It costs 25 tokens per session (1,781 once invoked), scanned A, original, MIT.

A task-planning and checking system for Claude Code that creates small, focused work setups called harnesses. It records the current task, tools, checks, and reusable lessons.

In plain words
What is it for?
Starting tasks, choosing or creating a focused work setup, running safe first steps, verifying results, and recording approved lessons.
Why use it?
It helps keep complex coding work focused by choosing only the tools needed for the current task and checking whether the promised work was completed.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: mentions Claude Code; mentions Codex.

Part of the tink plugin — 9 skills, 9 commands, 1 hook shipped together

Install

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.

agentmods
npx agentmods add skills/dotoricode/tink-harness/tink
Any agent
npx skills add dotoricode/tink-harness --skill tink
Clone the repo
git clone --depth 1 https://github.com/dotoricode/tink-harness

Made for: Claude Code.

Or install tink, the plugin that ships this one along with the rest of its 9 skills, 9 commands, 1 hook.

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 tink

README.md
[![agentmods](https://agentmods.dev/badge/skills/dotoricode/tink-harness/tink.svg)](https://agentmods.dev/skills/dotoricode/tink-harness/tink)
Your own site
<a href="https://agentmods.dev/skills/dotoricode/tink-harness/tink"><img src="https://agentmods.dev/badge/skills/dotoricode/tink-harness/tink.svg" alt="Measured on agentmods" height="20"></a>
Per session 25 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,781 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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.00025 $0.01781
Opus 5 $0.00013 $0.00890
Sonnet 5 $0.00005 $0.00356
Haiku 4.5 $0.00003 $0.00178

Measured 5d ago against content hash 4ce403cf8014, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

tink 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 5d 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/skills/tink/SKILL.md · 78 lines

How it starts

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

Tink

Tink helps Claude cast the smallest useful harness, materialize it as run state, and start the work. It keeps the active harness/tool set small because too many tools can hurt performance, and it can suggest small habit-aware calibrations from observed signals.

Core philosophy

Tink is one self-growing skill, not a pile of commands and not a skill recommendation list.

It should:

  1. understand the task,
  2. write a small task contract,
  3. choose the smallest effective harness/tool set,
  4. replace heavy harnesses when the current stage or token budget makes them harmful,
  5. build or synthesize a narrow harness when none fits,
  6. apply it only after approval,
  7. create .tink/current/ run state before deeper work,
  8. execute the first safe step after approval,
  9. verify the promised checks,
  10. avoid repeating the same mistake,
  11. remember reusable lessons only after approval,
  12. keep the harness set small by purging or honing it over time.

Command surface

Use only these commands:

  • /tink:setup: configure language, scope, git tracking, and hook policy.
  • /tink:cast: main path. Quick-triage the request first (simple and safe tasks start immediately without ceremony); otherwise choose/build/synthesize a harness, run Stitch, create run state, start work, and propose reusable learning. Long plans (3+ steps) end every response with a progress bar block.
  • /tink:verify: run the checks promised in .tink/current/contract.json and record evidence.
  • /tink:list: inspect harnesses and lightweight usage signals.
  • /tink:frog: propose unused or redundant harness removal. Never delete without approval.
  • /tink:weave: improve active harnesses based on real use, failures, and corrections.
  • /tink:update: detect install source, diagnose user-modified files, and show the safe update command.

Operating rules

  1. Create or update .tink/current/contract.json for non-trivial runs: task type, risks, success conditions, forbidden actions, verification, and evidence.
  2. Read .tink/rules/index.json before loading harness bodies when it exists. Use contract facts to choose only relevant harnesses, checks, context paths, and opt-in guard candidates. Load matching mandatory rules first, retrieve only relevant retrievable rules by facts or keywords, and record loaded rule ids by phase in .tink/current/session.json. When rules include select_harnesses, include_paths, checks, reason, or risk, record the selected context/checks and the rule reason in context-map.json or contract.json instead of silently loading extra context.
  3. Read .tink/harnesses/index.json before loading harness bodies.
  4. Read small approved memory files when present: .tink/memory/mistakes.md, preferences.md, lessons.md.
  5. Prefer the smallest useful harness set. Use context footprint, not a universal hard cap: tiny harnesses may stack, large harnesses load one at a time after approval, and meta harnesses should reduce or replace context rather than pile on.
  6. If .tink/current/ exists and continuity is uncertain, read the current files, summarize goal / last safe point / next step / open questions / verification, then ask resume/archive/replace/cancel before continuing.
  7. Run the synthesis probe on the initial harness choice. The probe produces one of three outcomes: strong fit (0-1 yes), generic fit (2-3 yes), or no fit (4-5 yes or no harness matches). Strong fit keeps the harness; generic fit adds a run-only draft; no fit loads harness-synthesis.
  8. Treat GJC-style visible-thinking workflows as ordinary Tink harness choices, not new commands: use requirements-interview for ambiguous ideas, plan-consensus for broad plans or architecture, goal-checkpoint for long runs with 2-6 current-run goals, and delegation-brief for safe handoff or parallel-work briefs.
  9. If no existing harness fits, use harness-synthesis to draft a narrow domain-specific harness instead of forcing a bad fit.
  10. If too many tools, skills, agents, or harnesses are available, use harness-curation to choose the smallest effective set before loading more context.
  11. If lightweight signals show recurring context, token, prompt-quality, output-length, reset, or evidence habits, use harness-curation to make one advisory recommendation.
  12. When research notes, examples, prior failures, or user corrections are available, extract behavior-shaping rules: triggers, decision rules, checks, stop conditions, recovery, and evidence.
  13. Run Stitch once before committing to .tink/current/: evaluate every time, show exactly one proposal only for high-impact quality or safety branches, and use configured language.
  14. Use soft Stitch choices Approve, Add requirements, Continue as-is or localized equivalents; use hard choices Approve, Add requirements, Cancel only.
  15. Hard gates must not offer Continue as-is or 이대로 진행, and Stitch may change method or order but not the user's goal without separate approval.
  16. Treat Reusable State Save Gate as a separate hard approval gate for .tink/memory/*, .tink/harnesses/*, .tink/rules/*, .tink/config.json, .claude/, and template/plugin files that affect future installs.
  17. Current-run approval never authorizes reusable-state writes; before saving reusable state, show operation, destination files, exact entry or patch summary, reusable reason, sensitive content excluded, and rollback/removal path.
  18. Before saving a reusable rule graph update, run a structural gate: duplicate, breadth, evidence, verification, Claude Code/Codex compatibility, macOS/Windows compatibility, and portable commands. AI may propose a rule; saving it still requires separate approval.
  19. /tink:frog may inspect rule quality as well as harness quality. Prefer keep, rewrite, split, merge, or needs-evidence recommendations before any removal proposal.
  20. Ask for approval before applying, saving, purging, honing, or installing enforcement hooks.
  21. After approval, create .tink/current/plan.md, checks.md, steps.json, notes.md, answers.md, contract.json, session.json, context-pack.md, context-map.json, and excluded-context.md. If selected, also create goals.json for goal-checkpoint and delegation.md for delegation-brief.
  22. Do not stop at recommendation. Execute the first safe step after run state exists.
  23. Run /tink:verify behavior before final when contract.json lists required checks. If .tink/config.json has completion_policy: "strict", do not call the run done until required checks are represented in .tink/current/verification.json, .tink/current/evidence.md exists, and remaining risk is stated.
  24. Store reusable memory or rule updates only after separate Reusable State Save Gate approval.
  25. If a check fails, update .tink/current/notes.md, state the failure, last safe point, and next single action. Append compact friction to .tink/maintenance/friction.jsonl when it exists. Feed repeated failures to /tink:weave.
  26. Keep context compact. Do not paste raw logs or full diffs.
  27. Use calm, clear, concise language. Prefer plain everyday words over technical terms if a simpler word works. No jokes.

Read the full file on GitHub · 78 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. 5d ago First seen · 78 lines · 25 tokens per session scan A 4ce403cf8014

Subscribe to this mod's changes

tink is a skill published in the GitHub repository dotoricode/tink-harness (1 stars, last pushed 1mo ago), licensed MIT. It adds 25 tokens to every session and 1,781 once invoked, about $0.0001 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-31.

Related

Other skills, from other repositories

build-teaql-app

Build or change a TeaQL application in Java, Rust, Go, Swift, Python, C#/.NET, or TypeScript, including Kotlin/JVM applications that consume Java-generated libraries. Mandatory order: first draft and save a complete KSML model, then verify the client and evaluate that saved model, repair it through repeated evaluation…

teaql/teaql-agent-kit · 112 tokens

moai-workflow-worktree

Git worktree management for parallel SPEC development with isolated workspaces, automatic branch registration, and seamless MoAI-ADK integration. Use when setting up parallel development environments.

modu-ai/moai-adk · 41 tokens

moai-kanban-foreman

One unattended kanban foreman iteration: watch the backlog queue, dispatch the next operator-picked card to an isolated worker, collect completion evidence on read (not on claims), and report. This is the body the project's loop.md driver invokes each iteration of a bare /loop; it can also be invoked directly to test…

modu-ai/moai-adk · 76 tokens

moai-workflow-thinking

Sequential Thinking MCP for structured step-by-step analysis via --deepthink flag. Separate from UltraThink which is Claude's native extended reasoning mode. Use for multi-step analysis or architecture decisions.

modu-ai/moai-adk · 43 tokens

moai-ref-ui-polish

UI polish and interface-completion reference: the small visual details — concentric border radius, optical alignment, shadow-vs-border, motion easing, typography smoothing, tabular numbers, icon stroke weight, hit areas — that separate polished interfaces from generic ones. Agent-extending skill that amplifies…

modu-ai/moai-adk · 98 tokens

moai-domain-uiux

UI/UX design systems specialist covering accessibility, icons, theming, design tokens, and user experience patterns. Use when working on design systems, WCAG compliance, ARIA patterns, or dark mode theming.

modu-ai/moai-adk · 49 tokens