@mandors/cli 0.2.1 → 0.2.3

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.
@@ -0,0 +1,9 @@
1
+ {"layer":"project","type":"created","id":"api","by":"BUDISANTOSO","ts":"2026-01-30T07:25:46.812207Z"}
2
+ {"layer":"feature","type":"created","id":"api-feature-LfrH","by":"BUDISANTOSO","ts":"2026-01-30T07:25:51.075751Z"}
3
+ {"layer":"task","type":"created","id":"api-feature-LfrH-task-AAd2","by":"BUDISANTOSO","ts":"2026-01-30T07:25:51.10241Z"}
4
+ {"layer":"task","type":"ready","id":"api-feature-LfrH-task-AAd2","by":"system","ts":"2026-01-30T07:25:51.10241Z"}
5
+ {"layer":"task","type":"created","id":"api-feature-LfrH-task-qvlw","by":"BUDISANTOSO","ts":"2026-01-30T07:25:51.12448Z"}
6
+ {"layer":"task","type":"blocked","id":"api-feature-LfrH-task-qvlw","by":"system","ts":"2026-01-30T07:25:51.12448Z"}
7
+ {"layer":"task","type":"updated","id":"api-feature-LfrH-task-AAd2","by":"BUDISANTOSO","ts":"2026-01-30T07:25:54.676119Z","changes":["status"]}
8
+ {"layer":"task","type":"ready","id":"api-feature-LfrH-task-qvlw","by":"system","ts":"2026-01-30T07:25:54.711899Z"}
9
+ {"layer":"task","type":"updated","id":"api-feature-LfrH-task-AAd2","by":"BUDISANTOSO","ts":"2026-01-30T07:25:54.711615Z","changes":["status","dependent_unblocked"]}
@@ -0,0 +1 @@
1
+ {"id":"api-feature-LfrH","project_id":"api","name":"Feature","goal":"Feature","priority":"P3","status":"draft","created_at":"2026-01-30T07:25:51.075751Z","updated_at":"2026-01-30T07:25:51.075751Z","created_by":"BUDISANTOSO","updated_by":"BUDISANTOSO"}
File without changes
@@ -0,0 +1,11 @@
1
+ {
2
+ "id": "api",
3
+ "name": "API",
4
+ "goal": "This is a comprehensive test project for task and issue dependency testing. The goal is to implement a complete system that demonstrates proper handling of dependencies within a single project and across multiple projects when configured. This includes task management, issue tracking, feature coordination, and comprehensive reporting capabilities. All code will follow best practices and coding standards. Documentation will be maintained throughout the development process and updated regularly as needed.",
5
+ "status": "initial",
6
+ "strict": false,
7
+ "created_at": "2026-01-30T07:25:46.812207Z",
8
+ "updated_at": "2026-01-30T07:25:46.812207Z",
9
+ "created_by": "BUDISANTOSO",
10
+ "updated_by": "BUDISANTOSO"
11
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "version": "mandor.v1",
3
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
4
+ "rules": {
5
+ "task": {
6
+ "dependency": "same_project_only",
7
+ "cycle": "disallowed"
8
+ },
9
+ "feature": {
10
+ "dependency": "cross_project_allowed",
11
+ "cycle": "disallowed"
12
+ },
13
+ "issue": {
14
+ "dependency": "same_project_only",
15
+ "cycle": "disallowed"
16
+ },
17
+ "priority": {
18
+ "levels": [
19
+ "P0",
20
+ "P1",
21
+ "P2",
22
+ "P3",
23
+ "P4",
24
+ "P5"
25
+ ],
26
+ "default": "P3"
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,2 @@
1
+ {"id":"api-feature-LfrH-task-AAd2","feature_id":"api-feature-LfrH","project_id":"api","name":"Task 1","goal":"Task 1","priority":"P3","status":"done","implementation_steps":["step"],"test_cases":["test"],"derivable_files":["f"],"library_needs":["none"],"created_at":"2026-01-30T07:25:51.10241Z","updated_at":"2026-01-30T07:25:54.711615Z","created_by":"BUDISANTOSO","updated_by":"BUDISANTOSO"}
2
+ {"id":"api-feature-LfrH-task-qvlw","feature_id":"api-feature-LfrH","project_id":"api","name":"Task 2","goal":"Task 2","priority":"P3","status":"ready","depends_on":["api-feature-LfrH-task-AAd2"],"implementation_steps":["step"],"test_cases":["test"],"derivable_files":["f"],"library_needs":["none"],"created_at":"2026-01-30T07:25:51.12448Z","updated_at":"2026-01-30T07:25:54.711899Z","created_by":"BUDISANTOSO","updated_by":"BUDISANTOSO"}
@@ -0,0 +1,13 @@
1
+ {
2
+ "id": "7KiL",
3
+ "name": "Mandor",
4
+ "version": "mandor.v1",
5
+ "schema_version": "mandor.v1",
6
+ "created_at": "2026-01-30T07:25:32.126001Z",
7
+ "last_updated_at": "2026-01-30T07:25:32.126001Z",
8
+ "created_by": "BUDISANTOSO",
9
+ "config": {
10
+ "default_priority": "P3",
11
+ "strict_mode": false
12
+ }
13
+ }
package/README.md CHANGED
@@ -179,9 +179,10 @@ mandor project create api --name "API Service" --goal "Implement REST API"
179
179
  # 3. Create feature
180
180
  mandor feature create "User Auth" --project api --goal "Implement login/logout"
181
181
 
182
- # 4. Create task
182
+ # 4. Get feature ID and create task
183
+ FEATURE_ID=$(mandor feature list --project api --json | jq -r '.[0].id')
183
184
  mandor task create "Password Hashing" \
184
- --feature api-feature-xxx \
185
+ --feature $FEATURE_ID \
185
186
  --goal "Implement bcrypt hashing" \
186
187
  --implementation-steps "Install bcrypt,Create utility,Write tests" \
187
188
  --test-cases "Hash validation,Password comparison" \
@@ -238,6 +239,8 @@ mandor status
238
239
 
239
240
  **Status flow:** `pending` → `ready` → `in_progress` → `done` (or `blocked` → `cancelled`)
240
241
 
242
+ **Note on `--library-needs`:** This flag is required. Provide comma-separated library names (e.g., `"bcrypt,lodash"`), or use `"none"` if the task requires no new external libraries.
243
+
241
244
  ### Issue
242
245
 
243
246
  | Command | Description |
@@ -358,24 +361,43 @@ Cannot cancel entities that other entities depend on. Use `--force` to override.
358
361
  mandor init "My Project"
359
362
  mandor project create api --name "API Service" --goal "Implement API"
360
363
 
364
+ # Create features
361
365
  mandor feature create "User Auth" --project api --goal "Login/logout/registration"
362
- mandor feature create "Payments" --project api --goal "Stripe integration" \
363
- --depends api-feature-xxx
364
366
 
365
- FEATURE_ID=$(mandor feature list --project api --json | jq -r '.[0].id')
367
+ # Get feature ID for creating tasks
368
+ AUTH_FEATURE_ID=$(mandor feature list --project api --json | jq -r '.[] | select(.name == "User Auth") | .id')
369
+
370
+ # Create tasks under the User Auth feature
366
371
  mandor task create "Password Hashing" \
367
- --feature $FEATURE_ID \
368
- --goal "Implement bcrypt" \
372
+ --feature $AUTH_FEATURE_ID \
373
+ --goal "Implement bcrypt hashing" \
369
374
  --implementation-steps "Install bcrypt,Create utility,Write tests" \
370
- --test-cases "Hash validation" \
375
+ --test-cases "Hash validation,Password comparison" \
371
376
  --derivable-files "src/utils/password.ts" \
372
377
  --library-needs "bcrypt"
373
378
 
374
- mandor issue create "Fix memory leak" --project api \
375
- --type bug --goal "Fix goroutine leak" \
376
- --affected-files "src/handlers/auth.go" \
377
- --affected-tests "src/handlers/auth_test.go" \
378
- --implementation-steps "Identify leak,Add cleanup"
379
+ mandor task create "JWT Token Management" \
380
+ --feature $AUTH_FEATURE_ID \
381
+ --goal "Implement JWT token generation and validation" \
382
+ --implementation-steps "Review JWT spec,Implement token generation,Add validation middleware" \
383
+ --test-cases "Token generation works,Token validation works,Expired tokens rejected" \
384
+ --derivable-files "src/utils/jwt.ts,src/middleware/auth.ts" \
385
+ --library-needs "jsonwebtoken"
386
+
387
+ # Task with no new external libraries
388
+ mandor task create "Update Login Endpoint" \
389
+ --feature $AUTH_FEATURE_ID \
390
+ --goal "Refactor existing login endpoint" \
391
+ --implementation-steps "Review current endpoint,Refactor logic,Update tests" \
392
+ --test-cases "Endpoint returns correct status,Authentication works,Errors handled" \
393
+ --derivable-files "src/handlers/auth.ts" \
394
+ --library-needs "none"
395
+
396
+ mandor issue create "Fix security vulnerability" --project api \
397
+ --type security --goal "Fix JWT signing vulnerability" \
398
+ --affected-files "src/utils/jwt.ts" \
399
+ --affected-tests "src/utils/jwt.test.ts" \
400
+ --implementation-steps "Review JWT library,Update to secure version,Verify signature"
379
401
 
380
402
  mandor status
381
403
  ```
Binary file
Binary file
Binary file
Binary file
package/mandor ADDED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mandors/cli",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "description": "Event-based task manager CLI for AI agent workflows",
5
5
  "main": "npm/lib/index.js",
6
6
  "bin": {