antigravity-devkit 1.0.0

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 (60) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +421 -0
  3. package/bin/cli.js +179 -0
  4. package/package.json +38 -0
  5. package/template/ARCHITECTURE.md +148 -0
  6. package/template/README.md +421 -0
  7. package/template/agents/backend-specialist.md +137 -0
  8. package/template/agents/database-architect.md +114 -0
  9. package/template/agents/debugger.md +108 -0
  10. package/template/agents/devops-engineer.md +125 -0
  11. package/template/agents/documentation-writer.md +109 -0
  12. package/template/agents/explorer-agent.md +107 -0
  13. package/template/agents/frontend-specialist.md +231 -0
  14. package/template/agents/orchestrator.md +100 -0
  15. package/template/agents/performance-optimizer.md +109 -0
  16. package/template/agents/project-planner.md +123 -0
  17. package/template/agents/security-auditor.md +107 -0
  18. package/template/agents/test-engineer.md +133 -0
  19. package/template/rules/GEMINI.md +180 -0
  20. package/template/scripts/checklist.py +170 -0
  21. package/template/scripts/verify_all.py +243 -0
  22. package/template/skills/api-patterns/SKILL.md +116 -0
  23. package/template/skills/architecture/SKILL.md +98 -0
  24. package/template/skills/aspnet-patterns/SKILL.md +120 -0
  25. package/template/skills/azure-aks/SKILL.md +136 -0
  26. package/template/skills/azure-devops/SKILL.md +123 -0
  27. package/template/skills/azure-keyvault/SKILL.md +100 -0
  28. package/template/skills/brainstorming/SKILL.md +96 -0
  29. package/template/skills/clean-code/SKILL.md +84 -0
  30. package/template/skills/csharp-patterns/SKILL.md +115 -0
  31. package/template/skills/documentation-templates/SKILL.md +127 -0
  32. package/template/skills/english-education/SKILL.md +116 -0
  33. package/template/skills/english-education/references/lesson-templates.md +151 -0
  34. package/template/skills/english-education/references/quiz-templates.md +177 -0
  35. package/template/skills/english-education/scripts/curriculum_validator.py +175 -0
  36. package/template/skills/frontend-design/SKILL.md +199 -0
  37. package/template/skills/frontend-design/animation-guide.md +217 -0
  38. package/template/skills/frontend-design/design-systems.md +230 -0
  39. package/template/skills/frontend-design/ux-psychology.md +128 -0
  40. package/template/skills/gitops-patterns/SKILL.md +105 -0
  41. package/template/skills/grafana-logging/SKILL.md +107 -0
  42. package/template/skills/intelligent-routing/SKILL.md +75 -0
  43. package/template/skills/plan-writing/SKILL.md +96 -0
  44. package/template/skills/sqlserver-design/SKILL.md +97 -0
  45. package/template/skills/systematic-debugging/SKILL.md +98 -0
  46. package/template/skills/testing-patterns/SKILL.md +102 -0
  47. package/template/skills/vitest-testing/SKILL.md +116 -0
  48. package/template/skills/vue3-patterns/SKILL.md +195 -0
  49. package/template/skills/vulnerability-scanner/SKILL.md +104 -0
  50. package/template/skills/xunit-testing/SKILL.md +127 -0
  51. package/template/workflows/brainstorm.md +69 -0
  52. package/template/workflows/code.md +82 -0
  53. package/template/workflows/create.md +79 -0
  54. package/template/workflows/debug.md +83 -0
  55. package/template/workflows/deploy.md +101 -0
  56. package/template/workflows/orchestrate.md +86 -0
  57. package/template/workflows/plan.md +79 -0
  58. package/template/workflows/review.md +85 -0
  59. package/template/workflows/status.md +90 -0
  60. package/template/workflows/test.md +89 -0
