Install any skill in seconds. Free to start, no credit card required.
Get Started Free →microsoft/zustand-store-ts
Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state/action separation.
Passed 22 of 22 test cases with the skill, and 13 of 22 without it.
and 11 more in the full report
9 fixed13 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 9 test cases the skill fixed. Same model, same prompt, with and without the skill.
Write TypeScript interface definitions for a task board store that contains a list of tasks and a current filter string, along with actions to add a task and set the filter.
| Checked | Without skill | With skill |
|---|---|---|
| Task state fields are placed in a standalone state interface. | Passed | Passed |
| Task actions are placed in a standalone actions interface. | Passed | Passed |
| The main store type merges state and action interfaces with an intersection operator. | Missed | Passed |
The instructions your model reads when the skill loads.
Create Zustand stores following established patterns with proper TypeScript types and middleware.
Copy the template from assets/template.ts and replace placeholders:
{{StoreName}} → PascalCase store name (e.g., Project){{description}} → Brief description for JSDocimport { create } from 'zustand';
import { subscribeWithSelector } from 'zustand/middleware';
export const useMyStore = create<MyStore>()(
subscribeWithSelector((set, get) => ({
// state and actions
}))
);
export interface MyState {
items: Item[];
isLoading: boolean;
}
export interface MyActions {
addItem: (item: Item) => void;
loadItems: () => Promise<void>;
}
export type MyStore = MyState & MyActions;
test cases passed, vs 13 / 22 without
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.