Audit and improve web accessibility following WCAG 2.2 guidelines. Use when asked to "improve accessibility", "a11y audit", "WCAG compliance", "screen reader support", "keyboard navigation", or "make accessible".
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Create portfolios using Devsync template with automated CV, GitHub, LinkedIn, and academics generation
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Create and maintain developer portfolios using the Devsync template system. This skill guides you through building portfolios where all content comes from DEVSYNC.json - never hardcode text in templates.
All UI text must use translations[lang]['key'] from @devsync/src/devsync/fields-translations.ts. Never write <h3>Projects</h3> - use <h3>{translations[lang]['Projects']}</h3>.
Templates are framework-agnostic. The developer chooses their own stack (Astro, Next.js, SvelteKit, Vue, vanilla HTML, etc.).
When generating a template, always ask:
Infer multilingual support directly unless user specifies otherwise.
{
"defaultLang": "en",
"site": "https://your-site.com",
"name": "Your Name",
"img": "https://image-url.com/photo.jpg",
"socialMedia": [{ "name": "LinkedIn", "url": "...", "icon": "...", "mdBadge": "..." }],
"githubUserName": "your-username"
}
{
"defaultLang": "en",
"site": "https://devsync.work",
"name": "Your Full Name",
"img": "https://your-image-url.com/your-image.jpg",
"socialMedia": [
{
"name": "LinkedIn",
"url": "https://www.linkedin.com/in/your-linkedin-handle",
"icon": "/icons/linkedin.svg",
"mdBadge": ""
}
],
"githubUserName": "your-github-username",
"en": {
"description": "Write a short professional summary about yourself. Example: Full-stack developer focused on developer experience, performance, and product quality.",
"jobTitle": "Your Current Job Title",
"status": {
"status": "your-status",
"badge": ""
},
"languages": [
{
"name": "Your Language 1 / Your Language 2",
"mdBadge": "",
"icon": "https://cdn.simpleicons.org/googletranslate"
}
],
"experience": [
{
"company": "Your Company Name",
"position": "Your Position Title",
"img": "https://your-image-url.com/company-image.jpg",
"web": "https://your-company-website.com",
"description": "Describe your role and impact in one concise sentence.",
"date": "MM/YY - Present",
"links": [
{
"name": "Company Website",
"url": "https://your-company-website.com",
"mdBadge": "",
"icon": "https://cdn.simpleicons.org/googlechrome"
}
],
"list": {
"title": "key-achievements",
"items": [
{
"highlight": "Achievement headline",
"description": "Describe one measurable result you delivered (performance, revenue, growth, reliability, etc.)."
}
]
},
"skills": [
{
"name": "Your Key Skill",
"mdBadge": "",
"icon": "https://cdn.simpleicons.org/codeforces"
}
]
}
],
"projects": [
{
"name": "Your Project Name",
"img": "https://your-image-url.com/project-image.jpg",
"web": "https://your-project-url.com",
"links": [
{
"name": "GitHub",
"url": "https://github.com/your-github-username/your-project-repo",
"mdBadge": "",
"icon": "/icons/github.svg"
}
],
"description": "Describe what the project does and why it matters.",
"list": {
"title": "project-highlights",
"items": [
{
"highlight": "Technical highlight",
"description": "Describe one concrete technical decision or outcome from this project."
}
]
},
"skills": [
{
"name": "Project Skill",
"mdBadge": "",
"icon": "https://cdn.simpleicons.org/git"
}
]
}
],
"education": [
{
"name": "Your University or Institution",
"degree": "Your Degree / Program",
"img": "https://your-image-url.com/education-image.jpg",
"date": "MM/YY - MM/YY",
"links": [
{
"name": "Program URL",
"url": "https://your-program-link.com",
"mdBadge": "",
"icon": "https://cdn.simpleicons.org/googlechrome"
}
],
"list": {
"title": "education-highlights",
"items": [
{
"highlight": "Academic highlight",
"description": "Describe a relevant course, thesis, capstone, or achievement."
}
]
}
}
],
"certifications": [
{
"name": "Your Certification Name",
"url": "https://your-certification-url.com",
"list": {
"title": "what-this-validates",
"items": [
{
"highlight": "Validated area",
"description": "Describe what this certification validates for your profile."
}
]
},
"skills": [
{
"name": "Certification Skill",
"mdBadge": "",
"icon": "https://cdn.simpleicons.org/coursera"
}
]
}
]
}
}
Key flexibility: Any section can be omitted - if experience is missing, it simply won't appear in CV. Portfolio can add custom fields beyond CV requirements.
{
"devsync": {
"pathToCompiledCV": "src/[lang]/cv.html"
}
}
Important: [lang] is a placeholder. The devsync build command iterates through available languages and replaces [lang] with each language code. If your portfolio is monolingual, the replacement still occurs but only one iteration happens.
The CLI command (bunx devsync build) executes:
bun installbun run buildDEVSYNC.json, filters out global fields to get language codespackage.json, replaces [lang], fetches HTML, generates PDFlinkedin-{lang}.md with professional summaryREADME.mdacademics/README.mdAvailable in 8 languages (en, es, fr, pt, de, zh, ja, ko):
Description, jobTitle, Status, LanguagesProfessional Experience, Projects, Education, CertificationsCore Skills, credential, academicsView Certificate, Selected projects, Let's connect, Github Profile, I am, LinksExtensible: Add new keys as needed for portfolio-specific UI text.
When a template needs UI text not covered by existing keys, add it to src/devsync/fields-translations.ts in all 8 languages:
'Open to work')// fields-translations.ts
export const translations = {
en: {
// ... existing keys
'Open to work': 'Open to work', // ← add here
},
es: {
// ... existing keys
'Open to work': 'Disponible para trabajar',
},
fr: {
'Open to work': 'Disponible',
},
// ... repeat for pt, de, zh, ja, ko
} as const
translations[lang]['Open to work']Never use the key string as literal UI text — always go through
translations[lang]. Missing a language will cause a TypeScript type error, which is the intended safety net.
.github/workflows/update-on-devsync-change.yml triggers on DEVSYNC.json pushes:
- run: bunx devsync build # Updates CV, README, LinkedIn, academics
- uses: git-auto-commit-action # Commits changes
bunx devsync build to generate artifactscv/{lang}.pdf - PDF CVREADME.md - GitHub profilelinkedin/{lang}.md - LinkedIn copyacademics/README.md - Academic historyZod schema in src/devsync/devsync-validator.ts validates:
Use parseDevsync(devsync) from @devsync/src/devsync/devsync.ts for validation.
import devsync, { languages, defaultLang, parseDevsync } from '@devsync/src/devsync/devsync'
Required structure for a Devsync portfolio template:
your-template/
├── public/
│ ├── poster-light-mode.webp # Light theme preview (600x315px)
│ ├── poster-dark-mode.webp # Dark theme preview (600x315px)
│ └── icons/ # Optional custom icons (linkedin.svg, github.svg, etc.)
├── src/
│ └── devsync/ # Copy from @devsync/src/devsync/
│ ├── devsync.ts
│ ├── devsync-validator.ts
│ └── fields-translations.ts
├── .github/
│ └── workflows/
│ └── update-on-devsync-change.yml
├── DEVSYNC.json
└── package.json
Required files:
public/poster-*.webp - Preview images for template gallerysrc/devsync/ - Core Devsync modules for translations and validation.github/workflows/update-on-devsync-change.yml - Auto-update workflowDEVSYNC.json - Configuration templatepackage.json - With devsync.pathToCompiledCV and devsync.poster configOptional:
public/icons/ - Custom icon SVGs referenced in socialMedia[].icon and links[].iconWhen publishing your Devsync template, include poster images for preview:
{
"name": "@your-username/devsync-template",
"devsync": {
"pathToCompiledCV": "src/[lang]/cv.html"
}
}
Poster images (required for template preview):
public/poster-light-mode.webp - Light theme preview (recommended: 600x315px)public/poster-dark-mode.webp - Dark theme preview (recommended: 600x315px)If posters are not provided, the default Devsync posters will be shown.
/icons/ for local, CDN URLs for externalMM/YY - Present or MM/YY - MM/YY아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Audit and improve web accessibility following WCAG 2.2 guidelines. Use when asked to "improve accessibility", "a11y audit", "WCAG compliance", "screen reader support", "keyboard navigation", or "make accessible".
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Skill for building with the Astro web framework. Helps create Astro components and pages, configure SSR adapters, set up content collections, deploy static sites, and manage project structure and CLI commands. Use when the user needs to work with Astro, mentions .astro files, asks about static site generation (SSG), islands architecture, content collections, or deploying an Astro project.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when building, testing, and deploying JavaScript/TypeScript applications. Reach for Bun when you need to run scripts, manage dependencies, bundle code, or test applications with a single unified tool.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when "why" isn't obvious. Use when user says "write a commit", "commit message", "generate commit", "/commit", or invokes /caveman-commit. Auto-triggers when staging changes.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Compress natural language memory files (CLAUDE.md, todos, preferences) into caveman format to save input tokens. Preserves all technical substance, code, URLs, and structure. Compressed version overwrites the original file. Human-readable backup saved as FILE.original.md. Trigger: /caveman:compress <filepath> or "compress memory file"
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.