codeninja 3.2.0 → 4.0.1

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.
Files changed (111) hide show
  1. package/README.md +15 -4
  2. package/agent/database-agent.md +24 -1
  3. package/agent/nodejs-agent.md +79 -0
  4. package/cli.js +27 -7
  5. package/commands/audit.workflow.md +4 -1
  6. package/commands/db-create-table.workflow.md +1 -1
  7. package/commands/initialize-project.workflow.md +21 -0
  8. package/ide/antigravity/.agents/personas/database-architect.md +431 -153
  9. package/ide/antigravity/.agents/personas/global-orchestrator.md +202 -85
  10. package/ide/antigravity/.agents/personas/nodejs-backend.md +368 -133
  11. package/ide/antigravity/.agents/personas/reactjs-frontend.md +182 -101
  12. package/ide/antigravity/.agents/skills/api-builder/SKILL.md +58 -0
  13. package/ide/antigravity/.agents/skills/code-intelligence/SKILL.md +22 -0
  14. package/ide/antigravity/.agents/skills/database/SKILL.md +32 -0
  15. package/ide/antigravity/.agents/skills/mcp-and-context/SKILL.md +76 -82
  16. package/ide/antigravity/.agents/skills/reactjs/SKILL.md +36 -0
  17. package/ide/antigravity/.agents/workflows/codeninja-api.md +76 -83
  18. package/ide/antigravity/.agents/workflows/codeninja-audit.md +82 -44
  19. package/ide/antigravity/.agents/workflows/codeninja-db-create.md +107 -94
  20. package/ide/antigravity/.agents/workflows/codeninja-db-drop.md +89 -67
  21. package/ide/antigravity/.agents/workflows/codeninja-db-index.md +86 -54
  22. package/ide/antigravity/.agents/workflows/codeninja-db-modify.md +126 -68
  23. package/ide/antigravity/.agents/workflows/codeninja-db-seed.md +87 -59
  24. package/ide/antigravity/.agents/workflows/codeninja-db-sync.md +77 -41
  25. package/ide/antigravity/.agents/workflows/codeninja-debug.md +35 -21
  26. package/ide/antigravity/.agents/workflows/codeninja-design.md +49 -35
  27. package/ide/antigravity/.agents/workflows/codeninja-explain.md +41 -20
  28. package/ide/antigravity/.agents/workflows/codeninja-init.md +479 -289
  29. package/ide/antigravity/.agents/workflows/codeninja-integrate-api.md +253 -136
  30. package/ide/antigravity/.agents/workflows/codeninja-modularize.md +250 -132
  31. package/ide/antigravity/.agents/workflows/codeninja-optimize.md +71 -29
  32. package/ide/antigravity/.agents/workflows/codeninja-refactor.md +50 -42
  33. package/ide/antigravity/.agents/workflows/codeninja-review.md +38 -21
  34. package/ide/antigravity/.agents/workflows/codeninja-sync.md +922 -141
  35. package/ide/antigravity/.agents/workflows/codeninja-test.md +34 -49
  36. package/ide/antigravity/.agents/workflows/codeninja-validate-page.md +449 -151
  37. package/ide/claude-code/.claude/CLAUDE.md +99 -0
  38. package/ide/claude-code/.claude/agents/database-agent.md +535 -0
  39. package/ide/claude-code/.claude/agents/nodejs-agent.md +493 -0
  40. package/ide/claude-code/.claude/agents/reactjs-agent.md +267 -0
  41. package/ide/claude-code/.claude/commands/codeninja-api.md +104 -0
  42. package/ide/claude-code/.claude/commands/codeninja-audit.md +119 -0
  43. package/ide/claude-code/.claude/commands/codeninja-db-create.md +138 -0
  44. package/ide/claude-code/.claude/commands/codeninja-db-drop.md +109 -0
  45. package/ide/claude-code/.claude/commands/codeninja-db-index.md +103 -0
  46. package/ide/claude-code/.claude/commands/codeninja-db-modify.md +165 -0
  47. package/ide/claude-code/.claude/commands/codeninja-db-seed.md +104 -0
  48. package/ide/claude-code/.claude/commands/codeninja-db-sync.md +106 -0
  49. package/ide/claude-code/.claude/commands/codeninja-debug.md +99 -0
  50. package/ide/claude-code/.claude/commands/codeninja-design.md +68 -0
  51. package/ide/claude-code/.claude/commands/codeninja-explain.md +61 -0
  52. package/ide/claude-code/.claude/commands/codeninja-init.md +529 -0
  53. package/ide/claude-code/.claude/commands/codeninja-integrate-api.md +453 -0
  54. package/ide/claude-code/.claude/commands/codeninja-modularize.md +334 -0
  55. package/ide/claude-code/.claude/commands/codeninja-optimize.md +129 -0
  56. package/ide/claude-code/.claude/commands/codeninja-refactor.md +76 -0
  57. package/ide/claude-code/.claude/commands/codeninja-review.md +87 -0
  58. package/ide/claude-code/.claude/commands/codeninja-sync.md +964 -0
  59. package/ide/claude-code/.claude/commands/codeninja-test.md +45 -0
  60. package/ide/claude-code/.claude/commands/codeninja-validate-page.md +548 -0
  61. package/ide/cursor/.cursor/rules/01-global-orchestrator.mdc +12 -13
  62. package/ide/cursor/.cursor/rules/02-mcp-and-context.mdc +47 -31
  63. package/ide/cursor/.cursor/rules/03-api-builder.mdc +32 -110
  64. package/ide/cursor/.cursor/rules/04-nodejs-generation.mdc +58 -0
  65. package/ide/cursor/.cursor/rules/05-database.mdc +54 -0
  66. package/ide/cursor/.cursor/rules/06-reactjs.mdc +36 -0
  67. package/ide/cursor/.cursor/rules/07-reactjs-generation.mdc +49 -0
  68. package/ide/cursor/.cursor/rules/08-code-intelligence.mdc +56 -0
  69. package/ide/cursor/.cursor/rules/09-workflow-steps.mdc +53 -0
  70. package/ide/vscode/.github/copilot-instructions.md +67 -382
  71. package/ide/vscode/.vscode/instructions/code-intelligence.instructions.md +58 -0
  72. package/ide/vscode/.vscode/instructions/database.instructions.md +55 -0
  73. package/ide/vscode/.vscode/instructions/nodejs.instructions.md +77 -0
  74. package/ide/vscode/.vscode/instructions/reactjs.instructions.md +42 -0
  75. package/package.json +2 -2
  76. package/tasks/ask-hashing-library.task.md +31 -0
  77. package/tasks/ask-language-type.task.md +26 -0
  78. package/tasks/ask-new-module-name.task.md +13 -0
  79. package/tasks/ask-new-service-name.task.md +13 -0
  80. package/tasks/ask-old-module-name.task.md +15 -0
  81. package/tasks/ask-old-service-name.task.md +13 -0
  82. package/tasks/ask-orm-type.task.md +26 -0
  83. package/tasks/collect-seed-data.task.md +19 -0
  84. package/tasks/generate-app.task.md +42 -0
  85. package/tasks/generate-common.task.md +13 -0
  86. package/tasks/generate-constants.task.md +13 -0
  87. package/tasks/generate-database.task.md +32 -0
  88. package/tasks/generate-encryption.task.md +28 -0
  89. package/tasks/generate-fast-defaults.task.md +7 -0
  90. package/tasks/generate-hashing.task.md +180 -0
  91. package/tasks/generate-headerValidator.task.md +13 -0
  92. package/tasks/generate-ioRedis.task.md +20 -0
  93. package/tasks/generate-language-en.task.md +12 -0
  94. package/tasks/generate-logging.task.md +12 -0
  95. package/tasks/generate-model.task.md +74 -6
  96. package/tasks/generate-notification.task.md +12 -0
  97. package/tasks/generate-package-json.task.md +69 -0
  98. package/tasks/generate-prisma-client.task.md +56 -0
  99. package/tasks/generate-prisma-schema.task.md +71 -0
  100. package/tasks/generate-rateLimiter.task.md +20 -0
  101. package/tasks/generate-readme.task.md +24 -0
  102. package/tasks/generate-response.task.md +27 -0
  103. package/tasks/generate-route-manager.task.md +32 -0
  104. package/tasks/generate-route.task.md +37 -0
  105. package/tasks/generate-swagger.task.md +8 -0
  106. package/tasks/generate-template.task.md +12 -0
  107. package/tasks/generate-tsconfig.task.md +38 -0
  108. package/tasks/generate-validator.task.md +31 -0
  109. package/ide/cursor/.cursor/rules/04-database.mdc +0 -90
  110. package/ide/cursor/.cursor/rules/05-reactjs.mdc +0 -147
  111. package/ide/cursor/.cursor/rules/06-code-intelligence.mdc +0 -112
