Daemons work 24/7. No prompts required.
Daemons work 24/7. No prompts required.
Daemons are always-on AI processes that work proactively across Slack, Linear, GitHub, and more. Defined with simple .md files, daemons work 24/7 without explicit instruction so your team can focus on novel work.
Creative Rote
┌─────────────────────────────────────────────────────────┐ │ · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ │ │ · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ │ │ · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ Humans ▓ ▓ │ │ · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ │ │ · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ ▓ ▓ ▓ │ │ · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ ▓ ▓ │ │ · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ ▓ │ │ · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ ▓ ▓ │ │ · · · · · · · · · · · ▒ ▒ ▒ Humans + Agents ▒ ▒ ▓ ▓ ▓ │ │ · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ ▓ │ │ · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▓ │ │ · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · Daemons · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · · · · · ▒ ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · · · · · · ▒ ▒ │ │ · · · · · · · · · · · · · · · · · · · · · · · · · · · ▒ │ └─────────────────────────────────────────────────────────┘
Continuous One-off
Stop prompting and start automating.
[\[ Try daemons now\] ](https://dash.charlielabs.ai/signup)
Proactive
Daemons are proactive and always-on
Self-initiated work that doesn't wait for a prompt.
Self-initiated, 24/7
Daemons are proactive, working around the clock across Slack, Linear, and GitHub without explicit instructions or prompts.
Roles, not tasks
Daemons work when you specify roles, goals, and outcomes — not individual tasks or TODOs.
Memory that compounds
Daemons build trust by maintaining org-wide memory that improves with every run.
Team Multiplier
Daemons accelerate the whole team
Drop one in — everyone benefits, every day forward.
Add once, the team wins
Just add a daemon to a repo and the whole team wins every day forward. No rollout, no onboarding required.
Cleans up after agents
Devs plus agents means more productivity — and more maintenance work. Daemons keep everything up to date, patched, and ready so nothing holds you back.
Team-based billing
A shared token budget covers daemon work, so each person's allocation goes toward novel creative work instead of background maintenance.
Coverage
Daemons do the rest
Humans set direction. Agents accelerate the work in front of them. Daemons keep the recurring loops moving after everyone else has moved on.
Daemons organize
Keeping PRs, issues, ownership, priorities, and context aligned so teams can see what is true and what needs attention.
Daemons maintain
Preventing code, dependencies, documentation, runbooks, and operational quality from drifting as the system changes.
Daemons follow through
Turning recurring signals into reviewable PRs, issue updates, reports, escalations, fixes, or no-op decisions until the work reaches a clean next state.
File Format
What's in a Daemon .md file?
Daemons are defined in Markdown files that live in your repo. You define the role once — what it watches, what it does, what it can't do — and the daemon handles it from there.
--- name: pr-helper purpose: Keeps PRs review-ready. watch: - when a pull request is opened - when a pull request is synchronized routines: - suggest PR description improvements - flag missing reviewer context deny: - merge pull requests - push to protected branches schedule: "0 9 *" ---
Policy
Focus on short, actionable feedback.Output format
1. Findings 2. Suggested edits 3. Questions for authorFrontmatter Declarative fields between `---` fences define what the daemon is: its name, purpose, watch conditions, routines, deny rules, and schedule.
Content Markdown below the `---` frontmatter defines how the daemon operates: policy, output format, escalation rules, limits, and more.
Portable Daemon files are an open format. The same file works across any provider that supports the spec.
Autonomy
Predictable and reliable autonomy
Daemons excel at ongoing work. Use agents to build, and use daemons to maintain what you've built.
Work you didn't have to notice
Every action a daemon takes is one a human didn't have to notice, decide on, and initiate.
Specialized and improving
Daemons perform specific roles, get better over time, and always follow your team's conventions.
Predictable behavior earns trust
Encode your preferences and style once, and daemons will keep things tidy. Predictable behavior earns autonomy.
Define a role, not a task
A task has a start, an end, and a definition of done. A role is an ongoing responsibility with judgment. The daemon file is a role description.
Compounding control
Every daemon file edit changes behavior across every future activation for the whole team. Each change is small, but the effects multiply.
Direction once, not every time
Agents require direction every time. Task 500 costs the same human attention as task 1. Daemons require direction once, then less and less over time.
Accumulating context
Daemons build a richer model of the team and codebase over time. A daemon at month three is sharper than at day one, without anyone updating a file.
[\[ How Daemons Work\] ](https://charlielabs.ai/how-it-works)
Daemon Library
Daemons are defined in Markdown files that you can modify, create, and share
Project Manager
Keep your issues up to date
Bug Triage
Watch your bug tracker and prevent reoccurrences
Codebase Maintainer
Keep dependencies up to date and patches in place
Librarian
Keep your documentation accurate so onboarding is not a wild goose chase
--- name: issue-labeler purpose: Ensures every Linear issue has the correct labels from the type and touchpoint label groups. watch: - when a Linear issue is created routines: - add missing labels to a new Linear issue - find issues with missing labels and add them deny: - remove labels from issues - replace or change existing labels on issues - comment on issues - change issue status, priority, assignee, or any field other than labels schedule: "0 2 *" ---
Policy
- Only add labels. Never remove, replace, or overwrite existing labels.
- If an issue already has a label from a group, do not touch that group.
- Apply the single best-fit label from each missing group.
- On issue-created events, process only the triggering issue.
- On the daily sweep, label at most 20 issues per activation.
- Only fill in what is missing. If a human already set priority or assignee, leave it.
- Every claim in the RCA must be supported by evidence.
- If the bug involves a security vulnerability, flag it and stop.
- If the bug spans multiple services and root cause can't be isolated, note it.
- Prefer the smallest safe change. A dependency bump, not a rewrite.
- Every upgrade PR must include passing tests.
- Upgrade dependencies only when 2+ minor versions behind.
- Flag security vulnerabilities within 24 hours of advisory.
- Act by default. When a doc is clearly stale, fix it instead of only flagging it.
- Preserve author voice. Match tone and style of existing docs.
- Push at most 3 commits per activation.
- Maintain at most 1 open PR at a time.
- Soma Capital
Limits
Hybrid activation Wakes on new issues and sweeps daily to catch anything missed.
Additive only Deny rules ensure the daemon can only add labels, never remove or change existing ones.
Rate-limited Limits section caps work per activation so the daemon doesn't overwhelm reviewers.
--- name: bug-triage purpose: Ensures every bug is complete, prioritized, assigned, and root-cause-analyzed. watch: - when a Linear issue is created with the bug label - when the bug label is added to a Linear issue routines: - set priority based on Sentry impact data and issue context - assign the issue to the owner determined by CODEOWNERS - append missing context to the issue body - post a root cause analysis comment with supporting evidence deny: - create or delete Linear issues - add or remove labels on Linear issues - override priority that was set by a human - open pull requests - modify source code or configuration files ---
Policy
Escalation
Watch-only Wakes on bug issues as they arrive. No schedule needed — bugs don't wait.
Cross-system Reads from Sentry, GitHub, and Linear to build a complete root cause analysis.
Human-respectful Deny rules prevent overriding human decisions on priority or assignment.
--- name: codebase-maintainer purpose: Keeps the codebase clean, secure, and current. watch: - when a pull request is merged into the default branch - when a security advisory is published for a dependency routines: - update outdated dependencies with tested upgrade PRs - patch known security vulnerabilities - identify and remove dead code and unused exports - clean up redundant abstractions from heavy agent use deny: - modify application logic or business rules - change public API signatures without escalation - delete test files schedule: "0 /6 " ---
Policy
Thresholds
Hybrid activation Watches for merges and advisories, plus sweeps every 6 hours for drift.
Security-first Security advisories trigger immediate action. Routine upgrades follow thresholds.
Bounded scope Deny rules keep it away from business logic. It maintains infrastructure, not features.
--- name: librarian purpose: Keeps repository documentation current and complete. watch: - when a pull request is merged into the default branch routines: - detect stale docs based on recent code changes and update them - create new docs for undocumented packages, apps, and services - fix broken links and heading hierarchy in docs deny: - changes to files that aren't documentation - changes to compliance or legal documentation - changes to changelogs or release notes - changes to inline code comments or docstrings schedule: "0 9 *" ---
Policy
Limits
Hybrid activation Wakes on merges to catch immediate staleness. Sweeps daily for gaps.
Docs-only scope Deny rules strictly limit edits to documentation files. No code changes.
Preserves voice Policy requires matching existing tone rather than rewriting into a uniform style.
Open Format
Build your own daemons with our flexible specification that anyone can use
Daemons don't complete tasks — they fulfill roles. Create your own now.
[\[ Read the docs\] ](https://ai-daemons.com/)
"The Charlie Daemons are working very, very well, both for commenting and cleaning things up in Linear as well as the event-based actions in GitHub. We're moving so f@#$ing fast with agents that it's really great to have Daemons watching our backs to make sure we can keep up the accelerated pace."
— Jasper Croome, aarden.ai
"Our development flow starts with us tagging Charlie on Slack to create Linear issues which are then delegated to Charlie in parallel, Charlie then debugs using Datadog and read-only prod database access, codes out our feature or bug fix with e2e tests that allow Charlie to properly test out our features before we see them. Charlie Daemons then monitor our CI and fixes any issues before we even know. It’s incredibly satisfying coming into my office to see dozens of PRs with green CI checkmarks on GitHub. Thanks Charlie!"
— Brandon Brotsky, CTO/Founder of TaskVoice.com
Backed by Leading Investors
And angels including Guillermo Rauch
