GoNoGo

Inspiration

AI coding agents are great at execution, but the decisions that shape a project can disappear into a long prompt or be made without the human who owns the outcome. We wanted a lightweight, visible checkpoint where an agent can present the context and trade-offs, wait for a person’s answer, and then continue with that answer as structured input.

What it does

GoNoGo is a local Codex plugin that turns a human decision into a first-class step in an AI coding workflow. An agent opens an evidence-rich decision page in the browser, asks focused questions, and synchronously waits for the response. After submission, it receives the structured answer in the same task and can carry on without guessing. Decisions and follow-up Q&A are saved as Git-visible Markdown and JSON records in .gonogo/, creating a durable project decision history.

The decision page supports radio, checkbox, ranked, and free-text prompts; recommendation shortcuts; required-answer validation; and contextual follow-up questions on selected text.

How we built it

We built GoNoGo as a TypeScript Codex plugin with the Model Context Protocol SDK, Zod schemas, a local HTTP server, and a browser-based decision UI. The MCP service creates an isolated session, validates its payload, blocks on a synchronous waiter, and resolves that waiter only after the user’s response is recorded. The UI sends the completed answer back to the service, while the record layer writes readable Markdown plus structured JSON.

Codex and GPT-5.6 were used throughout the build to explore the workflow, implement and refine the TypeScript plugin, design the human-in-the-loop interaction, write tests, and validate the browser handoff.

Challenges we ran into

The hardest problem was making human input behave like a reliable step in an agent workflow rather than an asynchronous notification that gets lost. We needed the same Codex task to wait and resume with an unambiguous result, while also reliably closing the temporary decision tab. Browser JavaScript could not close a normally opened tab, so we validated a retained-tab flow where Codex calls the browser tab-close API after the decision result returns. We also had to ensure incomplete answers cannot be submitted and that the decision records remain useful in Git.

Accomplishments that we’re proud of

  • Turned a human decision into a synchronous, structured MCP checkpoint.
  • Preserved an auditable decision and Q&A trail alongside the codebase.
  • Built an approachable UI that lets people compare options, use recommendations, and ask questions about selected context.
  • Verified the complete flow: create session, submit a decision, return the answer to the waiting task, and close the temporary browser tab.

What we learned

Human-in-the-loop features are not just a prompt-design problem. They require explicit state, durable records, validation, and a predictable control flow so both the person and the agent know exactly what happens next.

What’s next for GoNoGo

We plan to improve the handoff experience, add richer project knowledge retrieval, and expand the decision templates for planning, prioritization, and comparison workflows.

Built With

Share this project:

Updates