CLI tool
repoprompt/repoprompt-ce avatar
repoprompt/repoprompt-ce

RepoPrompt CE ships three install paths with three different signing stories, and its ad-hoc debug build forgets your keys

Community edition of RepoPrompt: a native macOS context engineering app for AI coding agents, with an MCP CLI.

994 stars139 forksSwiftApache-2.0

At a glance

What is it?
A free Apache-2.0 native macOS app for assembling reviewable context for coding agents, with a bundled MCP server and a checked-in build coordinator. The parts worth understanding before you install are the signing differences between the three paths, the in-memory key storage in ad-hoc debug builds, and the requirement for a full Xcode install.
Who is it for?
RepoPrompt CE fits a macOS-only team that wants an agent to read the repository before it writes, and wants to see the file selection and diffs before anything is sent. Prefer the Homebrew cask, since it is the only route that produces a signed and notarized app and the only one that does not need Python.
Can I use it commercially?
Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly Swift, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 14, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • repoprompt/repoprompt-ce994 ★ · +154
Star history
Repository2026-07-302026-11-14
repoprompt/repoprompt-ce840994

154 Stars in the last 107 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

Three install paths, three different signing stories

The Homebrew route is the only one that yields a signed and notarized app:

bash
brew tap repoprompt/repoprompt-ce
brew install --cask repoprompt-ce

That cask consumes a promoted public updater ZIP rather than compiling anything, and lands `/Applications/RepoPrompt CE.app` on disk. The debug route instead double-clicks `Launch RepoPrompt CE.command` in Finder and drives a coordinator that rebuilds and relaunches the app. The local production route double-clicks `Install RepoPrompt CE Local Production.command`, builds from source, and replaces whatever is already in `/Applications` with a build signed by a dedicated self-signed certificate that macOS may ask you to approve. That last result is described as local only, not notarized, and not something to copy to another Mac or redistribute.

Ad-hoc debug builds keep API keys in memory only

When no `Apple Development:` identity is present, the documented fallback signs ad hoc:

bash
ALLOW_ADHOC_SIGNING=1 ./conductor app relaunch

Those builds use in-memory secure storage, so saved API keys and secure permission changes do not survive a relaunch. The way out is to hand the launcher a stable identity instead:

bash
SIGN_IDENTITY="Apple Development: Your Name (TEAMID)" ./conductor app relaunch

That gives debug builds persistent Keychain storage. The condition is that the identity already exists on the machine, with the team id typed in by hand. The practical difference is that whether your debug session keeps working after a rebuild comes down to your local keychain rather than to a preference inside the app.

The launcher refuses a no-Python fallback on purpose

The Finder launcher is not a thin wrapper, and the reason is stated rather than implied. Double-clicking `Launch RepoPrompt CE.command` opens a small terminal window that stays available with four keys bound: `r` rebuilds and relaunches, `s` shows app status, `x` stops the app, and `q` closes the launcher without stopping the app. Both rebuild and stop go through a coordinated developer daemon instead of touching the app directly, and lifecycle actions validate the exact debug executable path, which is why there is no uncoordinated fallback when Python is missing. Python 3 is therefore a hard requirement of this route. On Xcode selection, the launcher preserves an explicitly compatible `DEVELOPER_DIR` or picks an installed full Xcode for its own process, and it never changes the system-wide `xcode-select` setting.

The debug app may rebuild itself while you are editing it

Using RepoPrompt CE to modify RepoPrompt CE is not a quiet loop. The guidance warns that when the debug app is used to change the project itself, validation flows that launch the app or run live smoke checks may rebuild and relaunch it, and that the app should be expected to restart while those checks run. The build machinery behind that is substantial. The Makefile's phony list runs to more than fifty targets, mixing plain names such as `doctor`, `resolve`, `build`, `run`, `test`, `guardrails` and `clean` with a parallel set of `dev-` prefixed variants. `doctor` verifies local Swift and Xcode setup, `guardrails` runs source layout and repository guardrails, and `codex-schema-check` validates bounded app-server assumptions against generated Codex schemas.

make xcode generates a disposable workspace with four schemes

Contributors who want Xcode get a generated workspace rather than a checked-in project:

bash
make xcode

