| --- |
| library_name: purpose-agent |
| license: mit |
| language: |
| - en |
| tags: |
| - reinforcement-learning |
| - agents |
| - self-improving |
| - experience-replay |
| - llm-as-judge |
| - state-value-evaluation |
| - memory-augmented |
| - multi-agent |
| - slm |
| - small-language-models |
| - human-in-the-loop |
| - streaming |
| - tools |
| - evaluation |
| - ollama |
| - local-models |
| - no-code |
| - easy-to-use |
| pipeline_tag: text-generation |
| --- |
| |
| # Purpose Agent |
|
|
| **Build self-improving AI agent teams with just a purpose.** |
|
|
| No PhD required. No infrastructure costs. Runs on your laptop. |
|
|
| ```python |
| import purpose_agent as pa |
| |
| # One line. That's all you need. |
| team = pa.purpose("Help me research and summarize scientific papers") |
| |
| # Give it tasks. It gets smarter every time. |
| result = team.run("Find recent breakthroughs in quantum computing") |
| print(result) |
| |
| # Teach it your preferences |
| team.teach("Always cite your sources") |
| team.teach("Keep summaries under 200 words") |
| |
| # Check what it's learned |
| print(team.status()) |
| ``` |
|
|
| ## Three Levels of Usage |
|
|
| **Pick your level. You can always go deeper later.** |
|
|
| ### Level 1 β Beginner (no technical knowledge needed) |
|
|
| ```python |
| import purpose_agent as pa |
| |
| # Describe what you want. The framework builds the right team. |
| team = pa.purpose("Write Python code and test it") |
| result = team.run("Create a function that calculates fibonacci numbers") |
| print(result) |
| |
| # It auto-detects the best team: |
| # "Write code" β architect + coder + tester |
| # "Research X" β researcher + analyst |
| # "Write blog" β writer + editor |
| # "Analyze data" β analyst + reporter |
| # "Help me" β general assistant |
| ``` |
|
|
| ### Level 2 β Intermediate (customize your team) |
|
|
| ```python |
| import purpose_agent as pa |
| |
| # Build a custom team |
| team = pa.Team.build( |
| purpose="Customer support assistant", |
| agents=["greeter", "resolver", "escalator"], |
| model="qwen3:1.7b", # Free local model |
| ) |
| result = team.run("Customer says: I can't log in to my account") |
| |
| # Add knowledge from your docs |
| team = pa.purpose( |
| "Answer questions about our product", |
| knowledge="./docs/", # Load all files from a folder |
| model="qwen3:1.7b", |
| ) |
| result = team.ask("What is our refund policy?") |
| ``` |
|
|
| ### Level 3 β Advanced (full control) |
|
|
| ```python |
| import purpose_agent as pa |
| |
| # Graph workflows (like LangGraph) |
| graph = pa.Graph() |
| graph.add_node("research", pa.Agent("researcher", model="qwen3:1.7b")) |
| graph.add_node("write", pa.Agent("writer", model="phi4-mini")) |
| graph.add_edge(pa.START, "research") |
| graph.add_conditional_edge("write", review_fn, {"pass": pa.END, "fail": "research"}) |
| result = graph.run(initial_state) |
| |
| # Parallel execution (like CrewAI) |
| results = pa.parallel(["task 1", "task 2", "task 3"], agents=[a1, a2, a3]) |
| |
| # Agent conversations (like AutoGen) |
| chat = pa.Conversation([researcher, coder, reviewer]) |
| result = chat.run("Design a web scraper", rounds=5) |
| |
| # Knowledge-aware agents (like LlamaIndex) |
| kb = pa.KnowledgeStore.from_directory("./docs") |
| agent = pa.Agent("assistant", tools=[kb.as_tool()]) |
| |
| # Human-in-the-loop (like LangGraph) |
| hitl = pa.HITLOrchestrator(orch, input_handler=pa.CLIInputHandler(), |
| approve_actions=True, review_scores=True) |
| ``` |
|
|
| ## What Makes This Different |
|
|
| **The only framework where agents actually learn from experience.** |
|
|
| Every other framework (LangChain, CrewAI, AutoGen) runs the same way every time. Purpose Agent gets smarter with each task via the **Ξ¦ self-improvement loop**: |
|
|
| ``` |
| Task 1: Agent struggles, takes 12 steps β Ξ¦ evaluates β learns heuristics |
| Task 5: Agent uses learned patterns, takes 8 steps β learns more |
| Task 10: Agent is efficient, takes 5 steps β keeps refining |
| ``` |
|
|
| Plus it absorbs the best of every competing framework: |
|
|
| | You want... | Others say use... | Purpose Agent gives you... | |
| |---|---|---| |
| | **Control** (graphs, conditions, loops) | LangGraph | `pa.Graph()` β same power, with self-improvement | |
| | **Speed** (parallel execution) | CrewAI | `pa.parallel()` β real threads, not fake async | |
| | **Agents talking** | AutoGen | `pa.Conversation()` β with Ξ¦-scored turns | |
| | **Plug-and-play** | OpenAI Agents SDK | `pa.purpose()` β even simpler, one function | |
| | **Knowledge** (RAG) | LlamaIndex | `pa.KnowledgeStore` β RAG as a tool | |
| | **Self-improvement** | Nobody | **Only Purpose Agent** | |
|
|
| ## Runs on Your Laptop (Free, Private) |
|
|
| ```bash |
| # Install Ollama (one-time) |
| curl -fsSL https://ollama.ai/install.sh | sh |
| ollama pull qwen3:1.7b # 1.7B params, runs on CPU |
| |
| # That's it. No API keys. No cloud. No cost. |
| ``` |
|
|
| ```python |
| team = pa.purpose("Research assistant", model="qwen3:1.7b") |
| ``` |
|
|
| Also works with cloud models: |
| ```python |
| team = pa.purpose("Research assistant", model="gpt-4o") # OpenAI |
| team = pa.purpose("Research assistant", model="Qwen/Qwen3-32B") # HuggingFace |
| ``` |
|
|
| ## Interactive CLI |
|
|
| ```bash |
| python -m purpose_agent |
| ``` |
|
|
| Walks you through setup step-by-step. No coding required. |
|
|
| ## Installation |
|
|
| ```bash |
| git clone https://huggingface.co/Rohan03/purpose-agent |
| cd purpose-agent |
| |
| # For local models (recommended) |
| pip install ollama |
| |
| # Run demo (no API keys needed) |
| python demo.py |
| ``` |
|
|
| ## Literature Foundation |
|
|
| Built on 8 published papers β every design decision has empirical backing. |
| See [COMPILED_RESEARCH.md](COMPILED_RESEARCH.md) for the full research trace. |
|
|
| | Paper | What it contributes | |
| |-------|-------------------| |
| | [MUSE](https://arxiv.org/abs/2510.08002) | 3-tier memory hierarchy | |
| | [LATS](https://arxiv.org/abs/2310.04406) | LLM-as-value-function | |
| | [REMEMBERER](https://arxiv.org/abs/2306.07929) | Q-value experience replay | |
| | [Reflexion](https://arxiv.org/abs/2303.11366) | Verbal reinforcement | |
| | [SPC](https://arxiv.org/abs/2504.19162) | Anti-reward-hacking | |
| | [CER](https://arxiv.org/abs/2506.06698) | Experience distillation | |
| | [MemRL](https://arxiv.org/abs/2601.03192) | Two-phase retrieval | |
| | [TinyAgent](https://arxiv.org/abs/2409.00608) | SLM-native patterns | |
|
|
| ## License |
|
|
| MIT |
|
|