@unbrained/pm-cli 2026.10.11 → 2026.10.12
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/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +18 -0
- package/dist/cli/commander-usage.d.ts +5 -5
- package/dist/cli/commander-usage.js +3 -3
- package/dist/cli/error-guidance.d.ts +2 -0
- package/dist/cli/error-guidance.js +2 -2
- package/dist/cli/help-json-payload.js +1 -1
- package/dist/cli/main.d.ts +1 -0
- package/dist/cli/main.js +4 -4
- package/dist/cli/register-operations.d.ts +9 -4
- package/dist/cli/register-operations.js +1 -1
- package/dist/cli-bundle/bundle-manifest.json +1 -1
- package/dist/cli-bundle/chunks/{chunk-2JYTSTQP.js → chunk-3LQTJN4J.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-YMLF6QT7.js → chunk-6PZPUJW3.js} +28 -28
- package/dist/cli-bundle/chunks/{chunk-RUT3CCAG.js → chunk-B465HPS5.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ESRACL6K.js → chunk-DT3KUUKY.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-SSY4OSJR.js → chunk-GUVKPOY6.js} +2 -2
- package/dist/cli-bundle/chunks/chunk-ILQEZ4Y6.js +2 -0
- package/dist/cli-bundle/chunks/{chunk-RBPOO46D.js → chunk-JRRXWH5B.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-MEWBSWE3.js → chunk-LH5QDBMN.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-KNW3RSLS.js → chunk-M5NDSW6E.js} +30 -30
- package/dist/cli-bundle/chunks/{chunk-K2UTE75T.js → chunk-MHPU2LDF.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-OBLO45UM.js → chunk-QM3M7GB5.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-S445XEYT.js → chunk-UABZJXIS.js} +2 -2
- package/dist/cli-bundle/chunks/{chunk-ZWRLAOA4.js → chunk-X2I2EEAS.js} +2 -2
- package/dist/cli-bundle/chunks/{register-list-query-T6BOR67M.js → register-list-query-OR33UEML.js} +2 -2
- package/dist/cli-bundle/chunks/{register-mutation-6NXR7SAJ.js → register-mutation-R34EJ3NH.js} +2 -2
- package/dist/cli-bundle/chunks/register-operations-UHSMEHSF.js +2 -0
- package/dist/cli-bundle/chunks/{register-setup-MAYFPKBX.js → register-setup-5E3PT22L.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-SIEGIPNT.js → chunk-7QIZB2F2.js} +7 -7
- package/dist/cli-bundle/focused-chunks/{chunk-PLTTMQAW.js → chunk-AJG3DBXR.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-AXBO53EQ.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-W5AE7GKZ.js → chunk-CYEZLKLL.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-PBCYGO7X.js → chunk-FXRWJEQ5.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-GVGFUD52.js → chunk-IKJFAU32.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-DMSADMEU.js → chunk-OGOLIS5R.js} +2 -2
- package/dist/cli-bundle/focused-chunks/chunk-PPH5N26M.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-WAOXID5J.js → chunk-RNAWRTQV.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-B3YW6H2I.js → chunk-RZVNGUT7.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-52UJEHEV.js → chunk-SV6YYZLR.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-EIOQNLBQ.js → chunk-TS46OZD5.js} +2 -2
- package/dist/cli-bundle/focused-chunks/{chunk-KNJR2WUO.js → chunk-VBTLX5SN.js} +62 -62
- package/dist/cli-bundle/focused-chunks/{chunk-JGFSSR3G.js → chunk-YCOJLIDI.js} +3 -3
- package/dist/cli-bundle/focused-chunks/chunk-YDJT33JU.js +2 -0
- package/dist/cli-bundle/focused-chunks/{chunk-AU6VJGTY.js → chunk-Z4T3637Y.js} +2 -2
- package/dist/cli-bundle/main.js +22 -22
- package/dist/cli-bundle/sdk-authoring.js +1 -1
- package/dist/cli-bundle/sdk-contracts.js +1 -1
- package/dist/cli-bundle/sdk-core.js +31 -31
- package/dist/cli-bundle/sdk-governance.js +1 -1
- package/dist/cli-bundle/sdk-graph.js +1 -1
- package/dist/cli-bundle/sdk-merge.js +24 -24
- package/dist/cli-bundle/sdk-query.js +1 -1
- package/dist/cli-bundle/sdk-runtime.js +1 -1
- package/dist/cli-bundle/sdk-testing.js +1 -1
- package/dist/cli-bundle/sdk.js +8 -8
- package/dist/core/history/event-classification.d.ts +1 -1
- package/dist/core/history/event-classification.js +1 -1
- package/dist/core/item/item-format.d.ts +2 -0
- package/dist/core/item/item-format.js +2 -2
- package/dist/core/telemetry/runtime.d.ts +1 -1
- package/dist/core/telemetry/runtime.js +2 -2
- package/dist/core/test/background-runs.d.ts +1 -0
- package/dist/core/test/background-runs.js +2 -2
- package/dist/sdk/agent/command-suggestions.d.ts +2 -0
- package/dist/sdk/agent/command-suggestions.js +1 -1
- package/dist/sdk/cli-contracts/flag-contracts.js +1 -1
- package/dist/sdk/cli-contracts/flag-lexicon-contracts.js +1 -1
- package/dist/sdk/cli-contracts/grammar-contracts.js +1 -1
- package/dist/sdk/cli-contracts/registration-helpers.d.ts +1 -4
- package/dist/sdk/cli-contracts/registration-helpers.js +1 -1
- package/dist/sdk/cli-contracts/tool-parameter-tables.js +1 -1
- package/dist/sdk/cli-contracts/tool-schema.d.ts +1 -1
- package/dist/sdk/cli-contracts/tool-schema.js +1 -1
- package/dist/sdk/core.d.ts +1 -0
- package/dist/sdk/core.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-1.js +1 -1
- package/dist/sdk/generated/generated-error-code-catalog-part-2.js +1 -1
- package/dist/sdk/governance/artifact-ledgers.js +1 -1
- package/dist/sdk/index.d.ts +2 -0
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/public-surface.json +1 -1
- package/dist/sdk/test/batch.js +1 -1
- package/dist/sdk/test/command-args.d.ts +4 -0
- package/dist/sdk/test/command-args.js +2 -0
- package/dist/sdk/test/entry.d.ts +3 -0
- package/dist/sdk/test/entry.js +1 -1
- package/dist/sdk/test/execution.d.ts +15 -4
- package/dist/sdk/test/execution.js +2 -2
- package/dist/sdk/test/prerequisites.d.ts +6 -0
- package/dist/sdk/test/prerequisites.js +2 -0
- package/dist/sdk/test/trust.js +1 -1
- package/dist/sdk/test/update.d.ts +55 -0
- package/dist/sdk/test/update.js +2 -0
- package/dist/types.d.ts +4 -0
- package/dist/types.js +1 -1
- package/docs/LINKED_TEST_EDITS.md +79 -0
- package/docs/RELEASING.md +19 -8
- package/docs/SDK.md +178 -636
- package/docs/SDK_EVIDENCE_TRACEABILITY.md +4 -0
- package/docs/TESTING.md +13 -0
- package/docs/generated/FLAG_LEXICON_BUDGETS.md +2 -2
- package/docs/generated/REFUSAL_CLOSURE_CENSUS.md +8 -3
- package/docs/performance/runner-qualification.md +36 -0
- package/marketplace.json +1 -1
- package/package.json +1 -1
- package/packages/pm-beads/package.json +1 -1
- package/packages/pm-calendar/package.json +1 -1
- package/packages/pm-command-kit/package.json +1 -1
- package/packages/pm-digital-twin/package.json +1 -1
- package/packages/pm-governance-audit/package.json +1 -1
- package/packages/pm-guide-shell/package.json +1 -1
- package/packages/pm-kanban/package.json +1 -1
- package/packages/pm-lifecycle-hooks/package.json +1 -1
- package/packages/pm-linked-test-adapters/package.json +1 -1
- package/packages/pm-search-advanced/package.json +1 -1
- package/packages/pm-templates/package.json +1 -1
- package/packages/pm-todos/package.json +1 -1
- package/packages/pm-vcs/package.json +1 -1
- package/plugins/pm-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/pm-claude/package.json +1 -1
- package/plugins/pm-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/pm-codex/package.json +1 -1
- package/plugins/pm-codex/plugin.json +1 -1
- package/runtime-dependencies.json +1 -1
- package/dist/cli-bundle/chunks/chunk-BXSXT5Z6.js +0 -2
- package/dist/cli-bundle/chunks/register-operations-PDOBQZUJ.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-2CJWTLQG.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-MJQ253F3.js +0 -2
- package/dist/cli-bundle/focused-chunks/chunk-WOEZJUA2.js +0 -2
|
@@ -58,6 +58,10 @@ not contain the rationale and graph fields required to support the answer.
|
|
|
58
58
|
|
|
59
59
|
## SDK and MCP
|
|
60
60
|
|
|
61
|
+
[Linked-test metadata edits](LINKED_TEST_EDITS.md) provide a public SDK operation
|
|
62
|
+
for correcting one test while retaining its position, original provenance and
|
|
63
|
+
immutable history, with matching CLI and MCP action options.
|
|
64
|
+
|
|
61
65
|
The public SDK exposes both reusable-client and one-shot forms:
|
|
62
66
|
|
|
63
67
|
```ts
|
package/docs/TESTING.md
CHANGED
|
@@ -506,6 +506,9 @@ the descriptor registry does not yet know about.
|
|
|
506
506
|
|
|
507
507
|
## Linked Tests
|
|
508
508
|
|
|
509
|
+
For in-place metadata corrections and context admission/refusal semantics, see
|
|
510
|
+
[Linked-test edits](LINKED_TEST_EDITS.md).
|
|
511
|
+
|
|
509
512
|
Add tests to the item that owns the work:
|
|
510
513
|
|
|
511
514
|
```bash
|
|
@@ -735,6 +738,16 @@ transient process logs are gone.
|
|
|
735
738
|
|
|
736
739
|
## Linked-Test Assertions
|
|
737
740
|
|
|
741
|
+
Tracked by [pm-test-measure-prerequisite](../.agents/pm/issues/pm-test-measure-prerequisite.toon):
|
|
742
|
+
`--measure` requires `--run`, as declared by CLI help and machine contracts.
|
|
743
|
+
A measurement-only request refuses before writing item or history data. Its
|
|
744
|
+
tokenized recovery preserves measurement values and run selectors and keeps
|
|
745
|
+
clone-local command trust enforced. Measurement evidence describes execution;
|
|
746
|
+
it cannot be added to an item without running its linked tests.
|
|
747
|
+
|
|
748
|
+
See [startup runner qualification](performance/runner-qualification.md) for the
|
|
749
|
+
independent control measurements retained by the SDK and CLI performance gates.
|
|
750
|
+
|
|
738
751
|
Linked tests can include assertion metadata:
|
|
739
752
|
|
|
740
753
|
```bash
|
|
@@ -57,7 +57,7 @@ This file is generated by `listPmFlagLexicon()`. Compatibility aliases do not co
|
|
|
57
57
|
| `docs` | evidence | 30 | 30 |
|
|
58
58
|
| `deps` | graph | 32 | 32 |
|
|
59
59
|
| `plan` | graph | 109 | 109 |
|
|
60
|
-
| `test` | quality |
|
|
60
|
+
| `test` | quality | 56 | 56 |
|
|
61
61
|
| `test-all` | quality | 40 | 40 |
|
|
62
62
|
| `telemetry` | workspace | 21 | 21 |
|
|
63
63
|
| `stats` | context | 29 | 29 |
|
|
@@ -106,7 +106,7 @@ This file is generated by `listPmFlagLexicon()`. Compatibility aliases do not co
|
|
|
106
106
|
| `item docs` | evidence | 30 | 30 |
|
|
107
107
|
| `item deps` | graph | 32 | 32 |
|
|
108
108
|
| `item append` | evidence | 25 | 25 |
|
|
109
|
-
| `item test` | quality |
|
|
109
|
+
| `item test` | quality | 56 | 56 |
|
|
110
110
|
| `item test worker` | internal | 20 | 20 |
|
|
111
111
|
| `history acknowledge` | evidence | 28 | 28 |
|
|
112
112
|
| `item copy` | intake | 24 | 24 |
|
|
@@ -4,12 +4,12 @@ Tracker: `pm-f05lsg`.
|
|
|
4
4
|
|
|
5
5
|
Every catalog code is listed. An `uncovered` row is an explicit closure obligation, never an omission or implied approval.
|
|
6
6
|
|
|
7
|
-
- Catalog error codes:
|
|
7
|
+
- Catalog error codes: 402
|
|
8
8
|
- Executable error codes: 19
|
|
9
9
|
- Executable-code ratchet floor: 18
|
|
10
10
|
- Required executable canonical codes: `bulk_ids_input_empty`, `bulk_ids_input_missing_path`, `bulk_ids_input_unreadable`, `invalid_argument_value`, `manifest_unknown_key`, `missing_lifecycle_target`, `missing_required_argument`, `no_version_bounds_declared`, `projection_options_mutually_exclusive`, `tracker_not_initialized`, `tracker_root_missing`, `tracker_root_not_directory`, `tracker_root_unreadable`, `unknown_context_intent`, `unknown_field_projection`, `unknown_option`, `unknown_subcommand`
|
|
11
|
-
- Uncovered error codes:
|
|
12
|
-
- Coverage fraction: 0.
|
|
11
|
+
- Uncovered error codes: 383
|
|
12
|
+
- Coverage fraction: 0.047264
|
|
13
13
|
- Closed-domain probes: 19
|
|
14
14
|
- Grammar probes: 117
|
|
15
15
|
|
|
@@ -185,7 +185,10 @@ Every catalog code is listed. An `uncovered` row is an explicit closure obligati
|
|
|
185
185
|
| `item_not_found` | `item_not_found` | uncovered | none | 0 |
|
|
186
186
|
| `likely_duplicate` | `likely_duplicate` | uncovered | none | 0 |
|
|
187
187
|
| `linked_artifact_mutation_conflict` | `linked_artifact_mutation_conflict` | uncovered | none | 0 |
|
|
188
|
+
| `linked_test_context_invalid` | `linked_test_context_invalid` | uncovered | none | 0 |
|
|
188
189
|
| `linked_test_remove_no_match` | `linked_test_remove_no_match` | uncovered | none | 0 |
|
|
190
|
+
| `linked_test_update_ambiguous` | `linked_test_update_ambiguous` | uncovered | none | 0 |
|
|
191
|
+
| `linked_test_update_no_match` | `linked_test_update_no_match` | uncovered | none | 0 |
|
|
189
192
|
| `linked_test_value_not_quoted` | `linked_test_value_not_quoted` | uncovered | none | 0 |
|
|
190
193
|
| `list_source_incomplete` | `list_source_incomplete` | uncovered | none | 0 |
|
|
191
194
|
| `local_package_archive_unsafe` | `local_package_archive_unsafe` | uncovered | none | 0 |
|
|
@@ -319,6 +322,8 @@ Every catalog code is listed. An `uncovered` row is an explicit closure obligati
|
|
|
319
322
|
| `template_type_unknown` | `template_type_unknown` | uncovered | none | 0 |
|
|
320
323
|
| `terminal_plan_mutation` | `terminal_plan_mutation` | uncovered | none | 0 |
|
|
321
324
|
| `terminal_state_conflict` | `terminal_state_conflict` | uncovered | none | 0 |
|
|
325
|
+
| `test_measure_requires_execution` | `test_measure_requires_execution` | uncovered | none | 0 |
|
|
326
|
+
| `test_measure_requires_run` | `test_measure_requires_run` | uncovered | none | 0 |
|
|
322
327
|
| `tracked_runtime_cache_files` | `tracked_runtime_cache_files` | uncovered | none | 0 |
|
|
323
328
|
| `tracker_not_initialized` | `tracker_not_initialized` | executable | owned_state | 1 |
|
|
324
329
|
| `tracker_root_missing` | `tracker_root_missing` | executable | owned_state | 1 |
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Startup benchmark runner qualification
|
|
2
|
+
|
|
3
|
+
Tracked by [pm-bj7rq0](../../.agents/pm/issues/pm-bj7rq0.toon).
|
|
4
|
+
|
|
5
|
+
The SDK import and CLI transport gates retain their absolute latency and RSS
|
|
6
|
+
ratchets. A bare Node control determines whether the runner qualifies independently
|
|
7
|
+
of product admission. Both benchmarks bracket their census with post-warmup
|
|
8
|
+
controls before and after it; the CLI uses five samples per control. Both use the existing SDK bare-process
|
|
9
|
+
budget and its fixed 30 ms scheduler margin.
|
|
10
|
+
|
|
11
|
+
Successful checks explicitly return `runner_qualification.status=qualified` and
|
|
12
|
+
`product_admission=passed`. Failed checks retain the complete measured report,
|
|
13
|
+
every product violation, runtime identity, available parallelism, load averages,
|
|
14
|
+
and memory observations. `benchmark_runner_unqualified` leaves product admission
|
|
15
|
+
`unverified`; it still exits unsuccessfully. A qualified runner with an over-budget
|
|
16
|
+
command returns `benchmark_product_budget_exceeded` and failed admission.
|
|
17
|
+
|
|
18
|
+
If the final control process fails after product measurements, its unavailable
|
|
19
|
+
status and error remain in `baseline_after`; the completed report and every
|
|
20
|
+
product violation remain available. Check mode rejects admission as unverified,
|
|
21
|
+
and update mode refuses to write a calibration from that failed control.
|
|
22
|
+
Calibration also requires both available controls to qualify against the existing
|
|
23
|
+
SDK control budget before any budget or documentation write. A new SDK calibration
|
|
24
|
+
target uses the committed control budget; an existing target retains its own
|
|
25
|
+
prior control ceiling for admission. An unqualified runner cannot raise its own ceiling
|
|
26
|
+
to certify its measurements. Even qualified controls cannot increase the prior
|
|
27
|
+
control ceiling: update mode compares the proposed p95-derived ceiling with the
|
|
28
|
+
existing ceiling and refuses an increase before creating directories or writing
|
|
29
|
+
calibration files. Equal or reduced ceilings remain admissible.
|
|
30
|
+
This refusal returns `benchmark_control_budget_increase` with product admission
|
|
31
|
+
`unverified`; a qualified control does not establish a measured product failure.
|
|
32
|
+
|
|
33
|
+
Control cost is never subtracted from product measurements. Pressure observations
|
|
34
|
+
are diagnostic context and do not prove the cause of a failure. An unchanged base
|
|
35
|
+
comparison on the same runtime helps distinguish a new regression from a runner
|
|
36
|
+
that cannot qualify; a failed or unavailable comparison cannot certify a pass.
|
package/marketplace.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"pm","owner":{"name":"unbrained","url":"https://github.com/unbraind/pm-cli"},"description":"Official marketplace for pm CLI — native git-based project management for Claude Code and AI coding agents.","version":"2026.10.
|
|
1
|
+
{"name":"pm","owner":{"name":"unbrained","url":"https://github.com/unbraind/pm-cli"},"description":"Official marketplace for pm CLI — native git-based project management for Claude Code and AI coding agents.","version":"2026.10.12","plugins":[{"name":"pm-claude","source":"./plugins/pm-claude","description":"Native pm CLI integration for Claude Code — 32 MCP tools, 14 workflow skills with slash invocations, 4 subagents, hybrid TUI task tracking, session context injection, and coordination subagents for git-based project management without leaving Claude Code.","version":"2026.10.12","author":{"name":"unbrained","url":"https://github.com/unbraind/pm-cli"},"homepage":"https://github.com/unbraind/pm-cli","repository":"https://github.com/unbraind/pm-cli","license":"MIT","keywords":["pm-cli","project-management","mcp","tasks","agents","workflows","git-native","task-tracker","ai"],"category":"productivity"}]}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-beads","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-beads","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for importing Beads JSONL records.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-beads#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-beads"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","beads"],"pm":{"aliases":["beads"],"extensions":["extensions/beads"],"catalog":{"display_name":"Beads Import","category":"migration","summary":"Import Beads JSONL records into pm while preserving source IDs.","tags":["migration","beads","import"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-beads#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-beads","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-calendar","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-calendar","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for calendar and agenda views.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-calendar#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-calendar"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","calendar","agenda"],"pm":{"aliases":["calendar"],"extensions":["extensions/calendar"],"catalog":{"display_name":"Calendar Views","category":"workflow","summary":"Show agenda, day, week, and month views for deadlines, reminders, and scheduled events.","tags":["calendar","agenda","workflow"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-calendar#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-calendar","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-command-kit","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-command-kit","version":"2026.10.12","private":true,"type":"module","description":"First-party pm exemplar package for the commands capability: registerCommand, registerFlags, and registerParser.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-command-kit#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-command-kit"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","sdk","commands","exemplar"],"pm":{"aliases":["command-kit"],"extensions":["extensions/command-kit"],"catalog":{"display_name":"Command Kit Exemplar","category":"sdk","summary":"Copy-paste-able exemplar for registerCommand, registerFlags, and registerParser.","tags":["sdk","commands","parser","exemplar"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-command-kit#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-command-kit","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-digital-twin","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-digital-twin","version":"2026.10.12","private":true,"type":"module","description":"Beyond-PM exemplar: a temporal production-facility digital twin built entirely on public pm SDK and extension primitives.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-digital-twin#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-digital-twin"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","sdk","digital-twin","event-sourcing","temporal-graph","exemplar"],"pm":{"aliases":["digital-twin","twin"],"extensions":["extensions/digital-twin"],"catalog":{"display_name":"Digital Twin SDK Exemplar","category":"sdk","summary":"Temporal facility graph proving event replay, point-in-time state, invariants, federation, checkpoints, and compact exports through public SDK contracts.","tags":["sdk","digital-twin","event-sourcing","graph","offline-first","exemplar"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-digital-twin#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-digital-twin","report":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-digital-twin/GAP_REPORT.md"}},"docs":["README.md","GAP_REPORT.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-governance-audit","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-governance-audit","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for governance audit and normalization workflows.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-governance-audit#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-governance-audit"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","governance","audit","normalize","hooks"],"pm":{"aliases":["governance-audit","audit"],"extensions":["extensions/governance-audit"],"catalog":{"display_name":"Governance Audit","category":"governance","summary":"Run dedupe audits, comments audits, and normalize sweeps as package-owned workflows.","tags":["governance","audit","normalize","hooks"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-governance-audit#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-governance-audit","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-guide-shell","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-guide-shell","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for guide and shell completion workflows.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-guide-shell#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-guide-shell"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","guide","completion","shell"],"pm":{"aliases":["guide-shell"],"extensions":["extensions/guide-shell"],"catalog":{"display_name":"Guide + Shell UX","category":"workflow","summary":"Restore guide documentation and shell completion commands as package-owned UX surfaces.","tags":["guide","completion","shell"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-guide-shell#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-guide-shell","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-kanban","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-kanban","version":"2026.10.12","private":true,"type":"module","description":"First-party pm archetype package: a complete Kanban continuous-flow profile built on public SDK primitives.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-kanban#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-kanban"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","sdk","profile","archetype","kanban","exemplar"],"pm":{"aliases":["kanban"],"extensions":["extensions/kanban"],"catalog":{"display_name":"Kanban Archetype","category":"sdk","summary":"Installable Kanban continuous-flow archetype: Card item type, flow fields, and a ProjectProfileDefinition built on public SDK primitives.","tags":["sdk","profile","archetype","kanban","schema","exemplar"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-kanban#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-kanban","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-lifecycle-hooks","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-lifecycle-hooks","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package demonstrating safe lifecycle hook registration.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-lifecycle-hooks#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-lifecycle-hooks"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","hooks","lifecycle","sdk"],"pm":{"aliases":["lifecycle-hooks"],"extensions":["extensions/lifecycle-hooks"],"catalog":{"display_name":"Lifecycle Hooks","category":"sdk","summary":"Default-inert lifecycle hook exemplar for package authors.","tags":["hooks","lifecycle","sdk"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-lifecycle-hooks#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-lifecycle-hooks","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-linked-test-adapters","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-linked-test-adapters","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for optional linked-test run management adapters and reporters.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-linked-test-adapters#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-linked-test-adapters"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","linked-tests","background-runs","test-runs"],"pm":{"aliases":["linked-test-adapters"],"extensions":["extensions/linked-test-adapters"],"catalog":{"display_name":"Linked Test Adapters","category":"testing","summary":"Restore optional linked-test run management/reporting command surfaces.","tags":["tests","linked-tests","background","reporting"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-linked-test-adapters#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-linked-test-adapters","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-search-advanced","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-search-advanced","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for semantic, hybrid, and reindex search workflows.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-search-advanced#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-search-advanced"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","search","reindex","semantic","hybrid"],"pm":{"aliases":["search-advanced"],"extensions":["extensions/search-advanced"],"catalog":{"display_name":"Advanced Search","category":"search","summary":"Enable semantic/hybrid search modes and reindex workflows.","tags":["search","semantic","hybrid","reindex"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-search-advanced#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-search-advanced","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-templates","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-templates","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for reusable create templates.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-templates#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-templates"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","templates"],"pm":{"aliases":["templates"],"extensions":["extensions/templates"],"catalog":{"display_name":"Create Templates","category":"workflow","summary":"Save, list, show, and apply reusable pm create option templates.","tags":["templates","create","workflow"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-templates#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-templates","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-todos","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-todos","version":"2026.10.12","private":true,"type":"module","description":"First-party pm package for Todo markdown import and export.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-todos#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-todos"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","project-management","todos"],"pm":{"aliases":["todos"],"extensions":["extensions/todos"],"catalog":{"display_name":"Todos Import/Export","category":"migration","summary":"Import and export Todo markdown tasks through pm package commands.","tags":["migration","todos","import","export"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-todos#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-todos","report":"https://github.com/unbraind/pm-cli/issues"}},"docs":["README.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-vcs-sdk-exemplar","version":"2026.10.
|
|
1
|
+
{"name":"@unbrained/pm-vcs-sdk-exemplar","version":"2026.10.12","private":true,"type":"module","description":"Beyond-PM exemplar: a VCS-style changeset workflow built entirely on public pm SDK and extension primitives.","homepage":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-vcs#readme","repository":{"type":"git","url":"git+https://github.com/unbraind/pm-cli.git","directory":"packages/pm-vcs"},"bugs":{"url":"https://github.com/unbraind/pm-cli/issues"},"keywords":["pm-package","sdk","vcs","event-sourcing","exemplar"],"pm":{"aliases":["vcs-exemplar"],"extensions":["extensions/vcs"],"catalog":{"display_name":"VCS SDK Exemplar","category":"sdk","summary":"Non-PM changeset/ref workflow proving custom schema, domain commands, hooks, history replay, and typed relationship events through public SDK contracts.","tags":["sdk","vcs","event-sourcing","graph","exemplar"],"links":{"docs":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-vcs#readme","repository":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-vcs","report":"https://github.com/unbraind/pm-cli/tree/main/packages/pm-vcs/GAP_REPORT.md"}},"docs":["README.md","GAP_REPORT.md"],"examples":["README.md"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"$schema":"https://json.schemastore.org/claude-code-plugin-manifest.json","name":"pm-claude","displayName":"pm CLI","description":"Native pm CLI integration for Claude Code — 32 MCP tools, 14 skills with slash invocations, 4 subagents (coordinator, delivery-chain, triage, verification), hybrid TUI task tracking (pm as persistent store + Claude Code task panel as live view), session context injection, and full git-based project management without leaving Claude Code.","version":"2026.10.
|
|
1
|
+
{"$schema":"https://json.schemastore.org/claude-code-plugin-manifest.json","name":"pm-claude","displayName":"pm CLI","description":"Native pm CLI integration for Claude Code — 32 MCP tools, 14 skills with slash invocations, 4 subagents (coordinator, delivery-chain, triage, verification), hybrid TUI task tracking (pm as persistent store + Claude Code task panel as live view), session context injection, and full git-based project management without leaving Claude Code.","version":"2026.10.12","author":{"name":"unbrained","url":"https://github.com/unbraind/pm-cli"},"homepage":"https://github.com/unbraind/pm-cli","repository":"https://github.com/unbraind/pm-cli","license":"MIT","keywords":["pm-cli","project-management","mcp","tasks","agents","workflows","git-native","task-tracker","ai"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"pm-claude-runtime","private":true,"type":"module","version":"2026.10.
|
|
1
|
+
{"name":"pm-claude-runtime","private":true,"type":"module","version":"2026.10.12","dependencies":{"@unbrained/pm-cli":"2026.10.12"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"pm-codex","version":"2026.10.
|
|
1
|
+
{"name":"pm-codex","version":"2026.10.12","description":"Native Codex integration for pm-cli with bundled MCP tools, skills, commands, and agent workflows.","author":{"name":"unbrained","url":"https://github.com/unbraind/pm-cli"},"homepage":"https://github.com/unbraind/pm-cli/tree/main/plugins/pm-codex","repository":"https://github.com/unbraind/pm-cli","license":"MIT","keywords":["pm-cli","codex","mcp","project-management","agents","tasks","workflows"],"skills":"./skills/","mcpServers":"./.mcp.json","interface":{"displayName":"pm CLI","shortDescription":"Native pm tracker tools and agent workflows","longDescription":"Use pm CLI from Codex through native MCP tools instead of shelling out to the pm command. The plugin bundles tracker operations, skills, command prompts, and subagent workflow guidance for planning, execution, validation, release, and audit work.","developerName":"unbrained","category":"Coding","capabilities":["Interactive","Read","Write"],"websiteURL":"https://github.com/unbraind/pm-cli","privacyPolicyURL":"https://github.com/unbraind/pm-cli/blob/main/SECURITY.md","termsOfServiceURL":"https://github.com/unbraind/pm-cli/blob/main/LICENSE","defaultPrompt":["Use pm CLI to orient, claim, track, verify, and close this repository task"],"composerIcon":"./assets/pm-cli-small.svg","logo":"./assets/pm-cli-small.svg","screenshots":[],"brandColor":"#2563EB"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"pm-codex-runtime","private":true,"type":"module","version":"2026.10.
|
|
1
|
+
{"name":"pm-codex-runtime","private":true,"type":"module","version":"2026.10.12","dependencies":{"@unbrained/pm-cli":"2026.10.12"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"$schema":"https://agent-plugins.org/schemas/1.0.0/plugin.schema.json","name":"pm-codex","version":"2026.10.
|
|
1
|
+
{"$schema":"https://agent-plugins.org/schemas/1.0.0/plugin.schema.json","name":"pm-codex","version":"2026.10.12","description":"Repository-native project context workflows and a version-pinned pm MCP server for Codex.","author":{"name":"unbrained","url":"https://github.com/unbraind/pm-cli"},"homepage":"https://github.com/unbraind/pm-cli/tree/main/plugins/pm-codex","repository":"https://github.com/unbraind/pm-cli","license":"MIT","keywords":["pm-cli","codex","mcp","project-management","agents"],"extensions":{"com.openai":{"interface":{"displayName":"pm CLI","shortDescription":"Track project context with pm","longDescription":"Orient, plan, implement, verify, and hand off work with repository-native pm records and a bundled MCP server.","developerName":"unbrained","category":"Coding","capabilities":["Interactive","Read","Write"],"websiteURL":"https://github.com/unbraind/pm-cli","privacyPolicyURL":"https://github.com/unbraind/pm-cli/blob/main/SECURITY.md","termsOfServiceURL":"https://github.com/unbraind/pm-cli/blob/main/LICENSE","defaultPrompt":["Use pm to orient, track, verify, and hand off this repository task."],"composerIcon":"./assets/pm-cli-small.svg","logo":"./assets/pm-cli-small.svg","brandColor":"#2563EB"}}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@unbrained/pm-cli","version":"2026.10.11","lockfileVersion":3,"requires":true,"packages":{"":{"name":"@unbrained/pm-cli","version":"2026.10.11","dependencies":{"@sentry/node":"10.75.1","@toon-format/toon":"^4.1.1","commander":"^15.0.0","fast-json-patch":"^3.1.1","npm-package-arg":"^13.0.2","tar":"7.5.22","tinyglobby":"^0.2.17","yaml":"^2.9.1"},"peerDependencies":{"@types/node":"^22 || ^24 || ^26"},"peerDependenciesMeta":{"@types/node":{"optional":true}},"bin":{"pm-cli":"dist/cli.js","pm":"dist/cli.js","pm-mcp":"dist/mcp/server.js","pm-mcp-http":"dist/mcp/http-server.js"},"engines":{"node":">=22.18.0"}},"node_modules/@isaacs/fs-minipass":{"version":"4.0.1","resolved":"https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz","integrity":"sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==","engines":{"node":">=18.0.0"},"dependencies":{"minipass":"7.1.3"}},"node_modules/@opentelemetry/api":{"version":"1.9.1","resolved":"https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.1.tgz","integrity":"sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==","engines":{"node":">=8.0.0"}},"node_modules/@opentelemetry/api-logs":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.220.0.tgz","integrity":"sha512-CmVa4ImJ+ynfrPMNaAXHET6Bhb44SwzmfyVJFq9ni2jgXJR/l7C6gfVFddNmHP+ZOkP9cf4f9DBe68qVLTHc9w==","engines":{"node":">=8.0.0"},"dependencies":{"@opentelemetry/api":"1.9.1"}},"node_modules/@opentelemetry/core":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/core/-/core-2.11.0.tgz","integrity":"sha512-7YP44XH0tV6+Mb54x2YGf84i7yi+31MBZlE8JwvozkxyTvXbSp10X7cI7YE49ChJ3shMJoBmCJF3+1QFBJctGA==","peerDependencies":{"@opentelemetry/api":">=1.0.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/instrumentation":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.220.0.tgz","integrity":"sha512-xQx3E2WxP1mDvKzxLxX+CTCtNLa560YJZ3087qYHerl2YmiKpv7AH+dAy7vmx+eVrZ5BwhfWUAVoKOoxCNHcpw==","peerDependencies":{"@opentelemetry/api":"^1.3.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.220.0","import-in-the-middle":"3.5.1","require-in-the-middle":"8.0.1"}},"node_modules/@opentelemetry/resources":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/resources/-/resources-2.11.0.tgz","integrity":"sha512-Ie7+8q8MDF4FAEQCKVMTx3ReUvxiIAgIiiW3c9JdmP8+HMcDy20puT+AHjexnExgnbvBxjQ9fjkFDWrikJ2jQA==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace/-/sdk-trace-2.11.0.tgz","integrity":"sha512-fFnTqGm8/G73GQVnxYi7LXa1ZVYEUvgL6XI1LpvV0bPC7WQ/ZGgKxCSl8FnlZBKto9JHHEFTO6s6CUpvvtwFrA==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/resources":"2.11.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace-base":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-2.11.0.tgz","integrity":"sha512-H19x/TX/LZdqiYOjM7fqtSxwlplC5pgelavqbQdHbhdq0q/AI/TGkM2dfGuuynTXmJPeF2HoZVoPDu+TGoW78A==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/resources":"2.11.0","@opentelemetry/sdk-trace":"2.11.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/semantic-conventions":{"version":"1.43.0","resolved":"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.43.0.tgz","integrity":"sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==","engines":{"node":">=14"}},"node_modules/@sentry/conventions":{"version":"0.16.0","resolved":"https://registry.npmjs.org/@sentry/conventions/-/conventions-0.16.0.tgz","integrity":"sha512-fO9PLmHdVURcSPUpWCItWAtgKiMwGdJHbovoSEyLplX5sxs2ugvI4CBPTrkkgqhObnZOD0CnWBKDzSVQYBKEyQ==","engines":{"node":">=14"}},"node_modules/@sentry/core":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/core/-/core-10.75.1.tgz","integrity":"sha512-+/+UanewqPK+oJvDQIHWKLUqnsa0iymEThOPCaFBA8ulbQh9k8lsz8V+NtJwP4G3ncclfzp15tzqVwn6iugV4Q==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0"}},"node_modules/@sentry/node":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/node/-/node-10.75.1.tgz","integrity":"sha512-qiWGwh0KiBoq4vEl0FbxFKw0xnOKxuKCaEVdtwMZLAGw1ef77NOCdie7e/Fmcsk9c++Ck4D8NmIjQm6BidRVSQ==","engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.11.0","@sentry/conventions":"0.16.0","@sentry/core":"10.75.1","@sentry/node-core":"10.75.1","@sentry/opentelemetry":"10.75.1","@sentry/server-utils":"10.75.1","import-in-the-middle":"3.5.1"}},"node_modules/@sentry/node-core":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/node-core/-/node-core-10.75.1.tgz","integrity":"sha512-HR0Iy7oNFOP26cwaRi33ZZnvlUSMFzXbZoRgYtBAkqUHDNQA6LWG1N1OoIdKNRJzDkGu/zefbM50Amqgyy1u1Q==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/exporter-trace-otlp-http":">=0.57.0 <1","@opentelemetry/instrumentation":">=0.57.1 <1","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"peerDependenciesMeta":{"@opentelemetry/api":{"optional":true},"@opentelemetry/core":{"optional":true},"@opentelemetry/exporter-trace-otlp-http":{"optional":true},"@opentelemetry/instrumentation":{"optional":true},"@opentelemetry/sdk-trace-base":{"optional":true}},"engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.75.1","@sentry/opentelemetry":"10.75.1","import-in-the-middle":"3.5.1"},"optionalDependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.11.0"}},"node_modules/@sentry/opentelemetry":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-10.75.1.tgz","integrity":"sha512-leRKyFkEgV47Qo2wKCMEIYxPgnp67C+wYFg0GPreX5owRde0l18F5BEmsYUU57WAjBKBDo2idrrEEQaU15uH8g==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/sdk-trace-base":"2.11.0","@sentry/conventions":"0.16.0","@sentry/core":"10.75.1"}},"node_modules/@sentry/server-utils":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/server-utils/-/server-utils-10.75.1.tgz","integrity":"sha512-HuA/bCtthA5x/AjYD5WUbG6CBcYJb0WAWKNgrgNkUWtll6eMqG3+7LO4PBcGRbZtlg1OFgClJm4iQFgRN7+ZZg==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.75.1"}},"node_modules/@toon-format/toon":{"version":"4.1.1","resolved":"https://registry.npmjs.org/@toon-format/toon/-/toon-4.1.1.tgz","integrity":"sha512-SGCkS7IjVpwRmGPgnY8ENKpAf0EdAnZDOQkvFW0d2cgOpdn9FEFl7sTgryESyypXrWr0YajHGpwsAUX4zw9ZvA=="},"node_modules/chownr":{"version":"3.0.0","resolved":"https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz","integrity":"sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==","engines":{"node":">=18"}},"node_modules/cjs-module-lexer":{"version":"2.2.1","resolved":"https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.2.1.tgz","integrity":"sha512-Ca8swihM+/4yKecYHY52kgJd300hi2lADU/a1RxNTRe+RJ9jvqQlESpbz9DnG9mowez8qwXHB8qYdIUw9e+F5Q=="},"node_modules/commander":{"version":"15.0.0","resolved":"https://registry.npmjs.org/commander/-/commander-15.0.0.tgz","integrity":"sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==","engines":{"node":">=22.12.0"}},"node_modules/debug":{"version":"4.4.3","resolved":"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz","integrity":"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==","peerDependencies":{"supports-color":"*"},"peerDependenciesMeta":{"supports-color":{"optional":true}},"engines":{"node":">=6.0"},"dependencies":{"ms":"2.1.3"}},"node_modules/es-module-lexer":{"version":"3.0.2","resolved":"https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-3.0.2.tgz","integrity":"sha512-BuIB67FngDSyQ/dpQNOZybwdEBDUGJQvOqwWr4ha/ufYiqzuEwPkKO2zLhRAgay28tStRIHUeWmszZAJo3GCOg=="},"node_modules/fast-json-patch":{"version":"3.1.1","resolved":"https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz","integrity":"sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ=="},"node_modules/fdir":{"version":"6.5.0","resolved":"https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz","integrity":"sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==","peerDependencies":{"picomatch":"^3 || ^4"},"peerDependenciesMeta":{"picomatch":{"optional":true}},"engines":{"node":">=12.0.0"},"optionalDependencies":{"picomatch":"4.0.7"}},"node_modules/hosted-git-info":{"version":"9.0.3","resolved":"https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz","integrity":"sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"lru-cache":"11.5.2"}},"node_modules/import-in-the-middle":{"version":"3.5.1","resolved":"https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-3.5.1.tgz","integrity":"sha512-mPKuL8bPQzecui2KK6Gb+M8JvJoHnhS1FeYGa22QopBmlevF5F0FE6ued/B5EgHDeIoMTONIpDWWFKUPOG0DBQ==","engines":{"node":">=18"},"dependencies":{"cjs-module-lexer":"2.2.1","es-module-lexer":"3.0.2","module-details-from-path":"1.0.4"}},"node_modules/lru-cache":{"version":"11.5.2","resolved":"https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz","integrity":"sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==","engines":{"node":"20 || >=22"}},"node_modules/minipass":{"version":"7.1.3","resolved":"https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz","integrity":"sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==","engines":{"node":">=16 || 14 >=14.17"}},"node_modules/minizlib":{"version":"3.1.0","resolved":"https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz","integrity":"sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==","engines":{"node":">= 18"},"dependencies":{"minipass":"7.1.3"}},"node_modules/module-details-from-path":{"version":"1.0.4","resolved":"https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.4.tgz","integrity":"sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w=="},"node_modules/ms":{"version":"2.1.3","resolved":"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz","integrity":"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="},"node_modules/npm-package-arg":{"version":"13.0.2","resolved":"https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-13.0.2.tgz","integrity":"sha512-IciCE3SY3uE84Ld8WZU23gAPPV9rIYod4F+rc+vJ7h7cwAJt9Vk6TVsK60ry7Uj3SRS3bqRRIGuTp9YVlk6WNA==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"hosted-git-info":"9.0.3","proc-log":"6.1.0","semver":"7.8.5","validate-npm-package-name":"7.0.2"}},"node_modules/picomatch":{"version":"4.0.7","resolved":"https://registry.npmjs.org/picomatch/-/picomatch-4.0.7.tgz","integrity":"sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==","engines":{"node":">=12"}},"node_modules/proc-log":{"version":"6.1.0","resolved":"https://registry.npmjs.org/proc-log/-/proc-log-6.1.0.tgz","integrity":"sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/require-in-the-middle":{"version":"8.0.1","resolved":"https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-8.0.1.tgz","integrity":"sha512-QT7FVMXfWOYFbeRBF6nu+I6tr2Tf3u0q8RIEjNob/heKY/nh7drD/k7eeMFmSQgnTtCzLDcCu/XEnpW2wk4xCQ==","engines":{"node":">=9.3.0 || >=8.10.0 <9.0.0"},"dependencies":{"debug":"4.4.3","module-details-from-path":"1.0.4"}},"node_modules/semver":{"version":"7.8.5","resolved":"https://registry.npmjs.org/semver/-/semver-7.8.5.tgz","integrity":"sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==","engines":{"node":">=10"},"hasBin":true},"node_modules/tar":{"version":"7.5.22","resolved":"https://registry.npmjs.org/tar/-/tar-7.5.22.tgz","integrity":"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==","engines":{"node":">=18"},"dependencies":{"@isaacs/fs-minipass":"4.0.1","chownr":"3.0.0","minipass":"7.1.3","minizlib":"3.1.0","yallist":"5.0.0"}},"node_modules/tinyglobby":{"version":"0.2.17","resolved":"https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz","integrity":"sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==","engines":{"node":">=12.0.0"},"dependencies":{"fdir":"6.5.0","picomatch":"4.0.7"}},"node_modules/validate-npm-package-name":{"version":"7.0.2","resolved":"https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz","integrity":"sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/yallist":{"version":"5.0.0","resolved":"https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz","integrity":"sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==","engines":{"node":">=18"}},"node_modules/yaml":{"version":"2.9.1","resolved":"https://registry.npmjs.org/yaml/-/yaml-2.9.1.tgz","integrity":"sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==","engines":{"node":">= 14.6"},"hasBin":true}}}
|
|
1
|
+
{"name":"@unbrained/pm-cli","version":"2026.10.12","lockfileVersion":3,"requires":true,"packages":{"":{"name":"@unbrained/pm-cli","version":"2026.10.12","dependencies":{"@sentry/node":"10.75.1","@toon-format/toon":"^4.1.1","commander":"^15.0.0","fast-json-patch":"^3.1.1","npm-package-arg":"^13.0.2","tar":"7.5.22","tinyglobby":"^0.2.17","yaml":"^2.9.1"},"peerDependencies":{"@types/node":"^22 || ^24 || ^26"},"peerDependenciesMeta":{"@types/node":{"optional":true}},"bin":{"pm-cli":"dist/cli.js","pm":"dist/cli.js","pm-mcp":"dist/mcp/server.js","pm-mcp-http":"dist/mcp/http-server.js"},"engines":{"node":">=22.18.0"}},"node_modules/@isaacs/fs-minipass":{"version":"4.0.1","resolved":"https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz","integrity":"sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==","engines":{"node":">=18.0.0"},"dependencies":{"minipass":"7.1.3"}},"node_modules/@opentelemetry/api":{"version":"1.9.1","resolved":"https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.1.tgz","integrity":"sha512-gLyJlPHPZYdAk1JENA9LeHejZe1Ti77/pTeFm/nMXmQH/HFZlcS/O2XJB+L8fkbrNSqhdtlvjBVjxwUYanNH5Q==","engines":{"node":">=8.0.0"}},"node_modules/@opentelemetry/api-logs":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.220.0.tgz","integrity":"sha512-CmVa4ImJ+ynfrPMNaAXHET6Bhb44SwzmfyVJFq9ni2jgXJR/l7C6gfVFddNmHP+ZOkP9cf4f9DBe68qVLTHc9w==","engines":{"node":">=8.0.0"},"dependencies":{"@opentelemetry/api":"1.9.1"}},"node_modules/@opentelemetry/core":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/core/-/core-2.11.0.tgz","integrity":"sha512-7YP44XH0tV6+Mb54x2YGf84i7yi+31MBZlE8JwvozkxyTvXbSp10X7cI7YE49ChJ3shMJoBmCJF3+1QFBJctGA==","peerDependencies":{"@opentelemetry/api":">=1.0.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/instrumentation":{"version":"0.220.0","resolved":"https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.220.0.tgz","integrity":"sha512-xQx3E2WxP1mDvKzxLxX+CTCtNLa560YJZ3087qYHerl2YmiKpv7AH+dAy7vmx+eVrZ5BwhfWUAVoKOoxCNHcpw==","peerDependencies":{"@opentelemetry/api":"^1.3.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.220.0","import-in-the-middle":"3.5.1","require-in-the-middle":"8.0.1"}},"node_modules/@opentelemetry/resources":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/resources/-/resources-2.11.0.tgz","integrity":"sha512-Ie7+8q8MDF4FAEQCKVMTx3ReUvxiIAgIiiW3c9JdmP8+HMcDy20puT+AHjexnExgnbvBxjQ9fjkFDWrikJ2jQA==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace/-/sdk-trace-2.11.0.tgz","integrity":"sha512-fFnTqGm8/G73GQVnxYi7LXa1ZVYEUvgL6XI1LpvV0bPC7WQ/ZGgKxCSl8FnlZBKto9JHHEFTO6s6CUpvvtwFrA==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/resources":"2.11.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/sdk-trace-base":{"version":"2.11.0","resolved":"https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-2.11.0.tgz","integrity":"sha512-H19x/TX/LZdqiYOjM7fqtSxwlplC5pgelavqbQdHbhdq0q/AI/TGkM2dfGuuynTXmJPeF2HoZVoPDu+TGoW78A==","peerDependencies":{"@opentelemetry/api":">=1.3.0 <1.10.0"},"engines":{"node":"^18.19.0 || >=20.6.0"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/resources":"2.11.0","@opentelemetry/sdk-trace":"2.11.0","@opentelemetry/semantic-conventions":"1.43.0"}},"node_modules/@opentelemetry/semantic-conventions":{"version":"1.43.0","resolved":"https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.43.0.tgz","integrity":"sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==","engines":{"node":">=14"}},"node_modules/@sentry/conventions":{"version":"0.16.0","resolved":"https://registry.npmjs.org/@sentry/conventions/-/conventions-0.16.0.tgz","integrity":"sha512-fO9PLmHdVURcSPUpWCItWAtgKiMwGdJHbovoSEyLplX5sxs2ugvI4CBPTrkkgqhObnZOD0CnWBKDzSVQYBKEyQ==","engines":{"node":">=14"}},"node_modules/@sentry/core":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/core/-/core-10.75.1.tgz","integrity":"sha512-+/+UanewqPK+oJvDQIHWKLUqnsa0iymEThOPCaFBA8ulbQh9k8lsz8V+NtJwP4G3ncclfzp15tzqVwn6iugV4Q==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0"}},"node_modules/@sentry/node":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/node/-/node-10.75.1.tgz","integrity":"sha512-qiWGwh0KiBoq4vEl0FbxFKw0xnOKxuKCaEVdtwMZLAGw1ef77NOCdie7e/Fmcsk9c++Ck4D8NmIjQm6BidRVSQ==","engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.11.0","@sentry/conventions":"0.16.0","@sentry/core":"10.75.1","@sentry/node-core":"10.75.1","@sentry/opentelemetry":"10.75.1","@sentry/server-utils":"10.75.1","import-in-the-middle":"3.5.1"}},"node_modules/@sentry/node-core":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/node-core/-/node-core-10.75.1.tgz","integrity":"sha512-HR0Iy7oNFOP26cwaRi33ZZnvlUSMFzXbZoRgYtBAkqUHDNQA6LWG1N1OoIdKNRJzDkGu/zefbM50Amqgyy1u1Q==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/exporter-trace-otlp-http":">=0.57.0 <1","@opentelemetry/instrumentation":">=0.57.1 <1","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"peerDependenciesMeta":{"@opentelemetry/api":{"optional":true},"@opentelemetry/core":{"optional":true},"@opentelemetry/exporter-trace-otlp-http":{"optional":true},"@opentelemetry/instrumentation":{"optional":true},"@opentelemetry/sdk-trace-base":{"optional":true}},"engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.75.1","@sentry/opentelemetry":"10.75.1","import-in-the-middle":"3.5.1"},"optionalDependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/instrumentation":"0.220.0","@opentelemetry/sdk-trace-base":"2.11.0"}},"node_modules/@sentry/opentelemetry":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-10.75.1.tgz","integrity":"sha512-leRKyFkEgV47Qo2wKCMEIYxPgnp67C+wYFg0GPreX5owRde0l18F5BEmsYUU57WAjBKBDo2idrrEEQaU15uH8g==","peerDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/core":">=2.8.0 <3.0.0","@opentelemetry/sdk-trace-base":"^1.30.1 || ^2.1.0"},"engines":{"node":">=18"},"dependencies":{"@opentelemetry/api":"1.9.1","@opentelemetry/core":"2.11.0","@opentelemetry/sdk-trace-base":"2.11.0","@sentry/conventions":"0.16.0","@sentry/core":"10.75.1"}},"node_modules/@sentry/server-utils":{"version":"10.75.1","resolved":"https://registry.npmjs.org/@sentry/server-utils/-/server-utils-10.75.1.tgz","integrity":"sha512-HuA/bCtthA5x/AjYD5WUbG6CBcYJb0WAWKNgrgNkUWtll6eMqG3+7LO4PBcGRbZtlg1OFgClJm4iQFgRN7+ZZg==","engines":{"node":">=18"},"dependencies":{"@sentry/conventions":"0.16.0","@sentry/core":"10.75.1"}},"node_modules/@toon-format/toon":{"version":"4.1.1","resolved":"https://registry.npmjs.org/@toon-format/toon/-/toon-4.1.1.tgz","integrity":"sha512-SGCkS7IjVpwRmGPgnY8ENKpAf0EdAnZDOQkvFW0d2cgOpdn9FEFl7sTgryESyypXrWr0YajHGpwsAUX4zw9ZvA=="},"node_modules/chownr":{"version":"3.0.0","resolved":"https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz","integrity":"sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==","engines":{"node":">=18"}},"node_modules/cjs-module-lexer":{"version":"2.2.1","resolved":"https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.2.1.tgz","integrity":"sha512-Ca8swihM+/4yKecYHY52kgJd300hi2lADU/a1RxNTRe+RJ9jvqQlESpbz9DnG9mowez8qwXHB8qYdIUw9e+F5Q=="},"node_modules/commander":{"version":"15.0.0","resolved":"https://registry.npmjs.org/commander/-/commander-15.0.0.tgz","integrity":"sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==","engines":{"node":">=22.12.0"}},"node_modules/debug":{"version":"4.4.3","resolved":"https://registry.npmjs.org/debug/-/debug-4.4.3.tgz","integrity":"sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==","peerDependencies":{"supports-color":"*"},"peerDependenciesMeta":{"supports-color":{"optional":true}},"engines":{"node":">=6.0"},"dependencies":{"ms":"2.1.3"}},"node_modules/es-module-lexer":{"version":"3.0.2","resolved":"https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-3.0.2.tgz","integrity":"sha512-BuIB67FngDSyQ/dpQNOZybwdEBDUGJQvOqwWr4ha/ufYiqzuEwPkKO2zLhRAgay28tStRIHUeWmszZAJo3GCOg=="},"node_modules/fast-json-patch":{"version":"3.1.1","resolved":"https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz","integrity":"sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ=="},"node_modules/fdir":{"version":"6.5.0","resolved":"https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz","integrity":"sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==","peerDependencies":{"picomatch":"^3 || ^4"},"peerDependenciesMeta":{"picomatch":{"optional":true}},"engines":{"node":">=12.0.0"},"optionalDependencies":{"picomatch":"4.0.7"}},"node_modules/hosted-git-info":{"version":"9.0.3","resolved":"https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz","integrity":"sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"lru-cache":"11.5.2"}},"node_modules/import-in-the-middle":{"version":"3.5.1","resolved":"https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-3.5.1.tgz","integrity":"sha512-mPKuL8bPQzecui2KK6Gb+M8JvJoHnhS1FeYGa22QopBmlevF5F0FE6ued/B5EgHDeIoMTONIpDWWFKUPOG0DBQ==","engines":{"node":">=18"},"dependencies":{"cjs-module-lexer":"2.2.1","es-module-lexer":"3.0.2","module-details-from-path":"1.0.4"}},"node_modules/lru-cache":{"version":"11.5.2","resolved":"https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz","integrity":"sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==","engines":{"node":"20 || >=22"}},"node_modules/minipass":{"version":"7.1.3","resolved":"https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz","integrity":"sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==","engines":{"node":">=16 || 14 >=14.17"}},"node_modules/minizlib":{"version":"3.1.0","resolved":"https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz","integrity":"sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==","engines":{"node":">= 18"},"dependencies":{"minipass":"7.1.3"}},"node_modules/module-details-from-path":{"version":"1.0.4","resolved":"https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.4.tgz","integrity":"sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w=="},"node_modules/ms":{"version":"2.1.3","resolved":"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz","integrity":"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="},"node_modules/npm-package-arg":{"version":"13.0.2","resolved":"https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-13.0.2.tgz","integrity":"sha512-IciCE3SY3uE84Ld8WZU23gAPPV9rIYod4F+rc+vJ7h7cwAJt9Vk6TVsK60ry7Uj3SRS3bqRRIGuTp9YVlk6WNA==","engines":{"node":"^20.17.0 || >=22.9.0"},"dependencies":{"hosted-git-info":"9.0.3","proc-log":"6.1.0","semver":"7.8.5","validate-npm-package-name":"7.0.2"}},"node_modules/picomatch":{"version":"4.0.7","resolved":"https://registry.npmjs.org/picomatch/-/picomatch-4.0.7.tgz","integrity":"sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==","engines":{"node":">=12"}},"node_modules/proc-log":{"version":"6.1.0","resolved":"https://registry.npmjs.org/proc-log/-/proc-log-6.1.0.tgz","integrity":"sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/require-in-the-middle":{"version":"8.0.1","resolved":"https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-8.0.1.tgz","integrity":"sha512-QT7FVMXfWOYFbeRBF6nu+I6tr2Tf3u0q8RIEjNob/heKY/nh7drD/k7eeMFmSQgnTtCzLDcCu/XEnpW2wk4xCQ==","engines":{"node":">=9.3.0 || >=8.10.0 <9.0.0"},"dependencies":{"debug":"4.4.3","module-details-from-path":"1.0.4"}},"node_modules/semver":{"version":"7.8.5","resolved":"https://registry.npmjs.org/semver/-/semver-7.8.5.tgz","integrity":"sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==","engines":{"node":">=10"},"hasBin":true},"node_modules/tar":{"version":"7.5.22","resolved":"https://registry.npmjs.org/tar/-/tar-7.5.22.tgz","integrity":"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==","engines":{"node":">=18"},"dependencies":{"@isaacs/fs-minipass":"4.0.1","chownr":"3.0.0","minipass":"7.1.3","minizlib":"3.1.0","yallist":"5.0.0"}},"node_modules/tinyglobby":{"version":"0.2.17","resolved":"https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz","integrity":"sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==","engines":{"node":">=12.0.0"},"dependencies":{"fdir":"6.5.0","picomatch":"4.0.7"}},"node_modules/validate-npm-package-name":{"version":"7.0.2","resolved":"https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz","integrity":"sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==","engines":{"node":"^20.17.0 || >=22.9.0"}},"node_modules/yallist":{"version":"5.0.0","resolved":"https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz","integrity":"sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==","engines":{"node":">=18"}},"node_modules/yaml":{"version":"2.9.1","resolved":"https://registry.npmjs.org/yaml/-/yaml-2.9.1.tgz","integrity":"sha512-3NxN8+78OdzbT7C/WjGsyfPAtJaN3FNDsWxv7Y7mcDsT/oOmgW8BpyQQFFBnvZE3j9Y2Sdz1ULFLezL7Eb2yFw==","engines":{"node":">= 14.6"},"hasBin":true}}}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{$c as w,Mf as $,R as p,T as h,Xc as I,Yc as C,Zc as L,_c as A,ad as v,dd as M,df as D,ef as F,g as P,h as m,hh as B,if as V,ih as k,j as S,k as N,ll as y,wb as _}from"./chunk-YMLF6QT7.js";import{Command as Q}from"commander";(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="089f4ea0-a211-5e3e-87d3-c5693de8918d")}catch{}})();function Ue(e){return new Q().name("pm").description("Universal, flexible, extensible, agent-optimized project management CLI for any project or programming language.").version(e).showHelpAfterError(!1).allowExcessArguments(!1).allowUnknownOption(!1).configureOutput({writeOut:t=>{$(t)},writeErr:()=>{}}).option("--json","Output JSON instead of TOON; mutations emit a flat receipt with top-level id/status/changed_field_count while reads use documented entity or collection envelopes").option("--lean","Omit null and empty containers from JSON output").option("--token-accounting","Attach a bounded per-section token-cost receipt to command output").option("--output-include <fields>","Retain comma-separated fields or sections in read output").option("--output-limit <count>","Bound rows in read output").option("--output-budget <tokens|unbounded>","Bound estimated tokens in read output or explicitly disable the default ceiling").option("--output-format <toon|json>","Select the result encoding for reads and mutations").option("--output-session <state>","Carry a JSON session budget and served-item ledger across read calls").option("--output-cursor <cursor>","Resume a budget-compacted declared row collection").option("--output-row-contract","Include row selectors, encoding metadata, and read-output receipts").option("--quiet","Suppress stdout output").option("--no-changed-fields","Omit the changed_fields array from mutation output (keeps changed_field_count)").option("--full-changed-fields","Restore the legacy full mutation envelope and changed_fields array").option("--id-only","Print only id and status for single-item mutation output").option("--pm-path <dir>","Explicit tracker storage path for this command (preferred over --path)").option("--path <dir>","Backward-compatible alias for --pm-path; this is the tracker storage path, not a workspace cwd").option("--no-extensions","Disable extension loading").option("--no-pager","Disable pager integration for help and long output").option("--explain","Render extended rationale and examples in help output").option("--all","Reveal every public command and compatibility alias").option("--profile","Print deterministic timing diagnostics").option("--author <id>","Override mutation author for this invocation").exitOverride()}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="be9abae1-85ae-5a68-96bc-c738218ace5e")}catch{}})();function Ke(e){return e instanceof h||e instanceof Error?e.message:"Unknown failure"}function ee(e){if(typeof e!="object"||e===null||!("exitCode"in e))return;let t=e.exitCode;return typeof t=="number"&&Number.isFinite(t)?t:void 0}function te(e){let t=Math.trunc(e);return t>p.SUCCESS?t:p.GENERIC_FAILURE}function Ye(e){return typeof e=="object"&&e!==null&&"code"in e&&typeof e.code=="string"&&e.code.startsWith("commander.")}function Xe(e,t){if(e instanceof Error)return e;let o=new Error(t),n=ee(e);return n!==void 0&&(o.exitCode=te(n)),o}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="8efedca0-725e-520f-ad06-825a0cccddaa")}catch{}})();var R=new Set(["append","claim","close","close-task","comments","copy","delete","deps","docs","files","focus","get","history","history-compact","history-redact","history-repair","learnings","notes","pause-task","release","restore","start-task","test","update"]),z=new Map([["files","discover"],["item","complete"]]),ne=new Map([["append",1],["close",1],["close-task",1],["comments",1],["item complete",1],["learnings",1],["notes",1],["restore",1]]);function G(e){let t=m(e?.trim().toLowerCase()??"");return R.has(t)||z.has(t)}function oe(e,t,o){let n=R.has(o)?t+1:void 0,i=w(e.slice(t+1));if(i===void 0)return n;let s=t+1+i,a=`${o} ${e[s]}`,r=m(a);return r===a?o==="item"&&e[s]==="complete"?s+1:n:G(r)?O(e,s,r):void 0}function O(e,t,o){if(["history","context","ctx","update","close","item"].includes(o))return oe(e,t,o);let n=z.get(o);if(n===void 0)return t+1;let i=e[t+1]?.toLowerCase()===n;return t+(i?2:1)}function ie(e){let t=new Map;for(let o of y(e))for(let n of[o.flag,o.short,...o.aliases??[]])n&&t.set(n,o);return t}function se(e){let t=[];for(let o=0;o<e.length;o+=1){let n=e[o];if(n==="--")break;n==="--id"?(t.push({index:o,consumed:2,value:e[o+1]}),o+=1):n.startsWith("--id=")&&t.push({index:o,consumed:1,value:n.slice(5)})}return t}function re(e,t,o){if(e.indexOf("=")>=0||t===void 0||t.startsWith("-"))return!1;let n=o.get(e);return n!==void 0&&n.value_type!=="boolean"}function ae(e,t,o,n,i){let s=0;for(let a=t;a<e.length;a+=1){let r=e[a];if(r==="--")break;if(r==="--id"){a+=1;continue}if(!r.startsWith("--id=")){if(!r.startsWith("-")){if(a<n)return!0;s+=1;continue}re(r,e[a+1],i)&&(a+=1)}}return s>(ne.get(m(o))??0)}function U(e){let t=w(e),o=t===void 0?void 0:e[t]?.toLowerCase();if(o!=="context"&&o!=="ctx"&&!G(o))return{argv:[...e],changed:!1,conflict:!1};let n=O(e,t,o);if(n===void 0)return{argv:[...e],changed:!1,conflict:!1};let i=n>t+1?`${m(e.slice(t,n-1).join(" "))} ${e[n-1]}`:o,s=ie(i),a=se(e),r=a[0];if(!r||!r.value?.trim())return{argv:[...e],changed:!1,conflict:!1};if(a.length>1||ae(e,n,i,r.index,s))return{argv:[...e],changed:!1,conflict:!0,itemId:r.value};let l=[...e.slice(0,r.index),...e.slice(r.index+r.consumed)],c=w(l),u=O(l,c,o);return l.splice(u,0,r.value),{argv:l,changed:!0,conflict:!1,itemId:r.value}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="f05cec18-5e48-5151-8ada-577c9df5885d")}catch{}})();var le=new Set(["--output-include","--output-limit","--output-budget","--output-format","--output-session","--output-cursor"]),ce=new Set(["toon","json"]);function ue(e,t,o){let n=e[t];if(C.has(n))return o.booleanFlags.add(n),1;let i=n.indexOf("="),s=i>0?n.slice(0,i):n;if(!I.has(s))return 1;let a=i>0?n.slice(i+1):void 0,r=a===void 0&&A(s,e[t+1]),l=a??(r?e[t+1]:void 0);return s==="--author"?o.author=l??"":typeof l=="string"&&l.length>0&&(le.has(s)?o.outputValues:o.pathValues).set(s,l),r?2:1}function de(e){let t={booleanFlags:new Set,outputValues:new Map,pathValues:new Map},o=0;for(;o<e.length&&e[o]!=="--";)o+=ue(e,o,t);return{path:t.pathValues.get("--pm-path")??t.pathValues.get("--path"),noExtensions:t.booleanFlags.has("--no-extensions")||["history attest","history-attest"].includes(X(e)??""),noPager:t.booleanFlags.has("--no-pager"),json:t.booleanFlags.has("--json")?t.outputValues.get("--output-format")!=="toon":t.outputValues.get("--output-format")==="json",quiet:t.booleanFlags.has("--quiet"),lean:t.booleanFlags.has("--lean"),tokenAccounting:t.booleanFlags.has("--token-accounting"),...t.booleanFlags.has("--output-row-contract")?{outputRowContract:!0}:{},...t.outputValues.get("--output-include")===void 0?{}:{outputInclude:t.outputValues.get("--output-include")},...t.outputValues.get("--output-limit")===void 0?{}:{outputLimit:t.outputValues.get("--output-limit")},...t.outputValues.get("--output-budget")===void 0?{}:{outputBudget:t.outputValues.get("--output-budget")},...ce.has(t.outputValues.get("--output-format"))?{outputFormat:t.outputValues.get("--output-format")}:{},...t.outputValues.get("--output-session")===void 0?{}:{outputSession:t.outputValues.get("--output-session")},...t.outputValues.get("--output-cursor")===void 0?{}:{outputCursor:t.outputValues.get("--output-cursor")},...t.author===""?{authorMissingValue:!0}:t.author!==void 0?{author:t.author}:{}}}function q(e){let t=[],o=0;for(;o<e.length;){let n=e[o];if(n==="--")break;if(C.has(n)||n==="--profile"||n==="--id-only"||n==="--full-changed-fields"||n==="--explain"){o+=1;continue}if(I.has(n)){o+=A(n,e[o+1])?2:1;continue}if(L(n)){o+=1;continue}t.push(n),o+=1}return t}function fe(e){let t=q(e);if(t[0]?.trim().toLowerCase()==="help"){let n=[];for(let i=1;i<t.length;i+=1){let s=t[i];if(s.startsWith("-"))break;n.push(s.trim().toLowerCase())}return{requested:!0,commandPathTokens:n}}if(t.findIndex(n=>n==="--help"||n==="-h")<0)return{requested:!1,commandPathTokens:[]};let o=[];for(let n of t){if(n.startsWith("-"))break;o.push(n.trim().toLowerCase())}return{requested:!0,commandPathTokens:o}}function T(e){return w(e)}function pe(e){return v(e)}function me(e,t){return t.noPager?!0:process.stdout.isTTY===!0?!1:fe(e).requested}function dt(e){let t=["PAGER","MANPAGER","GIT_PAGER","LESS"],o=t.map(s=>process.env[s]),n=()=>{for(let[s,a]of t.entries()){let r=o[s];r===void 0?delete process.env[a]:process.env[a]=r}},i=de(e);return me(e,i)&&(process.env.PAGER="cat",process.env.MANPAGER="cat",process.env.GIT_PAGER="cat",(typeof process.env.LESS!="string"||process.env.LESS.trim().length===0)&&(process.env.LESS="FRX")),n}var he=new Set(["install","uninstall","explore","manage","doctor","adopt","adopt-all","activate","deactivate"]);function ge(e){let t=T(e);if(t===void 0||e[t]!=="extension")return[...e];let o=e[t+1];if(!o||o.startsWith("-"))return[...e];if(!he.has(o))return[...e];if(e.includes("--help")||e.includes("-h"))return[...e];let n=`--${o}`;return e.includes(n)?[...e]:[...e.slice(0,t+1),n,...e.slice(t+2)]}var be=new Set(["pm","pm-cli"]);function ye(e,t){let o=T(e);if(o===void 0)return e;let n=e[o];return be.has(n.trim().toLowerCase())?(t.push({from:n,to:[],reason:"executable_alias",confidence:"high"}),[...e.slice(0,o),...e.slice(o+1)]):e}function we(e,t){let o=T(e);if(o!==void 0&&e[o]==="help"){let r=T(e.slice(o+1));o=r===void 0?void 0:o+1+r}if(o===void 0)return e;let n=e[o],i=N[n.trim().toLowerCase()];if(!i)return e;let s=i.split(" "),a=[...e.slice(0,o),...s,...e.slice(o+1)];return t.push({from:n,to:s,reason:"command_alias",confidence:"high"}),a}function E(e){return e.replace(/^--?/,"").replace(/_/g,"-").replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}function W(e){return E(e).replace(/-/g,"")}function j(e,t,o){let n=e.get(t);if(n===void 0){e.set(t,o);return}n!==o&&e.set(t,null)}function Ie(e){let t=[],o=n=>{typeof n=="string"&&n.startsWith("--")&&t.push(n)};o(e.flag);for(let n of e.aliases??[])o(n);return t}function _e(e,t){let o=t??y(e),n=new Map,i=new Map,s=new Map,a=new Set;for(let r of o){let l=Ie(r);if(l.length===0)continue;let c=`--${E(l[0])}`;for(let f of l)j(n,E(f),c),j(i,W(f),c);let u=W(c);s.has(c)||s.set(c,u),r.list===!0&&a.add(c)}return{canonicalByNormalized:n,canonicalByCompact:i,canonicalComparables:[...s.entries()].map(([r,l])=>({canonicalFlag:r,comparable:l})),listCanonicalFlags:a}}function K(e,t){let o=E(e),n=t.canonicalByNormalized.get(o);if(typeof n=="string")return{flag:n,reason:"flag_alias",confidence:"high"};let i=o.replace(/-/g,""),s=t.canonicalByCompact.get(i);if(typeof s=="string")return{flag:s,reason:"flag_alias",confidence:"high"};let a=i.length>=8?2:1,r=Number.POSITIVE_INFINITY,l,c=!1;for(let u of t.canonicalComparables){let f=_(i,u.comparable,a);if(f!==null){if(f<r){r=f,l=u.canonicalFlag,c=!1;continue}f===r&&l!==u.canonicalFlag&&(c=!0)}}return!l||c||!Number.isFinite(r)||r<=0?null:{flag:l,reason:"flag_typo",confidence:r>=2?"medium":"high"}}function ft(e){let t=[`${e}s`];return e.endsWith("y")&&e.length>1&&t.push(`${e.slice(0,-1)}ies`),t}function Ce(e,t=!1){if(t||e.includes("://"))return null;let o=e.match(/^([A-Za-z][A-Za-z0-9_-]{1,63})([:=])(.*)$/);if(!o)return null;let n=o[1],i=o[3];return i.length===0?null:{key:n,value:i}}function ve(e,t,o=!1){if(o||!e.startsWith("--"))return{tokens:[e]};let n=e.indexOf("="),i=n>=0?e.slice(0,n):e,s=n>=0?e.slice(n+1):void 0,a=K(i,t);if(!a)return{tokens:[e]};let r=s===void 0?a.flag:`${a.flag}=${s}`;return r===e?{tokens:[e]}:{tokens:[r],event:{from:e,to:[r],reason:a.reason,confidence:a.confidence}}}function ke(e){let t=new Set,o=!1;for(let n=0;n<e.length;n+=1){if(o){t.add(n),o=!1;continue}let i=e[n];o=i==="--path"||i==="--pm-path"}return t}function Te(e){if(!e.startsWith("--"))return null;let t=e.indexOf("=");return t<0?{flag:e}:{flag:e.slice(0,t),inlineValue:e.slice(t+1)}}function Ee(e,t,o){o.push(e[t]);let n=e[t+1];return typeof n=="string"&&n!=="--"?(o.push(n),t+2):t+1}function xe(e,t,o,n){if(o.inlineValue!==void 0)return{originalTokens:[e[t]],value:o.inlineValue,consumed:1};let i=[],s=t+1;for(;s<e.length&&e[s]!=="--"&&!e[s].startsWith("-")&&(i.length===0||n.has(o.flag));)i.push(e[s]),s+=1;let a=i.length===0?1:1+i.length;return{originalTokens:e.slice(t,t+a),value:i.length===0?void 0:i.join(","),consumed:a}}function Se(e,t,o,n){let i=e.get(o);if(i){i.values.push(n.value),i.occurrences+=1;return}e.set(o,{outputIndex:t.length,originalTokens:n.originalTokens,values:[n.value],occurrences:1}),t.push(null)}function Ae(e,t){let o=[],n=[];for(let[i,s]of e){if(!(s.occurrences>=2||t.has(i)&&s.originalTokens.length>2)){n.push({outputIndex:s.outputIndex,tokens:s.originalTokens});continue}let a=`${i}=${s.values.join(",")}`;n.push({outputIndex:s.outputIndex,tokens:[a]}),o.push({from:`${i} (x${s.occurrences})`,to:[a],reason:"list_merge",confidence:"high"})}return{events:o,splices:n}}function Oe(e,t){t.sort((o,n)=>n.outputIndex-o.outputIndex);for(let o of t)e.splice(o.outputIndex,1,...o.tokens)}function Pe(e,t,o=new Set,n=new Set){if(t.size===0)return{argv:[...e],events:[]};let i=[],s=new Map,a=0;for(;a<e.length;){let c=e[a];if(c==="--"){i.push(...e.slice(a));break}if(o.has(c)){a=Ee(e,a,i);continue}let u=Te(c);if(!u||!t.has(u.flag)){i.push(c),a+=1;continue}let f=xe(e,a,u,n);if(f.value===void 0){i.push(c),a+=f.consumed;continue}Se(s,i,u.flag,{originalTokens:f.originalTokens,value:f.value}),a+=f.consumed}let{events:r,splices:l}=Ae(s,n);return Oe(i,l),{argv:i,events:r}}var Y=new Map([["--add",new Set(["command","cmd","path"])],["--remove",new Set(["command","path"])]]);function Ne(e,t){if(e!=="test"||t.length<2)return!1;let o=t[t.length-1],n=t[t.length-2],i=Y.get(n);return i!==void 0&&i.has(o)}function Le(e,t,o){if(t!=="test")return e;let n=[],i=0;for(;i<e.length;){let s=e[i];if(s==="--")return n.push(...e.slice(i)),n;let a=Y.get(s),r=a?e[i+1]:void 0;if(!a||typeof r!="string"||!a.has(r)){n.push(s),i+=1;continue}let l=i+2;for(;l<e.length&&!e[l].startsWith("-");)l+=1;if(l-(i+2)!==1){n.push(s),i+=1;continue}let c=e[i+2],u=`${r}=${c}`;n.push(s,u),o.push({from:`${s} ${r} ${c}`,to:[s,u],reason:"bare_key_value",confidence:"high"}),i+=3}return n}function Me(e,t,o,n){let i=[],s=ke(e);for(let a=0;a<e.length;a+=1){let r=e[a];if(r==="--"){i.push(...e.slice(a));break}let l=s.has(a),c=i[i.length-1];if(r.startsWith("--")){let b=ve(r,t,l);i.push(...b.tokens),b.event&&n.push(b.event);continue}let u=Ce(r,l);if(!u||typeof c=="string"&&c.startsWith("-")&&!c.includes("=")||["search","comments","notes","learnings"].includes(o)||Ne(o,i)){i.push(r);continue}let f=K(u.key,t);if(!f){i.push(r);continue}let g=u.value.startsWith("-")?[`${f.flag}=${u.value}`]:[f.flag,u.value];i.push(...g),n.push({from:r,to:g,reason:"bare_key_value",confidence:f.confidence})}return i}function De(e){for(let t=0;t<e.length;t+=1){let o=e[t];if(o==="--")break;if(o==="--verify"){let n=e[t+1];if(n===void 0||n==="--")throw new h("history attest --verify requires a bundle file.",p.USAGE);e.splice(t,2,`--verify=${n}`)}else(I.has(o)||o==="--output"||o==="--hash-algorithm")&&(t+=1)}}function Fe(e,t){if(!e.some(n=>n==="--help"||n==="-h"))return;let o=new Set(y(t).flatMap(n=>[n.flag,...n.aliases??[],...n.short===void 0?[]:[n.short]]));for(let n=0;n<e.length;n+=1){let i=e[n];if(i==="--")break;i!=="--help"&&i!=="-h"||o.has(e[n-1])&&!C.has(e[n-1])&&(e[n-1]=i)}}function pt(e){let t=[],o=ye(e,t),n=ge(o);(n.length!==o.length||n.some((b,J)=>b!==o[J]))&&t.push({from:o.join(" "),to:[...n],reason:"legacy_extension_action",confidence:"high"});let i=we(n,t),s=U(i);if(s.conflict)throw new h("Provide the item id either positionally or with --id, not both.",p.USAGE);s.changed&&t.push({from:`--id ${s.itemId}`,to:[s.itemId],reason:"item_id_alias",confidence:"high"});let a=pe(s.argv),r=X(s.argv),l=m(r??a??""),c=_e(r??a),u=Me(s.argv,c,l,t),f=Le(u,l,t),g=Pe(f,c.listCanonicalFlags,I,a==="create"?new Set(["--tags"]):new Set);for(let b of g.events)t.push(b);return Fe(g.argv,r??a),r==="history attest"&&De(g.argv),{argv:g.argv,commandName:a,trace:t}}function X(e){let t=q(e),o=t[0]?.trim().toLowerCase(),n=t[1]?.trim().toLowerCase(),i=P(t);return i?i.canonical:(o==="extension"||o==="package"||o==="packages")&&typeof n=="string"&&n.length>0&&!n.startsWith("-")?`${o} ${n}`:o}function mt(e){for(let t=0;t<e.length;t+=1){let o=e[t];if(o==="--")break;if(o==="--type"){let n=e[t+1];if(typeof n=="string"&&n.trim().length>0)return n.trim();continue}if(o.startsWith("--type=")){let n=o.slice(7).trim();if(n.length>0)return n}}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="fb625cd9-f8a8-56cf-88ab-abef64051497")}catch{}})();function wt(e){if(e===void 0)return()=>{};let t=e.trim();if(t.length===0)throw new h("--author requires a non-empty value.",p.USAGE,{code:"missing_required_argument",nextSteps:["Pass an explicit author identifier with --author <id>."]});let o=B();k(t);let n=!1;return()=>{n||(n=!0,o===void 0?k(void 0):k(o))}}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d0e60f7e-e0a8-5ef4-9af7-4a1f102ccb7d")}catch{}})();var d=Object.freeze({clock:"PM_CLOCK",tickMs:"PM_CLOCK_TICK_MS",seed:"PM_SEED"});function x(e,t,o,n){return new h(e,p.USAGE,{code:"invalid_reproducible_process_environment",reason:t,field:o,required:`${d.clock} and ${d.seed}; ${d.tickMs} is optional`,nextSteps:[`Set ${d.clock} to an ISO-8601 instant with Z or a numeric UTC offset and ${d.seed} to a non-empty reproducibility seed.`,`Optionally set ${d.tickMs} to a non-negative integer; it defaults to 1.`,"Unset all three variables to retain normal wall-clock and cryptographic-random behavior."],recovery:{recovery_mode:"compact",provided_fields:n,missing_required_fields:t==="incomplete"?[d.clock,d.seed].filter(i=>!n.includes(i)):void 0}})}function Ve(e){let t=e[d.clock],o=e[d.tickMs],n=e[d.seed],i=[[d.clock,t],[d.tickMs,o],[d.seed,n]].filter(a=>a[1]!==void 0).map(([a])=>a);if(i.length===0)return;if(t===void 0||n===void 0)throw x("Reproducible process execution requires PM_CLOCK and PM_SEED together.","incomplete",t===void 0?d.clock:d.seed,i);if(n.trim().length===0)throw x(`${d.seed} must not be empty.`,"invalid_value",d.seed,i);if(!V(t))throw x(`${d.clock} must be a valid ISO-8601 instant with Z or a numeric UTC offset.`,"invalid_value",d.clock,i);let s=o===void 0?1:Number(o);if(o?.trim().length===0||!Number.isSafeInteger(s)||s<0)throw x(`${d.tickMs} must be a non-negative integer.`,"invalid_value",d.tickMs,i);return D({clock:t,seed:n,tickMs:s})}function $e(e){let t=Ve(e);return t===void 0?o=>o():F(t)}async function Tt(e,t){return $e(e)(t)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="d5c48881-420f-5673-8696-e770db353cfc")}catch{}})();function Z(e){return e.trim().match(/--[a-z0-9][a-z0-9_-]*/i)?.[0]?.replaceAll("_","-").toLowerCase()}function Ot(e){if(!(!Array.isArray(e)||e.length===0))return v(e)}function Be(e,t){let o=Z(t);if(!o)return;let n=y(e).find(i=>i.flag===o||i.aliases?.includes(o));return n?n.value_type==="boolean"?null:`<${n.value_name??"value"}>`:"<value>"}function Pt(e,t,o){let n=[...e],i=n.indexOf("--"),s=i<0?n.length:i;for(let a of o){let r=Z(a);if(!r||n.slice(0,s).some(u=>u===r||u.startsWith(`${r}=`)))continue;let l=Be(t,r),c=l?[r,l]:[r];n.splice(s,0,...c),s+=c.length}return n.length===e.length?void 0:M(n)}(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="bd9a8d3b-bc6f-5309-a3fb-7e5f41ef9dab")}catch{}})();(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a48c9a1f-b959-54a4-a27f-4f662ae7fd31")}catch{}})();var Re={add:["create","append"],fetch:["get"],inspect:["get","health"],log:["history","comments","notes"],ls:["list"],pause:["release"],read:["get"],remove:["delete"],rm:["delete"],show:["get"],start:["start-task"]};function H(e,t){let o=e.trim().toLowerCase(),n=t.trim().toLowerCase();if(n.length===0)return Number.POSITIVE_INFINITY;let i=o.split(" "),s=Re[n]?.indexOf(m(o));if(s!==void 0&&s>=0)return s;if(o===n)return 10;if(i.includes(n))return 11;if(i.some(l=>l.startsWith(n)))return 12;let a=n.length>=5?2:1,r=Number.POSITIVE_INFINITY;for(let l of i){let c=_(l,n,a);c!==null&&(r=Math.min(r,c))}return Number.isFinite(r)?20+r:o.includes(n)?30:Number.POSITIVE_INFINITY}function $t(e,t){return e.map(o=>({path:o,score:H(o,t)})).filter(o=>Number.isFinite(o.score)).sort((o,n)=>o.score!==n.score?o.score-n.score:o.path===n.path?0:o.path<n.path?-1:1).map(o=>o.path)}function Bt(e,t,o){let n=new Set(t),i=S.filter(r=>r.lifecycle==="deprecated").slice().sort((r,l)=>l.alias.length-r.alias.length),s=[],a=e.flatMap(r=>{let l=i.find(u=>r===u.alias||r.startsWith(`${u.alias} `)),c=r;if(l){let u=r.slice(l.alias.length);if(!n.has(`${l.canonical}${u}`))return[];c=`${l.canonical_argv.join(" ")}${u}`}return o!==void 0&&H(r,o)<10&&s.push(c),[c]});return[...new Set(s.length>0?s:a)]}export{Ue as a,Ke as b,ee as c,te as d,Ye as e,Xe as f,G as g,U as h,de as i,q as j,fe as k,T as l,pe as m,dt as n,ge as o,ft as p,Pe as q,Le as r,pt as s,mt as t,wt as u,d as v,Ve as w,$e as x,Tt as y,Ot as z,Be as A,Pt as B,H as C,$t as D,Bt as E};
|
|
2
|
-
//# sourceMappingURL=chunk-BXSXT5Z6.js.map
|