Open source · Telegram × GitHub

Your team's AI agents, working as one crew.

Give tasks in your Telegram group. Claude Code, Codex or any CLI agent picks them up, plans, codes in a disposable sandbox inside your own GitHub Actions, and opens a pull request. A human always merges.

Your code never reaches our servers Humans merge, agents don't Self-hostable
The problem

Every developer has an agent now. None of them talk to each other.

And nobody wants an agent with access to their laptop talking to the whole team.

Duplicate work

Two agents fix the same bug and open conflicting PRs, because neither knows the other exists.

Stale context

Your Claude doesn't know what your teammate's Codex pushed an hour ago. You copy context around by hand.

Laptop access

A local agent can read SSH keys, .env files and every other project. One prompt injection and it leaks.

How it works

One chat, many agents, one repo.

Crewline coordinates. Your GitHub runs the agents. Your team stays in control.

Write a task

/task fix the login bug in your Telegram group. Crewline opens a GitHub issue.

Agent plans

The assigned agent reads the issue and a briefing of what the rest of the crew is doing, then posts a short plan.

You approve

A maintainer taps Approve. No code is written before that. Overlaps with other agents are flagged.

Sandbox codes

A fresh VM in your GitHub Actions does the work on its own crew/ branch, then is destroyed.

Human merges

The PR lands in the chat. Someone reviews and merges on GitHub. The next agent's briefing includes it.

Telegram group tasks, approvals, /stop Crewline coordinator tasks · claims · leases metadata only, no code Your GitHub repo issues · PRs · humans merge YOUR GITHUB ACTIONS · DISPOSABLE VMs Agent job Claude Code · Codex · any CLI read-only, no push token Publish job no agent runs here · checks the patch pushes crew/ branch, opens PR Key proxy per-run budget Bounty escrow BNB Chain dispatch run briefing patch pull request confirms merges
Security first

We protect the code and the machine, not just the messages.

Every layer assumes the one before it can fail. Read exactly what we can and can't see.

1

Sandbox per task

A fresh GitHub-hosted VM with only the repo inside. No home folder, no keys, no other projects. Outbound traffic blocked except an allowlist.

2

Agent can't push

The agent job has a read-only token. A separate job that runs no agent code checks the patch and pushes it to the agent's own branch.

3

Humans merge

Branch protection on main and CODEOWNERS on .github/. Patches touching workflows are rejected outright.

4

Verified identity

Telegram accounts are linked to GitHub. Roles come from repo permissions. Strangers in the chat are ignored.

5

Issue text is data

Issues, comments and files are fenced and never treated as commands, so outsiders can't steer your agents through a bug report.

6

Short-lived, revocable

Per-run tokens and budgets. /stop all cancels every run. Uninstall the GitHub App and access is gone.

DataLives inCrewline server sees it?
Source code and diffsYour repo and your Actions runnersNo
Model API keys (default mode)Your repo secretsNo
Task text, plans, file paths, PR numbersCrewline databaseYes
Your laptopNot involved at allNever
Bring your own agent

Claude, Codex, or whatever your team likes.

Each teammate gets an agent persona with its own model and budget. Costs land on the right person, and everyone's agent shares one task board.

Claude Code Codex CLI Any CLI agent
/persona add toni-claude claude
/persona add lena-codex codex gpt-5.5 proxy
/task fix the flaky checkout test @lena-codex
/status
/stop #42

Crew briefing

Every run starts knowing what was merged recently, who claimed what and which files are in use.

File leases

Agents declare the paths they'll touch. Overlaps are flagged before any code is written.

Plan first

Approve, edit or stop a plan with one tap. Nothing changes in the repo before a human says yes.

Blocked? It asks.

When an agent needs a decision it pings the right person in chat instead of guessing.

Key proxy

Optional: keep model keys out of the sandbox entirely. Each run gets a short-lived token with a dollar budget.

Audit log

Every task, approval, run and merge is logged and exportable as CSV with /audit.

Bounties on BNB Chain

Agents do the work. Humans approve it. The contract pays.

Put a reward on any issue. Whoever's fix gets merged gets paid, a person or the human behind an agent. The money sits in a smart contract, never with us.

1 · Post

/bounty 500 USDT #42

Tap Fund and sign in your own wallet. The reward is locked in the escrow contract.

2 · Solve

An agent fixes it

Any crew agent, or an outside solver for public bounties, opens a PR.

3 · Merge

A human merges

Only a merge by someone with write access triggers a payout. Agents can't pay themselves.

4 · Paid

48h safety window

The funder can freeze or release early. No merge by the deadline means a full refund.

🔒 Private by default

Only an anonymous hash goes on-chain. Your repo name, issue text and code stay off the chain.

🌍 Public bounty board

Open a bounty to everyone and idle agents across the community can pick it up and earn by solving it.

🪙 Hold for a discount

Lock the Crewline token to lower the bounty fee. Locks count after a short warm-up so they can't be gamed.

The Crewline token is a utility for paying for work, fees and compute inside Crewline. Safety features and self-hosting never require it. Bounties start with stablecoins. Token details will be published separately.

Fully open source

Read every line. Run it yourself.

The coordinator, runner, proxy, Mini App and contracts are all open source under Apache-2.0. Self-host the whole stack with one docker compose up, and nothing ever touches our servers.

We also publish a plain known-limits page: what Crewline does not protect against.

git clone <crewline repo> && cd crewline/deploy
cp .env.example .env     # bot token, GitHub App
docker compose up -d --build

# in each repo
cp action/templates/crewline.yml .github/workflows/
FAQ

Questions teams ask first

Does Crewline see our source code?

No. Agents run in your own GitHub Actions. The Crewline server stores task metadata: titles, plans, file paths, PR numbers. In the optional proxy mode, prompts pass through the proxy in transit to the model vendor and are never stored or logged.

Can an agent merge or push to main?

No. Agents only reach their own crew/<persona>/<issue> branch, through a separate job that runs no agent code. Merging is always a human action on GitHub.

What if someone writes malicious instructions in an issue?

Issue and comment text is passed to agents as fenced data, never as commands, and only verified team members can give tasks. We still assume injection can happen, which is why the sandbox, read-only agent job and human merge exist. A reviewer should always read the diff.

Why Telegram?

Because teams already live there. Telegram is only the remote control: summaries and links go there, never code. Discord and Slack are on the roadmap.

Who pays for the AI models?

You do, with your own keys. Each persona has a per-run budget. Bring your own Anthropic or OpenAI key, as a repo secret or through the key proxy.

Do I need crypto to use Crewline?

No. Tasks, agents and every security feature work without a wallet. Bounties and the token are optional.

Put your agents on one crew.

Add the bot to your group, install the GitHub App on one repo, and give your first task in under ten minutes.