G-Code for Mac · in private development

G-Code for Mac You decide what it may run

For projects that outgrow the iPad: a coding agent for macOS. It plans, writes, runs and checks code in your project folder, with a model on your Mac or on your own API key, and asks before anything you haven't cleared.

01 / Control

Five modes your deny rules hold in all five

In Manual, Accept edits and Auto, a command you haven't cleared waits for your answer. Plan only reads. A call that stops is marked one of three ways.

  1. Manual

    Ask before edits and commands that need approval. Reads outside this project and fetches from new web hosts also ask.

  2. Plan

    Read-only exploration. File changes and shell commands are blocked. Leaving Plan requires approval.

  3. Accept edits

    Allow file edits inside this project. Shell commands and outside-project changes still ask.

  4. Auto

    Allow project edits and a small set of inspection commands. Unknown commands and external tools still ask.

  5. Bypass

    Skip permission prompts. Explicit deny rules and tool safety checks still apply.

  6. Your rules

    Allow and deny rules per project or everywhere, in Settings → Permissions or with --allow and --deny.

  • DeniedYou, or one of your rules, said no.
  • Not runThe call never started: invalid input, a binary file, a blocked repeat, or cut off by the output limit.
  • FailedIt ran and returned an error.

02 / Models

Your Mac's model or your own key

Keys stay in ~/.gcode on your Mac. There's no G-Code account and no G-Code server.

  1. Local GGUF

    Pick a .gguf file and G-Code starts its own llama.cpp server on Metal, listening on this Mac only. No Ollama and no cloud key. It asks for 262,144 tokens of context and steps down until the model fits in 75% of your memory.

  2. Ollama

    Choose from the models your Ollama server has installed. G-Code never swaps in a different one.

  3. Five cloud providers

    Claude, GPT, Gemini, DeepSeek and Qwen, each with its own saved key or environment variable, and its own model choice. Images go to the models that can see them.

  4. Guillotine Mode

    For local models: a call to the network you didn't approve cuts off the whole tool chain and leaves read-only evidence for you to judge.

On a large local model the first prompt carries G-Code's tool context and takes a while to prepare: 5,492 tokens took about 54 seconds on the test Mac. Guillotine Mode was last tested on 8 November, on the installed build with Qwen3.8-27B.

03 / Long jobs

Long jobs get handed on not dropped

What happens when a turn runs for an hour.

  1. At 85% of the window

    G-Code asks: hand off to a fresh session, compact, or stop. A handoff writes its notes to .gcode/handoffs and carries on there, starting with a rule to read every line first.

  2. Reads before it goes

    If tool results arrived that the model hasn't read, it gets one more reply to note what they show before it hands off.

  3. Progress check

    Sessions that hand off without changing a file or finishing a task are counted. From the third, the stuck step goes to sub-agents.

  4. Still thinking (35s)

    Twenty seconds without output and the status line says so, every 15 seconds, until something arrives.

  5. Sub-agents

    Up to 100 replies and 400 tool calls each, side by side. One that hits a limit hands back what it finished.

  6. Background tasks

    Servers and watchers run in Tasks with their output and a Stop button, and end with the session. Keep awake holds off sleep while it works.

04 / The kit

Everything it touched beside the chat

Panels to the right of the conversation, and the rest of the kit.

  1. Changes

    A before-and-after diff of every file the session changed, unified or split, Bash edits, deletions and renames included.

  2. Browser checks

    BrowserPlan and BrowserVerify drive a real Chromium through your pages: steps, assertions, console errors and screenshots.

  3. Terminal

    Your login shell in the project folder, one tab per shell, on a real PTY.

  4. Files and outputs

    The project tree, and versioned outputs you can open or show in Finder.

  5. Node, npm, npx

    Bundled, for a Mac that has none.

  6. MCP servers

    Add tools in Tools & MCP.

  7. Headless

    gcode -p prints NDJSON; exit codes for refusals, budgets and signals.

  8. Session budget

    Optional: a limit with a handoff at the reserve, then another model or more budget.

05 / Built with it

Four pages built on the Mac

A fictional coffee estate's site, AI-built* in G-Code for Mac for $16.16.

* Built with the Claude API, Claude Opus 5.5 at High effort, on 25 October. The estate, its people and its figures were invented by the model. Three of its six turns failed, and G-Code had no prompt caching then; with it, the same requests come to an estimated $4.10. What went wrong, and what was fixed

Tested in the open

The last gate ran 58 scenarios in one run on the installed build, and all 58 passed. Eighteen of the thirty-five gate runs so far failed. Every run is on the results page.

See every run

Scenarios run with Claude Haiku 5.5, and OpenAI GPT-6.1 terra in round 10b; each reviewed by Claude Opus 5.5 at High effort, except round 16's, which six separate sub-agents under Codex reviewed. "Passed" means no defect in G-Code: in three of the final 58 the model didn't finish the task, and the results page marks them.

In private development

macOS 15 or later on Apple silicon. Not for sale or download yet.

Version 0.1.0. Developer builds are ad-hoc signed and not notarized. G-Code for Mac is a separate app from G-Code Lite for iPad.