Tools for a Nostr agentic ecosystem
Project description
AgentStr
AgentStr is an extension of Agno AI agents that enables peer-to-peer agent communication using the Nostr protocol.
Overview
AgentStr allows AI agents operated by different organizations to communicate and collaborate. For example:
- Agent A from Company A can coordinate with Agent B from Company B to execute a transaction
- Agents can discover and interact with each other through the decentralized Nostr network
- No central authority or intermediary required
Project Structure
agentstr/
├── src/ # Source code
│ └── agentstr/
│ ├── __init__.py
│ ├── buyer.py
│ ├── buyer.pyi
│ ├── merchant.py
│ ├── merchant.pyi
│ ├── models.py
│ ├── models.pyi
│ ├── nostr.py
│ ├── nostr.pyi
│ └── py.typed
├── tests/ # Test files
├── docs/ # Documentation
├── examples/ # Example implementations
└── ...
Features
Current Features
- Create Merchant agents with Nostr identities:
- Publish and manage merchant products using NIP-15 marketplace protocol
- Create merchant stalls to organize products
- Handle shipping zones and costs
- Secure communication using Nostr keys
- Create Buyer agents:
- Retrieve a list of sellers from the relay using NIP-15 marketplace protocol
- Find an specific seller by name or public key
- Refresh the list of sellers from the relay
Roadmap
- Create marketplace with stalls
- Expand buyer agent to include more features
- Support additional Nostr NIPs
- Add more agent interaction patterns
Installation
# Create a new python environment
python3 -m venv ~/.venvs/aienv
source ~/.venvs/aienv/bin/activate
# Install agentstr
pip install --upgrade pip
pip install agentstr
Examples
You can find example code in the examples directory.
To install the examples clone the repository and navigate to the examples directory:
git clone https://github.com/Synvya/agentstr.git
cd agentstr/examples/
Each example has its own README with instructions on how to run it.
Documentation
For more detailed documentation and examples, see Docs
Development
See CONTRIBUTING.md for:
- Development setup
- Testing instructions
- Contribution guidelines
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Agno - For their AI agent framework
- Rust-Nostr - For their Python Nostr SDK
- Nostr Protocol - For the protocol specification
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 agentstr-0.1.16.tar.gz.
File metadata
- Download URL: agentstr-0.1.16.tar.gz
- Upload date:
- Size: 20.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f7a0661df5466e93153189816b562788d0aafb08561abf38c4e32d748c4c66a
|
|
| MD5 |
73cbbee2f46b8445d7f90f037637a8fd
|
|
| BLAKE2b-256 |
3495f4841f1a9f267d2886d0a85fb9e2942aaa65175162938b9862c8856963b6
|
Provenance
The following attestation bundles were made for agentstr-0.1.16.tar.gz:
Publisher:
publish-package.yml on Synvya/agentstr
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agentstr-0.1.16.tar.gz -
Subject digest:
4f7a0661df5466e93153189816b562788d0aafb08561abf38c4e32d748c4c66a - Sigstore transparency entry: 175780726
- Sigstore integration time:
-
Permalink:
Synvya/agentstr@e2b3fe77d55cad7aeb501cce65715a3b24c27da5 -
Branch / Tag:
refs/tags/v0.1.16 - Owner: https://github.com/Synvya
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-package.yml@e2b3fe77d55cad7aeb501cce65715a3b24c27da5 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file agentstr-0.1.16-py3-none-any.whl.
File metadata
- Download URL: agentstr-0.1.16-py3-none-any.whl
- Upload date:
- Size: 22.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3720e5f95042c638be318812c56a6484673bac9e1ea89ec32544976451f41dd5
|
|
| MD5 |
4068c603f8ce600f32f6894ce1921064
|
|
| BLAKE2b-256 |
2c79170728df32193d3dfcf9702884d533fe01f46e9a1e36efdac3bcb8b73412
|
Provenance
The following attestation bundles were made for agentstr-0.1.16-py3-none-any.whl:
Publisher:
publish-package.yml on Synvya/agentstr
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agentstr-0.1.16-py3-none-any.whl -
Subject digest:
3720e5f95042c638be318812c56a6484673bac9e1ea89ec32544976451f41dd5 - Sigstore transparency entry: 175780728
- Sigstore integration time:
-
Permalink:
Synvya/agentstr@e2b3fe77d55cad7aeb501cce65715a3b24c27da5 -
Branch / Tag:
refs/tags/v0.1.16 - Owner: https://github.com/Synvya
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-package.yml@e2b3fe77d55cad7aeb501cce65715a3b24c27da5 -
Trigger Event:
workflow_dispatch
-
Statement type: