Skip to main content

A modular AI agent framework that can also be your local CLI agent!

Project description

Proto-Agent

An educational AI agent framework demonstrating capability-based security and modular toolkit architecture. Built for learning secure AI agent patterns with human oversight and permission controls.

Features

  • Capability-based security with granular permission controls
  • CLI tool with human-in-the-loop approval for dangerous operations
  • Python framework for building custom agents with programmatic control
  • Modular toolkits for file operations, system monitoring, and version control
  • Educational focus - clear, readable code demonstrating AI agent security patterns

Quick Start

Installation

pip install proto-agent 
# or if you prefer the cli to be used from anywhere
uv tool install proto-agent  # Recommended
# or using pipx
pipx install proto-agent

Configuration

proto-agent --help # View CLI options, which include your config path for your OS 
# Example config path for Linux: ~/.config/proto-agent/ will have .env file and config.toml 

For Model configuration, please refer to the Litellm documentation for your exact name of the model you want to use.

CLI Usage

# Safe read-only analysis
proto-agent "Analyze this codebase structure" ./my_project --read-only

# Interactive execution with approval prompts
proto-agent "Run the test suite" ./my_project
# Prompts: "Allow execution of function 'run_python_file'? (y/N):"

Framework Usage

from proto_agent import Agent, AgentConfig
from proto_agent.tool_kits import FileOperationToolkit

# Autonomous mode - no human approval needed
agent = Agent(AgentConfig(
    api_key="your_api_key",
    working_directory="./my_project",
    tools=[FileOperationToolkit(
        enable_read=True,
        enable_write=False,    # Disable risky operations
        enable_execute=False
    ).tool]
))

response = agent.generate_content("Analyze this project's structure")
print(response.text)

Key Concepts

  • CLI Mode: Interactive approval prompts for dangerous operations
  • Framework Mode: Full programmatic control over permissions
  • Capability Flags: Enable/disable specific operations per toolkit
  • Human Oversight: Configurable approval gates for security

Available Toolkits

  • 📁 FileOperationToolkit: File reading, writing, and execution
  • 💻 SystemInfoToolkit: System monitoring and resource information
  • 🔧 GitToolkit: Version control operations with safety controls

Documentation

Educational Goals

Proto-Agent prioritizes learning and security over performance:

  • Demonstrates secure AI agent design patterns
  • Shows human-in-the-loop safety controls
  • Provides clear, modular architecture examples
  • Emphasizes permission-based security models

Perfect for developers learning about AI agents, security patterns, or needing a foundation for experimentation.

License

MIT License - see LICENSE file for details.


⭐ Star the repo to support educational AI agent development!

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

proto_agent-0.7.1.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

proto_agent-0.7.1-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file proto_agent-0.7.1.tar.gz.

File metadata

  • Download URL: proto_agent-0.7.1.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for proto_agent-0.7.1.tar.gz
Algorithm Hash digest
SHA256 2df24fc6edbcf8cbb651cb527d90686c8a6ae5e428265b239d7f27e3d6b511e5
MD5 f53e98464d7fe8be2e5ad19c19ef0c91
BLAKE2b-256 d76398581adc2c6889d0e92d176b1cb2c439a6f00249c30b2225f9a807b68d2b

See more details on using hashes here.

File details

Details for the file proto_agent-0.7.1-py3-none-any.whl.

File metadata

File hashes

Hashes for proto_agent-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 976bf2d87fcc7465395d2f99475291399c972322de828de52f005d45d0358e80
MD5 a19386f442111bfe07dcee9df3166906
BLAKE2b-256 46abec5459947c4c1d41b85ee43e02349c9893266f1d0f7c1cf70407d84c1a03

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page