galaxy-code 0.1.5 β 0.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 +149 -600
- package/dist/cli.bundle.js +588 -0
- package/package.json +14 -12
- package/dist/app.d.ts +0 -7
- package/dist/app.js +0 -597
- package/dist/auto-updater.d.ts +0 -21
- package/dist/auto-updater.js +0 -144
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -159
- package/dist/connections/claude.d.ts +0 -71
- package/dist/connections/claude.js +0 -303
- package/dist/connections/gemini.d.ts +0 -40
- package/dist/connections/gemini.js +0 -232
- package/dist/connections/index.d.ts +0 -11
- package/dist/connections/index.js +0 -11
- package/dist/connections/ollama.d.ts +0 -37
- package/dist/connections/ollama.js +0 -73
- package/dist/connections/types.d.ts +0 -22
- package/dist/connections/types.js +0 -7
- package/dist/env.d.ts +0 -1
- package/dist/env.js +0 -29
- package/dist/node_modules/@workspace/agent-core/connections/claude.d.ts +0 -72
- package/dist/node_modules/@workspace/agent-core/connections/claude.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/claude.js +0 -270
- package/dist/node_modules/@workspace/agent-core/connections/claude.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/gemini.d.ts +0 -41
- package/dist/node_modules/@workspace/agent-core/connections/gemini.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/gemini.js +0 -203
- package/dist/node_modules/@workspace/agent-core/connections/gemini.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/index.d.ts +0 -12
- package/dist/node_modules/@workspace/agent-core/connections/index.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/index.js +0 -12
- package/dist/node_modules/@workspace/agent-core/connections/index.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/ollama.d.ts +0 -38
- package/dist/node_modules/@workspace/agent-core/connections/ollama.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/ollama.js +0 -64
- package/dist/node_modules/@workspace/agent-core/connections/ollama.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/types.d.ts +0 -23
- package/dist/node_modules/@workspace/agent-core/connections/types.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/connections/types.js +0 -8
- package/dist/node_modules/@workspace/agent-core/connections/types.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/index.d.ts +0 -13
- package/dist/node_modules/@workspace/agent-core/index.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/index.js +0 -22
- package/dist/node_modules/@workspace/agent-core/index.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/package.json +0 -53
- package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.d.ts +0 -2
- package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.js +0 -144
- package/dist/node_modules/@workspace/agent-core/prompts/ba-it-analyzer.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/index.d.ts +0 -12
- package/dist/node_modules/@workspace/agent-core/prompts/index.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/index.js +0 -12
- package/dist/node_modules/@workspace/agent-core/prompts/index.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.d.ts +0 -9
- package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.js +0 -89
- package/dist/node_modules/@workspace/agent-core/prompts/orchestrator.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.d.ts +0 -9
- package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.js +0 -196
- package/dist/node_modules/@workspace/agent-core/prompts/planning-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.d.ts +0 -8
- package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.js +0 -112
- package/dist/node_modules/@workspace/agent-core/prompts/universal-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/agent-selector.d.ts +0 -30
- package/dist/node_modules/@workspace/agent-core/providers/agent-selector.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/agent-selector.js +0 -76
- package/dist/node_modules/@workspace/agent-core/providers/agent-selector.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/claude-agent.d.ts +0 -30
- package/dist/node_modules/@workspace/agent-core/providers/claude-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/claude-agent.js +0 -107
- package/dist/node_modules/@workspace/agent-core/providers/claude-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.d.ts +0 -37
- package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.js +0 -144
- package/dist/node_modules/@workspace/agent-core/providers/gemini-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/index.d.ts +0 -13
- package/dist/node_modules/@workspace/agent-core/providers/index.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/index.js +0 -13
- package/dist/node_modules/@workspace/agent-core/providers/index.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.d.ts +0 -54
- package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.js +0 -247
- package/dist/node_modules/@workspace/agent-core/providers/ollama-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/orchestrator.d.ts +0 -17
- package/dist/node_modules/@workspace/agent-core/providers/orchestrator.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/providers/orchestrator.js +0 -62
- package/dist/node_modules/@workspace/agent-core/providers/orchestrator.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.d.ts +0 -67
- package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.js +0 -81
- package/dist/node_modules/@workspace/agent-core/tools/ba-it-analyzer.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.d.ts +0 -52
- package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.js +0 -150
- package/dist/node_modules/@workspace/agent-core/tools/code-generate-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/command-runner.d.ts +0 -15
- package/dist/node_modules/@workspace/agent-core/tools/command-runner.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/command-runner.js +0 -121
- package/dist/node_modules/@workspace/agent-core/tools/command-runner.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/document-parser.d.ts +0 -12
- package/dist/node_modules/@workspace/agent-core/tools/document-parser.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/document-parser.js +0 -84
- package/dist/node_modules/@workspace/agent-core/tools/document-parser.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/file-operations.d.ts +0 -18
- package/dist/node_modules/@workspace/agent-core/tools/file-operations.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/file-operations.js +0 -126
- package/dist/node_modules/@workspace/agent-core/tools/file-operations.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.d.ts +0 -95
- package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.js +0 -245
- package/dist/node_modules/@workspace/agent-core/tools/galaxy-ui-integration.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/git-operations.d.ts +0 -12
- package/dist/node_modules/@workspace/agent-core/tools/git-operations.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/git-operations.js +0 -115
- package/dist/node_modules/@workspace/agent-core/tools/git-operations.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/index.d.ts +0 -11
- package/dist/node_modules/@workspace/agent-core/tools/index.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/index.js +0 -11
- package/dist/node_modules/@workspace/agent-core/tools/index.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/planning-agent.d.ts +0 -30
- package/dist/node_modules/@workspace/agent-core/tools/planning-agent.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/planning-agent.js +0 -125
- package/dist/node_modules/@workspace/agent-core/tools/planning-agent.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.d.ts +0 -20
- package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.js +0 -46
- package/dist/node_modules/@workspace/agent-core/tools/progress-reporter.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/registry.d.ts +0 -22
- package/dist/node_modules/@workspace/agent-core/tools/registry.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/registry.js +0 -651
- package/dist/node_modules/@workspace/agent-core/tools/registry.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.d.ts +0 -25
- package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.js +0 -26
- package/dist/node_modules/@workspace/agent-core/tools/tool-event-emitter.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/types.d.ts +0 -32
- package/dist/node_modules/@workspace/agent-core/tools/types.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/tools/types.js +0 -2
- package/dist/node_modules/@workspace/agent-core/tools/types.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/types.d.ts +0 -40
- package/dist/node_modules/@workspace/agent-core/types.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/types.js +0 -9
- package/dist/node_modules/@workspace/agent-core/types.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/config-manager.d.ts +0 -103
- package/dist/node_modules/@workspace/agent-core/utils/config-manager.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/config-manager.js +0 -307
- package/dist/node_modules/@workspace/agent-core/utils/config-manager.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/devtools.d.ts +0 -22
- package/dist/node_modules/@workspace/agent-core/utils/devtools.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/devtools.js +0 -62
- package/dist/node_modules/@workspace/agent-core/utils/devtools.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/message-formatters.d.ts +0 -33
- package/dist/node_modules/@workspace/agent-core/utils/message-formatters.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/message-formatters.js +0 -591
- package/dist/node_modules/@workspace/agent-core/utils/message-formatters.js.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.d.ts +0 -60
- package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.d.ts.map +0 -1
- package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.js +0 -204
- package/dist/node_modules/@workspace/agent-core/utils/progress-tracker.js.map +0 -1
- package/dist/prompts/ba-it-analyzer.d.ts +0 -1
- package/dist/prompts/ba-it-analyzer.js +0 -143
- package/dist/prompts/index.d.ts +0 -11
- package/dist/prompts/index.js +0 -11
- package/dist/prompts/orchestrator.d.ts +0 -8
- package/dist/prompts/orchestrator.js +0 -88
- package/dist/prompts/planning-agent.d.ts +0 -8
- package/dist/prompts/planning-agent.js +0 -195
- package/dist/prompts/universal-agent.d.ts +0 -7
- package/dist/prompts/universal-agent.js +0 -111
- package/dist/providers/agent-selector.d.ts +0 -29
- package/dist/providers/agent-selector.js +0 -84
- package/dist/providers/claude-agent.d.ts +0 -29
- package/dist/providers/claude-agent.js +0 -121
- package/dist/providers/gemini-agent.d.ts +0 -36
- package/dist/providers/gemini-agent.js +0 -168
- package/dist/providers/index.d.ts +0 -12
- package/dist/providers/index.js +0 -12
- package/dist/providers/ollama-agent.d.ts +0 -53
- package/dist/providers/ollama-agent.js +0 -276
- package/dist/providers/orchestrator.d.ts +0 -16
- package/dist/providers/orchestrator.js +0 -76
- package/dist/tools/ba-it-analyzer.d.ts +0 -66
- package/dist/tools/ba-it-analyzer.js +0 -90
- package/dist/tools/code-generate-agent.d.ts +0 -51
- package/dist/tools/code-generate-agent.js +0 -159
- package/dist/tools/command-runner.d.ts +0 -14
- package/dist/tools/command-runner.js +0 -120
- package/dist/tools/document-parser.d.ts +0 -11
- package/dist/tools/document-parser.js +0 -83
- package/dist/tools/file-operations.d.ts +0 -17
- package/dist/tools/file-operations.js +0 -127
- package/dist/tools/galaxy-ui-integration.d.ts +0 -94
- package/dist/tools/galaxy-ui-integration.js +0 -244
- package/dist/tools/git-operations.d.ts +0 -11
- package/dist/tools/git-operations.js +0 -114
- package/dist/tools/index.d.ts +0 -10
- package/dist/tools/index.js +0 -10
- package/dist/tools/planning-agent.d.ts +0 -29
- package/dist/tools/planning-agent.js +0 -134
- package/dist/tools/progress-reporter.d.ts +0 -19
- package/dist/tools/progress-reporter.js +0 -52
- package/dist/tools/registry.d.ts +0 -21
- package/dist/tools/registry.js +0 -695
- package/dist/tools/tool-event-emitter.d.ts +0 -24
- package/dist/tools/tool-event-emitter.js +0 -25
- package/dist/tools/types.d.ts +0 -31
- package/dist/tools/types.js +0 -1
- package/dist/types.d.ts +0 -39
- package/dist/types.js +0 -8
- package/dist/update-checker.d.ts +0 -22
- package/dist/update-checker.js +0 -85
- package/dist/utils/config-manager.d.ts +0 -102
- package/dist/utils/config-manager.js +0 -326
- package/dist/utils/devtools.d.ts +0 -21
- package/dist/utils/devtools.js +0 -61
- package/dist/utils/message-formatters.d.ts +0 -32
- package/dist/utils/message-formatters.js +0 -590
- package/dist/utils/progress-tracker.d.ts +0 -59
- package/dist/utils/progress-tracker.js +0 -213
package/README.md
CHANGED
|
@@ -1,679 +1,228 @@
|
|
|
1
|
-
# π Galaxy
|
|
1
|
+
# π Galaxy Code
|
|
2
2
|
|
|
3
|
-
**AI
|
|
3
|
+
**AI-Powered Coding Assistant** - An intelligent CLI tool that helps you build, analyze, and enhance your software projects with AI.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
[](https://www.npmjs.com/package/galaxy-code)
|
|
6
|
+
[](https://github.com/buikevin/galaxy-code/blob/main/LICENSE)
|
|
7
|
+
[](https://galaxy-code-cli.vercel.app)
|
|
6
8
|
|
|
7
|
-
##
|
|
9
|
+
## π Quick Start
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
>
|
|
11
|
-
> Galaxy CLI hiα»n Δang trong giai ΔoαΊ‘n phΓ‘t triα»n vΓ thα» nghiα»m Alpha. PhiΓͺn bαΊ£n chΓnh thα»©c (stable release) sαΊ½ Δược cΓ΄ng bα» trong tΖ°Ζ‘ng lai khi dα»± Γ‘n ΔΓ£ hoΓ n thiα»n vΓ Δược kiα»m thα» kα»Ή lΖ°α»‘ng.
|
|
12
|
-
>
|
|
13
|
-
> **LΖ°u Γ½:**
|
|
14
|
-
> - β οΈ Dα»± Γ‘n chΖ°a Δược public trΓͺn GitHub hay cΓ‘c kho package registry
|
|
15
|
-
> - π API vΓ cαΊ₯u trΓΊc cΓ³ thα» thay Δα»i trong quΓ‘ trΓ¬nh phΓ‘t triα»n
|
|
16
|
-
> - β KhΓ΄ng khuyαΊΏn nghα» sα» dα»₯ng cho mΓ΄i trΖ°α»ng production hiα»n tαΊ‘i
|
|
17
|
-
>
|
|
18
|
-
> **Δα» cαΊp nhαΊt thΓ΄ng tin vα» phiΓͺn bαΊ£n chΓnh thα»©c:**
|
|
19
|
-
> - π§ Email: kevinbui210191@gmail.com / hieubt2@msb.com.vn
|
|
20
|
-
> - π± Theo dΓ΅i repository Δα» nhαΊn thΓ΄ng bΓ‘o khi project Δược public
|
|
11
|
+
Install Galaxy Code globally:
|
|
21
12
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
## π Mα»₯c lα»₯c
|
|
25
|
-
|
|
26
|
-
- [Giα»i thiα»u](#giα»i-thiα»u)
|
|
27
|
-
- [CΓ΄ng nghα» sα» dα»₯ng](#cΓ΄ng-nghα»-sα»-dα»₯ng)
|
|
28
|
-
- [KiαΊΏn trΓΊc hα» thα»ng](#kiαΊΏn-trΓΊc-hα»-thα»ng)
|
|
29
|
-
- [Luα»ng hoαΊ‘t Δα»ng](#luα»ng-hoαΊ‘t-Δα»ng)
|
|
30
|
-
- [CΓ i ΔαΊ·t](#cΓ i-ΔαΊ·t)
|
|
31
|
-
- [Sα» dα»₯ng](#sα»-dα»₯ng)
|
|
32
|
-
- [AI Models & Vai trΓ²](#ai-models--vai-trΓ²)
|
|
33
|
-
- [Danh sΓ‘ch Tools](#danh-sΓ‘ch-tools)
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## π― Giα»i thiα»u
|
|
38
|
-
|
|
39
|
-
**Galaxy CLI** lΓ cΓ΄ng cα»₯ AI pair programming mαΊ‘nh mαΊ½ Δược xΓ’y dα»±ng vα»i:
|
|
40
|
-
|
|
41
|
-
- **Giao diα»n CLI hiα»n ΔαΊ‘i** sα» dα»₯ng Ink (React for CLI)
|
|
42
|
-
- **Multi-AI orchestration** vα»i Gemini 2.5 Flash lΓ m trung tΓ’m Δiα»u phα»i
|
|
43
|
-
- **27+ cΓ΄ng cα»₯ chuyΓͺn biα»t** cho file operations, git, testing, document parsing
|
|
44
|
-
- **Intelligent planning** vα»i qwen3-coder:480b-cloud
|
|
45
|
-
- **Business Analysis** vα»i gpt-oss:120b-cloud
|
|
46
|
-
|
|
47
|
-
## π CΓ΄ng nghα» sα» dα»₯ng
|
|
48
|
-
|
|
49
|
-
### Frontend CLI
|
|
50
|
-
|
|
51
|
-
- **Ink** - React cho terminal, render component nhΖ° web app
|
|
52
|
-
- **ink-spinner** - Loading animations (dots, arc, etc.)
|
|
53
|
-
- **figlet** - ASCII art banner
|
|
54
|
-
- **TypeScript** - Type safety
|
|
55
|
-
|
|
56
|
-
### AI & LLM Stack
|
|
57
|
-
|
|
58
|
-
- **Google Gemini 2.5 Flash** - Orchestrator chΓnh, tool calling
|
|
59
|
-
- **Ollama Models**:
|
|
60
|
-
- `gpt-oss:120b-cloud` - Business Analysis & Requirements
|
|
61
|
-
- `qwen3-coder:480b-cloud` - Code generation & Planning
|
|
62
|
-
|
|
63
|
-
### Tools & Utilities
|
|
64
|
-
|
|
65
|
-
- **Bun** - Fast runtime vΓ package manager
|
|
66
|
-
- **PDF/DOCX/XLSX parsers** - Document analysis
|
|
67
|
-
- **Node.js child_process** - Command execution
|
|
68
|
-
- **Git CLI integration** - Version control
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## π KiαΊΏn trΓΊc hα» thα»ng
|
|
73
|
-
|
|
74
|
-
```
|
|
75
|
-
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
76
|
-
β Galaxy CLI (Ink React App) β
|
|
77
|
-
β - User Input vα»i autocomplete β
|
|
78
|
-
β - Spinner loading states β
|
|
79
|
-
β - Figlet banner β
|
|
80
|
-
βββββββββββββββββββ¬ββββββββββββββββββββββββββββ
|
|
81
|
-
β
|
|
82
|
-
βΌ
|
|
83
|
-
βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
84
|
-
β Gemini 2.5 Flash (Orchestrator) β
|
|
85
|
-
β - Tool calling & function execution β
|
|
86
|
-
β - Plan execution & todos display β
|
|
87
|
-
β - Multi-language support (EN/VI) β
|
|
88
|
-
βββββββββββββββββββ¬ββββββββββββββββββββββββββββ
|
|
89
|
-
β
|
|
90
|
-
βββββββββββ΄ββββββββββββββ
|
|
91
|
-
β β
|
|
92
|
-
βΌ βΌ
|
|
93
|
-
βββββββββββββββββ ββββββββββββββββββββ
|
|
94
|
-
β BA Analyzer β β Planning Agent β
|
|
95
|
-
β gpt-oss:120b β β qwen3-coder:480b β
|
|
96
|
-
β β β Feature-driven β
|
|
97
|
-
βββββββββββββββββ ββββββββββββββββββββ
|
|
98
|
-
β β
|
|
99
|
-
β βΌ
|
|
100
|
-
β ββββββββββββββββββββββββ
|
|
101
|
-
β β Execution Plan β
|
|
102
|
-
β β - Feature steps β
|
|
103
|
-
β β - Tool selection β
|
|
104
|
-
β ββββββββββββββββββββββββ
|
|
105
|
-
β β
|
|
106
|
-
βββββββββββββ¬ββββββββββββ
|
|
107
|
-
βΌ
|
|
108
|
-
βββββββββββββββββββββββββββββ
|
|
109
|
-
β Code Generate Agent β
|
|
110
|
-
β qwen3-coder:480b-cloud β
|
|
111
|
-
β β
|
|
112
|
-
β βββββββββββββββββββββββ β
|
|
113
|
-
β β Integrated Tools: β β
|
|
114
|
-
β β - file_write β β
|
|
115
|
-
β β - file_read β β
|
|
116
|
-
β β - command_run β β
|
|
117
|
-
β β - file_search β β
|
|
118
|
-
β βββββββββββββββββββββββ β
|
|
119
|
-
β β
|
|
120
|
-
β Output: {step, status, β
|
|
121
|
-
β message, filesCreated} β
|
|
122
|
-
βββββββββββββββββββββββββββββ
|
|
123
|
-
β
|
|
124
|
-
βΌ
|
|
125
|
-
βββββββββββββββββββββββββββββ
|
|
126
|
-
β Tool Registry (28 tools) β
|
|
127
|
-
β β
|
|
128
|
-
β π File π§ Command β
|
|
129
|
-
β π Git π Document β
|
|
130
|
-
β π§ͺ Test π Search β
|
|
131
|
-
βββββββββββββββββββββββββββββ
|
|
13
|
+
```bash
|
|
14
|
+
npm install -g galaxy-code
|
|
132
15
|
```
|
|
133
16
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
**TrΖ°α»c ΔΓ’y** (Multi-agent):
|
|
137
|
-
|
|
138
|
-
- 11 agents riΓͺng biα»t
|
|
139
|
-
- Phα»©c tαΊ‘p, khΓ³ maintain
|
|
140
|
-
- Nhiα»u context switching
|
|
141
|
-
|
|
142
|
-
**Hiα»n tαΊ‘i** (Feature-Driven):
|
|
17
|
+
Or run directly with npx:
|
|
143
18
|
|
|
144
|
-
|
|
145
|
-
-
|
|
146
|
-
- BA Analyzer (gpt-oss) - Requirements analysis
|
|
147
|
-
- Planning Agent (qwen3-coder) - Feature-based planning
|
|
148
|
-
- Code Generate Agent (qwen3-coder) - Self-contained executor
|
|
149
|
-
- 28 focused tools
|
|
150
|
-
- Feature-driven execution (1 feature = 1 step)
|
|
151
|
-
|
|
152
|
-
---
|
|
153
|
-
|
|
154
|
-
## π Luα»ng hoαΊ‘t Δα»ng
|
|
155
|
-
|
|
156
|
-
### 1οΈβ£ **Analyze Existing Project**
|
|
157
|
-
|
|
158
|
-
```
|
|
159
|
-
User: "PhΓ’n tΓch dα»± Γ‘n nΓ y"
|
|
160
|
-
β
|
|
161
|
-
ββ> file_tree(cwd) β LαΊ₯y cαΊ₯u trΓΊc thΖ° mα»₯c
|
|
162
|
-
ββ> file_read(package.json, README) β Δα»c tech stack
|
|
163
|
-
ββ> TrαΊ£ vα» phΓ’n tΓch toΓ n diα»n
|
|
19
|
+
```bash
|
|
20
|
+
npx galaxy-code
|
|
164
21
|
```
|
|
165
22
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
---
|
|
23
|
+
## π Documentation
|
|
169
24
|
|
|
170
|
-
|
|
25
|
+
Comprehensive documentation is available at: [https://galaxy-code-cli.vercel.app](https://galaxy-code-cli.vercel.app)
|
|
171
26
|
|
|
172
|
-
|
|
173
|
-
User: "TαΊ‘o app Next.js e-commerce"
|
|
174
|
-
β
|
|
175
|
-
ββ> π ba_it_analyze(userRequest, context)
|
|
176
|
-
β β
|
|
177
|
-
β βββββββββββββββββββββββββββββββββββββββ
|
|
178
|
-
β β BA Analysis Result (English) β
|
|
179
|
-
β β - projectName β
|
|
180
|
-
β β - type: "create_project" β
|
|
181
|
-
β β - coreFeatures: [...] β
|
|
182
|
-
β β - technicalStack: {...} β
|
|
183
|
-
β β - estimatedDevelopmentTime β
|
|
184
|
-
β β - recommendations: [...] β
|
|
185
|
-
β β - questionsForUser: [...] β
|
|
186
|
-
β βββββββββββββββββββββββββββββββββββββββ
|
|
187
|
-
β β
|
|
188
|
-
ββ> π PRESENT to User (Vietnamese/English)
|
|
189
|
-
β
|
|
190
|
-
β π **PhΓ’n tΓch dα»± Γ‘n**: Next.js E-commerce
|
|
191
|
-
β π‘ **MΓ΄ tαΊ£**: Ứng dα»₯ng thΖ°Ζ‘ng mαΊ‘i Δiα»n tα»...
|
|
192
|
-
β
|
|
193
|
-
β **β¨ TΓnh nΔng chΓnh**:
|
|
194
|
-
β - Catalog sαΊ£n phαΊ©m
|
|
195
|
-
β - Giα» hΓ ng
|
|
196
|
-
β - Thanh toΓ‘n (Stripe)
|
|
197
|
-
β ...
|
|
198
|
-
β
|
|
199
|
-
β BαΊ‘n Δα»ng Γ½ phΖ°Ζ‘ng Γ‘n nΓ y?
|
|
200
|
-
β
|
|
201
|
-
β β
|
|
202
|
-
ββ> βΈοΈ WAIT for user confirmation
|
|
203
|
-
β β
|
|
204
|
-
ββ> β
User: "Δα»ng Γ½, lΓ m Δi"
|
|
205
|
-
β β
|
|
206
|
-
ββ> π plan_task(userContext, baAnalysis)
|
|
207
|
-
β β
|
|
208
|
-
β βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
209
|
-
β β Feature-Driven Plan β
|
|
210
|
-
β β { β
|
|
211
|
-
β β summary: "Build e-commerce with 3 features",β
|
|
212
|
-
β β steps: [ β
|
|
213
|
-
β β {step: 1, tool: "command_run", β
|
|
214
|
-
β β action: "Init Next.js"}, β
|
|
215
|
-
β β {step: 2, tool: "install_dependencies"},β
|
|
216
|
-
β β {step: 3, tool: "code_generate", β
|
|
217
|
-
β β featureName: "Product Catalog", β
|
|
218
|
-
β β featureDescription: "...", β
|
|
219
|
-
β β priority: "must-have"}, β
|
|
220
|
-
β β {step: 4, tool: "code_generate", β
|
|
221
|
-
β β featureName: "Shopping Cart"}, β
|
|
222
|
-
β β {step: 5, tool: "code_generate", β
|
|
223
|
-
β β featureName: "Checkout"} β
|
|
224
|
-
β β ], β
|
|
225
|
-
β β estimatedTime: "long" β
|
|
226
|
-
β β } β
|
|
227
|
-
β βββββββββββββββββββββββββββββββββββββββββββββββ
|
|
228
|
-
β β
|
|
229
|
-
ββ> π **Present Plan with Todos**:
|
|
230
|
-
β
|
|
231
|
-
β π Implementation Plan (long):
|
|
232
|
-
β β Step 1: Initialize Next.js project
|
|
233
|
-
β β Step 2: Install dependencies
|
|
234
|
-
β β Step 3: Implement Product Catalog
|
|
235
|
-
β β Step 4: Implement Shopping Cart
|
|
236
|
-
β β Step 5: Implement Checkout
|
|
237
|
-
β
|
|
238
|
-
β β
|
|
239
|
-
ββ> π **Execute Steps Sequentially**:
|
|
240
|
-
|
|
241
|
-
Step 1: command_run("npm create next-app...")
|
|
242
|
-
β Step 1: Initialize Next.js - Completed
|
|
243
|
-
|
|
244
|
-
Step 2: install_dependencies()
|
|
245
|
-
β Step 2: Install dependencies - Installed
|
|
246
|
-
|
|
247
|
-
Step 3: code_generate({
|
|
248
|
-
step: 3,
|
|
249
|
-
featureName: "Product Catalog",
|
|
250
|
-
technicalStack: {...},
|
|
251
|
-
userStories: [...],
|
|
252
|
-
dataModel: [...]
|
|
253
|
-
})
|
|
254
|
-
β Code Generate Agent:
|
|
255
|
-
- Generates complete code
|
|
256
|
-
- Writes files: components/, api/, types/
|
|
257
|
-
- Returns: {step: 3, status: 'done', filesCreated: [...]}
|
|
258
|
-
β Step 3: Product Catalog - Created 5 files
|
|
259
|
-
|
|
260
|
-
Step 4: code_generate(Shopping Cart)
|
|
261
|
-
β Step 4: Shopping Cart - Created 3 files
|
|
262
|
-
|
|
263
|
-
Step 5: code_generate(Checkout)
|
|
264
|
-
β Step 5: Checkout - Created 4 files
|
|
265
|
-
|
|
266
|
-
β
All steps completed! Created 12 files total.
|
|
267
|
-
```
|
|
27
|
+
## π― What is Galaxy Code?
|
|
268
28
|
|
|
269
|
-
|
|
29
|
+
Galaxy Code is an AI-powered coding assistant that helps developers:
|
|
270
30
|
|
|
271
|
-
|
|
31
|
+
- **Create new projects** from scratch with AI planning
|
|
32
|
+
- **Analyze existing projects** to understand codebase structure
|
|
33
|
+
- **Add features** to existing applications intelligently
|
|
34
|
+
- **Generate production-ready code** with best practices
|
|
35
|
+
- **Manage development workflow** with integrated tools
|
|
272
36
|
|
|
273
|
-
|
|
274
|
-
User: "ThΓͺm authentication vΓ o app"
|
|
275
|
-
β
|
|
276
|
-
ββ> π ba_it_analyze(userRequest, context)
|
|
277
|
-
β β type: "update_project"
|
|
278
|
-
β β
|
|
279
|
-
ββ> π Present analysis
|
|
280
|
-
β β
|
|
281
|
-
ββ> π plan_task(userContext, baAnalysis)
|
|
282
|
-
β β β Skip project setup
|
|
283
|
-
β β β Focus on feature implementation
|
|
284
|
-
β β
|
|
285
|
-
ββ> π Execute steps
|
|
286
|
-
```
|
|
37
|
+
Powered by advanced AI models and a comprehensive toolset, Galaxy Code acts as your AI pair programmer.
|
|
287
38
|
|
|
288
|
-
|
|
39
|
+
## π AI Model Support
|
|
289
40
|
|
|
290
|
-
|
|
41
|
+
Galaxy Code supports multiple AI providers:
|
|
291
42
|
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
```
|
|
43
|
+
### Claude (Anthropic)
|
|
44
|
+
- **Models**: Claude 3.5 Sonnet, Claude 3.5 Haiku, Claude Opus
|
|
45
|
+
- **Features**: Full tool use support, streaming responses
|
|
46
|
+
- **API Key**: `ANTHROPIC_API_KEY` environment variable
|
|
297
47
|
|
|
298
|
-
|
|
48
|
+
### Gemini (Google)
|
|
49
|
+
- **Models**: Gemini 2.5 Flash and other Gemini models
|
|
50
|
+
- **Features**: Tool calling, planning capabilities
|
|
51
|
+
- **API Key**: `GOOGLE_AI_API_KEY` or `GEMINI_API_KEY` environment variable
|
|
299
52
|
|
|
300
|
-
|
|
53
|
+
### Ollama (Local)
|
|
54
|
+
- **Models**: Any model hosted locally via Ollama
|
|
55
|
+
- **Features**: Privacy-focused, offline development
|
|
56
|
+
- **Setup**: Install Ollama and pull required models
|
|
301
57
|
|
|
302
|
-
|
|
58
|
+
## π Usage
|
|
303
59
|
|
|
304
|
-
|
|
305
|
-
- **Ollama** vα»i models:
|
|
306
|
-
- `gpt-oss:120b-cloud`
|
|
307
|
-
- `qwen3-coder:480b-cloud`
|
|
308
|
-
- **Google Gemini API Key**
|
|
60
|
+
### Running Galaxy Code
|
|
309
61
|
|
|
310
|
-
|
|
62
|
+
After installation, simply run:
|
|
311
63
|
|
|
312
64
|
```bash
|
|
313
|
-
|
|
314
|
-
bun install
|
|
65
|
+
galaxy-code
|
|
315
66
|
```
|
|
316
67
|
|
|
317
|
-
|
|
68
|
+
Or with npx (no installation required):
|
|
318
69
|
|
|
319
70
|
```bash
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
71
|
+
npx galaxy-code
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### CLI Options (Startup Flags)
|
|
75
|
+
|
|
76
|
+
| Flag | Description | Default |
|
|
77
|
+
| ---------------- | ------------------------------------ | ----------- |
|
|
78
|
+
| `--help` | Show help information | - |
|
|
79
|
+
| `--version` | Display version | - |
|
|
80
|
+
| `--git` | Enable git operations | From config |
|
|
81
|
+
| `--test` | Enable test planning | From config |
|
|
82
|
+
| `--config` | Display current configuration | false |
|
|
83
|
+
| `--reset-config` | Reset configuration to defaults | false |
|
|
84
|
+
| `--dev` | Enable development mode with DevTools| false |
|
|
85
|
+
| `--no-auto-update`| Disable auto-update on startup | false |
|
|
86
|
+
|
|
87
|
+
### In-App Commands
|
|
88
|
+
|
|
89
|
+
While running Galaxy Code, you can use these commands:
|
|
90
|
+
|
|
91
|
+
| Command | Description |
|
|
92
|
+
| -------------------- | ---------------------------------------------- |
|
|
93
|
+
| `/help` | Show available commands |
|
|
94
|
+
| `/exit` | Exit the application |
|
|
95
|
+
| `/clear` | Clear conversation history |
|
|
96
|
+
| `/history` | Show recent inputs (last 10) |
|
|
97
|
+
| `/pwd` | Show current working directory |
|
|
98
|
+
| `/information` | Display system information |
|
|
99
|
+
| `/git true/false` | Enable/disable git operations |
|
|
100
|
+
| `/test true/false` | Enable/disable test planning |
|
|
101
|
+
| `/mode claude/gemini/ollama/manual` | Switch agent mode |
|
|
102
|
+
| `/config` | Open configuration folder |
|
|
324
103
|
|
|
325
|
-
###
|
|
104
|
+
### Example Usage
|
|
326
105
|
|
|
327
106
|
```bash
|
|
328
|
-
|
|
329
|
-
|
|
107
|
+
# Start with default settings
|
|
108
|
+
$ galaxy-code
|
|
330
109
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
```bash
|
|
334
|
-
bun run start
|
|
335
|
-
# hoαΊ·c
|
|
336
|
-
bun run dev
|
|
337
|
-
```
|
|
110
|
+
# Enable test planning from startup
|
|
111
|
+
$ galaxy-code --test
|
|
338
112
|
|
|
339
|
-
|
|
113
|
+
# Display current configuration
|
|
114
|
+
$ galaxy-code --config
|
|
340
115
|
|
|
341
|
-
|
|
116
|
+
# Reset configuration to defaults
|
|
117
|
+
$ galaxy-code --reset-config
|
|
342
118
|
|
|
343
|
-
|
|
119
|
+
# Enable development mode
|
|
120
|
+
$ galaxy-code --dev
|
|
344
121
|
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
bun run dev
|
|
348
|
-
|
|
349
|
-
# Production mode
|
|
350
|
-
bun run start
|
|
351
|
-
|
|
352
|
-
# Vα»i CLI flags
|
|
353
|
-
bun run start --test # Enable test planning
|
|
354
|
-
bun run start --review # Enable review planning
|
|
355
|
-
bun run start --test --review # Enable both
|
|
356
|
-
bun run start --help # Show help
|
|
357
|
-
bun run start --version # Show version
|
|
122
|
+
# Disable auto-update
|
|
123
|
+
$ galaxy-code --no-auto-update
|
|
358
124
|
```
|
|
359
125
|
|
|
360
|
-
###
|
|
361
|
-
|
|
362
|
-
| Flag | Short | Default | MΓ΄ tαΊ£ |
|
|
363
|
-
| ----------- | ----- | ------- | --------------------------- |
|
|
364
|
-
| `--help` | `-h` | - | Hiα»n thα» trợ giΓΊp |
|
|
365
|
-
| `--version` | `-v` | - | Hiα»n thα» version |
|
|
366
|
-
| `--test` | - | `false` | Enable test planning step |
|
|
367
|
-
| `--review` | - | `false` | Enable review planning step |
|
|
368
|
-
|
|
369
|
-
### Commands (Trong CLI)
|
|
370
|
-
|
|
371
|
-
| Command | MΓ΄ tαΊ£ | Example |
|
|
372
|
-
| -------------- | --------------------------- | ----------------------------------- |
|
|
373
|
-
| `/help` | Hiα»n thα» danh sΓ‘ch lα»nh | `/help` |
|
|
374
|
-
| `/exit` | ThoΓ‘t khα»i Galaxy CLI | `/exit` |
|
|
375
|
-
| `/clear` | XΓ³a lα»ch sα» hα»i thoαΊ‘i | `/clear` |
|
|
376
|
-
| `/history` | Xem 10 input gαΊ§n nhαΊ₯t | `/history` |
|
|
377
|
-
| `/pwd` | Hiα»n thα» thΖ° mα»₯c lΓ m viα»c | `/pwd` |
|
|
378
|
-
| `/information` | Hiα»n thα» thΓ΄ng tin hα» thα»ng | `/information` |
|
|
379
|
-
| `/test` | Toggle test planning | `/test true` hoαΊ·c `/test false` |
|
|
380
|
-
| `/review` | Toggle review planning | `/review true` hoαΊ·c `/review false` |
|
|
381
|
-
|
|
382
|
-
### Example Usage
|
|
126
|
+
### In-App Command Examples
|
|
383
127
|
|
|
384
128
|
```bash
|
|
385
|
-
#
|
|
386
|
-
>
|
|
129
|
+
# Analyze current project
|
|
130
|
+
> Analyze this project
|
|
387
131
|
|
|
388
|
-
#
|
|
389
|
-
>
|
|
132
|
+
# Create a new Next.js application
|
|
133
|
+
> Create a Next.js e-commerce app with TypeScript
|
|
390
134
|
|
|
391
|
-
#
|
|
392
|
-
>
|
|
135
|
+
# Add authentication to existing project
|
|
136
|
+
> Add JWT authentication to this app
|
|
393
137
|
|
|
394
|
-
#
|
|
395
|
-
>
|
|
138
|
+
# Ask technical questions
|
|
139
|
+
> What are React hooks?
|
|
396
140
|
|
|
397
|
-
#
|
|
141
|
+
# Enable test planning
|
|
398
142
|
> /test true
|
|
399
|
-
β
Test planning enabled
|
|
400
|
-
|
|
401
|
-
# Kiα»m tra thΓ΄ng tin hα» thα»ng
|
|
402
|
-
> /information
|
|
403
|
-
π System Information:
|
|
404
|
-
Name: Galaxy CLI
|
|
405
|
-
Version: 2.0.0
|
|
406
|
-
Current Project: /home/user/my-project
|
|
407
|
-
Testing: ON
|
|
408
|
-
Review Code: OFF
|
|
409
|
-
```
|
|
410
|
-
|
|
411
|
-
---
|
|
412
|
-
|
|
413
|
-
## π€ AI Models & Vai trΓ²
|
|
414
|
-
|
|
415
|
-
### 1. **Gemini 2.5 Flash** (Orchestrator)
|
|
416
|
-
|
|
417
|
-
- **Vai trΓ²**: Central coordinator & plan executor
|
|
418
|
-
- **Nhiα»m vα»₯**:
|
|
419
|
-
- Tool calling & function execution
|
|
420
|
-
- Plan execution vα»i todos display (β/β)
|
|
421
|
-
- Workflow decision making
|
|
422
|
-
- Multi-language response (EN/VI)
|
|
423
|
-
- User interaction & confirmation
|
|
424
|
-
|
|
425
|
-
### 2. **gpt-oss:120b-cloud** (BA Analyzer)
|
|
426
143
|
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
- PhΓ’n tΓch yΓͺu cαΊ§u ngΖ°α»i dΓΉng
|
|
430
|
-
- XΓ‘c Δα»nh features, tech stack, data model
|
|
431
|
-
- PhΓ’n loαΊ‘i: `create_project` vs `update_project`
|
|
432
|
-
- Δα» xuαΊ₯t recommendations & questions
|
|
433
|
-
- Output: **English only** (internal consistency)
|
|
144
|
+
# Switch to Claude agent
|
|
145
|
+
> /mode claude
|
|
434
146
|
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
- **Vai trΓ²**: Feature-driven planner
|
|
438
|
-
- **Nhiα»m vα»₯**:
|
|
439
|
-
- Map coreFeatures β execution steps
|
|
440
|
-
- 1 must-have feature = 1 code_generate step
|
|
441
|
-
- **Conditional test/review steps** based on CLI flags
|
|
442
|
-
- Chα»n tools phΓΉ hợp (command_run, install_dependencies, code_generate)
|
|
443
|
-
- Ζ―α»c lượng thα»i gian (quick/medium/long)
|
|
444
|
-
- Input: userContext + baAnalysis + system context (test/review flags)
|
|
445
|
-
- Output: **English only** (step array vα»i featureName, tool, reasoning)
|
|
446
|
-
|
|
447
|
-
### 4. **qwen3-coder:480b-cloud** (Code Generate Agent) β¨ NEW
|
|
448
|
-
|
|
449
|
-
- **Vai trΓ²**: Self-contained feature executor
|
|
450
|
-
- **Nhiα»m vα»₯**:
|
|
451
|
-
- NhαΊn feature spec tα»« planning step
|
|
452
|
-
- Generate production-ready code (NO placeholders)
|
|
453
|
-
- Tα»± Δα»ng write files, run commands
|
|
454
|
-
- Integrated tools: file_write, file_read, command_run, file_search
|
|
455
|
-
- Return: `{step, status: 'done'|'error', message, filesCreated}`
|
|
456
|
-
- **Input**:
|
|
457
|
-
- step, featureName, featureDescription, priority
|
|
458
|
-
- technicalStack, userStories, dataModel, apiEndpoints
|
|
459
|
-
- **Output**: Execution result vα»i file list
|
|
460
|
-
|
|
461
|
-
---
|
|
462
|
-
|
|
463
|
-
## π§ Danh sΓ‘ch Tools
|
|
464
|
-
|
|
465
|
-
### π File Operations (6 tools)
|
|
466
|
-
|
|
467
|
-
- `file_read` - Δα»c nα»i dung file
|
|
468
|
-
- `file_write` - Ghi/tαΊ‘o file mα»i
|
|
469
|
-
- `file_list` - List files trong thΖ° mα»₯c
|
|
470
|
-
- `file_search` - Tìm kiếm pattern trong files
|
|
471
|
-
- `file_tree` - Hiα»n thα» cΓ’y thΖ° mα»₯c
|
|
472
|
-
- `file_delete` - XΓ³a file
|
|
473
|
-
|
|
474
|
-
### π Git Operations (5 tools)
|
|
475
|
-
|
|
476
|
-
- `git_status` - Check git status
|
|
477
|
-
- `git_commit` - Commit changes
|
|
478
|
-
- `git_push` - Push to remote
|
|
479
|
-
- `git_pull` - Pull tα»« remote
|
|
480
|
-
- `git_diff` - Xem git diff
|
|
481
|
-
|
|
482
|
-
### π§ Command & Testing (3 tools)
|
|
483
|
-
|
|
484
|
-
- `command_run` - ChαΊ‘y shell command
|
|
485
|
-
- `install_dependencies` - Auto-detect & install deps
|
|
486
|
-
- `test_run` - ChαΊ‘y tests
|
|
487
|
-
|
|
488
|
-
### π Document Parsing (1 tool)
|
|
489
|
-
|
|
490
|
-
- `document_parse` - Parse PDF, DOCX, XLSX
|
|
491
|
-
|
|
492
|
-
### π§ AI Analysis & Planning (3 tools)
|
|
493
|
-
|
|
494
|
-
- `ba_it_analyze` - Business analysis vα»i gpt-oss:120b
|
|
495
|
-
- `plan_task` - Feature-driven planning vα»i qwen3-coder:480b
|
|
496
|
-
- `code_generate` - β¨ **Self-contained feature executor** vα»i qwen3-coder:480b
|
|
497
|
-
|
|
498
|
-
### π Project Setup (2 tools)
|
|
499
|
-
|
|
500
|
-
- `project_ask_config` - Interactive project setup
|
|
501
|
-
- `project_build_command` - Generate build commands
|
|
502
|
-
|
|
503
|
-
---
|
|
504
|
-
|
|
505
|
-
## π Decision Logic
|
|
506
|
-
|
|
507
|
-
### Khi nΓ o dΓΉng `ba_it_analyze`?
|
|
508
|
-
|
|
509
|
-
β
**DΓΉng khi**:
|
|
510
|
-
|
|
511
|
-
- TαΊ‘o dα»± Γ‘n Mα»I (bαΊ―t buα»c)
|
|
512
|
-
- ThΓͺm tΓnh nΔng Lα»N (auth, payments, complex systems)
|
|
513
|
-
- YΓͺu cαΊ§u CHUNG CHUNG ("build app", "e-commerce")
|
|
514
|
-
|
|
515
|
-
β **KhΓ΄ng dΓΉng**:
|
|
516
|
-
|
|
517
|
-
- CΓ’u hα»i ΔΖ‘n giαΊ£n
|
|
518
|
-
- PhΓ’n tΓch dα»± Γ‘n hiα»n tαΊ‘i (dΓΉng `file_tree` + `file_read`)
|
|
519
|
-
|
|
520
|
-
### Khi nΓ o dΓΉng `plan_task`?
|
|
521
|
-
|
|
522
|
-
β
**DΓΉng khi**:
|
|
147
|
+
# Check system information
|
|
148
|
+
> /information
|
|
523
149
|
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
- Refactoring phα»©c tαΊ‘p
|
|
150
|
+
# View command history
|
|
151
|
+
> /history
|
|
527
152
|
|
|
528
|
-
|
|
153
|
+
# Exit the application
|
|
154
|
+
> /exit
|
|
155
|
+
```
|
|
529
156
|
|
|
530
|
-
|
|
531
|
-
- `baAnalysis` (optional) - KαΊΏt quαΊ£ tα»« ba_it_analyze
|
|
157
|
+
## π How It Works
|
|
532
158
|
|
|
533
|
-
###
|
|
159
|
+
### 1. Project Analysis
|
|
534
160
|
|
|
535
|
-
|
|
161
|
+
Galaxy Code can analyze existing projects to understand:
|
|
536
162
|
|
|
537
|
-
-
|
|
538
|
-
-
|
|
539
|
-
-
|
|
163
|
+
- Project structure and architecture
|
|
164
|
+
- Technology stack in use
|
|
165
|
+
- Key features and components
|
|
166
|
+
- Potential improvement areas
|
|
540
167
|
|
|
541
|
-
|
|
168
|
+
### 2. Feature-Driven Planning
|
|
542
169
|
|
|
543
|
-
|
|
544
|
-
- `featureName` - TΓͺn feature tα»« coreFeatures
|
|
545
|
-
- `featureDescription` - MΓ΄ tαΊ£ chi tiαΊΏt
|
|
546
|
-
- `technicalStack` - Tech stack tα»« BA
|
|
547
|
-
- Optional: userStories, dataModel, apiEndpoints
|
|
170
|
+
When creating or adding features, Galaxy Code follows a structured approach:
|
|
548
171
|
|
|
549
|
-
**
|
|
172
|
+
1. **Business Analysis** - Understands requirements and constraints
|
|
173
|
+
2. **Technical Planning** - Creates implementation steps
|
|
174
|
+
3. **Execution** - Generates code and runs necessary commands
|
|
175
|
+
4. **Verification** - Optionally runs tests and code reviews
|
|
550
176
|
|
|
551
|
-
|
|
177
|
+
### 3. Integrated Tool Execution
|
|
552
178
|
|
|
553
|
-
|
|
179
|
+
All file operations, git commands, and system calls are handled through integrated tools that:
|
|
554
180
|
|
|
555
|
-
|
|
181
|
+
- Automatically create and modify files
|
|
182
|
+
- Execute shell commands safely
|
|
183
|
+
- Track progress and report results
|
|
184
|
+
- Handle errors gracefully
|
|
556
185
|
|
|
557
|
-
|
|
558
|
-
____ _ ____ _ ___
|
|
559
|
-
/ ___| __ _| | __ ___ ___ _ / ___| | |_ _|
|
|
560
|
-
| | _ / _` | |/ _` \ \/ / | | || | | | | |
|
|
561
|
-
| |_| | (_| | | (_| |> <| |_| || |___| |___ | |
|
|
562
|
-
\____|\__,_|_|\__,_/_/\_\\__, | \____|_____|___|
|
|
563
|
-
|___/
|
|
564
|
-
```
|
|
186
|
+
## π Prerequisites
|
|
565
187
|
|
|
566
|
-
|
|
188
|
+
Before using Galaxy Code, ensure you have:
|
|
567
189
|
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
-
|
|
190
|
+
1. **Node.js** >= 18.14.1
|
|
191
|
+
2. **AI Provider API Keys** (at least one):
|
|
192
|
+
- **Anthropic Claude**: `ANTHROPIC_API_KEY` for Claude models
|
|
193
|
+
- **Google Gemini**: `GOOGLE_AI_API_KEY` or `GEMINI_API_KEY` for Gemini models
|
|
194
|
+
- **Ollama**: Local installation with required models
|
|
571
195
|
|
|
572
|
-
|
|
196
|
+
### Environment Configuration
|
|
573
197
|
|
|
574
|
-
|
|
198
|
+
Create a `.env` file in your working directory with your API keys:
|
|
575
199
|
|
|
576
|
-
```
|
|
577
|
-
# Required
|
|
578
|
-
|
|
579
|
-
|
|
200
|
+
```env
|
|
201
|
+
# Required (choose at least one)
|
|
202
|
+
ANTHROPIC_API_KEY=your_anthropic_api_key_here
|
|
203
|
+
GOOGLE_AI_API_KEY=your_google_api_key_here
|
|
204
|
+
# or
|
|
205
|
+
GEMINI_API_KEY=your_gemini_api_key_here
|
|
580
206
|
|
|
581
207
|
# Optional
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
---
|
|
586
|
-
|
|
587
|
-
## π Development
|
|
588
|
-
|
|
589
|
-
### Project Structure
|
|
590
|
-
|
|
591
|
-
```
|
|
592
|
-
terminal/galaxy_cli/
|
|
593
|
-
βββ source/
|
|
594
|
-
β βββ ai/
|
|
595
|
-
β β βββ orchestrator.ts # Gemini orchestrator
|
|
596
|
-
β βββ connections/
|
|
597
|
-
β β βββ gemini.ts # Gemini connection
|
|
598
|
-
β β βββ ollama.ts # Ollama connection
|
|
599
|
-
β βββ prompts/
|
|
600
|
-
β β βββ orchestrator.ts # Main workflow prompts
|
|
601
|
-
β β βββ ba-it-analyzer.ts # BA analysis prompts
|
|
602
|
-
β β βββ planning-agent.ts # Planning prompts
|
|
603
|
-
β βββ tools/
|
|
604
|
-
β β βββ ba-it-analyzer.ts # BA analyzer tool
|
|
605
|
-
β β βββ planning-agent.ts # Planning agent tool
|
|
606
|
-
β β βββ file-operations.ts # File tools
|
|
607
|
-
β β βββ git-operations.ts # Git tools
|
|
608
|
-
β β βββ registry.ts # Tool registry
|
|
609
|
-
β βββ app.tsx # Main Ink app
|
|
610
|
-
β βββ cli.tsx # CLI entry
|
|
611
|
-
βββ dist/ # Compiled output
|
|
612
|
-
βββ package.json
|
|
613
|
-
βββ tsconfig.json
|
|
614
|
-
```
|
|
615
|
-
|
|
616
|
-
### Build & Test
|
|
617
|
-
|
|
618
|
-
```bash
|
|
619
|
-
# Development vα»i auto-reload
|
|
620
|
-
bun run dev
|
|
621
|
-
|
|
622
|
-
# Build TypeScript
|
|
623
|
-
bun run build
|
|
624
|
-
|
|
625
|
-
# Type checking
|
|
626
|
-
bun run type-check
|
|
627
|
-
|
|
628
|
-
# Format code
|
|
629
|
-
bun run format
|
|
208
|
+
OLLAMA_HOST=http://localhost:11434
|
|
209
|
+
DEBUG=false
|
|
630
210
|
```
|
|
631
211
|
|
|
632
|
-
---
|
|
633
|
-
|
|
634
|
-
## π Roadmap
|
|
635
|
-
|
|
636
|
-
- [ ] **Execution Engine**: Tα»± Δα»ng chαΊ‘y plan steps
|
|
637
|
-
- [ ] **Code Review Agent**: Review code trΖ°α»c khi commit
|
|
638
|
-
- [ ] **Testing Agent**: Tα»± Δα»ng generate tests
|
|
639
|
-
- [ ] **Documentation Agent**: Auto-generate docs
|
|
640
|
-
- [ ] **Multi-project support**: LΓ m viα»c vα»i nhiα»u projects
|
|
641
|
-
- [ ] **Plugin system**: Mα» rα»ng tools dα»
dΓ ng
|
|
642
|
-
- [ ] **Web UI**: Dashboard quαΊ£n lΓ½ projects
|
|
643
|
-
|
|
644
|
-
---
|
|
645
|
-
|
|
646
|
-
## π€ Contributing
|
|
647
|
-
|
|
648
|
-
Contributions are welcome! Please follow these steps:
|
|
649
|
-
|
|
650
|
-
1. Fork the repo
|
|
651
|
-
2. Create feature branch (`git checkout -b feature/amazing-feature`)
|
|
652
|
-
3. Commit changes (`git commit -m 'Add amazing feature'`)
|
|
653
|
-
4. Push to branch (`git push origin feature/amazing-feature`)
|
|
654
|
-
5. Open Pull Request
|
|
655
|
-
|
|
656
|
-
---
|
|
657
|
-
|
|
658
212
|
## π License
|
|
659
213
|
|
|
660
|
-
MIT License - see LICENSE file for details
|
|
661
|
-
|
|
662
|
-
---
|
|
214
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
663
215
|
|
|
664
216
|
## π¨βπ» Author
|
|
665
217
|
|
|
666
|
-
**BΓΉi Trα»ng HiαΊΏu
|
|
667
|
-
|
|
668
|
-
- **Personal Email:** kevinbui210191@gmail.com
|
|
669
|
-
- **Work Email:** hieubt2@msb.com.vn
|
|
670
|
-
- **GitHub:** [@kevinbui210191](https://github.com/kevinbui210191)
|
|
218
|
+
**Kevin Bui (BΓΉi Trα»ng HiαΊΏu)**
|
|
671
219
|
|
|
672
|
-
|
|
220
|
+
- Email: kevinbui210191@gmail.com
|
|
221
|
+
- GitHub: [@kevinbui](https://github.com/kevinbui)
|
|
673
222
|
|
|
674
223
|
## π Acknowledgments
|
|
675
224
|
|
|
676
|
-
-
|
|
677
|
-
-
|
|
678
|
-
-
|
|
679
|
-
-
|
|
225
|
+
- [Ink](https://github.com/vadimdemedes/ink) - React for interactive command-line apps
|
|
226
|
+
- [Anthropic Claude](https://www.anthropic.com/claude) - Advanced AI models
|
|
227
|
+
- [Google Gemini](https://ai.google.dev/) - AI orchestration
|
|
228
|
+
- [Ollama](https://ollama.com/) - Local AI model serving
|