@vibe-coder/cli 1.0.2 โ 1.0.3
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 +50 -37
- package/README.zh.md +14 -0
- package/dist/cli.js +20 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,31 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
# ๐ Vibe Coding CLI
|
|
4
4
|
|
|
5
|
-
**
|
|
5
|
+
**The vibe coding ecosystem builder, specifically designed for OpenCode.**
|
|
6
6
|
|
|
7
|
+
[](https://github.com/HelloGGX/vibe-coding-cli)
|
|
7
8
|
[](https://www.npmjs.com/package/@vibe-coder/cli)
|
|
8
9
|
[](../../LICENSE.md)
|
|
9
10
|
[](https://bun.sh)
|
|
10
11
|
|
|
11
12
|
**English** ยท [็ฎไฝไธญๆ](https://github.com/HelloGGX/skill/blob/main/packages/vibe/README.zh.md)
|
|
12
13
|
|
|
13
|
-
> *
|
|
14
|
+
> *One-click aggregation of AI tools and contextual rules, enabling Agents to truly understand your codebase architecture.*
|
|
14
15
|
|
|
15
16
|
</div>
|
|
16
17
|
|
|
17
18
|
## ๐ Introduction
|
|
18
19
|
|
|
19
|
-
`@vibe-coder/cli` is a modern command-line scaffolding tool built specifically for the **OpenCode** platform. Its core
|
|
20
|
+
`@vibe-coder/cli` is a modern command-line scaffolding tool built specifically for the **OpenCode** platform. Its core mission is to quickly set up a Vibe Coding development environment and simplify resource management for rule-driven development.
|
|
20
21
|
|
|
21
|
-
With the `vibe` command, you can pull TypeScript/Python tool scripts or Markdown rule files from remote GitHub repositories with a single click.
|
|
22
|
+
With the `vibe` command, you can pull TypeScript/Python tool scripts or Markdown rule files from remote GitHub repositories with a single click. These are seamlessly and automatically registered into your OpenCode configuration while managing underlying runtime dependencies, allowing you to focus entirely on **"co-creating code with AI."**
|
|
22
23
|
|
|
23
24
|
## โจ Features
|
|
24
25
|
|
|
25
|
-
* ๐ **Fully Automated Tool Management
|
|
26
|
-
* ๐ **Context
|
|
27
|
-
* ๐ฆ **Smart Configuration Injection
|
|
28
|
-
* โก **
|
|
29
|
-
* ๐ช **Standard
|
|
26
|
+
* ๐ **Fully Automated Tool Management**: Rapidly parse, multi-select, and download `.ts` / `.py` scripts from any GitHub repository for out-of-the-box local usage.
|
|
27
|
+
* ๐ **Perfect Fusion of Context and Capabilities**: Innovative ecosystem aggregation that deeply binds the **tool skills** required by Agents with your **behavioral guidelines**. Supports on-demand installation of `.md` rule files, ensuring AI truly understands your architectural intent.
|
|
28
|
+
* ๐ฆ **Smart Configuration Injection**: Automatically intercepts and updates `.opencode/opencode.jsonc`, silently injecting tool toggles and prompt directive paths. Say goodbye to tedious manual configuration.
|
|
29
|
+
* โก **Blazing Fast Parallel Updates**: Designed with a concurrency model to simultaneously process resource comparisons and pulls across multiple source repositories, drastically reducing update wait times.
|
|
30
|
+
* ๐ช **Standard Skill Aggregation**: Deeply integrated with Vercel's `pnpx skills` ecosystem, allowing you to manage both standard Agent skill libraries and local extension resources within a unified CLI workflow.
|
|
30
31
|
|
|
31
32
|
---
|
|
32
33
|
|
|
@@ -34,11 +35,11 @@ With the `vibe` command, you can pull TypeScript/Python tool scripts or Markdown
|
|
|
34
35
|
|
|
35
36
|
### Prerequisites
|
|
36
37
|
|
|
37
|
-
* [Node.js](https://
|
|
38
|
+
* [Node.js](https://nodejs.org/) >= 18.0.0 or [Bun](https://bun.sh/) >= 1.0.0
|
|
38
39
|
|
|
39
40
|
### Installation
|
|
40
41
|
|
|
41
|
-
Install
|
|
42
|
+
Install globally:
|
|
42
43
|
|
|
43
44
|
```bash
|
|
44
45
|
# Using npm
|
|
@@ -50,13 +51,13 @@ bun add -g @vibe-coder/cli
|
|
|
50
51
|
|
|
51
52
|
### Basic Usage
|
|
52
53
|
|
|
53
|
-
Initialize and add an ecosystem
|
|
54
|
+
Initialize and add an ecosystem repository (e.g., `helloggx/skill` from this project):
|
|
54
55
|
|
|
55
56
|
```bash
|
|
56
57
|
vibe add helloggx/skill
|
|
57
58
|
```
|
|
58
59
|
|
|
59
|
-
*The CLI will
|
|
60
|
+
*The CLI will launch an interactive menu, allowing you to flexibly multi-select the **Tools** and **Rules** you want to install, and will automatically handle all environment configurations for you.*
|
|
60
61
|
|
|
61
62
|
---
|
|
62
63
|
|
|
@@ -64,48 +65,47 @@ vibe add helloggx/skill
|
|
|
64
65
|
|
|
65
66
|
| Command | Alias | Description |
|
|
66
67
|
| --- | --- | --- |
|
|
67
|
-
| `vibe add <repo>` | `a` | Parses the target GitHub
|
|
68
|
+
| `vibe add <repo>` | `a` | Parses the target GitHub repo, launches a UI list for on-demand installation of tools/rules, and auto-injects configurations. |
|
|
68
69
|
| `vibe list` | `ls` | Prints a clear status map of all installed resources (local tools, context rules, global standard skills) in the current project. |
|
|
69
|
-
| `vibe update` | `up` | Concurrently pulls all source repositories
|
|
70
|
-
| `vibe remove [resource]` | `rm` | **
|
|
70
|
+
| `vibe update` | `up` | Concurrently pulls all source repositories listed in `vibe-lock.json` with one click, intelligently comparing and overwriting local scripts and rules. |
|
|
71
|
+
| `vibe remove [resource]` | `rm` | **Run without args**: Launches a UI multi-select list to delete local items.<br>
|
|
71
72
|
|
|
72
|
-
<br
|
|
73
|
+
<br>
|
|
73
74
|
|
|
75
|
+
<br>**Run with args**: Quickly matches and removes specified standard skills or local tools, synchronously cleaning up configurations. |
|
|
74
76
|
---
|
|
75
77
|
|
|
76
78
|
## ๐๏ธ Build Your Own Resource Repository
|
|
77
79
|
|
|
78
|
-
We
|
|
80
|
+
We strongly encourage you or your team to create dedicated Vibe Coding resource repositories on GitHub to standardize your team's favorite AI tools and custom coding conventions across all projects.
|
|
79
81
|
|
|
80
82
|
### Recommended Directory Structure
|
|
81
83
|
|
|
82
|
-
To ensure perfect compatibility with `@vibe-coder/cli`, we recommend the following
|
|
84
|
+
To ensure perfect compatibility with `@vibe-coder/cli`, we recommend adopting the following conventions (refer to `helloggx/skill`):
|
|
83
85
|
|
|
84
86
|
```text
|
|
85
87
|
your-custom-repo/
|
|
86
|
-
โโโ skill/ # (Optional) Standard Vercel AI Agent
|
|
88
|
+
โโโ skill/ # (Optional) Standard Vercel AI Agent skill library
|
|
87
89
|
โโโ tool/ # Custom TS/Python executable tools
|
|
88
90
|
โ โโโ get_dsl.ts
|
|
89
|
-
โ โโโ get_dsl.py # ๐ก Python scripts should share the
|
|
91
|
+
โ โโโ get_dsl.py # ๐ก Python scripts should share the same name as the TS tool calling them
|
|
90
92
|
โ โโโ shadcn_vue_init.ts
|
|
91
93
|
โโโ rules/ # Personalized Markdown context rules
|
|
92
|
-
โโโ common/ # Global rules applicable to all projects
|
|
94
|
+
โโโ common/ # Global common rules applicable to all projects
|
|
93
95
|
โ โโโ coding-style.md
|
|
94
96
|
โ โโโ security.md
|
|
95
97
|
โโโ typescript/ # Tech-stack specific rules
|
|
96
|
-
โโโ coding-style.md # ๐ก Recommended to share the name
|
|
98
|
+
โโโ coding-style.md # ๐ก Recommended to share the same name as the extended common rule
|
|
97
99
|
|
|
98
100
|
```
|
|
99
101
|
|
|
100
102
|
### Organization Best Practices
|
|
101
103
|
|
|
102
|
-
* **Cross-
|
|
103
|
-
* **Rule
|
|
104
|
-
*
|
|
105
|
-
* When
|
|
106
|
-
*> This file extends [common/coding-style.md](https://www.google.com/search?q=../common/coding-style.md)
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
* **Cross-language tool linkage**: If your `.ts` tool relies on an underlying `.py` script, **ensure the base names of both files are exactly the same** (e.g., `get_dsl.ts` and `get_dsl.py`). The CLI will intelligently recognize and pull them together.
|
|
105
|
+
* **Rule inheritance and extension**:
|
|
106
|
+
* Global common rules must be placed under `rules/common/`.
|
|
107
|
+
* When writing rules for a specific tech stack (e.g., `rules/typescript/`), if you need to inherit a `common` rule, it is recommended to **keep the same name** and explicitly declare the inheritance at the top of the file:
|
|
108
|
+
*> This file extends [common/coding-style.md](https://www.google.com/search?q=../common/coding-style.md) and adds TS-specific content.*
|
|
109
109
|
|
|
110
110
|
---
|
|
111
111
|
|
|
@@ -116,19 +116,32 @@ After running `vibe add`, the tool will automatically take over and maintain the
|
|
|
116
116
|
```text
|
|
117
117
|
your-project/
|
|
118
118
|
โโโ .opencode/
|
|
119
|
-
โ โโโ tool/ #
|
|
120
|
-
โ โโโ rules/ #
|
|
121
|
-
โ โโโ opencode.jsonc # Core OpenCode
|
|
122
|
-
โ โโโ vibe-lock.json # State lock file, accurately recording resource
|
|
123
|
-
โโโ .venv/ # (
|
|
124
|
-
โโโ requirements.txt # (
|
|
119
|
+
โ โโโ tool/ # Underlying .ts / .py tool scripts
|
|
120
|
+
โ โโโ rules/ # .md rule files (archived by category)
|
|
121
|
+
โ โโโ opencode.jsonc # Core OpenCode configuration (CLI auto-injects tool toggles & directive paths)
|
|
122
|
+
โ โโโ vibe-lock.json # State lock file, accurately recording resource origins and versions
|
|
123
|
+
โโโ .venv/ # (Created on demand) Isolated Python virtual environment
|
|
124
|
+
โโโ requirements.txt # (Maintained on demand) Python script dependency list
|
|
125
|
+
|
|
125
126
|
```
|
|
126
127
|
|
|
127
128
|
---
|
|
128
129
|
|
|
130
|
+
## ๐ค Join the Ecosystem
|
|
131
|
+
|
|
132
|
+
If your open-source project (like Agent Skills, Tools, or Rules) is compatible with and utilizes the vibe-coding specification, you are welcome to add this exclusive badge to your `README.md` to show off your modern workflow to the community!
|
|
133
|
+
|
|
134
|
+
Copy the following Markdown code to add it to your project:
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
[](https://github.com/HelloGGX/vibe-coding-cli)
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
*(By adding the badge, you'll have the opportunity to be featured in the official Hall of Fame curated list!)*
|
|
141
|
+
|
|
129
142
|
## ๐ ๏ธ Development
|
|
130
143
|
|
|
131
|
-
This project is built on top of the
|
|
144
|
+
This project is built on top of the blazing-fast [Bun](https://bun.sh/) runtime.
|
|
132
145
|
|
|
133
146
|
```bash
|
|
134
147
|
bun install # 1. Install dependencies
|
package/README.zh.md
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
**ไธไธบ OpenCode ๆ้ ็ vibe coding ็ๆๆๅปบๅทฅๅ
ท**
|
|
6
6
|
|
|
7
|
+
[](https://github.com/HelloGGX/vibe-coding-cli)
|
|
7
8
|
[](https://www.npmjs.com/package/@vibe-coder/cli)
|
|
8
9
|
[](../../LICENSE.md)
|
|
9
10
|
[](https://bun.sh)
|
|
@@ -124,6 +125,19 @@ your-project/
|
|
|
124
125
|
|
|
125
126
|
---
|
|
126
127
|
|
|
128
|
+
|
|
129
|
+
## ๐ค ่ๅ
ฅ็ๆ (Join the Ecosystem)
|
|
130
|
+
|
|
131
|
+
ๅฆๆไฝ ็ๅผๆบ้กน็ฎ๏ผๅฆ Agent SkillsใTools ๆ Rules๏ผๅ
ผๅฎนๅนถไฝฟ็จไบ vibe-coding ่ง่๏ผๆฌข่ฟๅจไฝ ็ `README.md` ไธญๆไธ่ฟๆไธๅฑๅพฝ็ซ ๏ผๅ็คพๅบๅฑ็คบไฝ ็ๅๅซๅๅณ๏ผ
|
|
132
|
+
|
|
133
|
+
ๅคๅถไปฅไธ Markdown ไปฃ็ ๅณๅฏๆทปๅ ๅฐไฝ ็้กน็ฎไธญ๏ผ
|
|
134
|
+
|
|
135
|
+
```markdown
|
|
136
|
+
[](https://github.com/HelloGGX/vibe-coding-cli)
|
|
137
|
+
```
|
|
138
|
+
(ๆไธๅพฝ็ซ ๅ๏ผไฝ ๅฐๆๆบไผ่ขซๆถๅฝ่ฟๅฎๆน็ๅไบบๅ ็ฒพ้ๅ่กจ๏ผ)
|
|
139
|
+
|
|
140
|
+
|
|
127
141
|
## ๐ ๏ธ ๅผๅ่
ๆๅ (Development)
|
|
128
142
|
|
|
129
143
|
ๆฌ้กน็ฎๅบไบๆ้็ [Bun](https://bun.sh/) ่ฟ่กๆถๆๅปบใ
|
package/dist/cli.js
CHANGED
|
@@ -6583,6 +6583,19 @@ async function runRemove(args) {
|
|
|
6583
6583
|
}
|
|
6584
6584
|
|
|
6585
6585
|
// src/cli.ts
|
|
6586
|
+
import { join as join2 } from "node:path";
|
|
6587
|
+
import { readFileSync as readFileSync3 } from "node:fs";
|
|
6588
|
+
var __dirname = "/Users/xiaoluo/Desktop/work/skill/packages/vibe/src";
|
|
6589
|
+
function getVersion() {
|
|
6590
|
+
try {
|
|
6591
|
+
const pkgPath = join2(__dirname, "..", "package.json");
|
|
6592
|
+
const pkg = JSON.parse(readFileSync3(pkgPath, "utf-8"));
|
|
6593
|
+
return pkg.version;
|
|
6594
|
+
} catch {
|
|
6595
|
+
return "0.0.0";
|
|
6596
|
+
}
|
|
6597
|
+
}
|
|
6598
|
+
var VERSION = getVersion();
|
|
6586
6599
|
var VIBE_LOGO = [
|
|
6587
6600
|
"โโโ โโโโโโโโโโโโโ โโโโโโโโ",
|
|
6588
6601
|
"โโโ โโโโโโโโโโโโโโโโโโโโโโ",
|
|
@@ -6615,6 +6628,7 @@ function showBanner() {
|
|
|
6615
6628
|
console.log(` ${DIM}$${RESET} ${TEXT}vibe list${RESET} ${DIM}List installed tools & skills${RESET}`);
|
|
6616
6629
|
console.log(` ${DIM}$${RESET} ${TEXT}vibe update${RESET} ${DIM}Update installed tools & skills${RESET}`);
|
|
6617
6630
|
console.log(` ${DIM}$${RESET} ${TEXT}vibe remove${RESET} ${DIM}Remove tools & rules${RESET}`);
|
|
6631
|
+
console.log(` ${DIM}$${RESET} ${TEXT}vibe version${RESET} ${DIM}Show version${RESET}`);
|
|
6618
6632
|
console.log();
|
|
6619
6633
|
console.log(`${DIM}Example:${RESET} vibe add helloggx/skill`);
|
|
6620
6634
|
console.log();
|
|
@@ -6633,6 +6647,7 @@ ${BOLD}Manage Tools & Skills:${RESET}
|
|
|
6633
6647
|
|
|
6634
6648
|
${BOLD}Options:${RESET}
|
|
6635
6649
|
--help, -h Show this help message
|
|
6650
|
+
--version, -v Show version number
|
|
6636
6651
|
|
|
6637
6652
|
${BOLD}Examples:${RESET}
|
|
6638
6653
|
${DIM}$${RESET} vibe add helloggx/skill
|
|
@@ -6670,11 +6685,14 @@ async function main() {
|
|
|
6670
6685
|
case "update":
|
|
6671
6686
|
await runUpdate(args.slice(1));
|
|
6672
6687
|
break;
|
|
6673
|
-
case "
|
|
6674
|
-
case "-h":
|
|
6688
|
+
case "h":
|
|
6675
6689
|
case "help":
|
|
6676
6690
|
showHelp();
|
|
6677
6691
|
break;
|
|
6692
|
+
case "v":
|
|
6693
|
+
case "version":
|
|
6694
|
+
console.log(VERSION);
|
|
6695
|
+
break;
|
|
6678
6696
|
default:
|
|
6679
6697
|
console.log(`${CYAN}vibe:${RESET} Unknown command '${command}'`);
|
|
6680
6698
|
console.log(`Run ${BOLD}vibe --help${RESET} for usage.`);
|