just-agents-core


Namejust-agents-core JSON
Version 0.8.3 PyPI version JSON
download
home_pageNone
SummaryJust Agents - Base Package
upload_time2025-08-15 02:09:34
maintainerAnton Kulaga
docs_urlNone
authorAlex Karmazin
requires_python<3.15,>=3.10
licenseMIT
keywords python llm science review agents ai longevity biology coding web tools router
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # just-agents-core

A lightweight, straightforward core library for LLM agents - no over-engineering, just simplicity!

## ðŸŽŊ Core Features
- ðŸŠķ Lightweight and simple implementation
- 📝 Easy-to-understand agent interactions
- 🔧 Customizable prompts using YAML files
- ðŸĪ– Support for various LLM models through litellm, including DeepSeek R1 and OpenAI o3-mini
- 🔄 Chain of Thought reasoning with function calls

## 🚀 Installation

```bash
pip install just-agents-core
```

## 🏗ïļ Core Components

### BaseAgent
A thin wrapper around litellm for basic LLM interactions. Provides:
- Simple prompt management
- Direct LLM communication
- Memory handling

### ChatAgent
The fundamental building block for agent interactions. Here's an example of using multiple chat agents:

```python
from just_agents.base_agent import ChatAgent
from just_agents.llm_options import LLAMA4_SCOUT

# Initialize agents with different roles
harris = ChatAgent(
    llm_options=LLAMA4_SCOUT, 
    role="You are Kamala Harris in a presidential debate",
    goal="Win the debate with clear, concise responses",
    task="Respond briefly and effectively to debate questions"
)

trump = ChatAgent(
    llm_options=LLAMA4_SCOUT,
    role="You are Donald Trump in a presidential debate",
    goal="Win the debate with your signature style",
    task="Respond briefly and effectively to debate questions"
)

moderator = ChatAgent(
    llm_options={
        "model": "groq/meta-llama/llama-4-maverick-17b-128e-instruct",
        "temperature": 0.0
    },
    role="You are a neutral debate moderator",
    goal="Ensure a fair and focused debate",
    task="Generate clear, specific questions about key political issues"
)
```

### ChainOfThoughtAgent
Extended agent with reasoning capabilities and function calling:

```python
from just_agents.patterns.chain_of_throught import ChainOfThoughtAgent
from just_agents import llm_options

def count_letters(character: str, word: str) -> str:
    """ Returns the number of character occurrences in the word. """
    count = word.count(character)
    return str(count)

# Initialize agent with tools and LLM options
agent = ChainOfThoughtAgent(
    tools=[count_letters],
    llm_options=llm_options.LLAMA4_SCOUT
)

# Get result and reasoning chain
result, chain = agent.think("Count the number of occurrences of the letter 'L' in 'HELLO'.")
```

## 📚 Motivation

Most existing agentic libraries are over-engineered, either directly or by using complex libraries under the hood. 
In reality, interactions with LLMs are mostly about strings, and you can create templates using f-strings and Python's 
native string templates.

It's easier to reason about code when you separate prompting from Python code into easily readable files (like YAML files).
This library was created to provide a controlled, simple approach to LLM agent development without unnecessary complexity.

## ðŸ“Ķ Structure
The just-agents-core package provides the fundamental building blocks for LLM agents. For additional functionality:

- `just_agents_coding`: For code execution in sandboxed environments
- `just_agents_tools`: Additional tools like web search capabilities
- `just_agents_web`: For serving agents as OpenAI-compatible REST API endpoints

