
Casper
- Company
- Snap
- Approach type
- Agent family
- Work
- Coding, Maintenance, On-call, Data
- Human involvement
- Drafts reviewed
- Invocation
- Interactive, Background, Scheduled, Event-driven
- Interfaces
- Slack, Web, Jira, Api, Scheduled
- Deployment stage
- Scaled
- Evidence strength
- Detailed primary
- Entry reviewed
Purpose
Casper is Snap's fleet of remote coding agents. An engineer describes a task in a Slack DM, a channel mention, or the Agents Portal, and Casper starts a durable session in an isolated sandbox, gathers context from the trigger and from Code Search, plans and implements the smallest safe change, validates it, and opens a pull request that CodePal reviews before a person does. Teams save no-code Casper Agent Templates that fix the instructions, tools, runtime image, triggers, and model for a recurring role, and the same engine reaches beyond code through Snap's MCP Gateway.
How it works
Representative workflow: Plain-language task from Slack, the Agents Portal, or a trigger through an isolated sandbox session to a pull request presented for human review. Research details
Casper starts a durable session, spins up a fresh isolated sandbox, and loads the Casper Agent selected for the target repository and task
Casper reads the triggering Slack thread, the Jira ticket, linked documents, repo-level rule files, repository guidance, team-authored skills, and relevant history, and reaches across Snap through Code Search to find ownership, reuse established patterns, and inspect downstream callers in other repositories
Casper determines which tools it has access to, finds the right ones for the task, plans the smallest safe change, and edits the working tree, asking the human for approval where needed
Casper pushes a branch with the casper/ prefix and opens a pull request wired into existing workflows, following team conventions and templates
Where people stay involved
Each scope pairs its normal attention boundary with supporting evidence. See the supervision definitions for the level mapping and limits.
Reported: Casper may pause to ask a clarifying question or present a plan to approve, engineers can join a running session to update the instructions, and the pull request follows the same review and approval process as any other change.
plain-language task from Slack, the Agents Portal, a trigger, or the API → validated pull request presented for human review
Work-product review · Level 3non-coding Casper work reached through the MCP Gateway, such as Jira status triage, A/B experiment checks, data analysis, and document summaries
Unknown · Level unknown
Catalog interpretation: Level 3 for plain-language task from Slack, the Agents Portal, a trigger, or the API → validated pull request presented for human review; human attention boundary: work-product-review.
Observed in July 2026
Catalog interpretation: Unclassified for non-coding Casper work reached through the MCP Gateway, such as Jira status triage, A/B experiment checks, data analysis, and document summaries; human attention boundary: unknown.
Observed in July 2026
Implementation details
- Model
- Not named. A Casper Agent Template picks the model that balances quality, speed, and cost and attributes usage to a team; Snap names model-family independence as a build requirement.The template dimension and the model-family independence requirement are described; no model or vendor is named.
- Harness
- A remote runner around the same agentic loop a local tool such as Claude Code or Codex runs - gather context, act, verify, repeat - held open as a durable session; Snap names harness-family independence as a build requirement. The workspace lifetime is separated from the compute, so the idle runtime can be torn down between turns.
- Sandbox
- A fresh, isolated, disposable sandbox container per session; Casper skips per-command approvals because the blast radius is a throwaway container, and it has no access to a user's filesystem, SSH keys, or credentials. A Casper Agent Template can supply a custom container image.
- Tool access
- Snap's MCP Gateway is the standardized interface to every MCP and tool available at Snap, so a new MCP reaches every Casper agent without per-agent integration work. Source-control work goes through a narrow tool interface - checkout, Code Search, push, and pull-request operations - exposed by a trusted controller. A template can narrow the tool set for a role.
- Knowledge
- Code Search, the org-wide retrieval layer described in Part 2 of the series and the same context substrate CodePal uses, plus the triggering Slack thread, linked Jira tickets and documents, repo-level rule files, repository guidance, and team-authored skills.
- Context management
- A durable session that reattaches. After a turn the idle runtime can be torn down while the conversation, checkout, and branch remain, and a follow-up reply continues in the same workspace instead of starting cold. Casper can be pulled into an existing Slack thread and reads the prior messages as context, and a session owner can add a collaborator to steer the same session.
- Credentials
- Execution is separated from authority - the process that edits code and runs commands holds no raw source-control credentials, and a trusted controller authorizes each call against the session identity. Interactive sessions run under a per-user identity mirrored from the triggering user; automated Casper Agents run under their own agent-scoped machine identities.
- Interfaces
- slack, web, jira, api, scheduled
Mechanisms
A repeatable session loop that Snap applies to many kinds of work and exercises end to end on a coding task, from an ambiguous request to a reviewable pull request
The process editing code and running commands holds no raw source-control credentials; a separate trusted controller exposes checkout, Code Search, push, and pull-request operations through a narrow tool interface and authorizes each call against the session identity
The authenticated identity follows the request from Slack or the portal into the sandbox and forward through every MCP Gateway call, and each downstream system enforces that user's existing permissions, making the gateway a single auditable choke point
The workspace lifetime is separated from the compute, so the idle runtime can be torn down after a turn while the conversation, checkout, and branch remain and a reply continues the same workspace
A no-code saved configuration fixes the custom instructions, tool selection, runtime container image, where the agent can be summoned and who can run or edit it, and the model and cost attribution for a recurring role
Validation and failure handling
Builds, tests, linters, and configured checks run inside the loop rather than after it, in the repository's real development environment
On a failure Casper reads the output, revises the change, and runs it again rather than handing a reviewer code that does not compile; engineers can optionally join the session and update the instructions to fine-tune the output
CodePal reviews the pull request immediately with findings posted in line, and Casper can address the flagged issues before the pull request is presented for human review
Reported observations
The catalog records what the sources report, with the scope and the denominator of every figure. A qualification below limits the figure it sits under.
Adoption output · Reported measurement · Mergeable pull requests Casper produces each week across Snap's engineering organization
“Snap reports Casper producing thousands of mergeable pull requests each week across its engineering organization (self-reported, July 2026 article, no denominator or method given).”
- Reported by
- Snap
- Scope
- Mergeable pull requests Casper produces each week across Snap's engineering organization
The source does not report the denominator of this figure.
Observed in July 2026
Implementation scale · Reported measurement · Custom Casper agents created by Snap teams since general availability
Snap reports hundreds of custom Casper agents created since general availability in the quarter before the article, covering on-call, project-status summaries, audit evidence checking, and test expansion
- Reported by
- Snap
- Scope
- Custom Casper agents created by Snap teams since general availability
The source does not report the denominator of this figure.
Observed in July 2026
Cost latency · Qualitative · Build time for a custom on-call agent in Casper compared with an earlier from-scratch attempt
Snap reports engineers building a custom on-call agent in Casper in a few hours after spending weeks trying to build one from scratch elsewhere
- Reported by
- Snap
- Scope
- Build time for a custom on-call agent in Casper compared with an earlier from-scratch attempt
The source does not report the denominator of this figure.
Observed in July 2026
Lessons
Snap separates execution from authority in Casper - the process that edits code and runs commands holds no raw source-control credentials, and a trusted controller authorizes each checkout, search, push, and pull-request call against the session identity.
Snap propagates the triggering user's authenticated identity from Slack or the portal into the sandbox and onward through every MCP Gateway call, so a Casper session reaches only what that user can reach and each tool call stays attributable to them.
Reported opinion: Snap states that its target for Casper is mergeable pull requests, so the measure reflects outcomes rather than activity.
Snap reports evaluating build against buy and choosing to build Casper because vendor coding agents did not cover interoperability with its internal services, tight integration with CodePal and Code Search, control over agent identity and access, harness and model independence, and control of a Snap-specific product experience.
Snap uses no-code agent templates so each team encodes its own instructions, tools, runtime image, triggers, and model instead of sharing one general-purpose agent; Snap presents this as how Casper scales across its organization.
Sources and research details
Citations link to the original publisher. Each source also keeps a preserved copy in the repository, so a changed or removed page stays checkable.
Question coverage and scope
- purpose
- Reported
- workflow
- Reported
- human involvement
- Reported: Casper may pause to ask a clarifying question or present a plan to approve, engineers can join a running session to update the instructions, and the pull request follows the same review and approval process as any other change.
- implementation
- Reported
- validation
- Reported
- observations
- Reported
- lessons
- Reported
Research details for every claim on this page
- Summary
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 12, 63, 87-89, 105
- Headline claim
- Statement type
- Metric
- Provenance
- Reported
- Confidence
- Medium
- Confidence reason
- Snap states the weekly volume in its own engineering blog without a denominator, a counting window, or a measurement method.
- Reported by
- Snap
- Scope
- Mergeable pull requests Casper produces each week across Snap's engineering organization
- Denominator
- Not reported
- Method
- Not reported
- Observation date
- 2026-07
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 12
- Sandbox
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 33-34, 46, 113
- Harness
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 24, 30, 83, 99
- Model
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 24, 115
- Interfaces
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 63, 69, 73, 87
- Tool access
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 95, 112, 125
- Knowledge
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 87-89
- Credentials
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 34, 93, 95
- Context management
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 32, 36, 63, 99
- Gather, act, verify, repeat
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 83
- Spin up the sandbox under the session identity
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 46, 87
- Gather context before touching code
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 47, 87-89
- Plan and implement the smallest safe change
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 48, 91
- Validate in the repository development environment
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 49, 91
- Iterate on failing checks
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 50, 91
- Open a casper-prefixed branch and a normal pull request
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 51, 93
- Hand the pull request to CodePal before human review
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 52-53, 93
- Separate execution from authority
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 95
- Carry the triggering identity the whole chain
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 127
- Reattach a durable session
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 99
- Save a role as a Casper Agent Template
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- A linked first-party source states the claim.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 105, 111-115
- Key observation
- Statement type
- Metric
- Provenance
- Reported
- Confidence
- Medium
- Confidence reason
- Snap reports a rounded count of custom agents and names the roles they cover, but dates the period only as "Since GA last quarter" and gives no measurement method.
- Reported by
- Snap
- Scope
- Custom Casper agents created by Snap teams since general availability
- Denominator
- Not reported
- Method
- Not reported
- Observation date
- 2026-07
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 117
- Key observation
- Statement type
- Metric
- Provenance
- Reported
- Confidence
- Low
- Confidence reason
- The article reports the hours-against-weeks comparison as instances it has seen, without a sample size, a date, or a description of the earlier from-scratch attempt.
- Reported by
- Snap
- Scope
- Build time for a custom on-call agent in Casper compared with an earlier from-scratch attempt
- Denominator
- Not reported
- Method
- Not reported
- Observation date
- 2026-07
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 117
- Lesson
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- The architecture section states the split directly, naming the four controller operations and the per-call authorization against the session identity. It describes Snap's design, not a verified security property.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 34, 95
- Lesson
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- High
- Confidence reason
- The MCP Gateway section states that identity travels the whole chain and that each downstream system enforces the triggering user's existing permissions. The enforcement is described, not independently tested.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 63, 127
- Lesson
- Statement type
- Opinion
- Provenance
- Reported
- Confidence
- Medium
- Confidence reason
- Snap states this target for its own program in one sentence; the article does not report how mergeability is counted, and the preference is Snap's rather than general advice.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 55
- Lesson
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- Medium
- Confidence reason
- Snap lists the five requirements vendor solutions did not meet for its codebase. The article names no vendor or evaluation, so only Snap's account of its own decision is supported.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 24
- Lesson
- Statement type
- Fact
- Provenance
- Reported
- Confidence
- Medium
- Confidence reason
- The template dimensions and the reported hundreds of custom agents support the practice. That templates are what makes Casper scale is Snap's framing, and the article reports no comparison against a single general-purpose agent.
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 105, 107, 117
- Operating model assessment
- Statement type
- Inference
- Provenance
- Catalog judgment
- Confidence
- High
- Confidence reason
- The run anatomy ends at a pull request presented for human review, and the article states the pull request follows the same review and approval process as any other change. Approval pauses during the run are described as conditional, so attention normally returns at the work product.
- Observation date
- 2026-07
- SupportsCasper: Snap's fleet of friendly AI teammatesPreserved content.md, lines 44-55, 77, 93
- Operating model assessment
- Statement type
- Inference
- Provenance
- Catalog judgment
- Confidence
- Unverified
- Confidence reason
- The article lists non-coding uses such as Jira triage, A/B experiment checks, data analysis, and document summaries, but does not say who reviews those outputs or when.
- Observation date
- 2026-07
- ContextualizesCasper: Snap's fleet of friendly AI teammatesPreserved content.md, line 125