Custom tools New in 0.9.0
Checking a VAT number, turning a bank export into your bookkeeping format, pulling the week's figures from a system only your firm uses. Describe the tool in your own words. Crew's coding agents write it, its tests and its examples, and Flight Deck runs it for your agents.
Off by default. An admin turns it on in Admin console → Settings → Custom tools. Then Custom tools is under Multi-Agent in the full layout and in the kiosk's Settings menu.
For people an admin approved for Crew. Nothing goes live until its own tests and every example pass.
A Name, a Title and What it should do, in plain words.
Your own model returns a fuller spec, with a reason for each change, and an Already there? warning when agents can do it already.
Keep Checked or Yours and pick a coding agent. The worker writes the tool, its tests and its examples in the tool's own git repository.
When you approve the merge, Flight Deck publishes it in the background. If a test or an example fails, the old version stays live.
The last three versions can be made live again under Versions. Try it on the tool's page runs it by hand, and has Run as for tools that call an agent.
custom_tools A new agent tool
Agents list, describe and run your tools through custom_tools, and can ask Crew to build or improve one, or propose one for you to build.
Every call is one process, JSON in and out, run as the person whose turn it is.
Calls get 60 seconds (300 at most) and 1 GB of memory by default. The tool is shown to agents only while the deck has Custom tools on.
A run gets that person's own secrets, set under Your secrets for it, and their files, and nothing else from the deck.
Every call lands in the agent's tool-call register, next to everything else it did.
After a long turn of repeated, mechanical work, an agent's own model may draft a tool. It waits in Your agents suggest at the top of Mine, and nothing is built until you click Build it.
Some jobs need more than a function. A tool says what it needs in its tool.json, with a reason for each, and the person adding it sees that before they agree.
ask_user Also new
The same dialog lets any agent ask the person its turn is for one question (text, one choice, several, or yes/no) or a short form of up to 10. It shows in every Flight Deck tab they have open, and the bell says ‹agent› asks you something.
The turn waits 10 minutes by default, up to an hour. Either way, the agent says what it assumed.
A turn started by a schedule has nobody to ask. Turns from Telegram, WhatsApp, glasses, devices or public links ask in their reply instead.
The dialog always says never to type a password or key there.
The sandbox Linux 5.13 or later
On Linux 5.13 or later, each run is held in a Landlock sandbox. The admin's card says which kind of host you have.
Its own version and the system folders.
Nothing else on the host.
No TCP unless tool.json says "network": true.
It can't signal anything outside the sandbox.
macOS, Windows and the stock Raspberry Pi 5 kernel have no Landlock. There, tools run as Flight Deck's own user and can reach what it can. Run tools only in the sandbox stops every tool on a host without one. Installing a tool's own packages at publish time runs outside the sandbox, and approving someone for Crew still trusts them with the server. · Who to approve for Crew
Custom tools stay off until an admin turns them on. Only people approved for Crew can make them; anyone can run one offered to them.
git; uv is optional.<FD data dir>/external_tools/.python3 tests/test_flight_deck/test_xtool_sandbox.py, which says whether it has Landlock.Custom tools and ask_user were tested with stand-in models. Details and what's still open are in the Flight Deck guide.
Custom tools docs · Crew writes the tools · The team checklist
Join the waitlist for Cohort 001, our first early-access group, and you'll get an email when you're in. Or run Captain on your own machine today.