# Sinatra > Sinatra (sinatra.dev) is an autonomous coding agent that turns Linear tickets, labeled GitHub issues, Slack mentions and tasks from a CLI, MCP client or script into pull requests. Assign a Linear issue to @sinatra, add the Sinatra label to a GitHub issue, mention it in Slack, or start a task from your terminal, Claude Code, Cursor, claude.ai or ChatGPT; it opens a branch, writes the code, runs the tests, and ships a clean PR. It is unrelated to the Ruby web framework of the same name (sinatrarb.com). ## How it works - On Linear: assign the issue to @sinatra, or @-mention it in a comment. - On GitHub: add the Sinatra label to the issue (named after the GitHub App, `sinatraai` on the hosted app; Sinatra provisions it on the repos you enable). The label is the only way to start a run from GitHub; comments steer a run that already exists. - In Slack: once a workspace owner or admin connects Slack, mention @Sinatra in a channel it has been invited to. It works in that thread, posts its progress and answer there, and opens a pull request when the request needs code. A reply in the thread that mentions Sinatra continues the task, and so does an unmentioned reply Sinatra judges is meant for it. Add `repo: owner/name` when the workspace has more than one repository. Every plan includes it. Direct messages are not supported. - From your terminal, Claude Code, Cursor, claude.ai, ChatGPT, or a script: start a task with the `sinatra` CLI (npm package `sinatra.dev`), Sinatra's remote MCP server, or the HTTP task API. Every plan includes them. The CLI signs in with a Sinatra account through the browser, and Claude Code, Cursor, claude.ai, Claude Desktop and ChatGPT sign in to the MCP server the same way, over OAuth; the HTTP API and other MCP clients use a personal access token. These tasks are hosted runs like any other (sandbox, pull request, dashboard); there is no editor plugin, and the agent never runs on your machine. - Sinatra opens a branch, writes the code, and runs your tests. - It opens a pull request for review. Sinatra does not merge or deploy changes. Merging stays with you and your CI; repository scripts and supplied credentials govern access to external services. - Every account, including existing and paid accounts, requires a workspace API key or personal model subscription. Workspace keys are shared with authorized members; personal connections cover only the member who connects them. Provider charges and usage limits apply separately. - A task is a conversation, not a pull request. One task can open several PRs and keeps taking replies after a merge. The dashboard shows each task as In progress, Queued, Needs your input, or Idle. - On a Linear, GitHub or Slack task, a message sent while a run is going reaches the running agent. Sinatra decides whether it applies now, before the run finishes, or as its own next turn. On a task started from the CLI, MCP or API, a message sent mid-run waits and runs as the next turn. ## Pricing - Free: $0, 1 task at a time, plus 1 queued. No daily limit. On Free, each request runs for up to 60 minutes. If it needs longer, Sinatra stops, keeps the changes, and picks up when you reply. No card. - Pro: $20 a month, 3 tasks at a time, plus 10 queued. - Team: $99 a month, 10 tasks at a time, plus 25 queued. - Scale: $249 a month, 25 tasks at a time, plus 100 queued. - Enterprise: Custom running and queued limits, annual contract. Talk to us. We scope security requirements, support, and contract terms with you. - One price for the whole workspace. Invite as many people as you like. A workspace connects at most one GitHub organization or personal account. - Assign as many tickets as you want. Your plan sets how many run at once; the rest are queued and start on their own as soon as one finishes. If the queue is full, Sinatra says so on the ticket instead of starting it. - Bring your own Claude or ChatGPT subscription, or an API key. Sinatra never bills for model usage. That's between you and your provider. Token and cost diagnostics are estimates, not Sinatra invoices, including when a provider subscription covers usage. - Paid plans bill monthly. Startups can get Team at half price for a year. ## Optional - Full reference (pricing, comparison, and every FAQ inline): https://www.sinatra.dev/llms-full.txt ## Links - Site: https://www.sinatra.dev - Pricing: https://www.sinatra.dev/pricing - Startup program (Team at half price for a year, for teams under 100): https://www.sinatra.dev/startups - Alternatives hub (Sinatra compared to every coding agent worth shortlisting, one page each): https://www.sinatra.dev/alternatives - About (who builds Sinatra): https://www.sinatra.dev/about - Security (how your code is handled): https://www.sinatra.dev/security - Support (email us, what to include, reply within 2 business days): https://www.sinatra.dev/support - Use case, Linear tickets to GitHub PRs: https://www.sinatra.dev/use-cases/linear-tickets-to-prs - Use case, AI agent for GitHub issues: https://www.sinatra.dev/use-cases/github-issues-to-prs - Use case, AI coding agent in Slack (also the Slack app's landing page): https://www.sinatra.dev/use-cases/slack-coding-agent - Use case, coding agent MCP server for Claude Code, Cursor, claude.ai and ChatGPT: https://www.sinatra.dev/use-cases/mcp-server - Use case, background coding agent CLI and HTTP API: https://www.sinatra.dev/use-cases/cli-and-api - Documentation: https://docs.sinatra.dev - CLI, MCP and API docs: https://docs.sinatra.dev/docs/cli-and-api - Slack docs: https://docs.sinatra.dev/docs/configuration/slack - Blog: https://www.sinatra.dev/blog - Changelog (what shipped, newest first): https://www.sinatra.dev/changelog - Demo: https://www.sinatra.dev/demo ## Recent changes - 2026-10-20 (fix) Clear recovery guidance when a model declines a request: https://www.sinatra.dev/changelog#2026-10-20-model-policy-refusals - 2026-10-20 (fix) Unavailable task repositories get recovery guidance: https://www.sinatra.dev/changelog#2026-10-20-repository-unavailable-guidance - 2026-10-20 (security) Block echoed repo secrets in sandbox attachments: https://www.sinatra.dev/changelog#2026-10-20-sandbox-attachment-secrets - 2026-10-17 (fix) Tasks stopped by a usage limit wait for your reply: https://www.sinatra.dev/changelog#2026-10-17-usage-limit-waits-for-reply - 2026-10-16 (improvement) An API reference and an OpenAPI spec for the task API: https://www.sinatra.dev/changelog#2026-10-16-api-reference-and-openapi-spec - 2026-10-16 (improvement) Tasks from the CLI, MCP and API meet your plan like every other task: https://www.sinatra.dev/changelog#2026-10-16-api-task-cap-follows-plan - 2026-10-16 (improvement) Billing refusals link to the setting that fixes them: https://www.sinatra.dev/changelog#2026-10-16-billing-refusals-link-to-the-fix - 2026-10-16 (fix) Task commits credit you from the first turn, under Sinatra's name: https://www.sinatra.dev/changelog#2026-10-16-commit-attribution-first-turn - 2026-10-16 (feature) Describe a task in the dashboard: https://www.sinatra.dev/changelog#2026-10-16-describe-a-task - 2026-10-16 (fix) The prompt-injection screen reads a reply in its conversation: https://www.sinatra.dev/changelog#2026-10-16-injection-screen-reads-replies-in-context ## Blog posts - AI coding agents in Slack, compared: plans and billing: https://www.sinatra.dev/blog/coding-agents-in-slack-compared - How to delegate coding tasks from Claude or ChatGPT: https://www.sinatra.dev/blog/delegate-coding-tasks-from-claude-or-chatgpt - GitHub Copilot coding agent pricing: what the 2026 AI credits change actually costs: https://www.sinatra.dev/blog/github-copilot-coding-agent-pricing - A coding agent opened 306 PRs on our repos since April. 289 merged.: https://www.sinatra.dev/blog/coding-agent-pr-merge-rate - Self-hosted AI coding agents (2026): OpenHands, Centaur, Cyrus: https://www.sinatra.dev/blog/self-hosted-ai-coding-agents - AI coding agent cost for a 10-person startup, in real numbers: https://www.sinatra.dev/blog/ai-coding-agents-for-startups-cost - How to use Claude Code with Linear (three ways, 2026): https://www.sinatra.dev/blog/claude-code-linear-integration - Linear coding sessions explained: pricing, setup, and limits: https://www.sinatra.dev/blog/linear-coding-sessions-explained - AI coding agent pricing compared (2026): what 12 agents charge: https://www.sinatra.dev/blog/ai-coding-agent-pricing-compared - OpenAI Codex cloud pricing explained: a rate limit, not a rate: https://www.sinatra.dev/blog/openai-codex-cloud-pricing-explained - Cursor Cloud Agents, formerly Background Agents: what they cost: https://www.sinatra.dev/blog/cursor-cloud-agents-explained - Google Jules review (2026): the free tier is the product: https://www.sinatra.dev/blog/google-jules-review - Codegen alternatives: how to keep turning Linear tickets into PRs: https://www.sinatra.dev/blog/codegen-shutdown-alternatives-linear-tickets - The best coding agents for Linear, compared (2026): https://www.sinatra.dev/blog/best-coding-agents-for-linear - Copilot coding agent vs Jules vs Codex (2026): https://www.sinatra.dev/blog/copilot-coding-agent-vs-jules-vs-codex - OpenHands review (2026): the open-source coding agent: https://www.sinatra.dev/blog/openhands-review - The best model for coding agents depends on the ticket: https://www.sinatra.dev/blog/best-model-for-coding-agents-real-tickets - Devin vs GitHub Copilot coding agent: which fits your team?: https://www.sinatra.dev/blog/devin-vs-github-copilot-coding-agent - Devin review (2026): strengths, struggles, and pricing: https://www.sinatra.dev/blog/devin-review - GitHub issue to pull request automation: every option in 2026: https://www.sinatra.dev/blog/github-issue-to-pull-request-automation - The best background coding agents in 2026, compared: https://www.sinatra.dev/blog/best-background-coding-agents - How we sandbox AI coding agents: https://www.sinatra.dev/blog/how-we-sandbox-coding-agents - Why an AI agent should fix its own failing CI: https://www.sinatra.dev/blog/ai-agent-fixes-failing-ci - How to automatically fix GitHub issues with an AI agent: https://www.sinatra.dev/blog/automatically-fix-github-issues-ai-agent - Turning Linear tickets into GitHub PRs with an autonomous agent: https://www.sinatra.dev/blog/turning-linear-tickets-into-github-prs - Are AI coding agents safe for private repos? 8 questions: https://www.sinatra.dev/blog/ai-coding-agents-security-private-repos - BYOK for AI coding agents: what bring your own key actually costs: https://www.sinatra.dev/blog/byok-coding-agents-cost - How to assign a Linear issue to an AI agent (and get a PR back): https://www.sinatra.dev/blog/assign-linear-issue-to-ai-agent - AI backlog grooming, except the tickets get done: https://www.sinatra.dev/blog/ai-agents-clear-bug-backlog - How to review AI-generated PRs: https://www.sinatra.dev/blog/how-to-review-ai-generated-prs - How to write tickets for AI agents: https://www.sinatra.dev/blog/how-to-write-tickets-for-ai-agents - What is a background coding agent?: https://www.sinatra.dev/blog/what-is-a-background-coding-agent