32 supported actions
Accounts · Bridges · Contacts · Conversations · Messages · Presence · Reactions
Local app
32 reviewed actions: 26 through one pinned CLI and 6 fixed Desktop reads; writes are previewed and uncertain outcomes stay unretriable.
Read public pages, save media, and use supported actions in the services you’ve signed into. Ghostget is a local CLI and TypeScript SDK. You choose the agent and the accounts it can use.
Free and MIT licensed. Runs on macOS and Linux with Bun 1.3.14. Release v0.17.3.
$ ghostget read https://example.com
---
title: "Example Domain"
source: "https://example.com/"
clipped: "2026-09-05"
platform: "generic"
capture_status: "complete"
capture_method: "http"
capture_scope: "page"
---
# Example Domain
This domain is for use in documentation examples without needing permission. Avoid use in operations.
[Learn more](https://iana.org/domains/example)ghostget read for a public page: a short record of what was captured and how, then the page as Markdown. Nothing was saved.
Public-page read recorded on September 5, 2026; command updated for Ghostget.
Ghostget requires Bun 1.3.14 and runs on macOS and Linux. Install the CLI and SDK from the @hraness/ghostget canonical release archive, then run the doctor before you connect a service.
Add the Agent Skill
npx skills add hraness/ghostget#v0.17.3
Add Ghostget’s capture, archive, provider, and publishing guide to your agent. With Bun, run bunx skills add hraness/ghostget#v0.17.3 instead. View the Ghostget Agent Skill on skills.sh.
bun add --global https://github.com/hraness/ghostget/releases/download/v0.17.3/hraness-ghostget-0.17.3.tgz
ghostget doctor
ghostget read https://example.com/article
ghostget capabilities --json
Your agent requests a supported action, such as reading an inbox or saving a video. Ghostget checks the inputs and account, makes the request, and returns a structured result. Sign-in details stay inside Ghostget.
The agent asks for an outcome, such as reading an inbox or preserving one video.
Ghostget resolves one installed, supported action. There is no general browser or request tool to fall back on.
The kernel binds the exact service, account, transport, contract version, and risk level before anything runs.
Credentials stay opaque to the caller and can reach only the endpoints that action declares.
The caller gets a typed result, an explicit note of what is incomplete, or a durable record that the outcome is still unsettled.
These cards summarize capability families and access methods, then link to the named actions supported in this release. If an action is not listed there, Ghostget does not offer it.
32 supported actions
Accounts · Bridges · Contacts · Conversations · Messages · Presence · Reactions
Local app
32 reviewed actions: 26 through one pinned CLI and 6 fixed Desktop reads; writes are previewed and uncertain outcomes stay unretriable.
8 supported actions
Comments · Content · Feeds · Media · Posts · Profiles
Signed-in web session
1 supported action
Listings
Signed-in web session
1 supported action
Feeds
Signed-in web session
1 supported action
Feeds
Signed-in web session
2 supported actions
Feeds · Listings
Signed-in web session
2 supported actions
Organizations · Profiles
Signed-in web session
3 supported actions
Contacts · Messages
Official API
3 supported actions
Comments · Feeds · Posts
Signed-in web session
8 supported actions
Comments · Contacts · Content · Feeds · Media · Messages · Posts · Profiles
Signed-in web session
5 supported actions
Conversations · Messages
Local app
13 supported actions
Articles · Comments · Contacts · Feeds · Organizations · Posts · Profiles · Reactions · Replies
Official API + Signed-in web session
11 supported actions
Comments · Content · Feeds · Flair · Media · Messages · Posts · Profiles
Signed-in web session
10 supported actions
Articles · Comments · Content · Feeds · Media · Messages · Organizations · Posts · Profiles
Signed-in web session
4 supported actions
Feeds · Media · Posts · Profiles
Signed-in web session
3 supported actions
Comments · Feeds · Profiles
Signed-in web session
1 supported action
Profiles
Signed-in web session
4 supported actions
Contacts · Media · Messages
Linked device
16 supported actions
Articles · Comments · Content · Feeds · Likes · Messages · Posts · Profiles · Replies · Threads
Official API + Signed-in web session
5 supported actions
Comments · Feeds · Media · Posts · Profiles
Signed-in web session
Provider names identify compatible services and do not imply endorsement. Counts are for release v0.17.3.
Ghostget does not publish a hosted API or MCP server. Its public interfaces stay local and versioned, so what your agent can do is the same from a skill, a terminal, or typed code.
Add the release-matched capture, archive, provider, and publishing guide to an agent that can run commands.
npx skills add hraness/ghostget#v0.17.3Use stable human output or JSON from a terminal, a script, or an agent tool call.
ghostget capabilities --jsonImport side-effect-free validators and types without starting the CLI or inspecting local state.
import { isProviderPluginId } from "@hraness/ghostget"Ghostget is infrastructure around the accounts and tools you already have, not a service in front of them.
Ghostget owns a narrow local layer: named actions and the records they leave behind. Hosted integration catalogs, cloud Actors, and managed browsers solve broader jobs at other layers.
| Approach | Best fit | Ghostget boundary |
|---|---|---|
| Pipedream Connect | Hosted integration breadth and managed end-user authentication across thousands of APIs and prebuilt tools | A smaller local set whose provider operations and implementations are reviewed before they run |
| Apify MCP | Discovering and running eligible Apify Store Actors through a hosted MCP service, with access to results and storage | Each provider operation and implementation must be named and reviewed before it can run |
| Browserbase | Parallel browser automation on managed cloud sessions, with live inspection and video recording by default | No remote browser runtime and no hidden browser fallback when a named operation is missing or drifted |
| Ghostget | Narrow local capabilities whose exact identities, account realms, and risks need review | Encrypted provider snapshots and projections, mutation previews and receipts, and fail-closed contract drift |
No. Install the CLI and read a public page. You connect a service only when you want its actions, and each connection is stored on your machine. There is no Ghostget account and no Ghostget server in the loop.
It uses a sign-in you already have for a service, on this machine, and keeps it out of your agent’s hands. The agent calls a named action and gets a typed result. It never receives cookies, tokens, a shell, or a browser it can steer.
Nothing. Ghostget is free and MIT licensed, with no hosted tier and no paid plan. You pay your model provider and any service subscriptions you already have.
No. The CLI and SDK send no analytics to ghostget.com; they make only the network requests the action you chose requires. This website counts page views with cookieless analytics and honors Do Not Track. The privacy page explains both.
macOS and Linux with Bun 1.3.14. Actions that read iMessage or Apple Photos need macOS. Beeper actions need Beeper Desktop on the same machine, and WhatsApp reads need a linked device.
No. Ghostget is a CLI and an SDK. Your agent owns the model, the plan, approvals, and the interface. Ghostget gives it a set of actions it can call and a record of what happened.
No. Media archiving is limited to one item you are authorized to access that is finite and not protected by DRM. Ghostget does not bypass payment, authentication, access controls, or DRM.
The affected action becomes unavailable until its contract is updated, reviewed, and tested. Ghostget does not switch to a browser fallback silently, so a changed page never turns into a guessed action.
If a request left the machine and its response was lost, the effect may already exist. Ghostget keeps that uncertainty visible and reconciles it from separately obtained evidence instead of sending the request again.
Page capture, media archives, encrypted reads, and 140 supported actions across 20 services. ghostget capabilities is the source of truth for what is installed and available on your machine, and the provider list names every action in this release.
Ben Guo, a musician and builder who was a founder and engineering leader at companies including Venmo and Stripe, and who now builds from Puerto Rico. Ghostget is published in the open under the Hraness GitHub organization.
Ghostget is built by Ben Guo, a musician and builder, formerly a founder and engineering leader at companies including Venmo and Stripe, now building from Puerto Rico. He publishes it in the open with the rest of his projects at hraness.com.
Install the CLI, read one public page, and connect a service only when you need its actions.
Free and MIT licensed. Runs on macOS and Linux with Bun 1.3.14. Release v0.17.3.
Where the boundary changes
These essays compare named, attested operations with browser control, account identity, virtual machines, device policy, rumour-driven agentic search, and desktop privilege grants.
Why Ghostget exposes named operations instead of falling back to general browser control.
Why a failed inbound identity check does not establish a safe outbound operation.
Why a virtual machine around an agent does not define a safe web operation.
PayPal crashed on GrapheneOS after a root-detection check. Device-policy attestation is not a named web operation.
A rumour of a bug can be enough for agentic search. A search direction is not a named web operation.
Omarchy’s default desktop let any user process escalate to root. A host privilege grant is not a named web operation.
Documentation by task
These guides describe the current release, the commands to use, and the limits that stay in force.
Pin the current release, run the doctor, capture a first URL, and inspect local capabilities.
Choose between an inspection, durable Markdown capture, or one verified finite-item media archive.
See every provider action available in the current release and the access method it uses.
Review local custody, account binding, encrypted state, risk levels, and fail-closed drift behavior.
Define one operation, prove its contract, then check, test, pack, trust, and install the exact code.