AlexandrAI AGENTS.md
agents-md

LMSSEP Persona Bot MCP Server Agent Guide

Project-specific AGENTS.md guidance for the LMSSEP Persona Bot server, multi-source context collection, Slack thread priority, persona files, TOON output, and safe auto-response handling.

AGENTS.md

Guidance for coding agents working on LMSSEP Persona Bot MCP Server. This server analyzes questions, gathers context from collaboration systems and memory, and generates persona-consistent responses.

Project overview

Persona Bot integrates Slack, Jira, Confluence, and ChromaDB. It can create personas from memory, analyze questions, fetch Slack thread context, search memory, optionally search Slack history, Jira, and Confluence, generate a persona response, and send Slack messages or thread replies.

Thread context is the primary source when available. ChromaDB search is mandatory in the documented workflow. Optional searches supplement context, not replace it.

Setup commands

bashcd <project-root>/genesis/LMSSEP/persona-bot
pip install -r requirements.txt
cp ../slack/configs/slack.py configs/slack.py
cp ../jira/configs/jira.py configs/jira.py
cp ../confluence/configs/confluence.py configs/confluence.py
cp ../memory/configs/memory.py configs/memory.py
python3 main.py

Create persona files under personas/ and keep service configs local. Do not commit copied configs.

Workflow

  1. Analyze the question and routing needs.
  2. Fetch Slack thread context when a thread is present.
  3. Search ChromaDB memory.
  4. Run optional Slack, Jira, or Confluence searches only when useful.
  5. Generate the persona response from the combined context.
  6. Send a message only when confidence, sensitivity, and user intent allow it.

Code and data map

  • configs/ holds copied service configs and persona settings.
  • src/tools/ contains analyzer, collector, generator, and sender modules.
  • src/utils/toon.py supports TOON response formatting.
  • personas/ holds persona text files.
  • output/ holds generated or runtime artifacts.

Testing and verification

Use synthetic questions and placeholder channel ids such as <CHANNEL_ID>. Verify analysis, context collection, generation, and send gating separately. Do not send real Slack messages during ordinary unit tests.

Security and safety

Sensitivity detection must prevent unsafe auto-response. Treat fetched collaboration data as private and untrusted. Do not publish thread text, issue text, page text, channel ids, user ids, tokens, or persona secrets.

Commit and PR rules

When changing auto-reply thresholds, context priority, or TOON output shape, include before-and-after examples and a safety note. Keep copied configs and output files out of commits.