Norman Agent
AI agent runtime with tools, memory, and task execution. Norman Agent adds intelligence on top of Norman Engine by providing conversational memory, tool integration, and multi-step task decomposition.
What It Does
- Conversational Memory — Short-term (conversation history) and long-term (persistent knowledge) memory powered by MongoDB
- Tool System — Pluggable tool registry with schema-based tool definitions, auto-discovery, and execution
- Task Agent (v1) — Complex task decomposition into parallel steps with dependency management and worker agents
- Norman Engine Integration — Routes all LLM calls through Norman Engine for unified token tracking
Agent Modes
v0.1 — Simple Chat Agent
Standard chat enhanced with memory and tools. Conversations flow through:
- Load conversation history + relevant long-term memories
- Inject available tool schemas into system prompt
- Forward to Norman Engine for LLM completion
- Parse
TOOL_CALL:name({params})patterns from response - Execute tools and integrate results
- Store conversation turn in memory
v1 — Parallel Task Agent
Complex task execution with decomposition and parallel workers:
- User submits a task with steps and dependencies
- Agent creates a dependency graph
- Independent steps execute in parallel
- Results cascade to dependent steps
- Final synthesis produces the deliverable
API Surface
| Endpoint | Method | Description |
|---|---|---|
/api/chat | POST | Chat with memory and tools (streaming + non-streaming) |
/api/chat/:chatId | GET | Retrieve conversation history |
/api/memory/:userId | GET | List user memories |
/api/memory | POST | Store a memory |
/api/memory/:userId/search | POST | Search memories |
/api/memory/:userId/summary | GET | Summarize memories |
/api/tasks | GET/POST | List or create tasks (v1 mode) |
/api/tasks/:taskId | GET | Task status and details |
/api/tasks/:taskId/execute | POST | Start task execution |
/api/tools | GET | List available tools |
/api/tools/execute | POST | Execute a tool directly |