claude-intern 1.0.0 → 1.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 (3) hide show
  1. package/README.md +104 -63
  2. package/dist/index.js +99 -99
  3. package/package.json +3 -3
package/README.md CHANGED
@@ -2,7 +2,23 @@
2
2
 
3
3
  Your AI intern for automatically implementing JIRA tasks using Claude. Supports both single task processing and batch processing of multiple tasks through JQL queries or explicit task lists. Pulls task details and feeds them to Claude for implementation with full automation of the development workflow.
4
4
 
5
- ## Setup
5
+ ## Installation
6
+
7
+ ### Global Installation (Recommended)
8
+
9
+ Install globally via npm to use from any directory:
10
+
11
+ ```bash
12
+ # Install globally
13
+ npm install -g claude-intern
14
+
15
+ # Or use directly without installing
16
+ npx claude-intern PROJ-123
17
+ ```
18
+
19
+ ### Local Development Setup
20
+
21
+ For development or contributing to the project:
6
22
 
7
23
  1. Install Bun (if not already installed):
8
24
 
@@ -10,19 +26,49 @@ Your AI intern for automatically implementing JIRA tasks using Claude. Supports
10
26
  curl -fsSL https://bun.sh/install | bash
11
27
  ```
12
28
 
13
- 2. Install dependencies:
29
+ 2. Clone and install dependencies:
14
30
 
15
31
  ```bash
32
+ git clone https://github.com/danii1/claude-intern.git
33
+ cd claude-intern
16
34
  bun install
17
35
  ```
18
36
 
19
- 3. Copy `.env.sample` to `.env` and configure your JIRA credentials:
37
+ 3. (Optional) Install development version globally:
38
+
39
+ ```bash
40
+ bun run install-global
41
+ ```
42
+
43
+ ## Configuration
44
+
45
+ ### Environment File Setup
46
+
47
+ The tool searches for `.env` files in the following order:
48
+
49
+ 1. **Custom path** (if specified with `--env-file`)
50
+ 2. **Current working directory** (where you run the command)
51
+ 3. **User home directory** (`~/.env`)
52
+ 4. **Tool installation directory**
53
+
54
+ For global installation, it's recommended to either:
55
+ - Place `.env` in your project directory (most common)
56
+ - Place `.env` in your home directory (`~/.env`) for global access
20
57
 
21
58
  ```bash
59
+ # Option 1: Project-specific (recommended)
22
60
  cp .env.sample .env
61
+
62
+ # Option 2: Global configuration
63
+ cp .env.sample ~/.env
64
+
65
+ # Option 3: Custom location
66
+ claude-intern PROJ-123 --env-file /path/to/custom.env
23
67
  ```
24
68
 
25
- 4. Update `.env` with your JIRA details:
69
+ ### Required Configuration
70
+
71
+ Update your `.env` file with your JIRA details:
26
72
 
27
73
  - `JIRA_BASE_URL`: Your JIRA instance URL (e.g., https://yourcompany.atlassian.net)
28
74
  - `JIRA_EMAIL`: Your JIRA email address
@@ -35,118 +81,109 @@ cp .env.sample .env
35
81
 
36
82
  The `.env.sample` file includes helpful comments and optional configuration options.
37
83
 
38
- 5. (Optional) Install globally to use from any directory:
39
-
40
- ```bash
41
- bun run install-global
42
- ```
43
-
44
84
  ## Usage
45
85
 
46
86
  ### Single Task Processing
47
87
 
48
88
  ```bash
49
- # Run with a JIRA task key (automatically runs Claude)
50
- bun start TASK-123
89
+ # Global installation usage (recommended)
90
+ claude-intern TASK-123
51
91
 
52
- # Development mode (same as start with Bun)
53
- bun run dev TASK-123
92
+ # Or use with npx (no installation needed)
93
+ npx claude-intern TASK-123
54
94
 
55
95
  # Skip Claude and just fetch/format the task
56
- bun start TASK-123 -- --no-claude
96
+ claude-intern TASK-123 --no-claude
57
97
 
58
98
  # Skip git branch creation
59
- bun start TASK-123 -- --no-git
99
+ claude-intern TASK-123 --no-git
60
100
 
61
101
  # Use custom .env file
62
- bun start TASK-123 -- --env-file /path/to/custom.env
102
+ claude-intern TASK-123 --env-file /path/to/custom.env
63
103
 
64
104
  # Specify custom output file
65
- bun start TASK-123 -- -o my-task.md
105
+ claude-intern TASK-123 -o my-task.md
66
106
 
67
107
  # Verbose output for debugging
68
- bun start TASK-123 -- -v
108
+ claude-intern TASK-123 -v
69
109
 
70
110
  # Custom Claude CLI path
71
- bun start TASK-123 -- --claude-path /path/to/claude
111
+ claude-intern TASK-123 --claude-path /path/to/claude
72
112
 
73
113
  # Increase max turns for complex tasks
74
- bun start TASK-123 -- --max-turns 50
114
+ claude-intern TASK-123 --max-turns 50
75
115
 
76
116
  # Skip automatic commit after Claude completes
77
- bun start TASK-123 -- --no-auto-commit
117
+ claude-intern TASK-123 --no-auto-commit
78
118
 
79
119
  # Create pull request after implementation
80
- bun start TASK-123 -- --create-pr
120
+ claude-intern TASK-123 --create-pr
81
121
 
82
122
  # Create pull request targeting specific branch
