jerad-cli 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.
Files changed (53) hide show
  1. package/dist/commands/dev.d.ts +3 -0
  2. package/dist/commands/dev.d.ts.map +1 -0
  3. package/dist/commands/dev.js +149 -0
  4. package/dist/commands/dev.js.map +1 -0
  5. package/dist/commands/link.d.ts +3 -0
  6. package/dist/commands/link.d.ts.map +1 -0
  7. package/dist/commands/link.js +49 -0
  8. package/dist/commands/link.js.map +1 -0
  9. package/dist/commands/login.d.ts +3 -0
  10. package/dist/commands/login.d.ts.map +1 -0
  11. package/dist/commands/login.js +35 -0
  12. package/dist/commands/login.js.map +1 -0
  13. package/dist/commands/logout.d.ts +3 -0
  14. package/dist/commands/logout.d.ts.map +1 -0
  15. package/dist/commands/logout.js +31 -0
  16. package/dist/commands/logout.js.map +1 -0
  17. package/dist/commands/next.d.ts +3 -0
  18. package/dist/commands/next.d.ts.map +1 -0
  19. package/dist/commands/next.js +163 -0
  20. package/dist/commands/next.js.map +1 -0
  21. package/dist/commands/status.d.ts +3 -0
  22. package/dist/commands/status.d.ts.map +1 -0
  23. package/dist/commands/status.js +79 -0
  24. package/dist/commands/status.js.map +1 -0
  25. package/dist/commands/whoami.d.ts +3 -0
  26. package/dist/commands/whoami.d.ts.map +1 -0
  27. package/dist/commands/whoami.js +44 -0
  28. package/dist/commands/whoami.js.map +1 -0
  29. package/dist/index.d.ts +3 -0
  30. package/dist/index.d.ts.map +1 -0
  31. package/dist/index.js +26 -0
  32. package/dist/index.js.map +1 -0
  33. package/dist/lib/api.d.ts +49 -0
  34. package/dist/lib/api.d.ts.map +1 -0
  35. package/dist/lib/api.js +83 -0
  36. package/dist/lib/api.js.map +1 -0
  37. package/dist/lib/claude-code.d.ts +11 -0
  38. package/dist/lib/claude-code.d.ts.map +1 -0
  39. package/dist/lib/claude-code.js +67 -0
  40. package/dist/lib/claude-code.js.map +1 -0
  41. package/dist/lib/config.d.ts +26 -0
  42. package/dist/lib/config.d.ts.map +1 -0
  43. package/dist/lib/config.js +87 -0
  44. package/dist/lib/config.js.map +1 -0
  45. package/dist/lib/git.d.ts +10 -0
  46. package/dist/lib/git.d.ts.map +1 -0
  47. package/dist/lib/git.js +77 -0
  48. package/dist/lib/git.js.map +1 -0
  49. package/dist/ui/task-display.d.ts +22 -0
  50. package/dist/ui/task-display.d.ts.map +1 -0
  51. package/dist/ui/task-display.js +177 -0
  52. package/dist/ui/task-display.js.map +1 -0
  53. package/package.json +52 -0
