Files

42 lines
1.7 KiB
Markdown
Raw Permalink Normal View History

# instance/dnspegasus
This branch is **not** a fork of the project. It is an orphan branch holding
exactly three files: the Claude Code plugin manifests for one live instance,
filled in with that instance's real server URL and OAuth client ID.
```
.claude-plugin/marketplace.json marketplace named `dnspegasus`
plugin/.claude-plugin/plugin.json plugin manifest
plugin/.mcp.json server URL + pre-registered OAuth client
```
Install from it with a `#ref` fragment:
```bash
claude plugin marketplace add "https://repo.anhonesthost.net/cybercove-labs/shared-memory.git#instance/dnspegasus"
claude plugin install shared-memory@dnspegasus
```
## Why it's an orphan branch
It used to be a normal branch off `main`, which was wrong twice over:
- It carried a full copy of the application it had no reason to have, so it
drifted behind `main` and a stale deploy could have been cut from it.
- Syncing it meant `git merge origin/main`, which **silently replaced these
three manifests** with `main`'s public placeholders. No conflict was raised,
because only `main` had touched those paths.
With no shared history there is nothing to sync and nothing to clobber. Never
merge `main` into this branch — if the manifest *format* changes upstream,
hand-edit these files and run `claude plugin validate .`.
`main` carries the same three files with placeholder values, as the public
template. The real values live only here.
## The client ID is not a secret
`clientId` is a **Public** (PKCE) OAuth client. It is meant to be committed —
it identifies the client, it does not authenticate it. Access is controlled by
the bindings on the IdP application, not by keeping this string private.