CLAIA Agent - Bob
Project description
CLAIA Bob Extension
A fun CLAIA extension that adds "Bob", a gruff, straightforward, no-nonsense assistant with a unique personality.
- Website: https://claia.dev
- License: Apache-2.0
- Python: 3.12+
About Bob
Bob is a fun, quirky, and gruff agent. Have fun!
NOTE: Bob will override the conversation's system prompt
Installation
From Source
# Clone the repository
git clone https://gitlab.com/exofox/claia/claia-bob.git
cd claia-bob
# Select or create the environment where bob will be used
python -m venv .venv
. .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -U pip
pip install -e .
From PyPI
pip install claia-bob
Usage
After installation, Bob will be automatically registered as an agent in CLAIA through the plugin system.
Using Bob in the CLI
# Start CLAIA with Bob as the default agent
claia --default-agent bob
# Or switch to Bob in interactive mode
:agent bob
# Optionally, save Bob to settings as the defafult agent
claia --set default-agent bob
# Or in interactive mode
:set default-agent bob
Using Bob in your own project
from claia.registry import Registry
from claia.lib.data import Conversation
from claia.lib.enums.conversation import MessageRole
from claia.lib import Process
from claia.lib.enums.process import ProcessStatus
import time
# Initialize registry (Bob will be auto-discovered)
registry = Registry(anthropic_api_key="ANTHROPIC_API_KEY")
registry.start_workers(1)
# Create a conversation
conversation = Conversation()
user_message_id = conversation.add_message(MessageRole.USER, "Tell me about yourself")
# Create a process for Bob
process = Process(
agent_type="bob",
conversation=conversation,
parameters={"model_id": "claude-sonnet-4"}
)
# Execute the process
registry.add_process(process)
# Wait for the process to complete
while process.status != ProcessStatus.COMPLETED and not process.status != ProcessStatus.FAILED:
print("Waiting for Bob to respond...")
time.sleep(1)
# Print the result
if process.status == ProcessStatus.COMPLETED:
print(conversation.get_latest_message().content)
elif process.status == ProcessStatus.FAILED:
print(f"Bob failed to respond: {process.error}")
else:
print("Unknown process status")
# Clean up
registry.stop_workers()
Related Projects
- CLAIA's Website
- CLAIA - The main CLAIA framework
- CLAIA Template - Template for creating CLAIA extensions
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claia_bob-0.0.1.tar.gz.
File metadata
- Download URL: claia_bob-0.0.1.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eea9fc1f50d24329c8764eac31a1c3856a18f52ef00e3de0a289378fcce95154
|
|
| MD5 |
6da67ec4a0d4064f1c21c8aeeb255a3b
|
|
| BLAKE2b-256 |
59edccc7aa9251ea2e21a50b9c7a4f4b61ac442275bf760880fc23c4ee307f96
|
File details
Details for the file claia_bob-0.0.1-py3-none-any.whl.
File metadata
- Download URL: claia_bob-0.0.1-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
954edaa3662b2dc81ce1af3d0c91201034047079e66662c40d09b629ab9de005
|
|
| MD5 |
d13e78ee2855aa55f8beeaf6b3a940c4
|
|
| BLAKE2b-256 |
8b54cdb28c5e9b8365605f3c8cb97e9c0c8b8ae171f88d10ab45ff53dc7c4ae3
|