@@ -1,61 +1,46 @@
1
+ This workflow runs when user invokes /codeninja:test
2
+
1
3
  ---
2
- slash_command: /codeninja:test
3
- personas: [global-orchestrator, nodejs-backend]
4
- skills: [mcp-and-context, api-builder, code-intelligence]
5
- description: Generate or run Jest + Supertest tests for a NodeJS module.
4
+ type: workflow
5
+ name: test
6
+ description: >
7
+ Generate or run Jest + Supertest tests for a module in an existing NodeJS service.
6
8
  ---
7
9
 
8
- # /codeninja:test
9
-
10
- ## Before Running
11
- 1. Call `context_read`
12
- 2. Call `context_check_stale`
13
-
14
- ## Execution — Full Step-by-Step
10
+ # Workflow: @test
15
11
 
16
- **Step 1.** Ask: "Which service?" (list from `context.services`)
17
- - Store: `context.current_test.service_name`
12
+ ## Goal
13
+ Generate a complete test file for an existing API module, covering happy path,
14
+ validation errors, auth failures, and edge cases.
18
15
 
19
- **Step 2.** Ask: "Which module?" (list from `context.services[<n>].modules`)
20
- - Store: `context.current_test.module_name`
21
-
22
- **Step 3.** Ask: "Generate new tests or run existing tests?"
23
- - Option 1: Generate new tests
24
- - Option 2: Run existing tests
25
- - Store: `context.current_test.type`
16
+ ---
26
17
 
