← all publishers

JayKim88

@jaykim88 source repo

61 published skills

  1. Architecture Improvement · jaykim88
    Default to a modular monolith with enforced internal boundaries; treat microservices as a destination after boundaries prove stable, not a starting point. Use when structuring a backend, when tempted to split into services, or when module boundaries blur. Not for the actual schema-split / service-extraction migrations (use migration-strategy + schema-design).
    1 install
  2. API Caching Optimization · jaykim88
    Reduce duplicate/over-fetching requests, tune cache policies by freshness, invalidate caches after mutations, and shape queries. Use when duplicate API requests appear, stale data shows after a write, TTFB exceeds 500ms, or before shipping. Not for route-level rendering strategy (use render-strategy-decision) or Core Web Vitals tuning (use rendering-performance).
    1 install
  3. Render Strategy Decision · jaykim88
    Choose the right rendering strategy per Next.js route — SSG / ISR / SSR / CSR / Streaming + Suspense — driven by data shape, not by page type. Use when adding a new route, when a route unexpectedly renders dynamically, when performance issues prompt re-evaluation, or when a code review flags inconsistency. Not for diagnosing Core Web Vitals regressions (use rendering-performance) or tuning fetch/cache policies (use api-caching-optimization).
    1 install
  4. Design System Construction · jaykim88
    Build or audit a Tailwind + cva + shadcn/ui design system with two-tier tokens, variants, theming, and 4-state Storybook stories. Use when starting a new project, addressing UI inconsistency, onboarding a designer, adding dark mode / theming, when arbitrary values (w-[347px]) accumulate, or when component patterns repeat across 2+ places. Not for component-level extraction decisions (use component-quality) or WCAG conformance auditing (use accessibility-audit).
    1 install
  5. State Management Decisions · jaykim88
    Decision framework for choosing the right state location — URL, server cache, local component, or shared/global store. Use when state-sync bugs appear, prop drilling gets deep (3+ levels), filters/tabs lose state on reload, or quarterly review. Not for form state specifically (use form-ux) or when the state is actually server data (use api-caching-optimization).
    1 install
  6. Portfolio Analyzer · jaykim88
    AI-powered portfolio management with multi-agent analysis. Use when user says "analyze portfolio", "check stocks", "portfolio review", or similar investment-related requests.
    1 install
  7. Market Research By Desire · jaykim88
    Desire-based market research automation. Triggers: "market research by desire", "desire research", "욕망 기반 시장조사", "욕망 리서치", "욕망에서 시장 찾기", "/market-research-by-desire"
    1 install
  8. AI LLM Backend · jaykim88
    Build LLM features on the backend — deterministic agent loops (round-trip every tool call by id), RAG over a vector store, token/cost accounting, streaming, eval harness, and prompt-injection defense (treat all model context as untrusted). Use when adding an AI feature, building RAG, or wiring an agent loop. Not for the AI streaming UI on the frontend (use frontend-toolkit's AI integration) or general boundary input parsing (use data-validation).
    1 install
  9. Authentication · jaykim88
    Choose and implement auth correctly — JWT vs session vs OAuth decision, pin allowed algorithms server-side, rotate refresh tokens with reuse detection, avoid the classic JWT pitfalls. Use when adding login, integrating OAuth, or when token handling looks risky. Not for access control / permissions (use authorization) or a broader OWASP audit (use backend-security-audit).
    1 install
  10. Webhook Design · jaykim88
    Design webhooks correctly on both sides — sending (HMAC signing, retries with backoff, at-least-once) and receiving (verify signature on raw body, enqueue + 200 fast, dedupe on event id). Use when adding webhook delivery or consuming a provider's webhooks. Not for internal service-to-service events (use async-messaging) or general outbound-call retry policy (use resilience-patterns).
    1 install
  11. Async Messaging · jaykim88
    Build reliable event-driven flows with the Transactional Outbox pattern — write state and event in one transaction, relay asynchronously, achieve at-least-once delivery + consumer idempotency. Use when an action must reliably trigger downstream work, or when events are lost on crash (dual-write problem). Not for simple background work without state+event reliability (use background-jobs) or outbound HTTP webhook specifics (use webhook-design).
    1 install
  12. Background Jobs · jaykim88
    Run work off the request thread reliably — queue design, retries with exponential backoff + jitter, dead-letter queues, concurrency control, and idempotent handlers. Use when an operation is slow/external, when jobs fail silently, or when retries cause duplicates. Not for write+event transactional reliability — the dual-write problem (use async-messaging Outbox) or webhook-receiver specifics (use webhook-design).
    1 install
  13. Data Validation · jaykim88
    Validate untrusted input once at the trust boundary and return a typed parsed value (parse, don't validate). Use when adding an endpoint, accepting external input, or when invalid data leaks past the boundary into business logic. Not for defining the API contract/schema itself (use api-contract) or downstream business-rule logic — parse only at the trust boundary.
    1 install
  14. Security Audit · jaykim88
    OWASP Top 10 audit for frontend — XSS via dangerouslySetInnerHTML, env-var leaks, token storage, CSRF, broken access control (IDOR), open redirect, CSP, Supabase RLS, CORS, Zod env validation. Use when adding auth, after handling external input, before shipping, or quarterly. Not for the initial env-validation setup (use developer-experience) or wiring npm audit / CSP regression tests into CI (use cicd-pipeline).
    1 install
  15. Project Insight · jaykim88
    Comprehensive project analysis using multi-agent pipeline. Use when user says "analyze project", "project insight", "evaluate codebase", or wants to understand project quality.
    1 install
  16. Caching Strategy · jaykim88
    Design a cache layer — cache-aside read/write/invalidate, TTL + jitter, stampede prevention (single-flight / probabilistic refresh), and explicit invalidation. Use when read latency is high, the DB is read-bound, or a hot key causes thundering-herd load. Not for fixing the slow query at its source (use query-optimization first) or HTTP/browser caching (a frontend concern).
    1 install
  17. Async UX States · jaykim88
    Ensure every async view handles loading, error, and empty states correctly with proper Suspense boundaries and custom 404/500 pages. Use when QA reports blank screens, infinite spinners, or undefined exposure, or before shipping. Not for choosing route render strategy (use render-strategy-decision) or form-specific error handling (use form-ux).
    1 install
  18. Code Refactoring · jaykim88
    Refactor TypeScript/React code for readability and maintainability — remove `any`, name compound conditions, apply guard clauses, extract magic literals to constants, deduplicate shared logic. Use during PR review, before a feature touches a complex area, or on a weekly cadence. Not for component-level extraction (use component-quality) or cross-file/module restructuring (use architecture-improvement).
    1 install
  19. Decision Records · jaykim88
    Write RFC and ADR documents to capture technical decisions (including rejected alternatives) — Context / Options / Decision / Consequences format. Use before a hard-to-reverse architecture decision, when designing a large feature, when technical choices spark debate, or when PR reviewers request rationale. Not for evaluating a library to adopt (use new-tech-evaluation) or prioritizing debt migrations (use tech-debt-management) — this records the resulting decision.
    1 install
  20. Future Architect · jaykim88 bundle
    Organize thoughts and create actionable plans through conversational interviews. Use when user says "생각 정리", "계획 수립", "organize my thoughts", "plan clarification", or provides free-form thoughts with multiple topics
    1 install
  21. Learning Summary · jaykim88 bundle
    Summarize and document key learnings from the conversation. Use when user says "summarize", "document", "what did I learn", or wants to capture insights.
    1 install
  22. Migration Strategy · jaykim88
    Ship schema changes with zero downtime using the expand-contract pattern — never rename/drop in one step, backfill safely, keep old and new code coexisting during deploy. Use before any schema change on a live database. Not for designing the schema (use schema-design) or wiring migrations into CI (use cicd-pipeline).
    1 install
  23. Multitenancy Audit · jaykim88
    Choose a tenant isolation strategy (shared-schema+RLS / schema-per-tenant / db-per-tenant), propagate tenant context reliably per request, and keep an append-only audit log. Use when building multi-tenant SaaS, when tenants could see each other's data, or when compliance needs an audit trail. Not for per-user (non-tenant) access control (use authorization) or general OWASP review (use backend-security-audit).
    1 install
  24. Query Optimization · jaykim88
    Find and fix slow Postgres queries — rank by pg_stat_statements, diagnose with EXPLAIN (ANALYZE, BUFFERS), kill N+1 at the ORM layer, add the right index. Use when an endpoint is slow, DB CPU is high, or before scaling traffic. Not for schema/index design from scratch (use schema-design) or result-level caching (use caching-strategy).
    1 install
  25. Animation Quality · jaykim88
    Audit and improve animations for 60fps, prefers-reduced-motion compliance, motion-feel (duration/easing), and accessibility. Use when jank appears in scroll/interaction, INP regresses, an animation auto-plays/loops or flashes, or before shipping. Not for diagnosing broad Core Web Vitals regressions (use rendering-performance) or full WCAG conformance auditing (use accessibility-audit).
    1 install
  26. Component Quality · jaykim88
    Improve React component design — split Container/Presentational, add useEffect cleanup, extract custom hooks, apply cva + cn() consistently, decide extraction with explicit criteria. Use when a pattern repeats 2+ times, a file exceeds 500 LOC, or PR review flags component complexity. Not for non-component code changes (use code-refactoring) or extraction into the shared component library (use design-system-construction).
    1 install
  27. I18N Localization · jaykim88
    Set up or audit internationalization — message extraction, locale routing strategy, server/client message split, ICU plurals, date/number/currency formatting, RTL, missing-key fallback, pseudo-localization testing. Use when adding a second locale, when hardcoded strings accumulate, or before going multi-region. Not for emitting hreflang/per-locale canonical tags (use seo-metadata) or deciding static vs dynamic rendering of locale routes (use render-strategy-decision).
    1 install
  28. Responsive Design · jaykim88
    Build mobile-first responsive layouts — breakpoint strategy, fluid type/space with clamp(), container queries, mobile viewport units (dvh) + overflow robustness, touch-target testing, responsive images. Use when adding a layout, when mobile bugs appear, or before shipping a public page. Not for codifying breakpoint/fluid scales as design tokens (use design-system-construction) or auditing touch-target size and zoom against WCAG (use accessibility-audit).
    1 install
  29. Observability Setup · jaykim88
    Instrument a backend with the three signals unified by one correlation context — structured logs, metrics (RED for services, USE for resources), and distributed tracing (OpenTelemetry + W3C Trace Context). Use before production, when debugging is blind, or when an incident has no trail. Not for diagnosing specific bottlenecks (use performance-profiling) or AI-specific token/cost metrics (use ai-llm-backend on top of this backbone).
    1 install
  30. Resilience Patterns · jaykim88
    Apply reliability primitives — capped exponential backoff with jitter, circuit breakers, timeouts, and idempotency keys — to every outbound call and mutating endpoint. Use when integrating an external service, when retries cause duplicate effects, or before shipping a payment/order flow. Not for job-runner retry config specifically (use background-jobs) or webhook-delivery specifics (use webhook-design, which reuses these primitives).
    1 install
  31. Accessibility Audit · jaykim88
    WCAG 2.2 AA audit — semantic HTML, axe-core + eslint-plugin-jsx-a11y, keyboard navigation, ARIA, color contrast, target size, focus-not-obscured, prefers-reduced-motion. Use when completing a new component, after design system changes, or before shipping. Not for form label/aria-describedby patterns (use form-ux) or baking a11y into shared components from the start (use design-system-construction).
    1 install
  32. Bundle Optimization · jaykim88
    Reduce initial JS bundle size via Bundle Analyzer, optimizePackageImports, code splitting, and unused-dep removal. Use when bundle exceeds target, after adding a large dependency, when Lighthouse Performance drops, or before shipping. Not for diagnosing runtime Core Web Vitals (use rendering-performance) or evaluating a library's size before adopting it (use new-tech-evaluation).
    1 install
  33. New Tech Evaluation · jaykim88
    Evaluate a new library, framework version, or AI integration with bundle size, TypeScript support, maintenance status, security/supply-chain, and migration + exit cost. POC + benchmark before adoption. Use at quarterly tech review, when a new library could solve a pain point, on a React/Next.js major version release, or on AI API major updates. Not for recording the resulting decision (use decision-records) or shrinking an already-adopted dependency (use bundle-optimization).
    1 install
  34. Third Party Scripts · jaykim88
    Audit and optimize third-party scripts — analytics, tag managers, chat widgets, embeds — with the right loading strategy, performance budget, facades, and CSP/consent controls. Use when adding a script, when TBT/INP regress, when a GDPR/CCPA consent requirement arises, or before shipping. Not for first-party bundle size (use bundle-optimization) or broad Core Web Vitals diagnosis (use rendering-performance).
    1 install
  35. Performance Profiling · jaykim88
    Find and fix backend bottlenecks — connection pooling, p95/p99 latency, load testing with SLO-aligned thresholds (k6), and CPU profiling (flame graphs). Use when latency is high, throughput plateaus, or before scaling traffic. Not for DB query specifics (use query-optimization) or read-load shedding (use caching-strategy).
    1 install
  36. Competitive Agents · jaykim88
    Orchestrate competing agents to generate higher-quality plugin implementations. Use when user says "compete", "competitive agents", "dual generate", "에이전트 경쟁", "플러그인 배틀", or wants two agents to compete on a generation task.
    1 install
  37. Developer Experience · jaykim88
    Set up DX baseline — ESLint + Prettier + husky + lint-staged + commitlint, strict TypeScript, path alias, t3-env for typed env vars, Node/package-manager pinning, .editorconfig, .vscode/extensions.json, CONTRIBUTING.md. Use at project start, during team onboarding, when ESLint warnings pile up, or local builds slow down. Coordinates with cicd-pipeline (local pre-commit gating complements CI) and security-audit (typed env validation hardens the secret-leak surface).
    1 install
  38. Tech Debt Management · jaykim88
    Inventory and prioritize technical debt — TODO/FIXME/HACK, any usage, deprecated APIs, untested logic — with impact × effort matrix. Use at quarter start, before a refactoring sprint, when a new teammate joins, or when feature velocity slows. Not for actually paying down debt (use code-refactoring) or recording a migration approach (use decision-records) — this only inventories and prioritizes.
    1 install
  39. Planning Interview · jaykim88
    Conducts adaptive product planning interviews to generate comprehensive service documentation in a unified flow. Covers PRD (Lean Canvas / Product Brief / Full PRD), User Journey Map, Technical Specification, and Wireframe Specification. Mode determines interview depth; user selects which documents to generate. Use when user says "planning interview", "PRD", "기획해줘", "전체 기획", "서비스 기획", "기획부터 스펙까지".
    1 install
  40. Backend Security Audit · jaykim88
    Audit a backend against the OWASP API Security Top 10 — BOLA/BFLA, injection, secrets, mass assignment — with an exploit scenario per finding. Use when adding auth/external input, before shipping, or on a quarterly security review. Not for implementing auth from scratch (use authentication / authorization) — each finding maps to its sibling skill for the fix.
    1 install
  41. Transaction Management · jaykim88
    Use transactions and isolation levels correctly — keep them short, no network calls inside, explicit isolation, retry on serialization conflicts, and choose optimistic vs pessimistic locking. Use when a write spans multiple tables, when concurrent updates corrupt data, or when designing money/inventory flows. Not for cross-service event delivery (use async-messaging Outbox) or schema-level constraints (use schema-design).
    1 install
  42. Rendering Performance · jaykim88
    Diagnose and fix Core Web Vitals (LCP ≤ 2.5s, INP ≤ 200ms, CLS ≤ 0.1) with measurement-first methodology. Use when Lighthouse drops, CWV field data fails, users report slowness, or before shipping. Not for when JS payload is the bottleneck (use bundle-optimization) or moving work to the server (use render-strategy-decision).
    1 install
  43. Rich Chat · jaykim88
    Use when user says "재테크 상담", "부자 상담", "투자 상담", "rich chat", "wealth chat", "재테크 질문", "돈 상담", "재무 상담", or wants real-time conversational financial advice. Loads expert knowledge base and enables multi-round Q&A with a wealth advisor.
    1 install
  44. Wrap To Blog · jaykim88
    Converts wrap-up session data into a blog log post for the ai-learning blog's logs collection. Invoked automatically from wrap-up Step 6, or triggered manually.
    1 install
  45. Launch Kit · jaykim88
    4-question interview that instantly generates all validation content for an indie hacker's product idea. Produces landing page copy, Indie Hackers post, Reddit r/SideProject post, email sequence, and Founding Plan pre-sale offer — all in one markdown file. Use when user says "launch-kit", "/launch-kit", "아이디어 검증", "랜딩페이지 만들어줘", "validate my idea", "검증 키트", "launch my idea".
    1 install
  46. Form UX · jaykim88
    Build forms with correct loading, success, and error UX using Server Actions + react-hook-form + Zod. Use when adding a new form, after QA reports form bugs, when errors aren't announced or input is lost on submit, or before shipping. Not for general state-store selection (use state-management-decisions) or non-form error/empty UI states (use async-ux-states).
    1 install
  47. Market Pulse · jaykim88
    Financial market analysis dashboard with value investing tools. Use when user says "market overview", "market pulse", "stock market", "시장 분석", "주식 시장", "시장 현황", "증시 분석", "시장 브리핑", "가치투자", "안전마진", "PEG 스크리닝", "기업 분석", or wants to check financial markets, stocks, crypto, or analyze stocks using Graham/Lynch/Buffett strategies.
    1 install
  48. Prism Debate · jaykim88
    Multi-perspective adversarial analysis. 3-5 agents view a proposition through different lenses — cross-rebutting across rounds with position tracking. Supports quick verdict, autonomous rounds, and user-participatory modes. Use when user says "prism-debate", "prism", "/prism", "토론해줘", "검증해줘", "반박해줘", "반론해줘", "도전해줘", or invokes adversarial analysis of any proposition.
    1 install
  49. API Design · jaykim88
    Choose the API protocol (REST / GraphQL / gRPC) by traffic shape and design resources, versioning, and async patterns. Use when adding a new API surface, designing a service boundary, or when clients complain about over/under-fetching. Not for the schema/error envelope details (use api-contract) or per-resource access control (use authorization).
    1 install
  50. API Contract · jaykim88
    Define a schema-first API contract — standardized error envelope (RFC 9457), pagination, status codes, consistent JSON shapes. Use when establishing API conventions, before multiple teams consume an API, or when error responses are inconsistent. Not for choosing the protocol or modeling resources (use api-design) or for runtime input parsing at the boundary (use data-validation).
    1 install
  51. AI News Digest · jaykim88
    Aggregates latest AI news from RSS feeds and presents an interactive Top 10 digest. Use when user says "latest AI news", "AI news digest", "what's new in AI", "fetch AI news", or wants to see recent AI developments.
    1 install
  52. Authorization · jaykim88
    Design access control — RBAC for coarse function-level checks, Postgres Row Level Security (RLS) for row-level data isolation, ABAC pushed to the app/policy layer. Use when adding permissions, building multi-user data access, or when one user can see another's data. Not for establishing who the caller is (use authentication) or tenant isolation specifically (use multitenancy-audit).
    1 install
  53. Cicd Pipeline · jaykim88
    Build a backend CI/CD pipeline — containerized builds, type-check/lint/test gates, DB migration as an explicit gate, SHA-tagged images, and blue-green/canary deploy with rollback. Use at project init, when deploys are manual/risky, or when migrations break production. Not for designing the migration itself (use migration-strategy) or the test pyramid (use test-strategy).
    1 install
  54. Schema Design · jaykim88
    Design a relational schema — normalize to 3NF then denormalize with justification, choose the right Postgres index type per data shape, enforce constraints at the DB. Use when modeling a new domain, when queries are slow, or before a migration. Not for diagnosing slow queries (use query-optimization) or shipping the change without downtime (use migration-strategy).
    1 install
  55. Test Strategy · jaykim88
    Backend testing pyramid — unit for pure logic, integration against a real DB (Testcontainers), and consumer-driven contract testing (Pact) for service boundaries. Use before a feature, after a bug fix, or when services break each other on deploy. Not for load testing (use performance-profiling) or security testing (use backend-security-audit).
    1 install
  56. Blog Generator · jaykim88
    Transform technical notes into blog posts. Use when user says "blog-generator", "/blog-generator", "블로그 글 작성", "블로그로 변환", "write a blog post", "turn this into a blog", or provides technical content to convert into blog format.
    1 install
  57. Career Compass · jaykim88 bundle
    AI-powered career path analysis with 8-agent pipeline. Use when user says "analyze my career", "career path recommendation", "career compass", "transition to [role]", "career guidance", or wants personalized career roadmap.
    1 install
  58. SEO Metadata · jaykim88
    Apply Next.js Metadata API per route — title template, og:image, generateMetadata for dynamic pages, JSON-LD structured data, robots, sitemap, canonical, hreflang. Use when adding a new route, when search visibility drops, when rich results are needed, or before shipping. Not for choosing a route's render mode (use render-strategy-decision); align generateMetadata with that route caching choice.
    1 install
  59. Session Review · jaykim88
    Review code changes made by Claude in the current session. Reads session-tracked file list from /tmp, runs git diff, and produces a prioritized code review. Use when user says "/session-review", "session review", "세션 리뷰", or "이번 세션 리뷰".
    1 install
  60. Plugin Name · jaykim88
    Brief description. Use when user says "trigger phrase 1", "trigger phrase 2", or wants to [action].
    1 install
  61. Wrap Up · jaykim88 bundle
    Document session work history and todos into a per-topic file. Use when user says "wrap up", "wrap-up", "작업 정리", "세션 정리", "마무리", or wants to record session progress.
    1 install