@hraness/peopleblade 0.2.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -15,7 +15,7 @@ Installation includes the pinned runtime dependencies Zod 4.4.3 and Effect 3.22.
15
15
  ## Install
16
16
 
17
17
  ```bash
18
- bun add --global @hraness/peopleblade@0.2.2
18
+ bun add --global @hraness/peopleblade@0.3.3
19
19
  peopleblade --version
20
20
  peopleblade init
21
21
  peopleblade stats --json
@@ -40,19 +40,20 @@ token remains available.
40
40
  ### Optional Ghostget-backed sources
41
41
 
42
42
  The package does not install Ghostget, browser automation, KB, native model runtimes,
43
- or provider credentials. Beeper, Google, and WhatsApp live sync commands delegate
44
- through a separately reviewed `ghostget` executable on `PATH` (or the absolute
45
- `PEOPLEBLADE_GHOSTGET_EXECUTABLE` path). PeopleBlade bundles only the pinned Ghostget
46
- 0.17.1 client validators needed to fence requests and receipts; it does not bundle
47
- or silently download Ghostget's execution runtime.
43
+ or provider credentials. Beeper, Google, and WhatsApp live sync commands and the
44
+ LinkedIn Contact-info read delegate through a separately reviewed `ghostget`
45
+ executable on `PATH` (or the absolute `PEOPLEBLADE_GHOSTGET_EXECUTABLE` path).
46
+ PeopleBlade bundles only the pinned Ghostget 0.17.3 client validators needed to
47
+ fence requests and receipts; it does not bundle or silently download Ghostget's
48
+ execution runtime.
48
49
 
49
50
  `PEOPLEBLADE_WRENCH_EXECUTABLE` remains a compatibility alias for the explicit
50
51
  path. When both variables are set, they must name the same executable. The
51
- bridge still requires exact Ghostget 0.17.1 before invoking a provider operation.
52
+ bridge still requires exact Ghostget 0.17.3 before invoking a provider operation.
52
53
 
53
- PeopleBlade 0.2.2 contains the reviewed Ghostget-backed Beeper, Google, and WhatsApp
54
+ PeopleBlade 0.3.3 contains the reviewed Ghostget-backed Beeper, Google, and WhatsApp
54
55
  live sync commands. Running them requires the separately installed public
55
- `@hraness/ghostget` 0.17.1 package. Beeper support is bounded to account-aware
56
+ `@hraness/ghostget` 0.17.3 package. Beeper support is bounded to account-aware
56
57
  `contacts.list@3` reads, `contacts.search@1`, `messaging.search@2`, and the separate
57
58
  body-free interaction exporter. `contacts.search@1` executes the official Beeper
58
59
  CLI 0.6.2 executable pinned by Ghostget; `contacts.list@3` and `messaging.search@2`
@@ -62,13 +63,41 @@ only. See
62
63
  [peopleblade.com/sources](https://peopleblade.com/sources) for the complete provider
63
64
  guide. A database previously synced by PeopleBlade 0.1.1 through Wrench 0.16.7
64
65
  must run `peopleblade beeper rebind --auth beeper-main --confirm --json` once after
65
- installing Ghostget 0.17.1. The command appends reviewed metadata for the same source
66
+ installing Ghostget 0.17.3. The command appends reviewed metadata for the same source
66
67
  identity only after both complete account inventories match. Do not force-bind
67
68
  Ghostget unless its authenticated Desktop target changed. PeopleBlade calls no
68
69
  Beeper interface directly and exposes none of Ghostget's Beeper send or action
69
70
  operations. Archive imports, Apple Contacts, iMessage, notes, identity review,
70
71
  backups, and optional PeopleBlade cloud commands do not require Ghostget.
71
72
 
73
+ ### LinkedIn Contact info through Ghostget
74
+
75
+ ```bash
76
+ peopleblade linkedin contact-info --person-id ID [--account KEY] [--auth ID]
77
+ ```
78
+
79
+ `linkedin contact-info` reads the Contact info panel (email, phone numbers,
80
+ websites, birthday, and connected-since date) of one first-degree LinkedIn
81
+ connection that `linkedin import` already imported from the official LinkedIn
82
+ data export. The command records the read as exact, provider-attributed evidence
83
+ for that person; repeating an identical read changes nothing.
84
+
85
+ The read runs through Ghostget, Wrench's renamed successor, published as the
86
+ `@hraness/ghostget` package. The package does not install Ghostget. The command
87
+ delegates to a separately installed `ghostget` executable on `PATH` (or the
88
+ absolute `PEOPLEBLADE_GHOSTGET_EXECUTABLE` path) and refuses any executable
89
+ that does not report exactly version 0.17.3. It needs a Ghostget path-backed
90
+ auth binding for a signed-in LinkedIn browser profile; the default binding id
91
+ is `linkedin-main`, and `--auth ID` selects another. Beeper, Google, and
92
+ WhatsApp delegate through the same `ghostget` executable.
93
+
94
+ Each command reads one bounded profile. It never lists connections, reads
95
+ messages or feeds, or sends invitations, and it fails without writing anything
96
+ when the profile belongs to the account owner or is not a first-degree
97
+ connection. PeopleBlade bundles only the pinned Ghostget 0.17.3 client
98
+ validators that fence the request and receipt; it does not bundle or download
99
+ Ghostget's execution runtime or browser automation.
100
+
72
101
  ## Browse and edit locally
73
102
 
74
103
  ```bash
@@ -1,8 +1,8 @@
1
1
  # Third-party notices
2
2
 
3
3
  The PeopleBlade CLI bundle includes reviewed client-boundary code from
4
- `@hraness/ghostget` 0.17.1 (commit
5
- `b74ae2ac594bcf07c3def71dc4bb2e5a98c826dd`) and message-bundle contract code
4
+ `@hraness/ghostget` 0.17.3 (commit
5
+ `67b53cc1917bb09a48b22042cc988c3afbc0aaf8`) and message-bundle contract code
6
6
  from `@hraness/message-like-me` 0.7.0. Those portions are provided under the
7
7
  following license. The PeopleBlade CLI package has its own MIT grant in
8
8
  `LICENSE`; this notice preserves the attribution for the bundled portions.
@@ -28,3 +28,11 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
28
28
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
29
29
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
30
30
  SOFTWARE.
31
+
32
+ ## Hraness Paper theme
33
+
34
+ The local workspace embeds the portable Paper theme from `@hraness/design-kit`.
35
+ Its reviewed source identity and file hashes are recorded in the source repository at
36
+ `styles/vendor/hraness-paper/provenance.json`. The theme is copyright (c) 2026 Hraness
37
+ and distributed under the MIT license reproduced in this package’s `LICENSE`.
38
+ It contains no fonts, scripts, or runtime dependencies.
package/dist/cli.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  import { accessSync, constants, realpathSync } from "node:fs";
4
4
  import { isAbsolute, resolve } from "node:path";
5
5
 
6
- const reviewedGhostgetVersion = "0.17.1";
6
+ const reviewedGhostgetVersion = "0.17.3";
7
7
  const canonicalConfigured = process.env.PEOPLEBLADE_GHOSTGET_EXECUTABLE;
8
8
  const legacyConfigured = process.env.PEOPLEBLADE_WRENCH_EXECUTABLE;
9
9
  if (