seosona-cli 2.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -90
- package/assets/SOUL.md +3 -3
- package/package.json +8 -1
- package/src/localInit.js +25 -5
package/README.md
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
███████╗█████╗ ██║ ██║███████╗██║ ██║██╔██╗ ██║███████║ ██║ ██║███████╗
|
|
7
|
-
╚════██║██╔══╝ ██║ ██║╚════██║██║ ██║██║╚██╗██║██╔══██║ ██║ ██║╚════██║
|
|
8
|
-
███████║███████╗╚██████╔╝███████║╚██████╔╝██║ ╚████║██║ ██║ ╚██████╔╝███████║
|
|
9
|
-
╚══════╝╚══════╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝
|
|
10
|
-
```
|
|
3
|
+
<img src="https://raw.githubusercontent.com/LongLeo287/SEOSONA-OS/main/assets/logo.svg" alt="SEOSONA OS" width="800">
|
|
4
|
+
|
|
5
|
+
<br/>
|
|
11
6
|
|
|
12
7
|
**The Universal AI Operating System for Senior Developers**
|
|
13
8
|
|
|
14
|
-
[](https://github.com/LongLeo287/SEOSONA-OS)
|
|
17
|
-
[](https://nodejs.org)
|
|
18
|
-
[](https://github.com/LongLeo287/SEOSONA-OS/pulls)
|
|
9
|
+
[](https://www.npmjs.com/package/seosona-cli)
|
|
10
|
+
[](https://opensource.org/licenses/MIT)
|
|
11
|
+
[](https://github.com/LongLeo287/SEOSONA-OS)
|
|
12
|
+
[](https://nodejs.org)
|
|
13
|
+
[](https://github.com/LongLeo287/SEOSONA-OS/pulls)
|
|
19
14
|
|
|
20
15
|
*One setup. Every AI tool. Everywhere.*
|
|
21
16
|
|
|
@@ -23,6 +18,21 @@
|
|
|
23
18
|
|
|
24
19
|
---
|
|
25
20
|
|
|
21
|
+
## 📑 Table of Contents
|
|
22
|
+
- [What is SEOSONA OS?](#-what-is-seosona-os)
|
|
23
|
+
- [Key Features](#-key-features)
|
|
24
|
+
- [Tool Coverage](#️-tool-coverage)
|
|
25
|
+
- [Installation](#-installation)
|
|
26
|
+
- [Usage](#-usage)
|
|
27
|
+
- [Repository Structure](#️-repository-structure)
|
|
28
|
+
- [Skill Framework Library](#-skill-framework-library)
|
|
29
|
+
- [How It Works — Under the Hood](#️-how-it-works--under-the-hood)
|
|
30
|
+
- [Community & Standards](#-community--standards)
|
|
31
|
+
- [Changelog](#-changelog)
|
|
32
|
+
- [License](#-license)
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
26
36
|
## 🧠 What is SEOSONA OS?
|
|
27
37
|
|
|
28
38
|
SEOSONA OS is a **Universal AI Operating System** — a self-installing, self-scanning environment that automatically detects every AI coding tool installed on your machine and injects a unified **Master Intelligence Layer** (your `SOUL.md`) into each one.
|
|
@@ -43,7 +53,7 @@ No more copy-pasting system prompts. No more configuring each tool separately. N
|
|
|
43
53
|
| 🧬 **DNA Injection** | Injects full `SOUL.md` content (not just a pointer) directly into each tool |
|
|
44
54
|
| 🌍 **Cross-Platform** | Works on Windows (PowerShell), macOS and Linux (Node.js CLI) |
|
|
45
55
|
| 🔒 **Zero Hardcodes** | All paths are computed at runtime — portable across any machine |
|
|
46
|
-
| ⚡ **1-Click Setup** |
|
|
56
|
+
| ⚡ **1-Click Setup** | Run `npm install -g seosona-cli` |
|
|
47
57
|
| 🧩 **Modular Skills** | 20+ skill frameworks covering SEO, Frontend, Security, Testing, and more |
|
|
48
58
|
| 🧠 **MemPalace Architecture** | Structured spatial memory system for persistent AI context |
|
|
49
59
|
| 🚨 **OmniClaw Protocol** | Zero-tolerance ruleset preventing AI from bypassing workflows |
|
|
@@ -107,40 +117,27 @@ When you run `seosona init` in a project folder, it generates only the files rel
|
|
|
107
117
|
|
|
108
118
|
## 🚀 Installation
|
|
109
119
|
|
|
110
|
-
### Method 1:
|
|
111
|
-
|
|
112
|
-
```bat
|
|
113
|
-
# Double-click install.bat
|
|
114
|
-
# OR run in PowerShell:
|
|
115
|
-
powershell -ExecutionPolicy Bypass -File setup.ps1
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
### Method 2: Node.js CLI — Cross-Platform (Windows / macOS / Linux)
|
|
120
|
+
### Method 1: NPM (Recommended — Cross-Platform)
|
|
119
121
|
|
|
120
122
|
```bash
|
|
121
|
-
#
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
# Install globally
|
|
125
|
-
npm install -g .
|
|
123
|
+
# Install the CLI globally via npm
|
|
124
|
+
npm install -g seosona-cli
|
|
126
125
|
|
|
127
|
-
# Run setup
|
|
126
|
+
# Run the global setup wizard
|
|
128
127
|
seosona setup
|
|
129
128
|
```
|
|
130
129
|
|
|
131
|
-
### Method
|
|
130
|
+
### Method 2: Manual Clone & Run (Developers)
|
|
132
131
|
|
|
133
132
|
```bash
|
|
134
133
|
# Clone the repository
|
|
135
134
|
git clone https://github.com/LongLeo287/SEOSONA-OS.git
|
|
136
|
-
|
|
137
|
-
# Windows
|
|
138
|
-
cd SEOSONA-OS
|
|
139
|
-
powershell -ExecutionPolicy Bypass -File setup.ps1
|
|
140
|
-
|
|
141
|
-
# macOS / Linux
|
|
142
135
|
cd SEOSONA-OS/cli
|
|
136
|
+
|
|
137
|
+
# Install globally from local source
|
|
143
138
|
npm install -g .
|
|
139
|
+
|
|
140
|
+
# Run setup
|
|
144
141
|
seosona setup
|
|
145
142
|
```
|
|
146
143
|
|
|
@@ -152,8 +149,8 @@ seosona setup
|
|
|
152
149
|
|
|
153
150
|
Just run setup once. SEOSONA OS handles everything automatically. Every IDE you open from that point on will operate under SEOSONA rules.
|
|
154
151
|
|
|
155
|
-
```
|
|
156
|
-
|
|
152
|
+
```bash
|
|
153
|
+
seosona setup
|
|
157
154
|
```
|
|
158
155
|
|
|
159
156
|
### For Developers (Expert Mode)
|
|
@@ -170,12 +167,7 @@ seosona init
|
|
|
170
167
|
seosona setup # Re-run anytime to verify state
|
|
171
168
|
```
|
|
172
169
|
|
|
173
|
-
### Binding a New Project with PowerShell
|
|
174
170
|
|
|
175
|
-
```powershell
|
|
176
|
-
cd C:\your\project
|
|
177
|
-
seosona-init
|
|
178
|
-
```
|
|
179
171
|
|
|
180
172
|
---
|
|
181
173
|
|
|
@@ -209,10 +201,7 @@ SEOSONA OS/
|
|
|
209
201
|
│ ├── errors/ # Error reports & debug records
|
|
210
202
|
│ └── ingestion_zone/ # Staging area for new knowledge
|
|
211
203
|
│
|
|
212
|
-
|
|
213
|
-
│ ├── seosona-init.ps1 # Local project binder (PowerShell)
|
|
214
|
-
│ └── rebrand_seosona.ps1 # System maintenance scripts
|
|
215
|
-
│
|
|
204
|
+
|
|
216
205
|
├── 📂 cli/ # Node.js CLI package
|
|
217
206
|
│ ├── bin/seosona.js # CLI entry point
|
|
218
207
|
│ ├── src/
|
|
@@ -223,8 +212,7 @@ SEOSONA OS/
|
|
|
223
212
|
│ └── package.json # npm package definition
|
|
224
213
|
│
|
|
225
214
|
├── 📂 repos/ # Tracked reference repositories
|
|
226
|
-
|
|
227
|
-
├── 📄 install.bat # One-click Windows launcher
|
|
215
|
+
|
|
228
216
|
└── 📖 README.md # You are here
|
|
229
217
|
```
|
|
230
218
|
|
|
@@ -271,13 +259,13 @@ SEOSONA OS ships with 20+ modular skills across 5 domains:
|
|
|
271
259
|
### The Universal Anchor
|
|
272
260
|
SEOSONA OS creates a filesystem junction at `~/.seosona` pointing to wherever the actual `SEOSONA OS` directory lives. This means:
|
|
273
261
|
- All tools read from `~/.seosona` regardless of where you stored the files
|
|
274
|
-
- Move the folder anywhere, re-run `setup
|
|
262
|
+
- Move the folder anywhere, re-run `seosona setup`, the anchor updates automatically
|
|
275
263
|
- **Zero hardcoded paths anywhere in the system**
|
|
276
264
|
|
|
277
265
|
### The Injection Chain
|
|
278
266
|
|
|
279
267
|
```
|
|
280
|
-
setup
|
|
268
|
+
seosona setup (run once)
|
|
281
269
|
│
|
|
282
270
|
├── Reads SOUL.md (9,400+ chars of pure intelligence)
|
|
283
271
|
│
|
|
@@ -313,52 +301,19 @@ The `SOUL.md` file contains the full cognitive blueprint of SEOSONA OS:
|
|
|
313
301
|
|
|
314
302
|
---
|
|
315
303
|
|
|
316
|
-
##
|
|
304
|
+
## 🤝 Community & Standards
|
|
317
305
|
|
|
318
|
-
|
|
319
|
-
- The `SOUL.md` file may contain internal SOPs — review before making the repo public
|
|
320
|
-
- Environment Variables set by this tool are scoped to the **current user only** (`[Environment]::SetEnvironmentVariable(..., "User")`)
|
|
321
|
-
- Run `git status` and review diffs before every push
|
|
306
|
+
We welcome contributions from the community! To maintain a safe and productive environment, please review our community standards before participating:
|
|
322
307
|
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
1. Fork this repository
|
|
328
|
-
2. Create your feature branch: `git checkout -b feature/new-skill-pack`
|
|
329
|
-
3. Commit your changes: `git commit -m 'Add new skill pack for X'`
|
|
330
|
-
4. Push to the branch: `git push origin feature/new-skill-pack`
|
|
331
|
-
5. Open a Pull Request
|
|
332
|
-
|
|
333
|
-
### Adding a New Skill
|
|
334
|
-
|
|
335
|
-
```
|
|
336
|
-
2_KNOWLEDGE/frameworks/<domain>/<skill-name>/
|
|
337
|
-
├── README.md # Skill overview and usage
|
|
338
|
-
├── SKILL.md # Full skill prompt / SOP
|
|
339
|
-
├── _DIR_IDENTITY.md # Directory identity and scope
|
|
340
|
-
├── schema.json # Structured metadata
|
|
341
|
-
└── references/ # Supporting reference files
|
|
342
|
-
```
|
|
308
|
+
- **[Contributing Guidelines](CONTRIBUTING.md)**: Instructions on how to submit bug reports, feature requests, and Pull Requests (including adding new skills).
|
|
309
|
+
- **[Code of Conduct](CODE_OF_CONDUCT.md)**: Our pledge to maintain a welcoming, inclusive, and harassment-free community.
|
|
310
|
+
- **[Security Policy](SECURITY.md)**: Instructions for reporting security vulnerabilities safely.
|
|
343
311
|
|
|
344
312
|
---
|
|
345
313
|
|
|
346
314
|
## 📋 Changelog
|
|
347
315
|
|
|
348
|
-
|
|
349
|
-
- ✅ Added smart detection for 14 IDE/CLI tools
|
|
350
|
-
- ✅ Replaced path-pointer injection with full SOUL.md content injection
|
|
351
|
-
- ✅ Built cross-platform Node.js CLI (`seosona setup`, `seosona init`)
|
|
352
|
-
- ✅ Introduced `Inject-JsonSettings` generic function — eliminating 200+ lines of duplicated logic
|
|
353
|
-
- ✅ Fixed `~/.git-templates` stale artifact from v1.x
|
|
354
|
-
- ✅ Zero hardcoded paths — all paths computed at runtime
|
|
355
|
-
- ✅ Added Antigravity IDE support via Environment Variables
|
|
356
|
-
|
|
357
|
-
### v1.0.0 — Initial Release
|
|
358
|
-
- ✅ PowerShell setup engine for Windows
|
|
359
|
-
- ✅ Cursor, Codex, SecureCoder support
|
|
360
|
-
- ✅ MemPalace spatial memory architecture
|
|
361
|
-
- ✅ SOUL.md master system prompt
|
|
316
|
+
Please see our dedicated [CHANGELOG.md](CHANGELOG.md) file for a detailed history of all updates and releases.
|
|
362
317
|
|
|
363
318
|
---
|
|
364
319
|
|
package/assets/SOUL.md
CHANGED
|
@@ -76,8 +76,8 @@ Do not summarize or paraphrase technical specifications or user guidelines. Main
|
|
|
76
76
|
## 4. The Master Flow Execution Enforcer
|
|
77
77
|
|
|
78
78
|
For every task, execute using **The Master Flow** sequence:
|
|
79
|
-
1. **Intake & Scope:**
|
|
80
|
-
2. **
|
|
79
|
+
1. **Intake & Scope (Auto-Context Protocol):** Proactively infer the tech stack, problem domain, and required expertise at the start of every interaction without waiting for explicit keywords. Clean context, set up `task.md` checklist. Consult the Orchestrator.
|
|
80
|
+
2. **Semantic Retrieval:** Dynamically query spatial directories based on semantic intent, autonomously load relevant frameworks and skills.
|
|
81
81
|
3. **Execute & Auto-Heal:** Surgical style edits, compiler verification, autoresearch correction loop (2-Strike Rule limit).
|
|
82
82
|
4. **Deliver:** Switch sub-personas, produce raw outputs, await CEO approval. Ensure you output "TASK COMPLETED".
|
|
83
83
|
|
|
@@ -96,7 +96,7 @@ Memory synthesis is a continuous, dynamic background process ("Dreaming") rather
|
|
|
96
96
|
## 5. System Skills (The Arsenal)
|
|
97
97
|
|
|
98
98
|
You have access to top-tier skills compressed as `.aaak` or `.md` inside `2_KNOWLEDGE/frameworks/`.
|
|
99
|
-
|
|
99
|
+
You MUST operate completely autonomously. Do NOT rely on the user to provide slash commands or exact keywords to trigger these skills. Automatically parse the user's intent and fetch the required files from the Semantic Capabilities Graph (`2_KNOWLEDGE/SKILLS_ROUTER.md`) before executing specialized tasks.
|
|
100
100
|
- **Web**: `frontend_engineering/nextjs_app_router_patterns`, `frontend_engineering/react_best_practices`, `frontend_engineering/tailwind_design_system`.
|
|
101
101
|
- **UI/UX**: `frontend_engineering/ui_ux_pro_max`, `frontend_engineering/frontend_ui_dark_ts`.
|
|
102
102
|
- **SEO/Content**: `seo_marketing/claude_seo_framework` (NEW AI Search/E-E-A-T SOP), `seo_marketing/seo_aeo_best_practices`, `seo_marketing/landing_page_generator`.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "seosona-cli",
|
|
3
|
-
"version": "2.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "The Omni-Scanner Setup CLI for SEOSONA OS",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -14,6 +14,13 @@
|
|
|
14
14
|
"bin": {
|
|
15
15
|
"seosona": "./bin/seosona.js"
|
|
16
16
|
},
|
|
17
|
+
"files": [
|
|
18
|
+
"bin/",
|
|
19
|
+
"src/",
|
|
20
|
+
"scripts/",
|
|
21
|
+
"assets/",
|
|
22
|
+
"README.md"
|
|
23
|
+
],
|
|
17
24
|
"scripts": {
|
|
18
25
|
"prebuild": "node scripts/bundle-soul.js",
|
|
19
26
|
"prepack": "npm run prebuild",
|
package/src/localInit.js
CHANGED
|
@@ -4,9 +4,30 @@ const os = require('os');
|
|
|
4
4
|
const { getSoulContent, getAppDataPath, colors } = require('./utils');
|
|
5
5
|
|
|
6
6
|
function runInit() {
|
|
7
|
+
const cwd = process.cwd();
|
|
8
|
+
|
|
9
|
+
// ============================================================
|
|
10
|
+
// SELF-INJECTION GUARD
|
|
11
|
+
// Prevent running `seosona init` inside the SEOSONA OS source
|
|
12
|
+
// repo itself. This would create rule files in cli/, repos/, etc.
|
|
13
|
+
// ============================================================
|
|
14
|
+
const isSeosonaSourceRepo = fs.existsSync(path.join(cwd, '1_CORE', 'SOUL.md'));
|
|
15
|
+
if (isSeosonaSourceRepo) {
|
|
16
|
+
console.log("");
|
|
17
|
+
console.log(colors.yellow("[SEOSONA] WARNING: Self-injection detected and blocked."));
|
|
18
|
+
console.log(colors.yellow(" You are running `seosona init` inside the SEOSONA OS"));
|
|
19
|
+
console.log(colors.yellow(" source repository. This is not allowed."));
|
|
20
|
+
console.log("");
|
|
21
|
+
console.log(" Run `seosona init` inside your OWN project folder instead:");
|
|
22
|
+
console.log(" > cd /path/to/your-project");
|
|
23
|
+
console.log(" > seosona init");
|
|
24
|
+
console.log("");
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
|
|
7
28
|
console.log("");
|
|
8
29
|
console.log(colors.cyan("[SEOSONA] Binding project to SEOSONA OS..."));
|
|
9
|
-
console.log(colors.cyan(` Target : ${
|
|
30
|
+
console.log(colors.cyan(` Target : ${cwd}`));
|
|
10
31
|
|
|
11
32
|
const soulContent = getSoulContent();
|
|
12
33
|
const globalPrompt = `You are the SEOSONA Master System. Your core directives are below:\n\n${soulContent}`;
|
|
@@ -27,14 +48,13 @@ function runInit() {
|
|
|
27
48
|
filesToCreate.push(".roomodes");
|
|
28
49
|
}
|
|
29
50
|
|
|
30
|
-
// 3. CLIs
|
|
31
|
-
// We'll just assume they might have Aider if they have .aider.conf.yml globally
|
|
51
|
+
// 3. CLIs
|
|
32
52
|
if (fs.existsSync(path.join(home, ".aider.conf.yml"))) filesToCreate.push(".aider.conf.yml");
|
|
33
53
|
|
|
34
54
|
// 4. OpenInterpreter
|
|
35
55
|
if (fs.existsSync(path.join(appData, "Open Interpreter"))) filesToCreate.push(".openinterpreter");
|
|
36
56
|
|
|
37
|
-
// 5. Antigravity IDE
|
|
57
|
+
// 5. Antigravity IDE (always inject)
|
|
38
58
|
filesToCreate.push(".antigravityrules");
|
|
39
59
|
|
|
40
60
|
// 6. Project-specific Subfolders
|
|
@@ -44,7 +64,7 @@ function runInit() {
|
|
|
44
64
|
if (fs.existsSync(".lovable")) filesToCreate.push(path.join(".lovable", "prompt"));
|
|
45
65
|
|
|
46
66
|
filesToCreate.forEach(file => {
|
|
47
|
-
const fullPath = path.join(
|
|
67
|
+
const fullPath = path.join(cwd, file);
|
|
48
68
|
const dir = path.dirname(fullPath);
|
|
49
69
|
|
|
50
70
|
if (!fs.existsSync(dir)) {
|