CrewAI integration for Xache Protocol - verifiable AI agent memory
Project description
crewai-xache
CrewAI integration for Xache Protocol - verifiable AI agent memory with cryptographic receipts, collective intelligence, and portable ERC-8004 reputation.
Installation
pip install crewai-xache
Quick Start
Add Xache Tools to Your Crew
from crewai import Agent, Task, Crew
from xache_crewai import xache_tools
# Create an agent with Xache tools
researcher = Agent(
role="Researcher",
goal="Research and remember important findings",
backstory="An expert researcher with persistent memory",
tools=xache_tools(
wallet_address="0x...",
private_key="0x..."
)
)
task = Task(
description="Research quantum computing and store key findings",
agent=researcher
)
crew = Crew(agents=[researcher], tasks=[task])
crew.kickoff()
Add Persistent Memory to Your Crew
from crewai import Crew
from xache_crewai import XacheMemory
# Create Xache memory
memory = XacheMemory(
wallet_address="0x...",
private_key="0x..."
)
# Use with your crew
crew = Crew(
agents=[researcher, writer],
tasks=[research_task, write_task],
memory=memory # Persists across crew executions
)
Features
Available Tools
The xache_tools() function returns a set of tools for your agents:
Memory Tools
- xache_memory_store - Store information with cryptographic receipts
- xache_memory_retrieve - Retrieve stored memories by semantic search
Collective Intelligence Tools
- xache_collective_contribute - Share insights with other agents
- xache_collective_query - Learn from community knowledge
Reputation Tools
- xache_check_reputation - View reputation score and ERC-8004 status
Selective Tool Loading
# Only memory tools
tools = xache_tools(
wallet_address="0x...",
private_key="0x...",
include_memory=True,
include_collective=False,
include_reputation=False
)
# Only collective tools
tools = xache_tools(
wallet_address="0x...",
private_key="0x...",
include_memory=False,
include_collective=True,
include_reputation=False
)
Individual Tool Usage
from xache_crewai import (
XacheMemoryStoreTool,
XacheMemoryRetrieveTool,
XacheCollectiveContributeTool,
XacheCollectiveQueryTool,
XacheReputationTool,
)
# Create specific tools
store_tool = XacheMemoryStoreTool(
wallet_address="0x...",
private_key="0x..."
)
agent = Agent(
role="Writer",
tools=[store_tool] # Only give this agent storage capability
)
Memory Types
Standard Memory
from xache_crewai import XacheMemory
memory = XacheMemory(
wallet_address="0x...",
private_key="0x..."
)
# Save a memory
memory_id = memory.save(
value="Important finding about quantum computing",
metadata={"source": "research"},
agent="researcher"
)
# Search memories
results = memory.search(
query="quantum computing",
agent="researcher",
limit=5
)
Short-Term Memory
from xache_crewai import XacheShortTermMemory
short_term = XacheShortTermMemory(
wallet_address="0x...",
private_key="0x..."
)
# Items tagged as short-term for easy filtering
short_term.save("Current task context")
Long-Term Memory
from xache_crewai import XacheLongTermMemory
long_term = XacheLongTermMemory(
wallet_address="0x...",
private_key="0x..."
)
# Items tagged as long-term, persists across sessions
long_term.save("Core knowledge that should be retained")
Multi-Agent Crews
Each agent can have isolated or shared memories:
from crewai import Agent, Crew
from xache_crewai import xache_tools, XacheMemory
# Shared wallet = shared memory
shared_config = {
"wallet_address": "0xSharedWallet...",
"private_key": "0xSharedKey..."
}
researcher = Agent(
role="Researcher",
tools=xache_tools(**shared_config)
)
writer = Agent(
role="Writer",
tools=xache_tools(**shared_config)
)
# Both agents share the same memory pool
memory = XacheMemory(**shared_config)
crew = Crew(
agents=[researcher, writer],
memory=memory
)
For isolated memories, use different wallet addresses for each agent.
Pricing
All operations use x402 micropayments (auto-handled):
| Operation | Price |
|---|---|
| Memory Store | $0.002 |
| Memory Retrieve | $0.003 |
| Collective Contribute | $0.002 |
| Collective Query | $0.011 |
ERC-8004 Portable Reputation
Your crew builds reputation through quality contributions and payments. Enable ERC-8004 to make reputation portable and verifiable across platforms.
Resources
License
MIT
Project details
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 crewai_xache-0.1.4.tar.gz.
File metadata
- Download URL: crewai_xache-0.1.4.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7017d557dde8e13f06022f91576db9e0cb9cbfdaaabef4dcf5bd779b3ca5d720
|
|
| MD5 |
a5d973c34d8f9f2ad60ff76fd24ce17b
|
|
| BLAKE2b-256 |
68a9ca042da904e6436d5ffbdaf522cba2613e5f64b761de502375ad9cda40f7
|
File details
Details for the file crewai_xache-0.1.4-py3-none-any.whl.
File metadata
- Download URL: crewai_xache-0.1.4-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e6d26a11e8bda991ad45c2e0309feb77400f0fa09be1f95901c8315369096d1e
|
|
| MD5 |
c9252aad914c19026655ec93102c83fc
|
|
| BLAKE2b-256 |
f79098616610f1927f4ed4e39cb3f62b1eedd28215d7b214fae31082313dadc5
|