@@ -0,0 +1,116 @@
1
+ ---
2
+ name: english-education
3
+ description: English education content generation - lessons, quizzes, curriculum
4
+ ---
5
+
6
+ # English Education Skill
7
+
8
+ > Generate educational content for English language learning.
9
+
10
+ ---
11
+
12
+ ## Content Types
13
+
14
+ | Type | Description | Template |
15
+ |------|-------------|----------|
16
+ | Lesson Plan | Structured lesson | lesson-templates.md |
17
+ | Quiz | Assessment questions | quiz-templates.md |
18
+ | Vocabulary | Word lists with context | inline |
19
+ | Grammar | Rule explanations | inline |
20
+
21
+ ---
22
+
23
+ ## Lesson Plan Structure
24
+
25
+ ```markdown
26
+ # Lesson: [Title]
27
+
28
+ ## Overview
29
+ - **Level:** [A1-C2 / Beginner-Advanced]
30
+ - **Duration:** [minutes]
31
+ - **Topic:** [theme]
32
+ - **Objectives:** [what students will learn]
33
+
34
+ ## Warm-up (5 min)
35
+ [Engaging activity]
36
+
37
+ ## Presentation (15 min)
38
+ [New content introduction]
39
+
40
+ ## Practice (20 min)
41
+ [Guided exercises]
42
+
43
+ ## Production (15 min)
44
+ [Free practice / application]
45
+
46
+ ## Wrap-up (5 min)
47
+ [Summary and homework]
48
+
49
+ ## Materials
50
+ - [List of needed materials]
51
+ ```
52
+
53
+ ---
54
+
55
+ ## Quiz Structure
56
+
57
+ ```markdown
58
+ # Quiz: [Title]
59
+
60
+ ## Metadata
61
+ - **Level:** [A1-C2]
62
+ - **Topics:** [covered topics]
63
+ - **Time:** [minutes]
64
+
65
+ ## Questions
66
+
67
+ ### Multiple Choice
68
+ 1. [Question]
69
+ - a) [option]
70
+ - b) [option]
71
+ - c) [option] ✓
72
+ - d) [option]
73
+
74
+ ### Fill in the Blank
75
+ 2. She ___ (go) to school every day.
76
+ **Answer:** goes
77
+
78
+ ### Matching
79
+ 3. Match the words with definitions:
80
+ | Word | Definition |
81
+ |------|------------|
82
+ | 1. happy | a. feeling joy |
83
+ ```
84
+
85
+ ---
86
+
87
+ ## CEFR Levels
88
+
89
+ | Level | Description |
90
+ |-------|-------------|
91
+ | A1 | Beginner |
92
+ | A2 | Elementary |
93
+ | B1 | Intermediate |
94
+ | B2 | Upper Intermediate |
95
+ | C1 | Advanced |
96
+ | C2 | Proficient |
97
+
98
+ ---
99
+
100
+ ## Content Guidelines
101
+
102
+ | ✅ Do | ❌ Don't |
103
+ |-------|---------|
104
+ | Age-appropriate language | Complex jargon |
105
+ | Clear instructions | Ambiguous tasks |
106
+ | Varied question types | Single format only |
107
+ | Progressive difficulty | Random difficulty |
108
+ | Cultural sensitivity | Offensive content |
109
+
110
+ ---
111
+
112
+ ## References
113
+
114
+ - `references/lesson-templates.md` - Lesson plan templates
115
+ - `references/quiz-templates.md` - Quiz templates
116
+ - `scripts/curriculum_validator.py` - Content validation
@@ -0,0 +1,151 @@
1
+ # Lesson Plan Templates
2
+
3
+ ## Template 1: Grammar Lesson
4
+
5
+ ```markdown
6
+ # Grammar Lesson: [Tense/Structure]
7
+
8
+ ## Overview
9
+ - **Level:** [CEFR Level]
10
+ - **Duration:** 45 minutes
11
+ - **Grammar Point:** [specific structure]
12
+ - **Objectives:** Students will be able to [use X in Y context]
13
+
14
+ ## Warm-up (5 min)
15
+ - Quick review of previous lesson
16
+ - Elicit examples from students
17
+
18
+ ## Presentation (15 min)
19
+ ### Form
20
+ [Structure explanation with examples]
21
+
22
+ ### Meaning
23
+ [When/why we use this structure]
24
+
25
+ ### Pronunciation
26
+ [Any pronunciation notes]
27
+
28
+ ## Practice (15 min)
29
+ ### Controlled Practice
30
+ 1. [Gap-fill exercise]
31
+ 2. [Transformation exercise]
32
+
33
+ ### Freer Practice
34
+ 1. [Communication activity]
35
+
36
+ ## Production (8 min)
37
+ [Real-life application task]
38
+
39
+ ## Wrap-up (2 min)
40
+ - Review key points
41
+ - Assign homework
42
+ ```
43
+
44
+ ---
45
+
46
+ ## Template 2: Vocabulary Lesson
47
+
48
+ ```markdown
49
+ # Vocabulary Lesson: [Topic]
50
+
51
+ ## Overview
52
+ - **Level:** [CEFR Level]
53
+ - **Duration:** 45 minutes
54
+ - **Topic:** [vocabulary theme]
55
+ - **Target Words:** 8-12 items
56
+
57
+ ## Warm-up (5 min)
58
+ - Picture discussion
59
+ - Brainstorm related words
60
+
61
+ ## Presentation (10 min)
62
+ ### New Vocabulary
63
+ | Word | Definition | Example |
64
+ |------|------------|---------|
65
+ | [word] | [meaning] | [sentence] |
66
+
67
+ ## Practice (20 min)
68
+ 1. Matching exercise
69
+ 2. Gap-fill sentences
70
+ 3. Categorization activity
71
+
72
+ ## Production (8 min)
73
+ - Create sentences using new words
74
+ - Role-play using vocabulary
75
+
76
+ ## Review (2 min)
77
+ - Quick vocab check
78
+ - Preview next lesson
79
+ ```
80
+
81
+ ---
82
+
83
+ ## Template 3: Reading Lesson
84
+
85
+ ```markdown
86
+ # Reading Lesson: [Title]
87
+
88
+ ## Overview
89
+ - **Level:** [CEFR Level]
90
+ - **Duration:** 50 minutes
91
+ - **Text Type:** [article/story/etc.]
92
+ - **Skills:** [skimming/scanning/inference]
93
+
94
+ ## Pre-reading (10 min)
95
+ - Vocabulary pre-teach
96
+ - Prediction from title/images
97
+ - Background activation
98
+
99
+ ## While-reading (25 min)
100
+ ### First Read (Gist)
101
+ - Skim for main idea
102
+ - Check predictions
103
+
104
+ ### Second Read (Detail)
105
+ - Comprehension questions
106
+ - Vocabulary in context
107
+
108
+ ## Post-reading (12 min)
109
+ - Discussion questions
110
+ - Personal response
111
+ - Extension activity
112
+
113
+ ## Wrap-up (3 min)
114
+ - Summary
115
+ - Homework assignment
116
+ ```
117
+
118
+ ---
119
+
120
+ ## Template 4: Speaking Lesson
121
+
122
+ ```markdown
123
+ # Speaking Lesson: [Topic]
124
+
125
+ ## Overview
126
+ - **Level:** [CEFR Level]
127
+ - **Duration:** 45 minutes
128
+ - **Function:** [asking for directions/giving opinions/etc.]
129
+ - **Objectives:** [fluency/accuracy focus]
130
+
131
+ ## Lead-in (5 min)
132
+ - Discussion question
133
+ - Set context
134
+
135
+ ## Model Dialogue (10 min)
136
+ - Listen to example
137
+ - Identify key phrases
138
+ - Practice pronunciation
139
+
140
+ ## Controlled Practice (10 min)
141
+ - Substitution drills
142
+ - Pair practice with prompts
143
+
144
+ ## Freer Practice (15 min)
145
+ - Role-play activities
146
+ - Information gap tasks
147
+
148
+ ## Feedback (5 min)
149
+ - Error correction
150
+ - Good language highlighted
151
+ ```
@@ -0,0 +1,177 @@
1
+ # Quiz Templates
2
+
3
+ ## Template 1: Grammar Quiz
4
+
5
+ ```markdown
6
+ # Grammar Quiz: [Topic]
7
+
8
+ **Level:** [CEFR]
9
+ **Time:** 15 minutes
10
+ **Points:** 20 total
11
+
12
+ ---
13
+
14
+ ## Part A: Multiple Choice (5 points)
15
+
16
+ 1. She ___ to work every day.
17
+ - a) go
18
+ - b) goes ✓
19
+ - c) going
20
+ - d) gone
21
+
22
+ 2. They ___ watching TV when I arrived.
23
+ - a) are
24
+ - b) was
25
+ - c) were ✓
26
+ - d) be
27
+
28
+ ---
29
+
30
+ ## Part B: Fill in the Blank (5 points)
31
+
32
+ Complete with the correct form.
33
+
34
+ 1. He ___ (play) tennis every weekend.
35
+ **Answer:** plays
36
+
37
+ 2. We ___ (not/see) that movie yet.
38
+ **Answer:** haven't seen
39
+
40
+ ---
41
+
42
+ ## Part C: Error Correction (5 points)
43
+
44
+ Find and correct the error.
45
+
46
+ 1. She don't like coffee.
47
+ **Correction:** She doesn't like coffee.
48
+
49
+ ---
50
+
51
+ ## Part D: Sentence Transformation (5 points)
52
+
53
+ Rewrite using the word given.
54
+
55
+ 1. It's not necessary to come early. (HAVE)
56
+ **Answer:** You don't have to come early.
57
+
58
+ ---
59
+
60
+ ## Answer Key
61
+ [Include all answers with explanations]
62
+ ```
63
+
64
+ ---
65
+
66
+ ## Template 2: Vocabulary Quiz
67
+
68
+ ```markdown
69
+ # Vocabulary Quiz: [Topic]
70
+
71
+ **Level:** [CEFR]
72
+ **Time:** 10 minutes
73
+ **Points:** 15 total
74
+
75
+ ---
76
+
77
+ ## Part A: Matching (5 points)
78
+
79
+ Match the words with their definitions.
80
+
81
+ | Word | Definition |
82
+ |------|------------|
83
+ | 1. ambitious | a. wanting to succeed |
84
+ | 2. reliable | b. can be trusted |
85
+
86
+ ---
87
+
88
+ ## Part B: Fill in the Blank (5 points)
89
+
90
+ Choose the correct word.
91
+
92
+ Word bank: *happy, sad, angry, excited, nervous*
93
+
94
+ 1. She felt ___ before her exam.
95
+ **Answer:** nervous
96
+
97
+ ---
98
+
99
+ ## Part C: Word Formation (5 points)
100
+
101
+ Complete with the correct form.
102
+
103
+ 1. He is very ___ (success) in his career.
104
+ **Answer:** successful
105
+ ```
106
+
107
+ ---
108
+
109
+ ## Template 3: Reading Comprehension
110
+
111
+ ```markdown
112
+ # Reading Quiz: [Title]
113
+
114
+ **Level:** [CEFR]
115
+ **Time:** 20 minutes
116
+
117
+ ---
118
+
119
+ ## Text
120
+ [Insert reading passage]
121
+
122
+ ---
123
+
124
+ ## Questions
125
+
126
+ ### True/False (4 points)
127
+ 1. [Statement] T / F
128
+ 2. [Statement] T / F
129
+
130
+ ### Multiple Choice (4 points)
131
+ 3. What is the main idea?
132
+ - a) [option]
133
+ - b) [option] ✓
134
+ - c) [option]
135
+
136
+ ### Short Answer (4 points)
137
+ 5. Why did [character] [action]?
138
+ **Answer:** [Expected response]
139
+
140
+ ### Vocabulary in Context (3 points)
141
+ 6. The word "X" in paragraph 2 means:
142
+ **Answer:** [definition]
143
+ ```
144
+
145
+ ---
146
+
147
+ ## Template 4: Listening Quiz
148
+
149
+ ```markdown
150
+ # Listening Quiz: [Topic]
151
+
152
+ **Level:** [CEFR]
153
+ **Time:** 15 minutes
154
+
155
+ ---
156
+
157
+ ## Instructions
158
+ Listen to the audio twice. Answer the questions.
159
+
160
+ ---
161
+
162
+ ## Part A: Gist (2 points)
163
+ 1. What is the conversation about?
164
+
165
+ ## Part B: Detail (6 points)
166
+ 2. What time does [X]?
167
+ 3. How much does [Y] cost?
168
+ 4. Where is [Z] located?
169
+
170
+ ## Part C: Inference (2 points)
171
+ 5. How does the speaker feel about [topic]?
172
+
173
+ ---
174
+
175
+ ## Audio Script
176
+ [Include transcript for teacher reference]
177
+ ```
@@ -0,0 +1,175 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ Curriculum Validator - Validate English education content
4
+ Checks lesson plans, quizzes, and curriculum materials.
5
+
6
+ Usage:
7
+ python curriculum_validator.py <file_or_folder>
8
+ """
9
+
10
+ import sys
11
+ import re
12
+ from pathlib import Path
13
+
14
+
15
+ class CurriculumValidator:
16
+ """Validate English education content."""
17
+
18
+ CEFR_LEVELS = ["A1", "A2", "B1", "B2", "C1", "C2"]
19
+
20
+ REQUIRED_LESSON_SECTIONS = [
21
+ "Overview",
22
+ "Warm-up",
23
+ "Practice",
24
+ "Wrap-up"
25
+ ]
26
+
27
+ REQUIRED_QUIZ_SECTIONS = [
28
+ "Level",
29
+ "Time",
30
+ "Questions"
31
+ ]
32
+
33
+ def __init__(self):
34
+ self.errors = []
35
+ self.warnings = []
36
+
37
+ def validate_file(self, file_path: Path) -> bool:
38
+ """Validate a single file."""
39
+ content = file_path.read_text(encoding="utf-8")
40
+ filename = file_path.name.lower()
41
+
42
+ if "lesson" in filename:
43
+ return self.validate_lesson(content, file_path)
44
+ elif "quiz" in filename:
45
+ return self.validate_quiz(content, file_path)
46
+ else:
47
+ return self.validate_generic(content, file_path)
48
+
49
+ def validate_lesson(self, content: str, file_path: Path) -> bool:
50
+ """Validate a lesson plan."""
51
+ valid = True
52
+
53
+ # Check for required sections
54
+ for section in self.REQUIRED_LESSON_SECTIONS:
55
+ if section.lower() not in content.lower():
56
+ self.errors.append(f"{file_path}: Missing section '{section}'")
57
+ valid = False
58
+
59
+ # Check for CEFR level
60
+ if not self._has_cefr_level(content):
61
+ self.warnings.append(f"{file_path}: No CEFR level specified")
62
+
63
+ # Check for objectives
64
+ if "objective" not in content.lower():
65
+ self.warnings.append(f"{file_path}: No learning objectives found")
66
+
67
+ # Check for duration
68
+ if not re.search(r"\d+\s*(min|minute|hour)", content, re.I):
69
+ self.warnings.append(f"{file_path}: No duration specified")
70
+
71
+ return valid
72
+
73
+ def validate_quiz(self, content: str, file_path: Path) -> bool:
74
+ """Validate a quiz."""
75
+ valid = True
76
+
77
+ # Check for level
78
+ if not self._has_cefr_level(content):
79
+ self.errors.append(f"{file_path}: No CEFR level specified")
80
+ valid = False
81
+
82
+ # Check for questions
83
+ if "question" not in content.lower() and "##" not in content:
84
+ self.errors.append(f"{file_path}: No questions found")
85
+ valid = False
86
+
87
+ # Check for answer key
88
+ if "answer" not in content.lower():
89
+ self.warnings.append(f"{file_path}: No answer key found")
90
+
91
+ # Check for point values
92
+ if not re.search(r"\d+\s*point", content, re.I):
93
+ self.warnings.append(f"{file_path}: No point values specified")
94
+
95
+ return valid
96
+
97
+ def validate_generic(self, content: str, file_path: Path) -> bool:
98
+ """Generic content validation."""
99
+ valid = True
100
+
101
+ # Check minimum content length
102
+ if len(content) < 100:
103
+ self.warnings.append(f"{file_path}: Content seems too short")
104
+
105
+ # Check for proper markdown structure
106
+ if "#" not in content:
107
+ self.warnings.append(f"{file_path}: No markdown headings found")
108
+
109
+ return valid
110
+
111
+ def _has_cefr_level(self, content: str) -> bool:
112
+ """Check if content has a CEFR level."""
113
+ for level in self.CEFR_LEVELS:
114
+ if level in content.upper():
115
+ return True
116
+ return False
117
+
118
+ def validate_folder(self, folder_path: Path) -> bool:
119
+ """Validate all markdown files in a folder."""
120
+ valid = True
121
+
122
+ for file_path in folder_path.glob("**/*.md"):
123
+ if not self.validate_file(file_path):
124
+ valid = False
125
+
126
+ return valid
127
+
128
+ def report(self):
129
+ """Print validation report."""
130
+ print("=" * 60)
131
+ print("CURRICULUM VALIDATION REPORT")
132
+ print("=" * 60)
133
+
134
+ if self.errors:
135
+ print("\n❌ ERRORS:")
136
+ for error in self.errors:
137
+ print(f" - {error}")
138
+
139
+ if self.warnings:
140
+ print("\n⚠️ WARNINGS:")
141
+ for warning in self.warnings:
142
+ print(f" - {warning}")
143
+
144
+ if not self.errors and not self.warnings:
145
+ print("\n✅ All content validated successfully!")
146
+
147
+ print("\n" + "-" * 60)
148
+ print(f"Errors: {len(self.errors)}")
149
+ print(f"Warnings: {len(self.warnings)}")
150
+
151
+ return len(self.errors) == 0
152
+
153
+
154
+ def main():
155
+ if len(sys.argv) < 2:
156
+ print("Usage: python curriculum_validator.py <file_or_folder>")
157
+ sys.exit(1)
158
+
159
+ target = Path(sys.argv[1])
160
+ validator = CurriculumValidator()
161
+
162
+ if target.is_file():
163
+ validator.validate_file(target)
164
+ elif target.is_dir():
165
+ validator.validate_folder(target)
166
+ else:
167
+ print(f"Error: {target} not found")
168
+ sys.exit(1)
169
+
170
+ success = validator.report()
171
+ sys.exit(0 if success else 1)
172
+
173
+
174
+ if __name__ == "__main__":
175
+ main()