{"id":33571665,"url":"https://github.com/stakpak/agent","last_synced_at":"2026-03-12T21:12:53.205Z","repository":{"id":267533477,"uuid":"901554449","full_name":"stakpak/agent","owner":"stakpak","description":"Ship your code, on autopilot. An open source agent that lives on your machines 24/7 and keeps your apps running. 🦀","archived":false,"fork":false,"pushed_at":"2026-02-20T01:31:07.000Z","size":9242,"stargazers_count":992,"open_issues_count":31,"forks_count":102,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-02-20T03:35:37.896Z","etag":null,"topics":["agent","ai-agent","autonomous-agent","devops","devops-agents","devtool","generative-ai","hacktoberfest","infrastructure","llm-agent"],"latest_commit_sha":null,"homepage":"https://stakpak.dev","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stakpak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2024-12-10T21:56:17.000Z","updated_at":"2026-02-20T03:20:09.000Z","dependencies_parsed_at":"2024-12-10T22:29:58.302Z","dependency_job_id":"30ed00ed-73c5-4d6d-b915-5fd0058a5a8f","html_url":"https://github.com/stakpak/agent","commit_stats":null,"previous_names":["stakpak/cli","stakpak/agent"],"tags_count":308,"template":false,"template_full_name":null,"purl":"pkg:github/stakpak/agent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakpak%2Fagent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakpak%2Fagent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakpak%2Fagent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakpak%2Fagent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stakpak","download_url":"https://codeload.github.com/stakpak/agent/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stakpak%2Fagent/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29705826,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-22T05:59:28.568Z","status":"ssl_error","status_checked_at":"2026-02-22T05:58:46.208Z","response_time":110,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","ai-agent","autonomous-agent","devops","devops-agents","devtool","generative-ai","hacktoberfest","infrastructure","llm-agent"],"created_at":"2025-11-28T10:00:36.093Z","updated_at":"2026-02-22T06:01:58.518Z","avatar_url":"https://github.com/stakpak.png","language":"Rust","readme":"\n\n\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource srcset=\"assets/stakpak-light.png\" media=\"(prefers-color-scheme: dark)\"\u003e\n    \u003cimg src=\"assets/stakpak-dark.png\" width=\"400\" /\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eShip your code, on autopilot.\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\nAn open source agent that lives on your machines 24/7, keeps your apps running, and only pings when it needs a human. All the upside of a PaaS, none of the lock-in.\n\u003c/p\u003e\n\n\u003cbr /\u003e\n\n\u003c!-- Badges Section --\u003e\n\u003cp align=\"center\"\u003e\n  \u003c!-- Built With Ratatui --\u003e\n  \u003ca href=\"https://ratatui.rs/\"\u003e\u003cimg src=\"https://ratatui.rs/built-with-ratatui/badge.svg\" /\u003e\u003c/a\u003e\n  \u003c!-- License --\u003e\n  \u003cimg src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square\" /\u003e\n  \u003c!-- Release (latest GitHub tag) --\u003e\n  \u003cimg src=\"https://img.shields.io/github/v/release/stakpak/agent?style=flat-square\" /\u003e\n  \u003c!-- Build CI status (GitHub Actions) --\u003e\n  \u003cimg src=\"https://github.com/stakpak/agent/actions/workflows/ci.yml/badge.svg?style=flat-square\" /\u003e\n  \u003c!-- Downloads (GitHub releases total) --\u003e\n  \u003cimg src=\"https://img.shields.io/github/downloads/stakpak/agent/total?style=flat-square\" /\u003e\n  \u003c!-- Documentation --\u003e\n  \u003ca href=\"https://stakpak.gitbook.io/docs/\"\u003e\u003cimg src=\"https://img.shields.io/badge/Docs-Documentation-0A84FF?style=flat-square\" /\u003e\u003c/a\u003e\n  \u003c!-- Discord Community --\u003e\n  \u003ca href=\"https://discord.gg/QTZjETP7GB\"\u003e\u003cimg src=\"https://img.shields.io/badge/Discord-Join%20Community-5865F2?logo=discord\u0026logoColor=white\u0026style=flat-square\" /\u003e\u003c/a\u003e\n\n:star: Help us reach more developers and grow the Stakpak community. Star this repo!\n\n![til](./assets/stakpak-overview.gif)\n\n\u003c/p\u003e\n\n### Try Stakpak Now\n```bash\ncurl -sSL https://stakpak.dev/install.sh | sh # install Stakpak\nstakpak init # understand your apps and tech stack\nstakpak autopilot up # start the autonomous agent, running 24/7 in the background\n```\n[For more installation options...](https://github.com/stakpak/agent#installation)\n\nYou can't trust most AI agents with your DevOps. One mistake, and your production is toast.\nStakpak is built different:\n- **Secret Substitution** - The LLM works with your credentials without ever seeing them\n- **Warden Guardrails** - Network-level policies block destructive operations before they run\n- **DevOps Playbooks Baked-in** - Curated library of DevOps knowledge in Stakpak Rulebooks\n\nGenerate infrastructure code, debug Kubernetes, configure CI/CD, automate deployments, without giving an LLM the keys to production.\n\n### 🤖 Autopilot (24/7 Autonomous Runtime)\n\nUse the new lifecycle aliases for one-command setup/start/stop:\n\n```bash\nstakpak up        # alias for: stakpak autopilot up\nstakpak down      # alias for: stakpak autopilot down\n```\n\nYou can also use the canonical subcommands:\n\n```bash\nstakpak autopilot up\nstakpak autopilot status\nstakpak autopilot logs\nstakpak autopilot down\nstakpak autopilot doctor\n```\n\n## 🔒 Security Hardened\n\n- **Mutual TLS (mTLS)** - End-to-end encrypted MCP\n- **Dynamic Secret Substitution** - AI can read/write/compare secrets without seeing actual values\n- **Secure Password Generation** - Generate cryptographically secure passwords with configurable complexity\n- **Privacy Mode** - Redacts sensitive data like IP addresses and AWS account IDs\n\n## 🛠️ Built for DevOps Work\n\n- **Asynchronous Task Management** - Run background commands like port forwarding and servers with proper tracking and cancellation\n- **Real-time Progress Streaming** - Long-running processes (Docker builds, deployments) stream progress updates in real-time\n- **Infrastructure Code Indexing** - Automatic local indexing and semantic search for Terraform, Kubernetes, Dockerfile, and GitHub Actions\n- **Documentation Research Agent** - Built-in web search for technical documentation, cloud providers, and development frameworks\n- **Subagents** - Specialized research agents for code exploration and sandboxed analysis with different tool access levels (enabled with `--enable-subagents` flag)\n- **Bulk Message Approval** - Approve multiple tool calls at once for efficient workflow execution\n- **Reversible File Operations** - All file modifications are automatically backed up with recovery capabilities\n\n## 🧠 Adaptive Intelligence\n\n- **Rule Books** - Customize agent behavior with internal standard operating procedures, playbooks, and organizational policies\n- **Persistent Knowledge** - Agent learns from interactions, remembers incidents, resources, and environment details to adapt to your workflow\n\n## Installation\n\n### All installation options (Linux, MacOs, Windows)\n\n[Check the docs](https://stakpak.gitbook.io/docs/get-started/installing-stakpak-cli)\n\n### Homebrew (Linux \u0026 MacOS)\n\n```bash\nbrew tap stakpak/stakpak\nbrew install stakpak\n```\n\nTo update it you can use\n\n```bash\nbrew update\nbrew upgrade stakpak\n```\n\n### Binary Release\n\nDownload the latest binary for your platform from our [GitHub Releases](https://github.com/stakpak/agent/releases).\n\n### Docker\n\nThis image includes the most popular CLI tools the agent might need for everyday DevOps tasks like docker, kubectl, aws cli, gcloud, azure cli, and more.\n\n```bash\ndocker pull ghcr.io/stakpak/agent:latest\n```\n\n## Usage\nYou can [use your own Anthropic or OpenAI API keys](#option-b-running-without-a-stakpak-api-key), [custom OpenAI compatible endpoint](#option-b-running-without-a-stakpak-api-key), or [a Stakpak API key](#option-a-running-with-a-stakpak-api-key).\n\n### Option A: Running with a Stakpak API Key (no card required)\n\nJust run `stakpak` and follow the instructions which will create a new API key for you.\n```bash\nstakpak\n```\n\n\u003e Brave users may encounter issues with automatic redirects to localhost ports during the API key creation flow. If this happens to you:\n\u003e\n\u003e Copy your new key from the browser paste it in your terminal\n\n#### Non-interactive setup (CI/scripts)\n\n```bash\nstakpak auth login --api-key $STAKPAK_API_KEY\n```\n\n#### Or set the environment variable\n\n```bash\nexport STAKPAK_API_KEY=\u003cmykey\u003e\n```\n\n#### View current account (Optional)\n\n```bash\nstakpak account\n```\n\n### Option B: Running Without a Stakpak API Key\n\n#### Non-interactive setup (CI/scripts)\n\n```bash\n# Anthropic\nstakpak auth login --provider anthropic --api-key $ANTHROPIC_API_KEY\n\n# OpenAI\nstakpak auth login --provider openai --api-key $OPENAI_API_KEY\n\n# Gemini\nstakpak auth login --provider gemini --api-key $GEMINI_API_KEY\n```\n\n#### Manual configuration\n\nCreate `~/.stakpak/config.toml` with one of these configurations:\n\n**Option 1: Bring Your Own Keys (BYOK)** - Use your Anthropic/OpenAI API keys:\n```toml\n[profiles.byok]\nprovider = \"local\"\n\n# Model names are auto-detected for built-in providers\nsmart_model = \"claude-sonnet-4-5\"\neco_model = \"claude-haiku-4-5\"\n\n# Built-in providers - credentials can also be set via environment variables\n# (ANTHROPIC_API_KEY, OPENAI_API_KEY, GEMINI_API_KEY)\n[profiles.byok.providers.anthropic]\ntype = \"anthropic\"\napi_key = \"sk-ant-...\"\n\n[profiles.byok.providers.openai]\ntype = \"openai\"\napi_key = \"sk-...\"\n\n[profiles.byok.providers.gemini]\ntype = \"gemini\"\napi_key = \"...\"\n\n[settings]\n```\n\n**Option 2: Bring Your Own LLM** - Use a local OpenAI-compatible endpoint (e.g. Ollama, LM Studio):\n```toml\n[profiles.offline]\nprovider = \"local\"\n\n# Custom provider models use the format: provider_key/model_name\nsmart_model = \"offline/qwen/qwen3-coder-30b\"\neco_model = \"offline/qwen/qwen3-coder-30b\"\n\n# The provider key \"offline\" becomes the model prefix\n[profiles.offline.providers.offline]\ntype = \"custom\"\napi_endpoint = \"http://localhost:11434/v1\"\n# api_key is optional for local providers\n\n[settings]\n```\n\n**Option 3: Mix Built-in and Custom Providers**:\n```toml\n[profiles.hybrid]\nprovider = \"local\"\n\n# Built-in provider - model name auto-detected\nsmart_model = \"claude-sonnet-4-5\"\n# Custom provider - requires provider prefix\neco_model = \"offline/llama3\"\n\n[profiles.hybrid.providers.anthropic]\ntype = \"anthropic\"\n# Uses ANTHROPIC_API_KEY env var\n\n[profiles.hybrid.providers.offline]\ntype = \"custom\"\napi_endpoint = \"http://localhost:11434/v1\"\n\n[settings]\n```\n\nThen run with your profile:\n```bash\nstakpak --profile byok\n# or\nstakpak --profile offline\n# or\nstakpak --profile hybrid\n```\n\n### Start Stakpak Agent TUI\n\n```bash\n# Open the TUI\nstakpak\n# Resume execution from a checkpoint\nstakpak -c \u003ccheckpoint-id\u003e\n```\n\n### Start Stakpak Agent TUI with Docker\n\n```bash\ndocker run -it --entrypoint stakpak ghcr.io/stakpak/agent:latest\n# for containerization tasks (you need to mount the Docker socket)\ndocker run -it \\\n   -v \"/var/run/docker.sock\":\"/var/run/docker.sock\" \\\n   -v \"{your app path}\":\"/agent/\" \\\n   --entrypoint stakpak ghcr.io/stakpak/agent:latest\n```\n\n\n\n### MCP Modes\n\nYou can use Stakpak as a secure MCP proxy or expose its security-hardened tools through an [MCP](https://modelcontextprotocol.io/) server.\n\n#### MCT Server Tools\n\n- **Local Mode (`--tool-mode local`)** - File operations and command execution only (no API key required)\n- **Remote Mode (`--tool-mode remote`)** - AI-powered code generation and search tools (API key required)\n- **Combined Mode (`--tool-mode combined`)** - Both local and remote tools (default, API key required)\n\n#### Start MCP Server\n\n```bash\n# Local tools only (no API key required, mTLS enabled by default)\nstakpak mcp start --tool-mode local\n\n# Remote tools only (AI tools optimized for DevOps)\nstakpak mcp start --tool-mode remote\n\n# Combined mode (default - all tools with full security)\nstakpak mcp start\n\n# Disable mTLS (NOT recommended for production)\nstakpak mcp start --disable-mcp-mtls\n```\n\nAdditional flags for the MCP server:\n\n- `--disable-secret-redaction` – **not recommended**; prints secrets in plaintext to the console\n- `--privacy-mode` – redacts additional private data like IP addresses and AWS account IDs\n- `--enable-slack-tools` – enables experimental Slack tools\n\n#### MCP Proxy Server\n\nStakpak also includes an MCP proxy server that can multiplex connections to multiple upstream MCP servers using a configuration file.\n\n```bash\n# Start MCP proxy with automatic config discovery\nstakpak mcp proxy\n\n# Start MCP proxy with explicit config file\nstakpak mcp proxy --config-file ~/.stakpak/mcp.toml\n\n# Disable secret redaction (NOT recommended – secrets will be printed in logs)\nstakpak mcp proxy --disable-secret-redaction\n\n# Enable privacy mode to redact IPs, account IDs, etc.\nstakpak mcp proxy --privacy-mode\n```\n\n### Agent Client Protocol (ACP)\n\nACP is a standardized protocol that enables AI agents to integrate directly with code editors like Zed, providing seamless AI-powered development assistance.\n\n#### What ACP Offers with Stakpak\n\n- **Real-time AI Chat** - Natural language conversations with context-aware AI assistance\n- **Live Code Analysis** - AI can read, understand, and modify your codebase in real-time\n- **Tool Execution** - AI can run commands, edit files, search code, and perform development tasks\n- **Session Persistence** - Maintains conversation context across editor sessions\n- **Streaming Responses** - Real-time AI responses with live progress updates\n- **Agent Plans** - Visual task breakdown and progress tracking\n\n#### Installation \u0026 Setup\n\n1. **Install Stakpak** (if not already installed)\n2. **Configure Zed Editor** - Add to `~/.config/zed/settings.json`:\n\n```json\n{\n  \"agent_servers\": {\n    \"Stakpak\": {\n      \"command\": \"stakpak\",\n      \"args\": [\"acp\"],\n      \"env\": {}\n    }\n  }\n}\n```\n\n3. **Start ACP Agent**:\n\n```bash\nstakpak acp\n```\n\n4. **Use in Zed** - Click Assistant (✨) → `+` → `New stakpak thread`\n\n### Rulebook Management\n\nManage your standard operating procedures (SOPs), playbooks, and runbooks with Stakpak Rulebooks. Rulebooks customize agent behavior and provide context-specific guidance.\n\n```bash\n# List all rulebooks\nstakpak rulebooks get\n# or use the short alias\nstakpak rb get\n\n# Get a specific rulebook\nstakpak rb get stakpak://my-org/deployment-guide.md\n\n# Create or update a rulebook from a markdown file\nstakpak rb apply my-rulebook.md\n\n# Delete a rulebook\nstakpak rb delete stakpak://my-org/old-guide.md\n```\n\n#### Rulebook Format\n\nRulebooks are markdown files with YAML frontmatter:\n\n```markdown\n---\nuri: stakpak://my-org/deployment-guide.md\ndescription: Standard deployment procedures for production\ntags:\n  - deployment\n  - production\n  - sop\n---\n\n# Deployment Guide\n\nYour deployment procedures and guidelines here...\n```\n\n### Shell Mode\n\nExecute system commands explicitly from the input bar.\n\n[Check the Shell Mode docs](docs/shell_mode.md) for details on background vs foreground execution.\n\n## Platform Testing\n\n### Windows\n\nComprehensive testing report for Windows CLI functionality, including installation, configuration, and integration with WSL2 and Docker.\n\n[View Windows Testing Report](platform-testing/windows-testing-report.md)\n\n---\n\n## ⭐ Like what we're building?\n\nIf our Agent saves you time or makes your DevOps life easier,  \n**consider giving us a star on GitHub — it really helps!**\n\n## [![Star on GitHub](https://img.shields.io/github/stars/stakpak/agent?style=social)](https://github.com/stakpak/agent/stargazers)\n","funding_links":[],"categories":["Runtime","Software Development","💻 Apps"],"sub_categories":["AI Terminal","⌨️ Development Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstakpak%2Fagent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstakpak%2Fagent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstakpak%2Fagent/lists"}