{"id":51161461,"url":"https://github.com/bykalachevski/ai-support-agent-template","last_synced_at":"2026-06-26T14:00:57.907Z","repository":{"id":361612843,"uuid":"1255085565","full_name":"byKalachevski/ai-support-agent-template","owner":"byKalachevski","description":"Production-ready AI support-agent template with FastAPI, Markdown knowledge base, retrieval pipeline, session memory, safety policies and optional WebSocket worker integration.","archived":false,"fork":false,"pushed_at":"2026-05-31T13:05:20.000Z","size":48,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-31T14:20:40.015Z","etag":null,"topics":["ai","ai-agent","ai-agent-tools","ai-agents-automation","automation","docker","fastapi","llm","python","rag","support-agent","websocket"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/byKalachevski.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-31T11:41:28.000Z","updated_at":"2026-05-31T13:05:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/byKalachevski/ai-support-agent-template","commit_stats":null,"previous_names":["bykalachevski/ai-support-agent-template"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/byKalachevski/ai-support-agent-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byKalachevski%2Fai-support-agent-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byKalachevski%2Fai-support-agent-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byKalachevski%2Fai-support-agent-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byKalachevski%2Fai-support-agent-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/byKalachevski","download_url":"https://codeload.github.com/byKalachevski/ai-support-agent-template/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/byKalachevski%2Fai-support-agent-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34819597,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-26T02:00:06.560Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ai-agent","ai-agent-tools","ai-agents-automation","automation","docker","fastapi","llm","python","rag","support-agent","websocket"],"created_at":"2026-06-26T14:00:56.900Z","updated_at":"2026-06-26T14:00:57.902Z","avatar_url":"https://github.com/byKalachevski.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# AI Support Agent Template\n\nProduction-ready AI support-agent template built with FastAPI, Pydantic, Markdown knowledge bases, retrieval pipelines, session memory and optional backend worker integration.\n\nThis repository is designed as a reusable public template. Replace the knowledge-base structure, prompts and configuration with your own product documentation and support workflows.\n\n---\n\n## Features\n\n- FastAPI backend architecture\n- Pydantic request and response contracts\n- AI support-agent orchestration\n- Markdown knowledge-base support\n- Retrieval and context scoring pipeline\n- Prompt management\n- Intent classification\n- Safety and grounding policies\n- Session memory and summarization\n- Optional WebSocket worker integration\n- Dockerized deployment\n\n---\n\n## Tech Stack\n\n- Python\n- FastAPI\n- Pydantic\n- Uvicorn\n- Docker\n- Docker Compose\n\n---\n\n## Repository Structure\n\n~~~text\napp/\n  routes/          API routes\n  schemas/         Pydantic models and contracts\n  services/        Agent orchestration, retrieval and policies\n  utils/           Shared helpers\n\nkb/\n  README.md        KB structure overview\n  01-routing/      Intent routing rules\n  02-product-core/ Product documentation\n  03-onboarding/   Onboarding guides\n  04-auth/         Authentication flows\n  05-billing/      Billing and subscriptions\n  06-workflows/    Automation workflows\n  07-security/     Security and safety rules\n  08-support/      Support and escalation rules\n  09-troubleshooting/ Common issues and fixes\n\nDockerfile\ndocker-compose.yml\n.env.example\nrequirements.txt\n~~~\n\n---\n\n## Knowledge Base\n\nThe `kb/` directory contains a reusable template structure for organizing support documentation.\n\nYou can:\n\n- rename folders;\n- remove sections;\n- add your own documentation;\n- reorganize the hierarchy completely.\n\nRecommended content:\n\n- onboarding guides;\n- FAQ;\n- troubleshooting flows;\n- billing rules;\n- integration guides;\n- response templates;\n- escalation policies.\n\nDo not store:\n\n- API keys;\n- tokens;\n- passwords;\n- customer data;\n- private credentials.\n\n---\n\n## Quick Start\n\n### Docker\n\n~~~bash\ncp .env.example .env\ndocker compose up --build\n~~~\n\nHealth check:\n\n~~~bash\ncurl http://127.0.0.1:8011/health\n~~~\n\n---\n\n## Local Development\n\n### Linux / macOS\n\n~~~bash\npython -m venv .venv\nsource .venv/bin/activate\npip install -r requirements.txt\ncp .env.example .env\npython -m uvicorn app.main:app --host 127.0.0.1 --port 8011\n~~~\n\n### Windows PowerShell\n\n~~~powershell\npy -m venv .venv\n.\\.venv\\Scripts\\Activate.ps1\npip install -r requirements.txt\nCopy-Item .env.example .env -Force\npython -m uvicorn app.main:app --host 127.0.0.1 --port 8011\n~~~\n\n---\n\n## Environment Variables\n\nUse `.env.example` as a safe template.\n\nMain variables:\n\n| Variable | Description |\n|---|---|\n| `LLM_PROVIDER` | Provider label |\n| `LLM_BASE_URL` | OpenAI-compatible API endpoint |\n| `LLM_API_KEY` | Provider API key |\n| `LLM_MODEL` | Model name |\n| `KB_DIR` | Knowledge-base directory |\n| `WORKER_ENABLED` | Enables worker mode |\n| `BACKEND_API_BASE_URL` | Optional backend API |\n| `BACKEND_API_TOKEN` | Optional backend token |\n\n---\n\n## Customization\n\n1. Copy `.env.example` to `.env`.\n2. Configure your provider credentials.\n3. Replace KB templates with your own documentation.\n4. Adjust prompts and intent routing if needed.\n5. Run locally with Docker or Uvicorn.\n\n---\n\n## Security Notes\n\nBefore deployment:\n\n- do not commit `.env`;\n- do not commit API keys or tokens;\n- do not include private customer data;\n- review prompts and KB before production usage.\n\n---\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbykalachevski%2Fai-support-agent-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbykalachevski%2Fai-support-agent-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbykalachevski%2Fai-support-agent-template/lists"}