Give AI agents access to knowledge.
Built into Connic.
Upload documents or connect sources. Connic handles content processing and search so your AI agents can find relevant information with natural-language questions. You don’t need to build separate search infrastructure.
Read the retrieval docsrunbooks.release3 ranked passagesdeployment-rollbackscore 0.91Reactivate a previous successful deployment from the Deployments tab...
[deployment-rollback, p. 14]failed-build-responsescore 0.84A candidate that fails its deploy gate never replaces the active version...
[failed-build-response, p. 7]release-checklistscore 0.71Verify the active deployment after traffic moves, then retain the previous version...
[release-checklist, p. 3]
Make up-to-date content available to AI agents
Documents, images, and existing source systems share one semantic indexing path. Agents query the indexed passages at run time instead of carrying an old copy inside the prompt.
Follow every upload from processing to search
Track every upload through the dashboard and API. See which uploads are queued, being processed, or ready to search. Retries and failures stay visible too.
- 1
Accept
Text, Markdown, data files, PDFs, and common image formats
- 2
Extract
Text parsing, PDF pages, or image vision extraction
- 3
Index
Asynchronous jobs chunk and embed the content
- 4
Query
Return passages after indexing completes
Text and data files
Upload TXT, Markdown, CSV, JSON, JSONL, YAML, and log files.
PDF documents
Extract and chunk PDFs while preserving page numbers in retrieval results.
Images
Run PNG, JPG, JPEG, GIF, and WebP files through vision extraction before embedding.
Define where and how AI agents search
Define in code which content to search and which search settings apply. The AI model submits a question and receives relevant passages with source references in a consistent format.
from connic.tools import retrieval_query
async def search_release_runbooks(question: str) -> list[dict]:
"""Find approved release runbook passages."""
result = await retrieval_query(
query=question,
namespace="runbooks.release",
min_score=0.35,
max_results=3,
)
matches = []
for item in result.get("results", []):
matches.append({
"passage": item["content"],
"citation": {
"entry_id": item["entry_id"],
"namespace": item["namespace"],
"page_number": item.get("page_number"),
},
})
return matchessearch_release_runbooks responsedeployment-rollbackscore 0.91Reactivate a previous successful deployment from the Deployments tab...
Citation: [runbooks.release/deployment-rollback, p. 14]failed-build-responsescore 0.84A candidate that fails its deploy gate never replaces the active version...
Citation: [runbooks.release/failed-build-response, p. 7]release-checklistscore 0.71Verify the active deployment after traffic moves, then retain the previous version...
Citation: [runbooks.release/release-checklist, p. 3]
version: "1.0"
name: release-operator
type: llm
model: connic/gpt-5.6-sol
system_prompt: |
Answer release questions only from search_release_runbooks.
Cite the entry ID and page number returned with each passage.
tools:
- release_knowledge.search_release_runbooks
retrieval:
namespaces:
runbooks.release:
prevent_write: true
prevent_delete: true- Purpose-specific function
The model sees search_release_runbooks(question), not storage primitives.
- Fixed search scope
The wrapper owns runbooks.release, a 0.35 score floor, and a three-result limit.
- Read-only access
Agent YAML restricts retrieval to one namespace and prevents writes and deletes.
- Stable citations
Each passage carries entry ID, namespace, and page number in a fixed response shape.
- Testable behavior
Mock the wrapper and assert both the tool call and citation before deployment.
Connect sources and control what agents search
Let Connic sync content without modifying its sources. Define in code which content each tool can search. Data stays separate for each environment.
- Notion15 minutes → weekly
- Confluence15 minutes → weekly
- Superhuman Docs (Coda)15 minutes → weekly
- Website Crawler12 hours → weekly
Each scheduled run reprocesses changed content. Deletion behavior can remove source content from retrieval or retain its last synced version.
retrieval_queryCall from a purpose-specific read wrapper with fixed search scope.
retrieval_storeUse inside a controlled ingestion tool when an agent is allowed to write.
retrieval_deleteKeep deletion behind a narrow maintenance or operator function.
retrieval_list_namespacesUse for scoped discovery in administrative tooling.
Its content scope, namespace, and refresh schedule remain explicit.
Keep exploring
Storage
Pair semantic context with structured records.
Tools
Wrap retrieval primitives with fixed scope and permissions.
Models
Choose the model that reasons over the result.
Environments
Keep staging and production knowledge separate.
Production RAG tutorial
Build a scoped search tool, citation contract, and regression test.
Retrieval sources
Sync Notion, Confluence, docs, or websites.