OpenExecutive Virtual Executive Team

An AI-powered virtual executive team: eight specialist Claude agents delivering a single coherent executive voice across strategy, finance, HR, legal, and more.

Stars
★ 5.6k
Last updated
today
License
Apache-2.0
Primary language
Python

At a glance

How it runs
Self-hosted serviceWeb appMCP server
Works with
Portable with changesClaude APIOpenAI API (Partial support)
Cost
Free software; you pay for model usage
Setup effort
Medium · a few setup steps
You'll need
Python 3.11+Node.js 22+uvAnthropic API keyShell / CLINetwork accessLocal filesystem
Typical use
Startup founders: get strategic advice on market positioning, fundraising, or M&A from CSO/CFO agents.
Not a fit if
  • Teams that need horizontal scaling or multiple API replicas
  • Teams that need fully offline operation with no cloud LLM calls
  • Users unwilling to pay Anthropic API usage costs or manage keys

What does this agent do, and when should you use it?

OpenExecutive, by SenteLabsAI, is an AI system that acts as a company's virtual executive team. It exposes one consistent executive persona backed by eight specialist Claude agents (CSO, CFO, CHRO, GC, COO, CMO, CPO, Board Communications). The backend is Python 3.11+ FastAPI; the frontend is Next.js 15. Knowledge is stored in ChromaDB, combining built-in MBA-level Markdown and uploaded company documents, with a RAG pipeline injecting context per turn. It maintains episodic memory in SQLite across sessions and includes a built-in scheduler for proactive follow-ups. Users interact via Web UI, Slack, Email, Telegram, Google Chat, Discord, and a CLI. Deployment is supported through Docker and Fly.io configurations, with a focus on single-instance operation for the scheduler.

When a user sends a message, the Executive Orchestrator (claude-sonnet-4-6) routes the intent and invokes relevant specialists in parallel. Each specialist retrieves context from ChromaDB (built-in knowledge + company docs) and generates a domain response. The orchestrator synthesizes these into a single executive answer. After each response, a background claude-haiku-4-5 pass extracts decisions and initiatives into SQLite for episodic memory. The scheduler uses UPDATE...RETURNING to claim due actions, preventing double-firing. Users can upload documents via CLI (openexecutive upload) or REST API (POST /documents).

  1. Startup founders: get strategic advice on market positioning, fundraising, or M&A from CSO/CFO agents.
  2. HR leads: use CHRO agent to design hiring plans, compensation structures, or performance frameworks.
  3. Operations managers: leverage COO agent for process design, vendor management, or scaling operations.
  4. Marketing/product teams: get GTM strategy or roadmap inputs from CMO/CPO agents.
  5. Companies needing continuity: episodic memory recalls past recommendations in subsequent sessions.

How do you install or deploy this agent?

Clone the repo, copy .env.example to .env, set ANTHROPIC_API_KEY (or enable local models/OpenRouter). Run make dev (first run downloads ~90MB model). Alternatively, cd packages/core && uv sync && source .venv/bin/activate && uvicorn openexecutive.api.main:app --port 8000, and in another terminal cd packages/ui && npm install && npm run dev.

How do you use this agent?

Open http://localhost:3000 and complete the onboarding wizard to set up your company profile. Then chat via the web UI, or integrate with Slack, email, Telegram, Google Chat, or Discord. Upload documents via CLI (openexecutive upload strategy.md) or API (curl -X POST http://localhost:8000/documents -F '[email protected]'). Use the scheduler to set proactive actions.

What are this agent's strengths and limitations?

Pros
  • Unified executive voice masks internal multi-agent complexity, providing a coherent user experience
  • Built-in MBA knowledge plus company-specific RAG gives context-aware advice
  • Episodic memory across sessions enables continuity and follow-up
  • Multi-channel integration (Web, Slack, Email, Telegram, Google Chat, Discord, CLI) maximizes accessibility
  • Local model support (Ollama, etc.) or OpenRouter reduces vendor lock-in
