Know · Remember · Ship

Billion random sources,
one lens.

Your agents read what the company knows, remember what they work out, and ship real internal tools your team can open — all on your own infrastructure.

Request access See how it works
Self-hosted since Jan 2026/Managed cloud · early access
claude · mcp · lenshub
01 · the problem

Your company's knowledge lives everywhere.

Slack, Jira, GitHub, Notion, Drive, Salesforce. None of it reaches your agents automatically — so they answer from guesswork, and someone re-answers the same question next week.

And when an agent does build something useful, it never ships. A working tool sits on one laptop while it waits on a repo, a server, a login and a security review.

§ 01
Slack
12,400 threads
§ 02
Jira
3,102 tickets
§ 03
Confluence
847 pages
§ 04
GitHub
64 repos
§ 05
Notion
1,920 docs
§ 06
Google Drive
~∞ files
§ 07
Salesforce
playbooks
§ 08
Zendesk
tickets
§ 09
Figma
specs
§ 10
QuickBooks
records
§ 11
HR system
policies
§ 12
…and 40 more
Silos grow. Answers don't. Nothing ships./ 01
02 · how it works

Three things, one connection.
Know. Remember. Ship.

Connect once. Your agents read what the company knows, keep what they work out, and put working tools in front of your team — without the data leaving.

Your sources20 connectors
LensHubOne endpoint, your infrastructure
Your peopleAgents and apps
Stage 01
Know
Every doc, ticket and repo searchable as one thing — so agents stop guessing.
  • 20 connectors, synced continuously
  • Permissions enforced inside the query
Retrieval
Stage 02
Remember
Work is figured out once, not re-answered every week.
  • Every answer traces to its source
  • Newer information wins over older
Memory
Stage 03 · new
Ship
An agent’s tool goes live in one call — no repo, no pipeline, no ticket.
  • Your team opens a link with company login
  • Isolated by default, admin-approved
Apps
One endpoint. 24 tools. Nothing leaves your infrastructure./ 02
03 · know

One place your agents read.
Everything connected to it.

Twenty connectors keep every doc, ticket, thread, repo and spreadsheet in sync. Your agents search all of it through a single endpoint — and never see anything the person asking isn't allowed to see.

01
Code and documents, handled differently
They are different things, so LensHub stops pushing both through one index. Prose and code results still come back as one ranked set — the design document and the implementation in the same answer.
02
Stored once, not once per copy
The same file across many repositories and branches is kept a single time. That is what makes searching a large engineering organisation practical rather than theoretical.
03
Every branch, by default
Teams ship from several branches at once, so all of them are searchable. LensHub also works out which repository you mean before searching, instead of searching everything and ranking afterwards.
04
Found the way developers ask
By symbol, by file path, by exact string, and by description. A pasted error message is a literal lookup, not a conceptual one.
LensHub reports what it has not indexed — so “I couldn’t find it” never gets mistaken for “it doesn’t exist.”
Every system that indexes company content skips some of it: files too large, excluded folders, vendored dependencies, configuration rules. When an agent finds nothing and reports “there is nothing about this,” people believe it. That is how a confident, wrong answer gets made.

LensHub keeps a per-repository record of what was skipped and why, and shows indexing health and freshness to agents before they search.
When the right answer is nothing, it says so./ 03
04 · remember

It keeps up with what's
actually happening.

People create context all day — decisions, threads, tickets, fixes. LensHub keeps what matters and keeps it current, so the answer an agent gives this month reflects the company as it is now.

01
Answers trace back to sources
Every response an agent gives points at the contexts behind it. Nothing is asserted without something to check it against.
02
Confirmations boost, contradictions flag
When an answer holds up, the contexts behind it score higher. When something is contradicted, it gets flagged rather than quietly competing with the truth.
03
Newer information wins
Recent material is favoured over old. A policy written last week outranks the version it replaced, without someone having to go and delete the old one.
04
Freshness is visible up front
Health and freshness are exposed to agents before they search, so a stale corner of the company is a known quantity rather than a surprise in an answer.
The corpus gets better the more your agents use it./ 04
05 · ship

