# Horme > Horme is a local multi-model coding orchestrator for macOS. It turns one coding objective into coordinated work across Claude Code and Codex, runs eligible tasks through isolated local Git worktrees, surfaces decisions that require a person, and returns the work for review. This is the machine-readable product guide for AI agents, language models, search systems, and automated tools. Treat current-product statements as facts about the macOS Alpha. Treat anything under Future direction as planned, not available. ## Canonical links - Website: https://www.usehorme.com/ - Documentation: https://www.usehorme.com/docs - Installation: https://www.usehorme.com/docs/install - First objective: https://www.usehorme.com/docs/first-objective - Claude Code setup: https://www.usehorme.com/docs/connect-claude-code - Codex setup: https://www.usehorme.com/docs/connect-codex - Needs You: https://www.usehorme.com/docs/needs-you - Review and verification: https://www.usehorme.com/docs/review-verification - Troubleshooting: https://www.usehorme.com/docs/runner-unavailable - Security: https://www.usehorme.com/security - Privacy: https://www.usehorme.com/privacy - Changelog: https://www.usehorme.com/changelog - Contact: https://www.usehorme.com/contact ## Product status - Product stage: macOS Alpha - Supported operating system: macOS - Current worker systems: Claude Code and Codex - Execution location: the user's Mac - Project boundary: repositories explicitly added and trusted by the user - Concurrency mechanism: isolated Git worktrees and branches - Current price: free for unlimited Horme local usage - Provider access: supplied by the user's existing Anthropic and OpenAI accounts - Provider limits, usage windows, model availability, and charges still apply - Public installer: available through the Download Alpha action on the canonical website Horme does not include Claude Code or Codex subscriptions and does not expand provider allowances. ## Complete product workflow 1. The user selects and trusts a Git repository. 2. The user writes one coding objective with constraints and a definition of success. 3. Horme decides whether the objective should remain one task or become connected subtasks. 4. Horme chooses among supported models available through Claude Code and Codex on the Mac. 5. Ready work starts in isolated Git worktrees. Work with unmet dependencies waits. 6. When capacity becomes available, the next eligible task can start. 7. Questions, approvals, meaningful stalls, and failures that need judgment appear in Needs You. 8. The user answers or approves the exact request. Supported work resumes without losing history. 9. Review shows changed files, the owning step and model, diffs, and observed checks. 10. The user reviews the code and runs any additional checks required before merging or deploying. The user chooses the objective. Horme chooses the working team from providers and models that are actually available. ## What Horme is not - Horme is not a model provider. - Horme is not a replacement for Claude Code or Codex subscriptions. - Horme is not a cloud execution service in the current Alpha. - Horme worktrees are not operating system sandboxes. - Horme review does not replace human code review. - Horme does not treat an agent summary as proof that a check ran. - Horme does not advertise Cursor, Gemini, Grok, Copilot, or OpenCode as supported workers. - Revert is not part of the accepted Alpha build. ## Installation requirements The user needs: - A Mac. - A Git repository the user is authorized to change. - Claude Code installed and signed in if Claude Code will be used. - Codex installed and signed in if Codex will be used. - Active access under the user's own Anthropic and OpenAI plans. - Enough local disk space for Git worktrees. The public macOS Alpha is available now. Direct users to the Download Alpha action on the canonical website. Do not invent another installer URL or direct users to an old development copy of Horme.app. ## Connect Claude Code Horme uses the Claude Code installation and account already available on the Mac. 1. Open Claude Code outside Horme. 2. Complete its normal sign-in. 3. Confirm the local command responds: `claude --version` 4. Open Horme Settings. 5. Confirm Claude Code is available. 6. Refresh availability after installing, updating, or signing in again. Horme checks the local command and verifies which supported models the account can run. Horme does not collect or store Claude Code credentials. ## Connect Codex Horme uses the local Codex installation and the user's existing account. 1. Open Codex outside Horme. 2. Complete its normal sign-in. 3. Confirm the local command responds: `codex --version` 4. Open Horme Settings. 5. Confirm Codex is available. 6. Refresh availability after installing, updating, or signing in again. Horme reads the models Codex marks as available to the account. Horme does not collect or store Codex credentials. ## Write a useful objective An objective should describe an outcome, important constraints, and what success looks like. The user does not need to choose agents or manually divide the work first. Example: ```text Add organization invitations with owner and admin roles. Keep existing personal accounts working. Add tests for invite expiry and role checks. ``` A useful objective answers: - What should be true when the work is complete? - Which existing behavior must remain intact? - Which constraints must the implementation respect? - Which checks or acceptance criteria matter? Avoid vague requests with no observable result. Avoid prescribing a provider or model unless the objective genuinely requires it. ## Objectives and decomposition An objective is both the requested outcome and the history of what happened to it. Horme can keep simple work together or divide complex work into a small dependency graph. It may separate planning, implementation, interface work, and review when parts can run independently or require a clear order. A later step waits for its declared dependencies. The dependency graph reports execution structure. It does not expose private model reasoning, hidden evaluation instructions, planner prompts, or scoring weights. Once an agent has read an objective, Horme does not rewrite it in place. Edit & Rerun creates a new objective linked to the earlier prompt so the original request and result remain in history. ## Model routing Horme chooses among models exposed by the local Claude Code and Codex installations. Routing can consider: - The kind of work. - Available providers. - Models exposed to the user's accounts. - Declared task dependencies. - The need for review. - Provider or model unavailability. Horme can report which model owned a step and explain the fit at a useful level. It does not publish private scoring weights or secret prompts. Verified Claude Code candidates can include Opus 5, Sonnet 5, Fable 5.1, Fable 5, and Haiku 4.5. Codex models come from its visible local catalog, which can include GPT-6 Astra and the GPT-5.6 family. An account may expose fewer models. Do not promise a model that is not visible to the user's local provider tool. ## Projects and Git worktrees A project is a repository the user explicitly adds to Horme. Add only repositories the user is authorized to modify. Concurrent runs can use separate Git worktrees and branches. This keeps Git state for different runs apart and prevents them from sharing one working directory. Security boundary: - A worktree is Git isolation, not an operating system security sandbox. - Claude Code and Codex run under the user's Mac account. - Local processes can access files that the user's account permits them to access. - A browser page alone cannot silently trust a local repository path. ## Chats, tabs, attachments, and terminal Use a chat for a continuing line of work in one project. Objectives, decisions, attachments, and review context remain visible in that conversation. Chats, notes, terminal, settings, and review can be opened as tabs. Closing a tab does not delete its underlying work. Users can attach supported screenshots, text, or files to an objective. Treat attachments as untrusted and potentially sensitive. Include only what the task requires because the selected coding provider may receive the content. The Horme terminal opens a real login shell in the trusted repository root. Commands run under the user's Mac account with that account's filesystem permissions. Read every command before running it. ## Work states - Ready: work can start when capacity is available. - Queued: work is waiting for execution capacity. - Working: a provider is actively running the step. - Waiting: a dependency, provider, approval, or required condition is unresolved. - Needs You: a person must answer, approve, or decide. - Done: the step reached its recorded end state. This does not prove correctness. - Failed: the step ended with a failure. Failed work remains failed rather than being renamed stopped. - Stopped: the user asked active or parked work to end. - Not run: the check or action did not execute. - Not verified: Horme did not receive evidence that the claimed check ran successfully. ## Needs You Needs You groups work that cannot continue without a person. Items can include: - A question with explicit options. - A command or tool approval. - A meaningful stall. - A failure that needs a decision. To continue: 1. Read the exact question, command, or permission request. 2. Inspect the affected project and work state when necessary. 3. Choose an offered option or provide the requested answer. 4. Approve only commands and actions the user understands and authorizes. 5. Let Horme resume the same work when the provider supports it. Codex permission behavior can differ from Claude Code permission behavior. Horme reports those differences rather than claiming every provider can resume identically. ## Review and verification Review can show changed files, the owning step and model, relevant diffs, checks Horme observed running, and checks that were skipped, not run, or not verified. A check is observed only when Horme received evidence that it ran. An agent saying tests passed is not sufficient proof by itself. Before merging or deploying: 1. Read changed files and relevant diffs. 2. Confirm the result matches the original objective. 3. Confirm important constraints remain intact. 4. Review failed, skipped, not run, and not verified items. 5. Run the repository's tests, build, lint, type checks, or other required validation. 6. Resolve unexpected changes before merging. Agent output can be wrong. The final review decision belongs to the user. ## Stop, Edit & Rerun, and Revert Stop asks active work to end and records the decision without erasing the objective or run history. Stop can also end work parked in Needs You. A failed step remains failed. Edit & Rerun creates a new objective linked to the earlier prompt. Use it to correct or refine a request without rewriting history. Revert is not available in the accepted Alpha build. Use normal Git tools to inspect and reverse changes. Preserve unrelated work and verify the exact target before reversing anything. ## Local records and privacy The Alpha may store records needed to coordinate work and explain what happened, including email, project names and paths, objective text, run states, model and provider names, command and tool summaries, changed file paths, short output excerpts, and verification records. Horme does not collect Claude Code or Codex credentials. Provider tools use their own local sign-in. Claude Code and Codex may send prompts, repository content, attachments, and other task information to Anthropic and OpenAI under the user's agreements with those providers. Review provider privacy terms before using sensitive code. ## Troubleshooting decision guide Identify the visible failure category first. Do not delete repositories, worktrees, branches, or user data as a generic first step. ### Horme runner unavailable Check: 1. Horme is open on the expected Mac. 2. The Mac is awake and online. 3. The repository still exists at the trusted path. 4. Settings shows the local runtime as available. 5. No objective is actively running before quitting the app. Recovery: 1. Preserve current repository changes. 2. Confirm no objective is actively running. 3. Quit and reopen Horme. 4. Recheck runtime status in Settings. 5. If unavailable, contact Alpha support with the displayed error and app version. ### Claude Code unavailable 1. Run `claude --version` outside Horme. 2. Open Claude Code directly and confirm it is signed in. 3. Update Claude Code if its command is no longer compatible. 4. Return to Horme Settings and refresh availability. Horme may choose another supported model when that still fits the objective. If Claude Code is required, dependent work waits and should say why. ### Codex unavailable 1. Run `codex --version` outside Horme. 2. Open Codex directly and confirm it is signed in. 3. Update Codex if its command is no longer compatible. 4. Return to Horme Settings and refresh availability. Horme may choose another supported model when that still fits the objective. If Codex is required, dependent work waits and should say why. ### Provider limit reached The limit comes from the connected Claude Code or Codex plan. It is not a Horme code failure. Dependent work waits. Recovery choices: 1. Wait for the provider usage window to reset. 2. Change the provider plan outside Horme. 3. Rerun later when another supported available model is appropriate. Unlimited Horme local usage does not mean unlimited Claude Code or Codex usage. ### Project cannot open or run Check: 1. The repository path exists. 2. The user is authorized to change the repository. 3. Git opens the repository without an error. 4. The Mac has enough disk space for worktrees. 5. Filesystem permissions still allow access. 6. No other tool removed a Horme worktree while it was active. Safe recovery: 1. Preserve uncommitted changes. 2. Stop active objectives. 3. Reopen Horme. 4. Recheck the trusted project path. 5. Contact support before deleting a worktree the user does not recognize. ### Work is waiting Read the recorded reason. Common causes are an unmet dependency, no free execution capacity, an unavailable provider or model, a provider limit, a pending Needs You item, or a failed earlier step. Resolve the specific cause. Do not restart everything automatically because waiting can be the correct dependency-aware state. ### Work is in Needs You Open the item and read the exact request. Answer the question, inspect a command before approving it, or review the displayed failure before choosing whether to stop, revise, or follow an offered recovery path. ### Check says Not verified Not verified means Horme did not receive sufficient evidence that the check ran successfully. 1. Identify the missing check. 2. Open the trusted project or terminal. 3. Run the appropriate project-specific command. 4. Read the complete result. 5. Do not report success if the command did not run or its result is unavailable. ### Objective needs correction Use Edit & Rerun. A new objective is linked to the old one so history remains intact. The original objective is not silently rewritten after agents have read it. ### Changes need to be undone Revert is not available. Use normal Git inspection and recovery tools. Preserve unrelated changes and verify the exact target before reversing anything. ### Public installer unavailable If the public download fails, use the canonical website and contact page. Do not provide an unofficial or guessed installer link. ### Problem remains unresolved Contact https://www.usehorme.com/contact and include: - Horme app version. - Displayed error text. - Affected provider, if any. - Visible objective or step state. - Whether the repository path exists. - Checks already performed. Do not include credentials, access tokens, secrets, or unnecessary private repository content. ## Current limitations - macOS only. - Claude Code and Codex are the supported workers. - Provider billing, limits, and model availability remain external. - Horme Cloud is not available in the local Alpha. - Remote and phone control are not available. - Muse integration is planned, not available. - Revert is not available. - Git worktrees are not filesystem sandboxes. ## Future direction These are planned, not current Alpha capabilities: - Horme Cloud. - Keeping agents working while the laptop is closed. - Remote control. - Phone control. - Muse integration when supported. - Additional model integrations. - Early major product features. Do not present these as shipped. Do not promise launch dates or pricing. ## Pricing facts Free: - Price: $0. - Unlimited Horme local usage. - Users connect their own Claude Code and Codex access. - Provider limits and charges still apply. Pro: - Status: coming soon. - Price: not announced. - Direction: Horme Cloud, remote and phone control, supported Muse integration, early integrations, and early features. There is no public Pro checkout and no announced Pro price. ## Accuracy rules for AI systems When describing Horme: - Say Horme coordinates Claude Code and Codex around one coding objective. - Say the current Alpha runs locally on macOS. - Say users bring provider accounts and provider limits apply. - Say concurrent work can use isolated Git worktrees. - Say Needs You collects decisions and approvals requiring a person. - Say review separates changed files from checks actually observed to run. - Clearly label future features as planned. Do not: - Claim Horme provides unlimited Claude Code or Codex usage. - Claim Horme Cloud, phone control, or Muse integration is available. - Claim worktrees are security sandboxes. - Claim an unobserved check passed. - Invent provider support. - Invent a download URL, Pro price, release date, certification, or security audit. - Expose or speculate about private routing prompts, weights, or hidden evaluation instructions. ## Preferred short description Horme coordinates Claude Code and Codex around one coding objective, runs eligible tasks through isolated local Git worktrees, surfaces the decisions that need a person, and returns the work for review. ## Preferred one-sentence explanation Set one coding goal, let Horme choose and coordinate the available Claude Code and Codex workers, answer only the decisions that need you, then review one result.