Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f9fb603
docs(skills): Generate skill references from the docs
claude Oct 4, 2026
81f20e2
docs(skills): Add skills-sync rule and dead reference link check
claude Oct 4, 2026
7a5a4f1
fix(skills): Generate references from docs only, keep <name>.md for a…
claude Oct 4, 2026
19d3e54
ci(skills): Check on lockfile bumps and master; reject symlinks and u…
claude Oct 4, 2026
50eb3ce
docs(skills): Bundle protocol setup guides into data-client-setup
claude Oct 4, 2026
8a5738d
internal(skills): Simplify skill bundling
claude Oct 4, 2026
2a0d58a
docs(skills): Word setup guides to read right when bundled
claude Oct 4, 2026
ce6e2f5
internal(skills): Drop duplicated comment
claude Oct 4, 2026
8a0e904
internal(skills): Regenerate bundles when the axios codemod changes
claude Oct 4, 2026
37d3fb1
internal(skills): Regenerate references once per agent turn instead o…
claude Oct 4, 2026
d38eb34
Merge remote-tracking branch 'origin/master' into claude/project-thre…
claude Oct 4, 2026
7c32b95
docs(skills): Regenerate references for master's Vue concept docs
claude Oct 4, 2026
8da96d9
internal(skills): Tell the agent about skill problems at end of turn;…
claude Oct 4, 2026
e8b3313
Merge claude/project-thread-3wqhk3 into claude/project-thread-rr5bpr
claude Oct 4, 2026
325d307
Merge remote-tracking branch 'origin/claude/project-thread-3wqhk3' in…
claude Oct 4, 2026
c1320ca
internal(skills): Regenerate references before agent pushes instead o…
claude Oct 4, 2026
15d17b1
Merge remote-tracking branch 'origin/claude/project-thread-3wqhk3' in…
claude Oct 4, 2026
04b926d
docs(skills): Don't require data-client-rest before REST setup
claude Oct 5, 2026
4e1e101
ci: Skip Codecov upload when the uploader download fails
claude Oct 5, 2026
74ee129
Merge origin/master into claude/project-thread-rr5bpr
claude Oct 5, 2026
170000c
internal(skills): Follow git symlinks in checkouts without symlink su…
claude Oct 5, 2026
1036625
Merge master into claude/project-thread-rr5bpr
claude Oct 6, 2026
5b5242e
Move bundled-skill push inputs into pre-push.js
claude Oct 6, 2026
33c5c90
Simplify skill bundling: reuse index.js walk and FM, skip generated f…
claude Oct 6, 2026
7586080
Add GraphQL and custom async rows to setup's skills table
claude Oct 6, 2026
7120ec6
Simplify skillReferences: generateSkill reads its own manifest, one g…
claude Oct 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/skills/data-client-endpoint-setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ disable-model-invocation: true

# Custom Endpoint Setup

This skill configures `@data-client/endpoint` for wrapping existing async functions. It should be applied after `data-client-setup` detects custom async patterns that aren't REST or GraphQL.
This guide configures `@data-client/endpoint` for wrapping existing async functions. Use it once the Data Client provider is set up and the project has async operations that aren't REST or GraphQL.

## Installation

Expand Down
2 changes: 1 addition & 1 deletion .agents/skills/data-client-graphql-setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ disable-model-invocation: true

# GraphQL Protocol Setup

This skill configures `@data-client/graphql` for a project. It should be applied after `data-client-setup` detects GraphQL patterns.
This guide configures `@data-client/graphql` for a project. Use it once the Data Client provider is set up and the project calls GraphQL APIs.

## Installation

Expand Down
6 changes: 3 additions & 3 deletions .agents/skills/data-client-rest-setup/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ disable-model-invocation: true

# REST Protocol Setup & Migration

This skill configures `@data-client/rest` for a project. It handles both fresh setup and migration from existing HTTP libraries. It should be applied after skill "data-client-setup" detects REST API patterns.
This guide configures `@data-client/rest` for a project. It handles both fresh setup and migration from existing HTTP libraries. Use it once the Data Client provider is set up and the project calls REST APIs.

**First, apply the skill "data-client-rest"** for accurate implementation patterns.
The [RestEndpoint](references/RestEndpoint.md) and [resource](references/resource.md) references cover the APIs this guide uses. If the skill "data-client-rest" is installed, also apply it for resource and endpoint patterns beyond setup.

## Step 1: Installation

Expand Down Expand Up @@ -67,7 +67,7 @@ When multiple HTTP libraries are detected, run each sub-procedure on the relevan
Each migration is a self-contained reference. Read only the relevant one(s) based on detection results above. After completing migrations, return here for base class setup.