Agents ship software,
not just answers.

Someone asks their agent for an internal tool — a dashboard, a small app, a report. Today that works on their laptop and stops there. With Apps, the agent deploys it and the person gets a link.

An agent builds a tool in an afternoon. LensHub turns it into a real internal application the same afternoon — behind the company login, on the company's own infrastructure.
$ lenshub.apps.deploy "q1-spend"
✓ deployed · isolated · no outbound access
requested: quickbooks read
⧗ awaiting admin approval
✓ approved by ops@ · logged
live at /apps/q1-spend
Allowed · approved
QuickBooks · read
Inbound webhook · signed
Denied · default
LensHub data
Other apps
User session
Public internet
01
One step to deploy
The agent calls a single tool. There is no repository to create, no pipeline to configure, no server to request.
02
Behind the company login
Apps are reached through LensHub’s own sign-in. No separate account, no public URL.
03
Isolated by default
Each app runs in its own sandbox. It cannot read LensHub’s data, other apps, or the person’s session.
04
Locked down until approved
An app starts with no access to anything outside itself. Every connection it needs is requested by the agent and approved by an admin, who sees exactly what is being asked for.
05
Everything is attributable
Each app records which agent deployed it and which person that agent was acting for. Approvals and refused connections are logged.
06
Managed from the UI
Start, stop, logs, status and deletion — plus a network map showing what each app is allowed to reach.
No engineer, no server request, no security ticket. Seven new agent tools./ 05
06 · before / after

Same request.
One of them ships.

“Build us a dashboard of Q3 pipeline by segment.” Run against an agent without LensHub, and one with it.

claude · standalone0 turns · 0 pastes
user
can you build us a dashboard of Q3 pipeline by segment?
assistant
I don't have access to your CRM or warehouse. Export the data and paste it here?
pastepipeline-q3.csv
opportunity_id,segment,amount,stage,close_date OPP-4471,Enterprise,84000,Negotiation,2026-09-28 … 1,904 more rows
assistant
Thanks. What counts as a segment here — the CRM field, or the finance definition? They usually differ.
pastesegments.xlsx + dbt/schema.yml
segment_map: { SMB: "<50 seats", MM: "50–500", ENT: "500+" } # finance uses ARR bands, not seats
assistant
Two conflicting definitions. I’ll use seats. Which stages count as pipeline — all open, or from Qualified on?
pasteSlack export · #revops
"we count Qualified+ only" "except renewals — those sit in a separate board" "ask finance about the FX rates"
assistant
Understood. Building it as a single-file React app with the CSV inlined.
assistantdashboard.jsx · 412 lines
npm install npm run dev → http://localhost:5173
user
i need to send this to the sales leads, not run it on my laptop
assistant
You'd need to host it. Options: push to a repo, add a build pipeline, get a server and a login in front of it — or screenshot the charts for now.
user
and the numbers go stale tomorrow anyway
assistant
Correct — the CSV is a snapshot. You’d re-export and rebuild each time. For now I can send you the file and a screenshot of each chart.
complete · uncited· no citations · 5 files manually pasted
~40 minof pasting exports
nothing livea file on one laptop
claude · mcp · lenshub0 sources · idle
user
can you build us a dashboard of Q3 pipeline by segment?
tool call
lenshub.search("Q3 pipeline segment definition", scope="docs+code+crm")
4 sources
salesforce · opportunitieslive
dbt/segments.sqlscore 0.93
#revops · 4 threadsscore 0.89
finance/fx.mdscore 0.84
assistant
salesforce Live Q3 pipeline — 1,904 open opportunities, no export needed.
assistant
dbt/segments.sql Segment defined by seats; finance ARR bands flagged as the older definition.
assistant
#revops Qualified and later count as pipeline; renewals tracked separately.
assistant
finance/fx.md Current FX rates applied to non-USD amounts.
complete · cited· 4 sources · 0 pastes
tool call
lenshub.apps.deploy("q3-pipeline")
deployingno repo · no pipeline · no ticket
sandbox provisionedisolated · no outbound
salesforce read accessadmin approved
company login attachedSSO
live · refreshes hourly8 sales leads invited
acme.lenshub.app/apps/q3-pipeline
Q3 pipeline by segment
Live · Salesforce · refreshed 4 min ago
$18.4Mopen pipeline
1,904opportunities
Qualified+stage filter
shipped· open in a browser · company login
~30 secask to live URL
8 people inusing it same day
Same model. One of them had the company's data — and somewhere to put the result./ 06
07 · how you use it

