@oh-my-pi/cli 0.1.0 → 0.2.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 (78) hide show
  1. package/.github/icon.png +0 -0
  2. package/.github/logo.png +0 -0
  3. package/.github/workflows/publish.yml +1 -1
  4. package/LICENSE +21 -0
  5. package/README.md +131 -145
  6. package/biome.json +1 -1
  7. package/dist/cli.js +2032 -1136
  8. package/dist/commands/create.d.ts.map +1 -1
  9. package/dist/commands/doctor.d.ts +1 -0
  10. package/dist/commands/doctor.d.ts.map +1 -1
  11. package/dist/commands/enable.d.ts +1 -0
  12. package/dist/commands/enable.d.ts.map +1 -1
  13. package/dist/commands/info.d.ts +1 -0
  14. package/dist/commands/info.d.ts.map +1 -1
  15. package/dist/commands/init.d.ts.map +1 -1
  16. package/dist/commands/install.d.ts +1 -0
  17. package/dist/commands/install.d.ts.map +1 -1
  18. package/dist/commands/link.d.ts +2 -0
  19. package/dist/commands/link.d.ts.map +1 -1
  20. package/dist/commands/list.d.ts +1 -0
  21. package/dist/commands/list.d.ts.map +1 -1
  22. package/dist/commands/outdated.d.ts +1 -0
  23. package/dist/commands/outdated.d.ts.map +1 -1
  24. package/dist/commands/search.d.ts.map +1 -1
  25. package/dist/commands/uninstall.d.ts +1 -0
  26. package/dist/commands/uninstall.d.ts.map +1 -1
  27. package/dist/commands/update.d.ts +1 -0
  28. package/dist/commands/update.d.ts.map +1 -1
  29. package/dist/commands/why.d.ts +1 -0
  30. package/dist/commands/why.d.ts.map +1 -1
  31. package/dist/conflicts.d.ts +9 -1
  32. package/dist/conflicts.d.ts.map +1 -1
  33. package/dist/errors.d.ts +8 -0
  34. package/dist/errors.d.ts.map +1 -0
  35. package/dist/index.d.ts +19 -19
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/lock.d.ts +3 -0
  38. package/dist/lock.d.ts.map +1 -0
  39. package/dist/lockfile.d.ts +52 -0
  40. package/dist/lockfile.d.ts.map +1 -0
  41. package/dist/manifest.d.ts +5 -0
  42. package/dist/manifest.d.ts.map +1 -1
  43. package/dist/migrate.d.ts.map +1 -1
  44. package/dist/npm.d.ts +14 -2
  45. package/dist/npm.d.ts.map +1 -1
  46. package/dist/paths.d.ts +34 -2
  47. package/dist/paths.d.ts.map +1 -1
  48. package/dist/symlinks.d.ts +10 -4
  49. package/dist/symlinks.d.ts.map +1 -1
  50. package/package.json +7 -2
  51. package/plugins/metal-theme/package.json +6 -1
  52. package/plugins/subagents/package.json +6 -1
  53. package/src/cli.ts +69 -43
  54. package/src/commands/create.ts +51 -1
  55. package/src/commands/doctor.ts +95 -7
  56. package/src/commands/enable.ts +25 -8
  57. package/src/commands/info.ts +41 -5
  58. package/src/commands/init.ts +20 -2
  59. package/src/commands/install.ts +266 -52
  60. package/src/commands/link.ts +60 -9
  61. package/src/commands/list.ts +10 -5
  62. package/src/commands/outdated.ts +17 -6
  63. package/src/commands/search.ts +20 -3
  64. package/src/commands/uninstall.ts +57 -6
  65. package/src/commands/update.ts +67 -9
  66. package/src/commands/why.ts +47 -16
  67. package/src/conflicts.ts +33 -1
  68. package/src/errors.ts +22 -0
  69. package/src/index.ts +19 -25
  70. package/src/lock.ts +46 -0
  71. package/src/lockfile.ts +132 -0
  72. package/src/manifest.ts +143 -35
  73. package/src/migrate.ts +14 -3
  74. package/src/npm.ts +74 -18
  75. package/src/paths.ts +77 -9
  76. package/src/symlinks.ts +134 -17
  77. package/tsconfig.json +7 -3
  78. package/CHECK.md +0 -352
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2I3F"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAoCD;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2J3F"}
@@ -1,5 +1,6 @@
1
1
  export interface DoctorOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  fix?: boolean;
