Autonomous AI Coding Agent β No API Key Needed
Forge Agent drives DeepSeek, ChatGPT, or Gemini through browser automation to code, test, and ship software β completely free.
Forge Agent is free and open source. If it saves you time:
- Free β No API key. Uses DeepSeek, ChatGPT, or Gemini's free web UI.
- Autonomous β Reads files, writes code, runs tests. Loops until done.
- Cross-platform β Linux, macOS, Windows, and Docker.
- 50 days built β 37+ tools, 1300+ tests, full docs, security audited.
# npm (recommended)
npm install -g @omar-azam/forge-agent
# Docker (no Node.js required)
docker pull ghcr.io/omar-azam/forge-agent:latest# First time setup
forge-agent --setup
# Run a task
forge-agent "build a REST API with Express and JWT auth"
# Interactive mode β multiple tasks, shared context
forge-agent --interactive
# Short alias
fa "add TypeScript to this project"| Feature | Description |
|---|---|
| π Browser Automation | Drives DeepSeek, ChatGPT, Gemini β no API key |
| π§ 37+ Built-in Tools | File I/O, git, shell, search, tests, packages, diff, env, processes |
| πΎ Persistent Memory | Remembers project tech stack and past tasks |
| π Agent Profiles | default, backend, frontend, data-science, devops |
| π Task Templates | 10 built-in templates β add TypeScript, Jest, Docker in one command |
| π Session Resume | Continue tasks that stopped halfway |
| π Watch Mode | Auto re-run on file changes |
| π Custom Plugins | Drop a .js file to add any tool |
| π Security Sandbox | Blocks SSH keys, credentials, path traversal |
| π³ Docker Ready | Official image, no local Node.js setup needed |
| β‘ Smart Caching | Skips repeated read-only tool calls |
| π Context Compression | Auto-compresses long conversations |
| π Benchmarks | Measure and compare performance |
File: read_file Β· write_file Β· append_to_file Β· replace_in_file Β· delete_file Β· move_file Β· copy_file Β· create_directory Β· list_directory Β· get_file_info Β· write_files
Search: search_in_files Β· search_codebase Β· find_files
Shell: run_command Β· start_process Β· stop_process Β· list_processes Β· read_process_logs
Git: git_status Β· git_log Β· git_diff Β· git_branches Β· git_show Β· git_blame
Dev: run_tests Β· install_package Β· diff_files Β· patch_file
Env: read_env Β· set_env_var Β· delete_env_var Β· list_env_files Β· check_env_vars
System: take_screenshot Β· read_clipboard Β· write_clipboard
forge-agent --profile=backend # Node.js, Python, Go, REST APIs
forge-agent --profile=frontend # React, Vue, HTML/CSS
forge-agent --profile=data-science # Python, pandas, ML
forge-agent --profile=devops # Docker, CI/CD, shell scriptsforge-agent --template=add-typescript # Add TypeScript to any JS project
forge-agent --template=add-jest # Set up Jest testing
forge-agent --template=add-docker # Dockerfile + docker-compose
forge-agent --template=add-github-actions # CI/CD pipeline
forge-agent --template=fix-tests # Run and fix all failing tests
forge-agent --template=code-review # Comprehensive code review
forge-agent --list-templates # See all 10 templatesforge-agent --history # Browse past tasks
forge-agent --resume # Pick and resume a past task
forge-agent --resume=last # Resume most recent task immediately
forge-agent --rerun # Re-run most recent task fresh# Single task
docker run --rm -v "$(pwd):/workspace" --network host \
ghcr.io/omar-azam/forge-agent "build a REST API"
# Interactive
docker run --rm -it -v "$(pwd):/workspace" --network host \
ghcr.io/omar-azam/forge-agent --interactive
# With Make
make run TASK="build a REST API"
make interactive// ~/.deepseek-agent/tools/fetch_weather.js
module.exports = {
name: 'fetch_weather',
description: 'Get current weather for a city',
parameters: { city: { type: 'string', required: true } },
async execute({ city }) {
const https = require('https');
return new Promise((res, rej) => {
https.get(`https://wttr.in/${city}?format=3`, r => {
let d = ''; r.on('data', c => d += c); r.on('end', () => res(d));
}).on('error', rej);
});
},
};forge-agent --list-plugins # see all loaded plugins
forge-agent --new-plugin my_tool # generate a stubforge-agent [OPTIONS] [TASK]
Core: --interactive -i --dir --model --profile --plan --think
Sessions: --resume --rerun --history --no-memory
Templates: --template --list-templates --save-template
Output: --format --output --no-tui --compact
Watch: --watch --watch-pattern --watch-debounce
Performance: --max-iterations --timeout --no-timeout
Plugins: --list-plugins --new-plugin
Config: --setup --config-path
Debug: --debug --headless --diagnostics --security
Help: --help --help=<topic> --cheatsheet --man
Full reference: forge-agent --help or docs/cli-reference.html
// ~/.deepseek-agent/config.json
{
"MODEL": "deepseek",
"MAX_ITERATIONS": 100,
"RESPONSE_TIMEOUT": 600000,
"ACTIVE_PROFILE": "default",
"MEMORY_ENABLED": true,
"CACHE_ENABLED": true
}Run forge-agent --setup for guided configuration.
- π§ 37+ tools built in
- π§ͺ 1300+ tests across 49 suites
- π 13 docs pages including full CLI reference
- π 10 task templates built in
- π‘ 10 example projects in gallery
- βοΈ 40+ CLI flags
- π³ Docker image published
- π Security audited with path sandbox
- π¦ 50 days of development
Full documentation: https://omar-azam.github.io/forge-agent
- Getting Started
- All Tools
- CLI Reference
- Agent Profiles
- Task Templates
- Custom Plugins
- Docker Guide
- Configuration
- Security
- Examples Gallery
See CONTRIBUTING.md for development setup, code style, and how to add new tools.
All contributions welcome: new tools, bug fixes, docs improvements, new templates, plugin examples.
Forge Agent is free and open source. If it saves you time:
- β Star the repo β helps others discover it
- π° Sponsor development
- π’ Share it β post about it, tell your team
- π Report bugs β good reports make it better
- π Improve docs β any PR helps
MIT β see LICENSE