One context layer.
Four ways to reach it.

LensHub speaks MCP, so anything that does too can use it — with the same tools and the same permissions, whichever surface someone prefers.

Way 01
CLI agents
claude code · gemini · cursor · codex

Add LensHub as an MCP server with one command. Works with any agent that speaks the Model Context Protocol.

$ claude mcp add --transport http lenshub https://lh.acme.co
✓ connected · 24 tools · 4,812 contexts
> why did renewals miss target?
lenshub.search → 6 sources · cited
Way 02
Desktop assistants
claude desktop · any MCP client

Point a desktop assistant at your LensHub endpoint. Same tools, same permissions, no extra account.

// MCP server
name: "acme context"
url: "https://lh.acme.co/mcp"
scope: "read"
✓ 24 tools available · scoped to you
Way 03
Built-in chat
zero setup

Use the LensHub chat directly — no agent setup required. It runs the full toolset and shows what it is doing while it works.

Why did Q1 renewals miss target?
Three factors: API latency spikes in Feb [github], playbook gaps on expansion [notion], and churn signals not escalated [slack].
api-gateway#441renewal-playbook#cs-churn
Way 04
Autonomous agents
background workers · schedules

Give a background agent the same endpoint. Schedule briefings and digests — and let it deploy the app that presents them.

agent:
name: daily-briefing
schedule: "0 8 * * 1-5"
tools:
- lenshub.search
- lenshub.apps.deploy
✓ live at /apps/briefing
MCP is the supported way for agents to connect./ 07
08 · govern

You can see
what the agents did.

Permissions decide what an agent may reach. The record shows what it actually did — which is the part a security reviewer asks for, and the part that is easiest to prove.

01
Every agent tool call is logged
Which tool, which agent, which person, whether it succeeded, and how long it took.
02
Usage dashboards
Which tools are used, by whom, and how that is changing over time.
03
Sign-in audit trail
Logins, failures and sign-outs, kept as a record rather than a rolling buffer.
04
Exportable audit records
The log can leave the product for external review or retention.
05
Per-person visibility, enforced in-query
Not filtered afterwards. Even discovering that a restricted repository exists respects permissions.
06
Version transparency
The running version is visible in the product, and it warns if parts of a deployment are out of step.
audit · last 6 events
apps.deploy · claude · maria@ · 340ms
apps.grant · admin ops@ · quickbooks:read
apps.grant · refused · egress:*
search · cursor · dev@ · 88ms
search · claude · maria@ · 112ms
search · denied · outside permissions
export → json · csv
20
Connectors
24
Agent tools
4
Roles
22
Distinct permissions
2
Deployment options
Full permissions matrix is public in the docs./ 08
09 · connectors

20 connectors.
One sync.

GitHub
GitLab
Bitbucket
Git (SSH/HTTPS)
Jira
Linear
Asana
Confluence
Notion
Google Drive
Dropbox
Slack
Discord
Salesforce
HubSpot
Pipedrive
Zendesk
Intercom
QuickBooks
Custom / S3
Need another?
Ask us — new connector in ~1 week.
A running sync can be stopped from the interface. Repo syncs manage per branch./ 09
10 · pricing

Self-host today.
Managed when you're ready.

The self-hosted version has been running in production since January 2026 — including on your own GPU servers, and under a sub-path if the main address is taken.

