{"id":50979499,"url":"https://github.com/sah1l/outpost","last_synced_at":"2026-06-19T12:34:10.100Z","repository":{"id":353994193,"uuid":"1217246963","full_name":"sah1l/outpost","owner":"sah1l","description":"Doc-hosting service designed for AI agents: npm CLI (outpost) for agent-driven uploads, Next.js dashboard for humans, sandboxed usercontent origin so agent-generated JS can't escape.","archived":false,"fork":false,"pushed_at":"2026-05-22T01:34:37.000Z","size":869,"stargazers_count":3,"open_issues_count":9,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-22T10:09:50.793Z","etag":null,"topics":["claude-skill","cli","share-html","share-md"],"latest_commit_sha":null,"homepage":"https://outpost.offsprint.xyz","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sah1l.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","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":null,"dco":null,"cla":null}},"created_at":"2026-04-21T17:36:11.000Z","updated_at":"2026-05-22T01:34:41.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/sah1l/outpost","commit_stats":null,"previous_names":["sah1l/outpost"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sah1l/outpost","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sah1l%2Foutpost","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sah1l%2Foutpost/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sah1l%2Foutpost/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sah1l%2Foutpost/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sah1l","download_url":"https://codeload.github.com/sah1l/outpost/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sah1l%2Foutpost/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34532256,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["claude-skill","cli","share-html","share-md"],"created_at":"2026-06-19T12:34:09.378Z","updated_at":"2026-06-19T12:34:10.086Z","avatar_url":"https://github.com/sah1l.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Outpost\n\nShare HTML and Markdown publicly. Next.js on Cloud Run, GCS for files, Firestore for metadata.\n\n- Live demo: **https://outpost.offsprint.xyz**\n- Demo doc (made with Outpost): **https://outpost.offsprint.xyz/s/outpost-three-ways**\n\n## Use Outpost from your AI coding agent (Claude Code \u0026 friends)\n\nThe fastest way to start using Outpost is from the AI agent you're already\nchatting with. Install the Outpost Agent Skill once and you can ask your\nagent to share a local `.html` or `.md` file and get back a public link\nwithout leaving the chat. Works with Claude Code, Copilot CLI, Cursor, Codex,\nGemini CLI, and Antigravity.\n\n1. **Update `gh` to the latest version.** Skill install from public repos\n   landed in `gh` 2.90+. If you installed via Chocolatey:\n\n   ```powershell\n   choco upgrade gh\n   ```\n\n   Otherwise use the upgrade path for your installer (Homebrew, winget, the\n   GitHub release, etc.).\n\n2. **Install the Outpost skill:**\n\n   ```sh\n   gh skill install sah1l/outpost outpost\n   ```\n\n3. **Log in once to get a CLI token** (used by the skill to upload on your\n   behalf):\n\n   ```sh\n   npx @offsprint/outpost login\n   ```\n\n   This opens a browser for device-flow auth and stores the token locally.\n\n4. **Ask your agent to share a doc.** In your Claude Code (or other agent)\n   session, prompt something like:\n\n   \u003e share `xyz.md` as md and give me a public link\n\n   or\n\n   \u003e share `report.html` as html and give me a public link\n\n   Ask for a **public link** explicitly — otherwise the agent uploads the\n   file as private and you have to flip it from the dashboard. If the agent\n   doesn't pick up on the first try, mention \"**share to outpost**\":\n\n   \u003e share this to outpost as md and give me a public link\n\nFor manual install or other agent hosts, see\n[`skills/README.md`](./skills/README.md).\n\n## Structure\n\n- `apps/app` — main app at [outpost.offsprint.xyz](https://outpost.offsprint.xyz)\n- `apps/usercontent` — sandboxed user content at [usercontent.offsprint.xyz](https://usercontent.offsprint.xyz)\n- `apps/cli` — **Outpost**, the `outpost` CLI for uploading from terminals and AI agents — see [`apps/cli/README.md`](./apps/cli/README.md) for usage and local development\n- `packages/shared` — shared types and constants\n- `skills/` — Agent Skills that teach AI coding agents how to use the CLI — see [`skills/README.md`](./skills/README.md)\n- `infra/` — Firestore rules/indexes, GCS lifecycle\n\n## Dev\n\n```powershell\npnpm install\nCopy-Item .env.example apps/app/.env.local\nCopy-Item .env.example apps/usercontent/.env.local\npnpm dev:app\npnpm dev:usercontent\n```\n\nTo work on the CLI alongside the app, see\n[`apps/cli/README.md` → Local development](./apps/cli/README.md#local-development).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsah1l%2Foutpost","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsah1l%2Foutpost","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsah1l%2Foutpost/lists"}