crewaiinc/skills

ask-docs

Query the official CrewAI documentation for answers.

소스 보기
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

Ask CrewAI Docs

Answer CrewAI questions from the official documentation, matched to the crewai version the user actually runs.

Verified against crewai 1.15.23 and the docs sites below on 2026-10-01. Live-tested with real LLMs on 2026-10-01.

There are two documentation sites:

SiteCoversIndexMCP server
docs.crewai.comThe open-source framework: agents, crews, tasks, flows, memory, knowledge, LLMs, tools, CLI, testing, telemetry, observability, and the AMP REST API reference (/inputs, /kickoff, /status, /resume)https://docs.crewai.com/llms.txthttps://docs.crewai.com/mcp
docs-platform.crewai.comCrewAI AMP (the hosted platform): deploying, automations, triggers, RBAC, secrets, Studio, platform APIhttps://docs-platform.crewai.com/llms.txthttps://docs-platform.crewai.com/mcp

Old docs.crewai.com/en/enterprise/... links redirect to docs-platform.crewai.com/platform/en/... - to the matching page when it still exists (as HTML, even from a .md URL), otherwise to the platform introduction. Look platform topics up on docs-platform.crewai.com directly; its pages also serve Markdown with a .md suffix.


When to Use This Skill

  • A CrewAI feature, parameter, or behavior that the other skills do not cover
  • Another skill says "re-verify with ask-docs" because the user's crewai version differs from the version that skill was checked against
  • Current API syntax, method signatures, or configuration options
  • An error message that may be covered by a troubleshooting note or caveat in the docs
  • Less common features: telemetry, observability integrations, CLI commands, the tools library, AMP platform features
  • Experimental conversational Flows (handle_turn(), ConversationConfig, RouterConfig, tracing, streaming)

Use a sibling skill first when it covers the topic. They hold curated guidance checked against crewai 1.15.x:

TopicSkill
Project scaffolding, choosing LLM.call() / Agent / Crew / Flowgetting-started
Agent role/goal/backstory, LLMs, memory, knowledgedesign-agent
Task descriptions, expected_output, guardrails, structured outputdesign-task
Current 1.15.x API versus remembered 0.x APIcheck-crewai-api
Flow state, @start / @listen / @router, persistencebuild-flow
Custom tools, crewai_tools, MCP servers for agentsconnect-tools-and-mcp
Testing crews and flows with pytest, crewai testtest-crewai-project
Deploying to CrewAI AMPdeploy-to-amp
Calling a deployed crew over HTTP (/kickoff, /status, webhooks)call-deployed-crew

Use ask-docs for the gaps, and to re-check a sibling's version-sensitive rows.


How to Query the Docs

Use the first path that is available.

Path A: the docs MCP server (if configured)

The docs.crewai.com/mcp server needs no authentication. It exposes:

ToolUse
search_crew_ai(query, version?, language?)Semantic search. Returns titled chunks with a Link per chunk
query_docs_filesystem_crew_ai(command)Read-only shell (rg, head, ls, tree) over a virtual tree of every page and OpenAPI spec
submit_feedback(path, feedback)Reports a docs problem to the docs team. Do not call it unless the user asks

In Claude Code the tools appear as mcp__<server-name>__search_crew_ai (for example mcp__crewai-docs__search_crew_ai). The platform server has the same shape with a _platform suffix: search_crew_ai_platform, query_docs_filesystem_crew_ai_platform.

Rules:

  • Always pass `version` with a leading v, e.g. "version": "v1.15.23". Without it, results mix edge and every hosted release (1.10.0 onward), often old ones first. "1.15.23" without the v returns "No results found".
  • The filesystem is laid out as /<version>/<lang>/<path>.mdx (/v1.15.23/en/concepts/knowledge.mdx, /edge/en/...) plus /openapi/<version>/enterprise-api.en.yaml. rg -l "restore_from_state_id" /v1.15.23/en finds every page that mentions a symbol.
  • Search results can be large (60 KB+). Prefer a focused query, then head -120 <file> on the page you need.
  • A call occasionally fails with "Search failed". Retry once before falling back to Path B.

Path B: llms.txt and Markdown pages (no setup)

  1. Fetch the index:
   WebFetch: https://docs.crewai.com/llms.txt