4
5
  json?: boolean;
5
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,aAAa;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AASD;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiM1E"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,aAAa;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AASD;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiR1E"}
@@ -1,5 +1,6 @@
1
1
  export interface EnableDisableOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  json?: boolean;
4
5
  }
5
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"enable.d.ts","sourceRoot":"","sources":["../../src/commands/enable.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,oBAAoB;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyClG;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8CnG"}
1
+ {"version":3,"file":"enable.d.ts","sourceRoot":"","sources":["../../src/commands/enable.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDlG;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkDnG"}
@@ -1,6 +1,7 @@
1
1
  export interface InfoOptions {
2
2
  json?: boolean;
3
3
  versions?: boolean;
4
+ allVersions?: boolean;
4
5
  }
5
6
  /**
6
7
  * Show detailed info about a package before install
@@ -1 +1 @@
1
- {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwE5F"}
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2G5F"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,WAAW;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6B1E"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,WAAW;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqC1E"}
@@ -1,5 +1,6 @@
1
1
  export interface InstallOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  save?: boolean;
4
5
  saveDev?: boolean;
5
6
  force?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,cAAc;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAiED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiJpG"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAoDA,MAAM,WAAW,cAAc;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAiED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuSpG"}
@@ -1,6 +1,8 @@
1
1
  export interface LinkOptions {
2
2
  name?: string;
3
3
  global?: boolean;
4
+ local?: boolean;
5
+ force?: boolean;
4
6
  }
5
7
  /**
6
8
  * Link a local plugin directory for development
@@ -1 +1 @@
1
- {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/commands/link.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,WAAW;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0F5F"}
1
+ {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/commands/link.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,WAAW;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2H5F"}
@@ -1,5 +1,6 @@
1
1
  export interface ListOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  json?: boolean;
4
5
  }
5
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2D1E"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8D1E"}
@@ -1,5 +1,6 @@
1
1
  export interface OutdatedOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  json?: boolean;
4
5
  }
5
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"outdated.d.ts","sourceRoot":"","sources":["../../src/commands/outdated.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8D/E"}
1
+ {"version":3,"file":"outdated.d.ts","sourceRoot":"","sources":["../../src/commands/outdated.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwE/E"}
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD7F"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,aAAa;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4D7F"}
@@ -1,5 +1,6 @@
1
1
  export interface UninstallOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  json?: boolean;
4
5
  }
5
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,gBAAgB;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDjG"}
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,gBAAgB;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwGjG"}
@@ -1,5 +1,6 @@
1
1
  export interface UpdateOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  json?: boolean;
4
5
  }
5
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,aAAa;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiG5F"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,aAAa;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiJ5F"}
@@ -1,5 +1,6 @@
1
1
  export interface WhyOptions {
2
2
  global?: boolean;
3
+ local?: boolean;
3
4
  json?: boolean;
4
5
  }
5
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"why.d.ts","sourceRoot":"","sources":["../../src/commands/why.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,UAAU;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFvF"}
1
+ {"version":3,"file":"why.d.ts","sourceRoot":"","sources":["../../src/commands/why.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,UAAU;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAsHvF"}
@@ -1,4 +1,4 @@
1
- import type { PluginPackageJson } from "./manifest.js";
1
+ import type { PluginPackageJson } from "@omp/manifest";
2
2
  export interface Conflict {
3
3
  dest: string;
4
4
  plugins: Array<{
@@ -6,6 +6,14 @@ export interface Conflict {
6
6
  src: string;
7
7
  }>;
8
8
  }
9
+ export interface IntraPluginDuplicate {
10
+ dest: string;
11
+ sources: string[];
12
+ }
13
+ /**
14
+ * Detect duplicate destinations within a single plugin's omp.install array
15
+ */
16
+ export declare function detectIntraPluginDuplicates(pkgJson: PluginPackageJson): IntraPluginDuplicate[];
9
17
  /**
10
18
  * Detect conflicts between a new plugin and existing plugins
11
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"conflicts.d.ts","sourceRoot":"","sources":["../src/conflicts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC9B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,iBAAiB,EAC7B,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC7C,QAAQ,EAAE,CAgCZ;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,QAAQ,EAAE,CAsBtF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAK/D"}
1
+ {"version":3,"file":"conflicts.d.ts","sourceRoot":"","sources":["../src/conflicts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,iBAAiB,GAAG,oBAAoB,EAAE,CAsB9F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC9B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,iBAAiB,EAC7B,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC7C,QAAQ,EAAE,CAgCZ;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,QAAQ,EAAE,CAsBtF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAK/D"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Wraps a command function with consistent error handling.
3
+ * - Catches errors and logs user-friendly messages
4
+ * - Shows stack trace only when DEBUG env var is set
5
+ * - Sets non-zero exit code on error
6
+ */
7
+ export declare function withErrorHandling<T extends (...args: any[]) => Promise<void>>(fn: T): T;
8
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAavF"}
package/dist/index.d.ts CHANGED
@@ -1,20 +1,20 @@
1
- export { createPlugin } from "./commands/create.js";
2
- export { runDoctor } from "./commands/doctor.js";
3
- export { disablePlugin, enablePlugin } from "./commands/enable.js";
4
- export { showInfo } from "./commands/info.js";
5
- export { initProject } from "./commands/init.js";
6
- export { installPlugin } from "./commands/install.js";
7
- export { linkPlugin } from "./commands/link.js";
8
- export { listPlugins } from "./commands/list.js";
9
- export { showOutdated } from "./commands/outdated.js";
10
- export { searchPlugins } from "./commands/search.js";
11
- export { uninstallPlugin } from "./commands/uninstall.js";
12
- export { updatePlugin } from "./commands/update.js";
13
- export { whyFile } from "./commands/why.js";
14
- export { detectAllConflicts, detectConflicts, formatConflicts, } from "./conflicts.js";
15
- export type { OmpField, OmpInstallEntry, PluginPackageJson, PluginsJson, } from "./manifest.js";
16
- export { getInstalledPlugins, initGlobalPlugins, loadPluginsJson, readPluginPackageJson, savePluginsJson, } from "./manifest.js";
17
- export { checkMigration, migrateToNpm } from "./migrate.js";
18
- export { npmInfo, npmInstall, npmOutdated, npmSearch, npmUninstall, npmUpdate, } from "./npm.js";
19
- export { checkPluginSymlinks, createPluginSymlinks, removePluginSymlinks, } from "./symlinks.js";
1
+ export { createPlugin } from "@omp/commands/create";
2
+ export { runDoctor } from "@omp/commands/doctor";
3
+ export { disablePlugin, enablePlugin } from "@omp/commands/enable";
4
+ export { showInfo } from "@omp/commands/info";
5
+ export { initProject } from "@omp/commands/init";
6
+ export { installPlugin } from "@omp/commands/install";
7
+ export { linkPlugin } from "@omp/commands/link";
8
+ export { listPlugins } from "@omp/commands/list";
9
+ export { showOutdated } from "@omp/commands/outdated";
10
+ export { searchPlugins } from "@omp/commands/search";
11
+ export { uninstallPlugin } from "@omp/commands/uninstall";
12
+ export { updatePlugin } from "@omp/commands/update";
13
+ export { whyFile } from "@omp/commands/why";
14
+ export { detectAllConflicts, detectConflicts, formatConflicts, } from "@omp/conflicts";
15
+ export type { OmpField, OmpInstallEntry, PluginPackageJson, PluginsJson, } from "@omp/manifest";
16
+ export { getInstalledPlugins, initGlobalPlugins, loadPluginsJson, readPluginPackageJson, savePluginsJson, } from "@omp/manifest";
17
+ export { checkMigration, migrateToNpm } from "@omp/migrate";
18
+ export { npmInfo, npmInstall, npmOutdated, npmSearch, npmUninstall, npmUpdate, } from "@omp/npm";
19
+ export { checkPluginSymlinks, createPluginSymlinks, removePluginSymlinks, } from "@omp/symlinks";
20
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,eAAe,GACf,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACX,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,WAAW,GACX,MAAM,eAAe,CAAC;AAGvB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,eAAe,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EACN,OAAO,EACP,UAAU,EACV,WAAW,EACX,SAAS,EACT,YAAY,EACZ,SAAS,GACT,MAAM,UAAU,CAAC;AAClB,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACpB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,eAAe,GACf,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACX,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,WAAW,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,eAAe,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EACN,OAAO,EACP,UAAU,EACV,WAAW,EACX,SAAS,EACT,YAAY,EACZ,SAAS,GACT,MAAM,UAAU,CAAC;AAClB,OAAO,EACN,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACpB,MAAM,eAAe,CAAC"}
package/dist/lock.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ export declare function acquireLock(global?: boolean): Promise<boolean>;
2
+ export declare function releaseLock(global?: boolean): Promise<void>;
3
+ //# sourceMappingURL=lock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"AAOA,wBAAsB,WAAW,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAiCjE;AAED,wBAAsB,WAAW,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9D"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Lock file schema version
3
+ */
4
+ export declare const LOCKFILE_VERSION = 1;
5
+ /**
6
+ * Package entry in the lock file
7
+ */
8
+ export interface LockFilePackage {
9
+ version: string;
10
+ resolved?: string;
11
+ integrity?: string;
12
+ dependencies?: Record<string, string>;
13
+ }
14
+ /**
15
+ * Lock file structure
16
+ */
17
+ export interface LockFile {
18
+ lockfileVersion: number;
19
+ packages: Record<string, LockFilePackage>;
20
+ }
21
+ /**
22
+ * Load and validate a lock file.
23
+ *
24
+ * Returns null if:
25
+ * - File doesn't exist
26
+ * - File contains invalid JSON (corrupted)
27
+ * - File has invalid/incompatible schema
28
+ */
29
+ export declare function loadLockFile(global?: boolean): Promise<LockFile | null>;
30
+ /**
31
+ * Save lock file
32
+ */
33
+ export declare function saveLockFile(lockFile: LockFile, global?: boolean): Promise<void>;
34
+ /**
35
+ * Create a new empty lock file
36
+ */
37
+ export declare function createLockFile(): LockFile;
38
+ /**
39
+ * Validate and optionally regenerate a corrupted lock file.
40
+ *
41
+ * @returns The loaded lock file, a new empty lock file if corrupted/missing, or null if validation fails
42
+ */
43
+ export declare function validateOrRegenerateLockFile(global?: boolean): Promise<LockFile>;
44
+ /**
45
+ * Get the locked version for a package, if it exists in the lock file.
46
+ */
47
+ export declare function getLockedVersion(packageName: string, global?: boolean): Promise<string | null>;
48
+ /**
49
+ * Update the lock file with a package's exact version.
50
+ */
51
+ export declare function updateLockFile(packageName: string, version: string, global?: boolean): Promise<void>;
52
+ //# sourceMappingURL=lockfile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockfile.d.ts","sourceRoot":"","sources":["../src/lockfile.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC1C;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA8B1E;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAGnF;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,QAAQ,CAKzC;AAED;;;;GAIG;AACH,wBAAsB,4BAA4B,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAanF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAMjG;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAWvG"}
@@ -27,6 +27,7 @@ export interface PluginPackageJson {
27
27
  */
28
28
  export interface PluginsJson {
29
29
  plugins: Record<string, string>;
30
+ devDependencies?: Record<string, string>;
30
31
  disabled?: string[];
31
32
  }
32
33
  /**
@@ -50,6 +51,10 @@ export interface LegacyManifest {
50
51
  * Initialize the global plugins directory with package.json
51
52
  */
52
53
  export declare function initGlobalPlugins(): Promise<void>;
54
+ /**
55
+ * Initialize the project-local .pi directory with plugins.json and package.json
56
+ */
57
+ export declare function initProjectPlugins(): Promise<void>;
53
58
  /**
54
59
  * Load plugins.json (global or project)
55
60
  */
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,QAAQ;IACxB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAavD;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CA0BzE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BrF;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAiBhH;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,MAAM,CAG5E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,cAAc,CAAC,CAOlE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAYhG"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAsBA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,QAAQ;IACxB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqBvD;AAED;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CA+BxD;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CA4BzE;AA4BD;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDrF;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAiBhH;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,MAAM,CAG5E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,cAAc,CAAC,CAOlE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,UAAO,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAYhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"AAgCA;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBnE;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CA2DrD"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"AAkCA;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBnE;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAoErD"}
package/dist/npm.d.ts CHANGED
@@ -1,3 +1,13 @@
1
+ import type { OmpField } from "@omp/manifest";
2
+ export interface NpmAvailability {
3
+ available: boolean;
4
+ version?: string;
5
+ error?: string;
6
+ }
7
+ /**
8
+ * Check npm availability and version
9
+ */
10
+ export declare function checkNpmAvailable(): NpmAvailability;
1
11
  export interface NpmPackageInfo {
2
12
  name: string;
3
13
  version: string;
@@ -14,6 +24,8 @@ export interface NpmPackageInfo {
14
24
  } | string;
15
25
  versions?: string[];
16
26
  "dist-tags"?: Record<string, string>;
27
+ omp?: OmpField;
28
+ dependencies?: Record<string, string>;
17
29
  }
18
30
  export interface NpmSearchResult {
19
31
  name: string;
@@ -28,11 +40,11 @@ export interface NpmSearchResult {
28
40
  /**
29
41
  * Execute npm command and return output
30
42
  */
31
- export declare function npmExec(args: string[], cwd?: string): string;
43
+ export declare function npmExec(args: string[], cwd?: string, timeout?: number): string;
32
44
  /**
33
45
  * Execute npm command with prefix (for installing to specific directory)
34
46
  */
35
- export declare function npmExecWithPrefix(args: string[], prefix: string): string;
47
+ export declare function npmExecWithPrefix(args: string[], prefix: string, timeout?: number): string;
36
48
  /**
37
49
  * Install packages using npm
38
50
  */
package/dist/npm.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"npm.d.ts","sourceRoot":"","sources":["../src/npm.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAO5D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAExE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC/B,QAAQ,EAAE,MAAM,EAAE,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GACjD,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAOjF;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,SAAe,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CASjG;AAED;;GAEG;AACH,wBAAsB,WAAW,CAChC,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAgB9E;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMjF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAQ1F;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,SAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGzG"}
1
+ {"version":3,"file":"npm.d.ts","sourceRoot":"","sources":["../src/npm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,eAAe,CAwBnD;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;IACpD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1B;AAID;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,SAAqB,GAAG,MAAM,CAe1F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,SAAqB,GAAG,MAAM,CActG;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC/B,QAAQ,EAAE,MAAM,EAAE,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GACjD,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAOjF;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,SAAe,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAKjG;AAED;;GAEG;AACH,wBAAsB,WAAW,CAChC,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAgB9E;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMjF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAQ1F;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,SAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGzG"}
package/dist/paths.d.ts CHANGED
@@ -6,12 +6,25 @@ export declare const GLOBAL_LOCK_FILE: string;
6
6
  export declare const LEGACY_MANIFEST_PATH: string;
7
7
  export declare const PROJECT_PI_DIR = ".pi";
8
8
  export declare const PROJECT_PLUGINS_JSON: string;
9
+ export declare const PROJECT_PACKAGE_JSON: string;
9
10
  export declare const PROJECT_PLUGINS_LOCK: string;
10
11
  export declare const PROJECT_NODE_MODULES: string;
11
12
  /**
12
- * Get the agent directory (where symlinks are installed)
13
+ * Find the project root by walking up parent directories looking for .pi/plugins.json.
14
+ * Similar to how git finds .git directories.
15
+ *
16
+ * @returns The absolute path to the project root, or null if not found
13
17
  */
14
- export declare function getAgentDir(global?: boolean): string;
18
+ export declare function findProjectRoot(): string | null;
19
+ /**
20
+ * Check if a project-local .pi/plugins.json exists in the current directory or any parent
21
+ */
22
+ export declare function hasProjectPlugins(): boolean;
23
+ /**
24
+ * Get the project .pi directory path.
25
+ * Uses findProjectRoot() to locate the project, or falls back to cwd.
26
+ */
27
+ export declare function getProjectPiDir(): string;
15
28
  /**
16
29
  * Get the plugins directory for the given scope
17
30
  */
@@ -24,4 +37,23 @@ export declare function getNodeModulesDir(global?: boolean): string;
24
37
  * Get the package.json path for the given scope
25
38
  */
26
39
  export declare function getPackageJsonPath(global?: boolean): string;
40
+ /**
41
+ * Get the agent directory (where symlinks are installed)
42
+ */
43
+ export declare function getAgentDir(global?: boolean): string;
44
+ /**
45
+ * Resolve whether to use global or local scope based on CLI flags and auto-detection.
46
+ *
47
+ * Logic:
48
+ * - If --global is passed: use global mode
49
+ * - If --local is passed: use local mode
50
+ * - If neither: check if .pi/plugins.json exists in cwd, if so use local, otherwise use global
51
+ *
52
+ * @param options - CLI options containing global and local flags
53
+ * @returns true if global scope should be used, false for local
54
+ */
55
+ export declare function resolveScope(options: {
56
+ global?: boolean;
57
+ local?: boolean;
58
+ }): boolean;
27
59
  //# sourceMappingURL=paths.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,aAAa,QAAyB,CAAC;AAGpD,eAAO,MAAM,WAAW,QAAiC,CAAC;AAG1D,eAAO,MAAM,gBAAgB,QAAoC,CAAC;AAGlE,eAAO,MAAM,mBAAmB,QAAoC,CAAC;AAGrE,eAAO,MAAM,gBAAgB,QAAyC,CAAC;AAGvE,eAAO,MAAM,oBAAoB,QAAqC,CAAC;AAGvE,eAAO,MAAM,cAAc,QAAQ,CAAC;AAGpC,eAAO,MAAM,oBAAoB,QAAuC,CAAC;AAGzE,eAAO,MAAM,oBAAoB,QAA4C,CAAC;AAG9E,eAAO,MAAM,oBAAoB,QAAuC,CAAC;AAEzE;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,UAAO,GAAG,MAAM,CAKjD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,UAAO,GAAG,MAAM,CAKnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,UAAO,GAAG,MAAM,CAKvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,UAAO,GAAG,MAAM,CAKxD"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,aAAa,QAAyB,CAAC;AAGpD,eAAO,MAAM,WAAW,QAAiC,CAAC;AAG1D,eAAO,MAAM,gBAAgB,QAAoC,CAAC;AAGlE,eAAO,MAAM,mBAAmB,QAAoC,CAAC;AAGrE,eAAO,MAAM,gBAAgB,QAAyC,CAAC;AAGvE,eAAO,MAAM,oBAAoB,QAAqC,CAAC;AAGvE,eAAO,MAAM,cAAc,QAAQ,CAAC;AAGpC,eAAO,MAAM,oBAAoB,QAAuC,CAAC;AAGzE,eAAO,MAAM,oBAAoB,QAAuC,CAAC;AAGzE,eAAO,MAAM,oBAAoB,QAA4C,CAAC;AAG9E,eAAO,MAAM,oBAAoB,QAAuC,CAAC;AAEzE;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,IAAI,CAc/C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAOxC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,UAAO,GAAG,MAAM,CAKnD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,UAAO,GAAG,MAAM,CAKvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,UAAO,GAAG,MAAM,CAKxD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,UAAO,GAAG,MAAM,CAKjD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CASpF"}
@@ -1,16 +1,22 @@
1
- import type { OmpInstallEntry, PluginPackageJson } from "./manifest.js";
1
+ import type { OmpInstallEntry, PluginPackageJson } from "@omp/manifest";
2
2
  export interface SymlinkResult {
3
3
  created: string[];
4
4
  errors: string[];
5
5
  }
6
+ export interface SymlinkRemovalResult {
7
+ removed: string[];
8
+ errors: string[];
9
+ skippedNonSymlinks: string[];
10
+ }
6
11
  /**
7
12
  * Create symlinks for a plugin's omp.install entries
13
+ * @param skipDestinations - Set of destination paths to skip (e.g., due to conflict resolution)
8
14
  */
9
- export declare function createPluginSymlinks(pluginName: string, pkgJson: PluginPackageJson, global?: boolean, verbose?: boolean): Promise<SymlinkResult>;
15
+ export declare function createPluginSymlinks(pluginName: string, pkgJson: PluginPackageJson, global?: boolean, verbose?: boolean, skipDestinations?: Set<string>): Promise<SymlinkResult>;
10
16
  /**
11
17
  * Remove symlinks for a plugin's omp.install entries
12
18
  */
13
- export declare function removePluginSymlinks(_pluginName: string, pkgJson: PluginPackageJson, verbose?: boolean): Promise<SymlinkResult>;
19
+ export declare function removePluginSymlinks(_pluginName: string, pkgJson: PluginPackageJson, global?: boolean, verbose?: boolean): Promise<SymlinkRemovalResult>;
14
20
  /**
15
21
  * Check symlink health for a plugin
16
22
  */
@@ -26,7 +32,7 @@ export declare function getPluginForSymlink(dest: string, installedPlugins: Map<
26
32
  /**
27
33
  * Find all symlinks installed by plugins and trace them back
28
34
  */
29
- export declare function traceInstalledFile(filePath: string, installedPlugins: Map<string, PluginPackageJson>): Promise<{
35
+ export declare function traceInstalledFile(filePath: string, installedPlugins: Map<string, PluginPackageJson>, global?: boolean): Promise<{
30
36
  plugin: string;
31
37
  entry: OmpInstallEntry;
32
38
  } | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"symlinks.d.ts","sourceRoot":"","sources":["../src/symlinks.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAIxE,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,UAAO,EACb,OAAO,UAAO,GACZ,OAAO,CAAC,aAAa,CAAC,CAkDxB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,UAAO,GACZ,OAAO,CAAC,aAAa,CAAC,CA4BxB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACxC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,UAAO,GACX,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAoCnE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACxC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC9C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWxB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC9C,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,GAAG,IAAI,CAAC,CAkB5D"}
1
+ {"version":3,"file":"symlinks.d.ts","sourceRoot":"","sources":["../src/symlinks.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAmCxE,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACzC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,UAAO,EACb,OAAO,UAAO,EACd,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAC5B,OAAO,CAAC,aAAa,CAAC,CA6FxB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACzC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,UAAO,EACb,OAAO,UAAO,GACZ,OAAO,CAAC,oBAAoB,CAAC,CAqD/B;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACxC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,UAAO,GACX,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA2CnE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACxC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC9C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWxB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAChD,MAAM,UAAO,GACX,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,GAAG,IAAI,CAAC,CAmB5D"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oh-my-pi/cli",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Plugin manager for pi - install and manage pi config plugins from git repos",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -11,7 +11,8 @@
11
11
  "scripts": {
12
12
  "build": "bun build src/cli.ts --outdir dist --target bun && tsc --emitDeclarationOnly",
13
13
  "dev": "bun --watch src/cli.ts",
14
- "check": "biome check --write . && tsc --noEmit",
14
+ "lint": "biome check --write .",
15
+ "check": "bun run lint && tsc --noEmit",
15
16
  "clean": "rm -rf dist",
16
17
  "publish:all": "./scripts/publish.sh",
17
18
  "publish:dry": "./scripts/publish.sh --dry-run",
@@ -20,6 +21,10 @@
20
21
  "keywords": ["pi", "plugin", "manager", "cli"],
21
22
  "author": "",
22
23
  "license": "MIT",
24
+ "repository": {
25
+ "type": "git",
26
+ "url": "https://github.com/can1357/oh-my-pi.git"
27
+ },
23
28
  "devDependencies": {
24
29
  "@biomejs/biome": "2.3.5",
25
30
  "@types/node": "^22.10.5",
@@ -1,10 +1,15 @@
1
1
  {
2
2
  "name": "@oh-my-pi/metal-theme",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Metal theme for pi",
5
5
  "keywords": ["omp-plugin", "theme", "metal"],
6
6
  "author": "",
7
7
  "license": "MIT",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/can1357/oh-my-pi.git",
11
+ "directory": "plugins/metal-theme"
12
+ },
8
13
  "omp": {
9
14
  "install": [
10
15
  { "src": "themes/metal.json", "dest": "agent/themes/metal.json" }
@@ -1,10 +1,15 @@
1
1
  {
2
2
  "name": "@oh-my-pi/subagents",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Task delegation system with specialized subagents (task, planner, explore, reviewer)",
5
5
  "keywords": ["omp-plugin", "agents", "task-delegation"],
6
6
  "author": "",
7
7
  "license": "MIT",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/can1357/oh-my-pi.git",
11
+ "directory": "plugins/subagents"
12
+ },
8
13
  "omp": {
9
14
  "install": [
10
15
  { "src": "tools/task/index.ts", "dest": "agent/tools/task/index.ts" },