@votruongdanh/ai-agent-skills 3.4.0 → 3.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/.agents/.skills-version +1 -1
  2. package/.agents/skills/agents/SKILL.md +1 -0
  3. package/.agents/skills/brainstorm/SKILL.md +1 -0
  4. package/.agents/skills/clean/SKILL.md +1 -0
  5. package/.agents/skills/create/SKILL.md +1 -0
  6. package/.agents/skills/debug/SKILL.md +1 -0
  7. package/.agents/skills/deploy/SKILL.md +1 -0
  8. package/.agents/skills/enhance/SKILL.md +1 -0
  9. package/.agents/skills/explain/SKILL.md +2 -0
  10. package/.agents/skills/integrate/SKILL.md +1 -0
  11. package/.agents/skills/motion-ui/SKILL.md +1 -0
  12. package/.agents/skills/orchestrate/SKILL.md +1 -0
  13. package/.agents/skills/plan/SKILL.md +1 -0
  14. package/.agents/skills/preview/SKILL.md +1 -0
  15. package/.agents/skills/status/SKILL.md +1 -0
  16. package/.agents/skills/test/SKILL.md +1 -0
  17. package/.agents/skills/ui-ux-pro-max/SKILL.md +1 -0
  18. package/.kiro/.skills-version +1 -1
  19. package/.kiro/skills/agents/SKILL.md +1 -0
  20. package/.kiro/skills/brainstorm/SKILL.md +1 -0
  21. package/.kiro/skills/clean/SKILL.md +1 -0
  22. package/.kiro/skills/create/SKILL.md +1 -0
  23. package/.kiro/skills/debug/SKILL.md +1 -0
  24. package/.kiro/skills/deploy/SKILL.md +1 -0
  25. package/.kiro/skills/enhance/SKILL.md +1 -0
  26. package/.kiro/skills/explain/SKILL.md +2 -0
  27. package/.kiro/skills/integrate/SKILL.md +1 -0
  28. package/.kiro/skills/motion-ui/SKILL.md +1 -0
  29. package/.kiro/skills/orchestrate/SKILL.md +1 -0
  30. package/.kiro/skills/plan/SKILL.md +1 -0
  31. package/.kiro/skills/preview/SKILL.md +1 -0
  32. package/.kiro/skills/status/SKILL.md +1 -0
  33. package/.kiro/skills/test/SKILL.md +1 -0
  34. package/.kiro/skills/ui-ux-pro-max/SKILL.md +1 -0
  35. package/lib/skill-bundle.js +25 -2
  36. package/package.json +1 -1
  37. package/scripts/check_workflows.js +17 -0
  38. package/skills/agents/SKILL.md +4 -0
  39. package/skills/brainstorm/SKILL.md +4 -0
  40. package/skills/clean/SKILL.md +4 -0
  41. package/skills/create/SKILL.md +4 -0
  42. package/skills/debug/SKILL.md +4 -0
  43. package/skills/deploy/SKILL.md +4 -0
  44. package/skills/enhance/SKILL.md +4 -0
  45. package/skills/explain/SKILL.md +2 -0
  46. package/skills/instructions.md +2 -0
  47. package/skills/integrate/SKILL.md +4 -0
  48. package/skills/motion-ui/SKILL.md +4 -0
  49. package/skills/orchestrate/SKILL.md +4 -0
  50. package/skills/plan/SKILL.md +4 -0
  51. package/skills/preview/SKILL.md +4 -0
  52. package/skills/status/SKILL.md +4 -0
  53. package/skills/test/SKILL.md +4 -0
  54. package/skills/ui-ux-pro-max/SKILL.md +4 -0
@@ -1 +1 @@
1
- 3.3.4
1
+ 3.4.0
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: agents
3
3
  description: "Agent routing system — automatically selects the best specialist agent based on user request domain. Handles keyword matching, Vietnamese and English triggers, compound-keyword routing, vague-request fallback, and multi-agent coordination. This skill is always loaded silently."
4
+ encoding: "UTF-8"
4
5
  metadata:
5
6
  category: system
6
7
  auto-load: true
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: brainstorm
3
3
  description: "Ideation, option generation, and feature exploration. Use when the user wants to brainstorm ideas, explore options, compare approaches, or generate creative solutions. Triggers: brainstorm, ideate, options, ý tưởng, so sánh phương án."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [plan, create, orchestrate]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: clean
3
3
  description: "Clean up junk files, temporary files, AI-generated artifacts, and caches. Use when the user wants to remove unused files, reduce repo clutter, or update .gitignore. Triggers: clean, remove junk, dọn dẹp, xoá file rác, cache."
