The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Install
git clone https://github.com/tailscale/tsidpInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →tsidp - Tailscale OpenID Connect (OIDC) Identity Provider
[!CAUTION] This is an experimental update of tsidp. It is under active development and may experience breaking changes.
tsidp is an OIDC / OAuth Identity Provider (IdP) server that integrates with your Tailscale network. It allows you to use Tailscale identities for authentication into applications that support OpenID Connect as well as authenticated MCP client / server connections.
Prerequisites
- A Tailscale network (tailnet) with MagicDNS and HTTPS enabled
- A Tailscale authentication key from your tailnet
- (Recommended) Docker installed on your system
- Ability to set an Application capability grant
Running tsidp
(Recommended) Using the pre-built image
Docker images are automatically published at https://ghcr.io/tailscale/tsidp when releases are tagged.
[!TIP] Replace
YOUR_TAILSCALE_AUTHKEYwith your Tailscale authentication key in the following commands:Use an existing auth key or create a new auth key in the Keys page of the Tailscale admin console. Ensure you select an existing tag or create a new one.
Here is an example docker compose YAML file for tsidp:
services:
tsidp:
container_name: tsidp
image: ghcr.io/tailscale/tsidp:latest
volumes:
- tsidp-data:/data
environment:
- TAILSCALE_USE_WIP_CODE=1 # tsidp is experimental - needed while version <1.0.0
- TS_STATE_DIR=/data # store persistent tsnet and tsidp state
- TS_HOSTNAME=idp # Hostname on tailnet (becomes idp.your-tailnet.ts.net)
- TSIDP_ENABLE_STS=1 # Enable OAuth token exchange
# Optional: Tailscale auth key for automatic node registration
# - TS_AUTHKEY=tskey-auth-xxxxx
volumes:
tsidp-data:
Paste the YAML snippet above into a file named compose.yaml. Once the compose file has been edited to your satisfaction, start tsidp by issuing docker compose up -d. Monitor the result with docker compose logs -f.
Once tsidp has started, visit https://idp.yourtailnet.ts.net in a browser to confirm the service is running.
[!NOTE] If you're running tsidp for the first time it may take a few minutes for the TLS certificate to generate. You may not be able to access the service until the certificate is ready.
[!NOTE] Using OAuth Client Secrets
As an alternative to traditional auth keys, you can use OAuth client secrets for automatic node registration.
Setup:
- In the Tailscale admin console, create an OAuth client with Auth Keys → Write scope
- Ensure the advertise tag (e.g.
tag:tsidp) is defined in your ACLtagOwners- Set
TS_AUTHKEYto your OAuth client secret (tskey-client-...)- Set
TS_ADVERTISE_TAGS(or--advertise-tags) — required when using OAuth client secretsenvironment: - TS_AUTHKEY=tskey-client-xxxxx - TS_ADVERTISE_TAGS=tag:tsidp
Similar plugs
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) ·…
This open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust…
An open-source Agent-first Identity and Access Management (IAM) /LLM MCP & agent gateway and auth server with web UI supporting OpenClaw, MCP, OAuth, OIDC, SAML, CAS, LDAP,…