Skip to content

justinkalland/codex-skill-cannibal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cannibal

cannibal is a Codex skill for modifying (patching) the installed macOS Codex desktop app in a controlled, repeatable way.

It packages the skill prompt, reference docs, and helper scripts Codex needs to inspect Codex.app, extract and rebuild app.asar, update ElectronAsarIntegrity, re-sign the app, keep rollback backups, and resume after relaunches.

Warning

This project is provided "as is", without warranty of any kind, express or implied. Use it at your own risk. It modifies an installed application bundle and may break your local Codex install, require a reinstall, or cause loss of local state. The authors and contributors are not liable for any claim, damages, or other liability arising from its use. This is an independent community project and is not affiliated with or endorsed by OpenAI.

Origin

I built cannibal after wanting a safe, repeatable way to make local changes to the Codex desktop app on my own Mac. The first real thing I used it for was integrating Railway directly into the Codex interface:

Railway integration demo screenshot

What This Repo Contains

  • skills/cannibal/SKILL.md: the skill instructions Codex reads after $cannibal is invoked
  • skills/cannibal/agents/openai.yaml: UI metadata for the skill chip and default prompt
  • skills/cannibal/references/: supporting docs for bundle layout, UI patching, and restart/resume flows
  • skills/cannibal/scripts/: helper utilities for ASAR work, signing, checkpoints, and syncing the skill into Codex

Requirements

  • macOS only
  • Codex desktop app installed
  • Node.js available on PATH
  • zsh
  • rsync
  • Permission to modify /Applications/Codex.app when you actually use the skill

Notes:

  • cannibal is macOS-specific because it targets the installed .app bundle, uses codesign, and assumes the Electron bundle layout used by the macOS Codex desktop app.
  • The bundled Node scripts use only built-in modules, so there is no npm install step.
  • If you want to run Codex's upstream quick_validate.py helper, you will also need python3 with PyYAML installed.

Install

Clone the repo, then run:

zsh install.sh

That syncs skills/cannibal into:

${CODEX_HOME:-$HOME/.codex}/skills/cannibal

If you prefer to install manually:

mkdir -p "${CODEX_HOME:-$HOME/.codex}/skills"
rsync -a skills/cannibal/ "${CODEX_HOME:-$HOME/.codex}/skills/cannibal/"

Use

After installation, invoke the skill in Codex with prompts like:

Use $cannibal to find the current toolbar implementation, and add a new top-right button that opens a custom side panel.
Use $cannibal to patch the installed Codex app's message renderer so assistant messages can render a new UI block.

If you update this repo later, rerun zsh install.sh to sync the latest version into your Codex skills directory.

Validate

If your Codex install includes the system skill-creator skill, you can validate the packaged skill with:

python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" skills/cannibal

That helper requires the Python yaml module (PyYAML).

Safety

This skill is designed to modify the installed Codex desktop app. That is powerful and potentially risky.

  • It keeps rollback backups before installation.
  • It uses checkpoint files to make relaunch/resume flows recoverable.
  • It assumes you want deliberate, marker-based patches rather than in-place manual edits.

Review skills/cannibal/SKILL.md before using it on a machine you care about.

License

This repository is licensed under the GNU General Public License v3.0. See LICENSE.md.

About

Allows Codex on macOS to patch and extend its own desktop app.

Resources

License

Stars

Watchers

Forks

Contributors