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.1.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.1-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: proto_agent-0.6.1.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.1.tar.gz
Algorithm Hash digest
SHA256 c40f628cfb285925f911aca055aa1f29d3ae5fe9729611ee9a5f37031cd2a8c6
MD5 e770c7def2ab1db048355c04b43438e7
BLAKE2b-256 151a67a35c977839b0d61e87cb39c744d832b0772c3941f08ac84db48718d83e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for proto_agent-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b47a372102bb8ae8b8f6ab508efc069c8c913ea35e65ebe29af78a0b2535c14d
MD5 7cb1b9d1a6a25d448bbb608e89a93cc0
BLAKE2b-256 23012eb2733af5f57180a80ae4423f445a8abc7d09a263315462e7537982ce31

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