Some checks failed
CI / Build & test backend (push) Failing after 14m56s
REQ-MOB-010: BarcodeScreen.tsx — barcode scanner via react-native-camera REQ-VIZ-001: WeeklyCalorieChart.tsx — 7-day bar chart on History screen REQ-VIZ-002: Streak tracker — GET /meals/streak + HomeScreen badge REQ-UX-001: Quick-add calories — POST /meals/quick-add + QuickAddScreen REQ-UX-002: Food favourites — UserFoodMemory.favourite + toggle endpoint + FoodRow star REQ-UX-003: GoalBanner.tsx — in-app slide-in when daily target hit REQ-EXP-001: ExportController — GET /export/meals CSV download REQ-WTR-001: Water tracking — WaterEntry entity + POST/GET /water + DailyDetails widget REQ-UX-004: Daily logging reminder — HomeScreen after-18:00 banner Also: Flyway V2 (favourite), V3 (water_entries), V4 (source constraints) Traceability, CHANGELOG, PLAN updated after each feature
208 lines
5.2 KiB
Markdown
208 lines
5.2 KiB
Markdown
Skills use SKILL.md format with YAML frontmatter. One skill per folder. Test before deploy.
|
|
|
|
# Skills Standards - Native Agent Skills
|
|
|
|
**Module**: Skills Standards
|
|
**Component**: Native VS Code Agent Skills (Layer 4)
|
|
**Load**: When creating/editing skills in .github/skills/
|
|
**Version**: 3.0.0
|
|
**Updated**: 2026-04-20
|
|
|
|
---
|
|
|
|
## Machine Policy
|
|
|
|
```
|
|
[SKILL_FORMAT]
|
|
FORMAT=SKILL.md
|
|
STRUCTURE=YAML_frontmatter + Markdown_body
|
|
LOCATION=.github/skills/skill-name/SKILL.md
|
|
TOKEN_TARGET=<5000_per_skill
|
|
DESCRIPTION_LENGTH=~100_tokens
|
|
VS_CODE_VERSION=1.109+
|
|
```
|
|
|
|
---
|
|
|
|
## SKILL.md Format
|
|
|
|
### File Structure
|
|
|
|
```markdown
|
|
---
|
|
name: lowercase-hyphens-only
|
|
description: what + when + keywords (1-1024 chars)
|
|
license: MIT
|
|
compatibility: VS Code 1.109+, Node.js 18+
|
|
metadata:
|
|
tier: TIER-0 | TIER-1 | TIER-2 | TIER-3
|
|
category: governance | security | quality | language | testing
|
|
framework-version: "3.0.0"
|
|
author: virsaitis
|
|
version: "1.0.0"
|
|
---
|
|
|
|
# Skill Title
|
|
|
|
## Overview
|
|
## When to Activate
|
|
## Standards & Rules
|
|
## Consequences
|
|
## Procedures
|
|
## Examples
|
|
## Validation & Testing
|
|
## Quick Reference
|
|
```
|
|
|
|
### Frontmatter Requirements (TIER-1)
|
|
|
|
| Field | Required | Format | Example |
|
|
|-------|----------|--------|---------|
|
|
| `name` | Yes | lowercase-hyphens, 1-64 chars | `python-development` |
|
|
| `description` | Yes | plain text, 1-1024 chars | What + When + Keywords |
|
|
| `license` | No | SPDX identifier | `MIT` |
|
|
| `compatibility` | No | version requirements | `VS Code 1.109+` |
|
|
| `metadata.tier` | Yes (Virsaitis) | TIER-0 through TIER-3 | `TIER-1` |
|
|
| `metadata.category` | Yes (Virsaitis) | governance/security/quality/language/testing | `governance` |
|
|
|
|
**Name MUST match directory name exactly.**
|
|
|
|
**Description MUST include**: what the skill does, when to activate, discovery keywords.
|
|
|
|
---
|
|
|
|
## Required Sections
|
|
|
|
### Overview
|
|
What this skill does and why. Use atomic sentences. 2-3 paragraphs.
|
|
|
|
### When to Activate
|
|
Keywords and scenarios for VS Code skill activation. Include keyword list for discovery.
|
|
|
|
### Standards & Rules
|
|
Specific rules grouped by TIER level. Each rule: Name, TIER, Enforcement, Rationale.
|
|
|
|
### Consequences (Virsaitis Extension)
|
|
Impact chains per TIER violation. Five dimensions: Operation, User, Technical, Business, Remediation.
|
|
|
|
```markdown
|
|
### TIER-0 Violations
|
|
**Rule**: [Rule Name]
|
|
**If Violated**:
|
|
- **Operation**: BLOCKED immediately
|
|
- **User Impact**: [effect on user]
|
|
- **Technical Impact**: [what breaks]
|
|
- **Business Impact**: [why it matters]
|
|
- **Remediation**: [how to fix]
|
|
```
|
|
|
|
### Procedures
|
|
Step-by-step workflows with commands and expected outcomes.
|
|
|
|
### Examples
|
|
Good vs Bad code snippets with compliance explanations.
|
|
|
|
### Validation & Testing
|
|
Commands to verify compliance, expected output, error interpretation.
|
|
|
|
### Quick Reference
|
|
Summary table for rapid lookup.
|
|
|
|
---
|
|
|
|
## Directory Structure
|
|
|
|
```
|
|
.github/skills/
|
|
├── skill-name/
|
|
│ ├── SKILL.md (required - main skill file)
|
|
│ ├── scripts/ (optional - helper scripts)
|
|
│ ├── references/ (optional - reference docs)
|
|
│ └── assets/ (optional - images, examples)
|
|
```
|
|
|
|
---
|
|
|
|
## Validation (TIER-1)
|
|
|
|
```bash
|
|
# Validate skill structure
|
|
skills-ref validate .github/skills/skill-name/
|
|
|
|
# Expected output:
|
|
# ✓ Skill name matches directory
|
|
# ✓ Description within 1-1024 chars
|
|
# ✓ Frontmatter valid YAML
|
|
# ✓ SKILL.md found
|
|
```
|
|
|
|
Fix all errors before committing.
|
|
|
|
---
|
|
|
|
## Token Efficiency (TIER-2)
|
|
|
|
**Targets**:
|
|
- Description: ~100 tokens (efficient discovery)
|
|
- Full skill body: <5000 tokens (~500 lines)
|
|
- Total loaded: <1% of 200K context window
|
|
|
|
**VS Code loads skills in 3 levels**:
|
|
1. **Metadata** (~100 tokens): Always loaded for discovery
|
|
2. **Instructions** (<5000 tokens): Loaded when skill activated
|
|
3. **Resources** (on-demand): Loaded only when referenced
|
|
|
|
Keep SKILL.md lean. Put large examples in `references/`.
|
|
|
|
---
|
|
|
|
## Skill Development Workflow
|
|
|
|
### Create New Skill
|
|
|
|
1. Choose skill name (lowercase-hyphens)
|
|
2. Create directory: `.github/skills/skill-name/`
|
|
3. Fill frontmatter (name must match directory)
|
|
4. Write sections: Overview → Rules → Consequences → Procedures
|
|
5. Add good/bad examples
|
|
6. Validate: `skills-ref validate`
|
|
7. Test activation in VS Code 1.109+
|
|
8. Update CHANGELOG and commit
|
|
|
|
### Modify Existing Skill
|
|
|
|
1. Read current SKILL.md fully
|
|
2. Maintain atomic sentence structure
|
|
3. Update version in frontmatter
|
|
4. Validate and test before commit
|
|
|
|
---
|
|
|
|
## Quick Reference
|
|
|
|
| Aspect | Standard | Tool |
|
|
|--------|----------|------|
|
|
| **Format** | SKILL.md | VS Code markdown |
|
|
| **Location** | .github/skills/ | Repository root |
|
|
| **Frontmatter** | YAML | `---` delimiters |
|
|
| **Tokens** | <5000 body | Word count estimate |
|
|
| **Validation** | skills-ref | `skills-ref validate` |
|
|
| **VS Code** | 1.109+ | Check release |
|
|
|
|
---
|
|
|
|
*Skills Standards Module v3.0.0*
|
|
*Native VS Code Agent Skills for Virsaitis governance*
|
|
|
|
---
|
|
|
|
## Key Rules From This Module
|
|
|
|
- SKILL.md is the entry point. YAML frontmatter with description is required.
|
|
- One skill per folder. Folder name matches skill purpose.
|
|
- Test every skill before deployment. Manual validation required.
|
|
- Skills in `.github/skills/` are the one exception to .github write restrictions.
|
|
- Definitions: `.github/virsaitis-definition-library.md`
|
|
|
|
Return to hub: `.github/copilot-instructions.md`
|