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: pip install --user 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.5.1.tar.gz (16.1 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.5.1-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for proto_agent-0.5.1.tar.gz
Algorithm Hash digest
SHA256 5b55b0cef56c11abe458f0da0f14b789b888f2bd003a6a3d6e76fc3182fa1c04
MD5 db6d1edebf07d4b7f449541f2fda1dfb
BLAKE2b-256 30243aae9391a27e01d70d2bd60bd094bcc637dd74eabb0a1f850b5327033786

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for proto_agent-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 293dbf55d2f6a7acaead5d329c5d5dcd7d40494a7af05631db14771510786efd
MD5 9b984730f420276a0da7578144c38068
BLAKE2b-256 2e34879925bb653f2a524c7283387b371ea3521f827c44398e090470cd74f0fc

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