@vitld/meld-cli 0.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 ADDED
@@ -0,0 +1,179 @@
1
+ ```
2
+ ███╗ ███╗ ███████╗ ██╗ ██████╗
3
+ ████╗ ████║ ██╔════╝ ██║ ██╔══██╗
4
+ ██╔████╔██║ █████╗ ██║ ██║ ██║
5
+ ██║╚██╔╝██║ ██╔══╝ ██║ ██║ ██║
6
+ ██║ ╚═╝ ██║ ███████╗ ███████╗ ██████╔╝
7
+ ╚═╝ ╚═╝ ╚══════╝ ╚══════╝ ╚═════╝
8
+ ```
9
+
10
+ [![npm](https://img.shields.io/npm/v/@vitld/meld-cli)](https://www.npmjs.com/package/@vitld/meld-cli)
11
+ [![license](https://img.shields.io/github/license/vitld/meld-cli)](LICENSE)
12
+ [![CI](https://github.com/vitld/meld-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/vitld/meld-cli/actions/workflows/ci.yml)
13
+
14
+ Agent-agnostic settings generator for AI coding agents.
15
+
16
+ ## The spirit of the project
17
+
18
+ Think of meld as IoC but for agentic workflows and setups. Let's call it AIaC?
19
+ The goal is to mirror your preferred settings across multiple agent CLIs in a small and lightweight tool centralized to a single entry-point or workspace.
20
+ Setup your context, your MCPs (and other settings) and your projects once.
21
+
22
+ And yes, it's 100% vibe coded. If you find issues, please report!
23
+
24
+ ## Contribution & Issues
25
+ Contributions are welcome! But try to keep it within the spirit of the project. Avoid leaning into the "agent runner and orchestration" space unless it can be done cleanly and without massive overhaul. Other than that, open for suggestions and ideas!
26
+
27
+ Some known limitations:
28
+ * Windows support (no clue if it works, haven't tested, probably not?)
29
+
30
+ ## What it does
31
+
32
+ Meld creates a **hub** — a shared workspace that sits above your projects and generates per-agent configuration files. Define your projects, MCP servers, and instructions once in `meld.jsonc`, then run `meld gen` to produce native config files for each agent.
33
+
34
+ Supported agents:
35
+
36
+ | Agent | Generates |
37
+ |-------|-----------|
38
+ | Claude Code | `CLAUDE.md`, `.mcp.json` |
39
+ | Codex CLI | `AGENTS.md`, `.codex/config.toml` |
40
+ | Gemini CLI | `GEMINI.md`, `.gemini/settings.json` |
41
+
42
+ ## Install
43
+
44
+ ```bash
45
+ npm install -g @vitld/meld-cli
46
+ # or
47
+ pnpm add -g @vitld/meld-cli
48
+ ```
49
+
50
+ The package installs as `@vitld/meld-cli` but the command is `meld`.
51
+
52
+ ## Quick start
53
+
54
+ ```bash
55
+ mkdir my-hub && cd my-hub
56
+ meld init
57
+ meld project add
58
+ meld gen
59
+ meld claude-code # or: meld codex-cli, meld gemini-cli
60
+ ```
61
+
62
+ ## Hub structure
63
+
64
+ ```
65
+ my-hub/
66
+ meld.jsonc # Central configuration
67
+ context/ # Markdown instructions for agents
68
+ commands/ # Slash commands
69
+ skills/ # Reusable agent skills
70
+ artifacts/ # Research, plans, and notes
71
+ scratch/ # Temporary work (gitignored)
72
+ agents/ # Generated output (gitignored)
73
+ ```
74
+
75
+ ## Configuration
76
+
77
+ All configuration lives in `meld.jsonc` at the hub root:
78
+
79
+ ```jsonc
80
+ {
81
+ "$schema": "./meld.schema.json",
82
+ "ide": {
83
+ "workspaceName": "my-hub"
84
+ },
85
+ "agents": {
86
+ "claude-code": { "enabled": true },
87
+ "codex-cli": { "enabled": false },
88
+ "gemini-cli": { "enabled": false }
89
+ },
90
+ "projects": {
91
+ "my-app": {
92
+ "path": "/absolute/path/to/my-app",
93
+ "aliases": ["app"],
94
+ "repo": "org/my-app"
95
+ }
96
+ },
97
+ "mcp": {
98
+ // MCP servers — see below
99
+ }
100
+ }
101
+ ```
102
+
103
+ ## Commands
104
+
105
+ | Command | Description |
106
+ |---------|-------------|
107
+ | `meld init` | Initialize a new hub |
108
+ | `meld gen` | Generate agent configs from `meld.jsonc` |
109
+ | `meld gen --dry-run` | Preview without writing files |
110
+ | `meld project add` | Register a project |
111
+ | `meld project list` | List registered projects |
112
+ | `meld open` | Open workspace in IDE |
113
+ | `meld update` | Re-scaffold hub structure |
114
+ | `meld claude-code` | Launch Claude Code in the agent directory |
115
+ | `meld codex-cli` | Launch Codex CLI in the agent directory |
116
+ | `meld gemini-cli` | Launch Gemini CLI in the agent directory |
117
+
118
+ ## MCP servers
119
+
120
+ MCP servers are defined once in `meld.jsonc` under the `mcp` key and automatically translated into each agent's native config format.
121
+
122
+ ### Stdio server
123
+
124
+ ```jsonc
125
+ "my-server": {
126
+ "command": "npx",
127
+ "args": ["-y", "my-mcp-server@latest"],
128
+ "env": {
129
+ "API_KEY": "sk-..."
130
+ }
131
+ }
132
+ ```
133
+
134
+ ### HTTP server
135
+
136
+ ```jsonc
137
+ "my-server": {
138
+ "type": "http",
139
+ "url": "https://mcp.example.com/mcp",
140
+ "headers": {
141
+ "Authorization": "Bearer tok-..."
142
+ }
143
+ }
144
+ ```
145
+
146
+ ### Scoping servers to agents
147
+
148
+ By default every MCP server is available to all enabled agents. Use `agents` to restrict:
149
+
150
+ ```jsonc
151
+ "my-server": {
152
+ "command": "node",
153
+ "args": ["server.js"],
154
+ "agents": ["claude-code"]
155
+ }
156
+ ```
157
+
158
+ ## Context & instructions
159
+
160
+ Files in the root of `context/` are inlined into agent instruction files (`CLAUDE.md`, `AGENTS.md`, `GEMINI.md`). Subfolders are copied into each agent's working directory so you can reference them with relative paths.
161
+
162
+ ```
163
+ context/
164
+ 01-role.md # Inlined (alphabetical order)
165
+ 02-guardrails.md # Inlined
166
+ reference/ # Copied as agents/<name>/reference/
167
+ api.md
168
+ patterns.md
169
+ ```
170
+
171
+ Use numeric prefixes to control ordering. Run `meld gen` after editing.
172
+
173
+ ## Requirements
174
+
175
+ Node.js >= 20
176
+
177
+ ## License
178
+
179
+ [GPL-3.0-only](LICENSE)
@@ -0,0 +1,2 @@
1
+
2
+ export { }