Repository navigation
profiles and installation
Phase 3 (+3.5) · designs: install pipeline · marketplace emitter · profile concept
A profile is a versioned, installable bundle: MCP servers plus resources (skills, hooks, sub-agents, rules, commands). Its entries are references to platform resources, so installing a profile fetches the current bodies from the server — the CLI never works off local manifests.
The server emits a Claude-Code-native plugin marketplace. Create a marketplace-scoped PAT (Tokens page), then:
claude plugin marketplace add <PUBLIC_BASE_URL>/api/marketplace/<token>/marketplace.json
claude plugin install <profile>@harness-nexus-<username>
Claude Code then owns install/update/uninstall itself. The emitted
.mcp.json defaults to one hnx mcp serve entry per profile (client-dialed,
no secrets inlined). Requires PUBLIC_BASE_URL to be the public HTTPS
origin in production.
hnx install --profile <id> --target <hermes|codex> [--out] [--apply]
--out previews the plan (per-file writes with snapshots); --apply writes
it. hnx uninstall reverses an install from the ledger (restores snapshots,
keeps your later edits as *.hnx.bak). Upgrades are a re-run of install —
plans are idempotent overwrites.
Machines can also receive provider config (model route + credential) per agent target — see Harness runtime management.