Rank
65
LangChain/LangGraph tools for AI agent x402 payments on X1
Traction
No public download signal
Freshness
Updated 4mo ago
Crawler Summary
Local FastAPI + RAG service for API documentation generation and semantic search using Ollama, Qdrant, CrewAI, and LangChain. ai-docs-assistant $1 Local FastAPI service for generating, storing, and semantically searching API documentation. The current implementation lives in backend/ and uses a layered architecture with separate API, indexer, and background generation worker entrypoints. What the service does - Accepts documentation generation requests via POST /generate - Stores generation jobs in Redis and returns a job id immediately - P Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Freshness
Last checked 5/31/2026
Best For
ai-docs-assistant is best for crewai, multi-agent workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack
Local FastAPI + RAG service for API documentation generation and semantic search using Ollama, Qdrant, CrewAI, and LangChain. ai-docs-assistant $1 Local FastAPI service for generating, storing, and semantically searching API documentation. The current implementation lives in backend/ and uses a layered architecture with separate API, indexer, and background generation worker entrypoints. What the service does - Accepts documentation generation requests via POST /generate - Stores generation jobs in Redis and returns a job id immediately - P
Public facts
3
Change events
0
Artifacts
0
Freshness
May 31, 2026
Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
May 31, 2026
Vendor
Mrkazzila
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. Last updated 5/31/2026.
Setup snapshot
git clone https://github.com/mrKazzila/ai-docs-assistant.gitSetup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Mrkazzila
Protocol compatibility
OpenClaw
Handshake status
UNKNOWN
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
python
text
.
├── README.md
├── README.ru.md
└── backend/
├── docker-compose.yml
├── Dockerfile
├── docs/
├── env/
├── just/
├── logs/
├── lora-adapter/
├── pyproject.toml
├── qdrant_storage/
├── redis_data/
├── src/
└── uv.lockbash
cd backend
bash
uv sync
bash
ollama pull mxbai-embed-large
env
OLLAMA_MODEL=ollama/my_api_docs
bash
just run-all
Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB OPENCLEW
Editorial quality
ready
Local FastAPI + RAG service for API documentation generation and semantic search using Ollama, Qdrant, CrewAI, and LangChain. ai-docs-assistant $1 Local FastAPI service for generating, storing, and semantically searching API documentation. The current implementation lives in backend/ and uses a layered architecture with separate API, indexer, and background generation worker entrypoints. What the service does - Accepts documentation generation requests via POST /generate - Stores generation jobs in Redis and returns a job id immediately - P
Local FastAPI service for generating, storing, and semantically searching API documentation. The current implementation lives in backend/ and uses a layered architecture with separate API, indexer, and background generation worker entrypoints.
POST /generateGET /generate/{job_id}backend/docs/POST /search using multi-candidate selection and relevance filteringGET /healthThe backend is split into explicit layers:
presentation exposes the FastAPI REST API and request/response schemasapplication contains DTOs, ports, use cases, and application servicesdomain contains document policies, job entities, and enumsinfrastructure implements storage, vector search, Redis-backed queues and repositories, health probing, and CrewAI-based generationentrypoints contains runtime entrypoints for the API and workersconfig contains settings, modular dependency factories, and logging setupThe service uses these runtime components:
FastAPI for the HTTP APIRedis for generation-job queueing and job state storagegeneration-worker for background processing of queued generation jobsCrewAI to run generator and validator agents inside CrewAIDocumentGeneratorOllama for the LLM and embedding modelQdrant for vector storage and semantic searchbackend/docs/ for the Markdown knowledge baseSearchResultSelector to choose the best candidate from multiple search hitsSearchRelevancePolicy to reject semantically inconsistent search resultsImportant runtime behavior:
python -m ai_docs_assistant.entrypoints.applicationpython -m ai_docs_assistant.entrypoints.workers.indexerpython -m ai_docs_assistant.entrypoints.workers.generationlangchain-ollama, langchain-qdrant)uvjust.
├── README.md
├── README.ru.md
└── backend/
├── docker-compose.yml
├── Dockerfile
├── docs/
├── env/
├── just/
├── logs/
├── lora-adapter/
├── pyproject.toml
├── qdrant_storage/
├── redis_data/
├── src/
└── uv.lock
Key directories:
backend/src/ai_docs_assistant/presentation/ - REST API layerbackend/src/ai_docs_assistant/application/ - use cases, DTOs, interfaces, and search-related application servicesbackend/src/ai_docs_assistant/domain/ - domain policies, entities, and enumsbackend/src/ai_docs_assistant/infrastructure/ - Qdrant, filesystem storage, Redis queue/repository, CrewAI generator, and health checksbackend/src/ai_docs_assistant/entrypoints/ - API, indexer, and generation-worker entrypointsbackend/src/ai_docs_assistant/config/ - settings, modular dependency factories (config.dependencies.api/common/generation/indexer/facade), and loggingbackend/docs/ - seed and generated Markdown documentsbackend/env/.env - environment configuration loaded by the application and Docker servicesbackend/just/ - grouped just command definitionsbackend/logs/ - application log filesbackend/lora-adapter/ - optional Ollama LoRA adapter assets and setup notesbackend/qdrant_storage/ - local Qdrant data directory mounted by Docker Composebackend/redis_data/ - local Redis persistence directory mounted by Docker Compose>=3.13,<3.14uvjustOllama on the host machinecd backend
uv sync
ollama pull mxbai-embed-large
By default, backend/env/.env expects:
OLLAMA_MODEL=ollama/my_api_docs
If that model does not exist locally, use the optional instructions in backend/lora-adapter/README.md.
just run-all
This flow starts:
qdrantredisindexer job that loads backend/docs/ into Qdrantgeneration-worker container for background job processingapi container on http://127.0.0.1:8000If generation-worker is not running, generation jobs remain in pending and no document will be produced.
The indexer runs like a migration: it starts, finishes indexing, and is removed automatically, so just ps shows only the long-lived qdrant, redis, generation-worker, and api services afterward.
If you previously started indexer with docker compose up, run just down-all once to clear the old service container before relying on the one-off workflow.
Useful stack commands:
just run-qdrantjust run-redisjust run-indexerjust run-apijust run-alljust down-alljust psjust stack-restartjust rebuild-indexer-apijust rebuild-allUseful quality commands:
just lintjust format-checkjust typecheckjust qualityFrom backend/:
docker compose up -d qdrant
docker compose up -d redis
docker compose build indexer
docker compose run --rm --no-deps indexer
docker compose build generation-worker
docker compose up -d generation-worker
docker compose build api
docker compose up -d api
The API, Redis, and generation worker are all required for asynchronous generation. In the Docker-based setup, the default backend/env/.env uses:
OLLAMA_HOST=host.docker.internal
REDIS_HOST=redis
This manual flow matches the current just recipes: qdrant and redis stay running in detached mode, indexer runs as a one-off container, and generation-worker plus api start separately afterward.
Application settings are loaded from backend/env/.env.
| Variable | Purpose |
| --- | --- |
| QDRANT_HOST | Qdrant host |
| QDRANT_PORT | Qdrant port |
| QDRANT_COLLECTION_NAME | Qdrant collection name |
| EMBEDDING_MODEL_NAME | Ollama embedding model used for indexing and search |
| VECTOR_SIZE | vector size for the Qdrant collection |
| API_KEY | API key passed into the Ollama-backed CrewAI LLM client |
| OLLAMA_HOST | Ollama host |
| OLLAMA_PORT | Ollama port |
| OLLAMA_MODEL | model name used for documentation generation |
| REDIS_HOST | Redis host |
| REDIS_PORT | Redis port |
| REDIS_DB | Redis database index for generation jobs |
| REDIS_GENERATION_QUEUE_NAME | Redis list name used as the generation queue |
| REDIS_GENERATION_JOB_TTL_SECONDS | TTL for stored generation job state in Redis |
Derived URLs are assembled in settings:
qdrant_url = http://{QDRANT_HOST}:{QDRANT_PORT}ollama_url = http://{OLLAMA_HOST}:{OLLAMA_PORT}python -m ai_docs_assistant.entrypoints.applicationpython -m ai_docs_assistant.entrypoints.workers.indexerpython -m ai_docs_assistant.entrypoints.workers.generationThe indexer also supports:
python -m ai_docs_assistant.entrypoints.workers.indexer --no-recreate
That mode keeps the existing Qdrant collection instead of recreating it before indexing.
POST /generateCreates a new asynchronous generation job.
Request example:
{
"query": "describe the endpoint for getting user tasks"
}
Successful response:
{
"job_id": "123e4567-e89b-12d3-a456-426614174000",
"status": "pending"
}
Behavior:
pending202 Accepted immediatelyGET /generate/{job_id}Returns the current job state and, when available, the generation result.
Response example for a completed job:
{
"job_id": "123e4567-e89b-12d3-a456-426614174000",
"query": "describe the endpoint for getting user tasks",
"status": "completed",
"content": "### GET /api/v1/tasks\n**Описание**: ...",
"file_path": "docs/get_tasks_1.md",
"error_message": null
}
Possible statuses:
pendingprocessingcompletedfailedskippedStatus meaning:
completed - the document was generated, saved, and indexedfailed - generation or validation failedskipped - a sufficiently similar document already existed, so no new file was createdReturns 404 Not Found when the job does not exist.
POST /searchSearches for the most relevant indexed document through a multi-candidate selection flow.
Request example:
{
"query": "endpoint for getting profile"
}
Response when a document is found:
{
"found": true,
"content": "### GET /api/v1/profile\n**Описание**: Возвращает профиль авторизованного пользователя.\n...",
"message": null
}
Response when nothing is found:
{
"found": false,
"content": null,
"message": "Документация не найдена. Используйте /generate для создания новой."
}
Behavior:
search_many(...) with score_threshold=0.0SearchResultSelector to choose the best candidate for the queryprofile, task, or user, the selector prefers a result whose content or source contains the matching path/tokenSearchRelevancePolicy to validate the selected result before returning it0.62profile, users, tasks) and action (get, create, update, delete) from the query match the selected documentfound: false when there are no candidates or when the chosen candidate fails relevance validationOperational notes:
search_many() has replaced the old single-result strategy for user-facing searchsearch() method is still used in other parts of the system, including generation deduplication and health checks/search, “not found” can now mean either an empty candidate set or a candidate rejected by selector/policy validationGET /healthChecks dependency availability and basic RAG readiness.
Response example:
{
"status": "healthy",
"checks": {
"qdrant": true,
"ollama": true,
"docs": true,
"rag_canary": true
}
}
What it checks:
/collections/api/tagsbackend/docs/Эндпоинт для получения профиляbackend/logs/app.log - application informational logsbackend/logs/errors.log - application error logsbackend/docs/ - seed and generated Markdown documentsbackend/qdrant_storage/ - local Qdrant storagebackend/redis_data/ - local Redis persistence dataThe repository already includes initial Markdown documents in backend/docs/, including:
get_profile.mdget_tasks.mdcreate_task.mdupdate_task.mdget_users.mddelete_user.mdThey serve as the initial knowledge base for the indexer and support the health-check canary.
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Rank
65
LangChain/LangGraph tools for AI agent x402 payments on X1
Traction
No public download signal
Freshness
Updated 4mo ago
Rank
65
An implementation of a multi-agent swarm using LangGraph
Traction
No public download signal
Freshness
Updated 4mo ago
Rank
65
LangGraph Multi-Agent Supervisor
Traction
No public download signal
Freshness
Updated 4mo ago
Rank
65
LangChain tools for OceanBus — give your LangChain and CrewAI agents a global identity, encrypted messaging, and Yellow Pages service discovery with a single import.
Traction
No public download signal
Freshness
Updated 4mo ago
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_OPENCLEW",
"generatedAt": "2026-10-08T22:20:08.248Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "crewai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "multi-agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}Facts JSON
[
{
"factKey": "vendor",
"label": "Vendor",
"value": "Mrkazzila",
"category": "vendor",
"href": "https://github.com/mrKazzila/ai-docs-assistant",
"sourceUrl": "https://github.com/mrKazzila/ai-docs-assistant",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-05-31T06:18:24.255Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "protocols",
"label": "Protocol compatibility",
"value": "OpenClaw",
"category": "compatibility",
"href": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-05-31T06:18:24.255Z",
"isPublic": true,
"metadata": {}
},
{
"factKey": "handshake_status",
"label": "Handshake status",
"value": "UNKNOWN",
"category": "security",
"href": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-mrkazzila-ai-docs-assistant/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true,
"metadata": {}
}
]Change Events JSON
[]
Sponsored
Ads related to ai-docs-assistant and adjacent AI workflows.