Skip to main content

Cross-Machine Skill Inventory

See which agent skills are installed on every machine and harness you use, in one place — opt-in, read-only, and updated only when you push.

What it is

Cross-machine skill inventory is a read-only view of the agent skills installed across every machine and harness you use — Claude Code, Cursor, Copilot, Windsurf, and the shared, open-standard directory that Codex reads. It isn't scoped to one agent; it scans wherever any supported harness looks for skills.

Data flows one way: from a machine you control, through the Skillsmith cloud, into your browser. There is no channel back — nothing you do at skillsmith.app/account/skills can install, remove, or change a file on any machine. Each device's row is a snapshot as of that device's last skillsmith inventory push, not a live view.

Read-only, one-way

The dashboard shows what a machine last reported. It never writes back to a machine and never triggers a scan remotely — only running skillsmith inventory push (or the MCP inventory_push tool) on that machine updates its row.

Privacy & Consent

Cross-machine skill inventory is opt-in and off by default. Nothing is stored until you turn it on in your account settings — a push made before you opt in sends a snapshot the server rejects and discards without storing.

What's shared when it's on

  • A random device ID (generated locally; never linked to your name)
  • An optional device label (e.g. work-laptop; the ability to set one from the CLI is coming — labels are unset today)
  • OS platform and architecture (e.g. darwin/arm64)
  • CLI version
  • A one-way hash of your hostname — the raw hostname is never uploaded
  • Per installed skill: harness, skill ID, version, content hash, source, pinned version, update policy, and any author, license, and repository values declared in the skill's own SKILL.md front-matter

What we never upload

  • Your raw hostname or any identifying system information
  • File contents, file paths, or skill source code

Purging your stored inventory

Turning inventory sync off stops future uploads immediately — this is enforced server-side, not just by the CLI. To permanently delete everything already stored, run skillsmith inventory purge (see Commands below).

Want to block uploads on one machine regardless of your account setting? Set SKILLSMITH_INVENTORY_DISABLE=1 (or true, case-insensitive — any other value is ignored) in that machine's environment. It's a local, offline switch: when set, skillsmith inventory push returns immediately without creating a device ID or making a network call.

Setup

  1. Create a free account, or sign in if you already have one, at skillsmith.app.
  2. Install the CLI: npm install -g @skillsmith/cli (requires Node.js 22.22 or newer).
  3. Run skillsmith login. It opens a device login page in your browser and links the CLI to the same account as your web session.
  4. Enable "Cross-machine skill inventory" at skillsmith.app/account/telemetry and press Save.
  5. Run skillsmith inventory push.
  6. View the result at skillsmith.app/account/skills.

It's safe to run skillsmith inventory push before step 4 — nothing is stored. The server discards the snapshot and the CLI prints an informational message instead: Inventory sync is OFF for your account. Enable it in account settings; nothing stored.

The comparison view is most useful once more than one machine has reported in — with a single device, the page just shows that device's own snapshot.

Commands

skillsmith inventory push

Builds a snapshot of installed skills across the harnesses listed in Harness Coverage and uploads it to your account. If inventory sync is off for your account, or disabled locally via SKILLSMITH_INVENTORY_DISABLE, the CLI prints an informational message and stores nothing.

skillsmith inventory push

skillsmith inventory status

Local and read-only — makes no network calls. Shows your device ID, last push time, whether inventory sync is disabled locally, and which harnesses have skills installed on this machine.

skillsmith inventory status
skillsmith inventory status --verbose

--verbose additionally lists the individual skill IDs found under each harness (and under the repo-local ./.claude/skills folder, if the directory you're standing in has one).

skillsmith inventory forget-device

Clears this machine's local device registration. The next skillsmith inventory push generates a fresh device ID and registers again, as if it were a new machine.

skillsmith inventory forget-device

skillsmith inventory purge

Permanently deletes this account's entire stored cross-machine inventory from Skillsmith's servers — every device row and its skill rows. This is irreversible. Prompts for confirmation unless --yes is passed (for scripts).

skillsmith inventory purge
skillsmith inventory purge --yes

Using Claude Code?

If you have the Skillsmith MCP server configured, ask your assistant to use the inventory_push tool instead of running the CLI — it pushes the same snapshot. See the MCP Server reference.

Harness Coverage

skillsmith inventory push scans the following harness-specific directories on your machine. A harness only shows up in your inventory if its directory exists and contains at least one skill.

Harness Directory scanned
Claude Code ~/.claude/skills
Cursor ~/.cursor/skills
GitHub Copilot ~/.copilot/skills
Windsurf ~/.codeium/windsurf/skills
Shared / Codex ~/.agents/skills

Codex doesn't have its own directory — it reads skills from the shared, open-standard ~/.agents/skills path, so Codex-managed skills appear under the shared harness above.

skillsmith inventory status also reports skills found in the repo-local ./.claude/skills folder of the directory you run it from — handy for checking a project-scoped skills folder locally. That count is local-only: skillsmith inventory push does not upload it, so repo-local skills never appear at skillsmith.app/account/skills.

OpenCode and Antigravity aren't scanned yet.

State Badges

Every skill shown at skillsmith.app/account/skills carries one of eight states. Each pairs a distinct icon shape with its own color, so the badge stays meaningful without relying on color alone.

Icon Label What it means Suggested action
Up to date Up to date with the registry No action needed.
Update available A newer version is available in the registry Run skillsmith update <skill> on that machine.
Missing Installed before but not seen in the latest sync Confirm the skill is still installed, then re-run skillsmith inventory push from that machine — or reinstall it if it was removed intentionally.
Pinned Pinned to a version; drift checks suppressed No action needed. Run skillsmith unpin <skill> if you want drift checks again.
Unknown Not matched to a registry skill (local or custom) No action needed — expected for skills you wrote yourself or installed outside the registry.
Local Installed locally; no registry or declared source No action needed. Add author, repository, and license front-matter to the skill's SKILL.md if you'd like it to show as Claimed source instead.
Claimed source Source declared in the skill's own metadata (not registry-verified) No action needed — the author/repository shown is self-reported and hasn't been verified by the registry.
Checking… Resolving source — check back shortly None — this is a transient state. Refresh the page in a few seconds.

Devices carry their own freshness signal next to their name: fresh if the device pushed within the last 24 hours, stale if its last push is older than that. A device that has registered (it has a device ID) but has never completed a skill push shows as never synced — its skill list stays empty until the first successful push.

Troubleshooting

"Inventory sync is OFF for your account. Enable it in account settings; nothing stored."

You'll see this after running skillsmith inventory push before turning sync on for your account. Nothing was uploaded. Enable "Cross-machine skill inventory" at Telemetry Preferences, then push again.

Device-conflict error

If skillsmith inventory push reports This device is registered to another account. Run `skillsmith inventory forget-device` and push again., this machine's local device ID was previously registered to a different account — for example, after logging in as someone else on a shared machine.

skillsmith inventory forget-device
skillsmith inventory push
"Not logged in. Run `skillsmith login` and try again."

Your CLI session doesn't have valid credentials. Run skillsmith login to complete a device login, then retry the command.

Need Help?

Still stuck? Email [email protected] with the command you ran and any error output.