Neural Docs & Manual
Your AI Executive Team ยท Your company, brilliantly advised.
Neural โ User Manual
Your AI Executive Team ยท Your company, brilliantly advised ยท Twelve chiefs. One mind.
What is this?
Neural is an AI-powered company consultant: a full AI executive team behind one chat portal. Describe your business problem in plain language and the right C-suite persona answers โ or address a specific chief directly.
The C-suite
| Persona | Role | Best for |
|---|---|---|
| ๐งญ Gerard (CEO) | Chief Executive | Vision, strategy, priorities, pivots, investors |
| ๐ฃ Jules (CMO) | Chief Marketing | Positioning, brand, segments, campaigns, go-to-market |
| ๐จ Riley (BSM) | Branding & Social Media Manager | Brand identity, social channels, content calendars (branch of the CMO) |
| ๐ ๏ธ Dev (CTO) | Chief Technologist | Architecture, stack, scalability, security, AI/ML |
| โ๏ธ Imani (COO) | Chief Operations | Processes, supply chain, vendors, efficiency |
| ๐ฐ Marcus (CFO) | Chief Finance | Budget, runway, pricing, fundraising, unit economics |
| ๐ฏ Priya (CPO) | Chief Product | Roadmap, MVP scoping, PMF, prioritization |
| ๐ฐ Elena (PUB) | Chief Communications | Press, reputation, newsletters, reports, crisis, ESG, investor relations |
| ๐ค Theo (CPS) | Chief Partnership Strategist | Alliances, channels, resellers, deals |
| ๐งโ๐ผ Maya (CHR) | Chief Hiring | Recruiting, comp bands, org design, onboarding |
| ๐ง Ben (CSO) | Chief Customer Service | Support ops, churn, retention, NPS |
| ๐๏ธ Sasha (EA) | Executive Assistant | Summaries, drafts, coordination, triage |
Each persona runs on the LLM best suited to its role โ e.g. precise models at low temperature for finance, creative models at higher temperature for marketing. Personas are stateless; the server reconstructs context (your company profile + recent history) on every call.
How routing works
When you send a message, three tiers decide who answers, in order:
- Explicit addressing โ start with or mention a role: "CMO, how should we position?", "ask the CFO about runway", "@cto". This always wins.
- Laya classifier โ a fast, multilingual, non-generative decision engine (single forward pass, ~33 ms). Works in 100+ languages.
- LLM fallback โ if Laya's confidence is below the threshold, an LLM picks the role. A keyword heuristic is the final safety net, defaulting to the EA for triage.
Every reply shows a badge: which persona answered, how it was routed, and the confidence.
Using the portal
- Click New consultation.
- Open Company context and describe your business (industry, stage, market, goals). Every persona uses this โ advice is grounded in it.
- Type your problem, or pick a persona from the dropdown to address one directly.
- Conversations are saved; reopen them from the sidebar anytime.
Tip: context is per-consultation. Set it before your first question for the most grounded answers.
API quick reference
Base URL: http://localhost:8000/api/v1 โ full interactive docs at
/docs (OpenAPI).
| Method | Endpoint | Purpose |
|---|---|---|
| GET | /health | Liveness + configured providers |
| GET | /personas | List the 12 personas |
| POST | /sessions | Create a consultation |
| GET | /sessions/{id}/messages | Message history |
| PUT | /sessions/{id}/context | Save company context |
| POST | /sessions/{id}/files | Attach a file (PDF/DOCX/XLSX/CSV/TXT) |
| GET | /sessions/{id}/files | List attachments |
| GET | /sessions/{id}/artifacts | Generated deliverables (docs, sheets, charts, PDFs) |
| GET | /artifacts/{id}/download | Download an artifact |
| GET | /sessions/{id}/tool_calls | Tool calls in this session |
| POST | /sessions/{id}/tool_calls/{cid}/resolve | Approve/decline a held action |
| GET | /sessions/{id}/followups | Scheduled follow-ups |
| POST | /route | Preview routing (no reply generated) |
| POST | /chat | Full round trip: route + reply |
| POST | /chat/stream | Same, streamed (SSE) |
Example: auto-routed chat
curl -X POST http://localhost:8000/api/v1/chat \
-H "Content-Type: application/json" \
-d '{"session_id": "<sid>", "message": "How should we position against the incumbent?"}'
The response includes routing.persona_id (e.g. cmo), routed_by
(laya), and confidence.
Example: address a persona directly
Pass persona_id to skip routing:
{"session_id": "<sid>", "message": "...", "persona_id": "cfo"}
Tools: acting, not just advising
Executives don't only talk โ they can act, and every action with consequences asks for your approval first.
What they can do
| Capability | How it works | Who |
|---|---|---|
| Web search | Live results with citations (Tavily) | Most chiefs |
| Send email | Via your SMTP server; you approve first | EA, CEO |
| Follow-ups | "Check back in 3 days" โ delivered in-portal | EA, CHR, CSO |
| Word docs | .docx memos, plans, proposals | All |
| Excel sheets | .xlsx budgets, models, trackers | CFO, COO, CPO, CHR |
| Charts | .png bar/line/pie/scatter | CFO, CMO, CPO, COO |
| PDFs | Formal, non-editable deliverables | All |
| Google Sheets | Live shareable URL (service account) | CFO |
Attach your own files
Click ๐ in the composer to attach a PDF, Word, Excel, CSV or TXT file (max 10 MB). Its text is extracted and every executive sees it โ ask the CFO to "analyze my spreadsheet" or the CTO to "review this architecture PDF". Remove attachments anytime with โ.
The approval flow
Actions that touch the world (email, scheduling, file creation) pause for a card in the chat showing exactly what will happen:
- Approve โ the action runs and the executive continues their reply
- Decline โ they acknowledge it and offer an alternative
Read-only actions (web search) run automatically.
Configuration
Backend settings live in backend/.env (see .env.example). Key knobs:
LAYA_ENABLED/LAYA_CONFIDENCE_THRESHOLDโ toggle the classifier and its confidence cutoffLLM_FALLBACK_ENABLED,FALLBACK_PROVIDER/FALLBACK_MODELโ the safety-net routerTAVILY_API_KEYโ enables web searchSMTP_HOST/SMTP_PORT/SMTP_USER/SMTP_PASS/SMTP_FROMโ enables emailGOOGLE_SERVICE_ACCOUNT_JSONโ enables Google Sheets creationMCP_SERVERSโ JSON list of external MCP tool serversTOOLS_ENABLED,AGENT_MAX_ITERATIONSโ the tool loopSCHEDULER_ENABLEDโ follow-up delivery- Provider keys:
OPENAI_API_KEY,ANTHROPIC_API_KEY,GOOGLE_API_KEY,DEEPINFRA_API_KEY,OLLAMA_BASE_URLโ a persona whose provider isn't configured returns a clear 503 instead of a broken reply
FAQ
Does it remember our conversation? Yes โ history is stored and replayed to the persona on each message (last 20 messages by default). The personas themselves are stateless.
Which languages does routing support? Laya routes in 100+ languages; personas answer in the language you write in.
Can different personas use different models? Yes. Each persona declares
its own provider + model + temperature in backend/app/personas/registry.py.
Providers supported: OpenAI, Anthropic, Google, DeepInfra, Ollama.
API reference (OpenAPI/Swagger): http://localhost:8000/docs