{"id":51704456,"url":"https://github.com/manishiitg/coding-agent-loop","last_synced_at":"2026-07-16T14:05:31.852Z","repository":{"id":318740043,"uuid":"1075906855","full_name":"manishiitg/coding-agent-loop","owner":"manishiitg","description":"AgentWorks: the open-source control plane for running, measuring, and improving AI agent workflows across your company.","archived":false,"fork":false,"pushed_at":"2026-07-14T04:22:48.000Z","size":219139,"stargazers_count":6,"open_issues_count":19,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-14T05:23:39.551Z","etag":null,"topics":["agent-framework","agent-orchestration","ai-agents","ai-workflows","automation","claude-code","codex","coding-agents","golang","llm","mcp","model-context-protocol","multi-agent","workflow-automation","workflow-engine"],"latest_commit_sha":null,"homepage":"https://agentworkshq.com/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/manishiitg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-14T06:38:32.000Z","updated_at":"2026-07-14T04:22:51.000Z","dependencies_parsed_at":"2025-10-14T20:14:17.918Z","dependency_job_id":null,"html_url":"https://github.com/manishiitg/coding-agent-loop","commit_stats":null,"previous_names":["manishiitg/mcp-agent-builder-go","manishiitg/coding-agent-loop"],"tags_count":134,"template":false,"template_full_name":null,"purl":"pkg:github/manishiitg/coding-agent-loop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manishiitg%2Fcoding-agent-loop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manishiitg%2Fcoding-agent-loop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manishiitg%2Fcoding-agent-loop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manishiitg%2Fcoding-agent-loop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/manishiitg","download_url":"https://codeload.github.com/manishiitg/coding-agent-loop/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manishiitg%2Fcoding-agent-loop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35546292,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-16T02:00:06.687Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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-framework","agent-orchestration","ai-agents","ai-workflows","automation","claude-code","codex","coding-agents","golang","llm","mcp","model-context-protocol","multi-agent","workflow-automation","workflow-engine"],"created_at":"2026-07-16T14:05:31.124Z","updated_at":"2026-07-16T14:05:31.843Z","avatar_url":"https://github.com/manishiitg.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 AgentWorks\n\n**AgentWorks** is an AI operations platform for running many autonomous workflows like an organization. Define goals, build workflow agents, run them on schedules, and let Pulse, Auto-improve, Chief of Staff, and the dashboard help you manage by exception instead of watching logs.\n\n[![Latest Release](https://img.shields.io/github/v/release/manishiitg/coding-agent-loop?label=release)](https://github.com/manishiitg/coding-agent-loop/releases/latest)\n![macOS Apple Silicon](https://img.shields.io/badge/macOS-Apple%20Silicon-000000?logo=apple)\n![Installer](https://img.shields.io/badge/install-curl%20%7C%20bash-2ea44f)\n[![MIT License](https://img.shields.io/badge/license-MIT-green.svg)](#license--architecture-foundations)\n\n## The Goal\n\nAgentWorks is built for teams that want to scale from a few manually checked automations to **100+ goal-driven workflow agents**. The product is an operating system for an AI-run organization:\n\n- **Workflows do the work**: reusable agents execute research, coding, reporting, browser tasks, back-office operations, and channel conversations.\n- **Pulse keeps each workflow reliable**: after runs, it checks whether the workflow actually worked, records Bug/Goal verdicts, hardens operational issues, reports cost/time, backs up, publishes, and notifies only on meaningful transitions.\n- **Auto-improve moves workflows toward goals**: on a schedule, it reads cross-run evidence, refreshes stale reports/learnings/KB/db contracts, adjusts cadence, and applies bigger changes only when evidence is strong and backed up.\n- **Chief of Staff / Org Pulse manages the whole org**: it reads workflow evidence against `pulse/goals.html`, audits model/cost posture, harvests durable memory, and writes proposal-only recommendations for the user or builder.\n- **The dashboard is the operating view**: it rolls workflow health, goal progress, costs, recommendations, and exceptions into one place so a human manages decisions, not every run.\n\nThe high-level loop is documented in [Workflow self-improvement \u0026 reporting](docs/workflow/self_improvement_and_reporting.md).\n\n## Product Screenshots\n\n**Workflow automation: plan, run, report, and supervise**\n\n![AgentWorks workflow automation walkthrough](docs/assets/github/workflow-automation-demo.gif)\n\n**Operating loop: Pulse, Auto Improve, Chief of Staff, and org goals**\n\n![AgentWorks operating loop walkthrough](docs/assets/github/operating-loop-demo.gif)\n\n**Multi-CLI coding agents: Claude Code, Codex CLI, Cursor CLI, and Pi.dev**\n\n![AgentWorks multi-CLI coding agent management](docs/assets/github/multi-cli-management-demo.gif)\n\n**Workflow automation workspace**\n\n![AgentWorks automation workspace](docs/assets/github/01-automation-workspace.png)\n\n**Chief of Staff and Org Pulse**\n\n![AgentWorks Chief of Staff](docs/assets/github/02-chief-of-staff.png)\n\n**Goal-driven operations**\n\n![AgentWorks org goals](docs/assets/github/03-org-goals.png)\n\n**Daily operating pulse**\n\n![AgentWorks org pulse](docs/assets/github/04-org-pulse.png)\n\n## 💻 Desktop App (macOS)\n\nA standalone macOS app is available — no Docker, no manual server setup. Each release is published at [Releases](https://github.com/manishiitg/coding-agent-loop/releases/latest).\n\nRename note: the public product and macOS bundle are **AgentWorks** and the GitHub repository is `coding-agent-loop`. New desktop releases use `AgentWorks-*` filenames. The historical local data directory is retained so existing local workflows remain available. The former `mcp-agent-builder-go` repository URL redirects to this repository but should not be used in new documentation.\n\n### Install (one-liner — recommended)\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/manishiitg/coding-agent-loop/main/install.sh | bash\n```\n\nDownloads the latest dmg, installs the Mac app to `/Applications`, ensures the MCP bridge used by Claude Code/Codex tool access is installed to `~/go/bin`, strips the macOS quarantine flag (no \"damaged\" warning), and launches the app. If Go is missing, the installer installs Go through Homebrew when available; otherwise it asks you to install Go and rerun the same curl command. Pin a specific version with `RUNLOOP_VERSION=v1.25.6 curl -fsSL … | bash`.\n\n### Install manually\n\n1. Download the `AgentWorks-\u003cversion\u003e-arm64.dmg` file from the latest release.\n2. Open the dmg, drag the app to Applications.\n\n### First-launch error: *\"AgentWorks is damaged and can't be opened\"*\n\nThe current build is **unsigned and not notarized**, so macOS Gatekeeper flags it on download. The app itself is fine — you just need to clear the quarantine flag macOS automatically attaches to downloaded files.\n\n**Recommended — Terminal (works on all macOS versions):**\n```bash\nxattr -cr /Applications/AgentWorks.app\n```\nFor an older release that is still installed under the legacy name, use:\n```bash\nxattr -cr /Applications/Runloop.app\n```\nThen double-click the app. If macOS still complains, also strip the dmg you downloaded:\n```bash\nxattr -cr ~/Downloads/AgentWorks-*.dmg\n```\n`sudo` is **not** needed — you own the app since you dragged it into Applications.\n\n**System Settings (sometimes works, depends on macOS version):**\nFor \"damaged\" verdicts on Sequoia/Tahoe, macOS often hides the \"Open Anyway\" button entirely, so this path frequently doesn't appear. If it does:\n1. Open **System Settings → Privacy \u0026 Security**.\n2. Scroll to the Security section. If you see *\"AgentWorks was blocked from use…\"* with an **Open Anyway** button, click it.\n3. Confirm in the dialog. macOS remembers the decision.\n\nIf the button isn't there, fall back to the `xattr` command above.\n\n### First-launch UX\n\nOn first run the app prompts for two things:\n1. **Workspace folder** — pick where your `workspace-docs/` lives (skills, configs, schedules, WhatsApp DB, encrypted provider keys). Defaults to `~/Library/Application Support/runloop-desktop/workspace-docs/`.\n2. **AUTH_SECRET** — the secret used to encrypt `provider-api-keys.json`. If you're moving from a previous setup, enter the same secret you used there. Otherwise pick a strong value and remember it (you'll need it on every machine that opens this workspace).\n\nAfter that, add provider API keys (OpenAI, Gemini, Anthropic, etc.) through the in-app provider auth flow. They are encrypted at rest in `\u003cworkspace-docs\u003e/config/provider-api-keys.json`.\n\n### Why no signing?\n\nCode signing + Apple notarization requires an Apple Developer ID ($99/yr) and is on the roadmap. Until then, the manual quarantine step is unavoidable on first install.\n\n---\n\nRun **Claude Code, Codex, Pi, and open models** in one system. Build visual workflows, launch complex orchestrators, schedule recurring jobs, route agent conversations through **Slack, WhatsApp, and the web**, and roll their progress up against org goals.\n\nAgentWorks is built for teams that want more than a chat box:\n- Build visual agent workflows and long-running orchestrators\n- Mix and match the best coding and reasoning models for each step\n- Schedule automations, recurring jobs, and background runs\n- Track workflow progress against real goals, not just task completion\n- Manage failures, cost, and improvement opportunities by exception\n- Keep humans in the loop with approvals, feedback, and escalation paths\n- Connect agents to Slack, WhatsApp, browsers, and MCP tools\n\n## Why AgentWorks\n\n- **Goal-driven operations**: Tie workflows to measurable goals, then let Pulse, Auto-improve, and Org Pulse keep the evidence and recommendations current.\n- **Multi-model by default**: Use Claude Code, Codex, Pi, OpenAI, Anthropic, Bedrock, Azure, MiniMax, OpenRouter, and open models in the same platform.\n- **Visual workflows plus real execution**: Design workflows on a canvas, then run them with tools, browser automation, memory, and evaluation built in.\n- **Manage by exception**: The dashboard surfaces broken, off-goal, expensive, or decision-worthy work so operators do not need to inspect every run.\n- **Built for operations, not demos**: Add scheduling, observability, validation, approvals, and secure workspace isolation from day one.\n- **Protocol-agnostic in practice**: MCP is supported, but AgentWorks is broader than any single protocol, provider, or model vendor.\n\n## What You Can Build\n\n- **Coding workflows** that delegate across Claude Code, Codex, Pi, and open-source coding models\n- **Scheduled automations** for research, support, reporting, or back-office operations\n- **Human-in-the-loop agents** that pause for approvals, 2FA codes, or operator feedback\n- **Slack and WhatsApp agents** that continue conversations outside the dashboard\n- **Browser-powered workflows** that log in, click through apps, collect data, and complete tasks\n\n## Flagship Examples\n\n- **[Deep Research Agent](examples/README.md#1-deep-research-agent)**: source collection, evidence review, pricing/benchmark analysis, and report generation.\n- **[AI Software Engineer Workflow](examples/README.md#2-ai-software-engineer-workflow)**: planner, coder, reviewer, and tester agents producing a patch plus validation notes.\n- **[E-commerce Operations Agent](examples/README.md#3-e-commerce-operations-agent)**: catalog/support review with policy checks, recommended actions, and human approval.\n\nSee [examples](examples/README.md) for workflow blueprints, output artifacts, and a README demo GIF storyboard.\n\nSee the [public roadmap](ROADMAP.md) for upcoming work on onboarding, memory-aware multi-agent chat, workflow notifications, Agent SDK support, Pi CLI, and goal/dashboard refinements.\n\n## Works With\n\n### Coding and LLM Models\n\n- **Claude Code** via the `@anthropic-ai/claude-code` CLI experimental mode\n- **Codex-style agentic models** through OpenAI and Azure AI Foundry\n- **Pi CLI** for Gemini and open-model coding workflows\n- **Pi CLI** via `@earendil-works/pi-coding-agent` with Pi provider/model IDs\n- **Open-source and frontier models** through OpenRouter, Bedrock, Vertex AI, and direct provider integrations\n\n### Channels, Tools, and Connectors\n\n- **Slack**, **WhatsApp**, and custom webhook-based chat surfaces\n- **Browser automation** through Vercel Agent-Browser with headless and local CDP modes\n- **MCP servers**, local tools, workspace files, and custom connectors\n\n## Why Teams Choose It\n\n- Replace brittle prompt chains with durable workflows\n- Use the right model for the right step instead of standardizing on one vendor\n- Bring coding agents, operational automations, and human approvals into one system\n- Ship agent workflows that can be monitored, evaluated, improved, and rolled up against org goals over time\n\n## ⚡ Platform Overview\n\nAt the core of AgentWorks is the **[workflow system](docs/workflow/README.md)**, a directed step-based workflow runtime managed through the visual workflow builder and supervised by the self-improvement/reporting layer.\n\nDesign complex workflows visually, refine them through the interactive builder, run them with step-level configuration, tiered LLM selection, deterministic pre-validation, evaluation runs, scheduling, cost tracking, and persistent run data, then let Pulse, Auto-improve, Org Pulse, and the dashboard keep the system aligned with goals.\n\n### 🧠 Learning, Validation, and Observability\nMove beyond static prompts with built-in optimization, validation, and run visibility.\n\n- **[Learning Architecture](docs/workflow/learning_architecture.md):** Workflow learning now centers on a shared global skill plus step-level metadata and saved scripts for scripted steps.\n- **[Deterministic Pre-Validation](docs/workflow/pre_validation_guide.md):** A high-speed, code-based validation layer that uses JSON schemas and consistency rules to verify artifacts with zero token cost and absolute precision.\n- **[Evaluation \u0026 Benchmarking](docs/workflow/evaluation_system.md):** A dedicated testing suite that executes workflows in isolated environments to generate performance, cost, and accuracy metrics—essential for production readiness.\n- **[Pulse Log \u0026 Observability](docs/workflow/workflow_monitoring.md):** Every workflow keeps one agent-curated HTML log — the **Pulse** — with two live verdicts (**Bug**: did it run correctly; **Goal**: is it hitting its success criteria), a one-line status headline, signal tiles, and a newest-first timeline of findings, decisions, cost/time reports, backups, publishes, and notifications.\n- **[Self-Improving Workflows](docs/workflow/auto_improvement_framework.md):** Auto-improve reads the same Pulse evidence across runs, keeps reports/learnings/KB/db contracts fresh, tunes its own cadence, and applies structural replans only when cross-run evidence is strong and backed up, or records proposals when oversight is more cautious.\n- **[Chief of Staff, Org Pulse, and Dashboard](docs/workflow/self_improvement_and_reporting.md):** Org Pulse reads workflow evidence against org goals, audits model/cost posture, writes proposal-only recommendations, and feeds a dashboard that lets operators manage by exception across many workflows.\n- **[Cost and Log Measurement](docs/workflow/cost_and_log_measurement.md):** Token usage, model cost, and execution logs are tracked across workflow phases, runs, steps, and models.\n- **[Persistent Stores](docs/workflow/persistent_stores_design.md):** Workflows can persist structured run data for reports, knowledgebase updates, and follow-up analysis.\n- **[Swarm Delegation](docs/multiagent/sub_agent_delegation.md):** Empower your primary agent to dynamically spawn independent sub-agents, parallelizing complex research, coding, or data extraction tasks across a distributed swarm.\n- **[Task Orchestration](docs/workflow/todo-task-step-type.md):** Intelligent sub-task routing that manages state, dependencies, and context windows automatically.\n\n### 🛡️ Security and Guardrails\nDeploy with deterministic controls designed for strict environments.\n- **[FolderGuard](docs/core/folder_guard_system.md):** Runtime read/write validation wraps workspace tools so agents only touch the folders each mode or step is allowed to access.\n- **[Multi-User Authentication \u0026 Workspace Isolation](docs/core/multi_user_authentication.md):** Per-user workspace isolation, user-scoped paths, and sandboxed shell execution protect users from cross-tenant contamination.\n- **[Secrets](docs/core/secrets.md):** Securely inject credentials into agent queries, workflow steps, and delegated agents without exposing them in chat history or logs.\n- **[Restricted Configuration Mode](docs/core/env-api-key-defaults.md):** Optionally lock provider/model configuration so the server uses environment-injected API keys (`LLM_CONFIG_LOCKED`) and secrets never reach the browser.\n- **[Secure MCP OAuth](docs/core/oauth.md):** Seamless, auto-discovering OAuth 2.0 flows for connecting enterprise MCP servers safely.\n\n### 👁️ Automation, Connectors, and Browser Control\nConnect agents to real systems and communication channels.\n- **[Vercel Agent-Browser](https://github.com/vercel-labs/agent-browser):** High-level browser automation engine used for complex web interactions, DOM analysis, and visual grounding.\n- **[Browser System](docs/core/browser.md):** Covers browser session management, runtime limits, and browser integration patterns across providers.\n- **[Bot Connectors](docs/core/bot_connector_system.md):** Expose specialized agent sessions through Slack, WhatsApp, the web simulator, and custom connector surfaces.\n- **[Workflow Scheduling](docs/workflow/workflow_scheduling.md):** Run workflows on recurring schedules with history, routing, and run-state tracking.\n- **[Native Workspace Mode](docs/core/native_workspace_mode.md):** Run workspace operations directly against local folders when native execution is preferred over containerized workspace mode.\n\n### 🤝 Human-in-the-Loop Operations\nKeep operators involved when workflows need approval, intervention, or additional input.\n\n- **[Human Feedback System](docs/workflow/human_feedback_system.md):** Agents can pause execution to request explicit approval, 2FA codes, or strategic guidance via real-time browser notifications or the visual dashboard.\n- **[Slack Human Connector](docs/workflow/human_feedback_system.md#slack-configuration):** \n    - **Smart Delayed Notifications**: If a user doesn't respond in the UI within 2 minutes, the orchestrator automatically pings a configured Slack channel.\n    - **Threaded Conversations**: Users can reply directly in the Slack thread to provide the required information, which is then fed back to the agent's context in real-time.\n    - **Multi-User Collaboration**: Entire teams can monitor agent progress and intervene via Slack without ever opening the dashboard.\n\n---\n\n### 🧩 LLM Configuration and Providers\n\nAgentWorks is provider-agnostic. Users configure published LLMs in the UI, then assign them to chat sessions, workflow phases, and workflow tiers.\n\n- **[LLM Configuration \u0026 Resilience](docs/core/llm_configuration_and_resilience.md):** Published LLMs carry provider, model, and model-specific options; provider authentication is stored separately.\n- **[Tiered LLM Allocation](docs/workflow/tiered_llm_allocation.md):** Workflow steps can use tiered model selection, with separate phase LLM configuration for planning, builder, evaluation, and debugging-style phase work.\n- **[Azure AI Foundry](docs/core/azure_foundry_integration.md):** Azure OpenAI and Responses API routing are supported for newer agentic model deployments.\n- **[Environment-Based Defaults](docs/core/env-api-key-defaults.md):** Optional defaults and locked server-side configuration are available for managed deployments.\n- Providers include OpenAI-compatible endpoints, Anthropic, Google Gemini/Vertex, AWS Bedrock, Azure AI Foundry, MiniMax, OpenRouter, and local/CLI-backed agent integrations.\n\n#### 🛠️ Local CLI Agents\nBring your existing CLI-based coding agents into the visual orchestrator via the **[MCP Bridge Layer](docs/core/mcp_bridge_layer.md)**:\n*   **Claude Code**: Native integration with the `@anthropic-ai/claude-code` CLI through experimental interactive sessions.\n*   **Pi CLI**: Multi-provider coding-agent integration, including Gemini models.\n*   **State Persistence**: Support for `--resume` functionality, allowing the visual orchestrator to maintain long-running coding sessions across CLI restarts.\n\n---\n\n## 🚀 Quick Start (Local Development)\n\n### 1. Prerequisites\n\n- Go 1.24+\n- Node.js 20+ and npm\n- Optional local tools depending on what you enable: Claude Code, Pi, Codex-compatible CLIs, browser tooling, AWS/GCP CLIs, etc.\n\n### 2. Clone and Configure\n\n```bash\ngit clone https://github.com/manishiitg/coding-agent-loop.git\ncd coding-agent-loop\ncp agent_go/env.example agent_go/.env\n```\n\nEdit `agent_go/.env` for local app/runtime settings if needed. LLM providers and API keys are configured from the app UI after startup, not by editing the README examples into `.env`.\n\nInstall dependencies:\n\n```bash\ncd frontend\nnpm ci\n\ncd ../agent_go\ngo mod download\n```\n\n### 3. Run Everything Locally\n\nStart the backend, workspace API, frontend, and Electron with one command from `agent_go/`:\n\n```bash\ncd agent_go\n./run_server_with_logging.sh --with-workspace --with-frontend\n```\n\nDefault local ports:\n\n| Service | Default URL |\n| --- | --- |\n| Agent API | `http://localhost:18743` |\n| Workspace API | `http://localhost:18744` |\n| Frontend | `http://127.0.0.1:51733` |\n\nThe runner prefers these ports. If a port is already occupied, it picks the next available port and prints the final URL. Logs are written to `agent_go/logs/`.\n\n### 4. Frontend-Only Development\n\nUse this when the backend and workspace API are already running:\n\n```bash\ncd agent_go\n./run_server_with_logging.sh --only-frontend\n```\n\nThis starts Vite plus Electron. It reads `AGENT_PORT` and `WORKSPACE_PORT` from `frontend/public/runtime-config.js` when that file already exists.\n\n### 5. Frontend Build Mode\n\nUse this to run the frontend like a production static build, without Vite hot reload:\n\n```bash\ncd agent_go\n./run_server_with_logging.sh --only-frontend --build\n```\n\nThis builds `frontend/`, serves the static output on the frontend port, and launches Electron against that static server.\n\nYou can override ports explicitly:\n\n```bash\nAGENT_PORT=18743 WORKSPACE_PORT=18744 FRONTEND_PORT=51733 ./run_server_with_logging.sh --only-frontend --build\n```\n\n### 6. Stop and Restart Cleanly\n\nWhen the runner is in the foreground, press `Ctrl+C`. The script stops child processes and prints which ports were released.\n\nIf startup says a port is still busy, inspect it:\n\n```bash\nlsof -nP -iTCP:51733 -sTCP:LISTEN\nlsof -nP -iTCP:18743 -sTCP:LISTEN\nlsof -nP -iTCP:18744 -sTCP:LISTEN\n```\n\n### 7. Debug Local API Traffic\n\nBackend request logs are written under `agent_go/logs/`. The server logs API start/end lines, including status code and duration, which is useful when the frontend appears stuck or too many requests are firing at once.\n\nUseful checks:\n\n```bash\ncurl -fsS http://localhost:18743/api/health\ncurl -fsS http://localhost:18744/api/health\n```\n\n### 8. Validation Commands\n\n```bash\n# Backend compile check\ncd agent_go\ngo test ./cmd/server -run '^$'\n\n# Frontend type check\ncd frontend\n./node_modules/.bin/tsc -b\n```\n\n---\n\n## ☁️ Production Deployment Topologies\n\nDeploy your agentic infrastructure where it makes sense for your security posture.\n\n### **1. Azure Virtual Machine (Maximum Security Isolation)**\nThe recommended topology for enterprise deployments. Leverages Azure VMs to utilize deep Linux kernel features (namespaces, `unshare`) for absolute filesystem isolation between agent runs.\n```bash\ncd deploy/azure/terraform\nterraform init \u0026\u0026 terraform apply\ncd .. \u0026\u0026 ./deploy_vm.sh \u003cVM_IP_ADDRESS\u003e all\n```\n\u003e **[Read the Azure VM Deployment Blueprint](deploy/azure/README.md)**\n\n### **2. Kubernetes (High-Availability Swarms)**\nDesigned for massive scale and resilience using standard Helm-like manifests.\n```bash\n./deploy/k8s/scripts/deploy-k8s.sh --build\n```\n\u003e **[Read the Kubernetes Deployment Blueprint](deploy/k8s/README.md)**\n\n---\n\n## 🤝 Join the Revolution\n\nWe are building the future of deterministic AI orchestration. Contributions are highly encouraged!\n\n```bash\n# Setup development guardrails\n./scripts/install-git-hooks.sh\n\n# Run the Go orchestration test suite\ncd agent_go \u0026\u0026 go test ./...\n\n# Audit for secrets\n./scripts/scan-secrets.sh\n```\n\n## Chrome CDP macOS Helper\n\nIf you use Local Chrome (CDP) on macOS, install the dedicated launcher from the public GitHub script:\n\n```bash\ncurl -fsSL 'https://raw.githubusercontent.com/manishiitg/coding-agent-loop/main/scripts/install-chrome-cdp-macOS.sh' | bash\n```\n\nThe installer downloads `Chrome CDP.app`, installs it into `/Applications`, clears quarantine attributes, applies a local ad-hoc signature when possible, opens the app, and checks that CDP is reachable on port `9222`.\n\nTo install another independent CDP browser on a different port, pass the port\nto the same installer. It creates a separate app and Chrome profile instead of\noverwriting the default launcher:\n\n```bash\ncurl -fsSL 'https://raw.githubusercontent.com/manishiitg/coding-agent-loop/main/scripts/install-chrome-cdp-macOS.sh' | bash -s -- --port 9333\n```\n\nThis installs `Chrome CDP 9333.app`, launches Chrome on port `9333`, and uses\n`~/.chrome-cdp-profile-9333`. Repeat with another unused port when a specialized\nworkflow needs another login identity.\n\nmacOS may still ask for approval on first launch. If it blocks the app, open **System Settings → Privacy \u0026 Security**, allow `Chrome CDP`, then run:\n\n```bash\nopen -a 'Chrome CDP'\n```\n\nFor the specialized case where one workflow must test the same site with a\nsecond login identity, use the installer command above or launch another Chrome\nprocess manually on a different port **and a different profile directory**:\n\n```bash\nSECOND_CDP_PORT=9333\nopen -na 'Google Chrome' --args \\\n  --remote-debugging-port=\"$SECOND_CDP_PORT\" \\\n  --user-data-dir=\"$HOME/.chrome-cdp-profile-$SECOND_CDP_PORT\" \\\n  --no-first-run \\\n  --no-default-browser-check\ncurl \"http://127.0.0.1:$SECOND_CDP_PORT/json/version\"\n```\n\nConfigure that workflow through the builder with\n`update_workflow_config(browser_mode=\"cdp\", cdp_ports=[9222, 9333])`. Every `agent_browser` call must explicitly select\none authorized `--cdp` endpoint. The two profiles can stay logged in as\ndifferent accounts. Do not reuse the same `--user-data-dir` for two ports, and\ndo not add ports merely to run normal workflows concurrently—the shared\nsingle-port tab isolation already handles that.\n\n## 📄 License \u0026 Architecture Foundations\n\nLicensed under the MIT License.\n\n**Built Upon:**\n- **[Model Context Protocol (MCP)](https://modelcontextprotocol.io/):** The universal standard for AI tool integration.\n- **[LangChain Go](https://github.com/tmc/langchaingo):** High-performance LLM routing.\n- **[React Flow](https://reactflow.dev/):** The industry standard for node-based visual editing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanishiitg%2Fcoding-agent-loop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanishiitg%2Fcoding-agent-loop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanishiitg%2Fcoding-agent-loop/lists"}