Private projects
Group conversations around shared instructions and selected documents. Keep project work private, with personal memory off by default.
Chat with your choice of local or cloud models. Research documents, the web, and public data, then turn the results into reports, charts, and working code. Keep it together in private projects, with tools and permissions you control.
v0.4.0 Public data, reports, and more reliable research →
Investigate a question, collect the data, and create something you can use. This release expands research and gives longer tasks more room to finish.
Search NIH RePORTER, PubMed, and ClinicalTrials.gov. Inspect project records, article abstracts and affiliations, or study details with citations.
Explore public-data research → Datasets and reportsCollect beyond a small preview, check coverage, and export CSV or JSON. Build HTML reports with tables and bar charts, or approve custom analysis.
Explore the data workflow → Evidence you can inspectRead deeper into web pages, PDFs, and JSON. Follow source-linked research notes, disagreements, and open questions alongside the report.
Explore cited research → Longer tasksLarger research allowances, clearer incomplete results, and saved dataset checkpoints help you continue analysis without collecting the same records again.
Explore continuity and recovery →Connect AWS Bedrock or an OpenAI-compatible endpoint, including Ollama, LM Studio, and vLLM. Choose local inference and embeddings to keep those requests on your own machines. Vision, tools, and context limits depend on your chosen model.
Discovery reads the provider catalog; it does not download models or change your selected model. Bedrock catalog access requires AWS listing permissions.
Model discovery and provider setup →default_profile: local-ollama
profiles:
local-ollama:
type: openai
label: "Ollama (local)"
endpoint: http://localhost:11434/v1
api_key: ollama # ignored by Ollama
model: your-installed-model
model_discovery: automatic
discovery_api: ollama
supports_tools: true
The everyday tools of an AI assistant, connected to your models and infrastructure.
Group conversations around shared instructions and selected documents. Keep project work private, with personal memory off by default.
Research publications, grants, and clinical trials. Collect cited datasets, inspect coverage, and create downloadable tables, charts, and reports.
Edit a message or regenerate an answer without losing the original. Switch between saved paths and continue from the one you choose.
Image input for vision models, highlighted code, math and Mermaid diagrams, editable messages, conversation search, and Markdown export.
An agent can plan, read and write files, run Python or JavaScript, use shell tools, and delegate scoped work to sub-agents.
Review sensitive tool calls before execution. Approvals recover after reload, while Git-backed workspace checkpoints let you inspect and restore files.
Preview HTML and Markdown beside the conversation. Edit text and code, request selected-text AI revisions, and compare, restore, or download saved versions.
Create specialized assistants with prompts and knowledge bases. Reuse Markdown workflows through slash commands or on-demand skill discovery.
Choose Research for a staged investigation of documents and the web. Follow the plan and open report citations to inspect captured passages. Chat remains the default.
Save useful facts and preferences for future chats. Review and manage retained memories in the Memory panel.
Connect external tools through MCP. Use per-user API keys for the OpenAI-compatible model gateway, with shared usage accounting.
Local accounts or Entra ID SSO, private user content, per-tool permissions, usage reporting, monthly budgets, and live admin configuration.
Keep related conversations, instructions, and reference documents together. Start a project when you need one; everyday chat remains the default.
Create a private project with reusable instructions and selected documents. Start conversations inside it, move existing chats in or out, and archive finished projects. Other project conversations are not automatically added to a chat’s history.
Open Context in the composer to review the model destination, instructions, compatible history, memory, and document choices. Exclude context you do not want included in the next turn.
Context records describe retained context and attempted model calls; they are not a complete transcript of every outbound request.
Regenerate a reply or edit an earlier message to create an alternative. Previous answers, citations, context records, and saved answer files remain available. Switch paths with compact controls; your choice survives a reload.
Only the selected path continues into the next chat turn or Markdown export. Switching answers does not roll back workspace files; use a checkpoint when you need to restore the workspace.
Conversation alternatives guide →Edit supported text files directly in the canvas, preview HTML or Markdown, and compare saved versions. Select a passage and describe a change to request an AI revision, then review and apply or discard the proposed edit.
Saving a version keeps the workspace file unchanged until you choose Use in workspace. Save drafts before refreshing or closing the browser.
Artifact editing guide →Go beyond an answer: let the agent work with files, run code, and use connected tools. Follow its progress and review actions in a workspace you can inspect and restore.
Run Python, JavaScript, or shell commands to analyze data and build applications. Inspect the files and results in the conversation workspace.
Follow a visible task list as work progresses. Sub-agents can handle parts of a larger task while inheriting the parent’s model, scope, and controls.
Choose which tools can run automatically, require approval, or stay disabled. Use Stop to cancel work and checkpoints to restore workspace files.
Preview HTML and Markdown beside the chat. Edit text and code, review suggested revisions, and save versions you can compare or restore.
Refresh, switch chats, or lose your connection, then return to saved progress or the completed answer. Pending approvals stay linked to the task. v0.4.0 improves shutdown handling and preserves completed results during recovery.
runs:
enabled: true
Off by default. Runs are independent of Agent mode. One application process per database/data directory; no automatic replay of uncertain tool actions.
Turn any configured model into a purpose-built assistant: a name, an avatar, a custom system prompt, and starter prompts — published once by an admin, picked by users on the new-chat screen, and pinned per conversation.
Skills are named, reusable markdown instruction sets — "how we do data analysis here," "how to write a research report," "how to build a single-file web app." Each one loads its full instructions on demand, while a short catalog helps the agent discover relevant workflows.
/ to pick one, or leave the
Skills toggle on and let the agent auto-activate the best match
SKILL.md format — drop in community
skills or share your own
use_skill is a normal gated tool with the usual
auto · ask · deny policy and per-assistant capability limits
data-analysis, deep-research,
web-app — seeded on first boot
/ in the composer to pick a skill — its full instructions are
injected for that turn, while the Skills toggle lets the agent choose
one on its own.
Change Chat to Research in the composer for a focused investigation. Ask a concrete question, choose your sources, and follow the plan through to a cited report. Normal chat remains the default, including the next turn after a research request.
Research setup, limits, and examples →
Research requires a tool-capable model and stays within configured limits. Custom code uses an explicit analysis handoff and normal tool permissions; selecting Research does not grant execution access. Enable reconnectable runs to keep research going across refreshes; otherwise keep the chat open.
Go to Settings → Configuration → Web search to select a provider, manage its credentials, test the settings, and save. Changes apply to new searches immediately, in normal chat and Research mode. No configuration-file edit is needed.
The default, with no API key required. Also used as the fallback if your configured provider fails. Free search can be rate-limited.
Google search results through your Serper API key. Keys are masked after saving; testing and searches consume your Serper credits.
Use a public HTTPS endpoint from searx.space that permits JSON searches. Hosting your own instance is optional.
Requests are paced, with a recovery cooldown after provider failures. Public endpoints vary in availability; if the configured provider and DuckDuckGo both fail, Phlox reports the failure. Queries go to the selected provider and to DuckDuckGo when fallback is needed.
Ask about publications, funded projects, or registered trials. Phlox queries three public research APIs directly, with no extra API key or service to configure.
Find projects by organization and fiscal year. Inspect reported award amounts, compare years, and review the scope before calculating totals.
Search the literature, read available abstracts, and check author affiliations. Export publication records with citations to the details you inspected.
Find registered studies by condition and recruitment status. Explore sponsors, phases, eligibility, and available results with links to the registry.
Bulk collection saves records outside the model’s conversation context. Follow-up analysis can reuse that dataset while its sources remain available.
Inspect a small preview and confirm the filters match your question.
Fetch larger pages, save progress, and resume from a dataset checkpoint.
See captured and reported counts, missing values, and duplicate records.
Generate tables and bar charts, with downloadable data and source references.
Approve an analysis handoff to make eligible Python, JavaScript, and shell tools available under your existing permissions. Work from exported records to create custom plots and HTML reports you can preview beside the chat.
Collection remains subject to API and administrator limits. Partial datasets are labelled; missing values stay unknown. These integrations cover the three APIs above, not every public API or full-text journal access.
Queries and examples · Collection and exports · Analysis and reports
Upload PDF, DOCX, Markdown, text, or code. Track processing, retry failures, and search personal, conversation, or assistant documents. Open a citation to inspect its retained passage and available page, section, or table location.
@Document citations · Web evidence · Processing and indexes
Local semantic retrieval needs a configured embedding model. The built-in local-hash fallback is not semantic search. OCR and JavaScript-rendered web pages are not included.
[S1]
Sign-in is enabled by default. Conversations, documents, and datasets stay private to their owner, while administrators manage accounts, tools, and spending controls.
Use local accounts or Microsoft Entra ID single sign-on. Administrators manage accounts and access without an in-app bypass to users’ private conversations, documents, or datasets.
The fast local subprocess trusts the Phlox host and is not an isolation boundary; it is for trusted single-user use only. Shared deployments use an ephemeral Podman/Docker container with resource/network controls or off-host AWS Bedrock AgentCore execution. Configured isolation fails closed rather than silently running locally.
Each tool is auto, ask, or deny. Mutating and
execution tools default to ask; Agent mode is off by default and
auto-approves only when explicitly enabled for a turn.
Edit provider profiles, model pricing, resilience, and sandbox limits from an admin panel — applied without a restart. API keys are write-only and masked.
Per-request structured logs, an optional OpenTelemetry tracing seam, and per-call token/cost records covering chat, children, compaction, fallback, gateway, and probes. Missing usage or pricing is shown as unknown.
A durable usage ledger outlives the accounts it tracks — a departed user's costs stay billable after their account is deleted. Usage by month × user × department × model, CSV-exportable.
Set monthly budgets per user or department. Current known spending gates subsequent model calls, including children and compaction. Warnings and monthly resets are shared by chat and the gateway; budgets are not a guaranteed billing ceiling.
Sub-agents inherit the parent’s effective permissions. Web fetching validates destinations and redirects, blocks non-public addresses by default, and bounds response size and time. Stop requests cancellation without claiming to undo completed remote actions.
Use SQLite by default or configure PostgreSQL. Checked migrations and verified offline backup/restore support both. Run one Phlox process per database/data directory, including with Postgres.
auto · ask · deny policiesGuardrails are optional and disabled by default. When enabled, an administrator can apply text/regex-based rules to provider-bound messages, replayed history, and tool results, and to model output streaming back. Built-in patterns cover emails, phone numbers, SSNs, credit cards, and API keys; custom regular expressions can cover organization-specific identifiers. The original user transcript may still be stored by Phlox.
/v1 gateway
Phlox does not currently support PHI or regulated-data deployments. Those uses remain out of scope until the documented governance, managed-secrets, audit, and independent-review gates are complete.
Beyond chat, Phlox is an OpenAI-compatible gateway with per-user API keys, live model pricing, department-level chargeback, and monthly spend budgets. Unknown usage and pricing are distinguished from zero. The gateway exposes model completions; it does not expose the interactive agent loop or document retrieval.
Set monthly budgets for users or departments, receive warnings as known spending approaches the limit, and review usage by model.
Budgets check known spending before new calls to priced models. Concurrent calls can exceed a limit; these controls are not a guaranteed billing cap.
Use per-user API keys to access Phlox through an OpenAI-compatible SDK. The gateway shares model configuration and usage accounting with chat.
API gateway guide →
Run Phlox on your own machine or server. Choose the model services and execution environment that fit your deployment.
Use the startup scripts on macOS, Linux, or Windows. SQLite is the default; PostgreSQL is available for deployments that prefer it.
Use local models or cloud providers. Self-hosting stores application data on your infrastructure; cloud models and web services receive the requests you send them.
Configure authentication, TLS, backups, and an isolated execution runner for shared use. Production runs one application process per database and data directory.
Deployment guide · Docker and Podman · Technical architecture
Explore neon, pastel, warm, and minimal palettes. Phlox Dark is the default; switch instantly in Settings → Appearance.
Help me turn these notes into a plan.
Collect the sources, compare the findings, and draft an outline you can review.
[S1] Retained passageIncludes Outrun, Blade Runner 2049, Chaos Theory, both Cyberpunk variants, Synthwave, and more. Full catalog and custom themes →
The launcher installs project dependencies, creates a config if needed, and opens your browser. Connect a running model server or a cloud provider.
git clone --branch v0.4.0 --depth 1 https://github.com/robert-mcdermott/phlox.git
cd phlox
./scripts/start.sh dev
git clone --branch v0.4.0 --depth 1 https://github.com/robert-mcdermott/phlox.git
cd phlox
.\scripts\start.ps1 dev
scripts/stop launcher.
Detailed first-time setup · Provider configuration · Docker / Podman
The local execution runner trusts the host. Configure container or AgentCore execution
for shared use. Auth-enabled production requires a stable
PHLOX_JWT_SECRET and an isolated runner; follow the
production setup guide
before using prod.
0009_api_datasets
for retained public-API datasets. Do not stamp the database manually.Back up both the database and data directory: retained datasets, artifact versions, and saved files use these stores. Chat and DuckDuckGo remain the defaults; reconnectable runs and code execution still follow your configuration.
Start with the User Guide for the complete documentation index, then explore the focused guides for your deployment and workflow.
From your first model connection to upgrades and recovery.
For contributors: current roadmap · add a tool · add a provider
Your choice of models, connected tools, and a workspace you control. Open source under Apache 2.0.