Quickstart

Your team's AI brain — shared knowledge graph, coding agent intelligence, and PM skills in one place.

Individual Setup

Get Evols running for yourself in under 2 minutes. Start building your personal knowledge base and wiring it into your coding agents — your teammates can join later.

1

Create your account

Register at /register. Your account creates an isolated workspace — all your knowledge, skills, and AI config live here.

Note
Check your inbox for a verification email before logging in. If it doesn't arrive within a minute, check your spam folder.
2

Configure your LLM provider

Evols requires your own LLM API key (BYOK). Go to Settings → LLM Settings and connect a provider.

AWS BedrockBest overall — native embeddings + strong models
OpenAIGPT-4o / GPT-5.4 — native embeddings
AnthropicClaude Sonnet 4.6 — no native embeddings, falls back to local
OpenRouter200+ models via one key — good for experimentation

After saving, click Test Connection to confirm the key and model are reachable.

Tip
AWS Bedrock is recommended — Amazon Titan embeddings are included automatically, enabling full semantic search in the knowledge graph.
3

Add knowledge sources

Go to Knowledge and upload your first documents — meeting notes, product briefs, customer research, or any text, PDF, or Markdown file. Evols runs LightRAG entity extraction in the background and builds your knowledge graph automatically.

What gets extracted:

PersonasPain PointsFeature RequestsDecisionsCompetitorsMeetingsProducts
4

Install the Evols CLI and wire your coding agents

The Evols CLI wires a global MCP server and process-level hooks into every coding agent on your machine. Claude Code, Cursor, Zed, Codex, Antigravity, Cline, and GitHub Copilot are detected and configured automatically.

macOS / Linux

# Install the CLI
curl -fsSL https://api.evols.ai/api/v1/install/script | sh

# Log in with your API key (Settings → Security → New Key)
evols login

# Wire up all detected coding agents
evols install

Windows

# Install the CLI (PowerShell — run as Administrator)
irm https://api.evols.ai/api/v1/install/script.ps1 | iex

# Log in with your API key
evols login

# Wire up all detected coding agents
evols install
Note
On Windows, WSL is also supported — run the macOS/Linux install inside a WSL terminal if you prefer a Unix environment.

Then initialise Evols in any project repo:

cd ~/your-project
evols init
Tip
Restart your coding agent after running evols install to pick up the new MCP server and hooks.
5

Open the Workbench and start using skills

Go to Workbench in the app. It's a conversational AI chat pre-loaded with 80+ PM and engineering skills — product strategy, PRD writing, competitive analysis, sprint planning, and more.

Try a few prompts to see your knowledge in action:

"What are the top pain points from our last customer research?"
"Draft a PRD for the async commenting feature."
"Summarise what we know about our remote worker persona."

AI Workbench

The Workbench is a conversational AI interface pre-configured for team collaboration and coordination work. It connects to your uploaded knowledge (via LightRAG), your Work Context, and optionally the web (via Tavily/Serper) to produce responses grounded in your actual product situation.

Knowledge-grounded

Responses use your uploaded documents and extracted entities from the Knowledge Graph

Internet search

Real-time web search via Tavily or Serper for competitive research and market data

80+ PM skills

Pre-built skills for strategy, execution, discovery, and communication

Persistent memory

Conversation history is preserved — pick up where you left off

Skills Library

Skills are selected from the sidebar or via the skills menu in the chat. Each skill loads a focused PM prompt context.

Strategy

Product strategy documentCompetitive analysisOpportunity sizingMarket positioningRoadmap planning

Discovery

Assumption mappingJobs-to-be-done analysisUser story generationProblem statement framingResearch plan

Execution

PRD writerTechnical specSprint planningAcceptance criteriaDefinition of done

Communication

Stakeholder updateExecutive briefingMeeting prepWeekly updateDecision briefRetrospective summary

Analysis

RICE scoringOKR draftingPre-mortemFeedback synthesisWin/loss analysis

Internet Search

When internet search is enabled (configure a Tavily or Serper API key in Settings), the AI can pull real-time information for:

  • Competitor feature research
  • Market sizing and trends
  • Industry benchmarks
  • Recent product announcements

Internet search is triggered automatically when the AI determines external data would improve the response.

Knowledge Integration

The Workbench uses your team's knowledge context automatically. When you ask a question, it retrieves relevant content from your uploaded sources and the Knowledge Graph using hybrid RAG (local + global search modes).