83
- bun start TASK-123 -- --create-pr --pr-target-branch develop
123
+ claude-intern TASK-123 --create-pr --pr-target-branch develop
124
+ ```
125
+
126
+ #### Local Development Usage
127
+
128
+ ```bash
129
+ # Run with Bun during development
130
+ bun start TASK-123
131
+
132
+ # Development mode (same as start)
133
+ bun run dev TASK-123
134
+
135
+ # All options work with bun as well (note the -- separator)
136
+ bun start TASK-123 -- --no-claude --verbose
84
137
  ```
85
138
 
86
139
  ### Batch Processing (Multiple Tasks)
87
140
 
88
141
  ```bash
89
142
  # Process multiple specific tasks
90
- bun start PROJ-123 PROJ-124 PROJ-125
143
+ claude-intern PROJ-123 PROJ-124 PROJ-125
91
144
 
92
145
  # Process tasks matching JQL query
93
- bun start -- --jql "project = PROJ AND status = 'To Do'"
146
+ claude-intern --jql "project = PROJ AND status = 'To Do'"
94
147
 
95
148
  # Complex JQL with custom fields and conditions
96
- bun start -- --jql "project = \"My Project\" AND cf[10016] <= 3 AND labels IN (FrontEnd, MobileApp)"
149
+ claude-intern --jql "project = \"My Project\" AND cf[10016] <= 3 AND labels IN (FrontEnd, MobileApp)"
97
150
 
98
151
  # Batch process with PR creation
99
- bun start -- --jql "assignee = currentUser() AND status = 'To Do'" --create-pr
152
+ claude-intern --jql "assignee = currentUser() AND status = 'To Do'" --create-pr
100
153
 
101
154
  # High-complexity batch processing with extended turns
102
- bun start -- --jql "labels = 'refactoring' AND type = Story" --max-turns 500 --create-pr
155
+ claude-intern --jql "labels = 'refactoring' AND type = Story" --max-turns 500 --create-pr
103
156
 
104
157
  # Batch process with skipped clarity checks for faster processing
105
- bun start PROJ-101 PROJ-102 PROJ-103 -- --skip-clarity-check --create-pr
158
+ claude-intern PROJ-101 PROJ-102 PROJ-103 --skip-clarity-check --create-pr
106
159
  ```
107
160
 
108
- ### Examples
161
+ #### Local Development Batch Processing
109
162
 
110
163
  ```bash
111
- # Fetch JIRA task and run Claude automatically
112
- bun start PROJ-456
113
-
114
- # Just fetch and format (useful for reviewing before Claude runs)
115
- bun start PROJ-456 -- --no-claude
116
-
117
- # Then manually run Claude with the formatted output
118
- claude -p --dangerously-skip-permissions --max-turns 10 < task-details.md
164
+ # Process multiple tasks with Bun
165
+ bun start PROJ-123 PROJ-124 PROJ-125
119
166
 
120
- # Development mode (same as start with Bun)
121
- bun run dev PROJ-456
167
+ # JQL queries (note -- separator for options)
168
+ bun start -- --jql "project = PROJ AND status = 'To Do'"
169
+ bun start -- --jql "assignee = currentUser()" --create-pr
122
170
  ```
123
171
 
124
- ### Global Usage (from any directory)
125
-
126
- After installing globally, you can run the tool from any directory (especially useful when working in your project's git repository):
172
+ ### Quick Examples
127
173
 
128
174
  ```bash
129
- # Single task processing
130
- claude-intern PROJ-123
131
-
132
- # Multiple task processing
133
- claude-intern PROJ-123 PROJ-124 PROJ-125
175
+ # Fetch JIRA task and run Claude automatically
176
+ claude-intern PROJ-456
134
177
 
135
- # JQL query processing
136
- claude-intern --jql "project = PROJ AND status = 'To Do'"
137
- claude-intern --jql "assignee = currentUser() AND labels = 'frontend' AND type = Bug"
178
+ # Just fetch and format (useful for reviewing before Claude runs)
179
+ claude-intern PROJ-456 --no-claude
138
180
 
139
- # All the same options work with batch processing
140
- claude-intern PROJ-123 PROJ-124 --no-claude --verbose
141
- claude-intern --jql "status = 'To Do'" --create-pr --pr-target-branch develop
142
- claude-intern --jql "priority = High" --max-turns 300 --skip-clarity-check
181
+ # Then manually run Claude with the formatted output
182
+ claude -p --dangerously-skip-permissions --max-turns 10 < task-details.md
143
183
 
144
184
  # Advanced batch scenarios
145
185
  claude-intern --jql "\"Epic Link\" = PROJ-100" --create-pr
146
186
  claude-intern --jql "sprint in openSprints() AND assignee = currentUser()" --max-turns 500
147
-
148
- # Uninstall when no longer needed
149
- bun run uninstall-global # (run from claude-intern directory)
150
187
  ```
151
188
 
152
189
  ## What it does
@@ -178,10 +215,14 @@ bun run uninstall-global # (run from claude-intern directory)
178
215
 
179
216
  ## Quick Start
180
217
 
181
- 1. Install globally: `bun run install-global`
182
- 2. Copy `.env.sample` to your project directory as `.env`
183
- 3. Configure your JIRA credentials in `.env`
184
- 4. Run from your project directory: `claude-intern PROJ-123`
218
+ 1. Install globally: `npm install -g claude-intern`
219
+ 2. Get the sample environment file:
220
+ ```bash
221
+ # Download .env.sample from the repository
222
+ curl -o .env https://raw.githubusercontent.com/danii1/claude-intern/master/.env.sample
223
+ ```
224
+ 3. Configure your JIRA credentials in `.env` (or `~/.env` for global access)
225
+ 4. Run from any directory: `claude-intern PROJ-123`
185
226
 
186
227
  See [USAGE.md](./USAGE.md) for detailed usage scenarios and troubleshooting.
187
228
  See [GLOBAL_USAGE.md](./GLOBAL_USAGE.md) for quick reference on global installation.