@leejungkiin/awkit 1.3.8 → 1.4.2
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/bin/awk.js +630 -52
- package/bin/claude-generators.js +122 -0
- package/core/AGENTS.md +54 -0
- package/core/CLAUDE.md +155 -0
- package/core/GEMINI.md +44 -9
- package/core/GEMINI.md.bak +126 -199
- package/package.json +1 -1
- package/skills/ai-sprite-maker/SKILL.md +81 -0
- package/skills/ai-sprite-maker/scripts/animate_sprite.py +102 -0
- package/skills/ai-sprite-maker/scripts/process_sprites.py +140 -0
- package/skills/awf-session-restore/SKILL.md +12 -2
- package/skills/brainstorm-agent/SKILL.md +11 -8
- package/skills/code-review/SKILL.md +21 -33
- package/skills/gitnexus/gitnexus-cli/SKILL.md +82 -0
- package/skills/gitnexus/gitnexus-debugging/SKILL.md +89 -0
- package/skills/gitnexus/gitnexus-exploring/SKILL.md +78 -0
- package/skills/gitnexus/gitnexus-guide/SKILL.md +64 -0
- package/skills/gitnexus/gitnexus-impact-analysis/SKILL.md +97 -0
- package/skills/gitnexus/gitnexus-refactoring/SKILL.md +121 -0
- package/skills/lucylab-tts/SKILL.md +64 -0
- package/skills/lucylab-tts/resources/voices_library.json +908 -0
- package/skills/lucylab-tts/scripts/.env +1 -0
- package/skills/lucylab-tts/scripts/lucylab_tts.py +506 -0
- package/skills/nm-memory-sync/SKILL.md +14 -1
- package/skills/orchestrator/SKILL.md +5 -38
- package/skills/ship-to-code/SKILL.md +115 -0
- package/skills/short-maker/SKILL.md +150 -0
- package/skills/short-maker/_backup/storyboard.html +106 -0
- package/skills/short-maker/_backup/video_mixer.py +296 -0
- package/skills/short-maker/outputs/fitbite-promo/background.jpg +0 -0
- package/skills/short-maker/outputs/fitbite-promo/final/promo-final.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/script.md +19 -0
- package/skills/short-maker/outputs/fitbite-promo/segments/scene-01.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/segments/scene-02.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/segments/scene-03.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/segments/scene-04.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/storyboard/scene-01.png +0 -0
- package/skills/short-maker/outputs/fitbite-promo/storyboard/scene-02.png +0 -0
- package/skills/short-maker/outputs/fitbite-promo/storyboard/scene-03.png +0 -0
- package/skills/short-maker/outputs/fitbite-promo/storyboard/scene-04.png +0 -0
- package/skills/short-maker/outputs/fitbite-promo/storyboard.html +133 -0
- package/skills/short-maker/outputs/fitbite-promo/storyboard.json +38 -0
- package/skills/short-maker/outputs/fitbite-promo/temp/merged_chroma.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/temp/merged_crossfaded.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/temp/ready_00.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/temp/ready_01.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/temp/ready_02.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/temp/ready_03.mp4 +0 -0
- package/skills/short-maker/outputs/fitbite-promo/tts/manifest.json +31 -0
- package/skills/short-maker/outputs/fitbite-promo/tts/scene-01.wav +0 -0
- package/skills/short-maker/outputs/fitbite-promo/tts/scene-02.wav +0 -0
- package/skills/short-maker/outputs/fitbite-promo/tts/scene-03.wav +0 -0
- package/skills/short-maker/outputs/fitbite-promo/tts/scene-04.wav +0 -0
- package/skills/short-maker/outputs/fitbite-promo/tts_script.txt +11 -0
- package/skills/short-maker/scripts/google-flow-cli/.project-identity +41 -0
- package/skills/short-maker/scripts/google-flow-cli/.trae/rules/project_rules.md +52 -0
- package/skills/short-maker/scripts/google-flow-cli/CODEBASE.md +67 -0
- package/skills/short-maker/scripts/google-flow-cli/GoogleFlowCli.code-workspace +29 -0
- package/skills/short-maker/scripts/google-flow-cli/README.md +168 -0
- package/skills/short-maker/scripts/google-flow-cli/docs/specs/PROJECT.md +12 -0
- package/skills/short-maker/scripts/google-flow-cli/docs/specs/REQUIREMENTS.md +22 -0
- package/skills/short-maker/scripts/google-flow-cli/docs/specs/ROADMAP.md +16 -0
- package/skills/short-maker/scripts/google-flow-cli/docs/specs/TECH-SPEC.md +13 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/__init__.py +3 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/api/__init__.py +19 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/api/client.py +1921 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/api/models.py +64 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/api/rpc_ids.py +98 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/auth/__init__.py +15 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/auth/browser_auth.py +692 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/auth/humanizer.py +417 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/auth/proxy_ext.py +120 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/auth/recaptcha.py +482 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/batchexecute/__init__.py +5 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/batchexecute/client.py +414 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/cli/__init__.py +1 -0
- package/skills/short-maker/scripts/google-flow-cli/gflow/cli/main.py +1075 -0
- package/skills/short-maker/scripts/google-flow-cli/pyproject.toml +36 -0
- package/skills/short-maker/scripts/google-flow-cli/script.txt +22 -0
- package/skills/short-maker/scripts/google-flow-cli/tests/__init__.py +0 -0
- package/skills/short-maker/scripts/google-flow-cli/tests/test_batchexecute.py +113 -0
- package/skills/short-maker/scripts/google-flow-cli/tests/test_client.py +190 -0
- package/skills/short-maker/templates/aida_script.md +40 -0
- package/skills/short-maker/templates/mimic_analyzer.md +29 -0
- package/skills/single-flow-task-execution/SKILL.md +412 -0
- package/skills/single-flow-task-execution/code-quality-reviewer-prompt.md +20 -0
- package/skills/single-flow-task-execution/implementer-prompt.md +78 -0
- package/skills/single-flow-task-execution/spec-reviewer-prompt.md +61 -0
- package/skills/skill-creator/SKILL.md +44 -0
- package/skills/spm-build-analysis/SKILL.md +92 -0
- package/skills/spm-build-analysis/references/build-optimization-sources.md +155 -0
- package/skills/spm-build-analysis/references/recommendation-format.md +85 -0
- package/skills/spm-build-analysis/references/spm-analysis-checks.md +105 -0
- package/skills/spm-build-analysis/scripts/check_spm_pins.py +118 -0
- package/skills/symphony-enforcer/SKILL.md +83 -97
- package/skills/symphony-orchestrator/SKILL.md +1 -1
- package/skills/trello-sync/SKILL.md +52 -45
- package/skills/verification-gate/SKILL.md +13 -2
- package/skills/xcode-build-benchmark/SKILL.md +88 -0
- package/skills/xcode-build-benchmark/references/benchmark-artifacts.md +94 -0
- package/skills/xcode-build-benchmark/references/benchmarking-workflow.md +67 -0
- package/skills/xcode-build-benchmark/schemas/build-benchmark.schema.json +230 -0
- package/skills/xcode-build-benchmark/scripts/benchmark_builds.py +308 -0
- package/skills/xcode-build-fixer/SKILL.md +218 -0
- package/skills/xcode-build-fixer/references/build-settings-best-practices.md +216 -0
- package/skills/xcode-build-fixer/references/fix-patterns.md +290 -0
- package/skills/xcode-build-fixer/references/recommendation-format.md +85 -0
- package/skills/xcode-build-fixer/scripts/benchmark_builds.py +308 -0
- package/skills/xcode-build-orchestrator/SKILL.md +156 -0
- package/skills/xcode-build-orchestrator/references/benchmark-artifacts.md +94 -0
- package/skills/xcode-build-orchestrator/references/build-settings-best-practices.md +216 -0
- package/skills/xcode-build-orchestrator/references/orchestration-report-template.md +143 -0
- package/skills/xcode-build-orchestrator/references/recommendation-format.md +85 -0
- package/skills/xcode-build-orchestrator/scripts/benchmark_builds.py +308 -0
- package/skills/xcode-build-orchestrator/scripts/diagnose_compilation.py +273 -0
- package/skills/xcode-build-orchestrator/scripts/generate_optimization_report.py +533 -0
- package/skills/xcode-compilation-analyzer/SKILL.md +89 -0
- package/skills/xcode-compilation-analyzer/references/build-optimization-sources.md +155 -0
- package/skills/xcode-compilation-analyzer/references/code-compilation-checks.md +106 -0
- package/skills/xcode-compilation-analyzer/references/recommendation-format.md +85 -0
- package/skills/xcode-compilation-analyzer/scripts/diagnose_compilation.py +273 -0
- package/skills/xcode-project-analyzer/SKILL.md +76 -0
- package/skills/xcode-project-analyzer/references/build-optimization-sources.md +155 -0
- package/skills/xcode-project-analyzer/references/build-settings-best-practices.md +216 -0
- package/skills/xcode-project-analyzer/references/project-audit-checks.md +101 -0
- package/skills/xcode-project-analyzer/references/recommendation-format.md +85 -0
- package/templates/CODEBASE.md +26 -42
- package/templates/configs/trello-config.json +2 -2
- package/templates/workflow_dual_mode_template.md +5 -5
- package/workflows/_uncategorized/conductor-codex.md +125 -0
- package/workflows/_uncategorized/conductor.md +97 -0
- package/workflows/_uncategorized/ship-to-code.md +85 -0
- package/workflows/_uncategorized/trello-sync.md +52 -0
- package/workflows/context/codebase-sync.md +10 -87
- package/workflows/quality/visual-debug.md +66 -12
package/templates/CODEBASE.md
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
# {{PROJECT_NAME}} — Codebase Map
|
|
2
2
|
|
|
3
|
-
> **Project Type:** {{PROJECT_TYPE}} | **
|
|
4
|
-
> **Tech Stack:** {{TECH_STACK_SUMMARY}}
|
|
3
|
+
> **Project Type:** {{PROJECT_TYPE}} | **Tech Stack:** {{TECH_STACK_SUMMARY}}
|
|
5
4
|
> **Last Synced:** {{DATE}}
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
> [!NOTE]
|
|
7
|
+
> AI PHẢI đọc file này TRƯỚC KHI dùng `grep_search` / `codebase_search` / `list_dir`.
|
|
8
|
+
> Đọc → xác định target → search cụ thể. KHÔNG search "mù".
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
---
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
## 🗺️ Directory Structure
|
|
12
13
|
|
|
13
14
|
```
|
|
14
15
|
{{DIR_STRUCTURE}}
|
|
@@ -16,47 +17,32 @@
|
|
|
16
17
|
|
|
17
18
|
---
|
|
18
19
|
|
|
19
|
-
## 📁
|
|
20
|
-
|
|
21
|
-
| Area | Location | Description |
|
|
22
|
-
|------|----------|-------------|
|
|
23
|
-
| _(example)_ Features | `{{FEATURES_DIR}}` | Main feature modules |
|
|
24
|
-
| _(example)_ Shared UI | `{{SHARED_UI_DIR}}` | Reusable UI components |
|
|
25
|
-
| _(example)_ Services | `{{SERVICES_DIR}}` | Business logic & data layer |
|
|
26
|
-
| _(example)_ Models | `{{MODELS_DIR}}` | Data models & DTOs |
|
|
27
|
-
|
|
28
|
-
> ⚠️ Update this table after adding new feature areas.
|
|
29
|
-
|
|
30
|
-
---
|
|
20
|
+
## 📁 File Index
|
|
31
21
|
|
|
32
|
-
|
|
22
|
+
> Compact format: `path` → purpose (1 line mỗi file)
|
|
33
23
|
|
|
34
|
-
|
|
35
|
-
|---------|--------|-------|
|
|
36
|
-
| Analytics | ✅ | Event tracking |
|
|
37
|
-
| Crashlytics | ✅ | Crash reporting |
|
|
38
|
-
| Remote Config | ✅ | Feature flags |
|
|
39
|
-
| Auth | ✅ | Sign in methods |
|
|
40
|
-
| Firestore | ⬜ | — |
|
|
41
|
-
| Storage | ⬜ | — |
|
|
24
|
+
### Core / Infrastructure
|
|
42
25
|
|
|
43
|
-
|
|
26
|
+
| Path | Purpose |
|
|
27
|
+
|------|---------|
|
|
28
|
+
| `{{CORE_FILE_1}}` | {{PURPOSE_1}} |
|
|
29
|
+
| `{{CORE_FILE_2}}` | {{PURPOSE_2}} |
|
|
44
30
|
|
|
45
|
-
|
|
31
|
+
### Features
|
|
46
32
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
33
|
+
| Path | Purpose |
|
|
34
|
+
|------|---------|
|
|
35
|
+
| `{{FEATURE_FILE_1}}` | {{PURPOSE_1}} |
|
|
36
|
+
| `{{FEATURE_FILE_2}}` | {{PURPOSE_2}} |
|
|
51
37
|
|
|
52
|
-
|
|
38
|
+
### UI / Views
|
|
53
39
|
|
|
54
|
-
|
|
40
|
+
| Path | Purpose |
|
|
41
|
+
|------|---------|
|
|
42
|
+
| `{{VIEW_FILE_1}}` | {{PURPOSE_1}} |
|
|
43
|
+
| `{{VIEW_FILE_2}}` | {{PURPOSE_2}} |
|
|
55
44
|
|
|
56
|
-
|
|
57
|
-
- **Functions/Methods:** `camelCase`
|
|
58
|
-
- **Constants:** `UPPER_SNAKE_CASE`
|
|
59
|
-
- **Variables:** `camelCase`
|
|
45
|
+
> ⚠️ Thêm file mới vào section phù hợp. Dùng `/codebase-sync` để auto-update.
|
|
60
46
|
|
|
61
47
|
---
|
|
62
48
|
|
|
@@ -67,14 +53,12 @@
|
|
|
67
53
|
| `.project-identity` | AI project context |
|
|
68
54
|
| `CODEBASE.md` | This file — codebase map for AI |
|
|
69
55
|
|
|
70
|
-
> Add important files here as the project grows.
|
|
71
|
-
|
|
72
56
|
---
|
|
73
57
|
|
|
74
58
|
## 📝 Notes
|
|
75
59
|
|
|
76
|
-
|
|
60
|
+
_Architecture decisions, gotchas, và context quan trọng._
|
|
77
61
|
|
|
78
62
|
---
|
|
79
63
|
|
|
80
|
-
*Auto-generated by `awkit init` — keep
|
|
64
|
+
*Auto-generated by `awkit init` — keep updated with `/codebase-sync`*
|
|
@@ -34,7 +34,7 @@ description: [Short description of the workflow]
|
|
|
34
34
|
### Phase 1: Context & Setup
|
|
35
35
|
1. **Understand Intent:**
|
|
36
36
|
- "Bạn muốn làm gì với [Command]?"
|
|
37
|
-
- (AI analyzes context from `.project-identity` & `.
|
|
37
|
+
- (AI analyzes context from `.project-identity` & `.beads`)
|
|
38
38
|
|
|
39
39
|
2. **Configuration:**
|
|
40
40
|
- [Question 1]
|
|
@@ -68,7 +68,7 @@ description: [Short description of the workflow]
|
|
|
68
68
|
- Locations of artifacts.
|
|
69
69
|
|
|
70
70
|
2. **Memory Sync:**
|
|
71
|
-
- Auto-sync with
|
|
71
|
+
- Auto-sync with Beads (Task) & Brain (Knowledge).
|
|
72
72
|
|
|
73
73
|
3. **Next Steps Menu:**
|
|
74
74
|
```markdown
|
|
@@ -79,9 +79,9 @@ description: [Short description of the workflow]
|
|
|
79
79
|
|
|
80
80
|
---
|
|
81
81
|
|
|
82
|
-
## 🧠 Brain &
|
|
82
|
+
## 🧠 Brain & Beads Integration
|
|
83
83
|
|
|
84
|
-
- **Input:** Check `
|
|
84
|
+
- **Input:** Check `bd list --status in_progress` to resume context.
|
|
85
85
|
- **Output:**
|
|
86
|
-
- Create/Update
|
|
86
|
+
- Create/Update Beads task.
|
|
87
87
|
- Create Brain memory file if knowledge is valuable.
|
|
@@ -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
|
+
```
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 🎼 CLI Conductor — Gọi Gemini CLI phân tích, lên chiến lược, và review code project-wide
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /conductor — Two-Agent Orchestration Workflow
|
|
6
|
+
|
|
7
|
+
> Antigravity chủ động gọi Gemini CLI (headless) khi cần tầm nhìn toàn project.
|
|
8
|
+
> CLI chạy quota pool riêng → nhân đôi AI capacity.
|
|
9
|
+
|
|
10
|
+
// turbo-all
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Sub-commands
|
|
15
|
+
|
|
16
|
+
### `/conductor:analyze` — Phân tích project-wide
|
|
17
|
+
|
|
18
|
+
1. Xác định project root (dùng `.project-identity` hoặc `CODEBASE.md`)
|
|
19
|
+
2. Thông báo user: "📡 Đang gọi Gemini CLI phân tích cấu trúc project..."
|
|
20
|
+
3. Gọi CLI:
|
|
21
|
+
```bash
|
|
22
|
+
cd <PROJECT_ROOT> && timeout 60 gemini -p "Analyze the project structure. List main modules, their responsibilities, key files, and dependencies. Be concise." --approval-mode plan 2>/dev/null
|
|
23
|
+
```
|
|
24
|
+
4. Parse output → tóm tắt cho user
|
|
25
|
+
5. Nếu project có `conductor/tracks.md` → cập nhật
|
|
26
|
+
6. Nếu chưa có `conductor/` → hỏi user có muốn tạo không
|
|
27
|
+
|
|
28
|
+
### `/conductor:track` — Tạo/cập nhật strategic track
|
|
29
|
+
|
|
30
|
+
1. Đọc `conductor/tracks.md` hiện tại (nếu có)
|
|
31
|
+
2. User mô tả mục tiêu chiến lược
|
|
32
|
+
3. Gọi CLI:
|
|
33
|
+
```bash
|
|
34
|
+
cd <PROJECT_ROOT> && timeout 60 gemini -p "Given this project context and goal: <GOAL>. Create a strategic track with: objectives, key milestones, and task breakdown. Current tracks: <EXISTING_TRACKS>" --approval-mode plan 2>/dev/null
|
|
35
|
+
```
|
|
36
|
+
4. Parse output → ghi vào `conductor/tracks.md`
|
|
37
|
+
5. Tạo Symphony tasks từ task breakdown (nếu user đồng ý)
|
|
38
|
+
|
|
39
|
+
### `/conductor:delegate` — Delegate task cho CLI xử lý
|
|
40
|
+
|
|
41
|
+
1. Xác định task cần CLI (phân tích, review, generate)
|
|
42
|
+
2. Build prompt với context đầy đủ
|
|
43
|
+
3. Gọi CLI:
|
|
44
|
+
```bash
|
|
45
|
+
cd <PROJECT_ROOT> && timeout 60 gemini -p "<TASK_PROMPT>" --approval-mode plan 2>/dev/null
|
|
46
|
+
```
|
|
47
|
+
4. Nhận kết quả → tích hợp vào workflow hiện tại
|
|
48
|
+
5. Tiếp tục code/debug với insights từ CLI
|
|
49
|
+
|
|
50
|
+
### `/conductor:review` — Pre-commit review qua CLI
|
|
51
|
+
|
|
52
|
+
1. Lấy diff: `git diff --staged` hoặc `git diff`
|
|
53
|
+
2. Gọi CLI:
|
|
54
|
+
```bash
|
|
55
|
+
cd <PROJECT_ROOT> && timeout 60 gemini -p "Review these code changes for bugs, security issues, and best practices: $(git diff --staged --stat)" --approval-mode plan 2>/dev/null
|
|
56
|
+
```
|
|
57
|
+
3. Parse output → báo cáo issues cho user
|
|
58
|
+
4. Nếu clean → suggest `git commit`
|
|
59
|
+
|
|
60
|
+
### `/conductor:setup` — Khởi tạo conductor infrastructure
|
|
61
|
+
|
|
62
|
+
1. Tạo thư mục `conductor/` tại project root
|
|
63
|
+
2. Copy template `conductor-tracks.md` → `conductor/tracks.md`
|
|
64
|
+
3. Thêm `conductor/` vào `.gitignore` (nếu user muốn)
|
|
65
|
+
4. Thông báo: "✅ Conductor infrastructure ready!"
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Fallback Rules
|
|
70
|
+
|
|
71
|
+
```yaml
|
|
72
|
+
cli_unavailable:
|
|
73
|
+
- "⚠️ Gemini CLI không khả dụng, tiếp tục với Antigravity-only mode"
|
|
74
|
+
- Do NOT block workflow
|
|
75
|
+
|
|
76
|
+
cli_timeout:
|
|
77
|
+
- "⏳ CLI phân tích quá lâu (>60s), bỏ qua và tiếp tục"
|
|
78
|
+
|
|
79
|
+
cli_error:
|
|
80
|
+
- Log error
|
|
81
|
+
- Fall back gracefully
|
|
82
|
+
- Suggest: "gemini --version" to check installation
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Communication
|
|
88
|
+
|
|
89
|
+
Mỗi khi gọi CLI, LUÔN thông báo user:
|
|
90
|
+
```
|
|
91
|
+
📡 Đang gọi Gemini CLI để [mục đích]...
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Sau khi nhận kết quả:
|
|
95
|
+
```
|
|
96
|
+
✅ CLI phân tích xong. Tóm tắt: [key findings]
|
|
97
|
+
```
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 🚢 Chuyển đổi mã nguồn từ ngôn ngữ bất kỳ sang ngôn ngữ bất kỳ với cấu trúc hiện đại.
|
|
3
|
+
skill: ship-to-code
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /ship-to-code — Universal Code Porting Workflow
|
|
7
|
+
|
|
8
|
+
> **Skill:** `ship-to-code` v1.0 | **Tech:** Agnostic (Any-to-Any)
|
|
9
|
+
> **Philosophy:** "Map Dependencies → Bootstrap Architecture → Translate Idiomatically → Parity Check"
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## ⚡ QUICK START
|
|
14
|
+
|
|
15
|
+
User cung cấp: Source code hoặc thư mục chứa codebase cũ, và cho biết NGÔN NGỮ NGUỒN + NGÔN NGỮ ĐÍCH.
|
|
16
|
+
Ví dụ:
|
|
17
|
+
- "Dịch folder này từ Java sang Go"
|
|
18
|
+
- "/ship-to-code từ Python Django sang Node.js NestJS"
|
|
19
|
+
- "Dùng codebase Ruby làm tham chiếu để viết lại bằng Rust"
|
|
20
|
+
|
|
21
|
+
Workflow dẫn dắt qua pipeline **6 Phases** để đảm bảo quá trình chuyển đổi an toàn, kiến trúc chuẩn xác, và không bị thất thoát business logic.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 🔵 Session Setup
|
|
26
|
+
|
|
27
|
+
### Bước 0.1: Khởi tạo session state
|
|
28
|
+
|
|
29
|
+
```yaml
|
|
30
|
+
porting_session:
|
|
31
|
+
source_lang: "[Nguồn]"
|
|
32
|
+
target_lang: "[Đích]"
|
|
33
|
+
source_dir: "[path_to_source]"
|
|
34
|
+
current_phase: 0
|
|
35
|
+
dependency_matrix: pending
|
|
36
|
+
completed_modules: []
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Bước 0.2: Xác nhận input
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
🚢 Universal Code Porting v1.0
|
|
43
|
+
|
|
44
|
+
Xin chào! Để đảm bảo tính chính xác cho quá trình migrate (vừa không rớt logic, vừa chuẩn idiomatic code), cho phép em hỏi để map cấu trúc:
|
|
45
|
+
1. Thư mục chứa code nguồn cũ nằm ở đâu trên máy anh?
|
|
46
|
+
2. Ngôn ngữ / Framework gốc là gì?
|
|
47
|
+
3. Trọng tâm của framework / kiến trúc đích anh đang hướng đến là gì? (Ví dụ: Go standard layout vs NestJS Clean Architecture)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## 📋 Pipeline Overview (6 Phases)
|
|
53
|
+
|
|
54
|
+
| Phase | Name | Focus | Output |
|
|
55
|
+
|-------|------|-------|--------|
|
|
56
|
+
| 0 | 🔍 Ecosystem Mapping | Quét configuration dependencies của code cũ, đề xuất specs/thư viện thay thế. | Dependency Matrix |
|
|
57
|
+
| 1 | 🏗️ Architecture Design | Phân tích app entry points, lifecycle. Thiết kế cấu trúc thư mục mới phù hợp môi trường đích. | Project Scaffold |
|
|
58
|
+
| 2 | 💾 Data & Domain | Port Database schemas/Migrations, Models/DTOs, API Clients, Core Repositories. | Stable Data Layer |
|
|
59
|
+
| 3 | 🧮 Logic & Utils | Dịch thuật toán, mã hóa crypto, helper functions. **PHẢI có Unit Tests**. | Logic + Test Parity |
|
|
60
|
+
| 4 | 🎨 Presentation/Controllers | Dịch Controllers/Routes (Backend) hoặc UI Components (Frontend/Mobile). | Final UX / Routes |
|
|
61
|
+
| 5 | ✅ Final Parity | Kiểm tra Branch coverage của edge-cases. Rà soát Data/Params Parity. | Ready to Deploy |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 🔬 EXECUTION RULES
|
|
66
|
+
|
|
67
|
+
```yaml
|
|
68
|
+
never_skip:
|
|
69
|
+
- Phase 0 (Mapping) — Bắt buộc phải ánh xạ thư viện Nguồn → Đích rõ ràng trước khi code.
|
|
70
|
+
- Viết Unit Tests ở Phase 3 cho các utility xử lý chuỗi/mã hóa/thời gian.
|
|
71
|
+
|
|
72
|
+
never_do:
|
|
73
|
+
- Dịch "word-by-word" (Line-by-line syntax translation).
|
|
74
|
+
Ví dụ: Không bê nguyên class tĩnh Java sang Go, không xài `try-catch` ép buộc trong Rust, v.v.
|
|
75
|
+
- Tự ý bỏ qua các nhánh (if-else, try-catch) bắt lỗi ngầm trong codebase gốc.
|
|
76
|
+
|
|
77
|
+
always_do:
|
|
78
|
+
- Report / Xin phép chỉ đạo sau mỗi Phase trước khi qua Phase mới.
|
|
79
|
+
- Viết code **Idiomatic** — áp dụng convention, design patterns và best practices riêng biệt và tự nhiên nhất của NGÔN NGỮ ĐÍCH.
|
|
80
|
+
- Đảm bảo I/O Parity (mọi Response Data, Crypto Hash) trả về phải GIỐNG Y HỆT API/Logic nguồn.
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
*ship-to-code workflow v1.0.0 — Any-to-Any Porting Pipeline*
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 🔄 Đồng bộ thủ công Project Status lên Trello Card (tuân thủ quy tắc Anti-Spam)
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# 🔄 Trello Sync Workflow (`/trello-sync`)
|
|
6
|
+
|
|
7
|
+
Quy trình này hướng dẫn AI đồng bộ thủ công mức độ hoàn thành của dự án hiện tại lên Trello Card, dựa trên dữ liệu từ thiết kế, Kiro Specs, hoặc Symphony tasks.
|
|
8
|
+
|
|
9
|
+
## 🎯 Mục đích
|
|
10
|
+
Được sử dụng khi người dùng muốn ép (force) AI cập nhật tiến độ tổng thể lên Trello, hoặc khi AI cần tổng kết (summarize) status sau một Sprint/Milestone quan trọng.
|
|
11
|
+
|
|
12
|
+
## 📋 Hướng dẫn thực thi
|
|
13
|
+
|
|
14
|
+
### Bước 1: Thu thập ngữ cảnh hiện tại
|
|
15
|
+
1. Kiểm tra trạng thái dự án hiện tại (đọc `Symphony` tasks, `.kiro/specs/tasks.md` hoặc các file spec nội bộ).
|
|
16
|
+
2. Tóm tắt lại các **module hoặc tính năng lớn** (High-level features) đã hoàn thành, đang làm, và chưa làm.
|
|
17
|
+
|
|
18
|
+
### Bước 2: Load Trello Configuration
|
|
19
|
+
1. Đảm bảo shell đã có sẵn `TRELLO_KEY` và `TRELLO_TOKEN` (từ biến môi trường máy). CLI đã tự động thừa hưởng.
|
|
20
|
+
2. Đọc file `.trello-config.json` tại thư mục gốc của dự án để lấy thông tin `<board>`, `<list>`, và `<card>`.
|
|
21
|
+
3. Nếu file cấu hình không tồn tại, báo lỗi và yêu cầu user tạo cấu hình hoặc chạy `/init`.
|
|
22
|
+
|
|
23
|
+
### Bước 3: Cập nhật Trello (Cân bằng giữa Chi tiết và Tối giản)
|
|
24
|
+
> **⛔ CẢNH BÁO QUAN TRỌNG:**
|
|
25
|
+
> Đừng "spam" tạo checklist item cho các task code le te. Nhưng cũng ĐỪNG quá trống rỗng. Hãy cập nhật Card Description và Comment đầy đủ ý nghĩa cho Quản lý dự án.
|
|
26
|
+
|
|
27
|
+
1. Hãy sử dụng thư viện native CLI `awkit trello`. Không dùng lệnh `trello-cli` thuần hay script Python/Bash.
|
|
28
|
+
2. **Cập nhật Mô tả (Description)** tổng quan của dự án (cực kỳ quan trọng để Quản lý nắm bắt):
|
|
29
|
+
```bash
|
|
30
|
+
awkit trello desc "**Tech Stack:** Kotlin, Compose... **Hiện trạng:** Đang làm module Foundation..."
|
|
31
|
+
```
|
|
32
|
+
3. CHỈ đồng bộ tên Milestone / Module / Feature lớn vào Checklist Item.
|
|
33
|
+
4. **Thêm Checklist mới** (nếu module đó chưa có checklist riêng):
|
|
34
|
+
```bash
|
|
35
|
+
awkit trello checklist "<Milestone / Module Name>"
|
|
36
|
+
```
|
|
37
|
+
5. **Thêm item mới vào Checklist** (Task mới):
|
|
38
|
+
```bash
|
|
39
|
+
awkit trello item "<Feature Name>"
|
|
40
|
+
```
|
|
41
|
+
6. **Mark done một item** (Module lớn đã xong):
|
|
42
|
+
```bash
|
|
43
|
+
awkit trello complete "<Feature Name>"
|
|
44
|
+
```
|
|
45
|
+
7. **Thêm Comment** tổng kết milestone:
|
|
46
|
+
```bash
|
|
47
|
+
awkit trello comment "🎯 Milestone Update: Chúng ta đã hoàn thành feature..."
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Bước 4: Hoàn tất
|
|
51
|
+
1. Tóm tắt lại với user về các module/tính năng đã được sync thành công lên Trello card.
|
|
52
|
+
2. Gợi ý Next step: Gọi `/next` hoặc `/code` để tiếp tục làm việc.
|
|
@@ -23,102 +23,25 @@ MANUAL trigger:
|
|
|
23
23
|
|
|
24
24
|
---
|
|
25
25
|
|
|
26
|
-
## Phase
|
|
26
|
+
## Execution Phase: Delegate to Gemini CLI
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
# 1. Đọc CODEBASE.md hiện tại
|
|
30
|
-
cat CODEBASE.md
|
|
31
|
-
|
|
32
|
-
# 2. Check git: files changed/added gần đây (14 ngày)
|
|
33
|
-
git log --since="14 days ago" --name-only --pretty=format: | sort -u | grep -v '^$'
|
|
34
|
-
|
|
35
|
-
# 3. Lấy session file edits từ memory-sync W6
|
|
36
|
-
cat brain/session.json | grep files_touched_this_session
|
|
37
|
-
|
|
38
|
-
# 4. Check new files không có trong CODEBASE.md
|
|
39
|
-
# AI tự compare danh sách git + session với entries trong CODEBASE.md
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
**Output:**
|
|
43
|
-
```
|
|
44
|
-
📊 CODEBASE Sync Assessment:
|
|
45
|
-
- Files in CODEBASE.md: [N files documented]
|
|
46
|
-
- New/changed files (14d): [M files]
|
|
47
|
-
- Missing from CODEBASE.md: [K files listed]
|
|
48
|
-
- Last updated: [date from CODEBASE.md]
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
---
|
|
52
|
-
|
|
53
|
-
## Phase 2: Generate Delta
|
|
54
|
-
|
|
55
|
-
Với mỗi file thiếu trong CODEBASE.md, AI tự suy luận:
|
|
56
|
-
|
|
57
|
-
```yaml
|
|
58
|
-
for each missing_file:
|
|
59
|
-
1. Xác định layer:
|
|
60
|
-
- App/ → App Layer
|
|
61
|
-
- Core/Domain/ → Domain Layer
|
|
62
|
-
- Core/Data/ → Data Layer
|
|
63
|
-
- Core/Services/ → Services Layer
|
|
64
|
-
- Features/[X]/ → Features Layer
|
|
65
|
-
- Presentation/Views/ → Views
|
|
66
|
-
- Presentation/ViewModels/ → ViewModels
|
|
67
|
-
|
|
68
|
-
2. Xác định responsibility từ:
|
|
69
|
-
- Filename (AuthenticationViewModel → Auth UI logic)
|
|
70
|
-
- Directory (Core/Domain/UseCases → Business logic)
|
|
71
|
-
- Content (nếu cần, đọc file — chỉ khi không đủ context)
|
|
72
|
-
|
|
73
|
-
3. Generate entry:
|
|
74
|
-
- File: path/to/File.swift
|
|
75
|
-
- Layer: [layer name]
|
|
76
|
-
- Purpose: [1-line description]
|
|
77
|
-
- Key exports: [main class/struct/func]
|
|
78
|
-
|
|
79
|
-
4. Xác định section trong CODEBASE.md phù hợp để append
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## Phase 3: Update CODEBASE.md
|
|
28
|
+
Thực thi workflow bằng cách gọi Gemini CLI để tận dụng LLM phân tích chuyên sâu mà không làm ảnh hưởng context của Antigravity. Gemini CLI sẽ tự check file, tính toán delta và cập nhật `CODEBASE.md`.
|
|
85
29
|
|
|
86
30
|
> [!IMPORTANT]
|
|
87
|
-
> CODEBASE.md dùng **compact format**
|
|
31
|
+
> CODEBASE.md dùng **compact format** dạng bảng.
|
|
88
32
|
> KHÔNG dùng format verbose (multi-line per file).
|
|
89
33
|
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
- APPEND vào đúng section, không xóa gì cũ
|
|
93
|
-
- Update "Last Updated" timestamp
|
|
94
|
-
- Nếu thêm feature mới → thêm section mới
|
|
95
|
-
|
|
96
|
-
Compact Format (BẮT BUỘC):
|
|
97
|
-
Mỗi file = 1 dòng trong table:
|
|
98
|
-
| `path/to/File.swift` | Purpose mô tả ngắn (1 câu) |
|
|
99
|
-
|
|
100
|
-
Ví dụ:
|
|
101
|
-
| `Core/Services/PushNotificationService.swift` | FCM push notification registration & handling |
|
|
102
|
-
| `Features/WeeklyGoal/ViewModels/WeeklyGoalVM.swift` | Weekly goal progress tracking logic |
|
|
103
|
-
|
|
104
|
-
❌ KHÔNG dùng format cũ:
|
|
105
|
-
#### FileName.swift
|
|
106
|
-
**Layer:** ...
|
|
107
|
-
**Purpose:** ...
|
|
108
|
-
**Key class:** ...
|
|
109
|
-
|
|
110
|
-
Footer update:
|
|
111
|
-
**Last Updated**: [current date]
|
|
112
|
-
**Sync:** Auto-updated via /codebase-sync
|
|
34
|
+
```bash
|
|
35
|
+
gemini -p "Đọc CODEBASE.md, git log (14 ngày gần nhất), và brain/session.json. So sánh để tìm các file mới/bị sửa nhưng chưa có trong CODEBASE.md. Suy luận Layer và Purpose cho mỗi file. Sinh ra Delta dưới dạng bảng (compact format) và APPEND vào CODEBASE.md. Cập nhật ngày Last Updated." --approval-mode auto
|
|
113
36
|
```
|
|
114
37
|
|
|
115
|
-
**
|
|
38
|
+
**Output mong đợi từ Gemini CLI:**
|
|
116
39
|
```
|
|
117
|
-
|
|
118
|
-
+ Core/Services/PushNotificationService.swift → FCM push notification
|
|
119
|
-
+ Features/WeeklyGoal/ViewModels/WeeklyGoalVM.swift → Weekly goal logic
|
|
40
|
+
✅ CODEBASE.md Synced!
|
|
120
41
|
|
|
121
|
-
|
|
42
|
+
📊 Added: [K] new entries
|
|
43
|
+
📁 Sections updated: [list]
|
|
44
|
+
🕐 Last Updated: [current date]
|
|
122
45
|
```
|
|
123
46
|
|
|
124
47
|
---
|