Skip to main content

Neuron PHP AI Agents

https://www.neuron-ai.dev

Neuron AI provides tooling for the entire agentic application development lifecycle, including:

  • LLM interfaces
  • Data ingestion and loading
  • Multi-agent orchestration
  • Monitoring and debugging

Neuron AI supports advanced capabilities such as:

  • MCP connector configuration
  • Streaming responses
  • Attachments (documents, images)
  • Retrieval-Augmented Generation (RAG) systems

It acts as an abstraction layer capable of orchestrating multiple LLM providers, including (but not limited to): Anthropic, OpenAI, Gemini, Grok, Ollama, AWS Bedrock, e.t.c models. Please refer to the official Neuron AI documentation. They also provide an accompanying book that covers agentic system design in depth.

What the Starter Kit Provides

While Neuron AI handles the backend agent logic, the AI Agent Starter Kit delivers a complete, production-ready application layer, including:

  • A user interface connected to Neuron AI agents
  • Payment system with logging:
    • Pay-as-you-go
    • Monthly subscriptions
  • Feedback and public roadmap features
  • Production-ready deployment:
    • Coolify support, or
    • VPS deployment using Docker Compose
  • Built-in Log viewer for production

This allows you to focus on agent behavior and business logic rather than application infrastructure.


Setup Neuron PHP

By default, the Starter Kit uses n8n as the agent orchestration layer.
However, the architecture is flexible, and you can replace n8n with Neuron AI or another agent framework with minimal changes.

  1. Install Neuron PHP: composer require neuron-core/neuron-ai

  2. Modify

App\Jobs\ProcessAiChatMessage.php

- use App\Services\AiAgent\N8N\N8NAIAgent;
+ use App\Services\AiAgent\NeuronAi\NeuronAiAgent;

class ProcessAiChatMessage implements ShouldQueue
{
use Queueable;

...
...

public function handle(
AiChatThread $aiChatThread,
- N8nAiAgent $n8nAiAgent,
+ NeuronAiAgent $neuronAiAgent,
AiChatHistory $aiChatHistory,
SubscriptionTrackUsage $subscriptionTrackUsage,
): void {

$user = User::findOrFail($this->userId);

/** @var ?string $chatThreadId */
$chatThreadId = $aiChatThread->getThreadId(
$this->request['sessionId'],
$user->id
);

- $response = $n8nAiAgent->sendMessage(
+ $response = $neuronAiAgent->sendMessage(
new AiAgentSendMessageRequest($this->request),
$chatThreadId
);


// update thread id if it was created in N8N
$aiChatThread->updateThreadIfChanged(
$chatThreadId,

...

  1. Create agent: https://docs.neuron-ai.dev/the-basics/getting-started#create-an-agent