- **Axios** → [references/axios-migration.md](references/axios-migration.md) — codemod, interceptors, error handling, timeout, cancelToken, responseType, paramsSerializer, auth, validateStatus, CSRF, upload progress
- Run its codemod before any manual edits, from this skill's own copy: `npx jscodeshift -t <this skill's dir>/scripts/axios-to-rest.js --extensions=ts,tsx,js,jsx src/`.
- Run its codemod before any manual edits, from this skill's own copy at [scripts/axios-to-rest.js](scripts/axios-to-rest.js): `npx jscodeshift -t <path to that file> --extensions=ts,tsx,js,jsx src/`.
- **Raw fetch** → [references/fetch-migration.md](references/fetch-migration.md) — fetch wrappers, headers, status checks, POST patterns, error handling
- **Ky** → [references/ky-migration.md](references/ky-migration.md) — prefixUrl, hooks, HTTPError, instance config
- **SuperAgent** → [references/superagent-migration.md](references/superagent-migration.md) — chained API, plugins, agents, file uploads
Expand Down
25 changes: 14 additions & 11 deletions .agents/skills/data-client-setup/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: data-client-setup
description: Install and set up @data-client/react or @data-client/vue in a project. Detects project type (NextJS, Expo, React Native, Vue, plain React) and protocol (REST, GraphQL, custom), then installs and hands off to the matching framework and protocol skills.
description: Install and set up @data-client/react or @data-client/vue in a project. Detects project type (NextJS, Expo, React Native, Vue, plain React) and protocol (REST, GraphQL, custom), then follows the bundled protocol-specific setup guide.
disable-model-invocation: true
---

Expand Down Expand Up @@ -60,16 +60,16 @@ For async operations that don't match REST or GraphQL:

### 4. Install the Skills This Project Needs

This skill hands off to other Data Client skills. Install the ones that match what you detected, skipping any already installed:
Protocol setup guides are bundled in this skill, but defining and using data afterwards is covered by other Data Client skills. Install the ones that match what you detected, skipping any already installed:

| Detected | Skills |
|----------|--------|
| Always | `data-client-schema`, `data-client-manager` |
| React (NextJS, Expo, React Native, plain React) | `data-client-react`, `data-client-react-testing` |
| Vue | `data-client-vue`, `data-client-vue-testing` |
| REST | `data-client-rest-setup`, `data-client-rest` |
| GraphQL | `data-client-graphql-setup` |
| Custom async | `data-client-endpoint-setup` |
| REST | `data-client-rest` |
| GraphQL | None beyond Always (`data-client-schema` covers `@data-client/graphql`) |
| Custom async | None beyond Always (`data-client-schema` covers `@data-client/endpoint`) |

Use the installer that installed this skill. For OpenSkills and the skills CLI, add `-g` if this skill lives under your home directory rather than the project.

Expand Down Expand Up @@ -204,32 +204,32 @@ app.mount('#app');

## Protocol-Specific Setup

After provider setup, apply the appropriate skill based on detected protocol:
After provider setup, follow the guide for each detected protocol. These guides are bundled copies of the standalone protocol setup skills, so they need nothing else installed.

### REST APIs

Apply skill **"data-client-rest-setup"** which will:
Follow [references/data-client-rest-setup.md](references/data-client-rest-setup.md), which will:
1. Install `@data-client/rest`
2. Offer to create a custom `BaseEndpoint` class extending `RestEndpoint`
3. Configure common behaviors: urlPrefix, authentication, error handling

### GraphQL APIs

Apply skill **"data-client-graphql-setup"** which will:
Follow [references/data-client-graphql-setup.md](references/data-client-graphql-setup.md), which will:
1. Install `@data-client/graphql`
2. Create and configure `GQLEndpoint` instance
3. Set up authentication headers

### Custom Async Operations

Apply skill **"data-client-endpoint-setup"** which will:
Follow [references/data-client-endpoint-setup.md](references/data-client-endpoint-setup.md), which will:
1. Install `@data-client/endpoint`
2. Offer to wrap existing async functions with `new Endpoint()`
3. Configure schemas and caching options

### Multiple Protocols

If multiple protocols are detected, apply multiple setup skills. Each protocol package can be installed alongside others.
If multiple protocols are detected, follow each protocol's guide. Each protocol package can be installed alongside others.

## Verification Checklist

Expand All @@ -239,7 +239,7 @@ After setup, verify:
- [ ] Provider/Plugin wraps the app at root level
- [ ] Correct import path used (especially `@data-client/react/nextjs` for NextJS)
- [ ] No duplicate providers in component tree
- [ ] Protocol-specific setup completed via appropriate skill
- [ ] Protocol-specific setup completed via its guide

## Common Issues

Expand Down Expand Up @@ -277,3 +277,6 @@ For detailed API documentation, see the [references](references/) directory:
- [DataClientPlugin](references/DataClientPlugin.md) - Plugin options (Vue)
- [installation](references/installation.md) - Installation guide
- [getDefaultManagers](references/getDefaultManagers.md) - Default managers
- [REST setup](references/data-client-rest-setup.md) - `@data-client/rest` setup and migration from axios, fetch, ky, superagent or got
- [GraphQL setup](references/data-client-graphql-setup.md) - `@data-client/graphql` setup
- [Custom endpoint setup](references/data-client-endpoint-setup.md) - Wrapping other async functions with `@data-client/endpoint`
7 changes: 6 additions & 1 deletion .agents/skills/data-client-setup/references.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,10 @@
"DataProvider.md": "docs/core/api/DataProvider.md",
"getDefaultManagers.md": "docs/core/api/getDefaultManagers.md",
"installation.md": "docs/core/getting-started/installation.md"
}
},
"skills": [
"data-client-rest-setup",
"data-client-graphql-setup",
"data-client-endpoint-setup"
]
Comment thread
ntucker marked this conversation as resolved.
}
Loading
Loading