To ensure good grounding: add sources via the Knowledge page, then use the Sync Data button on the Knowledge Graph tab to populate the LightRAG index. The Workbench will then cite from those sources.

Tips

  • Be specific: “Write a PRD for mobile offline sync targeting Enterprise customers in Q3” beats “write a PRD”
  • Use constraints: Include team size, timeline, and tech constraints for more realistic outputs
  • Reference personas: Ask the AI to frame recommendations from the perspective of a specific persona — they're extracted automatically from your knowledge sources
  • Iterate: Skills work best as a starting point — refine the output in follow-up messages

Work Context

Your Personal Work Hub

Work Context is a structured view of your role, current projects, tasks, and team. It surfaces what matters most so the AI can ground its responses in your actual situation.

  • Role and capacity: define your title, team, reporting structure, and weekly bandwidth
  • Project tracking: status, stakeholders, goals, and key milestones
  • Task board with priority tiers: Critical, High Leverage, Stakeholder, Sweep, Backlog
  • AI surfaces Work Context automatically when generating recommendations in Workbench

Knowledge & Knowledge Graph

Document Intelligence

Upload documents, meeting notes, PDFs, or plain text. Evols extracts entities and relationships using LightRAG and builds a queryable knowledge graph.

  • Supported sources: PDFs, plain text, meeting transcripts, CSV, Markdown
  • LightRAG extracts entities: personas, features, pain points, competitors, decisions, and more
  • Confidence scoring per entity based on source count, relationship density, and description richness
  • Semantic search and graph query via the Query panel in the Knowledge Graph tab

Knowledge Graph

Explore extracted entities and their relationships in an interactive graph. Filter by entity type, inspect confidence breakdowns, edit or merge nodes.

  • Entity List and Graph views — filter by type: persona, pain point, feature, competitor, and more
  • Edit entity name, type, and description directly from either view
  • Merge duplicate entities — relationships are transferred automatically
  • Ask the graph natural language questions using hybrid RAG mode
  • Personas appear as persona-type entities — automatically extracted, no manual management needed

Entity Attributes

Each extracted entity is tagged with three signal attributes — sentiment, urgency, and business impact — inferred from the source text.

Sentiment: positive · mostly_positive · neutral · mostly_negative · negativeUrgency: critical · high · medium · low · minimalBusiness impact: transformative · high · medium · low · negligible
Entity typeSentimentUrgencyBusiness impact
PainPoint / FeatureRequestUser/customer sentiment toward the problem or requestHow soon this needs to be addressedConsequence to retention or revenue if left unresolved
DecisionTeam confidence or controversy around the decisionTime pressure that drove the decisionStrategic weight of the outcome
PersonTone used to describe this person in the sourceHow soon they need follow-up or attentionOrganisational influence or seniority
PersonaEmotional state or frustration level of the segmentHow urgently the segment needs a solutionRevenue or growth potential of the segment
Product / FeatureMarket or user perceptionUrgency to ship, fix, or deprecateRevenue or adoption impact
TechnologyTeam attitude toward the technologyUrgency to adopt, replace, or upgradeHow critical it is to current operations
CompetitorSentiment toward this competitor in the sourceHow imminently they threaten a deal or roadmap itemCompetitive threat level to the business
OrganizationRelationship tone (partner, customer, risk)Urgency of any pending action with this orgCommercial or strategic importance
MeetingOverall tone of the discussionHow time-sensitive the outcomes areSignificance of the decisions made

Values are inferred by the LLM from source text and should be treated as directional signals, not precise measurements.

Integrations

Connect Slack, Outlook, Teams, Notion, Salesforce, Zendesk, and GitHub to pull live data into the knowledge graph. Each team member connects their own account — data is synced every 5 minutes and entities are extracted automatically.

Where to Find Integrations

Integrations live inside the Context page — the same place you upload documents, PDFs, and meeting notes.

  1. 1

    Open Context

    Click Context in the left sidebar (the database icon). This opens the unified source management panel.
  2. 2

    Switch to the Integrations tab

    At the top of the panel, click the Integrations tab. You will see Connected sources (active) and Available sources (not yet connected).
  3. 3

    Pick a source and connect

    Click Connect on any available source card. The card expands to show auth instructions specific to that source.
