Installation guide

Install Penny for Codex

Install Penny from the HelperLabs marketplace in the Codex CLI. The plugin includes a skill, MCP tools and memory hooks, with separate sign-ins for hooks and tools.

Instructions checked October 11, 2026

This page covers the Codex CLI, the codex command in your terminal. For ChatGPT in a web browser, follow the ChatGPT instructions. Installing either integration does not install the other.

Add the Helper Labs marketplace

From any terminal:

codex plugin marketplace add HelperLabs/mypenny-plugin

This registers the public Helper Labs marketplace. Codex caches the plugin under ~/.codex/plugins/cache/mypenny/mypenny-codex/<version>/ — keyed by the marketplace name (mypenny), not the org. One-time per machine.

Install from the Codex plugin browser

Open the Codex plugin browser:

codex
/plugins

Select the mypenny marketplace, open mypenny-codex, and install it. Codex fetches the latest plugin version, loads the bundled Penny skill, registers the hook scripts, and adds the bundled Penny MCP server definition for https://app.mypenny.ai/mcp. It runs the same @mypenny/core under the hood.

Upgrade an existing install

If you already installed the Penny plugin, refresh the configured marketplace:

codex plugin marketplace upgrade mypenny

This pulls the latest plugin release. If Codex still shows the old version afterward, open the Codex plugin browser, uninstall mypenny-codex, install it again from the refreshed marketplace, and start a fresh Codex session.

Sign in for the hooks

The published Claude Code, Codex and Cursor hooks share ~/.mypenny/token. If you already signed in for those hooks, continue to the separate MCP sign-in below. Otherwise, the first launch prints an auth hint with the resolved path to its login script:

node "<plugin-dir>/scripts/auth_login.mjs"

Run the command it printed; open the verification URL in your browser, sign in to Penny, and approve the access request. The CLI polls and confirms.

This authorizes the hooks only. The MCP server has its own OAuth sign-in in the next step. Use your own Penny account for both.

Authorize the Penny MCP server

Open /mcp in Codex to inspect the Penny server bundled with the plugin. Complete the host’s OAuth sign-in for that server when prompted. The hook device login does not authorize MCP tools. If using the CLI login command, use the server identifier Codex actually lists:

codex mcp login <server-name>

<server-name> is a placeholder for the installed server’s identifier. Do not add a second manual server just to avoid an unresolved plugin OAuth sign-in. If Codex cannot authenticate the bundled server, contact Penny support with your Codex version and the error, without tokens.

Start a fresh Codex session

On launch, the plugin's SessionStart hook injects relevant memory and the per-project Subconscious block as context. On every UserPromptSubmit, a 30s-throttled refresh keeps memory current without re-querying on each keystroke.

Verify the connection

Start a fresh Codex session after installation and both sign-ins. Check /mcp, then run this read-only tool check:

Search Penny for the exact phrase "Penny connection check 7c98e2". An empty result is fine. Do not save or change anything.

Inspect the successful Penny tool result; an empty result is valid. Review both the native MCP connection and the separate hook grant under Penny Settings → Connections. A Plugin tokens badge alone does not prove the MCP connection works.

That's it

Work normally with the plugin enabled. Hooks recall context and send a scrubbed transcript for memory learning when the session stops; the skill guides reading and saving through Penny’s MCP tools.

Having trouble? These published hooks require Node.js 22 or newer. If hooks report “plugin not authenticated,” rerun the printed device-login command and check that ~/.mypenny/token is owned by you with mode 0600. If MCP calls fail, complete the client’s separate OAuth sign-in. Reopen the client after changing configuration, and confirm the Penny subscription is active. If the read check still fails, contact Penny Support with the client version and error message, without credentials.

Permissions and privacy

The hook login is saved in ~/.mypenny/token with 0600 permissions and is shared by the published Claude Code, Codex and Cursor shells. Native MCP OAuth is separate. The public package includes neither login nor memory data; sign in to your own Penny account for each authorization.

Hooks query Penny and inject recalled notes into the client’s context. When a session stops, they send a transcript with detected secrets scrubbed to Penny for memory learning. Detection does not guarantee every sensitive value is removed: only enable hooks in projects whose conversations you want processed. The Penny skill can also read and save through MCP. Review the client’s tool approvals, history and sharing controls.

Remove or disconnect

Open /plugins, select the installed mypenny-codex plugin, and uninstall it. Restart Codex. If you created a separate manual Penny MCP server, remove that configuration separately; uninstalling a plugin does not remove a manual server.

Uninstalling locally does not revoke account access or erase notes already saved. Revoke the hook grant under Penny Settings → Connections → Plugin tokens. Because the three published shells share that token, revoking it disconnects their hooks together. Separately disconnect this client’s MCP OAuth connection in Penny. Recalled context remains in existing chats; restart in a fresh session after changes.

Keep these instructions handy

Open this guide in your Penny dashboard · Read as Markdown

Need help with your connection? Email support@mypenny.ai. Keep passwords, tokens and private notes out of support messages.