@yiaany/ghostapi 0.1.2 → 0.1.3
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/CHANGELOG.md +14 -0
- package/README.md +82 -246
- package/dist/ai/aiGenerator.js +16 -13
- package/dist/ai/aiGenerator.js.map +1 -1
- package/package.json +11 -5
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,20 @@ All notable changes to GhostAPI will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
The format follows the spirit of [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project uses semantic versioning once public releases begin.
|
|
6
6
|
|
|
7
|
+
## 0.1.3 - 2026-07-18
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- Corrected npm installation commands to use the published package name `@yiaany/ghostapi`.
|
|
12
|
+
- Replaced unscoped package examples with `npx @yiaany/ghostapi` so copy-paste install works from npm.
|
|
13
|
+
- Updated Stripe SDK examples to point at local GhostAPI host, port, and protocol options.
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- Shortened the npm README around install, a 30 second local win, MCP setup, and SDK examples.
|
|
18
|
+
- Updated npm package description and keywords for MCP, Stripe, OpenAI, Cursor, proxy, and sandbox discoverability.
|
|
19
|
+
- Moved React dashboard build dependencies out of runtime dependencies.
|
|
20
|
+
|
|
7
21
|
## 0.1.0 - 2026-07-14
|
|
8
22
|
|
|
9
23
|
### Added
|
package/README.md
CHANGED
|
@@ -2,263 +2,137 @@
|
|
|
2
2
|
|
|
3
3
|
**The local internet for AI coding agents.**
|
|
4
4
|
|
|
5
|
-
GhostAPI runs on
|
|
5
|
+
GhostAPI runs a local API sandbox on `http://127.0.0.1:8080` so coding agents can build and test Stripe, OpenAI, Twilio, Resend, GitHub, Discord, and REST integrations without touching production.
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npx ghostapi start --open
|
|
8
|
+
npx @yiaany/ghostapi start --open
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
```text
|
|
12
|
-
Your app or agent -> http://127.0.0.1:8080 -> GhostAPI -> local state,
|
|
12
|
+
Your app or agent -> http://127.0.0.1:8080 -> GhostAPI -> dashboard, local state, scenarios, MCP tools
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
-
##
|
|
15
|
+
## Install
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
Run without installing:
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- Twilio calls can send real SMS messages.
|
|
23
|
-
- Resend calls can send real email.
|
|
24
|
-
- GitHub calls can mutate real repositories.
|
|
25
|
-
- OpenAI calls can spend real tokens and leak test data.
|
|
26
|
-
- Production API keys can end up in logs, prompts, screenshots, or cache files.
|
|
27
|
-
|
|
28
|
-
GhostAPI gives agents a safe world to develop in: local, observable, stateful, replayable, and controlled by MCP.
|
|
29
|
-
|
|
30
|
-
## What You Get
|
|
31
|
-
|
|
32
|
-
- **Local API proxy** on `127.0.0.1:8080`.
|
|
33
|
-
- **Provider-shaped mocks** for Stripe, Twilio, Resend, GitHub, Discord, OpenAI, and generic REST.
|
|
34
|
-
- **Live dashboard** at `/dashboard` with traffic, request/response inspection, setup generation, scenarios, and Chaos Mode.
|
|
35
|
-
- **MCP server** so Claude CLI, Claude Desktop, Cline, Aider, Codex, OpenCode CLI/Desktop, Gemini CLI, Goose, OpenClaw, Hermes Desktop, and other agents can inspect state and control API behavior.
|
|
36
|
-
- **Scenario presets** for repeatable flows like payment failures and issue creation.
|
|
37
|
-
- **Custom scenarios** saved from traffic or imported as JSON.
|
|
38
|
-
- **Generated tests** from captured request/response events.
|
|
39
|
-
- **Safety reports** that flag live provider hosts and live-looking keys.
|
|
40
|
-
- **Copy-ready agent prompts** for Cursor, Claude, Cline, Aider, Codex, OpenCode, Gemini CLI, Goose, OpenClaw, Hermes, and any MCP client.
|
|
41
|
-
- **Chaos Mode** for realistic `429`, `503`, and latency testing.
|
|
42
|
-
- **Secret masking** before logs, cache, dashboard, events, or prompts.
|
|
43
|
-
- **One-click repo setup** for agent rules and MCP config.
|
|
44
|
-
|
|
45
|
-
## Quick Start
|
|
19
|
+
```bash
|
|
20
|
+
npx @yiaany/ghostapi start --open
|
|
21
|
+
```
|
|
46
22
|
|
|
47
|
-
|
|
23
|
+
Or install globally:
|
|
48
24
|
|
|
49
25
|
```bash
|
|
50
|
-
npm
|
|
26
|
+
npm i -g @yiaany/ghostapi
|
|
51
27
|
ghostapi start --open
|
|
52
28
|
```
|
|
53
29
|
|
|
54
|
-
|
|
30
|
+
Dashboard:
|
|
55
31
|
|
|
56
|
-
```
|
|
57
|
-
|
|
32
|
+
```text
|
|
33
|
+
http://127.0.0.1:8080/dashboard
|
|
58
34
|
```
|
|
59
35
|
|
|
60
|
-
|
|
36
|
+
Health check:
|
|
61
37
|
|
|
62
38
|
```bash
|
|
63
|
-
|
|
39
|
+
curl http://127.0.0.1:8080/health
|
|
64
40
|
```
|
|
65
41
|
|
|
66
|
-
|
|
42
|
+
## 30 Second Win
|
|
43
|
+
|
|
44
|
+
Start GhostAPI:
|
|
67
45
|
|
|
68
46
|
```bash
|
|
69
|
-
|
|
47
|
+
npx @yiaany/ghostapi start --open
|
|
70
48
|
```
|
|
71
49
|
|
|
72
50
|
Send a local API request:
|
|
73
51
|
|
|
74
52
|
```bash
|
|
75
|
-
curl -X POST http://127.0.0.1:8080/
|
|
53
|
+
curl -X POST http://127.0.0.1:8080/v1/customers \
|
|
76
54
|
-H "content-type: application/json" \
|
|
77
|
-
-
|
|
55
|
+
-H "authorization: Bearer sk_test_ghostapi" \
|
|
56
|
+
-d '{"email":"ada@example.com","name":"Ada Lovelace"}'
|
|
78
57
|
```
|
|
79
58
|
|
|
80
|
-
|
|
59
|
+
Open the dashboard and inspect the captured request:
|
|
81
60
|
|
|
82
61
|
```text
|
|
83
62
|
http://127.0.0.1:8080/dashboard
|
|
84
63
|
```
|
|
85
64
|
|
|
86
|
-
##
|
|
87
|
-
|
|
88
|
-
Generate copy-ready setup for the current repo:
|
|
89
|
-
|
|
90
|
-
```bash
|
|
91
|
-
ghostapi setup
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
Write setup files safely without overwriting existing files:
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
ghostapi setup --write
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
This detects SDKs in `package.json` and generates:
|
|
101
|
-
|
|
102
|
-
- `.cursorrules`
|
|
103
|
-
- `AGENTS.md`
|
|
104
|
-
- `.cursor/mcp.json`
|
|
105
|
-
- `cline_mcp_settings.json`
|
|
106
|
-
- `claude_desktop_config.json`
|
|
107
|
-
- `.ghostapi/agent-configs/*` snippets for Claude CLI, Claude Desktop, Cline, Aider, Codex, OpenCode CLI, OpenCode Desktop, Gemini CLI, Goose, OpenClaw, Hermes Desktop, and universal MCP clients
|
|
108
|
-
- local env snippets
|
|
109
|
-
- SDK client patches for detected providers
|
|
110
|
-
|
|
111
|
-
The dashboard also includes **Agent Setup**, a copy-first onboarding modal for your agent stack.
|
|
112
|
-
|
|
113
|
-
## MCP Server
|
|
65
|
+
## MCP Setup
|
|
114
66
|
|
|
115
67
|
Start the MCP server:
|
|
116
68
|
|
|
117
69
|
```bash
|
|
118
|
-
ghostapi mcp
|
|
70
|
+
npx @yiaany/ghostapi mcp
|
|
119
71
|
```
|
|
120
72
|
|
|
121
|
-
|
|
73
|
+
Universal stdio MCP config:
|
|
122
74
|
|
|
123
75
|
```json
|
|
124
76
|
{
|
|
125
77
|
"mcpServers": {
|
|
126
78
|
"ghostapi": {
|
|
127
|
-
"command": "
|
|
128
|
-
"args": ["mcp"]
|
|
79
|
+
"command": "npx",
|
|
80
|
+
"args": ["-y", "@yiaany/ghostapi", "mcp"]
|
|
129
81
|
}
|
|
130
82
|
}
|
|
131
83
|
}
|
|
132
84
|
```
|
|
133
85
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
- Claude CLI
|
|
137
|
-
- Claude Desktop
|
|
138
|
-
- Cline
|
|
139
|
-
- Aider
|
|
140
|
-
- Codex
|
|
141
|
-
- OpenCode CLI
|
|
142
|
-
- OpenCode Desktop
|
|
143
|
-
- Gemini CLI
|
|
144
|
-
- Goose
|
|
145
|
-
- OpenClaw
|
|
146
|
-
- Hermes Desktop
|
|
147
|
-
- any generic stdio MCP client
|
|
148
|
-
|
|
149
|
-
Some clients use different config file locations or command names across versions. GhostAPI writes the canonical server block under `.ghostapi/agent-configs/` so you can paste the same `ghostapi mcp` server into the right place for your client.
|
|
86
|
+
Generate repo-specific setup snippets for Cursor, Claude, Cline, Aider, Codex, OpenCode, Gemini CLI, Goose, OpenClaw, Hermes Desktop, and generic MCP clients:
|
|
150
87
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
```json
|
|
154
|
-
{
|
|
155
|
-
"mcpServers": {
|
|
156
|
-
"ghostapi": {
|
|
157
|
-
"command": "node",
|
|
158
|
-
"args": ["dist/cli/index.js", "mcp"]
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
88
|
+
```bash
|
|
89
|
+
npx @yiaany/ghostapi setup --write
|
|
162
90
|
```
|
|
163
91
|
|
|
164
|
-
|
|
92
|
+
## MCP Tools
|
|
165
93
|
|
|
166
94
|
| Tool | Purpose |
|
|
167
95
|
| --- | --- |
|
|
168
96
|
| `inspect_state` | Read local API objects from `.ghostapi/state.json`. |
|
|
97
|
+
| `get_traffic_logs` | Inspect recent local traffic. |
|
|
169
98
|
| `set_api_behavior` | Force a deterministic response for `method + path`. |
|
|
170
|
-
| `
|
|
171
|
-
| `toggle_chaos_mode` | Enable or disable local failure injection. |
|
|
172
|
-
|
|
173
|
-
This is the core product loop: the agent writes code, GhostAPI simulates the outside world, and MCP lets the agent inspect and control that world.
|
|
174
|
-
|
|
175
|
-
## Scenario Presets
|
|
176
|
-
|
|
177
|
-
GhostAPI ships with replayable API flows:
|
|
99
|
+
| `toggle_chaos_mode` | Enable local latency and error injection. |
|
|
178
100
|
|
|
179
|
-
|
|
180
|
-
- Stripe payment intent failure
|
|
181
|
-
- Resend email send
|
|
182
|
-
- GitHub issue create
|
|
101
|
+
## Stripe Locally
|
|
183
102
|
|
|
184
|
-
|
|
103
|
+
Install Stripe:
|
|
185
104
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
- **Share** to copy a compact `ghostapi://scenario/...` payload.
|
|
189
|
-
|
|
190
|
-
Scenario APIs:
|
|
191
|
-
|
|
192
|
-
```http
|
|
193
|
-
GET /api/scenarios
|
|
194
|
-
POST /api/scenarios
|
|
195
|
-
POST /api/scenarios/save-from-traffic
|
|
196
|
-
POST /api/scenarios/:id/replay
|
|
197
|
-
GET /api/scenarios/:id/export
|
|
198
|
-
POST /api/scenarios/:id/share
|
|
105
|
+
```bash
|
|
106
|
+
npm install stripe
|
|
199
107
|
```
|
|
200
108
|
|
|
201
|
-
|
|
109
|
+
Point the Stripe SDK at GhostAPI:
|
|
202
110
|
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
- **Copy Agent Prompt** gives any coding agent a clean GhostAPI operating prompt.
|
|
206
|
-
- **Generate Test** turns a selected traffic event into a Vitest API test.
|
|
207
|
-
- **Safety Report** scans the repo for live provider hosts and live-looking keys.
|
|
208
|
-
- **Save current traffic** turns recent events into a replayable custom scenario.
|
|
209
|
-
|
|
210
|
-
API endpoints:
|
|
111
|
+
```ts
|
|
112
|
+
import Stripe from "stripe";
|
|
211
113
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
114
|
+
export const stripe = new Stripe(process.env.STRIPE_SECRET_KEY ?? "sk_test_ghostapi", {
|
|
115
|
+
host: process.env.GHOSTAPI_HOST ?? "127.0.0.1",
|
|
116
|
+
port: Number(process.env.GHOSTAPI_PORT ?? "8080"),
|
|
117
|
+
protocol: process.env.GHOSTAPI_PROTOCOL ?? "http"
|
|
118
|
+
});
|
|
216
119
|
```
|
|
217
120
|
|
|
218
|
-
|
|
121
|
+
Now Stripe-shaped calls go to GhostAPI instead of real Stripe:
|
|
219
122
|
|
|
220
|
-
```
|
|
221
|
-
|
|
123
|
+
```text
|
|
124
|
+
POST http://127.0.0.1:8080/v1/payment_intents
|
|
222
125
|
```
|
|
223
126
|
|
|
224
|
-
##
|
|
127
|
+
## OpenAI Locally
|
|
225
128
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
When enabled:
|
|
229
|
-
|
|
230
|
-
- 85% of requests pass through normally.
|
|
231
|
-
- 15% get a simulated failure or delay.
|
|
232
|
-
- Failures are provider-shaped `429` or upstream errors like `503`.
|
|
233
|
-
- Latency is randomized between 2 and 5 seconds.
|
|
234
|
-
|
|
235
|
-
Enable it from the dashboard or via MCP.
|
|
236
|
-
|
|
237
|
-
## Provider Support
|
|
238
|
-
|
|
239
|
-
| Provider | Support |
|
|
240
|
-
| --- | --- |
|
|
241
|
-
| Stripe | Detection, validation, provider-shaped responses/errors, stateful objects. |
|
|
242
|
-
| Twilio | Detection, validation, Twilio-shaped errors. |
|
|
243
|
-
| Resend | Detection, validation, email-shaped mocks. |
|
|
244
|
-
| GitHub | Detection and realistic REST-style mocks. |
|
|
245
|
-
| Discord | Detection and local responses. |
|
|
246
|
-
| OpenAI | Detection for chat, responses, embeddings, models, images, audio, files, assistants, threads, vector stores. |
|
|
247
|
-
| Generic REST | Best-effort resource inference for unknown APIs. |
|
|
248
|
-
|
|
249
|
-
## Using SDKs Locally
|
|
250
|
-
|
|
251
|
-
Stripe example:
|
|
252
|
-
|
|
253
|
-
```ts
|
|
254
|
-
import Stripe from "stripe";
|
|
129
|
+
Install OpenAI:
|
|
255
130
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
});
|
|
131
|
+
```bash
|
|
132
|
+
npm install openai
|
|
259
133
|
```
|
|
260
134
|
|
|
261
|
-
OpenAI
|
|
135
|
+
Point the OpenAI SDK at GhostAPI:
|
|
262
136
|
|
|
263
137
|
```ts
|
|
264
138
|
import OpenAI from "openai";
|
|
@@ -269,86 +143,48 @@ export const openai = new OpenAI({
|
|
|
269
143
|
});
|
|
270
144
|
```
|
|
271
145
|
|
|
272
|
-
##
|
|
273
|
-
|
|
274
|
-
```bash
|
|
275
|
-
ghostapi start [--host 127.0.0.1] [--port 8080] [--model gpt-4o-mini] [--offline] [--https] [--open]
|
|
276
|
-
ghostapi open [--host 127.0.0.1] [--port 8080] [--https]
|
|
277
|
-
ghostapi setup [--write]
|
|
278
|
-
ghostapi report
|
|
279
|
-
ghostapi mcp
|
|
280
|
-
ghostapi doctor [--port 8080]
|
|
281
|
-
ghostapi init
|
|
282
|
-
ghostapi clear cache|state|events|all
|
|
283
|
-
ghostapi model get
|
|
284
|
-
ghostapi model set <model>
|
|
285
|
-
ghostapi providers list
|
|
286
|
-
ghostapi providers inspect <provider>
|
|
287
|
-
```
|
|
288
|
-
|
|
289
|
-
## Local Files
|
|
290
|
-
|
|
291
|
-
GhostAPI writes local development data under `.ghostapi/`:
|
|
292
|
-
|
|
293
|
-
| Path | Purpose |
|
|
294
|
-
| --- | --- |
|
|
295
|
-
| `.ghostapi/config.json` | Project config. |
|
|
296
|
-
| `.ghostapi/state.json` | Local API object state. |
|
|
297
|
-
| `.ghostapi/events.jsonl` | Persisted request events. |
|
|
298
|
-
| `.ghostapi/behaviors.json` | Deterministic behavior overrides from MCP/scenarios. |
|
|
299
|
-
| `.ghostapi/cache/*` | Cached mock responses. |
|
|
300
|
-
|
|
301
|
-
These files are local development artifacts and should not contain production secrets.
|
|
146
|
+
## Agent Prompt
|
|
302
147
|
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
- No real provider calls by default.
|
|
306
|
-
- Offline fallback works without an LLM key.
|
|
307
|
-
- Secrets are masked from logs, dashboard, cache keys, event history, and AI prompts.
|
|
308
|
-
- Dashboard mutation APIs reject hostile cross-origin requests.
|
|
309
|
-
- Setup writing never overwrites existing files.
|
|
310
|
-
- Chaos Mode is opt-in.
|
|
311
|
-
|
|
312
|
-
## Development
|
|
148
|
+
```text
|
|
149
|
+
Use the GhostAPI MCP server.
|
|
313
150
|
|
|
314
|
-
|
|
151
|
+
Keep all third-party API calls local on http://127.0.0.1:8080.
|
|
152
|
+
Do not call real providers.
|
|
315
153
|
|
|
316
|
-
|
|
317
|
-
npm install
|
|
154
|
+
Use GhostAPI MCP tools to inspect state, read traffic logs, configure deterministic responses, and test failure scenarios.
|
|
318
155
|
```
|
|
319
156
|
|
|
320
|
-
|
|
157
|
+
## Common Commands
|
|
321
158
|
|
|
322
159
|
```bash
|
|
323
|
-
|
|
160
|
+
npx @yiaany/ghostapi start --open
|
|
161
|
+
npx @yiaany/ghostapi open
|
|
162
|
+
npx @yiaany/ghostapi setup --write
|
|
163
|
+
npx @yiaany/ghostapi mcp
|
|
164
|
+
npx @yiaany/ghostapi report
|
|
165
|
+
npx @yiaany/ghostapi doctor --port 8080
|
|
166
|
+
npx @yiaany/ghostapi clear cache|state|events|all
|
|
167
|
+
npx @yiaany/ghostapi providers list
|
|
168
|
+
npx @yiaany/ghostapi providers inspect stripe
|
|
324
169
|
```
|
|
325
170
|
|
|
326
|
-
|
|
171
|
+
## Why
|
|
327
172
|
|
|
328
|
-
|
|
329
|
-
npm run typecheck
|
|
330
|
-
npm test
|
|
331
|
-
npm run build
|
|
332
|
-
npm pack --dry-run
|
|
333
|
-
```
|
|
173
|
+
AI agents are great at writing integration code. They also run that code. GhostAPI gives them a safe local world where failures are realistic, traffic is visible, scenarios are replayable, and production keys never need to be used.
|
|
334
174
|
|
|
335
|
-
|
|
175
|
+
## Safety
|
|
336
176
|
|
|
337
|
-
-
|
|
338
|
-
-
|
|
339
|
-
-
|
|
340
|
-
-
|
|
341
|
-
-
|
|
177
|
+
- No real provider calls by default.
|
|
178
|
+
- Keep SDKs pointed at `http://127.0.0.1:8080`.
|
|
179
|
+
- Use test-looking keys like `sk_test_ghostapi`.
|
|
180
|
+
- Secrets are masked before logs, cache, dashboard, events, and prompts.
|
|
181
|
+
- Chaos Mode is opt-in.
|
|
342
182
|
|
|
343
|
-
##
|
|
183
|
+
## Docs
|
|
344
184
|
|
|
345
|
-
-
|
|
346
|
-
-
|
|
347
|
-
- More provider packs.
|
|
348
|
-
- CI mode for agent-generated integration tests.
|
|
349
|
-
- Shared team workspaces.
|
|
350
|
-
- Hosted docs and landing site.
|
|
185
|
+
- GitHub: https://github.com/ghostapi/ghostapi
|
|
186
|
+
- Issues: https://github.com/ghostapi/ghostapi/issues
|
|
351
187
|
|
|
352
188
|
## License
|
|
353
189
|
|
|
354
|
-
MIT
|
|
190
|
+
MIT
|
package/dist/ai/aiGenerator.js
CHANGED
|
@@ -75,9 +75,9 @@ function generateStripeOfflineMock(request) {
|
|
|
75
75
|
const path = request.path;
|
|
76
76
|
const body = copyObjectBody(request.body);
|
|
77
77
|
if (isLikelyCollectionPath(request.method, path)) {
|
|
78
|
-
return { object: "list", data: [stripeObjectForPath(path, body)], has_more: false, url: path };
|
|
78
|
+
return annotateMock({ object: "list", data: [annotateMock(stripeObjectForPath(path, body), request, "stripe")], has_more: false, url: path }, request, "stripe");
|
|
79
79
|
}
|
|
80
|
-
return stripeObjectForPath(path, body);
|
|
80
|
+
return annotateMock(stripeObjectForPath(path, body), request, "stripe");
|
|
81
81
|
}
|
|
82
82
|
function stripeObjectForPath(path, body) {
|
|
83
83
|
const now = Math.floor(Date.now() / 1000);
|
|
@@ -128,20 +128,20 @@ function stripeObjectForPath(path, body) {
|
|
|
128
128
|
function generateOpenAiOfflineMock(request) {
|
|
129
129
|
const model = readString(copyObjectBody(request.body).model, "gpt-4o-mini");
|
|
130
130
|
if (request.path.includes("/chat/completions")) {
|
|
131
|
-
return {
|
|
131
|
+
return annotateMock({
|
|
132
132
|
id: `chatcmpl_mock_${Date.now().toString(36)}`,
|
|
133
133
|
object: "chat.completion",
|
|
134
134
|
created: Math.floor(Date.now() / 1000),
|
|
135
135
|
model,
|
|
136
136
|
choices: [{ index: 0, message: { role: "assistant", content: "Mock response from GhostAPI." }, finish_reason: "stop" }],
|
|
137
137
|
usage: { prompt_tokens: 12, completion_tokens: 6, total_tokens: 18 }
|
|
138
|
-
};
|
|
138
|
+
}, request, "openai");
|
|
139
139
|
}
|
|
140
|
-
return { id: `openai_mock_${Date.now().toString(36)}`, object: inferResourceName(request.path), model, created: Math.floor(Date.now() / 1000) };
|
|
140
|
+
return annotateMock({ id: `openai_mock_${Date.now().toString(36)}`, object: inferResourceName(request.path), model, created: Math.floor(Date.now() / 1000) }, request, "openai");
|
|
141
141
|
}
|
|
142
142
|
function generateTwilioOfflineMock(request) {
|
|
143
143
|
const body = copyObjectBody(request.body);
|
|
144
|
-
return {
|
|
144
|
+
return annotateMock({
|
|
145
145
|
sid: `SM${Date.now().toString(36).padEnd(32, "0").slice(0, 32)}`,
|
|
146
146
|
account_sid: "AC00000000000000000000000000000000",
|
|
147
147
|
status: "queued",
|
|
@@ -150,25 +150,25 @@ function generateTwilioOfflineMock(request) {
|
|
|
150
150
|
to: readString(body.To ?? body.to, "+15550000002"),
|
|
151
151
|
body: readString(body.Body ?? body.body, "Mock message from GhostAPI."),
|
|
152
152
|
date_created: new Date().toUTCString()
|
|
153
|
-
};
|
|
153
|
+
}, request, "twilio");
|
|
154
154
|
}
|
|
155
|
-
function generateResendOfflineMock(
|
|
156
|
-
return { id: `email_mock_${Date.now().toString(36)}` };
|
|
155
|
+
function generateResendOfflineMock(request) {
|
|
156
|
+
return annotateMock({ id: `email_mock_${Date.now().toString(36)}` }, request, "resend");
|
|
157
157
|
}
|
|
158
158
|
function generateGithubOfflineMock(request) {
|
|
159
159
|
const body = copyObjectBody(request.body);
|
|
160
|
-
return {
|
|
160
|
+
return annotateMock({
|
|
161
161
|
id: Date.now(),
|
|
162
162
|
node_id: `NODE_mock_${Date.now().toString(36)}`,
|
|
163
163
|
name: readString(body.name, inferResourceName(request.path)),
|
|
164
164
|
full_name: readString(body.full_name, `ghostapi/${inferResourceName(request.path)}`),
|
|
165
165
|
html_url: "https://github.com/ghostapi/mock",
|
|
166
166
|
private: false
|
|
167
|
-
};
|
|
167
|
+
}, request, "github");
|
|
168
168
|
}
|
|
169
169
|
function generateDiscordOfflineMock(request) {
|
|
170
170
|
const body = copyObjectBody(request.body);
|
|
171
|
-
return {
|
|
171
|
+
return annotateMock({
|
|
172
172
|
id: String(Date.now()),
|
|
173
173
|
type: 0,
|
|
174
174
|
content: readString(body.content, "Mock Discord message from GhostAPI."),
|
|
@@ -176,7 +176,7 @@ function generateDiscordOfflineMock(request) {
|
|
|
176
176
|
author: { id: "000000000000000001", username: "ghostapi", bot: true },
|
|
177
177
|
timestamp: new Date().toISOString(),
|
|
178
178
|
path: request.path
|
|
179
|
-
};
|
|
179
|
+
}, request, "discord");
|
|
180
180
|
}
|
|
181
181
|
function generateGenericOfflineMock(request) {
|
|
182
182
|
const resource = inferResourceName(request.path);
|
|
@@ -203,6 +203,9 @@ function copyObjectBody(body) {
|
|
|
203
203
|
return {};
|
|
204
204
|
return body;
|
|
205
205
|
}
|
|
206
|
+
function annotateMock(body, request, provider) {
|
|
207
|
+
return { ...body, provider, method: request.method, path: request.path };
|
|
208
|
+
}
|
|
206
209
|
function readString(value, fallback) {
|
|
207
210
|
return typeof value === "string" && value.trim() !== "" ? value : fallback;
|
|
208
211
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiGenerator.js","sourceRoot":"","sources":["../../src/ai/aiGenerator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAQlF,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA0B,EAAE,QAAsB,EAAE,QAAkB,EAAE,MAAoB;IAC/H,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,mBAAmB,CAAC;IAE9J,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,IAAI,GAAY,IAAI,CAAC;IAEzB,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACrC,OAAO;YACL,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC;SAC7C,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEtG,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC;YAC9B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;YACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE;SACtC,EAAE,MAAM,CAAC,CAAC;QAEX,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO;gBACL,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,mBAAmB,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC;aAC3H,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,GAAG,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,OAAO;QACL,MAAM,EAAE,GAAG;QACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI;KACL,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA0B,EAAE,QAAgB;IACvE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACrE,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAEvE,MAAM,MAAM,GAAG,QAAQ,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IAC7D,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;IAE1J,OAAO;QACL,EAAE,EAAE,MAAM;QACV,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe;QACxE,QAAQ;QACR,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA0B;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,IAAI,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IACjG,CAAC;IAED,OAAO,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,IAA6B;IACtE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAE1C,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACtC,OAAO;YACL,EAAE,EAAE,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YACxC,MAAM,EAAE,gBAAgB;YACxB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;YACrC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC;YAC1C,MAAM,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,yBAAyB;YAClG,aAAa,EAAE,kBAAkB,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YAC1D,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;SACpC,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO;YACL,EAAE,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YACzC,MAAM,EAAE,UAAU;YAClB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,sBAAsB,CAAC;YACrD,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC;YAChD,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,GAAG;YACZ,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;SACpC,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,EAAE,EAAE,gBAAgB,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YAC7C,MAAM,EAAE,kBAAkB;YAC1B,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;YACtC,cAAc,EAAE,MAAM;YACtB,MAAM,EAAE,UAAU;YAClB,GAAG,EAAE,iDAAiD;YACtD,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,GAAG;SACb,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QAC5C,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC;QAC/B,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,GAAG;QACZ,GAAG,IAAI;KACR,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA0B;IAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC/C,OAAO;YACL,EAAE,EAAE,iBAAiB,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YAC9C,MAAM,EAAE,iBAAiB;YACzB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YACtC,KAAK;YACL,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,8BAA8B,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;YACvH,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;SACrE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAClJ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA0B;IAC3D,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO;QACL,GAAG,EAAE,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;QAChE,WAAW,EAAE,oCAAoC;QACjD,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,cAAc;QACzB,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;QACxD,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,cAAc,CAAC;QAClD,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,6BAA6B,CAAC;QACvE,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACvC,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,QAA2B;IAC5D,OAAO,EAAE,EAAE,EAAE,cAAc,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA0B;IAC3D,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;QACd,OAAO,EAAE,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QAC/C,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5D,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACpF,QAAQ,EAAE,kCAAkC;QAC5C,OAAO,EAAE,KAAK;KACf,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,OAA0B;IAC5D,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,EAAE,CAAC;QACP,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,qCAAqC,CAAC;QACxE,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE;QACrE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,OAA0B;IAC5D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG;QACX,EAAE,EAAE,GAAG,QAAQ,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QACjD,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,IAAI;QACZ,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;KAChC,CAAC;IAEF,IAAI,sBAAsB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,OAAO;YACL,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,KAAK;SAChB,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,IAAa;IACnC,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAChF,OAAO,IAA+B,CAAC;AACzC,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,QAAgB;IAClD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC7E,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,QAAgB;IAClD,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACnG,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AACrD,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;AACtH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAA0B,EAAE,QAAgB,EAAE,QAAkB;IAClG,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IACxD,QAAQ,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAChD,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAC/C,QAAQ,CAAC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,YAAY,EAAE,CAAC;IAExB,MAAM,MAAM,GAAG,eAAe,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IAEpE,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;IAElG,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAEzD,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC;IACpG,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAEnC,QAAQ,CAAC,GAAG,EAAE,CAAC;IAEf,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"aiGenerator.js","sourceRoot":"","sources":["../../src/ai/aiGenerator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yiaany/ghostapi",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.3",
|
|
4
|
+
"description": "The local internet for AI coding agents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
},
|
|
13
13
|
"homepage": "https://github.com/ghostapi/ghostapi#readme",
|
|
14
14
|
"bin": {
|
|
15
|
-
"ghostapi": "
|
|
15
|
+
"ghostapi": "dist/cli/index.js"
|
|
16
16
|
},
|
|
17
17
|
"files": [
|
|
18
18
|
"dist",
|
|
@@ -33,6 +33,12 @@
|
|
|
33
33
|
"test": "vitest run"
|
|
34
34
|
},
|
|
35
35
|
"keywords": [
|
|
36
|
+
"mcp",
|
|
37
|
+
"stripe",
|
|
38
|
+
"openai",
|
|
39
|
+
"cursor",
|
|
40
|
+
"proxy",
|
|
41
|
+
"sandbox",
|
|
36
42
|
"mock-server",
|
|
37
43
|
"local-development",
|
|
38
44
|
"ai-agents",
|
|
@@ -45,8 +51,6 @@
|
|
|
45
51
|
"dependencies": {
|
|
46
52
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
47
53
|
"express": "^4.19.2",
|
|
48
|
-
"react": "^19.2.3",
|
|
49
|
-
"react-dom": "^19.2.3",
|
|
50
54
|
"selfsigned": "^5.5.0",
|
|
51
55
|
"zod": "^4.4.3"
|
|
52
56
|
},
|
|
@@ -56,6 +60,8 @@
|
|
|
56
60
|
"@types/react": "^19.2.7",
|
|
57
61
|
"@types/react-dom": "^19.2.3",
|
|
58
62
|
"@vitejs/plugin-react": "^4.7.0",
|
|
63
|
+
"react": "^19.2.3",
|
|
64
|
+
"react-dom": "^19.2.3",
|
|
59
65
|
"tsx": "^4.16.2",
|
|
60
66
|
"typescript": "^5.5.3",
|
|
61
67
|
"vite": "^5.4.21",
|