It is about 220 lines of - [Title](https://docs.crewai.com/v1.15.23/en/<path>.md): description, under ## Docs, followed by ## OpenAPI Specs (the AMP REST API YAML). The index has no category headings: find the page by title, or by path prefix (/en/concepts/, /en/guides/, /en/learn/, /en/tools/, /en/mcp/, /en/observability/, /en/api-reference/).

  1. Fetch the page with the .md suffix, which returns clean Markdown (about 30 KB) instead of the rendered HTML (about 850 KB):
   WebFetch: https://docs.crewai.com/en/<path>.md

An unversioned /en/... URL redirects to the latest release (/v1.15.23/en/... on 2026-10-01).

  1. For AMP platform questions, use https://docs-platform.crewai.com/llms.txt the same way. It is organised by heading (Getting Started, Build, Operate, Manage, Integration Docs, Triggers, How-To Guides, API Reference).

https://docs.crewai.com/llms-full.txt is every page in one file (about 2 MB). Do not load it into context. Download it and search it (curl -s ... | grep -n -A20 "restore_from_state_id") when the index does not point to the right page.

For conversational Flows, go straight to https://docs.crewai.com/en/guides/flows/conversational-flows.md. Treat it as the source of truth for the conversational API (imported from crewai.flow; crewai.experimental.conversational is a deprecated alias of the same module), which may still change.

Path C: GitHub source of the docs

The docs live in the public crewAIInc/crewAI repo under docs/<version>/<lang>/<path>.mdx, e.g. https://raw.githubusercontent.com/crewAIInc/crewAI/main/docs/v1.15.23/en/concepts/knowledge.mdx or .../docs/edge/en/.... The older docs/en/... layout no longer exists (404). Use this only when the docs site is unreachable.


Match the docs to the user's version

  1. Run crewai version (or uv run python -c "import crewai; print(crewai.__version__)" in a uv project).
  2. Read the docs for that release: the URL prefix https://docs.crewai.com/v<X.Y.Z>/en/<path>.md, or version: "v<X.Y.Z>" on the MCP server. Releases from 1.10.0 onward are hosted, plus edge (unreleased main). Only the root llms.txt exists - /v<X.Y.Z>/llms.txt is a 404 - so take the path from the root index and swap the version prefix.
  3. If the user's release is not hosted, read the nearest hosted one and say so. A non-hosted version does not 404: /v1.9.0/en/concepts/knowledge.md redirects to the home page with status 200, so check that the page you got is the page you asked for.

Check docs snippets against the installed package

The docs are the best index of what exists, not proof that a snippet runs. For example, check decorator call forms such as @persist() against the installed version.

Before giving the user code that matters:

  • Check signatures against the installed package: python -c "import inspect, crewai.flow.flow as m; print(inspect.signature(m.Flow.kickoff))".
  • Run the smallest snippet that exercises the claim, if it needs no API key.
  • If the docs and the package disagree, say so, give the version that works, and cite both. The check-crewai-api skill lists known differences between remembered and current APIs.

Workflow Summary

  1. Understand the question - which concept, API, or behavior, and which crewai version?
  2. Pick the site - framework (docs.crewai.com) or AMP platform (docs-platform.crewai.com).
  3. Query - MCP with version set, or llms.txt then the .md page for that version.
  4. Check it - signatures or a small run against the installed package when code is involved.
  5. Answer and cite - give the docs URL (with the version prefix) so the user can read further.

Worked examples (checked 2026-10-01 against crewai 1.15.23)

QuestionWhere the answer isWhat the docs say, checked
"How do I persist a flow?"/en/guides/flows/mastering-flow-state.md, /en/guides/flows/inputs-id-deprecation.mdDecorate the Flow class (or a method) with @persist() from crewai.flow.persistence; state needs an id. kickoff(restore_from_state_id=...) forks from a saved state under a new state.id; kickoff(inputs={"id": ...}) resumes under the same id and is documented as deprecated (1.15.23 emits no warning). Both ran locally
"What does POST /kickoff take?"/en/api-reference/kickoff.mdJSON body with required inputs (string values) and optional meta, taskWebhookUrl, stepWebhookUrl, crewWebhookUrl; returns {"kickoff_id": ...}; bearer token auth. The installed crewai_tools InvokeCrewAIAutomationTool posts the same {"inputs": ...} body. call-deployed-crew covers the full client
"How do I set an embedder for knowledge?"/en/concepts/knowledge.mdPass embedder={"provider": ..., "config": {...}} on the Crew (or on an Agent). The default is OpenAI embeddings even with a non-OpenAI LLM; without OPENAI_API_KEY the knowledge upsert logs an error. A crew with an Anthropic LLM and {"provider": "onnx", "config": {}} answered from its knowledge source

Other good uses:

User questionWhy this skill
"What parameters does Crew() accept?"API reference - check it against the installed signature
"How do I turn off telemetry?"/en/telemetry.md for what is collected; the test-crewai-project skill has the exact switch values, checked against the installed package
"What CLI commands does crewai support?"/en/concepts/cli.md, then crewai --help on the installed version
"What tools are available for web scraping?"Tools library pages under /en/tools/
"How do I set up RBAC on AMP?"docs-platform.crewai.com (/platform/en/features/rbac)
"How do I build a chat app with Flow.handle_turn()?"Experimental conversational Flow API; read the latest guide

Setting Up the Docs MCP Server (optional)

Path B works with no setup. For structured search, add the server to the coding agent.

Claude Code (claude mcp add):

bash
claude mcp add --transport http crewai-docs https://docs.crewai.com/mcp
# --scope project writes .mcp.json in the repo instead; --scope user makes it global
claude mcp list   # shows "crewai-docs: https://docs.crewai.com/mcp (HTTP) - Connected"

The project-scope .mcp.json it writes:

json
{
  "mcpServers": {
    "crewai-docs": {
      "type": "http",
      "url": "https://docs.crewai.com/mcp"
    }
  }
}

Codex CLI - codex mcp add crewai-docs --url https://docs.crewai.com/mcp, which writes this to ~/.codex/config.toml (or $CODEX_HOME/config.toml):

toml
[mcp_servers.crewai-docs]
url = "https://docs.crewai.com/mcp"

Cursor - add to .cursor/mcp.json in the project, or ~/.cursor/mcp.json for all projects (Cursor MCP docs):

json
{
  "mcpServers": {
    "crewai-docs": { "url": "https://docs.crewai.com/mcp" }
  }
}

Other agents: add https://docs.crewai.com/mcp as a remote (streamable HTTP) MCP server. Add https://docs-platform.crewai.com/mcp the same way for AMP platform docs.


Related Skills

  • getting-started — project scaffolding, choosing abstractions, Flow architecture
  • design-agent - agent Role-Goal-Backstory, parameter tuning, tools, memory and knowledge
  • design-task — task descriptions, expected_output, guardrails, structured output, dependencies
  • check-crewai-api - current 1.15.x API versus the 0.x API assistants remember
  • build-flow - Flow state, decorators, routing, persistence
  • connect-tools-and-mcp - custom tools, crewai_tools, MCP servers for agents
  • test-crewai-project - deterministic pytest testing of crews and flows
  • deploy-to-amp - getting a crew or flow onto CrewAI AMP
  • call-deployed-crew - calling a deployed crew over HTTP
같은 저장소의 Skills

더 많은 Skills

모든 Skills
crewaiinc
커뮤니티

build-flow

Building CrewAI Flows on crewai 1.15.x: structured (Pydantic) vs dict state and state.id, @start/@listen/@router wiring, or/and semantics, router labels vs method names, @persist (correct import, where it stores state, restorefromstateid), checkpointing with CheckpointConfig, @humanfeedback and HumanFeedbackResult.feedback, plot(), calling crews and agents from flow methods, kickoff inputs, and the crewai create flow scaffold. Use when writing or debugging a Flow subclass or main.py with from cr

설치 수
2
GitHub Stars
45
업데이트
10월 6일
crewaiinc
커뮤니티

call-deployed-crew

Calling a crew or flow deployed on CrewAI AMP over HTTP: the bearer token and deployment URL, GET /inputs, POST /kickoff with the {\"inputs\": {...}} body, which input keys are required ({placeholder} tokens), polling GET /status/{kickoffid} with a deadline and backoff, terminal states and where the result lives, webhooks, POST /resume, slow first calls, and writing crews that stay correct when they are kicked off repeatedly or concurrently. Use when writing a client, script, backend or frontend

설치 수
2
GitHub Stars
45
업데이트
10월 6일
crewaiinc
커뮤니티

check-crewai-api

Current crewai 1.15.x API versus the 0.x API that coding assistants remember: imports, Agent/Task/Crew parameters and defaults, kickoff variants, CrewOutput fields, LLM model strings and provider extras, structured output (outputpydantic, responsemodel, responseformat), guardrails, unified Memory, knowledge embedders, the crewai create crew wizard vs --classic, reset-memories flags, and removed features. Use when writing, reviewing, or debugging any crewai code, before trusting remembered crewai

설치 수
2
GitHub Stars
45
업데이트
10월 6일
crewaiinc
커뮤니티

connect-tools-and-mcp

Giving crewAI agents tools and MCP servers on crewai 1.15.x: custom BaseTool with argsschema and @tool, which crewaitools names really exist, tool caching, maxusagecount, ToolFailure, Agent(mcps=[...]) string and MCPServerStdio/HTTP/SSE forms, rewritten MCP tool names, MCPServerAdapter, timeouts, and what works on a hosted deployment. Use when writing or debugging a tool or MCP connection, when you see 'cannot import name BaseTool from crewaitools', 'You are missing the mcp package', 'MCPConnect

설치 수
2
GitHub Stars
45
업데이트
10월 6일