# FinchBot

An AI agent framework, built on LangChain and LangGraph with a fully asynchronous architecture, that lets an agent configure new Model Context Protocol tools, schedule its own background tasks, and manage its own long-term memory.

FinchBot gives an agent four self-management capabilities: it can configure a new MCP tool or create a new skill on its own when it hits a capability boundary rather than only responding that it lacks a tool; it can schedule background tasks and monitor them without blocking the current conversation; it manages its own memory, remembering, retrieving and forgetting facts through an agentic retrieval-augmented-generation pipeline that combines results with weighted reciprocal rank fusion; and both the agent and its user can modify the agent's prompts with a hot reload, so behavior changes take effect without a restart.

The project structures these abilities as a layered "autonomy pyramid," from a basic response layer up through execution, planning and extension layers, and states that autonomy is bounded by explicit safety mechanisms rather than left unconstrained.

It is built on LangChain v1.2 and LangGraph v1.0 and written in Python.

Website: https://github.com/xt765/FinchBot
