cursortoys 0.2.0 โ 0.3.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.
- package/README.md +53 -109
- package/dist/cli.js +9 -8
- package/dist/cli.js.map +1 -1
- package/dist/commands/http-test.d.ts +1 -1
- package/dist/commands/http-test.d.ts.map +1 -1
- package/dist/commands/http-test.js +110 -137
- package/dist/commands/http-test.js.map +1 -1
- package/dist/projectEnv.d.ts +19 -0
- package/dist/projectEnv.d.ts.map +1 -0
- package/dist/projectEnv.js +80 -0
- package/dist/projectEnv.js.map +1 -0
- package/llms.txt +38 -112
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,10 +4,10 @@ Command-line utilities for CursorToys: HTTP testing, skill management, automatio
|
|
|
4
4
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
7
|
+
- **HTTP Testing**: Run `.req` / `.request` files as automated tests
|
|
8
|
+
- **Skill Management**: Create and manage AI agent skills
|
|
9
|
+
- **LLM Instructions**: Built-in usage guide for LLMs
|
|
10
|
+
- **Productivity Tools**: Utilities for development workflow
|
|
11
11
|
|
|
12
12
|
## Requirements
|
|
13
13
|
|
|
@@ -25,7 +25,7 @@ npm install -g cursortoys-cli
|
|
|
25
25
|
### Use with npx (no installation)
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
-
npx cursortoys
|
|
28
|
+
npx cursortoys http test
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
### Local Development
|
|
@@ -41,9 +41,7 @@ npm link
|
|
|
41
41
|
|
|
42
42
|
### HTTP Testing
|
|
43
43
|
|
|
44
|
-
Run HTTP request files (`.req` / `.request`) from the project's `http` folder as automated tests. Uses the same format and behavior as the CursorToys VS Code extension (REST Client format, `# @var`, `# @env`, `{{VAR}}`, `.env` files)
|
|
45
|
-
|
|
46
|
-
### HTTP Testing
|
|
44
|
+
Run HTTP request files (`.req` / `.request`) from the project's `http` folder as automated tests. Uses the same format and behavior as the CursorToys VS Code extension (REST Client format, `# @var`, `# @env`, `{{VAR}}`, project-root `.env` files).
|
|
47
45
|
|
|
48
46
|
#### Run all HTTP tests
|
|
49
47
|
|
|
@@ -53,13 +51,15 @@ From the project root (where `.cursor/http/` or your configured base folder live
|
|
|
53
51
|
cursortoys http test
|
|
54
52
|
```
|
|
55
53
|
|
|
56
|
-
Discovers all `.req` and `.request` files under the `http` folder (
|
|
54
|
+
Discovers all `.req` and `.request` files under the `http` folder (recursively), runs every request block in each file, and reports pass/fail. A request **passes** when status is 2xx, or when all `@assert` blocks pass (assertions override status).
|
|
57
55
|
|
|
58
|
-
#### Run a single file
|
|
56
|
+
#### Run a single file or folder
|
|
59
57
|
|
|
60
58
|
```bash
|
|
61
59
|
cursortoys http test --file path/to/file.req
|
|
62
60
|
cursortoys http test -f .cursor/http/api.req
|
|
61
|
+
cursortoys http test -f .cursor/http/auth
|
|
62
|
+
cursortoys http test --folder auth
|
|
63
63
|
```
|
|
64
64
|
|
|
65
65
|
#### HTTP Test Options
|
|
@@ -68,28 +68,29 @@ cursortoys http test -f .cursor/http/api.req
|
|
|
68
68
|
|-------|-------------|
|
|
69
69
|
| `-p, --project <dir>` | Project directory (default: current working directory) |
|
|
70
70
|
| `--base-folder <name>` | Base folder name (default: `cursor`; or set `CURSORTOYS_BASE_FOLDER`) |
|
|
71
|
-
|
|
|
72
|
-
| `-e, --env <name>` | Environment to use; overrides `# @env` in the file (default when not set: `dev`) |
|
|
71
|
+
| `-e, --env <name>` | Environment to use; overrides `# @env` in the file (default: `dev`) |
|
|
73
72
|
| `-t, --timeout <seconds>` | Request timeout in seconds (default: `10`) |
|
|
74
|
-
| `-f, --file <path>` | Run a single
|
|
75
|
-
|
|
|
76
|
-
|
|
|
73
|
+
| `-f, --file <path>` | Run a single file or all request files in a directory |
|
|
74
|
+
| `--folder <path>` | Run all request files under a subfolder of the http directory |
|
|
75
|
+
| `-V, --verbose` | Show request and response for each test |
|
|
76
|
+
| `--var <key=value>` | Override a variable; can be repeated |
|
|
77
77
|
|
|
78
|
-
####
|
|
78
|
+
#### Paths (no VS Code)
|
|
79
79
|
|
|
80
|
-
- **Workspace**: `process.cwd()` or `--project <dir
|
|
81
|
-
- **Base folder**: `CURSORTOYS_BASE_FOLDER` or `--base-folder` (default: `cursor`)
|
|
82
|
-
- **HTTP folder**: `{workspace}/.{baseFolder}/http/` (e.g. `.cursor/http/`)
|
|
83
|
-
- **Environments**:
|
|
80
|
+
- **Workspace**: `process.cwd()` or `--project <dir>`
|
|
81
|
+
- **Base folder**: `CURSORTOYS_BASE_FOLDER` or `--base-folder` (default: `cursor`)
|
|
82
|
+
- **HTTP folder**: `{workspace}/.{baseFolder}/http/` (e.g. `.cursor/http/`)
|
|
83
|
+
- **Environments**: project root โ `.env`, `.env.dev`, `.env.staging`, etc. (not inside `http/`)
|
|
84
84
|
|
|
85
85
|
#### HTTP Request File Format
|
|
86
86
|
|
|
87
87
|
Same as in the CursorToys extension:
|
|
88
88
|
|
|
89
|
-
- **REST Client**: `METHOD URL` then optional headers and body; multiple requests separated by `###`
|
|
90
|
-
- **Variables**: `# @var VAR_NAME=value
|
|
91
|
-
- **Substitution**: `{{VAR_NAME}}`
|
|
92
|
-
- **Delay**: `# @delay(milliseconds)`
|
|
89
|
+
- **REST Client**: `METHOD URL` then optional headers and body; multiple requests separated by `###` or `##` sections
|
|
90
|
+
- **Variables**: `# @var VAR_NAME=value`; `# @env name` to select environment (`default` uses `.env`)
|
|
91
|
+
- **Substitution**: `{{VAR_NAME}}` resolved from `# @var`, then from `.env.{name}` at project root
|
|
92
|
+
- **Delay**: `# @delay(milliseconds)` before executing a block
|
|
93
|
+
- **Assertions**: block comments with `@assert(...)` โ when present, all must pass
|
|
93
94
|
|
|
94
95
|
Example:
|
|
95
96
|
|
|
@@ -97,149 +98,92 @@ Example:
|
|
|
97
98
|
# @env dev
|
|
98
99
|
# @var BASE_URL=https://api.example.com
|
|
99
100
|
|
|
100
|
-
|
|
101
|
+
## Get health
|
|
101
102
|
GET {{BASE_URL}}/health
|
|
102
103
|
Accept: application/json
|
|
103
104
|
|
|
104
105
|
###
|
|
105
106
|
|
|
106
|
-
|
|
107
|
+
## Create user
|
|
107
108
|
# @delay(1000)
|
|
108
109
|
POST {{BASE_URL}}/users
|
|
109
110
|
Content-Type: application/json
|
|
110
111
|
|
|
111
|
-
{
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
{"name": "John Doe"}
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Project root `.env.dev`:
|
|
116
|
+
|
|
117
|
+
```env
|
|
118
|
+
BASE_URL=https://api.dev.example.com
|
|
119
|
+
API_KEY=dev-key
|
|
115
120
|
```
|
|
116
121
|
|
|
117
|
-
####
|
|
122
|
+
#### Verbose Mode and Overrides
|
|
118
123
|
|
|
119
|
-
- **Verbose** (`-V`
|
|
120
|
-
- **Environment** (`-e`
|
|
121
|
-
- **Variable overrides** (`--var KEY=value`):
|
|
124
|
+
- **Verbose** (`-V`): prints request (method, URL, headers, body) and response
|
|
125
|
+
- **Environment** (`-e`): uses `.env.{name}` at project root; `# @env default` maps to `.env`
|
|
126
|
+
- **Variable overrides** (`--var KEY=value`): override file and env values for the run
|
|
122
127
|
|
|
123
128
|
Examples:
|
|
124
129
|
|
|
125
130
|
```bash
|
|
126
131
|
cursortoys http test -V
|
|
127
|
-
cursortoys http test -e
|
|
132
|
+
cursortoys http test -e staging --var BASE_URL=https://staging.example.com
|
|
128
133
|
cursortoys http test -f .cursor/http/api.req --verbose --var API_KEY=xxx
|
|
134
|
+
cursortoys http test --folder integrations
|
|
129
135
|
```
|
|
130
136
|
|
|
131
137
|
### Skill Management
|
|
132
138
|
|
|
133
139
|
Create and manage AI agent skills for Cursor AI.
|
|
134
140
|
|
|
135
|
-
#### Create a new skill
|
|
136
|
-
|
|
137
141
|
```bash
|
|
138
142
|
cursortoys skill add my-skill
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
#### Create with description
|
|
142
|
-
|
|
143
|
-
```bash
|
|
144
143
|
cursortoys skill add http-testing -d "Skill for testing HTTP APIs"
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
#### Create project-specific skill
|
|
148
|
-
|
|
149
|
-
```bash
|
|
150
144
|
cursortoys skill add api-docs -t project -p /path/to/project
|
|
151
145
|
```
|
|
152
146
|
|
|
153
|
-
#### Skill Options
|
|
154
|
-
|
|
155
147
|
| Option | Description |
|
|
156
148
|
|-------|-------------|
|
|
157
149
|
| `-d, --description <text>` | Skill description |
|
|
158
|
-
| `-t, --target <type>` |
|
|
150
|
+
| `-t, --target <type>` | `personal` or `project` (default: `personal`) |
|
|
159
151
|
| `-p, --project <dir>` | Project directory (required if target is `project`) |
|
|
160
|
-
| `--base-folder <name>` | Base folder name (default: `cursor
|
|
161
|
-
|
|
162
|
-
#### Skill Paths
|
|
163
|
-
|
|
164
|
-
- **Personal skills**: `~/.cursor/skills/{skill-name}/SKILL.md`
|
|
165
|
-
- **Project skills**: `{project}/.cursor/skills/{skill-name}/SKILL.md`
|
|
166
|
-
|
|
167
|
-
The command creates a `SKILL.md` file with a template that you can customize.
|
|
152
|
+
| `--base-folder <name>` | Base folder name (default: `cursor`) |
|
|
168
153
|
|
|
169
154
|
### LLM Instructions
|
|
170
155
|
|
|
171
|
-
Display instructions for LLMs on how to use the CLI:
|
|
172
|
-
|
|
173
156
|
```bash
|
|
174
157
|
cursortoys --llm
|
|
175
158
|
```
|
|
176
159
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
## HTTP Test Output (Jest/Vitest style)
|
|
180
|
-
|
|
181
|
-
The CLI uses a visual style similar to Jest/Vitest: checkmarks for pass, crosses for fail, and a short summary with duration.
|
|
182
|
-
|
|
183
|
-
**Example when all tests pass:**
|
|
160
|
+
## HTTP Test Output
|
|
184
161
|
|
|
185
162
|
```
|
|
186
163
|
โ .cursor/http/health.req 200 OK
|
|
187
|
-
โ .cursor/http/users.req 201 Created
|
|
164
|
+
โ .cursor/http/users.req (2/3) 201 Created
|
|
188
165
|
|
|
189
166
|
Tests: 2 passed, 2 total
|
|
190
167
|
Time: 1.23s
|
|
191
168
|
```
|
|
192
169
|
|
|
193
|
-
**Example when some tests fail:**
|
|
194
|
-
|
|
195
|
-
```
|
|
196
|
-
โ .cursor/http/health.req 200 OK
|
|
197
|
-
โ .cursor/http/users.req 404 Not Found
|
|
198
|
-
Failed to parse HTTP request (check METHOD URL and format)
|
|
199
|
-
|
|
200
|
-
Tests: 1 passed, 1 failed, 2 total
|
|
201
|
-
Time: 2.45s
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
**Example when using `-f` and the file is not found:**
|
|
205
|
-
|
|
206
|
-
```
|
|
207
|
-
FAIL No file found at: /path/to/missing.req
|
|
208
|
-
|
|
209
|
-
Tests: 0 total
|
|
210
|
-
Time: 0.01s
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
**Example with `--verbose` (request and response shown):**
|
|
214
|
-
|
|
215
|
-
```
|
|
216
|
-
โ .cursor/http/health.req 200 OK
|
|
217
|
-
Request: GET https://api.example.com/health
|
|
218
|
-
Response: 200 OK
|
|
219
|
-
Body: {"status":"ok"}
|
|
220
|
-
|
|
221
|
-
Tests: 1 passed, 1 total
|
|
222
|
-
Time: 0.45s
|
|
223
|
-
```
|
|
224
|
-
|
|
225
170
|
Exit code is `0` if all tests passed, `1` if any failed or no files were run.
|
|
226
171
|
|
|
227
172
|
## Environment Variables
|
|
228
173
|
|
|
229
|
-
|
|
230
|
-
|
|
174
|
+
| Variable | Description |
|
|
175
|
+
|----------|-------------|
|
|
176
|
+
| `CURSORTOYS_BASE_FOLDER` | Default base folder (default: `cursor`) |
|
|
177
|
+
| `CURSORTOYS_DEFAULT_ENV` | Default environment when not set in file (default: `dev`) |
|
|
231
178
|
|
|
232
179
|
## Integration with CursorToys Extension
|
|
233
180
|
|
|
234
|
-
The CLI
|
|
181
|
+
The CLI matches the CursorToys VS Code extension:
|
|
182
|
+
|
|
235
183
|
- Same `.req` / `.request` file format
|
|
236
|
-
-
|
|
184
|
+
- Project-root `.env*` files (not under `http/`)
|
|
237
185
|
- Same base folder configuration
|
|
238
|
-
-
|
|
239
|
-
|
|
240
|
-
## Contributing
|
|
241
|
-
|
|
242
|
-
Contributions are welcome! Please feel free to submit a Pull Request.
|
|
186
|
+
- Compatible with Cursor AI Agent Skills
|
|
243
187
|
|
|
244
188
|
## License
|
|
245
189
|
|
package/dist/cli.js
CHANGED
|
@@ -47,16 +47,16 @@ const program = new commander_1.Command();
|
|
|
47
47
|
program
|
|
48
48
|
.name('cursortoys')
|
|
49
49
|
.description('Command-line utilities for CursorToys - HTTP testing, automation, and productivity tools')
|
|
50
|
-
.version('0.
|
|
50
|
+
.version('0.3.0');
|
|
51
51
|
program
|
|
52
52
|
.command('http test')
|
|
53
53
|
.description('Run .req/.request files in the project http folder as tests')
|
|
54
54
|
.option('-p, --project <dir>', 'Project directory (default: cwd)')
|
|
55
55
|
.option('--base-folder <name>', 'Base folder name (default: cursor, or CURSORTOYS_BASE_FOLDER)')
|
|
56
|
-
.option('
|
|
57
|
-
.option('-e, --env <name>', 'Environment to use (overrides # @env in file)')
|
|
56
|
+
.option('-e, --env <name>', 'Environment to use (overrides # @env in file; loads .env.{name} at project root)')
|
|
58
57
|
.option('-t, --timeout <seconds>', 'Request timeout in seconds (default: 10)', '10')
|
|
59
|
-
.option('-f, --file <path>', 'Run a single .req/.request file')
|
|
58
|
+
.option('-f, --file <path>', 'Run a single .req/.request file or a directory of request files')
|
|
59
|
+
.option('--folder <path>', 'Run all request files under this subfolder of the http directory')
|
|
60
60
|
.option('-V, --verbose', 'Show request and response for each test')
|
|
61
61
|
.option('--var <key=value>', 'Override variable (KEY=value); can be repeated', (v, acc) => {
|
|
62
62
|
acc = acc || [];
|
|
@@ -164,20 +164,21 @@ program
|
|
|
164
164
|
const results = await (0, http_test_1.runHttpTest)({
|
|
165
165
|
project: opts?.project,
|
|
166
166
|
baseFolder: opts?.baseFolder,
|
|
167
|
-
environmentsFolder: opts?.environmentsFolder,
|
|
168
167
|
env: opts?.env,
|
|
169
168
|
timeout: isNaN(timeout) ? 10 : timeout,
|
|
170
169
|
file: opts?.file,
|
|
170
|
+
folder: opts?.folder,
|
|
171
171
|
verbose: opts?.verbose,
|
|
172
172
|
varOverrides: Object.keys(varOverrides).length > 0 ? varOverrides : undefined,
|
|
173
|
-
onProgress: displayResult,
|
|
173
|
+
onProgress: displayResult,
|
|
174
174
|
});
|
|
175
175
|
const passed = results.filter((r) => r.passed);
|
|
176
176
|
const failed = results.filter((r) => !r.passed);
|
|
177
177
|
const duration = ((Date.now() - startTime) / 1000).toFixed(2);
|
|
178
178
|
if (results.length === 0) {
|
|
179
|
-
if (opts?.file) {
|
|
180
|
-
|
|
179
|
+
if (opts?.file || opts?.folder) {
|
|
180
|
+
const target = opts?.file || opts?.folder;
|
|
181
|
+
console.log(chalk_1.default.red(' FAIL ') + chalk_1.default.dim('No request files found at: ') + target);
|
|
181
182
|
console.log('');
|
|
182
183
|
console.log(chalk_1.default.red('Tests: ') + chalk_1.default.red('0 total'));
|
|
183
184
|
console.log(chalk_1.default.dim(`Time: ${duration}s`));
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@ import { AssertionResult } from '../assertionTypes';
|
|
|
3
3
|
export interface HttpTestOptions {
|
|
4
4
|
project?: string;
|
|
5
5
|
baseFolder?: string;
|
|
6
|
-
environmentsFolder?: string;
|
|
7
6
|
env?: string;
|
|
8
7
|
timeout?: number;
|
|
9
8
|
file?: string;
|
|
9
|
+
folder?: string;
|
|
10
10
|
verbose?: boolean;
|
|
11
11
|
varOverrides?: Record<string, string>;
|
|
12
12
|
onProgress?: (result: HttpTestResult) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-test.d.ts","sourceRoot":"","sources":["../../src/commands/http-test.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"http-test.d.ts","sourceRoot":"","sources":["../../src/commands/http-test.ts"],"names":[],"mappings":"AAEA,OAAO,EAUL,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;CAC/C;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6KD;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CA2KlF"}
|
|
@@ -39,6 +39,7 @@ const path = __importStar(require("path"));
|
|
|
39
39
|
const httpRunner_1 = require("../httpRunner");
|
|
40
40
|
const assertionParser_1 = require("../assertionParser");
|
|
41
41
|
const assertionValidator_1 = require("../assertionValidator");
|
|
42
|
+
const projectEnv_1 = require("../projectEnv");
|
|
42
43
|
function getWorkspacePath(opts) {
|
|
43
44
|
return opts.project ? path.resolve(opts.project) : process.cwd();
|
|
44
45
|
}
|
|
@@ -47,47 +48,75 @@ function getBaseFolder(opts) {
|
|
|
47
48
|
process.env.CURSORTOYS_BASE_FOLDER ||
|
|
48
49
|
'cursor').toLowerCase();
|
|
49
50
|
}
|
|
50
|
-
function getEnvironmentsFolder(opts) {
|
|
51
|
-
return (opts.environmentsFolder ||
|
|
52
|
-
process.env.CURSORTOYS_ENVIRONMENTS_FOLDER ||
|
|
53
|
-
'.environments');
|
|
54
|
-
}
|
|
55
51
|
function getHttpPath(workspacePath, baseFolder) {
|
|
56
52
|
return path.join(workspacePath, `.${baseFolder}`, 'http');
|
|
57
53
|
}
|
|
58
|
-
function
|
|
59
|
-
|
|
54
|
+
function isRequestFile(filePath) {
|
|
55
|
+
const ext = path.extname(filePath).toLowerCase();
|
|
56
|
+
return ext === '.req' || filePath.endsWith('.request');
|
|
60
57
|
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
return [resolved];
|
|
66
|
-
const fromHttp = path.join(httpPath, singleFile);
|
|
67
|
-
if (fs.existsSync(fromHttp))
|
|
68
|
-
return [fromHttp];
|
|
69
|
-
return [];
|
|
70
|
-
}
|
|
58
|
+
/**
|
|
59
|
+
* Collects all .req / .request files under a directory (recursive).
|
|
60
|
+
*/
|
|
61
|
+
function discoverInDirectory(dir) {
|
|
71
62
|
const files = [];
|
|
72
|
-
if (!fs.existsSync(
|
|
63
|
+
if (!fs.existsSync(dir)) {
|
|
73
64
|
return files;
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
65
|
+
}
|
|
66
|
+
function walk(currentDir) {
|
|
67
|
+
const entries = fs.readdirSync(currentDir, { withFileTypes: true });
|
|
68
|
+
for (const entry of entries) {
|
|
69
|
+
const full = path.join(currentDir, entry.name);
|
|
70
|
+
if (entry.isDirectory()) {
|
|
71
|
+
walk(full);
|
|
81
72
|
continue;
|
|
82
73
|
}
|
|
83
|
-
|
|
84
|
-
if (ext === '.req' || e.name.endsWith('.request'))
|
|
74
|
+
if (isRequestFile(full)) {
|
|
85
75
|
files.push(full);
|
|
76
|
+
}
|
|
86
77
|
}
|
|
87
78
|
}
|
|
88
|
-
walk(
|
|
79
|
+
walk(dir);
|
|
89
80
|
return files.sort();
|
|
90
81
|
}
|
|
82
|
+
/**
|
|
83
|
+
* Resolves a single file or directory path to request files.
|
|
84
|
+
*/
|
|
85
|
+
function resolveFileTarget(workspacePath, httpPath, target) {
|
|
86
|
+
const candidates = [
|
|
87
|
+
path.resolve(target),
|
|
88
|
+
path.join(workspacePath, target),
|
|
89
|
+
path.join(httpPath, target),
|
|
90
|
+
];
|
|
91
|
+
for (const candidate of candidates) {
|
|
92
|
+
if (!fs.existsSync(candidate)) {
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
const stat = fs.statSync(candidate);
|
|
96
|
+
if (stat.isDirectory()) {
|
|
97
|
+
return discoverInDirectory(candidate);
|
|
98
|
+
}
|
|
99
|
+
if (stat.isFile() && isRequestFile(candidate)) {
|
|
100
|
+
return [candidate];
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return [];
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Discovers request files under the http folder, optionally scoped to a subfolder or single file.
|
|
107
|
+
*/
|
|
108
|
+
function discoverRequestFiles(workspacePath, httpPath, singleFile, folder) {
|
|
109
|
+
if (singleFile) {
|
|
110
|
+
return resolveFileTarget(workspacePath, httpPath, singleFile);
|
|
111
|
+
}
|
|
112
|
+
let searchRoot = httpPath;
|
|
113
|
+
if (folder) {
|
|
114
|
+
searchRoot = path.isAbsolute(folder)
|
|
115
|
+
? folder
|
|
116
|
+
: path.join(httpPath, folder);
|
|
117
|
+
}
|
|
118
|
+
return discoverInDirectory(searchRoot);
|
|
119
|
+
}
|
|
91
120
|
/**
|
|
92
121
|
* Splits file content into blocks by ### (REST Client separator) OR by detecting new HTTP requests.
|
|
93
122
|
* ### separator must be on a line by itself (only whitespace allowed).
|
|
@@ -95,63 +124,53 @@ function discoverRequestFiles(httpPath, singleFile, excludeSubfolderName = '.env
|
|
|
95
124
|
*/
|
|
96
125
|
function getRequestBlocks(content) {
|
|
97
126
|
const trimmed = content.trim();
|
|
98
|
-
// Check if content uses ### as separator (must be alone on a line)
|
|
99
127
|
const lines = trimmed.split('\n');
|
|
100
|
-
const hasSeparator = lines.some(line => line.trim() === '###');
|
|
128
|
+
const hasSeparator = lines.some((line) => line.trim() === '###');
|
|
101
129
|
if (hasSeparator) {
|
|
102
130
|
return trimmed
|
|
103
131
|
.split(/^###\s*$/m)
|
|
104
132
|
.map((b) => b.trim())
|
|
105
133
|
.filter(Boolean);
|
|
106
134
|
}
|
|
107
|
-
// Split by ## headers (these typically mark new requests)
|
|
108
135
|
const blocks = [];
|
|
109
136
|
let currentBlock = [];
|
|
110
137
|
let foundFirstHeader = false;
|
|
111
|
-
let inVariableSection = true;
|
|
112
|
-
|
|
113
|
-
const
|
|
114
|
-
const varRegex = /^#\s*@(?:var|env)\s+/; // # @var or # @env
|
|
138
|
+
let inVariableSection = true;
|
|
139
|
+
const headerRegex = /^##\s+[^#]/;
|
|
140
|
+
const varRegex = /^#\s*@(?:var|env)\s+/;
|
|
115
141
|
const httpMethodRegex = /^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)\s+/i;
|
|
116
142
|
const curlRegex = /^\s*curl\s+/i;
|
|
117
143
|
for (let i = 0; i < lines.length; i++) {
|
|
118
144
|
const line = lines[i];
|
|
119
145
|
const trimmedLine = line.trim();
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
146
|
+
if (inVariableSection &&
|
|
147
|
+
(varRegex.test(trimmedLine) ||
|
|
148
|
+
trimmedLine === '' ||
|
|
149
|
+
(trimmedLine.startsWith('#') && !headerRegex.test(trimmedLine)))) {
|
|
124
150
|
continue;
|
|
125
151
|
}
|
|
126
152
|
else {
|
|
127
|
-
inVariableSection = false;
|
|
153
|
+
inVariableSection = false;
|
|
128
154
|
}
|
|
129
|
-
// Check if this is a section header (## Title, but not ###)
|
|
130
155
|
const isHeader = headerRegex.test(trimmedLine);
|
|
131
|
-
// If we found a ## header and we already have collected content with a previous header,
|
|
132
|
-
// save the current block (WITHOUT this new header) and start fresh WITH the new header
|
|
133
156
|
if (isHeader && foundFirstHeader && currentBlock.length > 0) {
|
|
134
157
|
blocks.push(currentBlock.join('\n').trim());
|
|
135
|
-
currentBlock = [line];
|
|
158
|
+
currentBlock = [line];
|
|
136
159
|
}
|
|
137
160
|
else {
|
|
138
|
-
// Add line to current block
|
|
139
161
|
currentBlock.push(line);
|
|
140
162
|
}
|
|
141
|
-
// Mark that we found at least one header
|
|
142
163
|
if (isHeader) {
|
|
143
164
|
foundFirstHeader = true;
|
|
144
165
|
}
|
|
145
166
|
}
|
|
146
|
-
// Add the last block
|
|
147
167
|
if (currentBlock.length > 0) {
|
|
148
168
|
blocks.push(currentBlock.join('\n').trim());
|
|
149
169
|
}
|
|
150
|
-
|
|
151
|
-
return blocks.filter(block => {
|
|
170
|
+
return blocks.filter((block) => {
|
|
152
171
|
const blockLines = block.split('\n');
|
|
153
|
-
return blockLines.some(
|
|
154
|
-
const t =
|
|
172
|
+
return blockLines.some((blockLine) => {
|
|
173
|
+
const t = blockLine.trim();
|
|
155
174
|
return httpMethodRegex.test(t) || curlRegex.test(t);
|
|
156
175
|
});
|
|
157
176
|
});
|
|
@@ -162,16 +181,14 @@ function getRequestBlocks(content) {
|
|
|
162
181
|
async function runHttpTest(opts) {
|
|
163
182
|
const workspacePath = getWorkspacePath(opts);
|
|
164
183
|
const baseFolder = getBaseFolder(opts);
|
|
165
|
-
const
|
|
166
|
-
const defaultEnv = 'dev';
|
|
184
|
+
const defaultEnv = (0, projectEnv_1.getDefaultEnvironmentName)();
|
|
167
185
|
const timeout = opts.timeout ?? 10;
|
|
168
186
|
const verbose = opts.verbose ?? false;
|
|
169
187
|
const varOverrides = opts.varOverrides
|
|
170
188
|
? new Map(Object.entries(opts.varOverrides))
|
|
171
189
|
: undefined;
|
|
172
190
|
const httpPath = getHttpPath(workspacePath, baseFolder);
|
|
173
|
-
const
|
|
174
|
-
const files = discoverRequestFiles(httpPath, opts.file, environmentsFolder);
|
|
191
|
+
const files = discoverRequestFiles(workspacePath, httpPath, opts.file, opts.folder);
|
|
175
192
|
const results = [];
|
|
176
193
|
for (const filePath of files) {
|
|
177
194
|
let content;
|
|
@@ -201,87 +218,49 @@ async function runHttpTest(opts) {
|
|
|
201
218
|
}
|
|
202
219
|
const fileVars = (0, httpRunner_1.extractFileVariables)(content);
|
|
203
220
|
const envName = opts.env ?? (0, httpRunner_1.getEnvNameFromContent)(content) ?? defaultEnv;
|
|
204
|
-
|
|
205
|
-
const fileDir = path.dirname(filePath);
|
|
206
|
-
const fileBaseName = path.basename(fileDir); // Should be 'http'
|
|
207
|
-
// Determine the environments folder path relative to the file
|
|
208
|
-
let envBasePath;
|
|
209
|
-
if (fileBaseName === 'http') {
|
|
210
|
-
// File is directly in .cursor/http/ or .vscode/http/
|
|
211
|
-
envBasePath = path.join(fileDir, environmentsFolder);
|
|
212
|
-
}
|
|
213
|
-
else {
|
|
214
|
-
// File might be in a subdirectory, try to find the http folder
|
|
215
|
-
const parentDir = path.dirname(fileDir);
|
|
216
|
-
if (path.basename(parentDir) === 'http') {
|
|
217
|
-
envBasePath = path.join(parentDir, environmentsFolder);
|
|
218
|
-
}
|
|
219
|
-
else {
|
|
220
|
-
// Fallback to original behavior
|
|
221
|
-
envBasePath = getEnvironmentsPath(workspacePath, baseFolder, environmentsFolder);
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
const envFilePath = path.join(envBasePath, `.env.${envName}`);
|
|
225
|
-
const fallbackEnvPath = path.join(envBasePath, '.env');
|
|
226
|
-
let envVars = (0, httpRunner_1.loadEnvFile)(envFilePath);
|
|
227
|
-
if (envVars.size === 0 && fs.existsSync(fallbackEnvPath)) {
|
|
228
|
-
envVars = (0, httpRunner_1.loadEnvFile)(fallbackEnvPath);
|
|
229
|
-
}
|
|
221
|
+
const envVars = (0, projectEnv_1.loadProjectEnvironment)(workspacePath, envName);
|
|
230
222
|
let totalInFile = 0;
|
|
231
223
|
const configsWithIndex = [];
|
|
232
|
-
// Accumulated file-level + block-level variables (cascade effect)
|
|
233
224
|
const accumulatedVars = new Map(fileVars);
|
|
234
225
|
for (let bi = 0; bi < blocks.length; bi++) {
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
blockTitle = match[1].trim();
|
|
252
|
-
// Calculate line number in original file
|
|
253
|
-
const linesBeforeBlock = blocks.slice(0, bi).join('\n').split('\n').length;
|
|
254
|
-
blockLine = linesBeforeBlock + i + 1;
|
|
255
|
-
break;
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
// Extract assertions for this block BEFORE removing them
|
|
259
|
-
const blockAssertions = (0, assertionParser_1.extractAssertions)(blocks[bi]);
|
|
260
|
-
// Remove assertion blocks from the content before processing
|
|
261
|
-
const { removeAssertionBlocks } = require('../assertionParser');
|
|
262
|
-
let cleanedBlock = removeAssertionBlocks(blocks[bi]);
|
|
263
|
-
// Apply variable substitution to cleaned block using accumulated variables
|
|
264
|
-
let substituted = (0, httpRunner_1.substituteVariables)(cleanedBlock, accumulatedVars, envVars);
|
|
265
|
-
if (varOverrides && varOverrides.size > 0) {
|
|
266
|
-
substituted = (0, httpRunner_1.applyVariableOverrides)(substituted, varOverrides);
|
|
267
|
-
}
|
|
268
|
-
const blockConfigs = (0, httpRunner_1.parseBlockAll)(substituted);
|
|
269
|
-
for (let ri = 0; ri < blockConfigs.length; ri++) {
|
|
270
|
-
configsWithIndex.push({
|
|
271
|
-
config: blockConfigs[ri],
|
|
272
|
-
blockIndex: bi,
|
|
273
|
-
requestIndexInBlock: ri,
|
|
274
|
-
assertions: blockAssertions,
|
|
275
|
-
blockTitle,
|
|
276
|
-
blockLine,
|
|
277
|
-
delayMs
|
|
278
|
-
});
|
|
226
|
+
const delayMs = (0, httpRunner_1.extractDelayFromBlock)(blocks[bi]);
|
|
227
|
+
const blockVars = (0, httpRunner_1.extractBlockVariables)(blocks[bi]);
|
|
228
|
+
for (const [key, value] of blockVars.entries()) {
|
|
229
|
+
accumulatedVars.set(key, value);
|
|
230
|
+
}
|
|
231
|
+
let blockTitle;
|
|
232
|
+
let blockLine;
|
|
233
|
+
const blockLines = blocks[bi].split('\n');
|
|
234
|
+
const headerRegex = /^##\s+(.+)/;
|
|
235
|
+
for (let i = 0; i < blockLines.length; i++) {
|
|
236
|
+
const match = blockLines[i].trim().match(headerRegex);
|
|
237
|
+
if (match) {
|
|
238
|
+
blockTitle = match[1].trim();
|
|
239
|
+
const linesBeforeBlock = blocks.slice(0, bi).join('\n').split('\n').length;
|
|
240
|
+
blockLine = linesBeforeBlock + i + 1;
|
|
241
|
+
break;
|
|
279
242
|
}
|
|
280
|
-
totalInFile += blockConfigs.length;
|
|
281
243
|
}
|
|
282
|
-
|
|
283
|
-
|
|
244
|
+
const blockAssertions = (0, assertionParser_1.extractAssertions)(blocks[bi]);
|
|
245
|
+
const { removeAssertionBlocks } = require('../assertionParser');
|
|
246
|
+
let cleanedBlock = removeAssertionBlocks(blocks[bi]);
|
|
247
|
+
let substituted = (0, httpRunner_1.substituteVariables)(cleanedBlock, accumulatedVars, envVars);
|
|
248
|
+
if (varOverrides && varOverrides.size > 0) {
|
|
249
|
+
substituted = (0, httpRunner_1.applyVariableOverrides)(substituted, varOverrides);
|
|
250
|
+
}
|
|
251
|
+
const blockConfigs = (0, httpRunner_1.parseBlockAll)(substituted);
|
|
252
|
+
for (let ri = 0; ri < blockConfigs.length; ri++) {
|
|
253
|
+
configsWithIndex.push({
|
|
254
|
+
config: blockConfigs[ri],
|
|
255
|
+
blockIndex: bi,
|
|
256
|
+
requestIndexInBlock: ri,
|
|
257
|
+
assertions: blockAssertions,
|
|
258
|
+
blockTitle,
|
|
259
|
+
blockLine,
|
|
260
|
+
delayMs,
|
|
261
|
+
});
|
|
284
262
|
}
|
|
263
|
+
totalInFile += blockConfigs.length;
|
|
285
264
|
}
|
|
286
265
|
if (configsWithIndex.length === 0) {
|
|
287
266
|
results.push({
|
|
@@ -296,23 +275,18 @@ async function runHttpTest(opts) {
|
|
|
296
275
|
let requestIndex = 0;
|
|
297
276
|
for (const { config, assertions, blockTitle, blockLine, delayMs } of configsWithIndex) {
|
|
298
277
|
requestIndex++;
|
|
299
|
-
// Apply delay if specified (delay before executing this block)
|
|
300
278
|
if (delayMs && delayMs > 0) {
|
|
301
|
-
await new Promise(resolve => setTimeout(resolve, delayMs));
|
|
279
|
+
await new Promise((resolve) => setTimeout(resolve, delayMs));
|
|
302
280
|
}
|
|
303
281
|
const result = await (0, httpRunner_1.executeHttpRequest)(config, timeout);
|
|
304
|
-
// Validate assertions if any
|
|
305
282
|
let assertionResults = [];
|
|
306
283
|
let assertionsPassed = 0;
|
|
307
284
|
let assertionsTotal = 0;
|
|
308
285
|
if (assertions.length > 0) {
|
|
309
286
|
assertionResults = (0, assertionValidator_1.validateAssertions)(assertions, result, result.headers);
|
|
310
|
-
assertionsPassed = assertionResults.filter(r => r.passed).length;
|
|
287
|
+
assertionsPassed = assertionResults.filter((r) => r.passed).length;
|
|
311
288
|
assertionsTotal = assertionResults.length;
|
|
312
289
|
}
|
|
313
|
-
// Request passes based on:
|
|
314
|
-
// - If there are assertions: all assertions must pass (ignore HTTP status)
|
|
315
|
-
// - If no assertions: HTTP status must be 2xx
|
|
316
290
|
const allAssertionsPassed = assertionsTotal === 0 || assertionsPassed === assertionsTotal;
|
|
317
291
|
const statusPassed = result.statusCode >= 200 && result.statusCode < 300;
|
|
318
292
|
const passed = assertionsTotal > 0 ? allAssertionsPassed : statusPassed;
|
|
@@ -334,7 +308,6 @@ async function runHttpTest(opts) {
|
|
|
334
308
|
responseBody: result.body,
|
|
335
309
|
}),
|
|
336
310
|
};
|
|
337
|
-
// Call progress callback if provided (for real-time feedback)
|
|
338
311
|
if (opts.onProgress) {
|
|
339
312
|
opts.onProgress(testResult);
|
|
340
313
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-test.js","sourceRoot":"","sources":["../../src/commands/http-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http-test.js","sourceRoot":"","sources":["../../src/commands/http-test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8NA,kCA2KC;AAzYD,uCAAyB;AACzB,2CAA6B;AAC7B,8CAWuB;AACvB,wDAAuD;AACvD,8DAA2D;AAE3D,8CAAkF;AA+BlF,SAAS,gBAAgB,CAAC,IAAqB;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;AACnE,CAAC;AAED,SAAS,aAAa,CAAC,IAAqB;IAC1C,OAAO,CACL,IAAI,CAAC,UAAU;QACf,OAAO,CAAC,GAAG,CAAC,sBAAsB;QAClC,QAAQ,CACT,CAAC,WAAW,EAAE,CAAC;AAClB,CAAC;AAED,SAAS,WAAW,CAAC,aAAqB,EAAE,UAAkB;IAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,OAAO,GAAG,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAW;IACtC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,SAAS,IAAI,CAAC,UAAkB;QAC9B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,CAAC;gBACX,SAAS;YACX,CAAC;YACD,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,aAAqB,EACrB,QAAgB,EAChB,MAAc;IAEd,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC5B,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,aAAqB,EACrB,QAAgB,EAChB,UAAmB,EACnB,MAAe;IAEf,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,iBAAiB,CAAC,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,UAAU,GAAG,QAAQ,CAAC;IAC1B,IAAI,MAAM,EAAE,CAAC;QACX,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAClC,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,mBAAmB,CAAC,UAAU,CAAC,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAE/B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC;IAEjE,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,OAAO;aACX,KAAK,CAAC,WAAW,CAAC;aAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,YAAY,GAAa,EAAE,CAAC;IAChC,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,iBAAiB,GAAG,IAAI,CAAC;IAE7B,MAAM,WAAW,GAAG,YAAY,CAAC;IACjC,MAAM,QAAQ,GAAG,sBAAsB,CAAC;IACxC,MAAM,eAAe,GAAG,+CAA+C,CAAC;IACxE,MAAM,SAAS,GAAG,cAAc,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAEhC,IACE,iBAAiB;YACjB,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;gBACzB,WAAW,KAAK,EAAE;gBAClB,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAClE,CAAC;YACD,SAAS;QACX,CAAC;aAAM,CAAC;YACN,iBAAiB,GAAG,KAAK,CAAC;QAC5B,CAAC;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE/C,IAAI,QAAQ,IAAI,gBAAgB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,YAAY,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;YACnC,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YAC3B,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,WAAW,CAAC,IAAqB;IACrD,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,IAAA,sCAAyB,GAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;IACtC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY;QACpC,CAAC,CAAC,IAAI,GAAG,CAAiB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5D,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,QAAQ,GAAG,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,oBAAoB,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACpF,MAAM,OAAO,GAAqB,EAAE,CAAC;IAErC,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,8DAA8D;aACtE,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,iCAAoB,EAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,IAAI,IAAA,kCAAqB,EAAC,OAAO,CAAC,IAAI,UAAU,CAAC;QACzE,MAAM,OAAO,GAAG,IAAA,mCAAsB,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAE/D,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,MAAM,gBAAgB,GAQhB,EAAE,CAAC;QAET,MAAM,eAAe,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAE1D,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,IAAA,kCAAqB,EAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAElD,MAAM,SAAS,GAAG,IAAA,kCAAqB,EAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACpD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC/C,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAClC,CAAC;YAED,IAAI,UAA8B,CAAC;YACnC,IAAI,SAA6B,CAAC;YAElC,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,YAAY,CAAC;YAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACtD,IAAI,KAAK,EAAE,CAAC;oBACV,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;oBAC3E,SAAS,GAAG,gBAAgB,GAAG,CAAC,GAAG,CAAC,CAAC;oBACrC,MAAM;gBACR,CAAC;YACH,CAAC;YAED,MAAM,eAAe,GAAG,IAAA,mCAAiB,EAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAEtD,MAAM,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;YAChE,IAAI,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAErD,IAAI,WAAW,GAAG,IAAA,gCAAmB,EAAC,YAAY,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YAC9E,IAAI,YAAY,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,WAAW,GAAG,IAAA,mCAAsB,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAClE,CAAC;YAED,MAAM,YAAY,GAAG,IAAA,0BAAa,EAAC,WAAW,CAAC,CAAC;YAChD,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;gBAChD,gBAAgB,CAAC,IAAI,CAAC;oBACpB,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC;oBACxB,UAAU,EAAE,EAAE;oBACd,mBAAmB,EAAE,EAAE;oBACvB,UAAU,EAAE,eAAe;oBAC3B,UAAU;oBACV,SAAS;oBACT,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;YACD,WAAW,IAAI,YAAY,CAAC,MAAM,CAAC;QACrC,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,oEAAoE;aAC5E,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,gBAAgB,EAAE,CAAC;YACtF,YAAY,EAAE,CAAC;YAEf,IAAI,OAAO,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/D,CAAC;YAED,MAAM,MAAM,GAAsB,MAAM,IAAA,+BAAkB,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAE5E,IAAI,gBAAgB,GAAsB,EAAE,CAAC;YAC7C,IAAI,gBAAgB,GAAG,CAAC,CAAC;YACzB,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,gBAAgB,GAAG,IAAA,uCAAkB,EAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC1E,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;gBACnE,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC;YAC5C,CAAC;YAED,MAAM,mBAAmB,GACvB,eAAe,KAAK,CAAC,IAAI,gBAAgB,KAAK,eAAe,CAAC;YAChE,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,IAAI,GAAG,IAAI,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC;YACzE,MAAM,MAAM,GAAG,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC;YAExE,MAAM,UAAU,GAAmB;gBACjC,IAAI,EAAE,QAAQ;gBACd,MAAM;gBACN,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,YAAY;gBACZ,YAAY,EAAE,WAAW;gBACzB,gBAAgB;gBAChB,gBAAgB;gBAChB,eAAe;gBACf,UAAU;gBACV,SAAS;gBACT,GAAG,CAAC,OAAO,IAAI;oBACb,aAAa,EAAE,MAAM;oBACrB,YAAY,EAAE,MAAM,CAAC,IAAI;iBAC1B,CAAC;aACH,CAAC;YAEF,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the workspace root directory used for project .env files
|
|
3
|
+
*/
|
|
4
|
+
export declare function getProjectEnvRoot(workspacePath: string): string;
|
|
5
|
+
/**
|
|
6
|
+
* Resolves the file path for a named HTTP environment at the project root.
|
|
7
|
+
* `default` maps to `.env`.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getProjectEnvFilePath(workspacePath: string, envName: string): string;
|
|
10
|
+
/**
|
|
11
|
+
* Loads environment variables from project-root .env files.
|
|
12
|
+
* Falls back to `.env` when a named file (e.g. `.env.dev`) is missing.
|
|
13
|
+
*/
|
|
14
|
+
export declare function loadProjectEnvironment(workspacePath: string, envName: string): Map<string, string>;
|
|
15
|
+
/**
|
|
16
|
+
* Default environment name when not set in file or CLI.
|
|
17
|
+
*/
|
|
18
|
+
export declare function getDefaultEnvironmentName(): string;
|
|
19
|
+
//# sourceMappingURL=projectEnv.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectEnv.d.ts","sourceRoot":"","sources":["../src/projectEnv.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGpF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAarB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.getProjectEnvRoot = getProjectEnvRoot;
|
|
37
|
+
exports.getProjectEnvFilePath = getProjectEnvFilePath;
|
|
38
|
+
exports.loadProjectEnvironment = loadProjectEnvironment;
|
|
39
|
+
exports.getDefaultEnvironmentName = getDefaultEnvironmentName;
|
|
40
|
+
const fs = __importStar(require("fs"));
|
|
41
|
+
const path = __importStar(require("path"));
|
|
42
|
+
const httpRunner_1 = require("./httpRunner");
|
|
43
|
+
/**
|
|
44
|
+
* Returns the workspace root directory used for project .env files
|
|
45
|
+
*/
|
|
46
|
+
function getProjectEnvRoot(workspacePath) {
|
|
47
|
+
return workspacePath;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Resolves the file path for a named HTTP environment at the project root.
|
|
51
|
+
* `default` maps to `.env`.
|
|
52
|
+
*/
|
|
53
|
+
function getProjectEnvFilePath(workspacePath, envName) {
|
|
54
|
+
const fileName = envName === 'default' ? '.env' : `.env.${envName}`;
|
|
55
|
+
return path.join(getProjectEnvRoot(workspacePath), fileName);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Loads environment variables from project-root .env files.
|
|
59
|
+
* Falls back to `.env` when a named file (e.g. `.env.dev`) is missing.
|
|
60
|
+
*/
|
|
61
|
+
function loadProjectEnvironment(workspacePath, envName) {
|
|
62
|
+
let envFilePath = getProjectEnvFilePath(workspacePath, envName);
|
|
63
|
+
if (!fs.existsSync(envFilePath) && envName !== 'default') {
|
|
64
|
+
envFilePath = getProjectEnvFilePath(workspacePath, 'default');
|
|
65
|
+
if (!fs.existsSync(envFilePath)) {
|
|
66
|
+
return new Map();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
else if (!fs.existsSync(envFilePath)) {
|
|
70
|
+
return new Map();
|
|
71
|
+
}
|
|
72
|
+
return (0, httpRunner_1.loadEnvFile)(envFilePath);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Default environment name when not set in file or CLI.
|
|
76
|
+
*/
|
|
77
|
+
function getDefaultEnvironmentName() {
|
|
78
|
+
return process.env.CURSORTOYS_DEFAULT_ENV || 'dev';
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=projectEnv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectEnv.js","sourceRoot":"","sources":["../src/projectEnv.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,8CAEC;AAMD,sDAGC;AAMD,wDAgBC;AAKD,8DAEC;AA/CD,uCAAyB;AACzB,2CAA6B;AAC7B,6CAA2C;AAE3C;;GAEG;AACH,SAAgB,iBAAiB,CAAC,aAAqB;IACrD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,aAAqB,EAAE,OAAe;IAC1E,MAAM,QAAQ,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,OAAO,EAAE,CAAC;IACpE,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CACpC,aAAqB,EACrB,OAAe;IAEf,IAAI,WAAW,GAAG,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAEhE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACzD,WAAW,GAAG,qBAAqB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,OAAO,IAAA,wBAAW,EAAC,WAAW,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,yBAAyB;IACvC,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,KAAK,CAAC;AACrD,CAAC"}
|
package/llms.txt
CHANGED
|
@@ -23,117 +23,71 @@ cursortoys http test [options]
|
|
|
23
23
|
**Options:**
|
|
24
24
|
- `-p, --project <dir>`: Project directory (default: current working directory)
|
|
25
25
|
- `--base-folder <name>`: Base folder name (default: `cursor`; or set `CURSORTOYS_BASE_FOLDER`)
|
|
26
|
-
-
|
|
27
|
-
- `-e, --env <name>`: Environment to use (overrides `# @env` in file)
|
|
26
|
+
- `-e, --env <name>`: Environment to use (overrides `# @env` in file; loads `.env.{name}` at project root)
|
|
28
27
|
- `-t, --timeout <seconds>`: Request timeout in seconds (default: `10`)
|
|
29
|
-
- `-f, --file <path>`: Run a single
|
|
28
|
+
- `-f, --file <path>`: Run a single file or all request files in a directory
|
|
29
|
+
- `--folder <path>`: Run all request files under a subfolder of the http directory
|
|
30
30
|
- `-V, --verbose`: Show request and response details
|
|
31
31
|
- `--var <key=value>`: Override variables (can be repeated)
|
|
32
32
|
|
|
33
33
|
**Examples:**
|
|
34
34
|
```bash
|
|
35
|
-
# Run all tests
|
|
35
|
+
# Run all tests under .cursor/http
|
|
36
36
|
cursortoys http test
|
|
37
37
|
|
|
38
|
-
# Run
|
|
39
|
-
cursortoys http test
|
|
38
|
+
# Run tests in a subfolder
|
|
39
|
+
cursortoys http test --folder auth
|
|
40
40
|
|
|
41
41
|
# Run specific file
|
|
42
42
|
cursortoys http test -f .cursor/http/api.req
|
|
43
43
|
|
|
44
|
+
# Run all files in a directory
|
|
45
|
+
cursortoys http test -f .cursor/http/integrations
|
|
46
|
+
|
|
44
47
|
# Override environment and variables
|
|
45
|
-
cursortoys http test -e
|
|
48
|
+
cursortoys http test -e staging --var BASE_URL=https://staging.api.com
|
|
46
49
|
```
|
|
47
50
|
|
|
48
51
|
**Request File Format:**
|
|
49
52
|
- REST Client format: `METHOD URL` followed by headers and body
|
|
50
|
-
- Multiple requests separated by `###`
|
|
53
|
+
- Multiple requests separated by `###` or `##` sections (all blocks are executed)
|
|
51
54
|
- Variables: `# @var VAR_NAME=value`
|
|
52
|
-
- Environment: `# @env name`
|
|
55
|
+
- Environment: `# @env name` (`default` uses `.env` at project root)
|
|
53
56
|
- Substitution: `{{VAR_NAME}}`
|
|
54
|
-
- Delay: `# @delay(milliseconds)`
|
|
57
|
+
- Delay: `# @delay(milliseconds)`
|
|
55
58
|
|
|
56
59
|
**Assertions:**
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
```http
|
|
61
|
+
GET {{BASE_URL}}/users/1
|
|
62
|
+
/*
|
|
63
|
+
* @assert("ok", "res.status", "equals", 200)
|
|
64
|
+
* @assert("res.body.id", "equals", 1)
|
|
65
|
+
*/
|
|
66
|
+
```
|
|
62
67
|
|
|
63
68
|
### 2. Skill Add (`cursortoys skill add`)
|
|
64
69
|
|
|
65
70
|
Create a new skill file with a template.
|
|
66
71
|
|
|
67
|
-
**Basic usage:**
|
|
68
|
-
```bash
|
|
69
|
-
cursortoys skill add <name>
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
**Full command syntax:**
|
|
73
72
|
```bash
|
|
74
|
-
cursortoys skill add <name> [
|
|
73
|
+
cursortoys skill add <name> [-d description] [-t personal|project] [-p projectDir]
|
|
75
74
|
```
|
|
76
75
|
|
|
77
|
-
**Options:**
|
|
78
|
-
- `-d, --description <text>`: Skill description
|
|
79
|
-
- `-t, --target <type>`: Target directory (`personal` or `project`, default: `personal`)
|
|
80
|
-
- `-p, --project <dir>`: Project directory (required if target is `project`)
|
|
81
|
-
- `--base-folder <name>`: Base folder name (default: `cursor`)
|
|
82
|
-
|
|
83
|
-
**Examples:**
|
|
84
|
-
```bash
|
|
85
|
-
# Create personal skill (default)
|
|
86
|
-
cursortoys skill add my-skill
|
|
87
|
-
|
|
88
|
-
# Create personal skill with description
|
|
89
|
-
cursortoys skill add http-testing -d "Skill for testing HTTP APIs"
|
|
90
|
-
|
|
91
|
-
# Create project skill
|
|
92
|
-
cursortoys skill add api-docs -t project -p /path/to/project
|
|
93
|
-
|
|
94
|
-
# Create project skill in current directory
|
|
95
|
-
cursortoys skill add api-docs -t project -p .
|
|
96
|
-
|
|
97
|
-
# Custom base folder
|
|
98
|
-
cursortoys skill add my-skill --base-folder vscode
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
**Output:**
|
|
102
|
-
Creates a `SKILL.md` file in:
|
|
103
|
-
- Personal: `~/.cursor/skills/skill-name/SKILL.md`
|
|
104
|
-
- Project: `{project}/.cursor/skills/skill-name/SKILL.md`
|
|
105
|
-
|
|
106
|
-
The file contains a template with:
|
|
107
|
-
- Description section
|
|
108
|
-
- When to Use section
|
|
109
|
-
- How It Works section
|
|
110
|
-
- Examples section
|
|
111
|
-
- Notes section
|
|
112
|
-
- Related Skills section
|
|
113
|
-
|
|
114
76
|
### 3. LLM Instructions (`cursortoys --llm`)
|
|
115
77
|
|
|
116
|
-
Display comprehensive instructions for LLMs
|
|
117
|
-
|
|
118
|
-
**Usage:**
|
|
119
|
-
```bash
|
|
120
|
-
cursortoys --llm
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
**Output:**
|
|
124
|
-
Displays this file (llms.txt) with all documentation about commands, options, usage patterns, and best practices.
|
|
78
|
+
Display comprehensive instructions for LLMs.
|
|
125
79
|
|
|
126
80
|
## Environment Variables
|
|
127
81
|
|
|
128
82
|
- `CURSORTOYS_BASE_FOLDER`: Default base folder (default: `cursor`)
|
|
129
|
-
- `
|
|
83
|
+
- `CURSORTOYS_DEFAULT_ENV`: Default environment name when not in file (default: `dev`)
|
|
130
84
|
|
|
131
85
|
## Paths and Structure
|
|
132
86
|
|
|
133
87
|
### HTTP Testing
|
|
134
88
|
- **HTTP folder**: `{workspace}/.{baseFolder}/http/`
|
|
135
|
-
- **
|
|
136
|
-
- **
|
|
89
|
+
- **Environment files**: `{workspace}/.env`, `.env.dev`, `.env.staging`, etc. at **project root**
|
|
90
|
+
- **Do not** put `.env*` inside `http/`
|
|
137
91
|
|
|
138
92
|
### Skills
|
|
139
93
|
- **Personal skills**: `~/.cursor/skills/{skill-name}/SKILL.md`
|
|
@@ -141,64 +95,36 @@ Displays this file (llms.txt) with all documentation about commands, options, us
|
|
|
141
95
|
|
|
142
96
|
## Exit Codes
|
|
143
97
|
|
|
144
|
-
- `0`: Success
|
|
145
|
-
- `1`: Failure
|
|
98
|
+
- `0`: Success
|
|
99
|
+
- `1`: Failure
|
|
146
100
|
|
|
147
101
|
## Requirements
|
|
148
102
|
|
|
149
103
|
- Node.js 18+
|
|
150
|
-
- `curl`
|
|
104
|
+
- `curl` on PATH
|
|
151
105
|
|
|
152
106
|
## Integration with VS Code/Cursor
|
|
153
107
|
|
|
154
|
-
|
|
155
|
-
- Same `.req` / `.request`
|
|
156
|
-
-
|
|
108
|
+
Matches the CursorToys extension:
|
|
109
|
+
- Same `.req` / `.request` format
|
|
110
|
+
- Project-root `.env*` resolution (same as `EnvironmentManager`)
|
|
111
|
+
- `# @env default` โ `.env`
|
|
112
|
+
- Named env missing โ fallback to `.env`
|
|
157
113
|
- Same base folder configuration
|
|
158
|
-
- Skills are compatible with Cursor AI Agent Skills
|
|
159
|
-
|
|
160
|
-
## Tips for LLMs
|
|
161
|
-
|
|
162
|
-
1. **HTTP Testing**: When users want to test APIs, suggest using `cursortoys http test` with appropriate options
|
|
163
|
-
2. **Skill Creation**: When users want to create reusable AI instructions, use `cursortoys skill add`
|
|
164
|
-
3. **Verbose Mode**: Use `-V` when debugging to see full request/response details
|
|
165
|
-
4. **Environment Switching**: Use `-e` to switch between dev/qa/prod environments
|
|
166
|
-
5. **Variable Overrides**: Use `--var` to override specific variables without modifying files
|
|
167
|
-
6. **Project vs Personal**: Skills can be personal (shared across projects) or project-specific
|
|
168
114
|
|
|
169
115
|
## Common Use Cases
|
|
170
116
|
|
|
171
|
-
###
|
|
117
|
+
### CI/CD
|
|
172
118
|
```bash
|
|
173
|
-
# Run all tests with production environment
|
|
174
119
|
cursortoys http test -e prod --timeout 30
|
|
175
120
|
```
|
|
176
121
|
|
|
177
|
-
###
|
|
178
|
-
```bash
|
|
179
|
-
# Test specific endpoint with verbose output
|
|
180
|
-
cursortoys http test -f .cursor/http/users.req -V --var BASE_URL=http://localhost:3000
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
### Use Case 3: Rate-Limited API Testing
|
|
122
|
+
### Subfolder testing
|
|
184
123
|
```bash
|
|
185
|
-
|
|
186
|
-
cursortoys http test -f .cursor/http/rate-limited-api.req
|
|
124
|
+
cursortoys http test --folder smoke
|
|
187
125
|
```
|
|
188
126
|
|
|
189
|
-
###
|
|
127
|
+
### Local override
|
|
190
128
|
```bash
|
|
191
|
-
|
|
192
|
-
cursortoys skill add api-docs -d "Standards for documenting REST APIs" -t project
|
|
129
|
+
cursortoys http test -f .cursor/http/api.req -V --var BASE_URL=http://localhost:3000
|
|
193
130
|
```
|
|
194
|
-
|
|
195
|
-
## Error Handling
|
|
196
|
-
|
|
197
|
-
The CLI provides clear error messages:
|
|
198
|
-
- File not found errors
|
|
199
|
-
- Invalid request format
|
|
200
|
-
- Network errors
|
|
201
|
-
- Assertion failures
|
|
202
|
-
- Environment/variable resolution issues
|
|
203
|
-
|
|
204
|
-
All errors are displayed in red with relevant context.
|