codex-dev-mcp-suite 3.0.0 ā 3.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/CHANGELOG.md +10 -0
- package/README.md +7 -1
- package/bin/init.mjs +25 -0
- package/lib/init-wizard.js +120 -0
- package/package.json +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -32,6 +32,16 @@
|
|
|
32
32
|
|
|
33
33
|
# Changelog
|
|
34
34
|
|
|
35
|
+
## 3.1.0 - 2026-07-22 ā Interactive Installer Wizard & CI Suite š ļø
|
|
36
|
+
|
|
37
|
+
### Added
|
|
38
|
+
- **`npx codex-dev-mcp-suite init` (Auto-Config Installer Wizard)**:
|
|
39
|
+
- Interactive CLI wizard (`lib/init-wizard.js` & `bin/init.mjs`) that automatically detects installed AI clients (Codex CLI, Claude Code, Cursor, Windsurf, Hermes Agent, Antigravity CLI) and injects the 4 MCP server configurations into their respective config files.
|
|
40
|
+
- **GitHub Actions Smoke Expansion**:
|
|
41
|
+
- Extended `.github/workflows/ci.yml` package-smoke test to verify all 6 executable binaries and the `init` wizard.
|
|
42
|
+
- **Real-World Multi-Agent Vibe Coding Guide (`examples/multi-agent-vibe-coding.md`)**:
|
|
43
|
+
- Sample workflows demonstrating how to combine Antigravity, Hermes, Claude Code, and Codex CLI using swarm streams, checkpoints, and impact prediction.
|
|
44
|
+
|
|
35
45
|
## 3.0.0 - 2026-07-22 ā The Autonomous Agent OS Edition (God-Tier) š
|
|
36
46
|
|
|
37
47
|
### Added
|
package/README.md
CHANGED
|
@@ -37,7 +37,13 @@ Published on npm as `codex-dev-mcp-suite`.
|
|
|
37
37
|
|
|
38
38
|
### ā” 10-Second Quickstart
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
Automatically configure all installed AI tools (Codex CLI, Claude Code, Cursor, Windsurf, Hermes, Antigravity) with 1 command:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npx -y codex-dev-mcp-suite init
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Or test a single server right now without installing:
|
|
41
47
|
|
|
42
48
|
```bash
|
|
43
49
|
npx -y -p codex-dev-mcp-suite project-memory-mcp --help
|
package/bin/init.mjs
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { runInitWizard } from "../lib/init-wizard.js";
|
|
3
|
+
|
|
4
|
+
async function main() {
|
|
5
|
+
console.log("š ļø Dev MCP Suite ā Auto-Config Installer Wizard");
|
|
6
|
+
console.log("==================================================");
|
|
7
|
+
|
|
8
|
+
const dryRun = process.argv.includes("--dry-run");
|
|
9
|
+
const { detectedCount, results } = await runInitWizard({ dryRun });
|
|
10
|
+
|
|
11
|
+
if (!detectedCount) {
|
|
12
|
+
console.log("ā¹ļø No supported AI client directories detected (~/.codex, ~/.claude, ~/.cursor, etc.).");
|
|
13
|
+
console.log("See README.md for manual configuration instructions.");
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
for (const r of results) {
|
|
18
|
+
console.log(`ā
[${r.status}] Configured ${r.name} -> ${r.path}`);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
console.log("\nš All detected AI tools have been successfully configured with codex-dev-mcp-suite!");
|
|
22
|
+
console.log("Restart your AI coding client to start using the 4 MCP servers.");
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
main().catch(console.error);
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-Config Installer Wizard for codex-dev-mcp-suite.
|
|
3
|
+
* Detects installed AI tools (Codex, Claude Code, Cursor, Windsurf, Hermes, AGY)
|
|
4
|
+
* and configures the 4 MCP servers automatically.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import fs from "fs/promises";
|
|
8
|
+
import path from "path";
|
|
9
|
+
import os from "os";
|
|
10
|
+
|
|
11
|
+
const HOME = os.homedir();
|
|
12
|
+
|
|
13
|
+
export const CLIENT_CONFIGS = [
|
|
14
|
+
{
|
|
15
|
+
name: "Codex CLI",
|
|
16
|
+
type: "toml",
|
|
17
|
+
path: path.join(HOME, ".codex", "config.toml"),
|
|
18
|
+
sampleSnippet: `
|
|
19
|
+
[mcp_servers.project-memory]
|
|
20
|
+
command = "npx"
|
|
21
|
+
args = ["-y", "-p", "codex-dev-mcp-suite", "project-memory-mcp"]
|
|
22
|
+
|
|
23
|
+
[mcp_servers.devjournal]
|
|
24
|
+
command = "npx"
|
|
25
|
+
args = ["-y", "-p", "codex-dev-mcp-suite", "devjournal-mcp"]
|
|
26
|
+
|
|
27
|
+
[mcp_servers.checkpoint]
|
|
28
|
+
command = "npx"
|
|
29
|
+
args = ["-y", "-p", "codex-dev-mcp-suite", "checkpoint-mcp"]
|
|
30
|
+
|
|
31
|
+
[mcp_servers.context-pack]
|
|
32
|
+
command = "npx"
|
|
33
|
+
args = ["-y", "-p", "codex-dev-mcp-suite", "context-pack-mcp"]
|
|
34
|
+
`
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: "Claude Code",
|
|
38
|
+
type: "json",
|
|
39
|
+
path: path.join(HOME, ".claude.json"),
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: "Cursor",
|
|
43
|
+
type: "json",
|
|
44
|
+
path: path.join(HOME, ".cursor", "mcp.json"),
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: "Windsurf",
|
|
48
|
+
type: "json",
|
|
49
|
+
path: path.join(HOME, ".codeium", "windsurf", "mcp_config.json"),
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: "Hermes Agent",
|
|
53
|
+
type: "json",
|
|
54
|
+
path: path.join(HOME, ".hermes", "config.json"),
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "Antigravity CLI",
|
|
58
|
+
type: "json",
|
|
59
|
+
path: path.join(HOME, ".gemini", "antigravity-cli", "mcp_servers.json"),
|
|
60
|
+
}
|
|
61
|
+
];
|
|
62
|
+
|
|
63
|
+
export async function detectClients() {
|
|
64
|
+
const detected = [];
|
|
65
|
+
for (const client of CLIENT_CONFIGS) {
|
|
66
|
+
try {
|
|
67
|
+
await fs.access(path.dirname(client.path));
|
|
68
|
+
detected.push(client);
|
|
69
|
+
} catch {}
|
|
70
|
+
}
|
|
71
|
+
return detected;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export async function configureJsonClient(configPath) {
|
|
75
|
+
let json = {};
|
|
76
|
+
try {
|
|
77
|
+
const raw = await fs.readFile(configPath, "utf8");
|
|
78
|
+
json = JSON.parse(raw);
|
|
79
|
+
} catch {}
|
|
80
|
+
|
|
81
|
+
json.mcpServers = json.mcpServers || {};
|
|
82
|
+
const servers = ["project-memory", "devjournal", "checkpoint", "context-pack"];
|
|
83
|
+
for (const s of servers) {
|
|
84
|
+
json.mcpServers[s] = {
|
|
85
|
+
command: "npx",
|
|
86
|
+
args: ["-y", "-p", "codex-dev-mcp-suite", `${s}-mcp`]
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
await fs.mkdir(path.dirname(configPath), { recursive: true });
|
|
91
|
+
await fs.writeFile(configPath, JSON.stringify(json, null, 2) + "\n");
|
|
92
|
+
return configPath;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export async function runInitWizard({ dryRun = false } = {}) {
|
|
96
|
+
const clients = await detectClients();
|
|
97
|
+
const results = [];
|
|
98
|
+
|
|
99
|
+
for (const c of clients) {
|
|
100
|
+
if (c.type === "json") {
|
|
101
|
+
if (!dryRun) {
|
|
102
|
+
await configureJsonClient(c.path);
|
|
103
|
+
}
|
|
104
|
+
results.push({ name: c.name, path: c.path, status: dryRun ? "PREVIEW" : "CONFIGURED š¢" });
|
|
105
|
+
} else if (c.type === "toml") {
|
|
106
|
+
let content = "";
|
|
107
|
+
try {
|
|
108
|
+
content = await fs.readFile(c.path, "utf8");
|
|
109
|
+
} catch {}
|
|
110
|
+
|
|
111
|
+
if (!content.includes("[mcp_servers.project-memory]") && !dryRun) {
|
|
112
|
+
await fs.mkdir(path.dirname(c.path), { recursive: true });
|
|
113
|
+
await fs.appendFile(c.path, "\n" + c.sampleSnippet.trim() + "\n");
|
|
114
|
+
}
|
|
115
|
+
results.push({ name: c.name, path: c.path, status: dryRun ? "PREVIEW" : "CONFIGURED š¢" });
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return { detectedCount: clients.length, results };
|
|
120
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codex-dev-mcp-suite",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "Four local, file-based MCP servers for solo devs/vibecoders: persistent project memory, session handoff/resume, git-independent file checkpoints, and token-efficient project briefings. Works with any MCP client.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -36,7 +36,9 @@
|
|
|
36
36
|
"stats": "bin/stats.mjs",
|
|
37
37
|
"prune": "bin/prune.mjs",
|
|
38
38
|
"provider-smoke": "bin/provider-smoke.mjs",
|
|
39
|
-
"mcp-ui": "bin/ui.mjs"
|
|
39
|
+
"mcp-ui": "bin/ui.mjs",
|
|
40
|
+
"init": "bin/init.mjs",
|
|
41
|
+
"codex-dev-mcp-suite": "bin/init.mjs"
|
|
40
42
|
},
|
|
41
43
|
"scripts": {
|
|
42
44
|
"test": "node run-tests.mjs",
|