@eugene218/noxdev 1.0.0 → 1.0.2
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 +30 -0
- package/dist/dashboard/api/server.js +2 -2
- package/dist/dashboard/assets/index-CiAjd0j2.js +102 -0
- package/dist/dashboard/index.html +1 -1
- package/dist/index.js +975 -350
- package/docker/Dockerfile +26 -0
- package/package.json +5 -2
- package/templates/demo-tasks.md +168 -0
- package/dist/dashboard/assets/index-DH8xJMbY.js +0 -102
package/README.md
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# noxdev CLI
|
|
2
|
+
|
|
3
|
+
Autonomous overnight coding agent orchestrator — ship code while you sleep.
|
|
4
|
+
|
|
5
|
+
## Requirements
|
|
6
|
+
|
|
7
|
+
- **Node.js**: Requires Node.js 20.x or 22.x (LTS versions only)
|
|
8
|
+
- Docker (with daemon running)
|
|
9
|
+
- Git
|
|
10
|
+
- Claude CLI (`claude login` required)
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
npm install -g noxdev
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Quick Start
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
noxdev doctor # check prerequisites
|
|
22
|
+
noxdev init my-project --repo ~/my-repo # register a project
|
|
23
|
+
# write tasks in ~/worktrees/my-project/TASKS.md
|
|
24
|
+
noxdev run my-project # run task loop
|
|
25
|
+
noxdev status my-project # morning summary
|
|
26
|
+
noxdev merge my-project # approve/reject commits
|
|
27
|
+
noxdev dashboard # visual review UI
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
For full documentation, see the [main README](../../README.md).
|
|
@@ -203,7 +203,7 @@ router2.post("/:id/tasks/:taskId/merge", (req, res) => {
|
|
|
203
203
|
}
|
|
204
204
|
const updateQuery = `
|
|
205
205
|
UPDATE task_results
|
|
206
|
-
SET merge_decision =
|
|
206
|
+
SET merge_decision = LOWER(?), merged_at = datetime('now')
|
|
207
207
|
WHERE run_id = ? AND task_id = ?
|
|
208
208
|
`;
|
|
209
209
|
const result = db.prepare(updateQuery).run(decision, runId, taskId);
|
|
@@ -233,7 +233,7 @@ router3.post("/:projectId", (req, res) => {
|
|
|
233
233
|
SELECT tr.run_id, tr.task_id, tr.diff_file
|
|
234
234
|
FROM task_results tr
|
|
235
235
|
JOIN runs r ON tr.run_id = r.id
|
|
236
|
-
WHERE r.project_id = ? AND tr.merge_decision = 'approved' AND tr.merged_at IS NOT NULL
|
|
236
|
+
WHERE r.project_id = ? AND LOWER(tr.merge_decision) = 'approved' AND tr.merged_at IS NOT NULL
|
|
237
237
|
`;
|
|
238
238
|
const approvedTasks = db.prepare(approvedTasksQuery).all(projectId);
|
|
239
239
|
const count = approvedTasks.length;
|