pre-claude 0.0.1-beta.0 → 0.0.1-beta.4
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 +24 -36
- package/dist/cli.js +385 -152
- package/dist/cli.js.map +4 -4
- package/package.json +12 -17
package/README.md
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
# pre-claude
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[日本語版](./README-ja.md)
|
|
4
|
+
|
|
5
|
+
**Pre** Claude is a tool for creating prompts via TUI when running Claude.
|
|
6
|
+
You can define forms in TypeScript config files and share them with your team.
|
|
4
7
|
|
|
5
8
|
## Features
|
|
6
9
|
|
|
7
|
-
-
|
|
8
|
-
- Interactive TUI
|
|
9
|
-
- Uses
|
|
10
|
+
- TypeScript-based form configuration
|
|
11
|
+
- Interactive TUI form wizard
|
|
12
|
+
- Uses local Claude Code settings
|
|
10
13
|
|
|
11
14
|
## Requirements
|
|
12
15
|
|
|
13
16
|
- Node.js 18+
|
|
14
|
-
- Claude Code
|
|
17
|
+
- Claude Code
|
|
15
18
|
|
|
16
19
|
## Installation
|
|
17
20
|
|
|
@@ -103,14 +106,14 @@ export default defineConfig({
|
|
|
103
106
|
| `name` | `string` | Yes | Display name |
|
|
104
107
|
| `steps` | `Step[]` | Yes | Form wizard steps |
|
|
105
108
|
| `prompt` | `function` | Yes | Prompt generator function |
|
|
106
|
-
| `outputDir` | `string` | No |
|
|
107
|
-
| `filename` | `string \| function` | No | Custom filename
|
|
109
|
+
| `outputDir` | `string` | No | Output directory |
|
|
110
|
+
| `filename` | `string \| function` | No | Custom filename |
|
|
108
111
|
|
|
109
112
|
## Field Types
|
|
110
113
|
|
|
111
114
|
### input
|
|
112
115
|
|
|
113
|
-
|
|
116
|
+
Single-line text input. Supports type variants (`text`, `date`, `url`) and autocomplete suggestions.
|
|
114
117
|
|
|
115
118
|
```typescript
|
|
116
119
|
{
|
|
@@ -121,14 +124,14 @@ Text input field with optional type variants and autocomplete suggestions.
|
|
|
121
124
|
placeholder: 'My Project',
|
|
122
125
|
required: true,
|
|
123
126
|
inputType: 'text', // 'text' | 'date' | 'url'
|
|
124
|
-
suggestions: ['Option A', 'Option B'],
|
|
127
|
+
suggestions: ['Option A', 'Option B'],
|
|
125
128
|
default: 'Default Value',
|
|
126
129
|
}
|
|
127
130
|
```
|
|
128
131
|
|
|
129
132
|
### textarea
|
|
130
133
|
|
|
131
|
-
Multi-line text input.
|
|
134
|
+
Multi-line text input. The `rows` property controls the display height.
|
|
132
135
|
|
|
133
136
|
```typescript
|
|
134
137
|
{
|
|
@@ -143,7 +146,7 @@ Multi-line text input.
|
|
|
143
146
|
|
|
144
147
|
### select
|
|
145
148
|
|
|
146
|
-
Dropdown selection.
|
|
149
|
+
Dropdown selection from predefined options.
|
|
147
150
|
|
|
148
151
|
```typescript
|
|
149
152
|
{
|
|
@@ -162,14 +165,14 @@ Dropdown selection.
|
|
|
162
165
|
|
|
163
166
|
### checkbox
|
|
164
167
|
|
|
165
|
-
Boolean toggle.
|
|
168
|
+
Boolean toggle for true/false values.
|
|
166
169
|
|
|
167
170
|
```typescript
|
|
168
171
|
{
|
|
169
172
|
id: 'agree',
|
|
170
173
|
type: 'checkbox',
|
|
171
174
|
label: 'I agree to the terms',
|
|
172
|
-
description: '
|
|
175
|
+
description: 'Required to continue',
|
|
173
176
|
required: true,
|
|
174
177
|
default: false,
|
|
175
178
|
}
|
|
@@ -179,7 +182,7 @@ Boolean toggle.
|
|
|
179
182
|
|
|
180
183
|
### repeatable
|
|
181
184
|
|
|
182
|
-
|
|
185
|
+
Allows dynamic addition and removal of field instances. Use `minCount` to set minimum items and `defaultCount` for initial count.
|
|
183
186
|
|
|
184
187
|
```typescript
|
|
185
188
|
{
|
|
@@ -200,7 +203,7 @@ Dynamically add/remove field instances.
|
|
|
200
203
|
|
|
201
204
|
### group
|
|
202
205
|
|
|
203
|
-
|
|
206
|
+
Groups multiple fields together visually without affecting data structure.
|
|
204
207
|
|
|
205
208
|
```typescript
|
|
206
209
|
{
|
|
@@ -216,7 +219,7 @@ Visual grouping of fields.
|
|
|
216
219
|
|
|
217
220
|
Fields support conditional visibility via the `when` property.
|
|
218
221
|
|
|
219
|
-
### Simple
|
|
222
|
+
### Simple Conditions
|
|
220
223
|
|
|
221
224
|
```typescript
|
|
222
225
|
// Show when priority is 'high'
|
|
@@ -238,10 +241,10 @@ Fields support conditional visibility via the `when` property.
|
|
|
238
241
|
{ ..., when: { field: 'notes', isEmpty: true } }
|
|
239
242
|
```
|
|
240
243
|
|
|
241
|
-
### AND
|
|
244
|
+
### AND / OR Conditions
|
|
242
245
|
|
|
243
246
|
```typescript
|
|
244
|
-
//
|
|
247
|
+
// AND: both conditions must be true
|
|
245
248
|
{
|
|
246
249
|
...,
|
|
247
250
|
when: {
|
|
@@ -251,12 +254,8 @@ Fields support conditional visibility via the `when` property.
|
|
|
251
254
|
]
|
|
252
255
|
}
|
|
253
256
|
}
|
|
254
|
-
```
|
|
255
257
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
```typescript
|
|
259
|
-
// Show when either condition is true
|
|
258
|
+
// OR: either condition must be true
|
|
260
259
|
{
|
|
261
260
|
...,
|
|
262
261
|
when: {
|
|
@@ -271,7 +270,6 @@ Fields support conditional visibility via the `when` property.
|
|
|
271
270
|
### Nested Conditions
|
|
272
271
|
|
|
273
272
|
```typescript
|
|
274
|
-
// Complex nested condition
|
|
275
273
|
{
|
|
276
274
|
...,
|
|
277
275
|
when: {
|
|
@@ -288,24 +286,14 @@ Fields support conditional visibility via the `when` property.
|
|
|
288
286
|
}
|
|
289
287
|
```
|
|
290
288
|
|
|
291
|
-
### Cross-
|
|
289
|
+
### Cross-Step References
|
|
292
290
|
|
|
293
|
-
Use dot notation to reference fields in other steps
|
|
291
|
+
Use dot notation to reference fields in other steps.
|
|
294
292
|
|
|
295
293
|
```typescript
|
|
296
294
|
{ ..., when: { field: 'overview.priority', is: 'high' } }
|
|
297
295
|
```
|
|
298
296
|
|
|
299
|
-
## Development
|
|
300
|
-
|
|
301
|
-
```bash
|
|
302
|
-
pnpm install
|
|
303
|
-
pnpm build
|
|
304
|
-
pnpm dev
|
|
305
|
-
pnpm lint:fix
|
|
306
|
-
pnpm typecheck
|
|
307
|
-
```
|
|
308
|
-
|
|
309
297
|
## License
|
|
310
298
|
|
|
311
299
|
MIT
|