Limitations
  • Complex setup requires Python 3.11+, Node 22+, uv, and multiple configuration steps
  • Scheduler restricts to single-instance API; horizontal scaling requires gating it off
  • Default dependence on Anthropic API incurs usage costs and requires API key management
  • First build is heavy due to ML dependencies and model download; initial startup is slow
  • Cloud deployment sends prompts to Anthropic; privacy relies on Anthropic's data policy

How does this agent compare with similar options?

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
OpenExecutive Virtual Executive Team This agent 43 · Major gaps Self-hosted serviceFree + model costs ★ 5.6k today Python Claude API
Tale — Shared Workspace for Teams and AI Agents 50 · Major gaps — ★ 35 today TypeScript Codex · Claude Code · OpenAI API · Claude API
AgentChat 29 · Major gaps Self-hosted serviceFree + model costs ★ 921 1d ago Python —
VectorVein 49 · Major gaps Desktop appFree + model costs ★ 940 14d ago Vue OpenAI API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
43/ 100 5-point scale 2.2 / 5
This review covers the source as of Aug 31, 2026. The project has shipped 19 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 7/29
Reliability 6/14
Adaptability 12/18
Convention 9/18
Effectiveness 7/13
Verifiability 2/8
Why each dimension lost points
Trust7 / 29 · 1.2/5

Evidence shows: README describes access control (Google sign-in + shared secret), single-instance scheduler, and data flow (RAG injected into user turn, not cached system prompt). However, user confirmation mechanism (e.g., before outbound actions) is absent, least privilege not explicit (e.g., API key scope), data flow transparency limited (no detail on what data is sent to Anthropic). Dependency security not mentioned (no dependency audit or vulnerability scanning). External effects described (outbound messages, MCP tools) but no user confirmation or revocation mechanism. Rollback mentioned in deployment docs but no concrete steps. Source attribution: Apache 2.0 license and contributor statement present, but publisher unverified. Deductions: user confirmation missing, least privilege not explicit, dependency security not mentioned, external effects lack user control.

Reliability6 / 14 · 2.1/5

Evidence shows: README and CI config are consistent, architecture described clearly, tests exist (unit tests, CI runs). However, dependency availability not verified (e.g., heavy deps like ChromaDB, PyTorch availability not stated), failure messages not provided (e.g., API error handling, user-visible error prompts). Deductions: dependency availability not verified, failure messages missing.

Adaptability12 / 18 · 3.3/5

Evidence shows: README describes multiple usage scenarios (Web, Slack, Email, Telegram, Google Chat, Discord, CLI), capability boundaries stated (e.g., single-instance limit, local model limitations), trigger precision described (e.g., scheduler, routing), environment fit documented (Fly.io, local, Docker). However, capability boundaries not fully explicit (e.g., specific limits of each agent), trigger precision lacks concrete examples. Deductions: capability boundaries and trigger precision not specific enough.

Convention9 / 18 · 2.5/5

Evidence shows: README provides clear architecture, install steps, configuration, examples (CLI, API), known limitations (single-instance, local model limits), license (Apache 2.0). However, naming stability not verified (no version history), versioning/changelog missing, maintenance responsibility not explicit (no maintainer info). Deductions: versioning/changelog missing, maintenance responsibility not explicit.

Effectiveness7 / 13 · 2.7/5

Evidence shows: README describes output (consistent executive voice, actionable advice), marginal value (8 specialist agents, memory, scheduler), cost-benefit (prompt caching, local model options). However, cost-benefit not quantified (e.g., API cost estimates), output usability lacks concrete examples. Deductions: cost-benefit not quantified, output examples missing.

Verifiability2 / 8 · 1.3/5

Evidence shows: README claims (e.g., Harvard MBA-level knowledge, 85% cache hit rate) lack supporting evidence, cross-source corroboration missing (no independent tests or third-party verification), fact vs. inference not clearly separated (e.g., 'Harvard MBA-level' is inference). Deductions: claims lack evidence, cross-source corroboration missing, fact vs. inference not separated.

