AGENT SKILL

bencium-code-conventions

Bence's code style, tech stack, and workflow conventions

适用职业开发工程师
License 许可
MIT
最近更新
2026-05-29
Stars
★ 1
Forks
0

01 前言 Front Matter

name
bencium-code-conventions
description
Bence's code style, tech stack, and workflow conventions
when_to_use
When writing code or setting up projects for Bence

03 SKILL.md 正文

Code Conventions

Core Technologies

  • Frontend: ReactJS, Next.js (App Router structure), TypeScript
  • Styling: TailwindCSS v3.x (never v4), Shadcn UI
  • Build Tools: Vite (when applicable)
  • Backend: Postgres compatible convex.dev or Supabase (always ask, never local postgres)
  • Deployment: Netlify or Vercel or Fly - suggest
  • Environment: Mac M2, Python3 with virtual environments, no CUDA, no Docker
  • Alternative Languages: Avoid python if you can, try using RUST

Code Style & Structure

  • Use ES modules (import/export) syntax
  • Destructure imports when possible
  • Use TypeScript for all new code
  • Use async/await instead of Promise chains
  • Prefer const/let over var; use early returns
  • Use consts instead of functions: const toggle = () =>. Define types.
  • Use descriptive variable names with auxiliary verbs (e.g., isLoading, hasError)
  • Use lowercase with dashes for directory names (e.g., components/auth-wizard)

Framework Conventions

  • Next.js: Use App Router (app directory) structure and page.tsx files
  • React: Functional and declarative patterns; avoid classes
  • State Management: Zustand, TanStack React Query
  • Validation: Zod for schema validation

Component Library & Styling

  • Component Library: Prefer shadcn components from @/components/ui
  • Styling: Tailwind utility classes
  • Layout: Grid/flex wrappers with gap for spacing
  • Icons: @phosphor-icons/react
  • Toasts: sonner for notifications
  • Always add loading states, spinners, placeholder animations

Quality Assurance & Testing

  • TDD: Write failing tests first, commit them, then iterate until suite passes
  • Never mock tests - if there's a test script, execute all until done
  • Always write SQL in chunks with test steps after each chunk
  • Typecheck after making code changes
  • Run tests before committing
  • Prefer running single tests for performance, not whole suite

Error Handling

  • Implement proper error handling and user input validation
  • Error messages should be understood by non-technical people
  • Use early returns for error conditions
  • Test APIs via curl commands first, then implement in code

Performance & Architecture

  • Minimize 'use client', useEffect, setState; favor RSC and Next.js SSR
  • Implement dynamic imports for code splitting
  • Optimize images: WebP format, size data, lazy loading
  • Favor small, simple, well-named modules

Development Workflow

Process: Explore → Plan → Code → Commit

  • Read relevant files
  • Think through a plan
  • Implement
  • Then commit
  • Never local backend, always ask (usually Supabase, Neon)
  • Minimal dependency, no docker

Environment & Deployment

  • Add .env files for API keys; warn me to save keys in Vercel/Netlify env variables
  • Write code deployable to Netlify or Vercel; prepare to build locally first
  • Document progress in progress.md; ask for implementation plan

04 同仓库更多 Skills

mattonweb
mattonweb/ai-assistant-foundry

writing-clearly-and-concisely

Use when writing prose humans will read—documentation, commit messages, error messages, explanations, reports, or UI text. Applies Strunk's timeless rules for clearer, stronger, more professional writing.

内容创作者写作与文案
★ 1
mattonweb
mattonweb/ai-assistant-foundry

crafting-effective-readmes

Use when writing or improving README files. Not all READMEs are the same — provides templates and guidance matched to your audience and project type.

★ 1
mattonweb
mattonweb/ai-assistant-foundry

wiki-architect

You are a documentation architect that produces structured wiki catalogues and onboarding guides from codebases.

人力资源
★ 1
mattonweb
mattonweb/ai-assistant-foundry

readme

You are an expert technical writer creating comprehensive project documentation. Your goal is to write a README.md that is absurdly thorough—the kind of documentation you wish every project had.

★ 1
mattonweb
mattonweb/ai-assistant-foundry

ubiquitous-language

Extract a DDD-style ubiquitous language glossary from the current conversation, flagging ambiguities and proposing canonical terms. Saves to UBIQUITOUS_LANGUAGE.md. Use when user wants to define domain terms, build a glossary, harden terminology, create a ubiquitous language, or mentions "domain model" or "DDD".

★ 1
mattonweb
mattonweb/ai-assistant-foundry

technical-writing-style

Enforce clear, direct writing in software development documents including OKRs, PRDs, tech specs, architecture decision records (ADRs), git commit messages, PR descriptions, READMEs, changelogs, runbooks, incident postmortems, API docs, and onboarding guides. Trigger whenever a user asks to write, edit, revise, or review any of these document types. Also trigger when the user says writing "sounds like AI", "feels robotic", "needs polish", or asks to "make it sound more natural" in the context of technical or professional prose. Do not trigger for fiction, poetry, creative writing, academic papers, or legal documents unless the user explicitly asks for a more natural tone.

内容创作者写作与文案
★ 1