shadow  by ishaan1013

Background coding agent with a web interface

Created 3 months ago
1,371 stars

Top 29.4% on SourcePulse

GitHubView on GitHub
Project Summary

Shadow is an open-source background coding agent designed for AI to understand, reason about, and contribute to existing codebases. It targets developers and researchers who need automated code analysis, modification, and generation capabilities, offering isolated execution environments for enhanced security and reliability.

How It Works

Shadow utilizes a multi-provider LLM architecture and a robust tool system for interacting with codebases. It supports both local filesystem execution and hardware-isolated execution in Kata QEMU containers for remote deployments. Key features include semantic code search, a memory system for codebase-specific knowledge, and automatic generation of Shadow Wiki documentation.

Quick Start & Requirements

  • Install: git clone <repository-url>, cd shadow, npm install
  • Prerequisites: Node.js 22, PostgreSQL. A GitHub Personal Access Token with repo and read:org scopes is recommended for immediate GitHub integration.
  • Setup: Requires environment variable configuration for database connection, LLM providers, and GitHub tokens. Local PostgreSQL database setup is necessary.
  • Docs: README

Highlighted Details

  • Multi-provider LLM support (Anthropic, OpenAI, OpenRouter).
  • Hardware-isolated execution via Kata QEMU containers in remote mode.
  • Real-time web interface with chat, terminal emulator, and file explorer.
  • Comprehensive toolset for file operations, terminal commands, and code search.
  • Semantic code search and repository-specific memory system.

Maintenance & Community

  • Active development with contributions from Ishaan Dey, Rajan Agarwal, and Elijah Kurien.
  • Links to X (Twitter) for contributors are provided.

Licensing & Compatibility

  • Licensed under the MIT License, permitting open-source use and commercial compatibility.

Limitations & Caveats

Remote mode requires Amazon Linux 2023 nodes for Kata Containers compatibility. The project is presented in a development setup context, and production readiness details are not explicitly stated.

Health Check
Last Commit

1 month ago

Responsiveness

Inactive

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

Explore Similar Projects

Feedback? Help us improve.