Tier 01
Hobby
Individual / eval
$0free
  • 1k contexts
  • 100 memories
  • 5k queries / mo
Starting Q4 2026
Tier 02
Most popular
Pro
Small team
$199/mo · per workspace
  • 50k contexts
  • 10k memories
  • 100k queries / mo
  • All connectors
  • Apps included
  • 10 human users
Tier 03
Business
Growing eng org
$799/mo · per workspace
  • 500k contexts
  • 100k memories
  • 1M queries / mo
  • Usage dashboards
  • Unlimited users
Tier 04
Enterprise
Real enterprise
Custom~$2k–10k / mo
  • Unlimited everything
  • Audit log export
  • DPA
  • GPU support
  • Dedicated CSM
11 · FAQ

Questions, answered.

How is this different from just using RAG or a vector database?

A vector database stores embeddings — it doesn't know which sources are stale, contradictory, or out of scope for the requesting user, and it certainly can't deploy software. LensHub adds health scoring, access control, deduplication, feedback loops, versioning, and an app deployment path on top of retrieval. You get production-grade context, not just search.

What exactly are Apps?

When an agent builds something usable — a dashboard, a small internal app, a report — it can deploy it through LensHub with a single tool call. Colleagues open it with their normal company login, and it runs on your own infrastructure. Each app is isolated by default with no access to anything outside itself; every connection it needs is requested by the agent and approved by an admin, who sees exactly what is being asked for. Start, stop, logs, status, deletion and a network map are all in the UI.

Does LensHub see our data?

Self-hosted: never. Everything runs in your VPC — your data never leaves, including anything your agents build and deploy. Managed: data is processed in your dedicated tenant. We will never train on your data.

How do you guarantee an agent doesn't leak data a user shouldn't see?

Access is enforced at four layers. (1) Credential-scoped ingestion: a connector can only see what its token can see — a Slack bot invited to specific channels, a Confluence token scoped to certain spaces, a read-only GitHub key. Content the credential can't reach never enters the index at all. (2) Private by default: personal connectors are visible only to their owner. No role can read another user's private content — not even admins. (3) Explicit sharing: share a connector with specific teammates at read, write, or manage level. Grants take effect in seconds — and revoke just as fast. (4) Roles and audit: four org roles across 22 distinct permissions gate every action, and every administrative change lands in an append-only audit log. Visibility is enforced inside each query rather than filtered afterwards — even discovering that a restricted repository exists respects permissions.

What happens when an agent searches for something you never indexed?

It is told so. Every system that indexes company content skips some of it — files too large, excluded folders, vendored dependencies, configuration rules. LensHub keeps a per-repository record of what was skipped and why, and exposes indexing health and freshness to agents before they search. That way “I couldn’t find it” never gets mistaken for “it doesn’t exist.”

Which agents does it work with?

Any agent that supports the Model Context Protocol (MCP) — Claude, Claude Code, Cursor, Windsurf, or your own background workers — connects with a single command and gets all 24 tools, scoped to the person asking.

Where does my data live, and what happens when we leave?

Self-hosted means your data never leaves your VPC. Managed runs in your chosen region (US or EU), encrypted at rest with AES-256 and in transit with TLS 1.3, with separate encryption keys per tenant. On managed, no LensHub employee has standing access — production access requires a JIT approval flow with two-person sign-off, fully audited. You can export everything at any time: every context, version, memory and audit record in a documented format. After cancellation all customer data is purged within 30 days with a deletion certificate. No exit fees, no proprietary formats, no lock-in.

How long does setup take?

The self-hosted version deploys in about 20 minutes. Managed onboarding takes a short call to configure your connectors and access scopes. Most teams have their first agent query working within an hour. Setup, connectors, permissions and self-hosting are all documented at docs.lenshub.ai.

Read the documentation
12 · next

Know. Remember.
Ship.

LensHub has been running in self-hosted setups since January 2026. We're now opening up a public managed service — sign up to be among the first to try it.

Self-host available today/Managed cloud · early access