Note
The Integrations tab is separate from the Sources tab. Sources = files you upload manually. Integrations = live connections that pull data automatically.

How to Connect a Source

OAuth sources (Slack, Outlook, Teams, Notion, Salesforce)

  1. 1

    Click Connect on the source card

    A popup window opens taking you to the provider's login page.
  2. 2

    Authorise the Evols application

    Sign in with the account you use for that service. Evols requests read-only access only.
  3. 3

    Window closes automatically

    After approval the popup closes and the source card shows a green Connected status. The first sync starts within 5 minutes.

Token-based sources (Zendesk, GitHub)

  1. 1

    Click Connect on the source card

    The card expands to show a token input field.
  2. 2

    Generate an API token in the provider's settings

    Zendesk: Profile → Security → API Tokens → Add Token. GitHub: Settings → Developer Settings → Personal Access Tokens → Fine-grained token. Scope to the specific repositories you want Evols to read.
  3. 3

    Paste the token and save

    Enter the token and any required config (e.g. Zendesk subdomain, GitHub repo slug), then click Save.
Tip
Each team member connects their own account — this lets Evols resolve who is who across different tools (your Slack @name, GitHub username, and Outlook email are all the same person).

Source Reference

SlackOAuth 2.0 (Bot token)

OAuth Scopes

channels:historychannels:readusers:read

Config Fields

Channel IDs to watch (leave empty = all public channels)

Sync Frequency

Every 5 minutes

Identity Signal

Slack user ID linked to email for cross-source identity resolution

Data Fetched

Public and private channel messages, threads, and reactions you have access to

Note

Requires workspace admin to install the Slack app. Direct messages are never fetched.

Outlook / Office 365Microsoft OAuth (delegated, per-user)

OAuth Scopes

Mail.ReadCalendars.ReadUser.Readoffline_access

Config Fields

None — fetches your own inbox and calendar

Sync Frequency

Every 5 minutes via Microsoft Graph delta API

Identity Signal

Microsoft account UPN linked to Evols user

Data Fetched

Email subjects, senders, bodies (truncated at 4 KB), and calendar event titles

Note

Only your own mailbox and calendar — no tenant-wide access. Uses incremental delta tokens to avoid re-fetching old mail.

Microsoft TeamsMicrosoft OAuth (delegated, per-user)

OAuth Scopes

ChannelMessage.Read.AllChat.ReadUser.Readoffline_access

Config Fields

None — fetches channels and chats you are a member of

Sync Frequency

Every 5 minutes via Microsoft Graph

Identity Signal

Microsoft account UPN linked to Evols user

Data Fetched

Channel messages and replies you have access to; direct chat messages

Note

Requires Microsoft to grant ChannelMessage.Read.All for your tenant — some IT admins restrict this scope.

NotionNotion OAuth (per-user integration)

OAuth Scopes

read_content

Config Fields

None — fetches all pages and databases shared with the Notion integration

Sync Frequency

Every 5 minutes

Identity Signal

Notion workspace ID linked to Evols user

Data Fetched

Page titles, block text, and database rows from pages you share with the integration

Note

You control which pages are shared — open the Notion page menu and click "Connect to Evols" to grant access.

SalesforceSalesforce OAuth 2.0 (per-user)

OAuth Scopes

apirefresh_token

Config Fields

None — fetches Accounts, Contacts, Opportunities, and Notes you have read access to

Sync Frequency

Every 5 minutes

Identity Signal

Salesforce user email linked to Evols user

Data Fetched

Account names, contact names + titles, opportunity stages and amounts, activity notes

Note

Only records visible to your Salesforce profile are fetched — Evols does not elevate permissions.

ZendeskZendesk API token (Bearer)

OAuth Scopes

read

Config Fields

Zendesk subdomain (e.g. acme for acme.zendesk.com)

Sync Frequency

Every 5 minutes

Identity Signal

Zendesk agent email linked to Evols user

Data Fetched

Ticket subjects, descriptions, comments, and tags from tickets assigned to or CC'd to you

Note

Paste your Zendesk API token (not your password) from Zendesk → Profile → API → Token Access.

GitHubGitHub Personal Access Token

OAuth Scopes

repo (read)read:user

Config Fields

Repository name in org/repo format (e.g. acme/backend)

Sync Frequency

Every 5 minutes

Identity Signal

GitHub username linked to Evols user

Data Fetched