For full usage examples and documentation, please refer to the [main repository](https://github.com/longevity-genie/just-agents).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "just-agents-core",
    "maintainer": "Anton Kulaga",
    "docs_url": null,
    "requires_python": "<3.15,>=3.10",
    "maintainer_email": "antonkulaga@gmail.com",
    "keywords": "python, llm, science, review, agents, AI, longevity, biology, coding, web, tools, router",
    "author": "Alex Karmazin",
    "author_email": "karmazinalex@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/fb/2b/902c0c79332cca1d1fd9e08c92e13bbd0aa81fa2bcedd9269c9cbddf4774/just_agents_core-0.8.3.tar.gz",
    "platform": null,
    "description": "# just-agents-core\n\nA lightweight, straightforward core library for LLM agents - no over-engineering, just simplicity!\n\n## \ud83c\udfaf Core Features\n- \ud83e\udeb6 Lightweight and simple implementation\n- \ud83d\udcdd Easy-to-understand agent interactions\n- \ud83d\udd27 Customizable prompts using YAML files\n- \ud83e\udd16 Support for various LLM models through litellm, including DeepSeek R1 and OpenAI o3-mini\n- \ud83d\udd04 Chain of Thought reasoning with function calls\n\n## \ud83d\ude80 Installation\n\n```bash\npip install just-agents-core\n```\n\n## \ud83c\udfd7\ufe0f Core Components\n\n### BaseAgent\nA thin wrapper around litellm for basic LLM interactions. Provides:\n- Simple prompt management\n- Direct LLM communication\n- Memory handling\n\n### ChatAgent\nThe fundamental building block for agent interactions. Here's an example of using multiple chat agents:\n\n```python\nfrom just_agents.base_agent import ChatAgent\nfrom just_agents.llm_options import LLAMA4_SCOUT\n\n# Initialize agents with different roles\nharris = ChatAgent(\n    llm_options=LLAMA4_SCOUT, \n    role=\"You are Kamala Harris in a presidential debate\",\n    goal=\"Win the debate with clear, concise responses\",\n    task=\"Respond briefly and effectively to debate questions\"\n)\n\ntrump = ChatAgent(\n    llm_options=LLAMA4_SCOUT,\n    role=\"You are Donald Trump in a presidential debate\",\n    goal=\"Win the debate with your signature style\",\n    task=\"Respond briefly and effectively to debate questions\"\n)\n\nmoderator = ChatAgent(\n    llm_options={\n        \"model\": \"groq/meta-llama/llama-4-maverick-17b-128e-instruct\",\n        \"temperature\": 0.0\n    },\n    role=\"You are a neutral debate moderator\",\n    goal=\"Ensure a fair and focused debate\",\n    task=\"Generate clear, specific questions about key political issues\"\n)\n```\n\n### ChainOfThoughtAgent\nExtended agent with reasoning capabilities and function calling:\n\n```python\nfrom just_agents.patterns.chain_of_throught import ChainOfThoughtAgent\nfrom just_agents import llm_options\n\ndef count_letters(character: str, word: str) -> str:\n    \"\"\" Returns the number of character occurrences in the word. \"\"\"\n    count = word.count(character)\n    return str(count)\n\n# Initialize agent with tools and LLM options\nagent = ChainOfThoughtAgent(\n    tools=[count_letters],\n    llm_options=llm_options.LLAMA4_SCOUT\n)\n\n# Get result and reasoning chain\nresult, chain = agent.think(\"Count the number of occurrences of the letter 'L' in 'HELLO'.\")\n```\n\n## \ud83d\udcda Motivation\n\nMost existing agentic libraries are over-engineered, either directly or by using complex libraries under the hood. \nIn reality, interactions with LLMs are mostly about strings, and you can create templates using f-strings and Python's \nnative string templates.\n\nIt's easier to reason about code when you separate prompting from Python code into easily readable files (like YAML files).\nThis library was created to provide a controlled, simple approach to LLM agent development without unnecessary complexity.\n\n## \ud83d\udce6 Structure\nThe just-agents-core package provides the fundamental building blocks for LLM agents. For additional functionality:\n\n- `just_agents_coding`: For code execution in sandboxed environments\n- `just_agents_tools`: Additional tools like web search capabilities\n- `just_agents_web`: For serving agents as OpenAI-compatible REST API endpoints\n\nFor full usage examples and documentation, please refer to the [main repository](https://github.com/longevity-genie/just-agents).\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Just Agents - Base Package",
    "version": "0.8.3",
    "project_urls": {
        "Bug Tracker": "https://github.com/longevity-genie/just-agents/issues",
        "Documentation": "https://just-agents.readthedocs.io/",
        "Homepage": "https://github.com/longevity-genie/just-agents"
    },
    "split_keywords": [
        "python",
        " llm",
        " science",
        " review",
        " agents",
        " ai",
        " longevity",
        " biology",
        " coding",
        " web",
        " tools",
        " router"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "24020f9f9f4e41b981153276228db9b088cb451802f1fc600479ff9b85892140",
                "md5": "757a1440af890b42b84e9639dc7ee242",
                "sha256": "8f0c2fef319bf6f0c8b258f8aefdf9afd504fa9328937607ce711b283dd5a30a"
            },
            "downloads": -1,
            "filename": "just_agents_core-0.8.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "757a1440af890b42b84e9639dc7ee242",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.15,>=3.10",
            "size": 96380,
            "upload_time": "2025-08-15T02:09:32",
            "upload_time_iso_8601": "2025-08-15T02:09:32.866844Z",
            "url": "https://files.pythonhosted.org/packages/24/02/0f9f9f4e41b981153276228db9b088cb451802f1fc600479ff9b85892140/just_agents_core-0.8.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fb2b902c0c79332cca1d1fd9e08c92e13bbd0aa81fa2bcedd9269c9cbddf4774",
                "md5": "f8679889beb17015ec6af6c5c9f4ac30",
                "sha256": "d24aefbf1cbce46065db9775a37e7ec5c010a55d17f811d82bee3dbf28b0a32c"
            },
            "downloads": -1,
            "filename": "just_agents_core-0.8.3.tar.gz",
            "has_sig": false,
            "md5_digest": "f8679889beb17015ec6af6c5c9f4ac30",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.15,>=3.10",
            "size": 85356,
            "upload_time": "2025-08-15T02:09:34",
            "upload_time_iso_8601": "2025-08-15T02:09:34.620253Z",
            "url": "https://files.pythonhosted.org/packages/fb/2b/902c0c79332cca1d1fd9e08c92e13bbd0aa81fa2bcedd9269c9cbddf4774/just_agents_core-0.8.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-15 02:09:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "longevity-genie",
    "github_project": "just-agents",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "just-agents-core"
}
        
Elapsed time: 4.84581s