@cyanautomation/kaseki-agent 1.10.2 → 1.10.4
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 +19 -1
- package/dist/config/ConfigManager.js +1 -1
- package/dist/docker/DockerManager.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -93,7 +93,7 @@ docker run -it \
|
|
|
93
93
|
kaseki-agent doctor
|
|
94
94
|
```
|
|
95
95
|
|
|
96
|
-
### **2.5. Configure Authentication**
|
|
96
|
+
### **2.5. Configure Authentication**
|
|
97
97
|
|
|
98
98
|
Kaseki needs three sets of credentials. Choose your preferred setup method:
|
|
99
99
|
|
|
@@ -168,6 +168,7 @@ kaseki-agent setup
|
|
|
168
168
|
```
|
|
169
169
|
|
|
170
170
|
**What it does:**
|
|
171
|
+
|
|
171
172
|
- Validates Docker installation and daemon
|
|
172
173
|
- Checks Node.js v24+ availability
|
|
173
174
|
- Validates git installation
|
|
@@ -182,6 +183,7 @@ kaseki-agent run <REPO_URL> [GIT_REF] [TASK_PROMPT]
|
|
|
182
183
|
```
|
|
183
184
|
|
|
184
185
|
**Examples:**
|
|
186
|
+
|
|
185
187
|
```bash
|
|
186
188
|
# Simple execution (uses main branch)
|
|
187
189
|
kaseki-agent run https://github.com/CyanAutomation/crudmapper
|
|
@@ -195,6 +197,7 @@ kaseki-agent run https://github.com/CyanAutomation/crudmapper main \
|
|
|
195
197
|
```
|
|
196
198
|
|
|
197
199
|
**Execution Flow:**
|
|
200
|
+
|
|
198
201
|
1. Pre-flight checks (docker, node, npm, git, API key)
|
|
199
202
|
2. Auto-pull Docker image (if needed)
|
|
200
203
|
3. Create instance directories (workspace + results)
|
|
@@ -209,6 +212,7 @@ kaseki-agent doctor [--json] [--fix]
|
|
|
209
212
|
```
|
|
210
213
|
|
|
211
214
|
**Checks:**
|
|
215
|
+
|
|
212
216
|
- Docker daemon availability
|
|
213
217
|
- Node.js v24+ validation
|
|
214
218
|
- npm availability
|
|
@@ -218,6 +222,7 @@ kaseki-agent doctor [--json] [--fix]
|
|
|
218
222
|
- Disk space availability
|
|
219
223
|
|
|
220
224
|
**Options:**
|
|
225
|
+
|
|
221
226
|
- `--json` — JSON output (useful for scripts)
|
|
222
227
|
- `--fix` — Attempt auto-remediation (pull image, show install hints)
|
|
223
228
|
|
|
@@ -228,6 +233,7 @@ kaseki-agent list [--status STATE]
|
|
|
228
233
|
```
|
|
229
234
|
|
|
230
235
|
**Filter by status:**
|
|
236
|
+
|
|
231
237
|
```bash
|
|
232
238
|
kaseki-agent list --status completed
|
|
233
239
|
kaseki-agent list --status failed
|
|
@@ -235,6 +241,7 @@ kaseki-agent list --status running
|
|
|
235
241
|
```
|
|
236
242
|
|
|
237
243
|
**Output:**
|
|
244
|
+
|
|
238
245
|
- Instance ID
|
|
239
246
|
- Status (running/completed/failed)
|
|
240
247
|
- Creation date
|
|
@@ -247,6 +254,7 @@ kaseki-agent report <INSTANCE_ID>
|
|
|
247
254
|
```
|
|
248
255
|
|
|
249
256
|
**Shows:**
|
|
257
|
+
|
|
250
258
|
- Instance metadata (repo, branch, model, status)
|
|
251
259
|
- Execution stages with timing
|
|
252
260
|
- Final status and exit code
|
|
@@ -259,6 +267,7 @@ kaseki-agent config <SUBCOMMAND> [OPTIONS]
|
|
|
259
267
|
```
|
|
260
268
|
|
|
261
269
|
**Subcommands:**
|
|
270
|
+
|
|
262
271
|
```bash
|
|
263
272
|
# Get a value
|
|
264
273
|
kaseki-agent config get agent.timeout_seconds
|
|
@@ -283,6 +292,7 @@ kaseki-agent secrets <SUBCOMMAND>
|
|
|
283
292
|
```
|
|
284
293
|
|
|
285
294
|
**Subcommands:**
|
|
295
|
+
|
|
286
296
|
```bash
|
|
287
297
|
# Initialize keyring
|
|
288
298
|
kaseki-agent secrets init
|
|
@@ -304,6 +314,7 @@ kaseki-agent secrets list
|
|
|
304
314
|
```
|
|
305
315
|
|
|
306
316
|
**Storage:**
|
|
317
|
+
|
|
307
318
|
- Linux: Uses `pass` (password-store) keyring
|
|
308
319
|
- Headless: Falls back to `~/.kaseki/secrets/` (0600 permissions)
|
|
309
320
|
|
|
@@ -324,6 +335,7 @@ kaseki-agent serve --port 9000
|
|
|
324
335
|
```
|
|
325
336
|
|
|
326
337
|
**API Endpoints:**
|
|
338
|
+
|
|
327
339
|
- `GET /health` — Service health check
|
|
328
340
|
- `GET /api/runs` — List instances
|
|
329
341
|
- `POST /api/runs` — Start new run
|
|
@@ -381,26 +393,32 @@ KASEKI_VALIDATION_COMMANDS="npm run check;npm run test;npm run build"
|
|
|
381
393
|
### Deployment Patterns
|
|
382
394
|
|
|
383
395
|
**1. CLI (Direct Execution)**
|
|
396
|
+
|
|
384
397
|
```bash
|
|
385
398
|
kaseki-agent run <repo> <ref>
|
|
386
399
|
```
|
|
400
|
+
|
|
387
401
|
- Single-step orchestration
|
|
388
402
|
- Immediate results
|
|
389
403
|
- Best for: CI/CD, direct usage
|
|
390
404
|
|
|
391
405
|
**2. REST API (Distributed)**
|
|
406
|
+
|
|
392
407
|
```bash
|
|
393
408
|
kaseki-agent serve --port 8080
|
|
394
409
|
# Then: POST /api/runs with repo/ref
|
|
395
410
|
```
|
|
411
|
+
|
|
396
412
|
- Long-running service
|
|
397
413
|
- Async execution
|
|
398
414
|
- Best for: Controllers, distributed systems
|
|
399
415
|
|
|
400
416
|
**3. Docker (Self-Contained)**
|
|
417
|
+
|
|
401
418
|
```bash
|
|
402
419
|
docker run docker.io/cyanautomation/kaseki-agent:latest run <repo> <ref>
|
|
403
420
|
```
|
|
421
|
+
|
|
404
422
|
- No host dependencies
|
|
405
423
|
- Full isolation
|
|
406
424
|
- Best for: Clean environments, CI/CD containers
|
|
@@ -167,7 +167,7 @@ export class DockerManager {
|
|
|
167
167
|
args.push('--read-only');
|
|
168
168
|
args.push('--cap-drop=ALL');
|
|
169
169
|
args.push('--security-opt', 'no-new-privileges:true');
|
|
170
|
-
args.push('-u', '
|
|
170
|
+
args.push('-u', '10000:10000');
|
|
171
171
|
// Temporary filesystems for writable areas
|
|
172
172
|
args.push('--tmpfs', '/tmp:rw,nosuid,nodev,noexec');
|
|
173
173
|
args.push('--tmpfs', '/var/tmp:rw,nosuid,nodev,noexec');
|
package/package.json
CHANGED