Agent skill

AI Skills

by TanStack in TanStack/ai

Portable Agent Skills (SKILL.md) for TanStack AI with @tanstack/ai-skills.

MITAuto-check passedAI & LLM Engineering

Install AI Skills

skills CLI
$ npx skills add TanStack/ai --skill ai-skills -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install TanStack/ai ai-skills --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/TanStack/ai.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/ai-skills/skills/ai-skills .claude/skills/ai-skills && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ai-skills
GitHub stars
3.2k
Token cost
~1.5k tokens
SKILL.md length
451 words
Files
1
Skills in repo
24
Repo updated
First seen
Licence
MIT

At a glance

Portable Agent Skills (SKILL.md) for TanStack AI with @tanstack/ai-skills.

  • Provider-agnostic runtime skills — NOT hosted provider skills (codeExecutionTool/shellTool)
  • SKILL.md covers Two skill features, do not…, Add skills to a chat, Sources and Resources, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Which run in a provider sandbox

What it does

AI Skills is an agent skill from TanStack/ai. Portable Agent Skills (SKILL.md) for TanStack AI with @tanstack/ai-skills. Renders a skill catalog and a loadskill tool via the withSkills middleware so any tool-calling model loads skills on demand, on any provider. Covers the SkillSource interface, inlineSkill/skillDirectory/staticSkills, the aggregate/ dedupe/filter/cache combinators, readskillresource, and the conformance suite. Use for provider-agnostic runtime skills — NOT hosted provider skills (codeExecutionTool/shellTool), which run in a provider sandbox.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in AI & LLM Engineering, covering Structured output and tool calling. It works with TanStack. The repository describes itself as: 🤖 Type-safe, provider-agnostic TypeScript AI SDK for streaming chat, tool calling, agents, and multimodal apps across OpenAI, Anthropic, Gemini, React, Vue, Svelte, and Solid. The licence is MIT.

When your agent uses it

  • Provider-agnostic runtime skills — NOT hosted provider skills (codeExecutionTool/shellTool)
  • Which run in a provider sandbox

Example prompts

  • “/ai-skills”

What it can do on your machine

Read from SKILL.md and the folder at commit 68aeada. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

AI Skills loads about 1.5k tokens when it runs. Until then it costs about 133 tokens; SKILL.md has 451 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~133
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from TanStack/ai at commit 68aeada, republished under its MIT licence (© TanStack). 451 words, ~1,527 tokens.

Download SKILL.mdSave it as .claude/skills/ai-skills/SKILL.md (or your agent's skills folder).
name
ai-skills
description
Portable Agent Skills (SKILL.md) for TanStack AI with @tanstack/ai-skills. Renders a skill catalog and a load_skill tool via the withSkills middleware so any tool-calling model loads skills on demand, on any provider. Covers the SkillSource interface, inlineSkill/skillDirectory/staticSkills, the aggregate/ dedupe/filter/cache combinators, read_skill_resource, and the conformance suite. Use for provider-agnostic runtime skills — NOT hosted provider skills (codeExecutionTool/shellTool), which run in a provider sandbox.
type
core
library
tanstack-ai
library_version
0.0.0
sources
TanStack/ai:docs/skills/agent-skills.md, TanStack/ai:docs/skills/skill-sources.md, TanStack/ai:docs/skills/writing-adapters.md…

TanStack AI Skills

Builds on the ai-core skill in @tanstack/ai. Package: @tanstack/ai-skills.

Portable Agent Skills give a tool-calling model a library of SKILL.md skills it can load on demand, on any provider, with no server sandbox. This is separate from hosted Provider Skills (codeExecutionTool / shellTool), which run in the provider's sandbox and are referenced by ID.

Two skill features, do not confuse them

NeedUse
Model loads SKILL.md at runtime, any providerwithSkills (this package)
Hosted skill runs in a provider sandbox by IDcodeExecutionTool / shellTool
Teach a coding assistant how to use TanStack AIShip a SKILL.md, install via Intent

The portable and hosted paths do not mix in one chat() call: withSkills throws if a code_execution/shell tool in the same call carries skills.

Add skills to a chat

typescript
import { chat, toServerSentEventsResponse } from '@tanstack/ai'
import { anthropicText } from '@tanstack/ai-anthropic'
import { inlineSkill, withSkills } from '@tanstack/ai-skills'

const pptx = inlineSkill({
  name: 'pptx-builder',
  description: 'Build and edit PowerPoint decks with python-pptx.',
  instructions: '# Building a deck\nUse python-pptx. Edit slides, then save.',
})

export async function POST(request: Request) {
  const { messages } = await request.json()

  const stream = chat({
    adapter: anthropicText('claude-sonnet-4-6'),
    messages,
    middleware: [withSkills(pptx)],
  })

  return toServerSentEventsResponse(stream)
}

withSkills adds a catalog to the system prompt and a load_skill tool whose name is constrained to your skill names. It renders <available_skills> XML for Anthropic models and markdown for the rest. Re-loading a skill in the same conversation returns a short "already loaded" marker.

Sources

A SkillSource is bytes only (no filesystem assumption), so the middleware runs on the edge too.

  • inlineSkill({ name, description, instructions, resources? }) — one skill in code or a DB row. Edge-safe.
  • skillDirectory(root, { strict? }) — walk a folder for SKILL.md. Import from @tanstack/ai-skills/node (uses node:fs). Strict by default.
  • staticSkills(catalog) — build-time bundle via skillsCatalogPlugin (Vite). Edge-safe, and .names is a typed union.

Combine with aggregate, dedupe, filter, cache. withSkills([a, b]) is sugar for dedupe(aggregate([a, b])). A single source is never auto-wrapped, so a tenant-scoped source is never cached into a shared bucket.

Show full SKILL.md (187 more words)Show less

Resources

To let the model read a skill's bundled files, pass createResourceTool(source) in tools. withSkills detects it and advertises read_skill_resource. Paths that escape the skill root are rejected.

Skills that carry code

withSkills inventories a skill's scripts/ in the load_skill result but does NOT run them (script execution is a later phase). To let a skill run code, pass your own execution tool to chat({ tools }) alongside withSkills and write the skill so it tells the model to call that tool. withSkills composes with any tools you provide.

ts
import { toolDefinition } from '@tanstack/ai'
import { z } from 'zod'
// Your own runner: a provider sandbox, a Code Mode isolate, a remote worker.
import { runSomewhere } from './shell'

const executeShell = toolDefinition({
  name: 'execute_shell',
  description: 'Run a shell command and return its stdout.',
  inputSchema: z.object({ command: z.string() }),
  outputSchema: z.object({ stdout: z.string() }),
}).server(async ({ command }) => ({ stdout: await runSomewhere(command) }))

// chat({ tools: [executeShell], middleware: [withSkills(source)] })

The skill supplies the command; your tool supplies the ability to run it. Swap in a provider sandbox, a Code Mode isolate, or a remote worker without changing the skill. For hosted skills that run in the provider's own sandbox, use codeExecutionTool / shellTool instead (see provider-skills).

Write a custom source

Implement SkillSource (list + load, optional revision/listResources/ readResource), then validate it with the shipped conformance suite:

typescript
import { runSkillSourceConformance } from '@tanstack/ai-skills/testing'
// Your SkillSource implementation, seeded with the `alpha` / `beta` fixture
// skills the suite expects.
import { myS3Source } from './my-s3-source'
import { fixtures } from './fixtures'

runSkillSourceConformance(() => myS3Source(fixtures), 's3')

Entry points

  • @tanstack/ai-skills — types, inlineSkill, combinators, withSkills, createResourceTool, validateSkill, staticSkills, SkillLimitError.
  • @tanstack/ai-skills/node — skillDirectory, skillsCatalogPlugin (node:fs).
  • @tanstack/ai-skills/testing — runSkillSourceConformance.

Docs

  • Portable Agent Skills: docs/skills/agent-skills.md
  • Skill sources: docs/skills/skill-sources.md
  • Write a skill source: docs/skills/writing-adapters.md
  • Provider (hosted) skills: docs/tools/provider-skills.md

© TanStack, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in packages/ai-skills/skills/ai-skills of TanStack/ai.

Open the folder on GitHubat commit 68aeada

Compare with similar skills

AI Skills next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

AI Skills compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
AI Skills this skillTanStack/ai3.2k—~1.5kAutomated safety check: PassMIT
Tanstack AIsecondsky/claude-skills2271 repos~3.6kAutomated safety check: NotesMIT
Build Agentchmonitor/chmonitor299—~1.8kAutomated safety check: PassGPL-3.0
Planning With Filesjarrodwatts/claude-code-config1.1k5 repos~967Automated safety check: PassNone
Tool Use Data Synthesissunny-glow/Auto-BenchMax1.3k—~3.3kAutomated safety check: PassNone
Agent Harness ConstructionKartikLabhshetwar/mind-mentor1477 repos~500Automated safety check: PassApache-2.0

Similar skills

  • Tanstack AI

    secondsky/claude-skills

    TanStack AI (alpha) provider-agnostic type-safe chat with streaming for OpenAI, Anthropic, Gemini, Ollama.

    227 GitHub starsUsed in 1 repo~3.6k tokens
    AI & LLM EngineeringAuto-check: notes
  • Build Agent

    chmonitor/chmonitor

    Build an AI-agent application end-to-end — from an empty repo or an existing codebase.

    299 GitHub stars~1.8k tokensUpdated 2 days ago
    AI & LLM EngineeringAuto-check passed
  • Planning With Files

    jarrodwatts/claude-code-config

    Transforms workflow to use Manus-style persistent markdown files for planning, progress tracking, and knowledge storage.

    1.1k GitHub starsUsed in 5 repos~967 tokens
    AI & LLM EngineeringAuto-check passed
  • Tool Use Data Synthesis

    sunny-glow/Auto-BenchMax

    Synthesize training data for ANY tool-use / agentic benchmark, in ANY repo.

    1.3k GitHub stars~3.3k tokensUpdated 2 mo ago
    AI & LLM EngineeringAuto-check passed
  • Agent Harness Construction

    KartikLabhshetwar/mind-mentor

    Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates.

    147 GitHub starsUsed in 7 repos~500 tokens
    AI & LLM EngineeringAuto-check passed
  • Reference for designing and tuning production LLM prompts: few-shot examples, chain-of-thought, structured outputs, templates and system prompts.

    40k GitHub stars~1.3k tokensUpdated 3 days ago
    AI & LLM EngineeringAuto-check passed

More from TanStack/ai

All 24 skills in this repo
  • I Have Adhd

    TanStack/ai

    A skill your agent uses when the user invokes /i-have-adhd, says they have ADHD, or asks for ADHD-friendly output.

    3.2k GitHub starsUsed in 5 repos~1.8k tokens
    Auto-check passed
  • PR Sweep

    TanStack/ai

    Sweep open (or listed) PRs with up to 100 parallel agents: security-scan outside contributors, rebase onto main when behind (push --force-with-lease), approve pending first-time-contributor CI when…

    3.2k GitHub stars~4.6k tokensUpdated today
    Auto-check passed
  • A skill your agent uses when wiring honcho() from @tanstack/ai-memory/honcho — a hosted memory adapter where recall is a dialectic answer over the user's representation (no discrete fragments).

    3.2k GitHub starsUsed in 1 repo~457 tokens
    Auto-check passed
  • A skill your agent uses when wiring inMemory() from @tanstack/ai-memory/in-memory — explains setup, options (embedder, extract, topK/minScore), when to pick it (dev/tests/single-process demos), and…

    3.2k GitHub starsUsed in 1 repo~448 tokens
    Auto-check passed
  • A skill your agent uses when wiring redis() from @tanstack/ai-memory/redis in production — covers client setup (ioredis or node-redis via fromNodeRedis), the storage model, client-side ranking…

    3.2k GitHub starsUsed in 1 repo~840 tokens
    Auto-check passed
  • A skill your agent uses when adding a public teaching example or a docs tutorial.

    3.2k GitHub stars~1.4k tokensUpdated today
    Auto-check passed

Works with

Questions about AI Skills

What does AI Skills do?

Portable Agent Skills (SKILL.md) for TanStack AI with @tanstack/ai-skills. AI Skills is an agent skill from TanStack/ai.md) for TanStack AI with @tanstack/ai-skills.

