{
  "markdown": "<p align=\"center\">\n  <img src=\"public/logos/lockup-horizontal-light.svg\" alt=\"Just Ship — From ticket to ship. Autonomously.\" height=\"60\" />\n</p>\n\n<p align=\"center\">\n  A portable multi-agent framework for autonomous software development.<br/>\n  Install it into any project, write tickets, and watch them turn into pull requests.<br/>\n  Built on <a href=\"https://docs.anthropic.com/en/docs/claude-code\">Claude Code</a> and the <a href=\"https://github.com/anthropics/claude-agent-sdk\">Claude Agent SDK</a>.\n</p>\n\n---\n\n## How It Works\n\n```\nTicket (Board or CLI)\n    |\n    v\nTriage (Haiku)\n    |-- analyzes ticket quality\n    |-- enriches unclear descriptions\n    |\n    v\nOrchestrator (Opus)\n    |-- reads affected files\n    |-- plans the work\n    |-- delegates to sub-agents\n    |\n    |-- data-engineer (Haiku)  --> migrations, RLS, types\n    |-- backend (Sonnet)       --> API, hooks, business logic      } parallel\n    |-- frontend (Sonnet)      --> UI components, pages            }\n    |\n    v\nBuild check --> QA review --> Commit --> Push --> PR\n    |\n    v\nYou review the PR --> \"passt\" --> squash merge --> done\n```\n\nTwo modes of operation:\n\n- **Interactive** — Drive the workflow with slash commands in Claude Code\n- **Autonomous** — A VPS HTTP server runs the pipeline on demand when the Board triggers `/api/launch`\n\n---\n\n## Installation\n\nTwo ways to install — choose the one that fits your workflow:\n\n### Path A: CLI (`setup.sh`) — Recommended\n\nFull installation with CLI wrapper and VPS pipeline support:\n\n```bash\ncurl -fsSL https://just-ship.io/install | bash\n```\n\nThen open a new terminal and run in your project:\n\n```bash\ncd /path/to/your-project\njust-ship setup\n```\n\nThe setup wizard guides you through project configuration and optionally connects to the [Just Ship Board](https://board.just-ship.io).\n\n**Update:**\n```bash\njust-ship self-update   # pull latest framework\njust-ship update        # apply updates to current project\n```\n\n### Path B: Plugin _(Coming soon)_\n\nPlugin distribution via the Claude Code marketplace is not yet available. For local development and testing, you can load the plugin directly from a checkout:\n\n```bash\nclaude --plugin-dir /path/to/just-ship\n```\n\nThe local directory must contain a `.claude-plugin/plugin.json`. This is useful for contributing to the framework or testing unreleased changes.\n\n### After installation\n\nConfigure your credentials:\n- **Board API Key** — from your [Just Ship Board](https://board.just-ship.io) workspace settings\n- **Workspace ID** — your workspace UUID\n- **Project ID** — your project UUID\n\nSensitive values are stored in your system keychain. Non-sensitive config goes to `settings.json`.\n\n---\n\n## Commands\n\n| Command | What it does | Autonomous |\n|---------|-------------|------------|\n| `/ticket` | Write a structured ticket (bug, feature, improvement, spike). Supports splitting (auto-Epic + children) and manual grouping | No |\n| `/implement` | Implement from chat context or description — no ticket required | Yes |\n| `/develop` | Pick next ticket, implement end-to-end, create PR | Yes |\n| `/ship` | Commit + push + PR + squash merge + board status \"done\". Supports `/ship T-{N}` | Yes |\n| `/spike-review` | Review completed spike, summarize findings, create follow-up tickets. Supports `--auto` | Both |\n| `/just-ship-review` | Checkout branch, install deps, build, start dev server for local testing | No |\n| `/recover` | Recover stuck pipeline ticket — resume from partial work or restart clean. Supports `/recover T-{N}` | Yes |\n| `/just-ship-audit` | Discover `category: audit` skills, dispatch parallel agents, FP-filtered consolidated report. Supports `--diff`, `--skills`, `--no-filter` | No |\n| `/just-ship-status` | Show all branches, PRs, board status, worktrees, and cleanup recommendations | -- |\n| `/init` | Auto-detect stack, create `project.json` (CLAUDE.md handled by `setup.sh`) | Yes |\n| `/setup-just-ship` | Full setup: stack detection + Board connection + Sidekick install | Interactive |\n| `/just-ship-update` | Sync project files after framework update (auto-run by `just-ship update`) | Interactive |\n\n**Conversational triggers:** Saying \"passt\", \"done\", \"fertig\", or \"sieht gut aus\" automatically executes `/ship`.\n\n---\n\n## Agents\n\n| Agent | Model | Role |\n|-------|-------|------|\n| **Orchestrator** | Opus | Plans, delegates, ships -- drives the entire flow |\n| **Triage** | Haiku | Analyzes ticket quality, enriches unclear descriptions before execution |\n| **Triage Enrichment** | Sonnet | Phase 2: enriches tickets with codebase context, affected files, and Shopify-specific checks |\n| **Backend** | Sonnet | API endpoints, shared hooks, business logic |\n| **Frontend** | Sonnet | UI components and pages (design-aware) |\n| **Data Engineer** | Haiku | DB migrations, RLS policies, TypeScript types |\n| **DevOps** | Haiku | Build checks and fixes (only on failure) |\n| **Code Review** | Sonnet | Reviews diff against main for code quality, patterns, edge cases, performance -- fixes issues directly |\n| **QA (Testing Engineer)** | Haiku | Test strategy, test writing, acceptance criteria + security review |\n| **Security** | Haiku | Deep security review for critical changes |\n\nSub-agents run in parallel where possible (e.g., backend + frontend simultaneously), saving 50%+ execution time. Model selection is cost-optimized: Opus only for orchestration, Haiku for routine tasks.\n\n---\n\n## Workflow\n\n```\n/implement - chat context or description -- implements -- creates PR (no ticket needed)\n                                                                  |\n/ticket --- writes ticket to Board API -----------------.         |\n                                                        |         |\n/develop -- picks ticket -- implements -- creates PR    |         |\n                                                   |   |         |\n              \"passt\" or /ship --------------------|   |         |\n                                                   v   v         |\n                                          squash merge <---------'\n                                          delete branch\n                                          status: done (if ticket linked)\n\nTicket lifecycle (Board):\n  ready_to_develop --> in_progress --> in_review --> done\n```\n\n### The /develop Pipeline (10 Steps)\n\nEvery `/develop` run executes a strict 10-step pipeline. No step is optional, no step requires human intervention.\n\n```\n 1  Ticket finden        Pick next ready_to_develop ticket from Board API\n 2  Ticket übernehmen    Display ticket, continue immediately (no confirmation)\n 3  Branch + Status      Status → in_progress, create feature branch in worktree, send pipeline event\n 3½ Triage               Haiku analyzes ticket quality, enriches description if unclear, sets QA tier\n 4  Planning             Orchestrator reads 5-10 affected files, formulates agent instructions\n 5  Implementation       Sub-agents in parallel (data-engineer first if schema changes)\n 6  Build Check          Run build commands -- DevOps agent only on failure\n 7  Review               QA agent checks acceptance criteria + security\n 8  Docs Check           Auto-update CHANGELOG, README, ARCHITECTURE docs (see below)\n 9  Ship (no merge)      Commit → Push → PR → change summary → status \"in_review\" → preview URL (Vercel, Shopify, or Coolify)\n10  Automated QA         Build + tests + optional Playwright screenshots, QA report as PR comment\n```\n\nThe human only reviews the PR and says \"merge\".\n\n### Step 8: Docs Check\n\nDocumentation is not a separate task -- it is an automated step in every development run. The agent analyzes `git diff` to determine which docs are affected:\n\n| Changed files | Updated docs |\n|---|---|\n| Any change (always) | `CHANGELOG.md` -- entry under `[Unreleased]` (Keep-a-Changelog) |\n| `commands/*.md` | `README.md` -- commands table + architecture |\n| `agents/*.md` | `README.md` -- agents table |\n| `skills/*.md` | `README.md` -- skills table |\n| Pipeline, agents, commands | `README.md` -- workflow diagram |\n| Pipeline, agents, config | `docs/ARCHITECTURE.md` -- affected sections |\n| Architecture structures | `CLAUDE.md` -- architecture section |\n| Commands, agents, skills | `templates/CLAUDE.md` -- template for new projects |\n| Worker, server | `docs/ARCHITECTURE.md` -- pipeline server section |\n| Workflow, conventions | `CONTRIBUTING.md` -- contributing guidelines |\n\nDocs changes are part of the same commit as the code. No separate PR, no \"we'll do it later\".\n\n---\n\n## Skills\n\nSkills are specialized instruction sets that guide agents for specific types of work.\n\n### Framework Skills\n\nShipped with the pipeline:\n\n| Skill | Purpose |\n|-------|---------|\n| **ticket-writer** | Writes PM-quality tickets with acceptance criteria |\n| **design** | Design system awareness for consistent UI |\n| **frontend-design** | Frontend component patterns and best practices |\n| **creative-design** | Greenfield design for new pages and features |\n| **ux-planning** | UX planning and user flow design |\n| **backend** | Backend patterns and API design |\n| **data-engineer** | Database migration and RLS patterns |\n| **sparring** | Strategic discussion partner with automatic domain expert triage |\n| **webapp-testing** | Testing strategy (test pyramid, framework selection, mocking) + Playwright visual testing |\n| **reporter** | Single source of truth for pipeline output voice — voice rules + 5 core templates (develop-complete, ship-complete, ticket-created, epic-created, phase-progress) |\n| **plugin-security-gate** | Scans third-party plugins for prompt injection, credential harvesting, and supply chain risks |\n\n### Shopify AI Toolkit\n\nShopify domain knowledge is provided by the official [Shopify AI Toolkit](https://github.com/Shopify/shopify-ai-toolkit) (`@shopify/dev-mcp` MCP server). Configured automatically by `setup.sh` when a Shopify project is detected. Provides 16 domain skills with live docs search, code validation, and auto-updates.\n\n### Superpowers Plugin\n\nProcess skills for TDD, debugging, code review, and planning -- provided by the [superpowers](https://github.com/obra/superpowers-marketplace) plugin. Installed automatically during setup.\n\n| Skill | Purpose |\n|-------|---------|\n| **brainstorming** | Explores requirements before implementation |\n| **writing-plans** | Structured implementation planning |\n| **executing-plans** | Plan execution with review checkpoints |\n| **test-driven-development** | Red-green-refactor workflow |\n| **systematic-debugging** | Root cause analysis before fixing |\n| **requesting-code-review** | Code review workflow (requester side) |\n| **receiving-code-review** | Code review workflow (reviewer side) |\n| **verification-before-completion** | Evidence before assertions |\n| **dispatching-parallel-agents** | Parallel task execution |\n| **using-git-worktrees** | Isolated development branches |\n| **finishing-a-development-branch** | Branch completion workflow |\n| **subagent-driven-development** | Multi-agent task delegation |\n\nAdd your own project-specific skills in `.claude/skills/`. They are never touched by framework updates.\n\n### Progressive Skill Disclosure\n\nSkills use a two-stage loading model to minimize token overhead on the VPS (API plan):\n\n1. **Frontmatter-only** -- initial load reads only `name`, `description`, and `triggers` keywords (~100 tokens/skill)\n2. **Full content** -- loaded on demand when a skill is activated for a specific agent role\n\nAll skills must include valid YAML frontmatter. Validate with: `bash scripts/validate-skill-frontmatter.sh`\n\n---\n\n## Architecture\n\n```\njust-ship/\n├── setup.sh                    # Install + update script\n├── agents/                     # Agent definitions (markdown + YAML frontmatter)\n│   ├── orchestrator.md\n│   ├── triage.md\n│   ├── backend.md\n│   ├── frontend.md\n│   ├── data-engineer.md\n│   ├── devops.md\n│   ├── qa.md\n│   └── security.md\n├── commands/                   # Slash commands\n│   ├── ticket.md\n│   ├── develop.md\n│   ├── ship.md\n│   ├── status.md\n│   ├── setup-just-ship.md\n│   └── just-ship-update.md\n├── skills/                     # Framework skills\n├── pipeline/                   # SDK pipeline runner (TypeScript)\n│   ├── run.ts                  # Single execution + session resume\n│   ├── server.ts               # HTTP server (Board-triggered /api/launch, /api/answer, /api/ship)\n│   ├── run.sh                  # Bash wrapper\n│   └── lib/                    # Config, agent loader, skill loader, event hooks, cost tracking\n├── templates/                  # CLAUDE.md + project.json templates\n├── vps/                        # Docker build files (Dockerfile + entrypoint — infra in just-ship-ops)\n└── .claude/                    # Claude Code config (hooks, scripts, settings)\n```\n\n### After Installation\n\n**Plugin path** (`.claude-plugin/` lives in the framework repo, loaded by Claude Code):\n\n```\nyour-project/\n├── CLAUDE.md                   # Project instructions (edit to match your project)\n├── project.json                # Config: stack, build commands, pipeline IDs\n```\n\nThe plugin provides agents, commands, skills, hooks, and scripts directly from its own directory — no files are copied into your project.\n\n**CLI path** (`setup.sh` copies framework files into your project):\n\n```\nyour-project/\n├── CLAUDE.md                   # Project instructions (edit to match your project)\n├── project.json                # Config: stack, build commands, pipeline IDs\n├── .claude/\n│   ├── agents/                 # 8 agents (from framework, auto-updated)\n│   ├── commands/               # 7 commands (from framework, auto-updated)\n│   ├── skills/                 # 8 framework skills + your custom skills\n│   ├── hooks/                  # Event streaming (lifecycle hooks)\n│   ├── scripts/                # Utility scripts\n│   ├── settings.json           # Permissions + hook config\n│   └── .pipeline-version       # Installed framework version\n└── .pipeline/                  # Pipeline runner (auto-updated)\n    ├── run.ts                  # SDK pipeline (invoked by /develop and the VPS HTTP server)\n    └── lib/                    # Config, agent loader, events\n```\n\nFor a comprehensive technical deep dive, see **[docs/ARCHITECTURE.md](docs/ARCHITECTURE.md)**.\n\n### Setup Drift Check (engine repo)\n\nThe engine repo is self-installing — source files (e.g. `skills/<name>/SKILL.md`) generate installed copies (`.claude/skills/<name>.md`) via `setup.sh --update`. The CI **Setup Drift Check** workflow (`.github/workflows/setup-drift-check.yml`) runs `setup.sh --update` on every PR and fails if any install path differs from the committed state. **Standard fix:** run `bash setup.sh --update`, commit the result, push. **Bypass:** include `[skip-drift-check]` in the head commit message. See [CONTRIBUTING.md](CONTRIBUTING.md#setup-drift-check-ci).\n\n---\n\n## Configuration\n\n### project.json\n\nCentral config read by all agents and commands. Auto-populated by `/setup-just-ship`:\n\n```json\n{\n  \"name\": \"my-project\",\n  \"description\": \"Project description\",\n  \"stack\": {\n    \"language\": \"TypeScript\",\n    \"framework\": \"Next.js 15 (App Router)\",\n    \"backend\": \"Supabase\",\n    \"package_manager\": \"pnpm\",\n    \"platform\": \"\",\n    \"variant\": \"\"\n  },\n  \"build\": {\n    \"web\": \"pnpm run build\",\n    \"test\": \"npx vitest run\",\n    \"dev\": \"pnpm dev\",\n    \"dev_port\": 3000,\n    \"install\": \"pnpm install\",\n    \"verify\": \"\"\n  },\n  \"hosting\": {\n    \"provider\": \"\",\n    \"project_id\": \"\",\n    \"team_id\": \"\",\n    \"coolify_url\": \"\",\n    \"coolify_app_uuid\": \"\"\n  },\n  \"paths\": {\n    \"src\": \"src/\",\n    \"tests\": \"tests/\"\n  },\n  \"pipeline\": {\n    \"workspace_id\": \"your-workspace-uuid\",\n    \"project_id\": \"your-project-uuid\",\n    \"board_url\": \"\",\n    \"skip_agents\": [],\n    \"timeouts\": {}\n  },\n  \"conventions\": {\n    \"commit_format\": \"conventional\",\n    \"language\": \"de\"\n  },\n  \"quality_gates\": {\n    \"enabled\": true,\n    \"format\": true,\n    \"lint\": true,\n    \"ignore_patterns\": []\n  }\n}\n```\n\n> **Note:** Credentials (API keys, tokens) are never stored in `project.json`. They live in `.env.local` in the project directory (gitignored), or — when running as a Claude Code plugin — in the plugin's `userConfig`. Both paths are resolved automatically by `board-api.sh`. There is no global `~/.just-ship/config.json`; configuration is 100 % project-local.\n\n### CLAUDE.md\n\nProject-specific instructions -- architecture, conventions, domain knowledge. Generated from a template during setup, then customized for your project. Your content is never overwritten on update.\n\n---\n\n## Setup & Update\n\n### Prerequisites\n\n- [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code) (`claude`)\n- Git + [GitHub CLI](https://cli.github.com/) (`gh`)\n- Node.js >= 18\n\n### Plugin Installation _(Coming soon)_\n\nMarketplace distribution is not yet available. Use the CLI path below, or load from a local checkout for development:\n\n```bash\nclaude --plugin-dir /path/to/just-ship\n```\n\n### CLI Installation\n\n```bash\ncurl -fsSL https://just-ship.io/install | bash\n```\n\nThen open a new terminal and run in your project:\n\n```bash\ncd /path/to/your-project\njust-ship setup\n```\n\nNon-interactive setup: auto-detects stack, generates config files, installs dependencies.\n\n### CLI Update\n\n```bash\ncd /path/to/your-project\njust-ship update                # git pull + apply updates to current project\njust-ship update --dry-run      # preview changes only\njust-ship self-update           # pull latest framework only (no project update)\n```\n\nUpdates framework files. Your project-specific content is never overwritten:\n\n| Updated | Never overwritten |\n|---------|-------------------|\n| `.claude/agents/*`, `commands/*`, `hooks/*` | `CLAUDE.md` |\n| `.claude/skills/<framework>.md` | `project.json` |\n| `.claude/settings.json`, `.pipeline/*` | `.claude/skills/<custom>.md` |\n\n### Version Tracking\n\n```\nInstalled: abc1234 (2026-02-28)\nAvailable: def5678 (2026-03-02)\n```\n\nTracked in `.claude/.pipeline-version`. If templates changed, `just-ship update` automatically runs `/just-ship-update` via Claude to merge them.\n\n---\n\n## Pipeline Runner\n\nThe pipeline is built on the [Claude Agent SDK](https://github.com/anthropics/claude-agent-sdk). It loads agent definitions from `.claude/agents/*.md`, streams events to the Dev Board, and produces structured JSON output for automation.\n\n### CLI Usage\n\n```bash\n.pipeline/run.sh <TICKET_ID> <TITLE> [DESCRIPTION] [LABELS]\n```\n\n### JSON Output\n\n```json\n{\n  \"status\": \"completed\",\n  \"ticket_id\": \"T-162\",\n  \"branch\": \"feature/T-162-add-dark-mode\",\n  \"project\": \"my-project\"\n}\n```\n\n### VPS Worker\n\nRuns the pipeline 24/7 on a VPS — polls for tickets, claims them, runs the orchestrator, and creates PRs automatically. See [Autonomous VPS Deployment](#autonomous-vps-deployment) for the full setup overview. VPS infrastructure (Docker-Compose, systemd, setup scripts) lives in the [just-ship-ops](https://github.com/yves-s/just-ship-ops) repository.\n\n---\n\n## Dev Board Integration\n\n<p align=\"center\">\n  <img src=\"docs/assets/Just Ship Board.png\" alt=\"Just Ship Board — Kanban board with real-time agent activity\" width=\"100%\" />\n</p>\n\nThe **[Just Ship Board](https://board.just-ship.io)** is the visual companion for the pipeline -- a Kanban board with activity timelines and project setup.\n\n### Connecting a Project\n\n1. Create a workspace and project at [board.just-ship.io](https://board.just-ship.io)\n2. Copy the connect token (`jsp_...`) from the project setup dialog\n3. Run: `just-ship connect \"jsp_...\"` (CLI) or `/connect-board` (plugin)\n4. This writes `workspace_id`, `project_id` and `board_url` to `project.json` (committed, no secrets) and the `JSP_BOARD_API_KEY` to `.env.local` in the project directory (gitignored)\n\nCommands (`/ticket`, `/develop`, `/ship`) auto-detect the Board config and use it for ticket operations and status updates.\n\n### Sidekick\n\nAn AI-powered in-app assistant that lets project admins create, search, and manage tickets directly from any website -- without leaving the page.\n\n**Embed it with one line:**\n\n```html\n<script src=\"https://board.just-ship.io/sidekick.js\" data-project=\"my-project-slug\"></script>\n```\n\nActivate with `Ctrl+Shift+S` or `?sidekick` in the URL. A persistent split-view panel opens on the right side, powered by Claude Sonnet:\n\n- **Create tickets** from context -- the AI captures the current page URL and title automatically\n- **Search existing tickets** -- find duplicates before creating new ones\n- **Conversation history** -- pick up where you left off across sessions\n\nThe Sidekick is for project admins and workspace members only -- it requires Just Ship authentication. Regular visitors never see it.\n\nFor the full technical deep dive (architecture, API, data model), see [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md#sidekick).\n\n### Event Streaming\n\nReal-time agent activity via two modes:\n\n- **SDK Hooks** (Pipeline/VPS) -- `SubagentStart`, `SubagentStop`, `PostToolUse` events via Agent SDK callbacks\n- **Shell Hooks** (Interactive) -- `SessionStart`, `SubagentStart/Stop`, `SessionEnd`, `PreToolUse` (Edit/Write/NotebookEdit main-context block while a ticket is active), `PostToolUse` (Edit/Write quality gates) via `settings.json` hook config\n\nBoth post to `POST /api/events` with `X-Pipeline-Key` authentication.\n\n---\n\n## Autonomous VPS Deployment\n\nRun the pipeline 24/7 on a VPS — no local machine required. An HTTP server waits for Board-initiated triggers, runs the full orchestrator flow, and creates pull requests autonomously. The Engine does nothing unbidden — every autonomous run is the result of an explicit user action on the Board (the Play button).\n\n```\nBoard Play button --> POST /api/launch --> Orchestrator runs agents --> PR created\n                      (on demand)           (plan, implement, review)\n```\n\n### Why a VPS?\n\n- **Always on** — tickets are processed around the clock, not just when your laptop is open\n- **Hands-free** — write tickets from the Board, phone, or anywhere — the VPS picks them up\n- **Low cost** — a $4-8/month Ubuntu VPS handles it; API costs scale with ticket complexity\n\n### Prerequisites\n\n- Any Ubuntu 22.04+ VPS (e.g. Hostinger, Hetzner, DigitalOcean — any provider works)\n- SSH access to the VPS\n- **Anthropic API key** — for Claude Code\n- **GitHub Personal Access Token** — with `repo` and `workflow` scopes\n\n### Setup Overview\n\n| Step | What happens |\n|------|-------------|\n| **1. Provision VPS** | Create an Ubuntu 22.04 VPS with your provider, SSH in as root |\n| **2. Run `/just-ship-vps`** | Claude installs Docker, Node.js, GitHub CLI, creates the `claude-dev` user, and starts the pipeline server as a Docker container |\n| **3. Connect a project** | Claude clones the repo, runs `setup.sh`, and registers the project in the server config |\n| **4. Configure environment** | API keys and project env vars go in `/home/claude-dev/.just-ship/env.{project-slug}` |\n| **5. Done** | Press \"Develop\" on the Board — the VPS picks up the ticket and starts working |\n\nSee the [just-ship-ops](https://github.com/yves-s/just-ship-ops) repository for the complete VPS setup guide and infrastructure files.\n\n### Multi-Project Support\n\nOne VPS handles multiple projects. Each project has its own env file and is registered in the server config. The Docker container runs a single HTTP server that routes tickets to the correct project based on `project_id`.\n\n### Cost\n\n| Component | Cost |\n|-----------|------|\n| VPS hosting | ~$4-8/month (smallest tier is sufficient) |\n| API per simple ticket | ~$1-2 (Orchestrator + 1 agent) |\n| API per complex ticket | ~$5-10 (Orchestrator + 5 agents) |\n\nAt 5 tickets/day, expect ~$15-25/day in API costs. The VPS itself is negligible.\n\n---\n\n## Cost\n\nRough estimates (Anthropic API) -- actual costs vary by ticket complexity:\n\n| Ticket Type | Agents | Estimated Cost |\n|-------------|--------|----------------|\n| Simple bug fix | Orchestrator + 1 agent | ~$1-2 |\n| Feature with DB + UI | Orchestrator + 3 agents | ~$3-5 |\n| Complex feature | Orchestrator + 5 agents | ~$5-10 |\n\n**Model tiering:** Opus for orchestration only. Sonnet for creative work (UI, business logic). Haiku for routine tasks (SQL, builds, reviews).\n\nVPS hosting: ~$4-8/month (Hostinger).\n\n---\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n## Security\n\nSee [SECURITY.md](SECURITY.md) for reporting vulnerabilities.\n\n## License\n\nMIT -- see [LICENSE](LICENSE)\n",
  "bytes": 24362,
  "sha": "e9eb226299004b77e9e64909e5b5f1281884891a1f95f7fb4fac925798316b9e",
  "repo_slug": "yves-s/just-ship",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_yves_s_just_ship_just_ship_782e15d7/readme"
}