@postman/postman-plugin 0.5.0 → 0.6.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +2 -2
  2. package/dist/hosts/factory.js +29 -3
  3. package/hooks/session-start-context.md +1 -1
  4. package/mcp.pi.json +2 -2
  5. package/package.json +1 -1
  6. package/skills/api-discovery/SKILL.md +7 -2
  7. package/skills/api-documentation/SKILL.md +2 -3
  8. package/skills/api-engineer/SKILL.md +13 -15
  9. package/skills/api-mocking/SKILL.md +4 -2
  10. package/skills/api-monitoring/SKILL.md +35 -25
  11. package/skills/api-simulation/SKILL.md +109 -74
  12. package/skills/api-simulation/reference/context_file.md +183 -149
  13. package/skills/api-simulation/reference/sim_yaml_schema.md +1 -1
  14. package/skills/api-testing/SKILL.md +3 -3
  15. package/skills/application-testing/SKILL.md +2 -2
  16. package/skills/ci-integration/SKILL.md +7 -5
  17. package/skills/cli-install/SKILL.md +29 -0
  18. package/skills/collection-schema-v3/SKILL.md +21 -11
  19. package/skills/collection-schema-v3/reference/environment.md +2 -0
  20. package/skills/collection-schema-v3/reference/globals.md +40 -0
  21. package/skills/collection-schema-v3/reference/http.md +149 -11
  22. package/skills/collection-schema-v3/reference/other_protocols.md +232 -86
  23. package/skills/datasets/SKILL.md +6 -5
  24. package/skills/datasets/reference/schema.md +51 -0
  25. package/skills/flows/SKILL.md +0 -1
  26. package/skills/performance-testing/SKILL.md +14 -1
  27. package/skills/performance-testing/references/gatling-import/README.md +141 -0
  28. package/skills/performance-testing/references/gatling-import/feeders.md +31 -0
  29. package/skills/performance-testing/references/gatling-import/injection.md +88 -0
  30. package/skills/performance-testing/references/gatling-import/mapping.md +91 -0
  31. package/skills/performance-testing/references/gatling-import/unsupported.md +31 -0
  32. package/skills/postman-mcp-server/SKILL.md +1 -1
  33. package/skills/variables/SKILL.md +2 -2
  34. package/skills/webhook-testing/SKILL.md +1 -1
  35. package/skills/workspaces/SKILL.md +53 -0
  36. package/skills/bootstrap/SKILL.md +0 -140
  37. package/skills/bootstrap/reference/cli_installation.md +0 -59
