Skip to content

Add AGENTS.md and a CLAUDE.md that imports it - #1133

Merged
ChronosSF merged 3 commits into
vnextfrom
sstoychev/agents-md
Oct 22, 2026
Merged

ChronosSF merged 3 commits into
vnextfrom
sstoychev/agents-md

Conversation

@ChronosSF

@ChronosSF ChronosSF commented Oct 22, 2026 •

Copy link
Copy Markdown
Member

Adds agent instructions for the repo. AGENTS.md describes the npm run check:samples check that #1132 added.

What's in it

AGENTS.md (82 lines) covers what an agent can't easily work out from the code:

  • Generated vs hand-maintained samples. About 560 samples are exported from igniteui-xplat-examples, and the next export overwrites edits made here. A sample is generated when xplat has samples/<group>/<component>/<name>.json; the doc gives a one-line curl that tells which (200 = generated, 404 = hand-maintained). Code style doesn't decide it: roughly 100 class-component samples have no xplat source.
  • The sample contract the build depends on. export default plus the root.render(<X/>) mount, the two stylesheet import shapes the page moves into <head>, unscoped IG package names, and the fact that sample paths are public URLs the docs depend on.
  • Rules from this branch. Versions change only through versions.js and update:ig, new samples start from add:sample, and no per-sample boilerplate or CodeSandbox links.
  • The checks CI runs, the quick loop for sample-only changes, and when the full build and smoke tests are needed.
  • The deploy contract. web.config at the root, a page per sample with the legacy redirects, and code-viewer JSON per sample. The sync deletes anything the zip doesn't contain.

CLAUDE.md is a single @AGENTS.md import. Newer Claude Code versions read AGENTS.md natively, but only when no CLAUDE.md or CLAUDE.local.md exists, and older versions read only CLAUDE.md. The import covers both cases without loading the file twice (docs). Its explanatory note is an HTML comment, which is stripped before it reaches the model.

Checked

  • Every path the doc mentions exists.
  • The xplat curl check returns 200 for charts/category-chart/annotations-all and 404 for layouts/card/overview.
  • The commands and timings are the ones measured while preparing Type-check samples in CI #1132 and the vnext merge.

🤖 Generated with Claude Code

@ChronosSF
ChronosSF force-pushed the sstoychev/samples-type-check branch from c7f50de to fe42b96 Compare October 22, 2026 10:59
@ChronosSF
ChronosSF force-pushed the sstoychev/agents-md branch from f74da78 to d4961a2 Compare October 22, 2026 10:59
Base automatically changed from sstoychev/samples-type-check to vnext October 22, 2026 13:49
@ChronosSF
ChronosSF requested a lite review from Copilot October 22, 2026 13:54
ChronosSF and others added 3 commits October 22, 2026 16:56
AGENTS.md tells coding agents what the code alone does not: which
samples igniteui-xplat-examples generates and how to tell, the sample
contract the Astro build depends on, the checks CI runs, and the deploy
and docs contract that URLs and code-viewer JSON must keep.

Claude Code reads AGENTS.md only in newer versions and only when no
CLAUDE.md or CLAUDE.local.md exists, so CLAUDE.md imports it with
@AGENTS.md and every agent gets the same instructions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ChronosSF
ChronosSF force-pushed the sstoychev/agents-md branch from ce02512 to 6276d7d Compare October 22, 2026 13:56

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

A critical standalone sample type-check failure remains, and the review also identified documentation inaccuracies that should be corrected.

No open issues 🎉

What changed in this PR

This pull request adds shared agent guidance and introduces centralized TypeScript checking for published samples, including CI integration and fixes for React 19 and Ignite UI API compatibility.

Changes:

  • Adds AGENTS.md and a CLAUDE.md import.
  • Adds the check:samples configuration, script, skip list, compatibility declarations, and CI workflow.
  • Updates affected samples and contributor documentation to resolve type-checking issues.
File Summary
tsconfig.samples.json Adds shared TypeScript configuration for sample checking.
scripts/​lib/​skip-type-check.json Lists generated samples excluded from type checking.
scripts/​lib/​sample-globals.d.ts Restores legacy JSX compatibility types.
scripts/​check-samples.js Runs type checking across published samples.
samples/​scheduling/​date-range-picker/​slots/​src/​index.tsx Initializes the date-range picker ref for React 19.
samples/​interactions/​chat/​features/​src/​index.tsx Supplies markdown renderer options.
samples/​inputs/​color-picker/​tailwind-styling/​src/​index.tsx Removes unsupported color-picker size props.
samples/​inputs/​color-picker/​styling/​src/​index.tsx Removes the unsupported placeholder prop.
samples/​inputs/​button-group/​custom-toggle/​src/​index.tsx Uses the supported multiple-selection API.
samples/​inputs/​badge/​type/​src/​index.tsx Removes unsupported avatar size props.
samples/​inputs/​badge/​tailwind-styling/​src/​index.tsx Removes unsupported avatar size props.
samples/​inputs/​badge/​overview/​src/​index.tsx Removes an unsupported avatar size prop.
samples/​inputs/​badge/​icon/​src/​index.tsx Removes an unsupported avatar size prop.
samples/​inputs/​badge/​dot/​src/​index.tsx Removes an unsupported avatar size prop.
samples/​grids/​grid/​localization/​src/​index.tsx Uses the supported select change-event shape.
samples/​grids/​grid/​editing-excel-style/​src/​index.tsx Initializes the grid ref for React 19.
samples/​grids/​grid-lite/​styling-config-themes/​src/​index.tsx Adds React JSX intrinsic-element declarations; a critical standalone JSX.Element compatibility issue remains unresolved.
samples/​grids/​grid-lite/​sort-config-pipeline/​src/​index.tsx Uses the supported readOnly rating prop.
samples/​grids/​grid-lite/​sort-config-events/​src/​index.tsx Uses the supported readOnly rating prop.
samples/​editors/​x-date-picker/​format/​src/​index.tsx Adds the standalone React mount.
samples/​editors/​x-date-picker/​editing/​src/​index.tsx Adds the standalone React mount.
samples/​editors/​x-date-picker/​date-limits/​src/​index.tsx Adds the standalone React mount.
README.md Documents sample type checking and contributor workflows.
package.json Adds the check:samples script.
CLAUDE.md Imports the shared agent instructions.
AGENTS.md Documents repository structure, sample contracts, workflows, checks, and deployment; two documentation accuracy nits remain.
.github/​workflows/​ci.yml Runs sample type checking while preserving subsequent build and smoke-test execution.

Review effort: Lite

@ChronosSF
ChronosSF merged commit e81ecc3 into vnext Oct 22, 2026
4 checks passed
@ChronosSF
ChronosSF deleted the sstoychev/agents-md branch October 22, 2026 14:01
ChronosSF added a commit that referenced this pull request Oct 22, 2026
Bring in the Astro migration (#1110), the sample type check (#1132)
and AGENTS.md (#1133).

Conflicts: chip outlined, overview, size and styling. This branch had
already rewritten them as function components with new content, so its
side is kept, in vnext's style: no JSX.Element return type, which
React 19's types no longer declare, no unused React import, and the
`getElementById('root')!` mount.

The seven new chip samples (area, interaction-state, layout, remove,
state, tailwind-styling, types) get what vnext did to every sample:
no sandbox.config.json, README.md (tailwind-styling had ReadMe.md) in
the current format without the CodeSandbox link, the strict add:sample
tsconfig, and package versions from scripts/lib/versions.js.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants