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.6.0.tar.gz (16.2 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.6.0-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for proto_agent-0.6.0.tar.gz
Algorithm Hash digest
SHA256 c2990a6704316664f77e49019691c8ce484cce15729b33be7bc6ba877afec176
MD5 01afba3ab32cbce5c1c42a07c668321a
BLAKE2b-256 cd2faed86bb5ca4d2361083f803ef9247f3882cdde994878273f5264ae5eda4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for proto_agent-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f96b99d9c73b5e67ccf14e1067abcbd287590b72a9cf766dc4fab53f91788f86
MD5 48bd83dfae1f10723924ec40d160347f
BLAKE2b-256 f873bf2660ece52b2b5bef8dfc6e3d34e495a6f39c0e672ea227614072ec96ef

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