* fix: replace hand-rolled utilities with npm packages and extract shared helpers
- Replace custom semver parser (satisfies/compare/valid) with the `semver`
package, fixing OR-range (||) peerDep false positives (e.g. react-slick)
and incorrect ^0.x minor-locking behavior
- Replace custom Levenshtein distance with `fast-levenshtein`
- Replace hand-rolled recursive directory walker with `fast-glob` for
better symlink, ignore, and permission handling
- Fix CJK character width in table formatting using `string-width`
(e.g. `antd list --lang zh` now aligns columns correctly)
- Extract shared `fetchWithTimeout` and `fetchFirstJson` helpers from
bug-versions.ts and update-check.ts to eliminate duplicated
AbortController+setTimeout+Promise.any patterns
- Consolidate `readJson` usage: version.ts and loader.ts now use the
existing `readJson` helper from scan.ts instead of inlining
readFileSync+JSON.parse
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix: address PR review feedback
- Move fast-glob and fast-levenshtein from devDependencies to dependencies
(they are runtime imports, not build-time)
- Restore Promise.any parallel racing in update-check.ts (was regressed
to sequential fallback)
- Change satisfies() null coalescing from ?? true to ?? false; add
includePrerelease flag for correctness
- Derive glob ignore patterns from SKIP_DIRS to avoid duplication
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* fix: address code review feedback
- Fix ESM import of fast-glob (use default import `fg` instead of named
`globSync` — CJS interop in ESM bundle)
- Add try/catch around globSync in collectFiles for permission errors
- Add trailing newlines to fetch.ts, bug-versions.ts, update-check.ts
- Move fast-glob and fast-levenshtein to dependencies (runtime imports)
- Restore Promise.any parallel racing in update-check.ts
- Add test for malformed range behavior with semver
- Re-add permission error test for collectFiles
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
* docs: add bug fixes round 2 plan
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: add agent skill file and update README with installation guides
Add docs/skill.md — a scenario-driven skill file that teaches code agents
when and how to use each @ant-design/cli command. Update both READMEs with
installation instructions for Claude Code, Cursor, Codex, and Gemini CLI.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: add Claude Code skill frontmatter and improve agent install guides
- Add YAML frontmatter to docs/skill.md (name, description, allowed-tools)
so it works as a proper Claude Code skill when copied to .claude/skills/
- Update README install instructions: Claude Code uses skill directory,
Cursor uses .mdc rule, Codex/Gemini append to their config files
- Remove redundant "When to Use" section (covered by frontmatter description)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: restructure skill to skills/ directory and simplify install guide
- Move docs/skill.md to skills/antd/SKILL.md (follows skills standard)
- Rename src/commands/diff.ts to changelog.ts (matches actual command name)
- Replace per-agent install guides with `npx skills add`
- Fix incorrect `antd changelog diff` and `antd diff` references
- Update package.json files field to include skills/
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: restore CLI install instructions in README
Keep npm/pnpm/bun global install as the primary installation method,
with skill-based install as a supplementary option.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* release: v0.2.0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: add Multi-Format Output as a feature in README
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: remove redundant Multi-Format Output feature entry
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* chore: remove semantic-release, publish only on antd data sync
- Delete release.yml and .releaserc.json
- Uninstall semantic-release and all related plugins
- Update sync.yml to build, test, and publish when antd data changes
- CLI version now tracks antd v6 version directly
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
- bin path: ./dist/index.js → dist/index.js
- repository.url: add git+ prefix and .git suffix
- version bump to 0.1.1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add prepublishOnly script to always build before publish
- Add publishConfig.access=public and homepage field
- Inject CLI_VERSION at build time via tsup define (no longer hardcoded)
- sync.yml: max-parallel=1 to avoid concurrent push conflicts
- sync.yml: expand publish detection window from 10min to 24h
- README: document -V / --cli-version flag
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Also fix printError to send JSON errors to stderr, add version-order
validation in changelog diff mode, harden fuzzyMatch with empty-candidates
guard, and expand test coverage for these cases.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add scripts/extract.ts pipeline that extracts antd metadata (components,
props, demos, tokens, semantic, changelog, FAQ) from source. Add daily
GitHub Actions workflow to detect new antd releases and auto-publish.
CLI version now aligns with antd version.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove @ant-design/metadata dependency; all data is bundled in data/
- Rename sample-data/ to data/ and update package.json files field
- Remove --no-cache flag from CLI and all command implementations
- Simplify loadMetadata() to read directly from bundled JSON files
- Update spec.md to reflect bundled data strategy
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CLI tool for Code Agents to query antd knowledge and analyze antd usage.
Includes design spec, README with all 13 commands, and project scaffolding.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>