Issue titles and bodies, pull request titles, descriptions, and review comments

Note

Use a fine-grained token scoped to specific repos for least-privilege access.

Sync Frequency & Scoping

Evols polls all connected integrations every 5 minutes. Each sync is incremental — only content created or updated since the last successful pull is fetched.

Important
Integration syncs consume tokens from your configured LLM API key at the same rate as manual document uploads — approximately 1–3 LLM calls per Slack message thread or email. For active teams with hundreds of daily messages, consider rate-limiting channel scope in the source config.
SourceConfig keyExample
Slackchannel_idsC04ABCDEF, C04XYZABC
GitHubrepoacme/backend
Zendesksubdomainacme (for acme.zendesk.com)

Data Pipeline — Integration to Graph

1 · Incremental pull

Scheduler fetches new items every 5 minutes. Each item (message thread, email, page, issue) is formatted as a plain-text document.

2 · LightRAG ingestion

The text document is chunked and passed to LightRAG. One LLM call per chunk extracts entities and relationships into the PostgreSQL vector store and the graph.

3 · Nightly deduplication

A batch job merges duplicate entities and resolves conflicting descriptions using temporal precedence — newer sources win.

4 · Confidence scoring

Each entity's confidence score is recalculated nightly based on distinct sources, relationship density, and description completeness.

Identity Resolution

When multiple team members connect the same integration type, Evols correlates the same person across different tools via cross-source identity resolution.

Example: same person, three sources

slack:U04ABCDEF → alice@company.com

github:alicesmith → alice@company.com

outlook:alice@company.com → alice@company.com

↓ nightly dedup resolves to:

Person entity: “Alice Smith” confidence: 0.92 sources: [slack, github, outlook]

Privacy & Data Access

What Evols does NOT access:

  • Slack direct messages (only public and private channels you're a member of)
  • Emails you have not received — only your own inbox is synced, not a shared mailbox
  • Salesforce records outside your profile's visibility
  • GitHub repositories the token is not scoped to
  • Notion pages not explicitly shared with the Evols integration

OAuth tokens are encrypted with AES-256-GCM before storage. Disconnecting an integration immediately wipes the stored tokens. All synced content is scoped to your tenant_id and never visible to other workspaces.

Important
If your organisation has compliance requirements around which tools can connect to third-party software, check with your IT or legal team before connecting work email or CRM data.

Developer Tools

MCP Endpoint

Evols exposes a Streamable-HTTP MCP (Model Context Protocol) server so AI tools can read your team's product knowledge directly.

  • Connect Claude Desktop, Cursor, or any MCP-compatible client
  • MCP endpoint: https://your-instance/mcp/sse
  • Authenticate with an evols_... API key generated in Settings → Security
  • Exposes tools: get_context, get_work_context, query_knowledge_graph, get_team_context

Evols CLI

The Evols CLI wires MCP and hooks into every coding agent on your machine. Claude Code, Cursor, Zed, Codex, Antigravity, Cline, and GitHub Copilot are detected and configured automatically.

  • Install: curl -fsSL https://api.evols.ai/api/v1/install/script | sh
  • Authenticate: evols login — enter your API key from Settings → Security
  • Wire all detected agents: evols install
  • Backfill historical sessions into the team knowledge graph: evols sync
  • The MCP server (evols mcp-server) is spawned automatically by agents — no manual process required

API Keys

Generate API keys with the evols_... prefix for programmatic access to Evols data.

  • Generate and revoke keys from Settings → Security
  • Scoped per tenant — keys only access data within your workspace
  • Use as Bearer tokens for the REST API or MCP endpoint

REST API

Authentication

Register and obtain a JWT token:

curl -X POST http://localhost:8000/api/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{"email":"pm@company.com","password":"...","full_name":"PM"}'

Pass the token as a Bearer header on subsequent requests, or use an API key from Settings → Security.

OpenAPI Docs

Interactive API docs are available at http://localhost:8000/docs when running locally.

Tenancy & Workspaces

Workspace Isolation

Every organisation in Evols is an isolated tenant. All data — knowledge sources, the knowledge graph, LLM configuration, skills, work context, and API keys — is scoped per workspace and never shared across tenants.

  • Create your workspace at /register; each registration provisions a new isolated tenant
  • Invite team members from Settings → Team (TENANT_ADMIN only)
  • All knowledge, skills, and AI configuration are private to your workspace

User Roles

Evols has three roles with distinct permissions.

  • USER — regular team member; can use Workbench, Knowledge, Work Context, and Skills
  • TENANT_ADMIN — org administrator; everything a USER can do, plus: invite and remove users, configure the LLM provider (BYOK), and manage API keys
  • SUPER_ADMIN — platform-level administrator (Evols-internal); no tenant; manages all tenants via the Admin Panel

BYOK — Bring Your Own Keys

Evols does not bundle an LLM API key. Each workspace connects its own LLM provider — keys are stored AES-256-GCM encrypted per tenant and are never shared with other workspaces. Only a TENANT_ADMIN can configure or update the LLM settings (Settings → LLM Settings). After saving, use Test Connection to verify the key and model are reachable before the team starts using the Workbench.

Supported Providers

ProviderRequired fieldsEmbeddingsGet key
OpenAIAPI key, model, embedding modelNativeplatform.openai.com
Azure OpenAIAPI key, endpoint, deployment nameNativeportal.azure.com
AWS BedrockRegion, access key ID + secret (or API key)Nativeaws.amazon.com
AnthropicAPI key, modelFallbackconsole.anthropic.com
Google GeminiAPI key, modelFallbackaistudio.google.com
GroqAPI key, modelFallbackconsole.groq.com
Mistral AIAPI key, modelFallbackconsole.mistral.ai
CohereAPI key, modelFallbackdashboard.cohere.com
Together AIAPI key, modelFallbackapi.together.ai
DeepSeekAPI key, modelFallbackplatform.deepseek.com
xAI (Grok)API key, modelFallbackconsole.x.ai
OpenRouterAPI key, model (free-text)Fallbackopenrouter.ai
OllamaBase URL, model name (no API key)Fallbackollama.ai

⚠ Embedding caveat

Only OpenAI, Azure OpenAI, and AWS Bedrock have native embedding APIs. All other providers fall back to a local sentence-transformers model (384-dimension vectors vs 1536 for OpenAI — incompatible). If you switch between provider types, all existing semantic search will return wrong results until you re-index your knowledge base.

Provider notes

OpenAI

sk-proj-... or sk-...

Recommended default. Model list includes GPT-5.4, GPT-4o and others. Embedding models (text-embedding-3-large recommended) are configured separately and enable full LightRAG support.

Azure OpenAI

32-character hex string

For enterprise customers with Azure agreements or EU data residency requirements. Requires a deployment name that matches what you created in the Azure Portal.

AWS Bedrock

Access key ID starts with AKIA

Embeddings use Amazon Titan automatically — no extra configuration. Request model access in the AWS Console under Bedrock → Model access before use.

Anthropic

sk-ant-...

No embedding support — falls back to local sentence-transformers. Best for long-context tasks; Claude Sonnet 4.6 is the recommended model.

Groq

gsk_...

Fastest inference for Llama and Mixtral models. Tool calling supported on Llama 3.x models only.

Mistral AI

from console.mistral.ai

Tool calling supported on mistral-large and mistral-medium; not on open-mistral-nemo. European-based infrastructure if data residency matters.

Cohere

from dashboard.cohere.com

Tool calling supported on command-r-plus only. No embedding support via the chat provider.

Together AI

from api.together.ai

Wide selection of open-source models. Tool calling supported on Llama 3.x; not on older Mixtral models.

DeepSeek

sk-...

Very competitive quality-to-cost ratio. Two model families: deepseek-v3.2 for general use and deepseek-r1 for complex reasoning tasks.

xAI (Grok)

xai-...

Grok 4 and Grok 3 family. No embedding support.

OpenRouter

sk-or-...

A single API key that routes to 200+ models. The model field is free-text: enter any model ID from openrouter.ai/models in the format openrouter/<provider>/<model-slug>.

Ollama (Local)

No API key — runs on your infrastructure

The Base URL must be reachable from the Evols backend container, not your browser. Pull models with ollama pull llama3.2 before configuring.

Using a model not in the dropdown

For OpenRouter, the model field already accepts any free-text model ID. For all other providers, you can configure any valid model ID via the API — the backend passes it directly to the provider:

curl -X POST /api/v1/llm-settings \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"provider":"groq","api_key":"gsk_...","model":"llama-3.3-70b-specdec"}'

Support

Need help? Reach us at: