AI Agent Skills
Every @northguild/* package ships TanStack Intent
skill files (SKILL.md) inside the npm tarball. Each skill is a self-contained,
versioned bundle of guidance — API surface, naming conventions, and Temporal
patterns — routed to a specific task. Rather than hand-holding an agent through
manual node_modules traversal, the Intent CLI loads the relevant skill on
demand so the agent works with the right GMT methods for the job.
Install (one time)
Section titled “Install (one time)”intent install writes a managed skill-loading block into AGENTS.md (or
CLAUDE.md / .cursorrules) at the root of your project. The block is tagged
<!-- intent-skills:start --> so future intent runs can update it in place:
npx @tanstack/intent@latest installIntent auto-detects your package manager and generates the correct runner
(npx / pnpm dlx / yarn dlx / bunx) in the block it writes.
Discover skills
Section titled “Discover skills”When a task arises, list every available skill across installed @northguild/*
packages:
npx @tanstack/intent@latest listSample output:
@northguild/gmt - gmt-basics - gmt-arithmetic - gmt-timezone - gmt-integration
@northguild/gmt-eslint - first-time-setup - migration-refactor - ci-enforcementLoad a skill
Section titled “Load a skill”Load the skill that matches the task into the agent’s context:
npx @tanstack/intent@latest load @northguild/gmt#gmt-basicsThe lint packages use the same load <package>#<skill> form:
npx @tanstack/intent@latest load @northguild/gmt-eslint#first-time-setupnpx @tanstack/intent@latest load @northguild/gmt-oxlint#migration-refactornpx @tanstack/intent@latest load @northguild/gmt-biome#ci-enforcementMap tasks to skills
Section titled “Map tasks to skills”For projects that want explicit routing, pass --map to bind a task keyword to a
skill so intent list highlights the right match automatically:
npx @tanstack/intent@latest install --map "basics=gmt-basics" --map "arithmetic=gmt-arithmetic" --map "timezone=gmt-timezone" --map "lint=first-time-setup"Allowlist skills
Section titled “Allowlist skills”To restrict which skills an agent may load, add an intent.skills allowlist to
your package.json:
{ "intent": { "skills": ["@northguild/gmt#gmt-basics", "@northguild/gmt#gmt-timezone"] }}Stale check (optional)
Section titled “Stale check (optional)”Verify that loaded skills reference non-outdated source docs and regenerate the managed block:
npx @tanstack/intent@latest staleConsumer-facing skills
Section titled “Consumer-facing skills”These are the skills a consumer reaches for day to day. Each is a short routing pointer (about 30 to 60 lines). It carries the core rules and the common pitfalls, then points the agent to the documentation site and to the JSDoc in the installed package for signatures, locale matrices and code examples. It is not an API dump:
@northguild/gmt
Section titled “@northguild/gmt”| Slug | Task area | Source folders it points to |
|---|---|---|
gmt-basics | Current values, parse, format, relative time, compare, validate | src/plain/, src/zoned/ |
gmt-arithmetic | Add/subtract, diff, durations, interval range math | src/plain/, src/duration/, src/plain/interval/ |
gmt-timezone | Zoned get/format/convert, DST disambiguation | src/zoned/, src/unix/, src/utc/ |
gmt-integration | Cache keys, router/query params, lint package selection | the lint package READMEs |
Skills are routing pointers, not API documentation. The skill files carry the core rules and common pitfalls. For a signature, a locale matrix or an example, the agent should read this site (
https://gmt-dox.northguild.workers.dev/llms.txtlists every page, and each page has a.mdtwin) and the JSDoc of the specific function it intends to call in the installed package.
@northguild/gmt-eslint / gmt-oxlint / gmt-biome
Section titled “@northguild/gmt-eslint / gmt-oxlint / gmt-biome”| Slug | Guide | Description |
|---|---|---|
first-time-setup | Lint Package Selection | Install and wire the lint package; verify Date-ban rules active |
migration-refactor | — | Migrate existing code off Date APIs |
ci-enforcement | — | Set up CI enforcement of lint rules |
Contributor skills
Section titled “Contributor skills”Skills intended for library maintainers — not shipped in the npm tarball
(excluded via .npmignore). These are for contributing to @northguild/gmt
itself:
| Slug | Description |
|---|---|
issue-creation | Create feature requests with proper details for maintainers |
pr-contribution | Contribute improvements via pull requests |
new-method-implementation | Implement or extend a gmt API in packages/gmt/src |
unit-test-generation | Write or update gmt unit tests |
api-expansion-workflow | Handle feature requests for missing gmt functionality |
Load a contributor skill only when the user is contributing to @northguild/gmt
itself:
npx @tanstack/intent@latest load @northguild/gmt#issue-creationSee also
Section titled “See also”- Lint Package Selection — choose the right
@northguildlint package - Application Integration — cache keys, routers, tables
- Core Rules — the contract the skills enforce