[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3633":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":32,"readmeContent":33,"aiSummary":34,"trendingCount":16,"starSnapshotCount":16,"syncStatus":35,"lastSyncTime":36,"discoverSource":37},3633,"openclaude","Gitlawb\u002Fopenclaude","Gitlawb","runs anywhere. uses anything","https:\u002F\u002Fopenclaude.gitlawb.com",null,"TypeScript",28597,8725,221,82,0,41,283,2202,193,120,"Other",false,"main",true,[27,28,29,30,31],"ai","ai-agent","ai-tools","cli","coding","2026-06-12 04:00:18","# OpenClaude\n\nOpenClaude is an open-source coding-agent CLI for cloud and local model providers.\n\nUse OpenAI-compatible APIs, Gemini, GitHub Models, Codex OAuth, Codex, Ollama, Atomic Chat, and other supported backends while keeping one terminal-first workflow: prompts, tools, agents, MCP, slash commands, and streaming output.\n\n[![PR Checks](https:\u002F\u002Fgithub.com\u002FGitlawb\u002Fopenclaude\u002Factions\u002Fworkflows\u002Fpr-checks.yml\u002Fbadge.svg?branch=main)](https:\u002F\u002Fgithub.com\u002FGitlawb\u002Fopenclaude\u002Factions\u002Fworkflows\u002Fpr-checks.yml)\n[![Release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Ftag\u002FGitlawb\u002Fopenclaude?label=release&color=0ea5e9)](https:\u002F\u002Fgithub.com\u002FGitlawb\u002Fopenclaude\u002Ftags)\n[![Discussions](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdiscussions-open-7c3aed)](https:\u002F\u002Fgithub.com\u002FGitlawb\u002Fopenclaude\u002Fdiscussions)\n[![Security Policy](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fsecurity-policy-0f766e)](SECURITY.md)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-2563eb)](LICENSE)\n\nOpenClaude is also mirrored to GitLawb:\n[gitlawb.com\u002Fnode\u002Frepos\u002Fz6MkqDnb\u002Fopenclaude](https:\u002F\u002Fgitlawb.com\u002Fnode\u002Frepos\u002Fz6MkqDnb\u002Fopenclaude)\n\n[Quick Start](#quick-start) | [Setup Guides](#setup-guides) | [Providers](#supported-providers) | [Source Build](#source-build-and-local-development) | [VS Code Extension](#vs-code-extension) | [Sponsors](#sponsors) | [Community](#community)\n\n## Sponsors\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgitlawb.com\">\n    \u003Cimg src=\"https:\u002F\u002Fgitlawb.com\u002Flogo.png\" alt=\"GitLawb logo\" width=\"96\">\n  \u003C\u002Fa>\n  &nbsp;&nbsp;&nbsp;&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fbankr.bot\">\n    \u003Cimg src=\"https:\u002F\u002Fbankr.bot\u002Ffavicon.svg\" alt=\"Bankr.bot logo\" width=\"96\">\n  \u003C\u002Fa>\n  &nbsp;&nbsp;&nbsp;&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fatomic.chat\u002F\">\n    \u003Cimg src=\"docs\u002Fassets\u002Fatomic-chat-logo.png\" alt=\"Atomic Chat logo\" width=\"96\">\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgitlawb.com\">\u003Cstrong>GitLawb\u003C\u002Fstrong>\u003C\u002Fa>\n  &nbsp;&nbsp;&nbsp;&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fbankr.bot\">\u003Cstrong>Bankr.bot\u003C\u002Fstrong>\u003C\u002Fa>\n  &nbsp;&nbsp;&nbsp;&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fatomic.chat\u002F\">\u003Cstrong>Atomic Chat\u003C\u002Fstrong>\u003C\u002Fa>\n\u003C\u002Fp>\n\n## Star History\n\n[![Star History Chart](https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=gitlawb\u002Fopenclaude&type=date&legend=top-left)](https:\u002F\u002Fwww.star-history.com\u002F?repos=gitlawb%2Fopenclaude&type=date&legend=top-left)\n\n## Why OpenClaude\n\n- Use one CLI across cloud APIs and local model backends\n- Save provider profiles inside the app with `\u002Fprovider`\n- Run with OpenAI-compatible services, Gemini, GitHub Models, Codex OAuth, Codex, Ollama, Atomic Chat, and other supported providers\n- Keep coding-agent workflows in one place: bash, file tools, grep, glob, agents, tasks, MCP, and web tools\n- Use the bundled VS Code extension for launch integration and theme support\n\n## Quick Start\n\n### Install\n\n```bash\nnpm install -g @gitlawb\u002Fopenclaude\n```\n\nIf the install later reports `ripgrep not found`, install ripgrep system-wide and confirm `rg --version` works in the same terminal before starting OpenClaude.\n\n### Start\n\n```bash\nopenclaude\n```\n\nInside OpenClaude:\n\n- run `\u002Fprovider` for guided provider setup and saved profiles\n- run `\u002Fonboard-github` for GitHub Models onboarding\n\n### Fastest OpenAI setup\n\nmacOS \u002F Linux:\n\n```bash\nexport CLAUDE_CODE_USE_OPENAI=1\nexport OPENAI_API_KEY=sk-your-key-here\nexport OPENAI_MODEL=gpt-4o\n\nopenclaude\n```\n\nWindows PowerShell:\n\n```powershell\n$env:CLAUDE_CODE_USE_OPENAI=\"1\"\n$env:OPENAI_API_KEY=\"sk-your-key-here\"\n$env:OPENAI_MODEL=\"gpt-4o\"\n\nopenclaude\n```\n\n### Fastest local Ollama setup\n\nmacOS \u002F Linux:\n\n```bash\nexport CLAUDE_CODE_USE_OPENAI=1\nexport OPENAI_BASE_URL=http:\u002F\u002Flocalhost:11434\u002Fv1\nexport OPENAI_MODEL=qwen2.5-coder:7b\n\nopenclaude\n```\n\nWindows PowerShell:\n\n```powershell\n$env:CLAUDE_CODE_USE_OPENAI=\"1\"\n$env:OPENAI_BASE_URL=\"http:\u002F\u002Flocalhost:11434\u002Fv1\"\n$env:OPENAI_MODEL=\"qwen2.5-coder:7b\"\n\nopenclaude\n```\n\n### Using Ollama's launch command\n\nIf you have [Ollama](https:\u002F\u002Follama.com) installed, you can skip the env var setup entirely:\n\n```bash\nollama launch openclaude --model qwen2.5-coder:7b\n```\n\nThis automatically sets `ANTHROPIC_BASE_URL`, model routing, and auth so all API traffic goes through your local Ollama instance. Works with any model you have pulled — local or cloud.\n\n## Setup Guides\n\nBeginner-friendly guides:\n\n- [Non-Technical Setup](docs\u002Fnon-technical-setup.md)\n- [Windows Quick Start](docs\u002Fquick-start-windows.md)\n- [macOS \u002F Linux Quick Start](docs\u002Fquick-start-mac-linux.md)\n\nAdvanced and source-build guides:\n\n- [Advanced Setup](docs\u002Fadvanced-setup.md)\n- [Android Install](ANDROID_INSTALL.md)\n\n## Supported Providers\n\n| Provider | Setup Path | Notes |\n| --- | --- | --- |\n| OpenAI-compatible | `\u002Fprovider` or env vars | Works with OpenAI, OpenRouter, DeepSeek, Groq, Mistral, LM Studio, and other compatible `\u002Fv1` servers |\n| Hicap | `\u002Fprovider` or OpenAI-compatible env vars | Uses `api-key` auth, discovers models from unauthenticated `\u002Fmodels`, and supports Responses mode for `gpt-` models |\n| Gemini | `\u002Fprovider` or env vars | Supports API key, access token, or local ADC workflow on current `main` |\n| GitHub Models | `\u002Fonboard-github` | Interactive onboarding with saved credentials |\n| Codex OAuth | `\u002Fprovider` | Opens ChatGPT sign-in in your browser and stores Codex credentials securely |\n| Codex | `\u002Fprovider` | Uses existing Codex CLI auth, OpenClaude secure storage, or env credentials |\n| Ollama | `\u002Fprovider`, env vars, or `ollama launch` | Local inference with no API key |\n| Atomic Chat | `\u002Fprovider`, env vars, or `bun run dev:atomic-chat` | Local Model Provider; auto-detects loaded models |\n| Bedrock \u002F Vertex \u002F Foundry | env vars | Additional provider integrations for supported environments |\n\n## What Works\n\n- **Tool-driven coding workflows**: Bash, file read\u002Fwrite\u002Fedit, grep, glob, agents, tasks, MCP, and slash commands\n- **Streaming responses**: Real-time token output and tool progress\n- **Tool calling**: Multi-step tool loops with model calls, tool execution, and follow-up responses\n- **Images**: URL and base64 image inputs for providers that support vision\n- **Provider profiles**: Guided setup plus saved user-level provider profile support\n- **Local and remote model backends**: Cloud APIs, local servers, and Apple Silicon local inference\n\n## Provider Notes\n\nOpenClaude supports multiple providers, but behavior is not identical across all of them.\n\n- Anthropic-specific features may not exist on other providers\n- Tool quality depends heavily on the selected model\n- Smaller local models can struggle with long multi-step tool flows\n- Some providers impose lower output caps than the CLI defaults, and OpenClaude adapts where possible\n\nFor best results, use models with strong tool\u002Ffunction calling support.\n\n## Agent Routing\n\nOpenClaude can route different agents to different models through settings-based routing. This is useful for cost optimization or splitting work by model strength.\n\nAdd to `~\u002F.openclaude.json`:\n\n```json\n{\n  \"agentModels\": {\n    \"deepseek-v4-flash\": {\n      \"base_url\": \"https:\u002F\u002Fapi.deepseek.com\u002Fv1\",\n      \"api_key\": \"sk-your-key\"\n    },\n    \"gpt-4o\": {\n      \"base_url\": \"https:\u002F\u002Fapi.openai.com\u002Fv1\",\n      \"api_key\": \"sk-your-key\"\n    }\n  },\n  \"agentRouting\": {\n    \"Explore\": \"deepseek-v4-flash\",\n    \"Plan\": \"gpt-4o\",\n    \"general-purpose\": \"gpt-4o\",\n    \"frontend-dev\": \"deepseek-v4-flash\",\n    \"default\": \"gpt-4o\"\n  }\n}\n```\n\nWhen no routing match is found, the global provider remains the fallback.\n\n> **Note:** `api_key` values in `settings.json` are stored in plaintext. Keep this file private and do not commit it to version control.\n\n## Web Search and Fetch\n\nBy default, `WebSearch` works on non-Anthropic models using DuckDuckGo. This gives GPT-4o, DeepSeek, Gemini, Ollama, and other OpenAI-compatible providers a free web search path out of the box.\n\n> **Note:** DuckDuckGo fallback works by scraping search results and may be rate-limited, blocked, or subject to DuckDuckGo's Terms of Service. If you want a more reliable supported option, configure Firecrawl.\n\nFor Anthropic-native backends and Codex responses, OpenClaude keeps the native provider web search behavior.\n\n`WebFetch` works, but its basic HTTP plus HTML-to-markdown path can still fail on JavaScript-rendered sites or sites that block plain HTTP requests.\n\nSet a [Firecrawl](https:\u002F\u002Ffirecrawl.dev) API key if you want Firecrawl-powered search\u002Ffetch behavior:\n\n```bash\nexport FIRECRAWL_API_KEY=your-key-here\n```\n\nWith Firecrawl enabled:\n\n- `WebSearch` can use Firecrawl's search API while DuckDuckGo remains the default free path for non-Claude models\n- `WebFetch` uses Firecrawl's scrape endpoint instead of raw HTTP, handling JS-rendered pages correctly\n\nFree tier at [firecrawl.dev](https:\u002F\u002Ffirecrawl.dev) includes 500 credits. The key is optional.\n\n---\n\n## Headless gRPC Server\n\nOpenClaude can be run as a headless gRPC service, allowing you to integrate its agentic capabilities (tools, bash, file editing) into other applications, CI\u002FCD pipelines, or custom user interfaces. The server uses bidirectional streaming to send real-time text chunks, tool calls, and request permissions for sensitive commands.\n\n### 1. Start the gRPC Server\n\nStart the core engine as a gRPC service on `localhost:50051`:\n\n```bash\nnpm run dev:grpc\n```\n\n#### Configuration\n\n| Variable | Default | Description |\n|-----------|-------------|------------------------------------------------|\n| `GRPC_PORT` | `50051` | Port the gRPC server listens on |\n| `GRPC_HOST` | `localhost` | Bind address. Use `0.0.0.0` to expose on all interfaces (not recommended without authentication) |\n\n### 2. Run the Test CLI Client\n\nWe provide a lightweight CLI client that communicates exclusively over gRPC. It acts just like the main interactive CLI, rendering colors, streaming tokens, and prompting you for tool permissions (y\u002Fn) via the gRPC `action_required` event.\n\nIn a separate terminal, run:\n\n```bash\nnpm run dev:grpc:cli\n```\n\n*Note: The gRPC definitions are located in `src\u002Fproto\u002Fopenclaude.proto`. You can use this file to generate clients in Python, Go, Rust, or any other language.*\n\n---\n\n## Source Build And Local Development\n\n```bash\nbun install\nbun run build\nnode dist\u002Fcli.mjs\n```\n\nHelpful commands:\n\n- `bun run dev`\n- `bun test`\n- `bun run test:coverage`\n- `bun run security:pr-scan -- --base origin\u002Fmain`\n- `bun run smoke`\n- `bun run doctor:runtime`\n- `bun run verify:privacy`\n- focused `bun test ...` runs for the areas you touch\n\n## Testing And Coverage\n\nOpenClaude uses Bun's built-in test runner for unit tests.\n\nRun the full unit suite:\n\n```bash\nbun test\n```\n\nGenerate unit test coverage:\n\n```bash\nbun run test:coverage\n```\n\nOpen the visual coverage report:\n\n```bash\nopen coverage\u002Findex.html\n```\n\nIf you already have `coverage\u002Flcov.info` and only want to rebuild the UI:\n\n```bash\nbun run test:coverage:ui\n```\n\nUse focused test runs when you only touch one area:\n\n- `bun run test:provider`\n- `bun run test:provider-recommendation`\n- `bun test path\u002Fto\u002Ffile.test.ts`\n\nRecommended contributor validation before opening a PR:\n\n- `bun run build`\n- `bun run smoke`\n- `bun run test:coverage` for broader unit coverage when your change affects shared runtime or provider logic\n- focused `bun test ...` runs for the files and flows you changed\n\nCoverage output is written to `coverage\u002Flcov.info`, and OpenClaude also generates a git-activity-style heatmap at `coverage\u002Findex.html`.\n## Repository Structure\n\n- `src\u002F` - core CLI\u002Fruntime\n- `scripts\u002F` - build, verification, and maintenance scripts\n- `docs\u002F` - setup, contributor, and project documentation\n- `python\u002F` - standalone Python helpers and their tests\n- `vscode-extension\u002Fopenclaude-vscode\u002F` - VS Code extension\n- `.github\u002F` - repo automation, templates, and CI configuration\n- `bin\u002F` - CLI launcher entrypoints\n\n## VS Code Extension\n\nThe repo includes a VS Code extension in [`vscode-extension\u002Fopenclaude-vscode`](vscode-extension\u002Fopenclaude-vscode) for OpenClaude launch integration, provider-aware control-center UI, and theme support.\n\n## Security\n\nIf you believe you found a security issue, see [SECURITY.md](SECURITY.md).\n\n## Community\n\n- Use [GitHub Discussions](https:\u002F\u002Fgithub.com\u002FGitlawb\u002Fopenclaude\u002Fdiscussions) for Q&A, ideas, and community conversation\n- Use [GitHub Issues](https:\u002F\u002Fgithub.com\u002FGitlawb\u002Fopenclaude\u002Fissues) for confirmed bugs and actionable feature work\n\n## Contributing\n\nContributions are welcome.\n\nFor larger changes, open an issue first so the scope is clear before implementation. Helpful validation commands include:\n\n- `bun run build`\n- `bun run test:coverage`\n- `bun run smoke`\n- focused `bun test ...` runs for files and flows you changed\n\n\n## Disclaimer\n\nOpenClaude is an independent community project and is not affiliated with, endorsed by, or sponsored by Anthropic.\n\nOpenClaude originated from the Claude Code codebase and has since been substantially modified to support multiple providers and open use. \"Claude\" and \"Claude Code\" are trademarks of Anthropic PBC. See [LICENSE](LICENSE) for details.\n\n## License\n\nSee [LICENSE](LICENSE).\n","OpenClaude 是一个开源的编码代理命令行工具，支持云和本地模型提供商。它能够通过统一的终端工作流使用 OpenAI 兼容 API、Gemini、GitHub Models、Codex OAuth 等多种后端服务，同时提供了提示、工具、代理、MCP、斜杠命令和流式输出等功能。该项目采用 TypeScript 编写，适合需要在不同 AI 服务间切换但希望保持一致开发体验的开发者使用。无论是进行云端开发还是本地模型训练，OpenClaude 都能提供便捷且高效的解决方案。",2,"2026-06-11 02:55:10","top_language"]