Risks and how to mitigate them
  • Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
  • Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
  • Publisher identity unverified; treat source with caution.
  • Lack of user confirmation mechanism; outbound actions (e.g., sending messages, calling external tools) may occur without explicit user consent.
  • Dependency security not mentioned; audit dependencies for vulnerabilities yourself.
  • Versioning and changelog missing; difficult to track updates and rollback.
Evidence confidence: Low Reviewed Aug 31, 2026 Reviewed revision 2d1b54c8bf49 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v0.6.1
    Release notes excerpt
    [0.6.1](https://github.com/SenteLabsAI/OpenExecutive/compare/v0.6.0...v0.6.1) (2026-10-18) Added * briefing: show a first-week card on Home instead of the getting-started brief ([#523](https://github.com/SenteLabsAI/OpenExecutive/issues/523)) ([fd53d82](https://github.com/SenteLabsAI/OpenExecutive/commit/fd53d827ee62dbdb0cc3c7c44ec1e45c5fdfe619)) * chat: group chats by topic on the Chats page ([#521](https://github.com/SenteLabsAI/OpenExecutive/issues/521)) ([3c6497e](https://github.com/SenteLabsAI/OpenExecutive/commit/3c6497e6a5a4a486dbb725042d7d66b005bf4d27)) …
    View on GitHub ↗
  2. v0.6.0
    Release notes excerpt
    [0.6.0](https://github.com/SenteLabsAI/OpenExecutive/compare/v0.5.6...v0.6.0) (2026-10-16) Added * chat: check a reply's claims against the tools it ran ([#487](https://github.com/SenteLabsAI/OpenExecutive/issues/487)) ([dcde468](https://github.com/SenteLabsAI/OpenExecutive/commit/dcde468d0e2e918e17135aab1cb9cdb71b9751d7)) * chat: let people in a shared chat write in it live ([#495](https://github.com/SenteLabsAI/OpenExecutive/issues/495)) ([fa4d503](https://github.com/SenteLabsAI/OpenExecutive/commit/fa4d5036eb6ae059ae4a441ff465805283bf39e7)) …
    View on GitHub ↗
  3. v0.5.6
    Release notes excerpt
    [0.5.6](https://github.com/SenteLabsAI/OpenExecutive/compare/v0.5.5...v0.5.6) (2026-10-14) Added * briefing: approve a proposal card on the server ([#458](https://github.com/SenteLabsAI/OpenExecutive/issues/458)) ([99eca81](https://github.com/SenteLabsAI/OpenExecutive/commit/99eca81dcb5fc71d6511495f5a739f1af767ea1a)) * briefing: open the first week's briefs with getting-started moves ([#465](https://github.com/SenteLabsAI/OpenExecutive/issues/465)) ([1a28256](https://github.com/SenteLabsAI/OpenExecutive/commit/1a28256e14c11f9e50a5b7a01d0c7510f4e844bd)) …
    View on GitHub ↗

FAQ

Which model providers does OpenExecutive support?
It primarily uses Anthropic Claude (default claude-sonnet-4-6 and claude-opus-4-7), but can route to OpenRouter or local OpenAI-compatible servers (Ollama, LM Studio, vLLM) via configuration.
What are the deployment constraints?
For production, ensure the scheduler runs on a single instance (Fly.io sets max_machines_running=1). Required secrets include ANTHROPIC_API_KEY, and optional integration tokens. Access control uses Google sign-in with an allow-list.
How do I add a new specialist agent?
Follow the contribution guide: create an agent extending BaseAgent, add a domain prompt, register in the router, add a retriever alias, add built-in knowledge, and include at least two eval scenarios.
How is user data handled?
The company/ directory is gitignored and contains profile, docs, and vector store. Data stays local or on your own Fly volume except for prompts sent to Anthropic API; Anthropic does not train on API data.
View on GitHub ↗ Install ↓

Related agents