@openagents-org/agent-launcher 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 +86 -0
- package/bin/agent-connector.js +4 -0
- package/package.json +42 -0
- package/registry.json +457 -0
- package/src/adapters/base.js +327 -0
- package/src/adapters/claude.js +420 -0
- package/src/adapters/codex.js +260 -0
- package/src/adapters/index.js +39 -0
- package/src/adapters/openclaw.js +264 -0
- package/src/adapters/utils.js +83 -0
- package/src/adapters/workspace-prompt.js +293 -0
- package/src/autostart.js +178 -0
- package/src/cli.js +556 -0
- package/src/config.js +322 -0
- package/src/daemon.js +666 -0
- package/src/env.js +111 -0
- package/src/index.js +205 -0
- package/src/installer.js +588 -0
- package/src/paths.js +276 -0
- package/src/registry.js +197 -0
- package/src/tui.js +540 -0
- package/src/utils.js +93 -0
- package/src/workspace-client.js +338 -0
package/README.md
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# @openagents-org/agent-connector
|
|
2
|
+
|
|
3
|
+
Agent management CLI and library for [OpenAgents](https://openagents.org) — install, configure, and run AI coding agents from your terminal.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install -g @openagents-org/agent-connector
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## CLI Usage
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# Browse available agents
|
|
15
|
+
agent-connector search
|
|
16
|
+
|
|
17
|
+
# Install an agent runtime
|
|
18
|
+
agent-connector install openclaw
|
|
19
|
+
agent-connector install claude
|
|
20
|
+
|
|
21
|
+
# Create and configure an agent
|
|
22
|
+
agent-connector create my-agent --type openclaw
|
|
23
|
+
agent-connector env openclaw --set LLM_API_KEY=sk-...
|
|
24
|
+
agent-connector env openclaw --set LLM_BASE_URL=https://api.openai.com/v1
|
|
25
|
+
|
|
26
|
+
# Start the daemon (runs agents in background)
|
|
27
|
+
agent-connector up
|
|
28
|
+
|
|
29
|
+
# Check status
|
|
30
|
+
agent-connector status
|
|
31
|
+
|
|
32
|
+
# View logs
|
|
33
|
+
agent-connector logs
|
|
34
|
+
|
|
35
|
+
# Connect to a workspace
|
|
36
|
+
agent-connector connect my-agent <token>
|
|
37
|
+
|
|
38
|
+
# Stop
|
|
39
|
+
agent-connector down
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Run `agent-connector help` for the full command list.
|
|
43
|
+
|
|
44
|
+
## Library Usage
|
|
45
|
+
|
|
46
|
+
```js
|
|
47
|
+
const { AgentConnector } = require('@openagents-org/agent-connector');
|
|
48
|
+
|
|
49
|
+
const connector = new AgentConnector();
|
|
50
|
+
|
|
51
|
+
// Browse catalog
|
|
52
|
+
const catalog = await connector.getCatalog();
|
|
53
|
+
|
|
54
|
+
// Install a runtime
|
|
55
|
+
await connector.install('openclaw');
|
|
56
|
+
|
|
57
|
+
// Agent CRUD
|
|
58
|
+
connector.addAgent({ name: 'my-agent', type: 'openclaw' });
|
|
59
|
+
connector.saveAgentEnv('openclaw', { LLM_API_KEY: 'sk-...' });
|
|
60
|
+
|
|
61
|
+
// Daemon lifecycle
|
|
62
|
+
const daemon = connector.createDaemon();
|
|
63
|
+
await daemon.start();
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Supported Agents
|
|
67
|
+
|
|
68
|
+
| Agent | Type | Install |
|
|
69
|
+
|-------|------|---------|
|
|
70
|
+
| [OpenClaw](https://github.com/openagents/openclaw) | `openclaw` | npm |
|
|
71
|
+
| [Claude Code](https://claude.ai/claude-code) | `claude` | npm |
|
|
72
|
+
| [Codex](https://github.com/openai/codex) | `codex` | npm |
|
|
73
|
+
| [Aider](https://aider.chat) | `aider` | curl |
|
|
74
|
+
| [Goose](https://github.com/block/goose) | `goose` | curl |
|
|
75
|
+
| [Amp](https://ampcode.com) | `amp` | curl |
|
|
76
|
+
| [Gemini CLI](https://github.com/google-gemini/gemini-cli) | `gemini` | npm |
|
|
77
|
+
| And more... | | |
|
|
78
|
+
|
|
79
|
+
## Requirements
|
|
80
|
+
|
|
81
|
+
- Node.js 18+
|
|
82
|
+
- No Python required
|
|
83
|
+
|
|
84
|
+
## License
|
|
85
|
+
|
|
86
|
+
MIT
|
package/package.json
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@openagents-org/agent-launcher",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "OpenAgents Launcher — install, configure, and run AI coding agents from your terminal",
|
|
5
|
+
"main": "src/index.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"openagents": "bin/agent-connector.js",
|
|
8
|
+
"agent-connector": "bin/agent-connector.js"
|
|
9
|
+
},
|
|
10
|
+
"scripts": {
|
|
11
|
+
"test": "node --test test/*.test.js",
|
|
12
|
+
"build:registry": "node scripts/build-registry.js",
|
|
13
|
+
"lint": "eslint src/"
|
|
14
|
+
},
|
|
15
|
+
"keywords": [
|
|
16
|
+
"openagents",
|
|
17
|
+
"ai",
|
|
18
|
+
"agent",
|
|
19
|
+
"coding",
|
|
20
|
+
"cli",
|
|
21
|
+
"launcher"
|
|
22
|
+
],
|
|
23
|
+
"author": "OpenAgents",
|
|
24
|
+
"license": "MIT",
|
|
25
|
+
"repository": {
|
|
26
|
+
"type": "git",
|
|
27
|
+
"url": "https://github.com/openagents-org/openagents",
|
|
28
|
+
"directory": "packages/agent-connector"
|
|
29
|
+
},
|
|
30
|
+
"engines": {
|
|
31
|
+
"node": ">=18"
|
|
32
|
+
},
|
|
33
|
+
"files": [
|
|
34
|
+
"src/",
|
|
35
|
+
"bin/",
|
|
36
|
+
"registry.json",
|
|
37
|
+
"README.md"
|
|
38
|
+
],
|
|
39
|
+
"dependencies": {
|
|
40
|
+
"blessed": "^0.1.81"
|
|
41
|
+
}
|
|
42
|
+
}
|
package/registry.json
ADDED
|
@@ -0,0 +1,457 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"name": "aider",
|
|
4
|
+
"label": "Aider",
|
|
5
|
+
"description": "AI pair programming in your terminal",
|
|
6
|
+
"homepage": "https://aider.chat",
|
|
7
|
+
"tags": [
|
|
8
|
+
"coding",
|
|
9
|
+
"pair-programming",
|
|
10
|
+
"open-source"
|
|
11
|
+
],
|
|
12
|
+
"install": {
|
|
13
|
+
"binary": "aider",
|
|
14
|
+
"macos": "curl -LsSf https://aider.chat/install.sh | sh",
|
|
15
|
+
"linux": "curl -LsSf https://aider.chat/install.sh | sh",
|
|
16
|
+
"windows": "powershell -c \\\"irm https://aider.chat/install.ps1 | iex\\\""
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"name": "amp",
|
|
21
|
+
"label": "Amp (Sourcegraph)",
|
|
22
|
+
"description": "Sourcegraph's AI coding agent for CLI and VS Code",
|
|
23
|
+
"homepage": "https://ampcode.com",
|
|
24
|
+
"tags": [
|
|
25
|
+
"coding",
|
|
26
|
+
"sourcegraph",
|
|
27
|
+
"cli",
|
|
28
|
+
"vscode"
|
|
29
|
+
],
|
|
30
|
+
"install": {
|
|
31
|
+
"binary": "amp",
|
|
32
|
+
"macos": "curl -fsSL https://ampcode.com/install.sh | bash",
|
|
33
|
+
"linux": "curl -fsSL https://ampcode.com/install.sh | bash",
|
|
34
|
+
"windows": "powershell -c \\\"irm https://ampcode.com/install.ps1 | iex\\\""
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"name": "claude",
|
|
39
|
+
"label": "Claude Code CLI",
|
|
40
|
+
"description": "Anthropic's official CLI agent for Claude",
|
|
41
|
+
"homepage": "https://claude.ai/claude-code",
|
|
42
|
+
"tags": [
|
|
43
|
+
"coding",
|
|
44
|
+
"cli",
|
|
45
|
+
"anthropic"
|
|
46
|
+
],
|
|
47
|
+
"builtin": true,
|
|
48
|
+
"install": {
|
|
49
|
+
"binary": "claude",
|
|
50
|
+
"requires": [
|
|
51
|
+
"nodejs",
|
|
52
|
+
"git"
|
|
53
|
+
],
|
|
54
|
+
"macos": "npm install -g @anthropic-ai/claude-code",
|
|
55
|
+
"linux": "npm install -g @anthropic-ai/claude-code",
|
|
56
|
+
"windows": "npm install -g @anthropic-ai/claude-code"
|
|
57
|
+
},
|
|
58
|
+
"adapter": {
|
|
59
|
+
"module": "openagents.adapters.claude",
|
|
60
|
+
"class": "ClaudeAdapter"
|
|
61
|
+
},
|
|
62
|
+
"launch": {
|
|
63
|
+
"args": [
|
|
64
|
+
"--append-system-prompt",
|
|
65
|
+
"Your agent name is '{agent_name}'."
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
"check_ready": {
|
|
69
|
+
"env_vars": [
|
|
70
|
+
"ANTHROPIC_API_KEY"
|
|
71
|
+
],
|
|
72
|
+
"creds_file": "~/.claude/.credentials.json",
|
|
73
|
+
"creds_key": "claudeAiOauth",
|
|
74
|
+
"keychain_service": "Claude Code-credentials",
|
|
75
|
+
"not_ready_message": "Not logged in. Run: claude login",
|
|
76
|
+
"login_command": "claude login"
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"name": "cline",
|
|
81
|
+
"label": "Cline",
|
|
82
|
+
"description": "Autonomous coding agent (VS Code extension)",
|
|
83
|
+
"homepage": "https://github.com/cline/cline",
|
|
84
|
+
"tags": [
|
|
85
|
+
"coding",
|
|
86
|
+
"vscode",
|
|
87
|
+
"autonomous"
|
|
88
|
+
],
|
|
89
|
+
"install": {
|
|
90
|
+
"binary": "code",
|
|
91
|
+
"macos": "code --install-extension saoudrizwan.claude-dev",
|
|
92
|
+
"linux": "code --install-extension saoudrizwan.claude-dev",
|
|
93
|
+
"windows": "code --install-extension saoudrizwan.claude-dev"
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"name": "codex",
|
|
98
|
+
"label": "OpenAI Codex CLI",
|
|
99
|
+
"description": "OpenAI's coding agent for the terminal",
|
|
100
|
+
"homepage": "https://github.com/openai/codex",
|
|
101
|
+
"tags": [
|
|
102
|
+
"coding",
|
|
103
|
+
"openai",
|
|
104
|
+
"cli"
|
|
105
|
+
],
|
|
106
|
+
"builtin": true,
|
|
107
|
+
"install": {
|
|
108
|
+
"binary": "codex",
|
|
109
|
+
"requires": [
|
|
110
|
+
"nodejs"
|
|
111
|
+
],
|
|
112
|
+
"macos": "npm install -g @openai/codex",
|
|
113
|
+
"linux": "npm install -g @openai/codex",
|
|
114
|
+
"windows": "npm install -g @openai/codex"
|
|
115
|
+
},
|
|
116
|
+
"adapter": {
|
|
117
|
+
"module": "openagents.adapters.codex",
|
|
118
|
+
"class": "CodexAdapter"
|
|
119
|
+
},
|
|
120
|
+
"launch": {
|
|
121
|
+
"args": [
|
|
122
|
+
null
|
|
123
|
+
]
|
|
124
|
+
},
|
|
125
|
+
"env_config": [
|
|
126
|
+
{
|
|
127
|
+
"name": "OPENAI_API_KEY",
|
|
128
|
+
"description": "OpenAI API key",
|
|
129
|
+
"required": true,
|
|
130
|
+
"password": true
|
|
131
|
+
}
|
|
132
|
+
],
|
|
133
|
+
"check_ready": {
|
|
134
|
+
"env_vars": [
|
|
135
|
+
"OPENAI_API_KEY"
|
|
136
|
+
],
|
|
137
|
+
"saved_env_key": "OPENAI_API_KEY",
|
|
138
|
+
"not_ready_message": "No API key — press e to configure"
|
|
139
|
+
},
|
|
140
|
+
"resolve_env": {
|
|
141
|
+
"rules": [
|
|
142
|
+
{
|
|
143
|
+
"from": "LLM_API_KEY",
|
|
144
|
+
"to": "OPENAI_API_KEY"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"from": "LLM_BASE_URL",
|
|
148
|
+
"to": "OPENAI_BASE_URL"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"from": "LLM_MODEL",
|
|
152
|
+
"to": "CODEX_MODEL"
|
|
153
|
+
}
|
|
154
|
+
]
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"name": "copilot",
|
|
159
|
+
"label": "GitHub Copilot CLI",
|
|
160
|
+
"description": "GitHub Copilot coding agent for the terminal",
|
|
161
|
+
"homepage": "https://github.com/features/copilot",
|
|
162
|
+
"tags": [
|
|
163
|
+
"coding",
|
|
164
|
+
"github",
|
|
165
|
+
"cli"
|
|
166
|
+
],
|
|
167
|
+
"install": {
|
|
168
|
+
"binary": "gh",
|
|
169
|
+
"macos": "gh extension install github/gh-copilot",
|
|
170
|
+
"linux": "gh extension install github/gh-copilot",
|
|
171
|
+
"windows": "gh extension install github/gh-copilot"
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"name": "cursor",
|
|
176
|
+
"label": "Cursor",
|
|
177
|
+
"description": "AI-powered code editor with agent mode CLI",
|
|
178
|
+
"homepage": "https://cursor.com",
|
|
179
|
+
"tags": [
|
|
180
|
+
"coding",
|
|
181
|
+
"editor",
|
|
182
|
+
"cli",
|
|
183
|
+
"ai"
|
|
184
|
+
],
|
|
185
|
+
"builtin": true,
|
|
186
|
+
"install": {
|
|
187
|
+
"binary": "cursor",
|
|
188
|
+
"requires": [
|
|
189
|
+
null
|
|
190
|
+
],
|
|
191
|
+
"macos": "curl https://cursor.com/install -fsSL | bash",
|
|
192
|
+
"linux": "curl https://cursor.com/install -fsSL | bash",
|
|
193
|
+
"windows": "echo 'Download Cursor from https://cursor.com/downloads'"
|
|
194
|
+
},
|
|
195
|
+
"adapter": {
|
|
196
|
+
"module": "openagents.adapters.cursor",
|
|
197
|
+
"class": "CursorAdapter"
|
|
198
|
+
},
|
|
199
|
+
"launch": {
|
|
200
|
+
"args": [
|
|
201
|
+
null
|
|
202
|
+
]
|
|
203
|
+
},
|
|
204
|
+
"env_config": [
|
|
205
|
+
{
|
|
206
|
+
"name": "OPENAI_API_KEY",
|
|
207
|
+
"description": "API key for LLM inference",
|
|
208
|
+
"required": true,
|
|
209
|
+
"password": true
|
|
210
|
+
}
|
|
211
|
+
],
|
|
212
|
+
"check_ready": {
|
|
213
|
+
"env_vars": [
|
|
214
|
+
"OPENAI_API_KEY"
|
|
215
|
+
],
|
|
216
|
+
"saved_env_key": "OPENAI_API_KEY",
|
|
217
|
+
"not_ready_message": "No API key — press e to configure"
|
|
218
|
+
},
|
|
219
|
+
"resolve_env": {
|
|
220
|
+
"rules": [
|
|
221
|
+
{
|
|
222
|
+
"from": "LLM_API_KEY",
|
|
223
|
+
"to": "OPENAI_API_KEY"
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"from": "LLM_BASE_URL",
|
|
227
|
+
"to": "OPENAI_BASE_URL"
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"from": "LLM_MODEL",
|
|
231
|
+
"to": "CURSOR_MODEL"
|
|
232
|
+
}
|
|
233
|
+
]
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"name": "gemini",
|
|
238
|
+
"label": "Gemini CLI",
|
|
239
|
+
"description": "Google's open-source AI agent for the command line",
|
|
240
|
+
"homepage": "https://github.com/google-gemini/gemini-cli",
|
|
241
|
+
"tags": [
|
|
242
|
+
"coding",
|
|
243
|
+
"google",
|
|
244
|
+
"open-source",
|
|
245
|
+
"cli"
|
|
246
|
+
],
|
|
247
|
+
"install": {
|
|
248
|
+
"binary": "gemini",
|
|
249
|
+
"requires": [
|
|
250
|
+
"nodejs"
|
|
251
|
+
],
|
|
252
|
+
"macos": "npm install -g @google/gemini-cli",
|
|
253
|
+
"linux": "npm install -g @google/gemini-cli",
|
|
254
|
+
"windows": "npm install -g @google/gemini-cli"
|
|
255
|
+
}
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"name": "goose",
|
|
259
|
+
"label": "Goose",
|
|
260
|
+
"description": "An open-source AI developer agent by Block",
|
|
261
|
+
"homepage": "https://github.com/block/goose",
|
|
262
|
+
"tags": [
|
|
263
|
+
"coding",
|
|
264
|
+
"developer",
|
|
265
|
+
"open-source"
|
|
266
|
+
],
|
|
267
|
+
"install": {
|
|
268
|
+
"binary": "goose",
|
|
269
|
+
"macos": "curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | bash",
|
|
270
|
+
"linux": "curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | bash",
|
|
271
|
+
"windows": "powershell -c \\\"irm https://raw.githubusercontent.com/block/goose/main/download_cli.ps1 | iex\\\""
|
|
272
|
+
}
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
"name": "nanoclaw",
|
|
276
|
+
"label": "NanoClaw",
|
|
277
|
+
"description": "Lightweight containerized coding agent built on Claude Agent SDK",
|
|
278
|
+
"homepage": "https://github.com/qwibitai/nanoclaw",
|
|
279
|
+
"tags": [
|
|
280
|
+
"coding",
|
|
281
|
+
"container",
|
|
282
|
+
"lightweight",
|
|
283
|
+
"open-source"
|
|
284
|
+
],
|
|
285
|
+
"builtin": true,
|
|
286
|
+
"install": {
|
|
287
|
+
"binary": "nanoclaw",
|
|
288
|
+
"api_only": true,
|
|
289
|
+
"requires": [
|
|
290
|
+
"nodejs",
|
|
291
|
+
"git"
|
|
292
|
+
],
|
|
293
|
+
"macos": "echo 'NanoClaw uses direct API mode — no binary install needed'",
|
|
294
|
+
"linux": "echo 'NanoClaw uses direct API mode — no binary install needed'",
|
|
295
|
+
"windows": "echo 'NanoClaw uses direct API mode — no binary install needed'"
|
|
296
|
+
},
|
|
297
|
+
"adapter": {
|
|
298
|
+
"module": "openagents.adapters.nanoclaw",
|
|
299
|
+
"class": "NanoClawAdapter"
|
|
300
|
+
},
|
|
301
|
+
"launch": {
|
|
302
|
+
"args": [
|
|
303
|
+
null
|
|
304
|
+
]
|
|
305
|
+
},
|
|
306
|
+
"env_config": [
|
|
307
|
+
{
|
|
308
|
+
"name": "OPENAI_API_KEY",
|
|
309
|
+
"description": "API key for LLM inference",
|
|
310
|
+
"required": true,
|
|
311
|
+
"password": true
|
|
312
|
+
}
|
|
313
|
+
],
|
|
314
|
+
"check_ready": {
|
|
315
|
+
"env_vars": [
|
|
316
|
+
"OPENAI_API_KEY"
|
|
317
|
+
],
|
|
318
|
+
"saved_env_key": "OPENAI_API_KEY",
|
|
319
|
+
"not_ready_message": "No API key — press e to configure"
|
|
320
|
+
},
|
|
321
|
+
"resolve_env": {
|
|
322
|
+
"rules": [
|
|
323
|
+
{
|
|
324
|
+
"from": "LLM_API_KEY",
|
|
325
|
+
"to": "OPENAI_API_KEY"
|
|
326
|
+
},
|
|
327
|
+
{
|
|
328
|
+
"from": "LLM_BASE_URL",
|
|
329
|
+
"to": "OPENAI_BASE_URL"
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
"from": "LLM_MODEL",
|
|
333
|
+
"to": "NANOCLAW_MODEL"
|
|
334
|
+
}
|
|
335
|
+
]
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"name": "openclaw",
|
|
340
|
+
"label": "OpenClaw",
|
|
341
|
+
"description": "Open-source coding agent with multi-model support",
|
|
342
|
+
"homepage": "https://github.com/openagents/openclaw",
|
|
343
|
+
"tags": [
|
|
344
|
+
"coding",
|
|
345
|
+
"open-source"
|
|
346
|
+
],
|
|
347
|
+
"builtin": true,
|
|
348
|
+
"install": {
|
|
349
|
+
"binary": "openclaw",
|
|
350
|
+
"requires": [
|
|
351
|
+
"nodejs>=22",
|
|
352
|
+
"git"
|
|
353
|
+
],
|
|
354
|
+
"macos": "npm install -g openclaw@latest",
|
|
355
|
+
"linux": "npm install -g openclaw@latest",
|
|
356
|
+
"windows": "npm install -g openclaw@latest"
|
|
357
|
+
},
|
|
358
|
+
"adapter": {
|
|
359
|
+
"module": "openagents.adapters.openclaw",
|
|
360
|
+
"class": "OpenClawAdapter",
|
|
361
|
+
"options": {
|
|
362
|
+
"openclaw_host": "127.0.0.1",
|
|
363
|
+
"openclaw_port": 18789,
|
|
364
|
+
"openclaw_agent_id": "main"
|
|
365
|
+
}
|
|
366
|
+
},
|
|
367
|
+
"env_config": [
|
|
368
|
+
{
|
|
369
|
+
"name": "LLM_API_KEY",
|
|
370
|
+
"description": "API key",
|
|
371
|
+
"required": true,
|
|
372
|
+
"password": true
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
"name": "LLM_BASE_URL",
|
|
376
|
+
"description": "API base URL (OpenAI-compatible endpoint)",
|
|
377
|
+
"required": false,
|
|
378
|
+
"default": "https://api.openai.com/v1",
|
|
379
|
+
"placeholder": "https://api.openai.com/v1"
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
"name": "LLM_MODEL",
|
|
383
|
+
"description": "Model name",
|
|
384
|
+
"required": false,
|
|
385
|
+
"placeholder": "gpt-4o, claude-sonnet-4-20250514, deepseek-chat, etc."
|
|
386
|
+
}
|
|
387
|
+
],
|
|
388
|
+
"resolve_env": {
|
|
389
|
+
"rules": [
|
|
390
|
+
{
|
|
391
|
+
"from": "LLM_API_KEY",
|
|
392
|
+
"to": "OPENAI_API_KEY",
|
|
393
|
+
"unless_base_url_contains": "anthropic"
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
"from": "LLM_API_KEY",
|
|
397
|
+
"to": "ANTHROPIC_API_KEY",
|
|
398
|
+
"if_base_url_contains": "anthropic"
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
"from": "LLM_BASE_URL",
|
|
402
|
+
"to": "OPENAI_BASE_URL"
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
"from": "LLM_MODEL",
|
|
406
|
+
"to": "OPENCLAW_MODEL"
|
|
407
|
+
}
|
|
408
|
+
]
|
|
409
|
+
},
|
|
410
|
+
"check_ready": {
|
|
411
|
+
"env_vars": [
|
|
412
|
+
"ANTHROPIC_API_KEY",
|
|
413
|
+
"OPENAI_API_KEY"
|
|
414
|
+
],
|
|
415
|
+
"saved_env_key": "LLM_API_KEY",
|
|
416
|
+
"not_ready_message": "Not configured — press e to configure"
|
|
417
|
+
}
|
|
418
|
+
},
|
|
419
|
+
{
|
|
420
|
+
"name": "opencode",
|
|
421
|
+
"label": "OpenCode",
|
|
422
|
+
"description": "Open-source terminal-native AI coding agent",
|
|
423
|
+
"homepage": "https://opencode.ai",
|
|
424
|
+
"tags": [
|
|
425
|
+
"coding",
|
|
426
|
+
"open-source",
|
|
427
|
+
"cli",
|
|
428
|
+
"terminal"
|
|
429
|
+
],
|
|
430
|
+
"install": {
|
|
431
|
+
"binary": "opencode",
|
|
432
|
+
"requires": [
|
|
433
|
+
"nodejs"
|
|
434
|
+
],
|
|
435
|
+
"macos": "npm install -g opencode-ai@latest",
|
|
436
|
+
"linux": "npm install -g opencode-ai@latest",
|
|
437
|
+
"windows": "npm install -g opencode-ai@latest"
|
|
438
|
+
}
|
|
439
|
+
},
|
|
440
|
+
{
|
|
441
|
+
"name": "swebench",
|
|
442
|
+
"label": "SWE-bench Agent",
|
|
443
|
+
"description": "Language model agent for software engineering tasks",
|
|
444
|
+
"homepage": "https://swe-agent.com",
|
|
445
|
+
"tags": [
|
|
446
|
+
"coding",
|
|
447
|
+
"benchmarks",
|
|
448
|
+
"research"
|
|
449
|
+
],
|
|
450
|
+
"install": {
|
|
451
|
+
"binary": "sweagent",
|
|
452
|
+
"macos": "pip install sweagent",
|
|
453
|
+
"linux": "pip install sweagent",
|
|
454
|
+
"windows": "pip install sweagent"
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
]
|