{"id":32650627,"url":"https://github.com/tempurai/coder","last_synced_at":"2025-10-31T07:53:17.125Z","repository":{"id":312583383,"uuid":"1047970406","full_name":"tempurai/coder","owner":"tempurai","description":"🚀 Next-generation AI code assistant with Multi Agent methodology","archived":false,"fork":false,"pushed_at":"2025-09-17T11:54:40.000Z","size":976,"stargazers_count":81,"open_issues_count":0,"forks_count":7,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-09-17T13:34:07.066Z","etag":null,"topics":["agent","agentic-ai","ai-assistant","ai-coding","cli-tool","multiagent","vibe-coding"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tempurai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"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-08-31T16:28:31.000Z","updated_at":"2025-09-17T11:54:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"0612aab0-aed0-4caf-9438-5bdbf6cb00bc","html_url":"https://github.com/tempurai/coder","commit_stats":null,"previous_names":["tempurai/coder"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tempurai/coder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tempurai%2Fcoder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tempurai%2Fcoder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tempurai%2Fcoder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tempurai%2Fcoder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tempurai","download_url":"https://codeload.github.com/tempurai/coder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tempurai%2Fcoder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281953495,"owners_count":26589146,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-31T02:00:07.401Z","response_time":57,"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","agentic-ai","ai-assistant","ai-coding","cli-tool","multiagent","vibe-coding"],"created_at":"2025-10-31T07:53:13.151Z","updated_at":"2025-10-31T07:53:17.117Z","avatar_url":"https://github.com/tempurai.png","language":"TypeScript","readme":"# @tempurai/coder\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/AI--Powered-Code%20Assistant-blue?style=for-the-badge\" alt=\"AI-Powered Code Assistant\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Multi--Agent-Architecture-green?style=for-the-badge\" alt=\"Multi-Agent Architecture\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Terminal--Based-CLI-red?style=for-the-badge\" alt=\"Terminal-Based CLI\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e •\n  \u003ca href=\"#key-features\"\u003eKey Features\u003c/a\u003e •\n  \u003ca href=\"#usage-guide\"\u003eUsage Guide\u003c/a\u003e •\n  \u003ca href=\"#core-philosophy\"\u003eCore Philosophy\u003c/a\u003e\n\u003c/p\u003e\n\n\u003e ⚠️ **Currently in Beta**  \n\u003e Tempurai Coder is still under active development. Features and behaviors may change frequently.\n\n---\n\n**An AI-Powered Command-Line Assistant for Complex Software Engineering**\n\nTempurai Coder is a sophisticated, terminal-based AI assistant built for developers who need a powerful partner for complex coding tasks. It moves beyond simple code completion, employing an intelligent, multi-agent architecture to understand high-level goals, formulate detailed execution plans, and safely interact with your development environment.\n\nIt's a tool designed to augment your workflow, handling the heavy lifting of multi-step refactoring, codebase analysis, and feature implementation, all without leaving the comfort of your terminal.\n\n\u003cimg width=\"890\" height=\"511\" alt=\"image\" src=\"https://github.com/user-attachments/assets/6070fe3e-987a-4d07-8007-bae222ba6b08\" /\u003e\n\n---\n\n### Core Philosophy\n\nTempurai Coder is built on two fundamental principles that guide its behavior:\n\n1.  **Plan-then-Execute**: For any non-trivial task, the agent's first step is to stop and think. It uses a `TodoManager` to create a structured, transparent plan that breaks the problem down into logical steps. This avoids reactive, error-prone behavior and ensures a methodical approach to complex problems. You always know what the agent is planning to do and why.\n\n2.  **Shell First, Safety Always**: The agent's primary tool for interacting with your project is the shell. This gives it the same power and flexibility as a human developer, allowing it to use `git`, `grep`, `ls`, and run project-specific scripts. This power is balanced by a robust safety layer, including a `SecurityPolicyEngine` to block dangerous commands and a `Human-in-the-Loop` confirmation system for all file modifications.\n\n### Getting Started\n\n#### Prerequisites\n\n- Node.js (v18.0 or higher recommended)\n- A supported LLM API key (e.g., OpenAI, Google, Anthropic)\n\n#### 1. Installation\n\n```bash\n# Assuming the package is published to npm under this name\nnpm install -g tempurai-coder\n```\n\n#### 2. Configuration\n\nOn the first run, the application will create a global configuration directory and files at `~/.tempurai/`.\n\n1.  Open `~/.tempurai/config.json` in your editor.\n2.  In the `models` array, specify your provider, model name, and add your API key.\n3.  (Optional) To enable web search, add your Tavily API key under `tools.tavilyApiKey`.\n\n```json\n{\n  \"models\": [\n    {\n      \"provider\": \"openai\",\n      \"name\": \"gpt-4o\",\n      \"apiKey\": \"sk-...\"\n    }\n  ],\n  \"tools\": {\n    \"tavilyApiKey\": \"tvly-...\"\n  }\n}\n```\n\n### Usage Guide\n\n#### Launching the Application\n\nNavigate to your project's root directory and run the command:\n\n```bash\ntempurai\n```\n\n#### Core Actions\n\n- **Submit a Task**: Type your request (e.g., `Add a new endpoint '/status' to the main server that returns { status: 'ok' }`) and press `Enter`.\n- **Open Execution Mode Selector**: Type `:` to choose between `Plan Mode` and `Code Mode`.\n- **Open Command Palette**: Type `/` to access internal commands like `/help` or `/theme`.\n\n#### Key Hotkeys\n\n| Hotkey            | Action           | Description                                                                                            |\n| :---------------- | :--------------- | :----------------------------------------------------------------------------------------------------- |\n| `Shift` + `Tab`   | Cycle Edit Mode  | Toggle between `Normal` (confirm every edit) and `Always Accept` (auto-approve edits for the session). |\n| `Ctrl` + `T`      | Cycle Theme      | Quickly switch between available UI themes.                                                            |\n| `Esc`             | Interrupt Agent  | Stop the agent's current operation.                                                                    |\n| `Ctrl` + `C` (x2) | Exit Application | Forcefully exit the application.                                                                       |\n\n### Key Features\n\n#### Intelligent Agentic Core\n\n- **Hierarchical Agent System**: Employs a `SmartAgent` for high-level strategy, which delegates tasks to a tactical `ToolAgent`. For highly complex sub-problems, it can even spawn a specialized `SubAgent` to work autonomously.\n- **Structured Task Planning**: Automatically generates a step-by-step `Todo` list for complex requests, providing a clear and predictable execution path.\n- **Contextual Compression**: Features a `CompressedAgent` that intelligently summarizes long conversations, ensuring the agent maintains critical context over extended tasks without hitting token limits.\n\n#### Robust Safety Features\n\n- **Automatic Snapshots**: Before executing any task, the system automatically creates a git-based snapshot of your project's current state. This acts as a safety net, allowing you to instantly revert any changes if needed.\n- **Human-in-the-Loop (HITL) Confirmation**: You are always in control. The agent will pause and ask for explicit permission before creating, modifying, or deleting any files.\n- **Configurable Security Engine**: A `SecurityPolicyEngine` validates all shell commands against allow/block lists and internal heuristics to prevent the execution of dangerous or unintended operations.\n\n#### Developer-Centric Experience\n\n- **Interactive Terminal UI**: A rich, responsive interface built with React (Ink) that feels like a native part of the modern terminal workflow.\n- **Dual Execution Modes**:\n  - **`Code Mode`**: Full development capabilities, enabling the agent to write and modify files.\n  - **`Plan Mode`**: A read-only sandbox for research, analysis, and strategy formulation without any risk of side effects.\n- **Customizable Themes**: Choose from multiple built-in color schemes to match your terminal setup.\n\n### How It Works (High-Level)\n\nTempurai Coder operates on a decoupled, event-driven architecture. The terminal UI is a pure rendering layer that subscribes to a stream of events from the backend. The backend is coordinated by a `SessionService` which manages state and invokes the **Agentic Core**.\n\nThe Agentic Core is where the real intelligence lies. A `SmartAgent` analyzes the user's request, creates a plan using the `TodoManager`, and then executes the plan step-by-step by instructing a `ToolAgent` to use tools like the `ShellExecutor` or `FilePatcher`.\n\n\u003e For a detailed breakdown of the components and their interactions, see our **[ARCHITECTURE.md](ARCHITECTURE.md)**.\n\n### Comparison with Other Tools\n\nTempurai Coder finds its niche by combining the power of an agentic framework with a terminal-native workflow:\n\n- **vs. Gemini CLI / Cline**: These are excellent general-purpose AI CLIs. Tempurai is hyper-focused on the **in-project software development lifecycle**, integrating deeply with the file system, version control, and safety mechanisms like snapshots.\n- **vs. Continue / iFlow**: These tools excel as IDE extensions. Tempurai is designed for developers who prefer a **terminal-native, keyboard-driven workflow**, offering a powerful, self-contained environment without leaving the command line.\n- **vs. Qwen-Code / Raw LLM CLIs**: Tempurai provides a robust **agentic framework** around the LLM. Instead of simple prompt-in/code-out, it performs multi-step reasoning, planning, and safe tool execution, enabling it to handle much more complex, long-running tasks.\n\n---\n\n## 📄 License\n\nApache-2.0 License with amendments - see [LICENSE](LICENSE) for details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftempurai%2Fcoder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftempurai%2Fcoder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftempurai%2Fcoder/lists"}