{"id":44317255,"url":"https://github.com/basher83/tailnet-microservices","last_synced_at":"2026-02-11T05:14:56.792Z","repository":{"id":337197681,"uuid":"1151154298","full_name":"basher83/tailnet-microservices","owner":"basher83","description":"Single-binary Rust services with embedded Tailscale connectivity","archived":false,"fork":false,"pushed_at":"2026-02-08T09:10:46.000Z","size":286,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-08T15:28:09.980Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/basher83.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-02-06T05:41:03.000Z","updated_at":"2026-02-08T09:10:49.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/basher83/tailnet-microservices","commit_stats":null,"previous_names":["basher83/tailnet-microservices"],"tags_count":114,"template":false,"template_full_name":null,"purl":"pkg:github/basher83/tailnet-microservices","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basher83%2Ftailnet-microservices","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basher83%2Ftailnet-microservices/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basher83%2Ftailnet-microservices/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basher83%2Ftailnet-microservices/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/basher83","download_url":"https://codeload.github.com/basher83/tailnet-microservices/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/basher83%2Ftailnet-microservices/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29327150,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T03:52:29.695Z","status":"ssl_error","status_checked_at":"2026-02-11T03:52:23.094Z","response_time":97,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-11T05:14:56.736Z","updated_at":"2026-02-11T05:14:56.783Z","avatar_url":"https://github.com/basher83.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tailnet Microservices\n\n\u003e [!CAUTION]\n\u003e **Tailnet Microservices is a research project. If your name is not basher83 then do not use.**\n\u003e\n\u003e This software is experimental, unstable, and under active development. APIs will change without notice. Features may be incomplete or broken. There is no support, no documentation guarantees, and no warranty of any kind. Use at your own risk.\n\nSingle-binary Rust services that act as infrastructure proxies on a Tailscale tailnet. Tailnet exposure is handled by the Tailscale Operator via Kubernetes Service annotations. Each service includes Prometheus metrics and structured JSON logging.\n\n## Services\n\n`anthropic-oauth-proxy` injects the `anthropic-beta: oauth-2025-04-20` header into requests proxied to `https://api.anthropic.com`. This enables Claude Max OAuth token authentication through proxies like Aperture that lack custom header injection. Runs as a single-container Kubernetes pod with zero secrets.\n\n## Quick Start\n\n```bash\ngit clone https://github.com/basher83/tailnet-microservices.git\ncd tailnet-microservices\ncargo build --workspace\ncargo test --workspace\n```\n\n## Project Structure\n\n```text\ncrates/\n  common/           # Shared types: error types\nservices/\n  oauth-proxy/      # Anthropic OAuth header injection proxy\nspecs/\n  *.md              # Service specifications\nk8s/                # Kubernetes deployment manifests\n```\n\n## Configuration\n\nCopy `anthropic-oauth-proxy.example.toml` to configure the proxy. See `specs/oauth-proxy.md` for the full configuration reference and `RUNBOOK.md` for operational guidance.\n\n## Deployment\n\nKubernetes manifests live in `k8s/`. Apply with `kubectl apply -k k8s/`. No secrets required. See `RUNBOOK.md` for the complete deployment procedure.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbasher83%2Ftailnet-microservices","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbasher83%2Ftailnet-microservices","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbasher83%2Ftailnet-microservices/lists"}