@leejungkiin/awkit 1.1.4 → 1.1.7
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.
- package/README.md +15 -0
- package/VERSION +1 -1
- package/bin/awk.js +21 -55
- package/core/GEMINI.md +45 -7
- package/package.json +2 -2
- package/skills/CATALOG.md +11 -3
- package/skills/ab-test-store-listing/SKILL.md +220 -0
- package/skills/android-aso/SKILL.md +197 -0
- package/skills/app-analytics/SKILL.md +210 -0
- package/skills/app-clips/SKILL.md +163 -0
- package/skills/app-icon-optimization/SKILL.md +170 -0
- package/skills/app-launch/SKILL.md +153 -0
- package/skills/app-marketing-context/SKILL.md +129 -0
- package/skills/app-store-featured/SKILL.md +213 -0
- package/skills/apple-search-ads/SKILL.md +205 -0
- package/skills/asc-metrics/SKILL.md +157 -0
- package/skills/aso-audit/SKILL.md +179 -0
- package/skills/code-review/SKILL.md +125 -0
- package/skills/codex-conductor/SKILL.md +337 -0
- package/skills/competitor-analysis/SKILL.md +163 -0
- package/skills/competitor-tracking/SKILL.md +185 -0
- package/skills/crash-analytics/SKILL.md +181 -0
- package/skills/in-app-events/SKILL.md +176 -0
- package/skills/keyword-research/SKILL.md +141 -0
- package/skills/localization/SKILL.md +165 -0
- package/skills/market-movers/SKILL.md +137 -0
- package/skills/market-pulse/SKILL.md +170 -0
- package/skills/metadata-optimization/SKILL.md +170 -0
- package/skills/monetization-strategy/SKILL.md +175 -0
- package/skills/onboarding-optimization/SKILL.md +194 -0
- package/skills/orchestrator/SKILL.md +297 -25
- package/skills/press-and-pr/SKILL.md +204 -0
- package/skills/rating-prompt-strategy/SKILL.md +184 -0
- package/skills/retention-optimization/SKILL.md +165 -0
- package/skills/review-management/SKILL.md +154 -0
- package/skills/screenshot-optimization/SKILL.md +167 -0
- package/skills/seasonal-aso/SKILL.md +141 -0
- package/skills/spec-gate/SKILL.md +312 -0
- package/skills/subscription-lifecycle/SKILL.md +206 -0
- package/skills/swiftui-pro/references/design.md +44 -0
- package/skills/symphony-enforcer/SKILL.md +101 -9
- package/skills/systematic-debugging/SKILL.md +199 -0
- package/skills/ua-campaign/SKILL.md +207 -0
- package/skills/verification-gate/SKILL.md +151 -0
- package/skills/writing-skills/SKILL.md +110 -0
- package/workflows/conductor-codex.md +125 -0
- package/workflows/lifecycle/code.md +28 -1
- package/workflows/lifecycle/debug.md +34 -14
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verification-gate
|
|
3
|
+
description: Use BEFORE claiming any work is complete, fixed, or passing. Requires running verification commands and confirming output before making success claims. Evidence before assertions, always. Auto-triggers on task completion, commit, deploy, or any positive status claim.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Verification Before Completion
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Claiming work is complete without verification is dishonesty, not efficiency.
|
|
11
|
+
|
|
12
|
+
**Core principle:** Evidence before claims, always.
|
|
13
|
+
|
|
14
|
+
## The Iron Law
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
If you haven't run the verification command in this message, you cannot claim it passes.
|
|
21
|
+
|
|
22
|
+
## The Gate Function
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
BEFORE claiming any status or expressing satisfaction:
|
|
26
|
+
|
|
27
|
+
1. IDENTIFY: What command proves this claim?
|
|
28
|
+
2. RUN: Execute the FULL command (fresh, complete)
|
|
29
|
+
3. READ: Full output, check exit code, count failures
|
|
30
|
+
4. VERIFY: Does output confirm the claim?
|
|
31
|
+
- If NO: State actual status with evidence
|
|
32
|
+
- If YES: State claim WITH evidence
|
|
33
|
+
5. ONLY THEN: Make the claim
|
|
34
|
+
|
|
35
|
+
Skip any step = lying, not verifying
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## When to Apply
|
|
39
|
+
|
|
40
|
+
**ALWAYS before:**
|
|
41
|
+
- ANY variation of success/completion claims
|
|
42
|
+
- ANY expression of satisfaction ("Done!", "Fixed!", "Works!")
|
|
43
|
+
- Committing, PR creation, task completion
|
|
44
|
+
- `symphony_complete_task` calls
|
|
45
|
+
- Moving to next task
|
|
46
|
+
- Deploying or pushing code
|
|
47
|
+
|
|
48
|
+
## Verification Requirements by Claim Type
|
|
49
|
+
|
|
50
|
+
| Claim | Requires | NOT Sufficient |
|
|
51
|
+
|-------|----------|----------------|
|
|
52
|
+
| Tests pass | Test command output: 0 failures | Previous run, "should pass" |
|
|
53
|
+
| Linter clean | Linter output: 0 errors | Partial check, extrapolation |
|
|
54
|
+
| Build succeeds | Build command: exit 0 | Linter passing, looks good |
|
|
55
|
+
| Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
|
|
56
|
+
| Feature works | Demo/run showing behavior | Code written, assumed works |
|
|
57
|
+
| Requirements met | Line-by-line checklist | Tests passing |
|
|
58
|
+
| Deploy succeeded | Health check: 200 OK | Deploy command completed |
|
|
59
|
+
|
|
60
|
+
## Red Flags — STOP
|
|
61
|
+
|
|
62
|
+
If you catch yourself thinking any of these, STOP and run verification:
|
|
63
|
+
|
|
64
|
+
- Using "should", "probably", "seems to", "looks correct"
|
|
65
|
+
- Expressing satisfaction before verification ("Great!", "Perfect!", "Done!")
|
|
66
|
+
- About to commit/push without verification
|
|
67
|
+
- Relying on partial verification
|
|
68
|
+
- Thinking "just this once I can skip"
|
|
69
|
+
- Tired and wanting work to be over
|
|
70
|
+
- **ANY wording implying success without having run verification**
|
|
71
|
+
|
|
72
|
+
## Anti-Rationalization Table
|
|
73
|
+
|
|
74
|
+
| Excuse | Reality |
|
|
75
|
+
|--------|---------|
|
|
76
|
+
| "Should work now" | RUN the verification |
|
|
77
|
+
| "I'm confident" | Confidence ≠ evidence |
|
|
78
|
+
| "Just this once" | No exceptions |
|
|
79
|
+
| "Linter passed" | Linter ≠ compiler ≠ runtime |
|
|
80
|
+
| "I'm tired" | Exhaustion ≠ excuse |
|
|
81
|
+
| "Partial check is enough" | Partial proves nothing |
|
|
82
|
+
| "Build passed so tests pass" | Build ≠ tests |
|
|
83
|
+
| "I just changed one line" | One line can break everything |
|
|
84
|
+
| "It's a trivial change" | Trivial changes have the sneakiest bugs |
|
|
85
|
+
|
|
86
|
+
## Key Patterns
|
|
87
|
+
|
|
88
|
+
**Tests:**
|
|
89
|
+
```
|
|
90
|
+
✅ [Run test command] → [See: 34/34 pass] → "All tests pass"
|
|
91
|
+
❌ "Should pass now" / "Looks correct"
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
**Build:**
|
|
95
|
+
```
|
|
96
|
+
✅ [Run build] → [See: BUILD SUCCEEDED] → "Build passes"
|
|
97
|
+
❌ "Linter passed so build is fine"
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**Bug Fix:**
|
|
101
|
+
```
|
|
102
|
+
✅ Write regression test → Run (FAIL) → Fix → Run (PASS) → "Bug is fixed"
|
|
103
|
+
❌ "I've changed the code, bug should be fixed"
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**Requirements:**
|
|
107
|
+
```
|
|
108
|
+
✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
|
|
109
|
+
❌ "Tests pass, so requirements are met"
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Symphony Integration
|
|
113
|
+
|
|
114
|
+
When calling `symphony_complete_task`:
|
|
115
|
+
1. Run ALL relevant verification commands FIRST
|
|
116
|
+
2. Include verification evidence in the `summary` parameter
|
|
117
|
+
3. Include `files_changed` list with ACTUAL changed files
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
❌ symphony_complete_task(summary="Implemented feature X")
|
|
121
|
+
✅ symphony_complete_task(summary="Implemented feature X. Build: ✅ (exit 0). Tests: ✅ 47/47 pass. Lint: ✅ 0 errors.")
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Boil-the-Lake Completeness Checklist
|
|
125
|
+
|
|
126
|
+
> **Principle:** AI's marginal cost is near zero. Ship completeness, not shortcuts.
|
|
127
|
+
|
|
128
|
+
Trước khi claim DONE, kiểm tra **mỗi item** dưới đây:
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
☐ Error handling: MỌI code path có proper error handling?
|
|
132
|
+
→ Network errors, parsing errors, invalid input, timeouts
|
|
133
|
+
☐ Edge cases: Đã handle empty states, nil/null, boundary values?
|
|
134
|
+
→ Empty list, first item, last item, max size
|
|
135
|
+
☐ Logging: Đủ log cho production debugging?
|
|
136
|
+
→ Errors logged with context, key operations tracked
|
|
137
|
+
☐ Cleanup: Resources released? Listeners removed? Timers cancelled?
|
|
138
|
+
☐ Input validation: User input được validate trước khi process?
|
|
139
|
+
☐ Concurrency: Thread-safe? Race conditions handled?
|
|
140
|
+
☐ Backwards compatibility: Breaking changes documented?
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
**Nếu thiếu bất kỳ item nào → report DONE_WITH_CONCERNS, không DONE.**
|
|
144
|
+
|
|
145
|
+
## The Bottom Line
|
|
146
|
+
|
|
147
|
+
**No shortcuts for verification. No shortcuts for completeness.**
|
|
148
|
+
|
|
149
|
+
Run the command. Read the output. Check the checklist. THEN claim the result.
|
|
150
|
+
|
|
151
|
+
This is non-negotiable.
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: writing-skills
|
|
3
|
+
description: Use when creating or modifying AWKit skills and workflows. Applies TDD methodology to process documentation. Ensures skills are testable, anti-rationalization-proof, and follow consistent structure.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Writing Skills
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Writing skills IS Test-Driven Development applied to process documentation.
|
|
11
|
+
|
|
12
|
+
**Core principle:** If you didn't watch an agent fail without the skill, you don't know if the skill teaches the right thing.
|
|
13
|
+
|
|
14
|
+
## What is a Skill?
|
|
15
|
+
|
|
16
|
+
A **skill** is a reference guide for proven techniques, patterns, or tools.
|
|
17
|
+
|
|
18
|
+
**Skills ARE:** Reusable techniques, patterns, tools, reference guides
|
|
19
|
+
**Skills are NOT:** Narratives about how you solved a problem once
|
|
20
|
+
|
|
21
|
+
## Standard Skill Structure
|
|
22
|
+
|
|
23
|
+
Every AWKit skill MUST follow this structure:
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
---
|
|
27
|
+
name: skill-name
|
|
28
|
+
description: When to use + auto-trigger description (for CATALOG.md matching)
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
# Skill Title
|
|
32
|
+
|
|
33
|
+
## Overview (1-2 sentences — what + why)
|
|
34
|
+
## The Iron Law (core rule, no exceptions — for discipline skills)
|
|
35
|
+
## When to Use / When NOT to Use
|
|
36
|
+
## The Process (step by step)
|
|
37
|
+
## Red Flags — STOP (catch rationalization)
|
|
38
|
+
## Anti-Rationalization Table (excuse → reality)
|
|
39
|
+
## Integration (related skills + workflows)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**Required sections:** Overview, When to Use, The Process
|
|
43
|
+
**Recommended for discipline skills:** Iron Law, Red Flags, Anti-Rationalization Table
|
|
44
|
+
|
|
45
|
+
## When to Create a Skill
|
|
46
|
+
|
|
47
|
+
**Create when:**
|
|
48
|
+
- Technique wasn't intuitively obvious
|
|
49
|
+
- You'd reference this again across projects
|
|
50
|
+
- Pattern applies broadly (not project-specific)
|
|
51
|
+
- An agent repeatedly makes the same mistake
|
|
52
|
+
|
|
53
|
+
**Don't create for:**
|
|
54
|
+
- One-off solutions
|
|
55
|
+
- Standard practices well-documented elsewhere
|
|
56
|
+
- Project-specific conventions (put in GEMINI.md or docs/specs/)
|
|
57
|
+
|
|
58
|
+
## Skill Types
|
|
59
|
+
|
|
60
|
+
### Rigid Skills (Follow Exactly)
|
|
61
|
+
- `verification-gate` — No shortcuts for verification
|
|
62
|
+
- `systematic-debugging` — 4-phase process mandatory
|
|
63
|
+
- TDD enforcement — RED-GREEN-REFACTOR cycle
|
|
64
|
+
|
|
65
|
+
### Flexible Skills (Adapt Principles)
|
|
66
|
+
- `brainstorm-agent` — Adapt questions to context
|
|
67
|
+
- `ios-engineer` — Apply patterns per project needs
|
|
68
|
+
|
|
69
|
+
**The skill itself tells you which type it is.**
|
|
70
|
+
|
|
71
|
+
## Key Writing Principles
|
|
72
|
+
|
|
73
|
+
### 1. Token Efficiency (Critical)
|
|
74
|
+
- Every token competes for agent context
|
|
75
|
+
- Use tables over paragraphs for rules
|
|
76
|
+
- Use bullet points over prose
|
|
77
|
+
- Eliminate redundancy ruthlessly
|
|
78
|
+
|
|
79
|
+
### 2. Bulletproofing Against Rationalization
|
|
80
|
+
- Agents are smart and WILL find loopholes under pressure
|
|
81
|
+
- Close every loophole explicitly
|
|
82
|
+
- Build rationalization table with common excuses
|
|
83
|
+
- Create Red Flags list
|
|
84
|
+
|
|
85
|
+
### 3. Cross-Referencing
|
|
86
|
+
- Link related skills: `**Related:** verification-gate, systematic-debugging`
|
|
87
|
+
- Note integration points: "Used by single-flow-task-execution"
|
|
88
|
+
- Reference workflows: `/debug`, `/code`, `/deploy`
|
|
89
|
+
|
|
90
|
+
## Checklist: Before Publishing Skill
|
|
91
|
+
|
|
92
|
+
- [ ] SKILL.md follows standard structure
|
|
93
|
+
- [ ] `name` and `description` in frontmatter
|
|
94
|
+
- [ ] When to Use is clear and specific
|
|
95
|
+
- [ ] Process steps are numbered and unambiguous
|
|
96
|
+
- [ ] Anti-rationalization table covers common excuses
|
|
97
|
+
- [ ] Integration section lists related skills/workflows
|
|
98
|
+
- [ ] File < 500 lines
|
|
99
|
+
- [ ] No narrative/story sections — only reference content
|
|
100
|
+
- [ ] Updated CATALOG.md entry
|
|
101
|
+
|
|
102
|
+
## Integration
|
|
103
|
+
|
|
104
|
+
**Related:**
|
|
105
|
+
- `awf-version-tracker` — Auto-snapshot skill changes
|
|
106
|
+
- CATALOG.md — Skill registry
|
|
107
|
+
|
|
108
|
+
**Workflows:**
|
|
109
|
+
- `/skill-health` — Check skill system health
|
|
110
|
+
- `/skill-rollback` — Rollback broken skill changes
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 🔍 Codex Conductor — Gọi Codex CLI rà soát code, debug, review logic, và verify refactor
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /conductor-codex — Three-Agent Inspector Workflow
|
|
6
|
+
|
|
7
|
+
> Antigravity gọi Codex CLI (headless, read-only) khi cần rà soát chuyên sâu.
|
|
8
|
+
> Codex CHỈ ĐỌC + TẠO BÁO CÁO `.md`. KHÔNG BAO GIỜ sửa code.
|
|
9
|
+
|
|
10
|
+
// turbo-all
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
1. Kiểm tra Codex CLI:
|
|
17
|
+
```bash
|
|
18
|
+
which codex || echo "NOT_INSTALLED"
|
|
19
|
+
```
|
|
20
|
+
2. Nếu chưa cài → đề xuất cài:
|
|
21
|
+
```bash
|
|
22
|
+
npm i -g @openai/codex
|
|
23
|
+
```
|
|
24
|
+
3. Tạo thư mục report nếu chưa có:
|
|
25
|
+
```bash
|
|
26
|
+
mkdir -p codex-reports
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Sub-commands
|
|
32
|
+
|
|
33
|
+
### `/conductor-codex:debug` — Phân tích root cause bug
|
|
34
|
+
|
|
35
|
+
1. User mô tả bug (crash, lỗi logic, unexpected behavior)
|
|
36
|
+
2. Thông báo: "🔍 Đang gọi Codex CLI phân tích bug..."
|
|
37
|
+
3. Gọi CLI:
|
|
38
|
+
```bash
|
|
39
|
+
cd <PROJECT_ROOT> && timeout 120 codex "A bug was reported: <BUG_DESCRIPTION>. Analyze the codebase to find the root cause. List: (1) most likely root cause with file:line, (2) contributing factors, (3) suggested fix approach. DO NOT edit any files." --approval-mode suggest -q 2>/dev/null
|
|
40
|
+
```
|
|
41
|
+
4. Parse output → lưu vào `codex-reports/bug-analysis-<DATE>.md`
|
|
42
|
+
5. Tóm tắt findings cho user
|
|
43
|
+
6. Nếu critical → Antigravity thực hiện fix
|
|
44
|
+
|
|
45
|
+
### `/conductor-codex:review` — Pre-commit code review
|
|
46
|
+
|
|
47
|
+
1. Kiểm tra có uncommitted changes: `git diff --stat`
|
|
48
|
+
2. Thông báo: "🔍 Đang gọi Codex CLI review code..."
|
|
49
|
+
3. Gọi CLI:
|
|
50
|
+
```bash
|
|
51
|
+
cd <PROJECT_ROOT> && timeout 120 codex "Review the uncommitted changes in this repo. Check for: bugs, logic errors, edge cases, thread safety, security issues, performance problems. Rank issues by severity (critical/warning/info). DO NOT edit any files." --approval-mode suggest -q 2>/dev/null
|
|
52
|
+
```
|
|
53
|
+
4. Parse output → lưu vào `codex-reports/review-<DATE>.md`
|
|
54
|
+
5. Tóm tắt: issues found + severity
|
|
55
|
+
6. Nếu clean → suggest `git commit`
|
|
56
|
+
|
|
57
|
+
### `/conductor-codex:logic` — Phân tích logic & edge cases
|
|
58
|
+
|
|
59
|
+
1. Xác định file/module cần kiểm tra
|
|
60
|
+
2. Thông báo: "🔍 Đang gọi Codex CLI kiểm tra logic..."
|
|
61
|
+
3. Gọi CLI:
|
|
62
|
+
```bash
|
|
63
|
+
cd <PROJECT_ROOT> && timeout 120 codex "Analyze <FILE_OR_MODULE> for logic correctness. Focus on: edge cases (null, empty, boundary), race conditions, error handling gaps, unreachable code, off-by-one errors. List each issue with file:line and severity. DO NOT edit any files." --approval-mode suggest -q 2>/dev/null
|
|
64
|
+
```
|
|
65
|
+
4. Parse output → lưu vào `codex-reports/logic-analysis-<DATE>.md`
|
|
66
|
+
5. Tóm tắt findings cho user
|
|
67
|
+
|
|
68
|
+
### `/conductor-codex:test` — Generate test cases
|
|
69
|
+
|
|
70
|
+
1. Xác định feature/module cần test
|
|
71
|
+
2. Thông báo: "🔍 Đang gọi Codex CLI generate test cases..."
|
|
72
|
+
3. Gọi CLI:
|
|
73
|
+
```bash
|
|
74
|
+
cd <PROJECT_ROOT> && timeout 120 codex "Analyze <FILE_OR_MODULE> and generate a comprehensive list of test cases. Include: happy path, edge cases, error cases, boundary values. Format as markdown table with columns: Test Name | Input | Expected Output | Type. DO NOT edit any files." --approval-mode suggest -q 2>/dev/null
|
|
75
|
+
```
|
|
76
|
+
4. Parse output → lưu vào `codex-reports/test-cases-<DATE>.md`
|
|
77
|
+
5. Trình bày test plan cho user
|
|
78
|
+
|
|
79
|
+
### `/conductor-codex:plan-review` — Review implementation plan
|
|
80
|
+
|
|
81
|
+
1. Đọc `implementation_plan.md` hiện tại
|
|
82
|
+
2. Thông báo: "🔍 Đang gọi Codex CLI review plan..."
|
|
83
|
+
3. Gọi CLI:
|
|
84
|
+
```bash
|
|
85
|
+
cd <PROJECT_ROOT> && timeout 120 codex "Review this implementation plan in the current directory. Find: logic holes, missing error handling, security risks, race conditions, scalability issues, missing edge cases. Rate each issue by severity (critical/warning/info). DO NOT edit any files." --approval-mode suggest -q 2>/dev/null
|
|
86
|
+
```
|
|
87
|
+
4. Parse output → lưu vào `codex-reports/plan-review-<DATE>.md`
|
|
88
|
+
5. Tóm tắt issues → Antigravity cập nhật plan
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Fallback Rules
|
|
93
|
+
|
|
94
|
+
```yaml
|
|
95
|
+
cli_not_installed:
|
|
96
|
+
- "⚠️ Codex CLI chưa cài. Chạy: npm i -g @openai/codex"
|
|
97
|
+
- Offer to install automatically
|
|
98
|
+
|
|
99
|
+
cli_unavailable:
|
|
100
|
+
- "⚠️ Codex CLI không khả dụng, tiếp tục với Antigravity-only"
|
|
101
|
+
- Do NOT block workflow
|
|
102
|
+
|
|
103
|
+
cli_timeout:
|
|
104
|
+
- "⏳ Codex phân tích quá lâu (>120s), bỏ qua và tiếp tục"
|
|
105
|
+
|
|
106
|
+
cli_error:
|
|
107
|
+
- Log error
|
|
108
|
+
- Fall back gracefully
|
|
109
|
+
- Suggest: "codex --version" to check installation
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Communication
|
|
115
|
+
|
|
116
|
+
Mỗi khi gọi CLI, LUÔN thông báo user:
|
|
117
|
+
```
|
|
118
|
+
🔍 Đang gọi Codex CLI để [mục đích]...
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Sau khi nhận kết quả:
|
|
122
|
+
```
|
|
123
|
+
✅ Codex rà soát xong. Báo cáo: codex-reports/<file>.md
|
|
124
|
+
📊 Tóm tắt: [key findings]
|
|
125
|
+
```
|
|
@@ -291,6 +291,29 @@ Khi user gõ `/code all-phases`:
|
|
|
291
291
|
* Cài thêm thư viện mới → Hỏi trước
|
|
292
292
|
* Deploy/Push code → **LUÔN LUÔN** hỏi trước
|
|
293
293
|
|
|
294
|
+
### 5. TDD ENFORCEMENT (Superpowers-Inspired)
|
|
295
|
+
|
|
296
|
+
> **Iron Law:** Write failing test FIRST, then implement. RED → GREEN → REFACTOR.
|
|
297
|
+
> Ref: `~/.gemini/antigravity/skills/systematic-debugging/SKILL.md` Phase 4.
|
|
298
|
+
|
|
299
|
+
**For PRODUCTION and ENTERPRISE quality levels:**
|
|
300
|
+
```
|
|
301
|
+
1. Write failing test for the feature/fix
|
|
302
|
+
2. Run test → MUST FAIL (RED)
|
|
303
|
+
3. Write MINIMAL code to make test pass
|
|
304
|
+
4. Run test → MUST PASS (GREEN)
|
|
305
|
+
5. Refactor if needed, tests still pass
|
|
306
|
+
6. Commit
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
**Anti-Rationalization:**
|
|
310
|
+
| Excuse | Reality |
|
|
311
|
+
|--------|--------|
|
|
312
|
+
| "I'll write tests after" | Untested code = unknown state |
|
|
313
|
+
| "Too simple for tests" | Simple code breaks most |
|
|
314
|
+
| "Tests slow me down" | Tests prevent 2h debug sessions |
|
|
315
|
+
| "MVP doesn't need tests" | Even MVP needs syntax/build check |
|
|
316
|
+
|
|
294
317
|
---
|
|
295
318
|
|
|
296
319
|
## Giai đoạn 2: Hidden Requirements (Tự động thêm)
|
|
@@ -401,9 +424,13 @@ Test FAIL
|
|
|
401
424
|
[Lần 3] Rollback + Approach khác → Test lại
|
|
402
425
|
↓
|
|
403
426
|
├── PASS → Thoát loop, tiếp tục
|
|
404
|
-
└── FAIL →
|
|
427
|
+
└── FAIL → ⚠️ 3-Fix Rule: Question architecture!
|
|
428
|
+
→ Hỏi User + gợi ý /debug --systematic
|
|
405
429
|
```
|
|
406
430
|
|
|
431
|
+
> **3-Fix Rule (from Superpowers):** Nếu 3 lần fix fail → đây KHÔNG phải bug đơn giản.
|
|
432
|
+
> Đây là vấn đề kiến trúc. DỪNG fix symptoms, thảo luận root cause với user.
|
|
433
|
+
|
|
407
434
|
### 4.3. Khi fix loop thất bại
|
|
408
435
|
|
|
409
436
|
```
|
|
@@ -9,6 +9,18 @@ description: 🐞 Sửa lỗi & Debug (Dual-Mode v5.0)
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
+
## ⚠️ Iron Law (from systematic-debugging skill)
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
> Bắt buộc: Đọc `~/.gemini/antigravity/skills/systematic-debugging/SKILL.md` trước khi debug.
|
|
19
|
+
> 4 phases: Root Cause → Pattern Analysis → Hypothesis → Implementation
|
|
20
|
+
> 3-Fix Rule: Sau 3 fix thất bại → question architecture, discuss with user.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
12
24
|
## 🅰️ Expert Mode (Direct Execution)
|
|
13
25
|
|
|
14
26
|
**Usage:**
|
|
@@ -16,20 +28,28 @@ description: 🐞 Sửa lỗi & Debug (Dual-Mode v5.0)
|
|
|
16
28
|
/debug --auto-fix --file src/components/Cart.tsx
|
|
17
29
|
```
|
|
18
30
|
|
|
19
|
-
**Logic:**
|
|
20
|
-
1. **
|
|
21
|
-
- Đọc
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
-
|
|
32
|
-
|
|
31
|
+
**Logic (follows 4-phase systematic debugging):**
|
|
32
|
+
1. **Phase 1 — Root Cause Investigation:**
|
|
33
|
+
- Đọc error messages/stack traces HOÀN TOÀN (không skip).
|
|
34
|
+
- Reproduce consistently — exact steps.
|
|
35
|
+
- `git diff` — check recent changes.
|
|
36
|
+
- Multi-component: add diagnostic logging ở mỗi boundary.
|
|
37
|
+
- Trace data flow backward đến source.
|
|
38
|
+
2. **Phase 2 — Pattern Analysis:**
|
|
39
|
+
- Find similar WORKING code in codebase.
|
|
40
|
+
- Compare: list EVERY difference.
|
|
41
|
+
3. **Phase 3 — Hypothesis:**
|
|
42
|
+
- "I think X is root cause because Y"
|
|
43
|
+
- Test minimally — ONE variable at a time.
|
|
44
|
+
4. **Phase 4 — Implementation:**
|
|
45
|
+
- Create failing test FIRST.
|
|
46
|
+
- Implement single fix.
|
|
47
|
+
- Verify: tests pass, no regressions.
|
|
48
|
+
5. **Symphony Sync:**
|
|
49
|
+
- Nếu lỗi Critical và không thể auto-fix → `symphony_create_task(title="Fix Critical Bug in Cart.tsx")`.
|
|
50
|
+
6. **NeuralMemory:**
|
|
51
|
+
- `nmem_remember` root cause + fix + pattern (cho future recall).
|
|
52
|
+
7. **Report:** "✅ Fixed 1 issue. Evidence: [test output]. ⚠️ Created task #456 for manual review."
|
|
33
53
|
|
|
34
54
|
---
|
|
35
55
|
|