Files
smartagent/readme.hints.md

1.7 KiB

Project Readme Hints

Overview

@push.rocks/smartagent is a dual-agent agentic framework built on top of @push.rocks/smartai. It implements a Driver/Guardian architecture where the Driver proposes tool calls and the Guardian evaluates them against security policies.

Architecture

  • DualAgentOrchestrator: Main entry point, coordinates Driver and Guardian agents
  • DriverAgent: Reasons about tasks, plans steps, proposes tool calls
  • GuardianAgent: Evaluates tool calls against configured policies
  • BaseToolWrapper: Base class for creating custom tools
  • plugins.ts: Imports and re-exports smartai and other dependencies

Standard Tools

  1. FilesystemTool - File operations with scoping and exclusion patterns
  2. HttpTool - HTTP requests
  3. ShellTool - Secure shell commands (no injection possible)
  4. BrowserTool - Web page interaction via Puppeteer
  5. DenoTool - Sandboxed TypeScript/JavaScript execution
  6. JsonValidatorTool - JSON validation and formatting

Key Features

  • Token streaming support (onToken callback)
  • Vision support (pass images as base64)
  • Progress events (onProgress callback)
  • Scoped filesystem with exclusion patterns
  • Result truncation with configurable limits
  • History windowing to manage token usage

Key Dependencies

  • @push.rocks/smartai: Multi-provider AI interface
  • @push.rocks/smartfs: Filesystem operations
  • @push.rocks/smartshell: Shell command execution
  • @push.rocks/smartbrowser: Browser automation
  • @push.rocks/smartdeno: Deno code execution
  • @push.rocks/smartrequest: HTTP requests
  • minimatch: Glob pattern matching for exclusions

Test Structure

  • Tests use @git.zone/tstest/tapbundle
  • Tests must end with export default tap.start();