Custodian Labs | Build and deploy AI agents in 5 lines of code
Iframe is blocked. Accept cookies to load it.<br>Preferences<br>Accept All
Manage Consent Preferences
Essentials
Always active
Necessary for the site to function. Always On.<br>Provider name
Privacy Policy<br>Name<br>Tracker Name
Description<br>Tracker description
Type<br>Tracker type
Retention:<br>Tracker retention
No trackers detected for this category.
No providers detected for this category.
Analytics
Analytics
Measures usage and improves your experience.<br>Provider name
Privacy Policy<br>Name<br>Tracker Name
Description<br>Tracker description
Type<br>Tracker type
Retention:<br>Tracker retention
No trackers detected for this category.
No providers detected for this category.
Marketing
Marketing
Used for targeted advertising.<br>Provider name
Privacy Policy<br>Name<br>Tracker Name
Description<br>Tracker description
Type<br>Tracker type
Retention:<br>Tracker retention
No trackers detected for this category.
No providers detected for this category.
Personalization
Personalization
Remembers your preferences and provides enhanced features.<br>Provider name
Privacy Policy<br>Name<br>Tracker Name
Description<br>Tracker description
Type<br>Tracker type
Retention:<br>Tracker retention
No trackers detected for this category.
No providers detected for this category.
Reject All<br>Accept All
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
By clicking "Accept" , you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.<br>Preferences<br>Reject<br>Accept
Pre-seed funded · AUT Ventures & New Zealand Government<br>IntroductionFeaturesWhy CustodianMulti-agentGuardian layerPricing
Build and deploy AI agents in 5 lines of code.
Custodian Labs takes you from idea to deployed, production-grade AI agent — with privacy built in at every layer. No infrastructure. No data leakage.
View on GitHub<br>Get API Key
agent.py
from custodian_labs import Custodian
model = Custodian(<br>model="gpt-4o",<br>system_prompt="You are a helpful assistant...",
model.deploy()
Why Custodian
Everything you need. Nothing you don't.
Guardian layer<br>The proprietary Guardian Layer is the guardrail that detects PII and puts you in control of how it's handled before it reaches any model.
RAG out of the box<br>Give your agent long-term memory and document retrieval without configuring embeddings or vector DBs. Add a knowledge base in one line and it just works.
Model-agnostic<br>Switch between OpenAI, Anthropic, Mistral, or local models with one line — no vendor lock-in, no rewrite required. Your agent logic stays exactly as it is; only the model underneath changes.
Get started for free
Zero infrastructure<br>No database to provision, no vector store to connect, no hosting to manage. Custodian abstracts every layer beneath your agent so you focus entirely on logic.
Research-grade foundations<br>Commercialised with AUT Ventures and New Zealand Government funding. Production reliability grounded in deep academic research.
The Custodian Difference
No databse. No hosting. Just deploy.
Normally you'd provision a vector DB, set up a hosting environment, wire up your model provider, write retry logic, handle streaming — all before writing a single line of agent logic. Custodian collapses that entire stack to a function call.
Without Custodian<br>With Custodian
# Step 1: Provision a vector DB + embedding pipeline<br>pinecone.init(api_key=...), index = pinecone.Index("my-index")<br>embedder = SentenceTransformer("all-MiniLM-L6-v2")<br>chunks = [text[i:i+512] for i in range(0, len(text), 448)]<br>index.upsert([(f"doc_{i}", embedder.encode(c)) for i, c in enumerate(chunks)])
# Step 2: Manual PII scrubbing (fragile regex, hope for the best)<br>re.sub(r"[A-Z][a-z]+ [A-Z][a-z]+", "[REDACTED]", prompt)
# Step 3: Tool dispatch + retry logic<br>def call_with_retry(messages, max_retries=3):<br>for attempt in range(max_retries):<br>try: return client.chat.completions.create(...)<br>except: time.sleep(2 ** attempt)
# Step 4: Session memory via Redis<br>redis_client.setex(f"ctx:{session_id}", 3600, json.dumps(messages[-20:]))
# Step 5: Flask server, auth, rate limiting, CORS, logging...<br># Step 6: Write your Dockerfile, k8s config, CI/CD pipeline...<br># Step 7: Finally — your agent runs. Maybe.
from custodian_labs import Custodian
model = Custodian(<br>model="gpt-4o",<br>system_prompt="You are a helpful assistant...",
model.deploy()
Multi-agent capabilities
Assemble your team. Deploy as one.
Build teams of specialised agents that each handle their own domain — then deploy them as a single unified endpoint. Custodian's router automatically directs each query to the right agent.<br>Give each agent its own data sources, tools, system prompt, and topic scope. Scale the team without rewriting the interface.<br>the_engineer
Technology & engineering questions
the_strategist
Intelligence & strategy queries
the_scientist
Science &...