summaryrefslogtreecommitdiff
path: root/ar/.config/claude/commands/create-server-action.md
diff options
context:
space:
mode:
authorTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2026-02-24 12:03:08 +0900
committerTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2026-02-24 12:03:08 +0900
commitf3b515d8d9e8ed57d2c5302b53009ea9241e22f2 (patch)
tree3759055b2f318669aed4e2132e1418d487ffefa4 /ar/.config/claude/commands/create-server-action.md
parentea1b98fac1272ac59b5bd9f8e4530237353b752a (diff)
created agents/, created commands/, created hooks/, created skills/
Diffstat (limited to 'ar/.config/claude/commands/create-server-action.md')
-rw-r--r--ar/.config/claude/commands/create-server-action.md27
1 files changed, 27 insertions, 0 deletions
diff --git a/ar/.config/claude/commands/create-server-action.md b/ar/.config/claude/commands/create-server-action.md
new file mode 100644
index 0000000..0e28d2b
--- /dev/null
+++ b/ar/.config/claude/commands/create-server-action.md
@@ -0,0 +1,27 @@
+---
+allowed-tools: Write, Read, MultiEdit
+argument-hint: "<action-name> [model/entity]"
+description: Create a type-safe Server Action with validation and error handling
+---
+
+Create a Next.js 15 Server Action named "$ARGUMENTS" with:
+
+1. Proper 'use server' directive
+2. Zod schema for input validation
+3. Error handling and try-catch blocks
+4. Type-safe return values
+5. Authentication check (if applicable)
+6. Rate limiting setup
+7. Database operation (if entity provided)
+8. Cache revalidation (revalidatePath/revalidateTag)
+9. Proper TypeScript types throughout
+10. Example usage in a form component
+
+The Server Action should follow security best practices:
+
+- Input validation and sanitization
+- CSRF protection considerations
+- Proper error messages (don't leak sensitive info)
+- Audit logging for important operations
+
+Include both the server action file and an example client component that uses it with useActionState.