@@ -0,0 +1,177 @@
1
+ import chalk from 'chalk';
2
+ const BOX_CHARS = {
3
+ topLeft: '┌',
4
+ topRight: '┐',
5
+ bottomLeft: '└',
6
+ bottomRight: '┘',
7
+ horizontal: '─',
8
+ vertical: '│',
9
+ middleLeft: '├',
10
+ middleRight: '┤',
11
+ };
12
+ const ROUND_BOX_CHARS = {
13
+ topLeft: '╭',
14
+ topRight: '╮',
15
+ bottomLeft: '╰',
16
+ bottomRight: '╯',
17
+ horizontal: '─',
18
+ vertical: '│',
19
+ };
20
+ function wrapText(text, maxWidth) {
21
+ const words = text.split(' ');
22
+ const lines = [];
23
+ let currentLine = '';
24
+ for (const word of words) {
25
+ if (currentLine.length + word.length + 1 <= maxWidth) {
26
+ currentLine += (currentLine ? ' ' : '') + word;
27
+ }
28
+ else {
29
+ if (currentLine)
30
+ lines.push(currentLine);
31
+ currentLine = word;
32
+ }
33
+ }
34
+ if (currentLine)
35
+ lines.push(currentLine);
36
+ return lines;
37
+ }
38
+ function padRight(str, length) {
39
+ const visibleLength = str.replace(/\x1b\[[0-9;]*m/g, '').length;
40
+ return str + ' '.repeat(Math.max(0, length - visibleLength));
41
+ }
42
+ export function displayHeader(projectName, status = 'Watching for tasks...') {
43
+ const width = 40;
44
+ const innerWidth = width - 4;
45
+ console.log();
46
+ console.log(chalk.cyan(ROUND_BOX_CHARS.topLeft) +
47
+ chalk.cyan(ROUND_BOX_CHARS.horizontal.repeat(width - 2)) +
48
+ chalk.cyan(ROUND_BOX_CHARS.topRight));
49
+ const title = ` 🤖 Jerad CLI v0.1.0`;
50
+ console.log(chalk.cyan(ROUND_BOX_CHARS.vertical) +
51
+ padRight(title, innerWidth) +
52
+ ' ' +
53
+ chalk.cyan(ROUND_BOX_CHARS.vertical));
54
+ const projectLine = ` Project: ${projectName}`;
55
+ console.log(chalk.cyan(ROUND_BOX_CHARS.vertical) +
56
+ padRight(projectLine, innerWidth) +
57
+ ' ' +
58
+ chalk.cyan(ROUND_BOX_CHARS.vertical));
59
+ const statusLine = ` Status: ${status}`;
60
+ console.log(chalk.cyan(ROUND_BOX_CHARS.vertical) +
61
+ padRight(statusLine, innerWidth) +
62
+ ' ' +
63
+ chalk.cyan(ROUND_BOX_CHARS.vertical));
64
+ console.log(chalk.cyan(ROUND_BOX_CHARS.bottomLeft) +
65
+ chalk.cyan(ROUND_BOX_CHARS.horizontal.repeat(width - 2)) +
66
+ chalk.cyan(ROUND_BOX_CHARS.bottomRight));
67
+ console.log();
68
+ }
69
+ export function displayTaskCard(story) {
70
+ const width = 50;
71
+ const innerWidth = width - 4;
72
+ console.log(chalk.yellow('\n📋 Task received!\n'));
73
+ // Top border
74
+ console.log(chalk.white(BOX_CHARS.topLeft) +
75
+ chalk.white(BOX_CHARS.horizontal.repeat(width - 2)) +
76
+ chalk.white(BOX_CHARS.topRight));
77
+ // Title
78
+ const titleLines = wrapText(story.title, innerWidth);
79
+ for (const line of titleLines) {
80
+ console.log(chalk.white(BOX_CHARS.vertical) +
81
+ ' ' +
82
+ chalk.bold.white(padRight(line, innerWidth)) +
83
+ ' ' +
84
+ chalk.white(BOX_CHARS.vertical));
85
+ }
86
+ // Epic and points
87
+ const epicLine = `Epic: ${story.epicTitle}`;
88
+ const pointsLine = `Points: ${story.storyPoints}`;
89
+ console.log(chalk.white(BOX_CHARS.vertical) +
90
+ ' ' +
91
+ chalk.blue(padRight(epicLine, innerWidth / 2)) +
92
+ chalk.magenta(padRight(pointsLine, innerWidth / 2)) +
93
+ ' ' +
94
+ chalk.white(BOX_CHARS.vertical));
95
+ // Separator
96
+ console.log(chalk.white(BOX_CHARS.middleLeft) +
97
+ chalk.white(BOX_CHARS.horizontal.repeat(width - 2)) +
98
+ chalk.white(BOX_CHARS.middleRight));
99
+ // Description
100
+ const descLines = wrapText(story.description, innerWidth);
101
+ for (const line of descLines) {
102
+ console.log(chalk.white(BOX_CHARS.vertical) +
103
+ ' ' +
104
+ chalk.gray(padRight(line, innerWidth)) +
105
+ ' ' +
106
+ chalk.white(BOX_CHARS.vertical));
107
+ }
108
+ // Empty line
109
+ console.log(chalk.white(BOX_CHARS.vertical) +
110
+ ' '.repeat(width - 2) +
111
+ chalk.white(BOX_CHARS.vertical));
112
+ // Acceptance criteria header
113
+ console.log(chalk.white(BOX_CHARS.vertical) +
114
+ ' ' +
115
+ chalk.bold.white(padRight('Acceptance Criteria:', innerWidth)) +
116
+ ' ' +
117
+ chalk.white(BOX_CHARS.vertical));
118
+ // Acceptance criteria items
119
+ for (const criterion of story.acceptanceCriteria) {
120
+ const criterionLines = wrapText(`☐ ${criterion}`, innerWidth);
121
+ for (const line of criterionLines) {
122
+ console.log(chalk.white(BOX_CHARS.vertical) +
123
+ ' ' +
124
+ chalk.cyan(padRight(line, innerWidth)) +
125
+ ' ' +
126
+ chalk.white(BOX_CHARS.vertical));
127
+ }
128
+ }
129
+ // Technical notes (if any)
130
+ if (story.technicalNotes) {
131
+ console.log(chalk.white(BOX_CHARS.vertical) +
132
+ ' '.repeat(width - 2) +
133
+ chalk.white(BOX_CHARS.vertical));
134
+ console.log(chalk.white(BOX_CHARS.vertical) +
135
+ ' ' +
136
+ chalk.bold.white(padRight('Technical Notes:', innerWidth)) +
137
+ ' ' +
138
+ chalk.white(BOX_CHARS.vertical));
139
+ const notesLines = wrapText(story.technicalNotes, innerWidth);
140
+ for (const line of notesLines) {
141
+ console.log(chalk.white(BOX_CHARS.vertical) +
142
+ ' ' +
143
+ chalk.yellow(padRight(line, innerWidth)) +
144
+ ' ' +
145
+ chalk.white(BOX_CHARS.vertical));
146
+ }
147
+ }
148
+ // Bottom border
149
+ console.log(chalk.white(BOX_CHARS.bottomLeft) +
150
+ chalk.white(BOX_CHARS.horizontal.repeat(width - 2)) +
151
+ chalk.white(BOX_CHARS.bottomRight));
152
+ console.log();
153
+ }
154
+ export function displaySuccess(message) {
155
+ console.log(chalk.green(`✓ ${message}`));
156
+ }
157
+ export function displayError(message) {
158
+ console.log(chalk.red(`✗ ${message}`));
159
+ }
160
+ export function displayWarning(message) {
161
+ console.log(chalk.yellow(`⚠ ${message}`));
162
+ }
163
+ export function displayInfo(message) {
164
+ console.log(chalk.blue(`ℹ ${message}`));
165
+ }
166
+ export function displayBranchCreated(branchName) {
167
+ console.log(chalk.green(`\n🌿 Creating branch: ${chalk.bold(branchName)}`));
168
+ }
169
+ export function displayStartingClaude() {
170
+ console.log(chalk.cyan('\n🤖 Starting Claude Code...\n'));
171
+ console.log(chalk.gray('─'.repeat(50)));
172
+ }
173
+ export function displayClaudeComplete() {
174
+ console.log(chalk.gray('─'.repeat(50)));
175
+ console.log(chalk.green('\n✓ Claude Code session complete'));
176
+ }
177
+ //# sourceMappingURL=task-display.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-display.js","sourceRoot":"","sources":["../../src/ui/task-display.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,52 @@
1
+ {
2
+ "name": "jerad-cli",
3
+ "version": "0.1.0",
4
+ "description": "CLI companion for Jerad - AI-powered SDLC tool",
5
+ "author": "tijolpeter",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/tijolpeter/jerad.git",
10
+ "directory": "cli"
11
+ },
12
+ "homepage": "https://jerad-olive.vercel.app",
13
+ "keywords": [
14
+ "cli",
15
+ "jerad",
16
+ "ai",
17
+ "sdlc",
18
+ "claude",
19
+ "development"
20
+ ],
21
+ "type": "module",
22
+ "bin": {
23
+ "jerad": "./dist/index.js"
24
+ },
25
+ "files": [
26
+ "dist"
27
+ ],
28
+ "scripts": {
29
+ "build": "tsc",
30
+ "dev": "tsc -w",
31
+ "start": "node dist/index.js",
32
+ "prepublishOnly": "npm run build"
33
+ },
34
+ "dependencies": {
35
+ "commander": "^11.1.0",
36
+ "chalk": "^5.3.0",
37
+ "ora": "^7.0.1",
38
+ "inquirer": "^9.2.12",
39
+ "conf": "^12.0.0",
40
+ "node-fetch": "^3.3.2",
41
+ "ws": "^8.16.0"
42
+ },
43
+ "devDependencies": {
44
+ "@types/node": "^20.10.0",
45
+ "@types/inquirer": "^9.0.7",
46
+ "@types/ws": "^8.5.10",
47
+ "typescript": "^5.3.0"
48
+ },
49
+ "engines": {
50
+ "node": ">=18.0.0"
51
+ }
52
+ }