4
+ encoding: "UTF-8"
4
5
  agents: [devops-engineer]
5
6
  related-skills: [status, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: create
3
3
  description: "Build new features, files, components, endpoints, pages, or scripts. Use when the user wants to create something new in the codebase. Triggers: create, build, add, new, scaffold, tạo, thêm mới, tạo trang, tạo API."
4
+ encoding: "UTF-8"
4
5
  agents: [backend-specialist, frontend-specialist, database-architect]
5
6
  related-skills: [plan, test, debug]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: debug
3
3
  description: "Root-cause analysis for bugs, failing commands, broken behavior, and error logs. Use when the user encounters errors, crashes, or unexpected behavior. Triggers: debug, fix, bug, error, crash, lỗi, sửa lỗi, hỏng, fail."
4
+ encoding: "UTF-8"
4
5
  agents: [debugger, backend-specialist, frontend-specialist]
5
6
  related-skills: [test, enhance, status]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: deploy
3
3
  description: "Deployment steps, release preparation, environment setup, CI/CD guidance, and production rollout. Use when the user wants to deploy, release, or set up infrastructure. Triggers: deploy, release, CI/CD, docker, production, triển khai, phát hành, đưa lên production."
4
+ encoding: "UTF-8"
4
5
  agents: [devops-engineer, security-auditor]
5
6
  related-skills: [test, status, plan]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: enhance
3
3
  description: "Improve existing code — refactor, optimize performance, tighten security, or enhance UX. Use when the user wants to make code better without changing its purpose. Triggers: enhance, improve, refactor, optimize, review, cải thiện, tối ưu, nhanh hơn, code dài quá."
4
+ encoding: "UTF-8"
4
5
  agents: [performance-optimizer, security-auditor, frontend-specialist]
5
6
  related-skills: [debug, test, plan]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: explain
3
3
  description: "Explain code, walk through logic, and help understand architecture or behavior. Use when the user asks what code does, how something works, or wants a walkthrough. Triggers: explain, what does this do, how does this work, giải thích, giải thích code, code này làm gì."
4
+ encoding: "UTF-8"
4
5
  agents: [documentation-writer, backend-specialist, frontend-specialist]
5
6
  related-skills: [debug, enhance, status]
6
7
  ---
@@ -65,6 +66,7 @@ If any answer is unclear, ASK before proceeding.
65
66
  - If the code is unclear or has issues, mention them without derailing the explanation.
66
67
  - Avoid proposing wide changes mid-explanation; if improvement requires broader edits, ASK before switching to implementation.
67
68
  - Always read and update the memory file.
69
+ - Code encoding: All code snippets and files referenced or produced must be UTF-8 encoded. When providing example files, ensure they use UTF-8 and indicate `encoding: "UTF-8"` in front-matter where applicable.
68
70
 
69
71
  ## Related Skills
70
72
  - `/debug` → read `.kiro/skills/debug/SKILL.md` — If explanation reveals bugs
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: integrate
3
3
  description: "Integrate provided sample code/snippets into the existing system with minimal changes and minimal risk. Use when the user gives a code mẫu and wants to merge it into current project. Triggers: integrate, merge snippet, gộp code mẫu, ghép code, áp code mẫu vào hệ thống."
4
+ encoding: "UTF-8"
4
5
  agents: [backend-specialist, frontend-specialist, debugger]
5
6
  related-skills: [plan, test, debug, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: motion-ui
3
3
  description: "Advanced Motion UI (AMUI) — Create clean, modern UI with subtle Framer Motion micro-interactions, clear states (idle/loading/success/error), consistent styling via design tokens, and smooth animations. Use when the user wants motion-rich, polished UI with micro-interactions. Triggers: motion, animation, framer motion, micro-interaction, smooth ui, amui, chuyển động, hiệu ứng mượt."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist]
5
6
  related-skills: [create, ui-ux-pro-max, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: orchestrate
3
3
  description: "Coordinate multi-step plans across multiple roles, files, systems, or parallel workstreams. Use when the user has a complex request spanning multiple domains or needing decomposition. Triggers: orchestrate, coordinate, multi-step, full-stack, tổng hợp, làm nhiều bước."
4
+ encoding: "UTF-8"
4
5
  agents: [orchestrator, project-planner]
5
6
  related-skills: [plan, create, deploy, test]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: plan
3
3
  description: "Create concrete implementation plans with milestones, task breakdowns, and estimates. Use when the user wants to plan, organize work, or create a roadmap. Triggers: plan, milestone, breakdown, roadmap, estimate, kế hoạch, lên kế hoạch, phân chia công việc."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [brainstorm, create, orchestrate]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: preview
3
3
  description: "Preview expected output, UX flows, copy, interaction design, or generated content before implementing. Use when the user wants to see what something will look like. Triggers: preview, mockup, show me, xem trước, thử xem, mô phỏng."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist, documentation-writer]
5
6
  related-skills: [create, ui-ux-pro-max, plan]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: status
3
3
  description: "Project status summary, progress snapshots, repo overview, and outstanding work tracking. Use when the user wants to know where a project stands. Triggers: status, progress, overview, what's done, dự án đang ở đâu, tiến độ, tổng quan."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [plan, debug, deploy]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: test
3
3
  description: "Write tests, improve coverage, define test strategy, and add validation. Use when the user wants to test code, add unit/integration/e2e tests, or check coverage. Triggers: test, coverage, jest, vitest, playwright, spec, kiểm thử, viết test."
4
+ encoding: "UTF-8"
4
5
  agents: [test-engineer, debugger]
5
6
  related-skills: [debug, create, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: ui-ux-pro-max
3
3
  description: "Advanced UI/UX improvements — layout, design critique, copy refinement, interaction design, accessibility, and responsive patterns. Use when the user wants professional-grade UI/UX upgrades. Triggers: ui, ux, design, layout, responsive, giao diện, thiết kế, cải thiện UI."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist, performance-optimizer]
5
6
  related-skills: [create, preview, enhance]
6
7
  ---
@@ -1 +1 @@
1
- 3.3.4
1
+ 3.4.0
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: agents
3
3
  description: "Agent routing system — automatically selects the best specialist agent based on user request domain. Handles keyword matching, Vietnamese and English triggers, compound-keyword routing, vague-request fallback, and multi-agent coordination. This skill is always loaded silently."
4
+ encoding: "UTF-8"
4
5
  metadata:
5
6
  category: system
6
7
  auto-load: true
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: brainstorm
3
3
  description: "Ideation, option generation, and feature exploration. Use when the user wants to brainstorm ideas, explore options, compare approaches, or generate creative solutions. Triggers: brainstorm, ideate, options, ý tưởng, so sánh phương án."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [plan, create, orchestrate]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: clean
3
3
  description: "Clean up junk files, temporary files, AI-generated artifacts, and caches. Use when the user wants to remove unused files, reduce repo clutter, or update .gitignore. Triggers: clean, remove junk, dọn dẹp, xoá file rác, cache."
4
+ encoding: "UTF-8"
4
5
  agents: [devops-engineer]
5
6
  related-skills: [status, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: create
3
3
  description: "Build new features, files, components, endpoints, pages, or scripts. Use when the user wants to create something new in the codebase. Triggers: create, build, add, new, scaffold, tạo, thêm mới, tạo trang, tạo API."
4
+ encoding: "UTF-8"
4
5
  agents: [backend-specialist, frontend-specialist, database-architect]
5
6
  related-skills: [plan, test, debug]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: debug
3
3
  description: "Root-cause analysis for bugs, failing commands, broken behavior, and error logs. Use when the user encounters errors, crashes, or unexpected behavior. Triggers: debug, fix, bug, error, crash, lỗi, sửa lỗi, hỏng, fail."
4
+ encoding: "UTF-8"
4
5
  agents: [debugger, backend-specialist, frontend-specialist]
5
6
  related-skills: [test, enhance, status]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: deploy
3
3
  description: "Deployment steps, release preparation, environment setup, CI/CD guidance, and production rollout. Use when the user wants to deploy, release, or set up infrastructure. Triggers: deploy, release, CI/CD, docker, production, triển khai, phát hành, đưa lên production."
4
+ encoding: "UTF-8"
4
5
  agents: [devops-engineer, security-auditor]
5
6
  related-skills: [test, status, plan]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: enhance
3
3
  description: "Improve existing code — refactor, optimize performance, tighten security, or enhance UX. Use when the user wants to make code better without changing its purpose. Triggers: enhance, improve, refactor, optimize, review, cải thiện, tối ưu, nhanh hơn, code dài quá."
4
+ encoding: "UTF-8"
4
5
  agents: [performance-optimizer, security-auditor, frontend-specialist]
5
6
  related-skills: [debug, test, plan]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: explain
3
3
  description: "Explain code, walk through logic, and help understand architecture or behavior. Use when the user asks what code does, how something works, or wants a walkthrough. Triggers: explain, what does this do, how does this work, giải thích, giải thích code, code này làm gì."
4
+ encoding: "UTF-8"
4
5
  agents: [documentation-writer, backend-specialist, frontend-specialist]
5
6
  related-skills: [debug, enhance, status]
6
7
  ---
@@ -65,6 +66,7 @@ If any answer is unclear, ASK before proceeding.
65
66
  - If the code is unclear or has issues, mention them without derailing the explanation.
66
67
  - Avoid proposing wide changes mid-explanation; if improvement requires broader edits, ASK before switching to implementation.
67
68
  - Always read and update the memory file.
69
+ - Code encoding: All code snippets and files referenced or produced must be UTF-8 encoded. When providing example files, ensure they use UTF-8 and indicate `encoding: "UTF-8"` in front-matter where applicable.
68
70
 
69
71
  ## Related Skills
70
72
  - `/debug` → read `.kiro/skills/debug/SKILL.md` — If explanation reveals bugs
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: integrate
3
3
  description: "Integrate provided sample code/snippets into the existing system with minimal changes and minimal risk. Use when the user gives a code mẫu and wants to merge it into current project. Triggers: integrate, merge snippet, gộp code mẫu, ghép code, áp code mẫu vào hệ thống."
4
+ encoding: "UTF-8"
4
5
  agents: [backend-specialist, frontend-specialist, debugger]
5
6
  related-skills: [plan, test, debug, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: motion-ui
3
3
  description: "Advanced Motion UI (AMUI) — Create clean, modern UI with subtle Framer Motion micro-interactions, clear states (idle/loading/success/error), consistent styling via design tokens, and smooth animations. Use when the user wants motion-rich, polished UI with micro-interactions. Triggers: motion, animation, framer motion, micro-interaction, smooth ui, amui, chuyển động, hiệu ứng mượt."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist]
5
6
  related-skills: [create, ui-ux-pro-max, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: orchestrate
3
3
  description: "Coordinate multi-step plans across multiple roles, files, systems, or parallel workstreams. Use when the user has a complex request spanning multiple domains or needing decomposition. Triggers: orchestrate, coordinate, multi-step, full-stack, tổng hợp, làm nhiều bước."
4
+ encoding: "UTF-8"
4
5
  agents: [orchestrator, project-planner]
5
6
  related-skills: [plan, create, deploy, test]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: plan
3
3
  description: "Create concrete implementation plans with milestones, task breakdowns, and estimates. Use when the user wants to plan, organize work, or create a roadmap. Triggers: plan, milestone, breakdown, roadmap, estimate, kế hoạch, lên kế hoạch, phân chia công việc."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [brainstorm, create, orchestrate]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: preview
3
3
  description: "Preview expected output, UX flows, copy, interaction design, or generated content before implementing. Use when the user wants to see what something will look like. Triggers: preview, mockup, show me, xem trước, thử xem, mô phỏng."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist, documentation-writer]
5
6
  related-skills: [create, ui-ux-pro-max, plan]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: status
3
3
  description: "Project status summary, progress snapshots, repo overview, and outstanding work tracking. Use when the user wants to know where a project stands. Triggers: status, progress, overview, what's done, dự án đang ở đâu, tiến độ, tổng quan."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [plan, debug, deploy]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: test
3
3
  description: "Write tests, improve coverage, define test strategy, and add validation. Use when the user wants to test code, add unit/integration/e2e tests, or check coverage. Triggers: test, coverage, jest, vitest, playwright, spec, kiểm thử, viết test."
4
+ encoding: "UTF-8"
4
5
  agents: [test-engineer, debugger]
5
6
  related-skills: [debug, create, enhance]
6
7
  ---
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: ui-ux-pro-max
3
3
  description: "Advanced UI/UX improvements — layout, design critique, copy refinement, interaction design, accessibility, and responsive patterns. Use when the user wants professional-grade UI/UX upgrades. Triggers: ui, ux, design, layout, responsive, giao diện, thiết kế, cải thiện UI."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist, performance-optimizer]
5
6
  related-skills: [create, preview, enhance]
6
7
  ---
@@ -415,6 +415,7 @@ function renderSkillFile(skill, format) {
415
415
  const lines = [
416
416
  '---',
417
417
  `description: ${toYamlString(skill.description)}`,
418
+ `encoding: "UTF-8"`,
418
419
  ];
419
420
  if (skill.agents && skill.agents.length) {
420
421
  lines.push(`agents: [${skill.agents.join(', ')}]`);
@@ -427,6 +428,7 @@ function renderSkillFile(skill, format) {
427
428
  const lines = [
428
429
  '---',
429
430
  `description: ${toYamlString(skill.description)}`,
431
+ `encoding: "UTF-8"`,
430
432
  ];
431
433
  if (skill.agents && skill.agents.length) {
432
434
  lines.push(`agents: [${skill.agents.join(', ')}]`);
@@ -438,6 +440,21 @@ function renderSkillFile(skill, format) {
438
440
  throw new Error(`Unsupported skill format: ${format}`);
439
441
  }
440
442
 
443
+ function ensureEncodingInFile(filePath) {
444
+ try {
445
+ const text = fs.readFileSync(filePath, 'utf8');
446
+ const parsed = parseFrontmatter(text);
447
+ if (!parsed.frontmatter.encoding) {
448
+ parsed.frontmatter.encoding = 'UTF-8';
449
+ const fm = yaml.stringify(parsed.frontmatter).trim();
450
+ const newContent = ['---', fm, '---', '', parsed.body, ''].join('\n');
451
+ fs.writeFileSync(filePath, newContent, 'utf8');
452
+ }
453
+ } catch (err) {
454
+ // If the file is missing frontmatter or can't be parsed, skip silently
455
+ }
456
+ }
457
+
441
458
  function buildGeneratedTargetWarnings(skill, format, targetDir) {
442
459
  if (format === 'skill' || !skill.assetDirectories.length) {
443
460
  return [];
@@ -461,9 +478,13 @@ function writeSkillTarget(skill, targetDir, format) {
461
478
  ensureDirectory(targetDir);
462
479
 
463
480
  if (format === 'skill') {
464
- copyDirectory(skill.skillDir, path.join(targetDir, skill.slug));
481
+ const destDir = path.join(targetDir, skill.slug);
482
+ copyDirectory(skill.skillDir, destDir);
483
+ // Ensure the copied SKILL.md includes an encoding field
484
+ const copiedSkillFile = path.join(destDir, 'SKILL.md');
485
+ ensureEncodingInFile(copiedSkillFile);
465
486
  return {
466
- outputPath: path.join(targetDir, skill.slug, 'SKILL.md'),
487
+ outputPath: copiedSkillFile,
467
488
  warnings: [],
468
489
  };
469
490
  }
@@ -609,6 +630,8 @@ function installBundle(options) {
609
630
  'autoRun: true',
610
631
  '---',
611
632
  '',
633
+ `Canonical source: .kiro/skills/instructions.md`,
634
+ '',
612
635
  body,
613
636
  '',
614
637
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@votruongdanh/ai-agent-skills",
3
- "version": "3.4.0",
3
+ "version": "3.4.1",
4
4
  "description": "Cross-IDE AI agent skills with native installers for Kiro, Cursor, Windsurf, Claude Code, Antigravity, and VS Code/Copilot",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -0,0 +1,17 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+ const workflowDir = path.join(__dirname, '..', '.agent', 'workflows');
4
+ if (!fs.existsSync(workflowDir)) {
5
+ console.error('Workflow dir missing');
6
+ process.exit(2);
7
+ }
8
+ const files = fs.readdirSync(workflowDir).filter(f => f.endsWith('.md'));
9
+ let ok = true;
10
+ for (const f of files) {
11
+ const p = path.join(workflowDir, f);
12
+ const content = fs.readFileSync(p, 'utf8');
13
+ const has = content.includes('Canonical source');
14
+ console.log(f + ': ' + (has ? 'OK' : 'MISSING'));
15
+ if (!has) ok = false;
16
+ }
17
+ process.exit(ok ? 0 : 1);
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: agents
3
3
  description: "Agent routing system — automatically selects the best specialist agent based on user request domain. Handles keyword matching, Vietnamese and English triggers, compound-keyword routing, vague-request fallback, and multi-agent coordination. This skill is always loaded silently."
4
+ encoding: "UTF-8"
4
5
  metadata:
5
6
  category: system
6
7
  auto-load: true
@@ -81,6 +82,9 @@ For complex requests that span domains:
81
82
  ## Quality Gate
82
83
  After completing any routed task, read `.kiro/skills/_scripts/checklist.md` for cross-cutting quality checks.
83
84
 
85
+ ## Encoding
86
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
87
+
84
88
  ## Rules
85
89
  - Agent selection is SILENT — do not ask the user which agent to use
86
90
  - Always announce which agent is being applied
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: brainstorm
3
3
  description: "Ideation, option generation, and feature exploration. Use when the user wants to brainstorm ideas, explore options, compare approaches, or generate creative solutions. Triggers: brainstorm, ideate, options, ý tưởng, so sánh phương án."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [plan, create, orchestrate]
6
7
  ---
@@ -63,6 +64,9 @@ If any answer is unclear, ASK before proceeding.
63
64
  ## Quality Gate
64
65
  After completing, read `.kiro/skills/_scripts/checklist.md` for cross-cutting quality checks.
65
66
 
67
+ ## Encoding
68
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
69
+
66
70
  ## Related Skills
67
71
  - `/plan` → read `.kiro/skills/plan/SKILL.md` — Turn chosen option into actionable plan
68
72
  - `/create` → read `.kiro/skills/create/SKILL.md` — Implement the chosen option
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: clean
3
3
  description: "Clean up junk files, temporary files, AI-generated artifacts, and caches. Use when the user wants to remove unused files, reduce repo clutter, or update .gitignore. Triggers: clean, remove junk, dọn dẹp, xoá file rác, cache."
4
+ encoding: "UTF-8"
4
5
  agents: [devops-engineer]
5
6
  related-skills: [status, enhance]
6
7
  ---
@@ -79,6 +80,9 @@ Proceed with deletion? (y/n)
79
80
  ## Quality Gate
80
81
  After completing, read `.kiro/skills/_scripts/checklist.md` for cross-cutting quality checks.
81
82
 
83
+ ## Encoding
84
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
85
+
82
86
  ## Follow-up Actions
83
87
  - Update .gitignore to prevent future junk accumulation
84
88
  - Suggest cleanup scripts for recurring patterns
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: create
3
3
  description: "Build new features, files, components, endpoints, pages, or scripts. Use when the user wants to create something new in the codebase. Triggers: create, build, add, new, scaffold, tạo, thêm mới, tạo trang, tạo API."
4
+ encoding: "UTF-8"
4
5
  agents: [backend-specialist, frontend-specialist, database-architect]
5
6
  related-skills: [plan, test, debug]
6
7
  ---
@@ -60,6 +61,9 @@ If any answer is unclear, ASK before proceeding.
60
61
  ## Quality Gate
61
62
  After completing, read `.kiro/skills/_scripts/checklist.md` for cross-cutting quality checks.
62
63
 
64
+ ## Encoding
65
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
66
+
63
67
  ## Related Skills
64
68
  - `/plan` → read `.kiro/skills/plan/SKILL.md` — Plan before creating complex features
65
69
  - `/test` → read `.kiro/skills/test/SKILL.md` — Write tests for new code
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: debug
3
3
  description: "Root-cause analysis for bugs, failing commands, broken behavior, and error logs. Use when the user encounters errors, crashes, or unexpected behavior. Triggers: debug, fix, bug, error, crash, lỗi, sửa lỗi, hỏng, fail."
4
+ encoding: "UTF-8"
4
5
  agents: [debugger, backend-specialist, frontend-specialist]
5
6
  related-skills: [test, enhance, status]
6
7
  ---
@@ -75,3 +76,6 @@ If any answer is missing, ASK before proceeding.
75
76
  - `/test` → read `.kiro/skills/test/SKILL.md` — Write tests to prevent regression
76
77
  - `/enhance` → read `.kiro/skills/enhance/SKILL.md` — Improve code quality after fixing
77
78
  - `/status` → read `.kiro/skills/status/SKILL.md` — Check project health after fix
79
+
80
+ ## Encoding
81
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: deploy
3
3
  description: "Deployment steps, release preparation, environment setup, CI/CD guidance, and production rollout. Use when the user wants to deploy, release, or set up infrastructure. Triggers: deploy, release, CI/CD, docker, production, triển khai, phát hành, đưa lên production."
4
+ encoding: "UTF-8"
4
5
  agents: [devops-engineer, security-auditor]
5
6
  related-skills: [test, status, plan]
6
7
  ---
@@ -67,3 +68,6 @@ If any answer is unclear, ASK before proceeding.
67
68
  - `/test` → read `.kiro/skills/test/SKILL.md` — Run tests before deployment
68
69
  - `/status` → read `.kiro/skills/status/SKILL.md` — Check project readiness
69
70
  - `/plan` → read `.kiro/skills/plan/SKILL.md` — Plan complex deployment sequences
71
+
72
+ ## Encoding
73
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: enhance
3
3
  description: "Improve existing code — refactor, optimize performance, tighten security, or enhance UX. Use when the user wants to make code better without changing its purpose. Triggers: enhance, improve, refactor, optimize, review, cải thiện, tối ưu, nhanh hơn, code dài quá."
4
+ encoding: "UTF-8"
4
5
  agents: [performance-optimizer, security-auditor, frontend-specialist]
5
6
  related-skills: [debug, test, plan]
6
7
  ---
@@ -59,3 +60,6 @@ If any answer is unclear, ASK before proceeding.
59
60
  - `/debug` → read `.kiro/skills/debug/SKILL.md` — Fix issues found during enhancement
60
61
  - `/test` → read `.kiro/skills/test/SKILL.md` — Verify enhancements don't break things
61
62
  - `/plan` → read `.kiro/skills/plan/SKILL.md` — Plan large-scale refactoring
63
+
64
+ ## Encoding
65
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: explain
3
3
  description: "Explain code, walk through logic, and help understand architecture or behavior. Use when the user asks what code does, how something works, or wants a walkthrough. Triggers: explain, what does this do, how does this work, giải thích, giải thích code, code này làm gì."
4
+ encoding: "UTF-8"
4
5
  agents: [documentation-writer, backend-specialist, frontend-specialist]
5
6
  related-skills: [debug, enhance, status]
6
7
  ---
@@ -65,6 +66,7 @@ If any answer is unclear, ASK before proceeding.
65
66
  - If the code is unclear or has issues, mention them without derailing the explanation.
66
67
  - Avoid proposing wide changes mid-explanation; if improvement requires broader edits, ASK before switching to implementation.
67
68
  - Always read and update the memory file.
69
+ - Code encoding: All code snippets and files referenced or produced must be UTF-8 encoded. When providing example files, ensure they use UTF-8 and indicate `encoding: "UTF-8"` in front-matter where applicable.
68
70
 
69
71
  ## Related Skills
70
72
  - `/debug` → read `.kiro/skills/debug/SKILL.md` — If explanation reveals bugs
@@ -1,5 +1,7 @@
1
1
  ## AI Agent Skills — System Bootstrap
2
2
 
3
+ **Encoding rule**: All skill files, repository Markdown, and code must use UTF-8 encoding to avoid font and character issues. When producing or committing code examples, ensure files are saved as UTF-8 (no BOM) and include the front-matter field `encoding: "UTF-8"` in `SKILL.md` to document the requirement. Treat UTF-8 as the canonical encoding for the repo.
4
+
3
5
  This project uses an **AI Skills system** with 16 skills, 11 specialist agents, and a memory protocol.
4
6
 
5
7
  ### On EVERY request, follow this flow:
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: integrate
3
3
  description: "Integrate provided sample code/snippets into the existing system with minimal changes and minimal risk. Use when the user gives a code mẫu and wants to merge it into current project. Triggers: integrate, merge snippet, gộp code mẫu, ghép code, áp code mẫu vào hệ thống."
4
+ encoding: "UTF-8"
4
5
  agents: [backend-specialist, frontend-specialist, debugger]
5
6
  related-skills: [plan, test, debug, enhance]
6
7
  ---
@@ -51,3 +52,6 @@ Before editing, verify these inputs exist. If any is missing or ambiguous, ASK:
51
52
  - Verification performed (commands/tests)
52
53
  - Risks / follow-ups (if any)
53
54
 
55
+ ## Encoding
56
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
57
+
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: motion-ui
3
3
  description: "Advanced Motion UI (AMUI) — Create clean, modern UI with subtle Framer Motion micro-interactions, clear states (idle/loading/success/error), consistent styling via design tokens, and smooth animations. Use when the user wants motion-rich, polished UI with micro-interactions. Triggers: motion, animation, framer motion, micro-interaction, smooth ui, amui, chuyển động, hiệu ứng mượt."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist]
5
6
  related-skills: [create, ui-ux-pro-max, enhance]
6
7
  ---
@@ -362,6 +363,9 @@ After completing, read `.kiro/skills/_scripts/checklist.md` for cross-cutting qu
362
363
  - `/ui-ux-pro-max` → read `.kiro/skills/ui-ux-pro-max/SKILL.md` — Advanced UI/UX improvements
363
364
  - `/enhance` → read `.kiro/skills/enhance/SKILL.md` — Improve existing components with motion
364
365
 
366
+ ## Encoding
367
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
368
+
365
369
  ## Example: AMUI Button Component
366
370
 
367
371
  ```tsx
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: orchestrate
3
3
  description: "Coordinate multi-step plans across multiple roles, files, systems, or parallel workstreams. Use when the user has a complex request spanning multiple domains or needing decomposition. Triggers: orchestrate, coordinate, multi-step, full-stack, tổng hợp, làm nhiều bước."
4
+ encoding: "UTF-8"
4
5
  agents: [orchestrator, project-planner]
5
6
  related-skills: [plan, create, deploy, test]
6
7
  ---
@@ -74,3 +75,6 @@ If any answer is unclear, ASK before proceeding.
74
75
  - `/create` → read `.kiro/skills/create/SKILL.md` — Execute creation tasks
75
76
  - `/deploy` → read `.kiro/skills/deploy/SKILL.md` — Deploy completed work
76
77
  - `/test` → read `.kiro/skills/test/SKILL.md` — Validate each workstream
78
+
79
+ ## Encoding
80
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: plan
3
3
  description: "Create concrete implementation plans with milestones, task breakdowns, and estimates. Use when the user wants to plan, organize work, or create a roadmap. Triggers: plan, milestone, breakdown, roadmap, estimate, kế hoạch, lên kế hoạch, phân chia công việc."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [brainstorm, create, orchestrate]
6
7
  ---
@@ -70,3 +71,6 @@ After completing, read `.kiro/skills/_scripts/checklist.md` for cross-cutting qu
70
71
  - `/brainstorm` → read `.kiro/skills/brainstorm/SKILL.md` — Explore options before planning
71
72
  - `/create` → read `.kiro/skills/create/SKILL.md` — Execute planned tasks
72
73
  - `/orchestrate` → read `.kiro/skills/orchestrate/SKILL.md` — Coordinate complex plans across teams
74
+
75
+ ## Encoding
76
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: preview
3
3
  description: "Preview expected output, UX flows, copy, interaction design, or generated content before implementing. Use when the user wants to see what something will look like. Triggers: preview, mockup, show me, xem trước, thử xem, mô phỏng."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist, documentation-writer]
5
6
  related-skills: [create, ui-ux-pro-max, plan]
6
7
  ---
@@ -56,3 +57,6 @@ After completing, read `.kiro/skills/_scripts/checklist.md` for cross-cutting qu
56
57
  - `/create` → read `.kiro/skills/create/SKILL.md` — Implement the previewed design
57
58
  - `/ui-ux-pro-max` → read `.kiro/skills/ui-ux-pro-max/SKILL.md` — Advanced UI/UX design
58
59
  - `/plan` → read `.kiro/skills/plan/SKILL.md` — Plan implementation of previewed feature
60
+
61
+ ## Encoding
62
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: status
3
3
  description: "Project status summary, progress snapshots, repo overview, and outstanding work tracking. Use when the user wants to know where a project stands. Triggers: status, progress, overview, what's done, dự án đang ở đâu, tiến độ, tổng quan."
4
+ encoding: "UTF-8"
4
5
  agents: [project-planner, orchestrator]
5
6
  related-skills: [plan, debug, deploy]
6
7
  ---
@@ -58,3 +59,6 @@ After completing, read `.kiro/skills/_scripts/verify-all.md` for full project ve
58
59
  - `/plan` → read `.kiro/skills/plan/SKILL.md` — Create plan for incomplete items
59
60
  - `/debug` → read `.kiro/skills/debug/SKILL.md` — Investigate flagged risks
60
61
  - `/deploy` → read `.kiro/skills/deploy/SKILL.md` — Deploy when ready
62
+
63
+ ## Encoding
64
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: test
3
3
  description: "Write tests, improve coverage, define test strategy, and add validation. Use when the user wants to test code, add unit/integration/e2e tests, or check coverage. Triggers: test, coverage, jest, vitest, playwright, spec, kiểm thử, viết test."
4
+ encoding: "UTF-8"
4
5
  agents: [test-engineer, debugger]
5
6
  related-skills: [debug, create, enhance]
6
7
  ---
@@ -59,3 +60,6 @@ If any answer is unclear, ASK before proceeding.
59
60
  - `/debug` → read `.kiro/skills/debug/SKILL.md` — Fix failing tests or bugs found
60
61
  - `/create` → read `.kiro/skills/create/SKILL.md` — Create test fixtures or helpers
61
62
  - `/enhance` → read `.kiro/skills/enhance/SKILL.md` — Improve test quality and coverage
63
+
64
+ ## Encoding
65
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: ui-ux-pro-max
3
3
  description: "Advanced UI/UX improvements — layout, design critique, copy refinement, interaction design, accessibility, and responsive patterns. Use when the user wants professional-grade UI/UX upgrades. Triggers: ui, ux, design, layout, responsive, giao diện, thiết kế, cải thiện UI."
4
+ encoding: "UTF-8"
4
5
  agents: [frontend-specialist, performance-optimizer]
5
6
  related-skills: [create, preview, enhance]
6
7
  ---
@@ -66,3 +67,6 @@ If any answer is unclear, ASK before proceeding.
66
67
  - `/create` → read `.kiro/skills/create/SKILL.md` — Implement UI components
67
68
  - `/preview` → read `.kiro/skills/preview/SKILL.md` — Preview design before implementation
68
69
  - `/enhance` → read `.kiro/skills/enhance/SKILL.md` — Improve existing UI code
70
+
71
+ ## Encoding
72
+ All code snippets and example files referenced or produced by this skill must be UTF-8 encoded. When applicable, include `encoding: "UTF-8"` in SKILL.md front-matter and ensure saved files use UTF-8 (no BOM).