senpi  by code-yeongyu

An extensible agent framework for AI-powered coding and automation

Created 4 months ago
260 stars

Top 97.5% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

This project offers an opinionated, extension-first fork of badlogic/pi-mono, providing a self-extensible coding agent harness. It targets developers and power users seeking a flexible agent framework with multi-provider LLM support and robust tool-calling capabilities, enabling customizable agent environments integrated with various AI models.

How It Works

Core components include @earendil-works/pi-ai for a unified, multi-provider LLM API (OpenAI, Anthropic, Google), @earendil-works/pi-agent-core for agent runtime with tool calling and state management, and @earendil-works/pi-coding-agent for an interactive CLI. Its extension-first design facilitates modular additions, with the runtime managing complex agent logic and state.

Quick Start & Requirements

Install dependencies with npm install --ignore-scripts, then build using npm run build. Tests run via ./test.sh (LLM-dependent tests require API keys) or ./pi-test.sh. LLM API keys are necessary for certain features. Containerization details are at packages/coding-agent/docs/containerization.md.

Highlighted Details

  • Supply-Chain Hardening: Implements rigorous measures including pinning external dependencies, using .npmrc settings (save-exact=true, min-release-age=2), package-lock.json as ground truth, pre-commit hooks, and an allowlist for dependency lifecycle scripts.
  • Session Sharing: Encourages sharing open-source coding agent sessions via badlogic/pi-share-hf to improve agent performance with real-world task data.
  • Flexible Permissions & Isolation: Features a permission system with presets (full-access, workspace, read-only, ask). Containerization options (Gondolin extension, Plain Docker, OpenShell) are provided for stronger isolation.

Maintenance & Community

New contributor issues/PRs auto-closed by default, reviewed daily. Contribution guidelines are in CONTRIBUTING.md and AGENTS.md. Roadmaps are available via RFCs.

Licensing & Compatibility

Licensed under the MIT license, permissive for commercial use and closed-source linking.

Limitations & Caveats

The built-in permission system is not a sandbox and does not restrict the host process. Containerization is recommended for security boundaries. New contributor contributions require manual review after auto-closure.

Health Check
Last Commit

19 hours ago

Responsiveness

Inactive

Pull Requests (30d)
154
Issues (30d)
3
Star History
30 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.