Optimize daily development workflow with Cursor IDE using Chat, Composer, Tab, and Git integration. Triggers on "cursor workflow", "cursor development loop", "cursor productivity", "cursor daily workflow", "cursor dev flow".
Scanned 5/30/2026
Install via CLI
openskills install ComeOnOliver/skillshub---
name: "cursor-local-dev-loop"
description: |
Optimize daily development workflow with Cursor IDE using Chat, Composer, Tab, and Git integration.
Triggers on "cursor workflow", "cursor development loop", "cursor productivity", "cursor daily workflow",
"cursor dev flow".
allowed-tools: "Read, Write, Edit, Bash(cmd:*)"
version: 1.0.0
license: MIT
author: "Jeremy Longshore <jeremy@intentsolutions.io>"
compatible-with: claude-code, codex, openclaw
tags: [saas, cursor, workflow]
---
# Cursor Local Dev Loop
Establish a productive daily development workflow using Cursor's AI features at each stage of the code-write-test-commit cycle.
## The AI-Augmented Development Loop
```
┌─────────────────────────────────────────────────────────────┐
│ 1. PLAN → Chat (Cmd+L) with @Codebase, @Docs │
│ 2. SCAFFOLD → Composer (Cmd+I) for new files │
│ 3. IMPLEMENT → Tab completion for line-by-line coding │
│ 4. REFINE → Inline Edit (Cmd+K) for targeted fixes │
│ 5. TEST → Chat to generate tests, terminal to run │
│ 6. COMMIT → AI-generated commit messages │
│ 7. REVIEW → @Git for branch diff review │
└─────────────────────────────────────────────────────────────┘
```
## Stage 1: Plan (Chat)
Start each task by discussing architecture with Chat:
```
@Codebase @Docs Prisma
I need to add a "favorites" feature where users can bookmark products.
What's the best approach given our current data model and API structure?
Consider: database schema, API endpoints, and frontend hooks.
```
Chat excels at:
- Architecture decisions before writing code
- Evaluating trade-offs (SQL join table vs JSON array, REST vs GraphQL)
- Understanding existing patterns via `@Codebase`
## Stage 2: Scaffold (Composer)
Once the plan is clear, use Composer for multi-file generation:
```
@src/api/users/route.ts @prisma/schema.prisma
Create the favorites feature:
1. prisma/schema.prisma: Favorite model (userId, productId, createdAt)
2. src/api/favorites/route.ts: GET (list user favorites), POST (add), DELETE (remove)
3. src/services/favorite.service.ts: FavoriteService with Prisma operations
4. src/hooks/useFavorites.ts: React hook with optimistic updates
Follow existing patterns from the users API.
```
**Tip:** Reference existing files with `@` so Composer replicates your patterns instead of inventing new ones.
## Stage 3: Implement (Tab Completion)
With scaffolded files open, use Tab for implementation details:
```typescript
// Open favorite.service.ts and start typing:
async toggleFavorite(userId: string, productId: string
// Tab completes the full method:
async toggleFavorite(userId: string, productId: string): Promise<Favorite | null> {
const existing = await this.prisma.favorite.findUnique({
where: { userId_productId: { userId, productId } },
});
if (existing) {
await this.prisma.favorite.delete({ where: { id: existing.id } });
return null;
}
return this.prisma.favorite.create({ data: { userId, productId } });
}
```
**Workflow tips for Tab:**
- Open related files in tabs (service, types, API route) -- Tab reads open tabs for context
- Write type signatures first -- Tab generates better bodies when types are explicit
- Accept partially with `Cmd+→` when the suggestion is 80% right
## Stage 4: Refine (Inline Edit)
For targeted improvements, select code and use `Cmd+K`:
```
Select the toggleFavorite method → Cmd+K:
"Add input validation: userId and productId must be non-empty strings.
Add error handling for database connection failures.
Return a Result type instead of throwing."
```
Other common Cmd+K workflows:
- `"Add JSDoc comments"` on a function
- `"Convert to async/await"` on a Promise chain
- `"Add null checks"` on a code block
- `"Optimize this query"` on a database call
## Stage 5: Test (Chat + Terminal)
Generate tests via Chat:
```
@src/services/favorite.service.ts @tests/services/user.service.test.ts
Generate vitest tests for FavoriteService following the same patterns as
user.service.test.ts. Cover: addFavorite, removeFavorite, toggleFavorite,
getFavorites with pagination. Mock Prisma client.
```
Run tests in the integrated terminal:
```bash
# Cmd+` to open terminal
npm test -- --watch src/services/favorite.service.test.ts
```
If tests fail, paste the error into Chat:
```
@src/services/favorite.service.ts
This test is failing with: "Expected null but received undefined"
[paste test output]
What's wrong?
```
## Stage 6: Commit (AI Messages)
Use Cursor's Source Control panel (`Cmd+Shift+G`):
1. Stage changed files
2. Click the sparkle icon (AI) next to the commit message input
3. Cursor generates a commit message from the diff:
```
feat: add favorites feature with toggle, pagination, and optimistic updates
- Add Favorite model to Prisma schema with userId/productId unique constraint
- Create REST API endpoints (GET, POST, DELETE) for /api/favorites
- Implement FavoriteService with toggleFavorite and paginated listing
- Add useFavorites React hook with optimistic UI updates
```
## Stage 7: Review (@Git)
Before pushing, review your full branch diff:
```
@Git
Review all changes in this branch compared to main.
Check for:
- Missing error handling
- Type safety issues
- Potential N+1 query problems
- Any hardcoded values that should be environment variables
```
`@Git` includes the branch diff in context, giving the AI a complete view of all your changes.
## Daily Efficiency Tips
### Session Management
```
Morning startup:
1. cursor . # Open project
2. Wait for "Indexed" in status bar # Indexing complete
3. Cmd+Shift+G → git pull # Sync with team
4. Cmd+L → "What changed yesterday? @Git"
Task switching:
- Start a new Chat (Cmd+N) for each task
- Do NOT continue a 20-turn conversation on a new topic
```
### Keyboard-Driven Flow
Minimize mouse usage:
```
Cmd+P → Open any file by name
Cmd+Shift+P → Run any command
Cmd+L → Ask AI anything
Cmd+K → Edit selected code
Cmd+I → Multi-file changes
Cmd+` → Toggle terminal
Cmd+B → Toggle sidebar
Cmd+Shift+G → Git panel
```
### Project Rules for Consistency
Create `.cursor/rules/dev-standards.mdc`:
```yaml
---
description: "Development standards for all code"
globs: ""
alwaysApply: true
---
- Run `npm test` before committing
- All new functions need JSDoc comments
- Use Conventional Commits format
- No console.log in committed code (use proper logger)
```
## Enterprise Considerations
- **Reproducible workflows**: Document the AI-augmented workflow in team runbooks
- **Code review**: AI-generated code still needs human review -- Composer output is a first draft
- **Onboarding**: New team members can use Chat with `@Codebase` to explore unfamiliar code
- **Metrics**: Track time-to-feature before and after Cursor adoption to quantify ROI
## Resources
- [Cursor Feature Overview](https://cursor.com/features)
- [Keyboard Shortcuts](https://docs.cursor.com/kbd)
- [Context Management](https://docs.cursor.com/context/@-symbols/overview)
No comments yet. Be the first to comment!