AI teammates for market intelligence.
Pull new funding, launches, and market signals on portfolio and watchlist companies, and surface what to track next.
From source changes to shared memory.
Connect the systems this teammate can read, define its goal, and keep every result grounded in current, scoped context.
Connect your data
Pick the systems it can read. Lobu turns those updates into live customer memory.
Define the goal
Tell it what to watch for and when to ask before acting.
“Pull new funding, launches, and market signals on portfolio and watchlist companies, and surface what to track next.”
Lobu works autonomously
It scans memory on schedule, spots the account at risk, and keeps the evidence attached.
You review and approve
You can edit the draft, send it, or leave it.
The whole agent, in code.
One project defines it end to end: the agent, its connectors, the memory schema, watchers, and skills. Write it yourself, or let your coding agent generate it. Pick a piece to read the code.
import {
connectorFromFile,
defineAgent,
defineConfig,
defineEntityType,
defineRelationshipType,
defineWatcher,
reactionFromFile,
secret,
} from "@lobu/cli/config";
import type ExaNewsFeedConnector from "./exa-news-feed.connector.ts";
import type founderActivityTrackerReaction from "./founder-activity-tracker.reaction.ts";
const vcTracking = defineAgent({
id: "vc-tracking",
name: "vc-tracking",
description:
"Track companies, founders, and investment opportunities for venture firms",
dir: ".",
providers: [
{
id: "anthropic",
model: "claude/sonnet-4-5",
key: secret("ANTHROPIC_API_KEY"),
},
],
network: {
allowed: [
"github.com",
".github.com",
".githubusercontent.com",
"registry.npmjs.org",
".npmjs.org",
],
},
});
// entity types and relationships defined here…
const founderActivityTracker = defineWatcher({
agent: vcTracking,
slug: "founder-activity-tracker",
name: "Founder Activity Tracker",
schedule: "0 10 * * *",
notification: { priority: "normal" },
tags: ["vc", "founders", "daily"],
minCooldownSeconds: 600,
reaction: reactionFromFile<typeof founderActivityTrackerReaction>(
"./founder-activity-tracker.reaction.ts"
),
prompt:
"You are a venture capital analyst tracking the public activity of startup founders in your portfolio.\n\n## Founders\n{{#each entities}}\n- {{name}} ({{entity_type}}, ID: {{id}})\n{{/each}}\n\n## Recent Founder Activity\n{{#if sources.founder_posts}}\n{{sources.founder_posts}}\n{{/if}}\n\n---\n\nProduce a structured founder activity report:\n1. **Executive Summary**: 2-3 sentence overview of founder activity and signals.\n2. **Per-Founder Analysis**: For each active founder, summarize their messaging themes, engagement level, and signals about company direction.\n3. **Cross-Portfolio Patterns**: Themes multiple founders discuss.\n4. **Notable Signals**: Flag potential announcements, strategic shifts, or concerns.\n\nBe specific and cite actual tweets/posts as evidence.\n",
sources: {
founder_posts:
"SELECT id, title, payload_text, author_name, source_url, occurred_at, score, origin_type, connector_key FROM events WHERE connector_key IN ('x') AND origin_type IN ('tweet', 'reply') ORDER BY occurred_at DESC LIMIT 300\n",
},
reactionsGuidance:
"When a founder signals hiring activity, fundraising, or pivots, flag for the investment team.\nTrack founders going quiet as a potential concern.\nAlert on any public statements about competitors or market conditions.\n",
});
export default defineConfig({
connectors: [
connectorFromFile<typeof ExaNewsFeedConnector>(
"./exa-news-feed.connector.ts"
),
],
org: "market",
orgName: "Market",
orgDescription:
"Track companies, founders, and investment opportunities for venture firms",
agents: [vcTracking],
entities: [
company,
founder,
fundRound,
investor,
jobPosting,
product,
sector,
],
relationships: [
educatedAt,
foundedBy,
headquarteredIn,
inIndustry,
inSector,
investedIn,
mentions,
operatesIn,
previouslyAt,
primaryRelationshipOwner,
roundLedBy,
roundOf,
sourcedBy,
usesTechnology,
worksAt,
],
watchers: [founderActivityTracker, opportunityMatcher],
});Explore agent workflows.
Each example shows the sources, the memory, and the action for one AI teammate. Same loop — connect, watch, act — pointed at a different job.
Tracks account health, rollout progress, and renewal signals across the customer base.
Reviews incoming contracts, summarizes risk, and surfaces missing protections before sign-off.
Reconciles data across systems, explains variance, and prepares recurring reporting runs.
Local, self-hosted, or managed.
The same project runs on your laptop, in your cloud, or fully managed by lobu — your data and controls stay wherever you need them.
Run in your cloud.
Docker, a cloud VM, or Kubernetes when data and controls need to stay with you.
Let lobu run it.
The same project with managed isolation, secrets, and upgrades — nothing to operate.
Latest blog posts
The Agent Loop Is the New SaaS
The business logic SaaS sold you is now an agent loop that watches your data and acts. Here is how to build and own one with Lobu.
Read post →Shopify's Aquifer, in the Open
Shopify treats an agent's corpus as the compounding asset. Lobu keeps the signal—not the chat—and makes that architecture work across companies.
Read post →Filesystem vs Database for Agent Memory
Agents need a workspace to think in and a warehouse to remember in. The filesystem is for ephemeral work. The memory layer is for durable organizational knowledge.
Read post →Give every teammate a colleague.
Paste the setup prompt into Claude Code — lobu.config.ts, role files, and channels land in your repo. Ship it today.