When should I use AI Skills?

AI Skills fits situations like: provider-agnostic runtime skills — NOT hosted provider skills (codeExecutionTool/shellTool); which run in a provider sandbox.

How do I install AI Skills in Claude Code?

Run `npx skills add TanStack/ai --skill ai-skills -a claude-code`. Or copy the skill folder (packages/ai-skills/skills/ai-skills in TanStack/ai) into .claude/skills/ai-skills in your project. Claude Code loads it when a task matches its description.

How do I install AI Skills in Codex?

Run `npx skills add TanStack/ai --skill ai-skills -a codex`. Or copy the skill folder (packages/ai-skills/skills/ai-skills in TanStack/ai) into .agents/skills/ai-skills in your project. Codex loads it when a task matches its description.

Can I use AI Skills in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add TanStack/ai --skill ai-skills -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ai-skills, .gemini/skills/ai-skills, .github/skills/ai-skills and .opencode/skills/ai-skills in your project.

What does AI Skills need to run?

SKILL.md names no scripts, command-line tools or credentials: AI Skills is instructions for the agent only.

Does AI Skills access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is AI Skills safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does AI Skills use?

AI Skills is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does AI Skills use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to AI Skills?

Skills that share tags, products or a category with AI Skills: Tanstack AI (secondsky/claude-skills, 227 stars), Build Agent (chmonitor/chmonitor, 299 stars), Planning With Files (jarrodwatts/claude-code-config, 1.1k stars) and Tool Use Data Synthesis (sunny-glow/Auto-BenchMax, 1.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains AI Skills?

TanStack (a GitHub organization) maintains it in TanStack/ai, which has 3,172 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 8, 2026.

Source: TanStack/ai on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.