File Matching
60+ built-in globs covering .env, *.pem, *.key, kubeconfig, terraform variables, and other sensitive files.
Security-First · Local Execution · Zero Telemetry
OwnCoder is a security-first AI coding tool. Files are automatically sanitized to remove passwords and keys before being sent to the LLM, with code analysis and indexing done entirely locally—no source upload, no cloud indexing.
Security First
Database passwords, API keys, SSH private keys won't leave your machine just because an agent read a file.
OwnCoder automatically detects and replaces them with *** before sending requests.
60+ built-in globs covering .env, *.pem, *.key, kubeconfig, terraform variables, and other sensitive files.
25+ key format patterns: OpenAI, AWS, GCP, GitHub tokens, database connection strings, JWT, PEM private key blocks, etc.
Recognizes password, secret, token, and environment variable suffixes like *_PASSWORD to reduce leaks.
DB_HOST=localhost
DB_USER=app
DB_PASSWORD=***
OPENAI_API_KEY=***
SSH_PRIVATE_KEY=***
Local-First · No Cloud Index
Analysis, search, embeddings, and experience memory all run on your machine. No "cloud knowledge base" syncing repos to third-party servers.
Unified SQLite + FTS5 index: symbol search, full-text retrieval, experience indexing with incremental scanning respecting .gitignore.
Core Capabilities
Three token optimization strategies: dual-model phased usage, cache hit rate maximization, and getting the LLM to do more and say less.
Principle: Task decomposition consumes fewer tokens but requires strong planning; execution stages involve heavy tool calls and iteration but lower reasoning requirements.
Setup: Use a high-capability model for the Plan phase, then switch to a lighter, more cost-effective model for Agent execution; the two can be freely mixed and matched by budget and quality, with no lock-in to any specific vendor or model.
Impact: Execution stages typically account for 70-80% of total token consumption. Offloading them to cheaper models significantly reduces costs while keeping high-capability models focused on critical decisions.
Principle: Many model providers support prompt caching (Prompt Cache), billing repeated input tokens at lower rates. OwnCoder's prompt assembly strategy is specifically designed for cache optimization.
Implementation: Static content upfront (system prompt + tool definitions, platform info, project rules), dynamic content at the end (user input, task decomposition); fixed portions maintain strict order and format consistency, ensuring cross-turn cache prefix matches.
Impact: System prompts and tool definitions automatically benefit from caching; repeated project context hits 60-80% cache rates. Measured cache hit rates reach 95% (calculated as cached tokens ÷ (input tokens + output tokens), with output tokens included in the denominator), making high-frequency usage more economical.
Principle: Output tokens are typically 2-3× more expensive than input tokens. Getting the LLM to do more work (via tool calls) and say less (fewer explanatory words) dramatically lowers output costs.
Discipline: Key rule is zero-narrative tool calls—default to calling tools directly to complete tasks, outputting no text except tool calls. Forbidden: transitional phrases, plan narration, progress commentary, greetings, explanations; forbidden phrases include "Let me first...", "Now I'll start...", "Next...", "I'll search...", "First I need..."; forbidden: any explanatory text between tool calls.
Get Started
Currently supports Windows primarily. Download the installer from GitHub Releases, configure your own model API in settings, and start coding.
License: PolyForm Noncommercial 1.0.0 (Free for non-commercial use; commercial use requires separate authorization)