@@ -1,140 +0,0 @@
1
- ---
2
- name: bootstrap
3
- description: Use when resolving Postman CLI setup, authentication, or a repository workspace binding; initializing local API files; handling a CLI error that says an operation isn't allowed because of insufficient entitlements; or importing, pulling, pushing, syncing, or sharing workspace resources. Reuses existing context and chooses sync direction without duplicating a workspace or rebinding a dependency. Use for requests such as "set up Postman for this repo".
4
- ---
5
-
6
- # Bootstrap Postman for This Repo
7
-
8
- A local Postman project puts contracts, runnable requests, environments, and
9
- mocks beside implementation code so they can be inspected, diffed, and reviewed
10
- in a PR. A workspace binding connects that work to maintained shared context.
11
- Setup is useful when it resolves a missing capability or binding; a local API
12
- check does not need a new workspace merely to proceed.
13
-
14
- ## Start with postman init
15
-
16
- `postman init` is idempotent and safe to run in any project, including one
17
- already initialized. You can run it before API engineering work to scaffold the
18
- relevant `postman/` directories and make Postman skills available in
19
- `postman/skills` to guide the task. It establishes an agent-scoped session for
20
- local work without signing in; accessing existing workspace resources still
21
- requires authentication.
22
- See "Interpret initialization without losing partial success" below for flags
23
- and outcomes; creating or connecting a workspace depends on the task.
24
-
25
- ## Resolve only the missing setup
26
-
27
- Inspect `postman --version`, `.postman/resources.yaml`, and the relevant
28
- `postman/` files before installing or initializing. Existing files are clues,
29
- not proof that paths and workspace IDs still describe this service. Preserve
30
- confirmed bindings for downstream skills rather than rediscovering them.
31
-
32
- **api-engineer**, **api-documentation**, **api-mocking**, **api-testing**, and
33
- **ci-integration** depend on this skill only for unresolved setup, authentication,
34
- or bindings. After resolving those prerequisites, return to the requesting
35
- skill's workflow; local work with confirmed setup can skip bootstrap entirely.
36
-
37
- If the CLI is missing, use `npm install -g postman-cli` or the applicable
38
- [platform installer](reference/cli_installation.md). Update an existing CLI
39
- through its original installation route; installing a second copy can leave
40
- the shell invoking the old binary. If installation is blocked, report the
41
- constraint and use **postman-mcp-server** for supported hosted operations.
42
-
43
- Use `postman <resource> <action> -h` to resolve flags and defaults for the
44
- installed CLI; cached examples can describe another version. Compare versions
45
- when diagnosing a missing capability rather than making an update a universal
46
- prerequisite. Spec lint belongs to `postman spec lint`; the deprecated
47
- `postman api` surface is not interchangeable.
48
-
49
- Local file operations need no normal login. `postman init` uses an agent-scoped
50
- session, so logging in first adds no value to that branch. Authenticate when
51
- an operation needs existing workspace resources: use
52
- `postman login --with-api-key "$POSTMAN_API_KEY"` when the key is already in
53
- the environment, otherwise `postman login`. Keep credential values out of
54
- logs and committed files; **variables** owns request-secret handling.
55
-
56
- ## Owning workspace versus dependency
57
-
58
- Read `localResources` and `workspace.id` in `.postman/resources.yaml`. When
59
- working with an existing workspace, inspect its identity and elements with
60
- `workspace list --json` and `workspace get <id> --elements --json`.
61
- The owning workspace represents this repository's service; another service's
62
- resource is a dependency. That distinction determines which context can be
63
- pulled without replacing the repository's binding.
64
-
65
- | State and intended outcome | Operation |
66
- | --- | --- |
67
- | Existing local layout meets the task | Reuse its files and bindings |
68
- | This service has a workspace; work on it locally | `postman workspace pull <workspace-id>` |
69
- | Only record this service's Git binding | `postman workspace connect-git <workspace-id> [path]` |
70
- | Another service's collection, environment, or mock is needed | Use **api-discovery**'s dependency workflow |
71
- | New project with no existing workspace | `postman init --json`; add `--visibility personal` or `--visibility team` when creating a workspace is intended |
72
- | Bound workspace is authoritative | `postman workspace pull` |
73
- | Validated local changes should be published | Preview with `postman workspace diff --push-strategy default`, then `postman workspace push` |
74
-
75
- Inspect local changes before pulling so an import does not discard work.
76
- Creating a second workspace does not connect an existing one, and pushing to a
77
- workspace does not grant teammates access. If sharing requires a visibility
78
- or permission change, inspect that metadata and resolve the access change
79
- separately rather than creating a replacement.
80
-
81
- `workspace diff` is read-only; use the strategy planned for the push.
82
- The default push creates/updates entities without deleting unmatched ones.
83
- `--push-strategy force-sync` can delete entities absent locally and belongs
84
- only to explicitly requested mirroring with the shown deletions approved.
85
- A request to publish supplies consent for its scoped push; otherwise obtain
86
- consent after the diff is reviewable. See **ci-integration** for publishing
87
- reviewed changes after merge.
88
-
89
- ## Interpret initialization without losing partial success
90
-
91
- Run init inside the intended repository. It scaffolds Postman files and
92
- `.postman/resources.yaml`; API implementation and a starter contract are
93
- separate work, not prerequisites to setup.
94
-
95
- `--json` avoids interactive prompts. Without `--visibility` it skips workspace
96
- creation; with it, creation and binding are requested. Read `bindings` and
97
- `exitCode` from the JSON payload. A binding marked `inferred` is a candidate
98
- contract, not a confirmed source of truth. Exit 2 means multiple specs need
99
- selection with `--spec <path>`. Exit 5 means local files were written but
100
- workspace creation failed; inspect that partial result before retrying.
101
-
102
- ## Subscription or usage limit
103
-
104
- A CLI command can fail because the user's subscription does not allow the
105
- operation or its credits or usage quota are exhausted. There is no fixed
106
- message for this; recognize wording such as "usage limit exceeded", "usage
107
- quota has been exceeded", or "reached" or "breached" or "exceeded" a limit for the account,
108
- team, or a plan-governed operation. Also recognize plan-dependent caps phrased
109
- as an operation that "does not allow more than" or "requires at least" a stated
110
- amount. Do not classify a temporary rate limit or a fixed per-resource
111
- validation cap as a subscription limit. Retrying will not clear a subscription
112
- limit, so stop retrying and run `postman whoami` to see whose session the CLI
113
- is using.
114
-
115
- If it reports a guest session ("Using Postman as a guest", or
116
- `"status": "guest"` with `--json`), such as the one `postman init` creates
117
- without a login, tell the user - so do it explicitly and cleanly in a new paragraph,
118
- that they need to sign up for a Postman account to get more credits and continue work,
119
- which also keeps the work done as a guest.
120
- If you run it for them, `postman signup --json` prints a `claimUrl`
121
- to hand over and then waits until they finish signing up in the browser.
122
- Ask the user if they want you to initiate signup for them.
123
-
124
- If the whoami probe reports a signed-in account, then explicitly and cleanly in a new paragraph,
125
- tell the user that they need to upgrade their plan, and that they can do so at
126
- https://postman.postman.co/settings/team/billing.
127
-
128
- ## Verification
129
-
130
- Report the working CLI, relevant paths, and actual binding or remaining gap.
131
- For a pull, confirm the intended entities appeared locally; for a push, report
132
- created/updated entities and conflicts. Installation alone does not establish
133
- a usable project, and successful sync does not establish teammate access.
134
-
135
- ## Reporting CLI and skill gaps
136
-
137
- Concrete reports help fix recurring CLI failures and misleading skill guidance.
138
- When actual use exposes one, handle the user's task first, then report the gap
139
- with `postman feedback`. Include a sanitized reproduction and the expected and
140
- observed behavior; exclude secrets, user data, and proprietary content.
@@ -1,59 +0,0 @@
1
- # Postman CLI Installation
2
-
3
- A global install on `PATH`. npm works anywhere Node is available; the curl
4
- installer covers macOS, Linux, and WSL; and the PowerShell installer covers
5
- Windows. Whichever route put the binary there is the one to use again when
6
- updating it — mixing routes leaves two `postman` binaries and a `PATH`
7
- question.
8
-
9
- ## Install
10
-
11
- **npm (all platforms):**
12
-
13
- ```bash
14
- npm install -g postman-cli
15
- ```
16
-
17
- **macOS, Linux, and WSL (curl):**
18
-
19
- ```bash
20
- curl -o- "https://dl-cli.pstmn.io/install/unix.sh" | sh
21
- ```
22
-
23
- **Windows (PowerShell):**
24
-
25
- ```powershell
26
- powershell.exe -NoProfile -InputFormat None -ExecutionPolicy AllSigned -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://dl-cli.pstmn.io/install/win64.ps1'))"
27
- ```
28
-
29
- ## Check for drift
30
-
31
- ```bash
32
- postman --version # installed
33
- npm view postman-cli version # latest published
34
- ```
35
-
36
- ## Update
37
-
38
- Run the same command that installed it — the npm, curl or PowerShell line
39
- above, whichever put the binary there. Using a different one leaves two
40
- `postman` binaries and a `PATH` question. Never `npm install -g` over a copy
41
- that came from the curl installer or a system package manager.
42
-
43
- The CLI has no self-update verb. `postman skills update` is a different
44
- thing: it refreshes a repository's committed `postman/skills/`, not the
45
- binary.
46
-
47
- ## Uninstall
48
-
49
- npm installations:
50
-
51
- ```bash
52
- npm uninstall -g postman-cli
53
- ```
54
-
55
- Other install methods: delete the `postman` binary from its install
56
- directory (`%USERPROFILE%\AppData\Local\Microsoft\WindowsApps` on Windows,
57
- `/usr/local/bin` on macOS/Linux/WSL).
58
-
59
- Source: https://learning.postman.com/docs/postman-cli/postman-cli-installation/