Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
open-circle avatar

Repo Structure Navigate

  • 19 installs
  • 8.9k repo stars
  • Updated August 2, 2026
  • open-circle/valibot

Helps with ai & agent building tasks during AI-assisted development.

About

repo-structure-navigate is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • repo-structure-navigate
  • AI & Agent Building
  • AI-coding skill

Repo Structure Navigate by the numbers

  • 19 all-time installs (skills.sh)
  • Ranked #10,587 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/open-circle/valibot --skill repo-structure-navigate

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs19
repo stars8.9k
Last updatedAugust 2, 2026
Repositoryopen-circle/valibot

What it does

Helps with ai & agent building tasks during AI-assisted development.

Files

SKILL.mdMarkdownGitHub ↗

Valibot Repository Structure

Monorepo Layout

valibot/
├── library/          # Core valibot package (zero dependencies)
├── packages/
│   ├── i18n/         # Translated error messages (25+ languages)
│   └── to-json-schema/  # JSON Schema converter
├── codemod/
│   ├── migrate-to-v0.31.0/  # Version migration
│   └── zod-to-valibot/      # Zod converter
├── website/          # valibot.dev (Qwik + Vite)
├── brand/            # Brand assets
├── skills/           # Agent skills (this folder)
└── prompts/          # Legacy AI agent guides

Core Library (/library/src/)

Directory Structure

DirectoryPurposeExamples
schemas/Data type validatorsstring/, object/, array/, union/
actions/Validation & transformationemail/, minLength/, trim/, transform/
methods/High-level APIparse/, safeParse/, pipe/, partial/
types/TypeScript definitionsschema.ts, issue.ts, dataset.ts
utils/Internal helpers (prefixed _)_addIssue/, _stringify/, ValiError/
storages/Global stateConfig, message storage

Schema Categories

  • Primitives: string, number, boolean, bigint, date, symbol, blob, file
  • Objects: object, strictObject, looseObject, objectWithRest
  • Arrays: array, tuple, strictTuple, looseTuple, tupleWithRest
  • Advanced: union, variant, intersect, record, map, set, lazy, custom
  • Modifiers: optional, nullable, nullish, nonNullable, nonNullish, nonOptional

Action Types

Validation (return issues): email, url, uuid, regex, minLength, maxValue, check

Transformation (modify data): trim, toLowerCase, toUpperCase, mapItems, transform

Metadata: brand, flavor, metadata, description, title

File Naming Convention

Each schema/action/method has its own directory:

schemas/string/
├── string.ts        # Implementation
├── string.test.ts   # Runtime tests
├── string.test-d.ts # Type tests
└── index.ts         # Re-export

Core Patterns

Schemas define data types:

export interface StringSchema<TMessage> extends BaseSchema<...> {
  readonly kind: 'schema';
  readonly type: 'string';
  // ...
}

Actions validate/transform in pipelines:

export interface EmailAction<TInput, TMessage> extends BaseValidation<...> {
  readonly kind: 'validation';
  readonly type: 'email';
  // ...
}

Methods provide API functions:

export function parse<TSchema>(
  schema: TSchema,
  input: unknown
): InferOutput<TSchema>;

Key Types

  • BaseSchema, BaseValidation, BaseTransformation - Base interfaces
  • InferOutput<T>, InferInput<T>, InferIssue<T> - Type inference
  • Config, ErrorMessage<T>, BaseIssue<T> - Configuration and errors
  • '~standard' property - Standard Schema compatibility

Website (/website/src/routes/)

API Documentation

routes/api/
├── (schemas)/string/     # Schema docs
│   ├── index.mdx         # MDX content
│   └── properties.ts     # Type definitions
├── (actions)/email/      # Action docs
├── (methods)/parse/      # Method docs
├── (types)/StringSchema/ # Type docs
└── menu.md               # Navigation

Guides

routes/guides/
├── (get-started)/       # Intro, installation
├── (main-concepts)/     # Schemas, pipelines, parsing
├── (schemas)/           # Objects, arrays, unions
├── (advanced)/          # Async, i18n, JSON Schema
├── (migration)/         # Version upgrades
└── menu.md              # Navigation

Development

Playground

Use library/playground.ts for quick experimentation.

Adding a Schema/Action

1. Create directory: library/src/schemas/yourSchema/ 2. Create files: yourSchema.ts, yourSchema.test.ts, yourSchema.test-d.ts, index.ts 3. Follow existing patterns (copy similar implementation) 4. Export from category index.ts 5. Run pnpm -C library test

Modifying Core Types

⚠️ Changes to library/src/types/ affect the entire library. Always run full test suite.

Quick Lookups

Looking for...Location
Schema implementationlibrary/src/schemas/[name]/[name].ts
Action implementationlibrary/src/actions/[name]/[name].ts
Method implementationlibrary/src/methods/[name]/[name].ts
Type definitionslibrary/src/types/
Internal utilitieslibrary/src/utils/
Error messages (i18n)packages/i18n/[lang]/
API docs pagewebsite/src/routes/api/(category)/[name]/
Guide pagewebsite/src/routes/guides/(category)/[name]/
TestsSame directory as source, .test.ts suffix
Type testsSame directory as source, .test-d.ts suffix

Commands

# Library
pnpm -C library build      # Build
pnpm -C library test       # Run tests
pnpm -C library lint       # Lint
pnpm -C library format     # Format

# Website
pnpm -C website dev        # Dev server
pnpm -C website build      # Production build

# Root
pnpm install               # Install all
pnpm format                # Format all

Key Principles

1. Modularity - Small, focused functions; one per file 2. Zero dependencies - Core library has no runtime deps 3. 100% test coverage - Required for library 4. Tree-shakable - Use // @__NO_SIDE_EFFECTS__ annotation 5. Type-safe - Full TypeScript with strict mode 6. ESM only - Imports include .ts extensions

Do's and Don'ts

Do:

  • Follow existing code patterns
  • Write runtime and type tests
  • Add JSDoc documentation
  • Keep functions small and focused
  • Check bundle size impact

Don't:

  • Add external dependencies
  • Modify core types without full test run
  • Skip tests
  • Create large multi-purpose functions
  • Modify generated files (dist/, coverage/)

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.