27
- **Step 4.** If `generate`:
28
- - Read `modules/<version>/<Module>/route.js` from disk
29
- - Read `modules/<version>/<Module>/<module>_model.js` from disk
30
- - Read `context.api_routes` for this module
31
- - Delegate to nodejs-agent → generate `tests/<version>/<Module>.test.js`
18
+ ## Step-by-Step Execution
32
19
 
33
- Generated test file covers:
34
- - 200 happy path for each endpoint
35
- - 400 validation failures (missing required fields, wrong types)
36
- - 401 missing or invalid API key header
37
- - 401 missing or invalid auth token (for protected routes)
38
- - 404 not found (where applicable)
39
- - 500 simulated service error (mock DB failure)
20
+ 1. Run task: `ask-target-service`
21
+ 2. Run task: `ask-module-name` (list available modules from context)
22
+ 3. Run task: `ask-test-type`
23
+ - Options: generate new tests, run existing tests
24
+ - Stores: `context.current_test.type`
40
25
 
41
- Test structure:
42
- ```javascript
43
- const request = require('supertest');
44
- const app = require('../../app');
26
+ 4. If `generate`:
27
+ - Read module's `route.js`, `_validator.js`, `_service.js` from disk
28
+ - Read `context.api_routes` for this module
45
29
 
46
- describe('<Module> POST /<path>', () => {
47
- it('200 happy path', async () => { ... });
48
- it('400 — missing required field', async () => { ... });
49
- it('401 — invalid api-key', async () => { ... });
50
- it('401 — invalid auth token', async () => { ... });
51
- it('404 — record not found', async () => { ... });
52
- });
53
- ```
30
+ > **Multi-agent:** Delegate to `nodejs-backend` via Task invocation for parallel execution.
31
+ > Read `.codeninja/tasks/` before generating each file.
54
32
 
55
- **Step 5.** If `run`:
56
- - Execute: `npm test` inside service directory
57
- - Parse results and display pass/fail summary
33
+ - Delegate to `nodejs-agent` → generate `tests/v1/<Module>.test.js`
34
+ - Test file covers:
35
+ - 200 happy path for each endpoint
36
+ - 400 validation failures
37
+ - 401 missing/invalid API key
38
+ - 404 not found (where applicable)
39
+ - 500 simulated service error
58
40
 
59
- **Step 6.** Call `context_write` → update `context.services[<n>].tests`
41
+ 5. If `run`:
42
+ - Execute: `npm test` inside service directory
43
+ - Parse results and display pass/fail summary
60
44
 
61
- **Step 7.** Show final summary.
45
+ 6. Run task: `write-context` → update `context.services[<n>].tests`
46
+ 7. Run task: `show-final-summary`