In Xcode 26.3 the choice is between `RepoPrompt CE App` for the packaged debug app, `RepoPrompt CE MCP` for the coordinated MCP executable, and `RepoPrompt CE Tests`. The test scheme delegates to conductor because `RepoPromptMCP` is an executable-only SwiftPM target that Xcode will not drive by itself. Underneath, Xcode also exposes the native `RepoPrompt` and `repoprompt-mcp` product schemes, which is why four names show up where three are documented. Release packaging ignores the generated workspace entirely, so it is a convenience layer for daily contributor work rather than part of how a build ships.

Licensing spans a LICENSE, notices, a vendor tree and a resolved file

The Apache-2.0 grant is only the first of several root entries. Beside `LICENSE` sit `THIRD_PARTY_NOTICES.md` and a `ThirdPartyLicenses/` directory, and the dependency story is made of a `Vendor/` directory, a `Packages/` tree and a committed `Package.resolved` that pins what was resolved. Maintainers track release signing, Sparkle update metadata, dependency pins and third-party notices in `docs/open-source-readiness.md`, which makes the update channel auditable rather than implicit. Version state is spread across three more root files, `version.env`, `release-rollout.json` and `tip-rollout.json`, so the version a build reports is not read from a single location.

Source builds need macOS 26 and a full Xcode, not just the tools

The stated floor is macOS 26 or later plus either Xcode 26 or matching Command Line Tools carrying the macOS 26 SDK. The stricter part is what follows: the Finder debug launcher and the local production installer both require the full Xcode application, not the command line tools alone. That gap matters, because someone reading only the SDK requirement would reasonably assume the tools suffice. The local production installer goes one step further and selects a compatible installed Xcode for its own process, again leaving the system-wide `xcode-select` untouched. In practice that difference decides which of the two `.command` files you can double-click at all on a given machine.

MCP progress reporting only fires when the client sends a token

The Context Builder lets an agent explore a repository, identify relevant files and curate them inside a token budget, and long-running MCP calls expose request-scoped progress, but only when the client supplies a progress token. A client that sends none gets silence for the duration of the call. Alongside it, Context Composer is for reviewing selected files and codemaps, configuring prompt packaging and Git context, and copying a fresh model-ready prompt without leaving Agent Mode. What both draw on is the same set of inputs: file trees, selected file contents, line slices, CodeMaps and Git diffs. Agent orchestration runs CLI-backed coding agents from the app, with app-managed worktrees and `.worktreeinclude` for copying local files into them, and a workspace can span several related repositories at once.

Editorial conclusion

RepoPrompt CE fits a macOS-only team that wants an agent to read the repository before it writes, and wants to see the file selection and diffs before anything is sent. Prefer the Homebrew cask, since it is the only route that produces a signed and notarized app and the only one that does not need Python. Avoid the local production installer unless you intend to keep that app on that Mac, and if you build from source, set `SIGN_IDENTITY` before you save any API key, because an ad-hoc debug build keeps them in memory only. Confirm macOS 26 and a full Xcode install first, and expect the app to relaunch itself when validation flows run against a build you are editing.

Frequently asked questions

What are the system requirements for RepoPrompt CE?

macOS 26 or later, plus Xcode 26 or matching Command Line Tools with the macOS 26 SDK. The Finder debug launcher and the local production installer require the full Xcode application, and both Finder routes require Python 3.

Does the Homebrew cask for RepoPrompt CE build from source?

No. It consumes the promoted public updater ZIP from the repoprompt-ce-updates repository and installs `/Applications/RepoPrompt CE.app` through the homebrew-repoprompt-ce tap. That route is the signed and notarized one.

Will my API keys survive a restart of the RepoPrompt CE debug app?

Not when the build is ad-hoc signed, since those builds use in-memory secure storage and saved API keys plus secure permission changes do not persist across launches. Passing a stable `SIGN_IDENTITY` switches debug builds to persistent Keychain storage.

Can I copy a locally installed RepoPrompt CE build to another Mac?

No. The local production installer produces a self-signed app that is not notarized, is local only, and the documentation says not to copy it to another Mac or redistribute it.

What does make xcode do in the RepoPrompt CE repository?

It generates a disposable contributor workspace. In Xcode 26.3 you then pick `RepoPrompt CE App`, `RepoPrompt CE MCP` or `RepoPrompt CE Tests`, and the test scheme delegates to conductor because `RepoPromptMCP` is an executable-only SwiftPM target.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/repoprompt-repoprompt-ce.svg)](https://hysenlabs.com/projects/repoprompt-repoprompt-ce)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/repoprompt-repoprompt-ce.svg)](https://hysenlabs.com/projects/repoprompt-repoprompt-ce)

Was this useful?