Skip to content

Commit ed03d83

Browse files
committed
chore: add cursor agent skills
1 parent 44e2eaf commit ed03d83

14 files changed

Lines changed: 1649 additions & 0 deletions

File tree

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
name: dev-patterns
3+
description: Styling and structure conventions for stream-chat-react. Use when adding or editing components, SCSS, or icons in this repoβ€”file layout, styling folder structure, SCSS imports, and icon placement.
4+
---
5+
6+
# stream-chat-react Development Patterns
7+
8+
Apply when generating or modifying UI code in this repo.
9+
10+
## Styling
11+
12+
### File and folder structure
13+
14+
- **Format:** `.scss` only.
15+
- **Location:** `src/components/<ComponentName>/styling/`.
16+
- **Required:** Each component styling folder has an `index.scss`.
17+
- **Registration:** Each `src/components/<ComponentName>/styling/index.scss` is imported in `src/styling/index.scss` with an alias.
18+
19+
**Import order in `src/styling/index.scss`:**
20+
21+
1. Three groups; within each group, alphabetical order.
22+
2. **Group 1:** imports from `src/styling/`.
23+
3. **Group 2:** general components (Button, Dialog, etc.).
24+
4. **Group 3:** chat components (MessageList, etc.).
25+
26+
### SCSS practices
27+
28+
- Use **full class names** instead of only `&__suffix` so selectors are easy to search.
29+
- Avoid duplicate blocks for the same resolved CSS selector (after nesting).
30+
31+
## Icons
32+
33+
- Icons live in `src/components/Icons`.
34+
- **Do not** move icons out of SCSS into `src/components/Icons`; keep existing icon placement unless explicitly refactoring icons.
35+
36+
Source: `.ai/DEV_PATTERNS.md`.
37+
38+
## Imports
39+
40+
When importing from 'stream-chat' library, always import by library name (from 'stream-chat'), not relative path (from '..path/to/from 'stream-chat-js/src').
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
name: make-plans
3+
description: Structures plan.md files for parallel, non-overlapping agent work. Use when creating or editing execution plans, task lists for multiple agents, or when the user asks how to structure plans or split work into tasks.
4+
---
5+
6+
# Making plan.md Files
7+
8+
Plans enable **parallel, non-overlapping work**. Each task must be independent; agents work in a **dedicated git worktree** (see worktrees skill).
9+
10+
## Required plan.md Structure
11+
12+
1. **Worktree section** (top) β€” path, branch, base branch. See worktrees skill.
13+
2. **Task overview** β€” one line: tasks are self-contained; same-file tasks have dependencies.
14+
3. **Task sections** β€” each with the template below.
15+
4. **Execution order** β€” phases showing what can run in parallel.
16+
5. **File ownership summary** β€” table: Task | Creates/Modifies.
17+
18+
## Task Template
19+
20+
Every task must include:
21+
22+
```md
23+
## Task N: <Descriptive Name>
24+
25+
**File(s) to create/modify:** `path/to/file.tsx`
26+
27+
**Dependencies:** Task X (or "None")
28+
29+
**Status:** pending | in-progress | done | blocked
30+
31+
**Owner:** <agent-name> | unassigned
32+
33+
**Scope:**
34+
35+
- Bullet points; include interfaces/snippets if helpful
36+
37+
**Acceptance Criteria:**
38+
39+
- [ ] Verifiable condition
40+
- [ ] e.g. TypeScript compiles, exports from module
41+
```
42+
43+
## Task Independence Rules
44+
45+
- **Same file β†’ cannot run in parallel.** Add explicit dependencies so only one agent touches a file at a time.
46+
- **Explicit dependencies:** If B needs A, write `**Dependencies:** Task 1`.
47+
- **Self-contained scope:** Task must be doable without other in-progress tasks (include types, imports, exports).
48+
- **Same-file options:** Either one integration task (e.g. "Update index.tsx for all components", deps: 1–4) or a chain (Task 7 adds A, Task 8 adds B with dep Task 7).
49+
50+
## Task Granularity
51+
52+
- **Too coarse:** "Implement entire Gallery" β€” not parallelizable.
53+
- **Too fine:** Separate tasks for "create file", "add imports", "add type" β€” overhead.
54+
- **Good:** One task = one logical unit (e.g. "GalleryContext: types + context + hook", "Gallery Provider: state + navigation", "GalleryUI: rendering + interactions").
55+
56+
## Cross-Cutting / Integration
57+
58+
Use a final integration task, e.g.:
59+
60+
- Update `index.tsx` exports for all new components.
61+
- Update main stylesheet to import component styles.
62+
- Dependencies: all preceding tasks.
63+
64+
## Checklist Before Finalizing plan.md
65+
66+
- [ ] Worktree section at top
67+
- [ ] Same-file tasks have dependencies
68+
- [ ] Dependencies explicit; execution order and file ownership table present
69+
- [ ] Tasks sized appropriately; each has Status, Owner, acceptance criteria
70+
71+
For full examples and worktree setup, see [reference.md](reference.md) and the worktrees skill.
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# make-plans β€” Full Reference
2+
3+
Source: `.ai/MAKE_PLAN.md`. Condensed in SKILL.md; details here.
4+
5+
## Execution Order Example
6+
7+
```md
8+
## Execution Order
9+
10+
Phase 1 (Parallel):
11+
β”œβ”€β”€ Task 1: Context
12+
β”œβ”€β”€ Task 5: Styles A
13+
└── Task 6: Styles B
14+
15+
Phase 2 (After Task 1):
16+
β”œβ”€β”€ Task 2: Provider
17+
└── Task 3: UI Component
18+
19+
Phase 3 (After Tasks 2, 3):
20+
└── Task 4: Composition Component
21+
```
22+
23+
## File Ownership Example
24+
25+
```md
26+
## File Ownership Summary
27+
28+
| Task | Creates/Modifies |
29+
| ---- | ---------------- |
30+
| 1 | `Context.tsx` |
31+
| 2 | `Provider.tsx` |
32+
| 3 | `UI.tsx` |
33+
```
34+
35+
## Worktree Section (must appear in plan.md)
36+
37+
```md
38+
## Worktree
39+
40+
**Worktree path:** `../stream-chat-react-worktrees/<plan-name>`
41+
**Branch:** `feat/<plan-branch-name>`
42+
**Base branch:** `<branch-this-was-created-from>`
43+
**Preview branch:** `agent/<branch-name>` β€” branch from main; merge worktree branch into it so others can checkout to preview (e.g. `agent/feat/gallery-redesign`).
44+
45+
All work for this plan MUST be done in the worktree directory, NOT in the main repo checkout.
46+
```
47+
48+
Actual creation and sync of worktrees is covered by the worktrees skill.

0 commit comments

Comments
Β (0)